<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Commentaires sur : Générer des thumbs lors de l&#8217;affichage d&#8217;une image</title>
	<atom:link href="http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/feed" rel="self" type="application/rss+xml" />
	<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781</link>
	<description>Blog sur le développement Web PHP avec Symfony 2</description>
	<lastBuildDate>Sun, 05 Feb 2012 05:07:44 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
	<item>
		<title>Par : Nicolas</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14976</link>
		<dc:creator>Nicolas</dc:creator>
		<pubDate>Tue, 20 Dec 2011 10:30:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14976</guid>
		<description>Re ... Le problème est finalement résolu ... 
image_path() est une fonction de lib/vendor/symfony/lib/helper/AssetHelper.php, il suffit donc de ne pas oublier de l&#039;activer ... 
--
sfProjectConfiguration::getActive()-&gt;loadHelpers(&#039;Thumb&#039;);
sfProjectConfiguration::getActive()-&gt;loadHelpers(&#039;Asset&#039;);
doThumb(...);
--
Bonne journée ! :)
Nico</description>
		<content:encoded><![CDATA[<p>Re &#8230; Le problème est finalement résolu &#8230;<br />
image_path() est une fonction de lib/vendor/symfony/lib/helper/AssetHelper.php, il suffit donc de ne pas oublier de l&#8217;activer &#8230;<br />
&#8211;<br />
sfProjectConfiguration::getActive()-&gt;loadHelpers(&#8216;Thumb&#8217;);<br />
sfProjectConfiguration::getActive()-&gt;loadHelpers(&#8216;Asset&#8217;);<br />
doThumb(&#8230;);<br />
&#8211;<br />
Bonne journée ! <img src='http://www.lexik.fr/blog/symfony/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Nico</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Nicolas</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14975</link>
		<dc:creator>Nicolas</dc:creator>
		<pubDate>Tue, 20 Dec 2011 10:21:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14975</guid>
		<description>Bonjour à tous, 

Merci pour ce tutoriel et merci pour le blog en entier ... ;)

Moi aussi, je rencontre un soucis. En effet, j&#039;ai respecté le processus d&#039;installation du tuto.
- installation du plugin dans plugins/
- installation du helper dans lib/helper/
- création du dossier thumb/ + chmod
- résolution du problème MIME ... etc
... et paf, erreur : 
Fatal error: Call to undefined function image_path() in /var/www/mon_projet/lib/helper/ThumbHelper.php on line 94

PS : L&#039;image 100x100_9.jpg est bien créée dans le dossier uploads/images/thumb/ à partir de l&#039;image 9.jpg qui est dans /uploads/images/ et ce n&#039;est pas une image vide ; elle correspond bien à l&#039;image de base redimensionnée ... 

Pouvez vous m&#039;aider ? Je vous remercie d&#039;avance ! :)
Nico</description>
		<content:encoded><![CDATA[<p>Bonjour à tous, </p>
<p>Merci pour ce tutoriel et merci pour le blog en entier &#8230; <img src='http://www.lexik.fr/blog/symfony/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Moi aussi, je rencontre un soucis. En effet, j&#8217;ai respecté le processus d&#8217;installation du tuto.<br />
- installation du plugin dans plugins/<br />
- installation du helper dans lib/helper/<br />
- création du dossier thumb/ + chmod<br />
- résolution du problème MIME &#8230; etc<br />
&#8230; et paf, erreur :<br />
Fatal error: Call to undefined function image_path() in /var/www/mon_projet/lib/helper/ThumbHelper.php on line 94</p>
<p>PS : L&#8217;image 100x100_9.jpg est bien créée dans le dossier uploads/images/thumb/ à partir de l&#8217;image 9.jpg qui est dans /uploads/images/ et ce n&#8217;est pas une image vide ; elle correspond bien à l&#8217;image de base redimensionnée &#8230; </p>
<p>Pouvez vous m&#8217;aider ? Je vous remercie d&#8217;avance ! <img src='http://www.lexik.fr/blog/symfony/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Nico</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : SAULNIER</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14846</link>
		<dc:creator>SAULNIER</dc:creator>
		<pubDate>Tue, 28 Jun 2011 23:55:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14846</guid>
		<description>Merci beaucoup pour ce code très bien écrit et qui m\&#039;a permis de faire exactement ce que je voulais (miniatures quand la liste de tous les articles est affichée, et image plus grande mais tout de même redimensionnée quand on affiche l\&#039;article.

Encore merci pour ce très bon code.</description>
		<content:encoded><![CDATA[<p>Merci beaucoup pour ce code très bien écrit et qui m\&#8217;a permis de faire exactement ce que je voulais (miniatures quand la liste de tous les articles est affichée, et image plus grande mais tout de même redimensionnée quand on affiche l\&#8217;article.</p>
<p>Encore merci pour ce très bon code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : SAULNIER</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14845</link>
		<dc:creator>SAULNIER</dc:creator>
		<pubDate>Tue, 28 Jun 2011 23:54:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14845</guid>
		<description>Merci beaucoup pour ce code très bien écrit et qui m&#039;a permis de faire exactement ce que je voulais (miniatures quand la liste de tous les articles est affichée, et image plus grande mais tout de même redimensionnée quand on affiche l&#039;article.

Encore merci pour ce très bon code.</description>
		<content:encoded><![CDATA[<p>Merci beaucoup pour ce code très bien écrit et qui m&#8217;a permis de faire exactement ce que je voulais (miniatures quand la liste de tous les articles est affichée, et image plus grande mais tout de même redimensionnée quand on affiche l&#8217;article.</p>
<p>Encore merci pour ce très bon code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : rahma</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14825</link>
		<dc:creator>rahma</dc:creator>
		<pubDate>Thu, 14 Apr 2011 21:16:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14825</guid>
		<description>bonjour
j&#039;ai utlise votre script et merci de la clarte du tuto.
voici mon script: ma classForm
$this-&gt;widgetSchema[&#039;photo&#039;] = new sfWidgetFormInputFile(array(
      		&#039;label&#039; =&gt; &#039;Photo&#039;,
		));

		$this-&gt;validatorSchema[&#039;photo&#039;] = new sfValidatorFile(array(
      		&#039;required&#039;   =&gt; false,
      		&#039;path&#039;       =&gt; sfConfig::get(&#039;sf_upload_dir&#039;).&#039;/photosmembres&#039;,
     	 	&#039;mime_types&#039; =&gt; &#039;web_images&#039;,
		),
		array(&#039;invalid&#039; =&gt; &quot;Ce format d\&#039;image est invalide.&quot; )
		);//sfConfig::get(&#039;sf_upload_dir&#039;).
		$this-&gt;widgetSchema[&#039;photo&#039;] = new sfWidgetFormInputFileEditable(array (
  			&#039;label&#039;     =&gt; &#039;Photo&#039; ,
  			&#039;file_src&#039; =&gt; &#039;/uploads/photosmembres/&#039;.$this-&gt;getObject()-&gt;getphoto(),
  			&#039;is_image&#039; =&gt; true,
		        &#039;delete_label&#039; =&gt; &#039;supprimer&#039;,
  			&#039;edit_mode&#039; =&gt; !$this-&gt;isNew() ,
  			&#039;template&#039; =&gt; &#039;%input%%delete%%delete_label%%file%&#039;,
		)) ;
  
ma methode Save surcharger.

public function save(Doctrine_Connection $con = null)
	{
		//$gallery = parent::save($con);

		if($file = $this-&gt;getPhoto())
		{
		$img = new sfImage($file-&gt;getSavedName());
		$img-&gt;thumbnail(50, 50, &#039;scale&#039;)
			-&gt;saveAs(sfConfig::get(&#039;sf_upload_dir&#039;).&#039;/photosmembres/&#039;.$membre-&gt;getPhoto());
		unset($img);
		}

		return parent::save($con);
	}

quand j&#039;essaye d&#039;enregistrer j&#039;obtiens l&#039;erreur suivante:

Fatal error: Call to a member function getSavedName() on a non-object in C:\dossierprojet\appli\lib\model\doctrine\Membres.class.php on line 28</description>
		<content:encoded><![CDATA[<p>bonjour<br />
j&#8217;ai utlise votre script et merci de la clarte du tuto.<br />
voici mon script: ma classForm<br />
$this-&gt;widgetSchema['photo'] = new sfWidgetFormInputFile(array(<br />
      		&#8216;label&#8217; =&gt; &#8216;Photo&#8217;,<br />
		));</p>
<p>		$this-&gt;validatorSchema['photo'] = new sfValidatorFile(array(<br />
      		&#8216;required&#8217;   =&gt; false,<br />
      		&#8216;path&#8217;       =&gt; sfConfig::get(&#8216;sf_upload_dir&#8217;).&#8217;/photosmembres&#8217;,<br />
     	 	&#8216;mime_types&#8217; =&gt; &#8216;web_images&#8217;,<br />
		),<br />
		array(&#8216;invalid&#8217; =&gt; &laquo;&nbsp;Ce format d\&#8217;image est invalide.&nbsp;&raquo; )<br />
		);//sfConfig::get(&#8216;sf_upload_dir&#8217;).<br />
		$this-&gt;widgetSchema['photo'] = new sfWidgetFormInputFileEditable(array (<br />
  			&#8216;label&#8217;     =&gt; &#8216;Photo&#8217; ,<br />
  			&#8216;file_src&#8217; =&gt; &#8216;/uploads/photosmembres/&#8217;.$this-&gt;getObject()-&gt;getphoto(),<br />
  			&#8216;is_image&#8217; =&gt; true,<br />
		        &#8216;delete_label&#8217; =&gt; &#8216;supprimer&#8217;,<br />
  			&#8216;edit_mode&#8217; =&gt; !$this-&gt;isNew() ,<br />
  			&#8216;template&#8217; =&gt; &#8216;%input%%delete%%delete_label%%file%&#8217;,<br />
		)) ;</p>
<p>ma methode Save surcharger.</p>
<p>public function save(Doctrine_Connection $con = null)<br />
	{<br />
		//$gallery = parent::save($con);</p>
<p>		if($file = $this-&gt;getPhoto())<br />
		{<br />
		$img = new sfImage($file-&gt;getSavedName());<br />
		$img-&gt;thumbnail(50, 50, &#8216;scale&#8217;)<br />
			-&gt;saveAs(sfConfig::get(&#8216;sf_upload_dir&#8217;).&#8217;/photosmembres/&#8217;.$membre-&gt;getPhoto());<br />
		unset($img);<br />
		}</p>
<p>		return parent::save($con);<br />
	}</p>
<p>quand j&#8217;essaye d&#8217;enregistrer j&#8217;obtiens l&#8217;erreur suivante:</p>
<p>Fatal error: Call to a member function getSavedName() on a non-object in C:\dossierprojet\appli\lib\model\doctrine\Membres.class.php on line 28</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : rahma</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-14824</link>
		<dc:creator>rahma</dc:creator>
		<pubDate>Thu, 14 Apr 2011 12:55:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-14824</guid>
		<description>bonjour
j\&#039;ai utlise votre script et merci de la clarte du tuto.
voici mon script: ma classForm
$this-&gt;widgetSchema[\&#039;photo\&#039;] = new sfWidgetFormInputFile(array(
      		\&#039;label\&#039; =&gt; \&#039;Photo\&#039;,
		));

		$this-&gt;validatorSchema[\&#039;photo\&#039;] = new sfValidatorFile(array(
      		\&#039;required\&#039;   =&gt; false,
      		\&#039;path\&#039;       =&gt; sfConfig::get(\&#039;sf_upload_dir\&#039;).\&#039;/photosmembres\&#039;,
     	 	\&#039;mime_types\&#039; =&gt; \&#039;web_images\&#039;,
		),
		array(\&#039;invalid\&#039; =&gt; \&quot;Ce format d\\\&#039;image est invalide.\&quot; )
		);//sfConfig::get(\&#039;sf_upload_dir\&#039;).
		$this-&gt;widgetSchema[\&#039;photo\&#039;] = new sfWidgetFormInputFileEditable(array (
  			\&#039;label\&#039;     =&gt; \&#039;Photo\&#039; ,
  			\&#039;file_src\&#039; =&gt; \&#039;/uploads/photosmembres/\&#039;.$this-&gt;getObject()-&gt;getphoto(),
  			\&#039;is_image\&#039; =&gt; true,
		        \&#039;delete_label\&#039; =&gt; \&#039;supprimer\&#039;,
  			\&#039;edit_mode\&#039; =&gt; !$this-&gt;isNew() ,
  			\&#039;template\&#039; =&gt; \&#039;&lt;div&gt;%input%&lt;br /&gt;%delete%%delete_label%%file%&lt;br /&gt;&lt;/div&gt;\&#039;,
		)) ;
  
ma methode Save surcharger.

public function save(Doctrine_Connection $con = null)
	{
		//$gallery = parent::save($con);

		if($file = $this-&gt;getPhoto())
		{
		$img = new sfImage($file-&gt;getSavedName());
		$img-&gt;thumbnail(50, 50, \&#039;scale\&#039;)
			-&gt;saveAs(sfConfig::get(\&#039;sf_upload_dir\&#039;).\&#039;/photosmembres/\&#039;.$membre-&gt;getPhoto());
		unset($img);
		}

		return parent::save($con);
	}

quand j\&#039;essaye d\&#039;enregistrer j\&#039;obtiens l\&#039;erreur suivante:

Fatal error: Call to a member function getSavedName() on a non-object in C:\\dossierprojet\\appli\\lib\\model\\doctrine\\Membres.class.php on line 28</description>
		<content:encoded><![CDATA[<p>bonjour<br />
j\&#8217;ai utlise votre script et merci de la clarte du tuto.<br />
voici mon script: ma classForm<br />
$this-&gt;widgetSchema[\'photo\'] = new sfWidgetFormInputFile(array(<br />
      		\&#8217;label\&#8217; =&gt; \&#8217;Photo\&#8217;,<br />
		));</p>
<p>		$this-&gt;validatorSchema[\'photo\'] = new sfValidatorFile(array(<br />
      		\&#8217;required\&#8217;   =&gt; false,<br />
      		\&#8217;path\&#8217;       =&gt; sfConfig::get(\&#8217;sf_upload_dir\&#8217;).\&#8217;/photosmembres\&#8217;,<br />
     	 	\&#8217;mime_types\&#8217; =&gt; \&#8217;web_images\&#8217;,<br />
		),<br />
		array(\&#8217;invalid\&#8217; =&gt; \&quot;Ce format d\\\&#8217;image est invalide.\&quot; )<br />
		);//sfConfig::get(\&#8217;sf_upload_dir\&#8217;).<br />
		$this-&gt;widgetSchema[\'photo\'] = new sfWidgetFormInputFileEditable(array (<br />
  			\&#8217;label\&#8217;     =&gt; \&#8217;Photo\&#8217; ,<br />
  			\&#8217;file_src\&#8217; =&gt; \&#8217;/uploads/photosmembres/\&#8217;.$this-&gt;getObject()-&gt;getphoto(),<br />
  			\&#8217;is_image\&#8217; =&gt; true,<br />
		        \&#8217;delete_label\&#8217; =&gt; \&#8217;supprimer\&#8217;,<br />
  			\&#8217;edit_mode\&#8217; =&gt; !$this-&gt;isNew() ,<br />
  			\&#8217;template\&#8217; =&gt; \&#8217;&lt;div&gt;%input%&lt;br /&gt;%delete%%delete_label%%file%&lt;br /&gt;&lt;/div&gt;\&#8217;,<br />
		)) ;</p>
<p>ma methode Save surcharger.</p>
<p>public function save(Doctrine_Connection $con = null)<br />
	{<br />
		//$gallery = parent::save($con);</p>
<p>		if($file = $this-&gt;getPhoto())<br />
		{<br />
		$img = new sfImage($file-&gt;getSavedName());<br />
		$img-&gt;thumbnail(50, 50, \&#8217;scale\&#8217;)<br />
			-&gt;saveAs(sfConfig::get(\&#8217;sf_upload_dir\&#8217;).\&#8217;/photosmembres/\&#8217;.$membre-&gt;getPhoto());<br />
		unset($img);<br />
		}</p>
<p>		return parent::save($con);<br />
	}</p>
<p>quand j\&#8217;essaye d\&#8217;enregistrer j\&#8217;obtiens l\&#8217;erreur suivante:</p>
<p>Fatal error: Call to a member function getSavedName() on a non-object in C:\\dossierprojet\\appli\\lib\\model\\doctrine\\Membres.class.php on line 28</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Thomas</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-10489</link>
		<dc:creator>Thomas</dc:creator>
		<pubDate>Wed, 30 Jun 2010 12:34:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-10489</guid>
		<description>@Kévin
Bonjour Kévin,

oui ce problème vient lors de la configuration du plugin sfImageTransformPlugin.
il faut que dans ton app.yml tu rajoutes les lignes suivantes:
  sfImageTransformPlugin:
    default_adapter: GD
    default_image:
      mime_type: image/png
      filename: Untitled.png
    mime_type:
      auto_detect: true
      library: gd_mime_type

c&#039;est expliqué là: http://www.symfony-project.org/plugins/sfImageTransformPlugin
vers le bas de la page dans la configuration du yml.</description>
		<content:encoded><![CDATA[<p>@Kévin<br />
Bonjour Kévin,</p>
<p>oui ce problème vient lors de la configuration du plugin sfImageTransformPlugin.<br />
il faut que dans ton app.yml tu rajoutes les lignes suivantes:<br />
  sfImageTransformPlugin:<br />
    default_adapter: GD<br />
    default_image:<br />
      mime_type: image/png<br />
      filename: Untitled.png<br />
    mime_type:<br />
      auto_detect: true<br />
      library: gd_mime_type</p>
<p>c&#8217;est expliqué là: <a href="http://www.symfony-project.org/plugins/sfImageTransformPlugin" rel="nofollow">http://www.symfony-project.org/plugins/sfImageTransformPlugin</a><br />
vers le bas de la page dans la configuration du yml.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Kévin</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-10479</link>
		<dc:creator>Kévin</dc:creator>
		<pubDate>Wed, 30 Jun 2010 09:21:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-10479</guid>
		<description>Bonjour Thomas,
Je viens d&#039;essayer ton script sur un site avec Symfony 1.4 et Doctrine.
J&#039;ai un partial contenu dans une vue où je fais appel à ton helper :

	echo showThumb(
            $p-&gt;filename,
            &#039;gallerie&#039;,
            array(
				&#039;id&#039; =&gt; &#039;img&#039;.$i,
                &#039;height&#039; =&gt; null,
                &#039;width&#039; =&gt; 600,
                &#039;alt&#039; =&gt; $p-&gt;filename,
                &#039;title&#039; =&gt; $p-&gt;filename,
                &#039;border&#039; =&gt; 0
            ),
            &#039;scale&#039;,
            &#039;defaut.jpg&#039;);
		endforeach; ?&gt;

et j&#039;obtiens l&#039;erreur suivante que je ne comprends pas: You must either specify the MIME type for file  or enable mime detection. (une exception du sfImageTransform).

Est-ce que tu vois d&#039;où cela peut bien venir ?
Merci.</description>
		<content:encoded><![CDATA[<p>Bonjour Thomas,<br />
Je viens d&#8217;essayer ton script sur un site avec Symfony 1.4 et Doctrine.<br />
J&#8217;ai un partial contenu dans une vue où je fais appel à ton helper :</p>
<p>	echo showThumb(<br />
            $p-&gt;filename,<br />
            &#8216;gallerie&#8217;,<br />
            array(<br />
				&#8216;id&#8217; =&gt; &#8216;img&#8217;.$i,<br />
                &#8216;height&#8217; =&gt; null,<br />
                &#8216;width&#8217; =&gt; 600,<br />
                &#8216;alt&#8217; =&gt; $p-&gt;filename,<br />
                &#8216;title&#8217; =&gt; $p-&gt;filename,<br />
                &#8216;border&#8217; =&gt; 0<br />
            ),<br />
            &#8216;scale&#8217;,<br />
            &#8216;defaut.jpg&#8217;);<br />
		endforeach; ?&gt;</p>
<p>et j&#8217;obtiens l&#8217;erreur suivante que je ne comprends pas: You must either specify the MIME type for file  or enable mime detection. (une exception du sfImageTransform).</p>
<p>Est-ce que tu vois d&#8217;où cela peut bien venir ?<br />
Merci.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : thomas</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-3374</link>
		<dc:creator>thomas</dc:creator>
		<pubDate>Mon, 21 Sep 2009 07:56:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-3374</guid>
		<description>@guil182,

bonjour,

nous nous servons de cet helper pour la génération du thumb lors de l&#039;affichage et non lors de l&#039;upload d&#039;une image.
nous laissons donc le formulaire standard:

$this-&gt;widgetSchema[&#039;image&#039;] = new sfWidgetFormInputFileEditable(array(
      &#039;file_src&#039;     =&gt; &#039;/uploads/gallery/source/&#039;.$this-&gt;getObject()-&gt;getImage(),
      &#039;is_image&#039;     =&gt; true,
      &#039;edit_mode&#039;    =&gt; !$this-&gt;isNew(),
      &#039;delete_label&#039; =&gt; &#039;Supprimer&#039;,
      &#039;template&#039;     =&gt; &#039;%file%%input%%delete% %delete_label%&#039;
    ));
    
    $this-&gt;validatorSchema[&#039;image&#039;] = new sfValidatorFile(array(
                    &#039;required&#039;   =&gt; false,
                    &#039;path&#039;       =&gt; sfConfig::get(&#039;sf_upload_dir&#039;).&#039;/gallery/source/&#039;,
                    &#039;max_size&#039;   =&gt; 2048000),
      array(&#039;max_size&#039; =&gt; &#039;File too large (2MB max).&#039;));

    $this-&gt;validatorSchema[&#039;image_delete&#039;] = new sfValidatorPass();

les images sont uploadées dans uploads/gallery/source/, les thumbs seront générés dans uploads/gallery/thumb dans cet exemple.

Dans la vue, aprés avor chargé mon helper, j&#039;appel:
showThumb($gallery-&gt;getImage(), &#039;gallery&#039;, array(&#039;width&#039;=&gt;100, &#039;height&#039;=&gt;100), &#039;scale&#039;, &#039;default.gif&#039;);


Par contre on peut utiliser le plugin sfImageTransform pour redimensionner lors de l&#039;upload en surchargeant la méthode save de notre formulaire:
public function save($con = null)
  {
    $gallery = parent::save($con);

    if($file = $this-&gt;getValue(&#039;image&#039;))
    {
      $img = new sfImage($file-&gt;getSavedName());
      $img-&gt;thumbnail(600, 600, &#039;scale&#039;)
        -&gt;saveAs(sfConfig::get(&#039;sf_upload_dir&#039;).&#039;/gallery/source/&#039;.$pdv-&gt;getImage());
      unset($img);
    }

    return $gallery;
  }</description>
		<content:encoded><![CDATA[<p>@guil182,</p>
<p>bonjour,</p>
<p>nous nous servons de cet helper pour la génération du thumb lors de l&#8217;affichage et non lors de l&#8217;upload d&#8217;une image.<br />
nous laissons donc le formulaire standard:</p>
<p>$this-&gt;widgetSchema['image'] = new sfWidgetFormInputFileEditable(array(<br />
      &#8216;file_src&#8217;     =&gt; &#8216;/uploads/gallery/source/&#8217;.$this-&gt;getObject()-&gt;getImage(),<br />
      &#8216;is_image&#8217;     =&gt; true,<br />
      &#8216;edit_mode&#8217;    =&gt; !$this-&gt;isNew(),<br />
      &#8216;delete_label&#8217; =&gt; &#8216;Supprimer&#8217;,<br />
      &#8216;template&#8217;     =&gt; &#8216;%file%%input%%delete% %delete_label%&#8217;<br />
    ));</p>
<p>    $this-&gt;validatorSchema['image'] = new sfValidatorFile(array(<br />
                    &#8216;required&#8217;   =&gt; false,<br />
                    &#8216;path&#8217;       =&gt; sfConfig::get(&#8216;sf_upload_dir&#8217;).&#8217;/gallery/source/&#8217;,<br />
                    &#8216;max_size&#8217;   =&gt; 2048000),<br />
      array(&#8216;max_size&#8217; =&gt; &#8216;File too large (2MB max).&#8217;));</p>
<p>    $this-&gt;validatorSchema['image_delete'] = new sfValidatorPass();</p>
<p>les images sont uploadées dans uploads/gallery/source/, les thumbs seront générés dans uploads/gallery/thumb dans cet exemple.</p>
<p>Dans la vue, aprés avor chargé mon helper, j&#8217;appel:<br />
showThumb($gallery-&gt;getImage(), &#8216;gallery&#8217;, array(&#8216;width&#8217;=&gt;100, &#8216;height&#8217;=&gt;100), &#8216;scale&#8217;, &#8216;default.gif&#8217;);</p>
<p>Par contre on peut utiliser le plugin sfImageTransform pour redimensionner lors de l&#8217;upload en surchargeant la méthode save de notre formulaire:<br />
public function save($con = null)<br />
  {<br />
    $gallery = parent::save($con);</p>
<p>    if($file = $this-&gt;getValue(&#8216;image&#8217;))<br />
    {<br />
      $img = new sfImage($file-&gt;getSavedName());<br />
      $img-&gt;thumbnail(600, 600, &#8216;scale&#8217;)<br />
        -&gt;saveAs(sfConfig::get(&#8216;sf_upload_dir&#8217;).&#8217;/gallery/source/&#8217;.$pdv-&gt;getImage());<br />
      unset($img);<br />
    }</p>
<p>    return $gallery;<br />
  }</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : guil182</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-3362</link>
		<dc:creator>guil182</dc:creator>
		<pubDate>Fri, 18 Sep 2009 12:50:55 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-3362</guid>
		<description>Bonjour,
Merci pour les très bons articles...par contre j&#039;ai quelques petits soucis.
J&#039;ai mis ThumbHelper.php sous lib/helper

J&#039;ai inclus  dans apps\backend\templates\layout.php

Et j&#039;ai mis dans lib\form\doctrine\BackendClubForm.class.php ce code :

    $this-&gt;widgetSchema[&#039;logoclub&#039;] = new sfWidgetFormInputFileEditable(array(
      &#039;label&#039;     =&gt; &#039;Logo&#039;,
      //&#039;file_src&#039;  =&gt; &#039;/uploads/club/&#039;.$this-&gt;getObject()-&gt;getlogoclub(),
      &#039;file_src&#039;  =&gt;  &#039;/&#039;.basename(sfConfig::get(&#039;sf_upload_dir&#039;)).&#039;/img/&#039;.$this-&gt;getObject()-&gt;getlogoclub(),
      &#039;is_image&#039;  =&gt; true,
      //&#039;edit_mode&#039; =&gt; !$this-&gt;isNew(),
        &#039;edit_mode&#039; =&gt; doThumb($this-&gt;getObject()-&gt;getlogoclub(), &#039;uploads&#039;, array(&#039;width&#039;=&gt;&#039;32&#039;,&#039;height&#039;=&gt;&#039;32&#039;), &#039;center&#039;, &#039;default.jpg&#039;),
      &#039;template&#039;  =&gt; &#039;%file%%input%%delete% %delete_label%&#039;,
    ));

et à l&#039;exécution, j&#039;ai la belle erreur : Fatal error: Call to undefined function doThumb() in D:\wamp\www\ChampionsL\lib\form\doctrine\BackendClubForm.class.php on line 32

merci de votre aide.</description>
		<content:encoded><![CDATA[<p>Bonjour,<br />
Merci pour les très bons articles&#8230;par contre j&#8217;ai quelques petits soucis.<br />
J&#8217;ai mis ThumbHelper.php sous lib/helper</p>
<p>J&#8217;ai inclus  dans apps\backend\templates\layout.php</p>
<p>Et j&#8217;ai mis dans lib\form\doctrine\BackendClubForm.class.php ce code :</p>
<p>    $this->widgetSchema['logoclub'] = new sfWidgetFormInputFileEditable(array(<br />
      &#8216;label&#8217;     => &#8216;Logo&#8217;,<br />
      //&#8217;file_src&#8217;  => &#8216;/uploads/club/&#8217;.$this->getObject()->getlogoclub(),<br />
      &#8216;file_src&#8217;  =>  &#8216;/&#8217;.basename(sfConfig::get(&#8216;sf_upload_dir&#8217;)).&#8217;/img/&#8217;.$this->getObject()->getlogoclub(),<br />
      &#8216;is_image&#8217;  => true,<br />
      //&#8217;edit_mode&#8217; => !$this->isNew(),<br />
        &#8216;edit_mode&#8217; => doThumb($this->getObject()->getlogoclub(), &#8216;uploads&#8217;, array(&#8216;width&#8217;=>&#8217;32&#8242;,&#8217;height&#8217;=>&#8217;32&#8242;), &#8216;center&#8217;, &#8216;default.jpg&#8217;),<br />
      &#8216;template&#8217;  => &#8216;%file%%input%%delete% %delete_label%&#8217;,<br />
    ));</p>
<p>et à l&#8217;exécution, j&#8217;ai la belle erreur : Fatal error: Call to undefined function doThumb() in D:\wamp\www\ChampionsL\lib\form\doctrine\BackendClubForm.class.php on line 32</p>
<p>merci de votre aide.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Sacri</title>
		<link>http://www.lexik.fr/blog/symfony/symfony/generer-des-thumbs-lors-de-laffichage-dune-image-781/comment-page-1#comment-3070</link>
		<dc:creator>Sacri</dc:creator>
		<pubDate>Fri, 10 Jul 2009 07:15:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.lexik.fr/sfblog/?p=781#comment-3070</guid>
		<description>Bonjour,
Je trouve l&#039;idée très sympa et son implémentation bonne. Je n&#039;ai pas testé encore le helper mais je le mets de côté, je ne doute pas qu&#039;il me servira :)

ps : le gris clair lors de l&#039;écriture dans le textarea est illisible :p</description>
		<content:encoded><![CDATA[<p>Bonjour,<br />
Je trouve l&#8217;idée très sympa et son implémentation bonne. Je n&#8217;ai pas testé encore le helper mais je le mets de côté, je ne doute pas qu&#8217;il me servira <img src='http://www.lexik.fr/blog/symfony/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>ps : le gris clair lors de l&#8217;écriture dans le textarea est illisible :p</p>
]]></content:encoded>
	</item>
</channel>
</rss>

