<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://wiki.kumbiaphp.com/index.php?action=history&amp;feed=atom&amp;title=PhotoPartial</id>
	<title>PhotoPartial - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kumbiaphp.com/index.php?action=history&amp;feed=atom&amp;title=PhotoPartial"/>
	<link rel="alternate" type="text/html" href="https://wiki.kumbiaphp.com/index.php?title=PhotoPartial&amp;action=history"/>
	<updated>2026-04-22T13:19:50Z</updated>
	<subtitle>Historial de revisiones de esta página en el wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.kumbiaphp.com/index.php?title=PhotoPartial&amp;diff=3691&amp;oldid=prev</id>
		<title>83.32.205.7 en 16:16 29 nov 2012</title>
		<link rel="alternate" type="text/html" href="https://wiki.kumbiaphp.com/index.php?title=PhotoPartial&amp;diff=3691&amp;oldid=prev"/>
		<updated>2012-11-29T16:16:44Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;es&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Revisión anterior&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revisión del 16:16 29 nov 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l95&quot; &gt;Línea 95:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Línea 95:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Tuto by Demonio69&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Tuto by Demonio69&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Categoría:Tutoriales KumbiaPHP]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>83.32.205.7</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.kumbiaphp.com/index.php?title=PhotoPartial&amp;diff=3690&amp;oldid=prev</id>
		<title>83.32.205.7: PARTIAL PARA QUE TUS USUARIOS PUEDAN HACERSE UNA FOTO EN TU WEB Y UTILIZARLA COMO AVATAR</title>
		<link rel="alternate" type="text/html" href="https://wiki.kumbiaphp.com/index.php?title=PhotoPartial&amp;diff=3690&amp;oldid=prev"/>
		<updated>2012-11-29T16:15:59Z</updated>

		<summary type="html">&lt;p&gt;PARTIAL PARA QUE TUS USUARIOS PUEDAN HACERSE UNA FOTO EN TU WEB Y UTILIZARLA COMO AVATAR&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;PARTIAL PARA QUE TUS USUARIOS PUEDAN HACERSE UNA FOTO EN TU WEB Y UTILIZARLA COMO AVATAR&lt;br /&gt;
&lt;br /&gt;
Yo seguí un tutorial sobre este tema en http://theproc.es/2011/10/5/31186/sacar-fotos-de-una-webcam-con-javascript-y-flash&lt;br /&gt;
y pude crear un partial para KumbiaPHP con el apoyo también de esta otra página http://code.google.com/p/jpegcam/&lt;br /&gt;
&lt;br /&gt;
A continuación mostrare los elementos que he utilizado:&lt;br /&gt;
&lt;br /&gt;
== /app/controllers/users_controllers.php ==&lt;br /&gt;
* Una acción en un controlador para leer el partial y salvar la foto&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
public function photo( $action=&amp;#039;&amp;#039; )&lt;br /&gt;
{&lt;br /&gt;
	if ( $action == &amp;#039;save&amp;#039; ) Load::model( &amp;#039;users&amp;#039; )-&amp;gt;photo();&lt;br /&gt;
	View::template( &amp;#039;&amp;#039; );&lt;br /&gt;
}	&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== /app/views/users/photo.phtml ==&lt;br /&gt;
* La vista que incluye el partial&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
&amp;lt;?php View::partial( &amp;#039;webcam&amp;#039; ); ?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== /app/views/_shared/partials/webcam.phtml ==&lt;br /&gt;
* El partial que requiere jquery cargado previamente y donde tenemos la mayor parte de los elementos, como el container, los controles para manejar la webcam, la librería del plugin, la configuracion del plugin, algo de css via jquery y las acciones de los controles&lt;br /&gt;
&amp;lt;source lang=javascript&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;webcam&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;p id=&amp;quot;webcam_controls&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;button class=&amp;quot;go&amp;quot; type=&amp;quot;button&amp;quot;&amp;gt;Go&amp;lt;/button&amp;gt;&lt;br /&gt;
	&amp;lt;button class=&amp;quot;no&amp;quot; type=&amp;quot;button&amp;quot;&amp;gt;No&amp;lt;/button&amp;gt;&lt;br /&gt;
	&amp;lt;button class=&amp;quot;ok&amp;quot; type=&amp;quot;button&amp;quot;&amp;gt;Ok&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;?php echo Tag::js( &amp;#039;webcam&amp;#039; ); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script&amp;gt;&lt;br /&gt;
webcam.set_api_url( &amp;#039;/users/photo/save&amp;#039; );&lt;br /&gt;
webcam.set_swf_url( &amp;#039;/swf/webcam.swf&amp;#039; );&lt;br /&gt;
webcam.set_quality( 90 );&lt;br /&gt;
webcam.set_shutter_sound( true );&lt;br /&gt;
webcam.shutter_url = &amp;#039;/mp3/shutter.mp3&amp;#039;;&lt;br /&gt;
webcam.set_hook( &amp;quot;onLoad&amp;quot;, null );&lt;br /&gt;
webcam.set_hook( &amp;quot;onComplete&amp;quot;, null );&lt;br /&gt;
webcam.set_hook( &amp;quot;onError&amp;quot;, null );&lt;br /&gt;
$( &amp;#039;#webcam&amp;#039; ).html( webcam.get_html( 320, 240 ) );&lt;br /&gt;
$( &amp;#039;#webcam_controls&amp;#039; ).css( { position:&amp;#039;absolute&amp;#039;, top:&amp;#039;5px&amp;#039;, left:&amp;#039;5px&amp;#039; } );&lt;br /&gt;
$( &amp;#039;#webcam_controls button.no, #webcam_controls button.ok&amp;#039; ).hide();&lt;br /&gt;
// LO SIGUIENTE ES PARA AJUSTAR EL CSS A UN DIALOG DE JQUERY-UI &lt;br /&gt;
$( &amp;#039;#webcam&amp;#039; ).parent().css( &amp;#039;padding&amp;#039;, 0 ).parent().css( { height:&amp;#039;auto&amp;#039;, width:&amp;#039;auto&amp;#039; } );&lt;br /&gt;
&lt;br /&gt;
$( &amp;#039;#webcam_controls button.go&amp;#039; ).on( &amp;#039;click&amp;#039;, function()&lt;br /&gt;
{&lt;br /&gt;
	webcam.reset();&lt;br /&gt;
	webcam.freeze();&lt;br /&gt;
	$( &amp;#039;#webcam_controls button.go&amp;#039; ).hide();&lt;br /&gt;
	$( &amp;#039;#webcam_controls button.no, #webcam_controls button.ok&amp;#039; ).show();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$( &amp;#039;#webcam_controls button.no&amp;#039; ).on( &amp;#039;click&amp;#039;, function()&lt;br /&gt;
{&lt;br /&gt;
	webcam.reset();&lt;br /&gt;
	$( &amp;#039;#webcam_controls button.go&amp;#039; ).show();&lt;br /&gt;
	$( &amp;#039;#webcam_controls button.no, #webcam_controls button.ok&amp;#039; ).hide();&lt;br /&gt;
});&lt;br /&gt;
&lt;br /&gt;
$( &amp;#039;#webcam_controls button.ok&amp;#039; ).on( &amp;#039;click&amp;#039;, function()&lt;br /&gt;
{&lt;br /&gt;
	webcam.upload();&lt;br /&gt;
	location=&amp;#039;/users/your&amp;#039;;&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== /app/models/users.php ==&lt;br /&gt;
* El metodo que es llamado con la acción que salva la foto&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
public function photo()&lt;br /&gt;
{&lt;br /&gt;
	$user = Load::model( &amp;#039;users&amp;#039; )-&amp;gt;getIt();&lt;br /&gt;
	$file = PUB_PATH . &amp;quot;img/photos/$user-&amp;gt;nick.jpg&amp;quot;;&lt;br /&gt;
	file_put_contents( $file, file_get_contents( &amp;#039;php://input&amp;#039; ) );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
== /app/views/users/index.phtml ==&lt;br /&gt;
* Y un trozo de código donde mostar la foto en una vista, donde utilizo como nombre del archivo el nick del usuario que lo cargo previamente en $user-&amp;gt;nick&lt;br /&gt;
&amp;lt;source lang=php&amp;gt;&lt;br /&gt;
if ( file_exists( PUB_PATH . &amp;quot;img/photos/$user-&amp;gt;nick.jpg&amp;quot; ) )&lt;br /&gt;
{&lt;br /&gt;
	?&amp;gt;&lt;br /&gt;
	&amp;lt;img alt=&amp;quot;&amp;lt;?php echo $user-&amp;gt;nick; ?&amp;gt; avatar&amp;quot; src=&amp;quot;/img/photos/&amp;lt;?php echo $user-&amp;gt;nick; ?&amp;gt;.jpg&amp;quot; width=&amp;quot;120&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;?php&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
RECUERDA !! Sientete libre de modificar este tuto siempre que sea para completarlo o mejorarlo.&lt;br /&gt;
&lt;br /&gt;
Y no olvides que todos seriamos ricos y sabios si cada unos de nosotros comparte lo que sabe.&lt;br /&gt;
&lt;br /&gt;
* Tuto by Demonio69&lt;/div&gt;</summary>
		<author><name>83.32.205.7</name></author>
		
	</entry>
</feed>