<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Amicalement Web - Astuces et Bons plans dans le développement web &#187; widget</title>
	<atom:link href="http://www.amicalement-web.net/tag/widget/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.amicalement-web.net</link>
	<description>Astuces et bons plans d&#039;un web developpeur</description>
	<lastBuildDate>Thu, 03 Jun 2010 10:06:47 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Développement Web: les bons plans de la semaine #20</title>
		<link>http://www.amicalement-web.net/developpement-web-les-bons-plans-de-la-semaine-20/2009/10/26/</link>
		<comments>http://www.amicalement-web.net/developpement-web-les-bons-plans-de-la-semaine-20/2009/10/26/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 10:00:14 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Bons plans]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.amicalement-web.net/?p=906</guid>
		<description><![CDATA[ Bon ok, j&#8217;ai rien écrit la semaine dernière et Vince m&#8217;a pas aidé cette fois-ci :p Je manque juste d&#8217;un peu de temps pour me réorganiser après mon changement de boulot.
Donc pas d&#8217;inquiétude (oué oué, je sais je suis le seul inquiet en fait), ca va revenir tranquillement. Surtout que je prend au moins [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.amicalement-web.net/wp-content/uploads/book.png" alt="book" title="book" width="614" height="100" class="alignnone size-full wp-image-910" /> Bon ok, j&#8217;ai rien écrit la semaine dernière et Vince m&#8217;a pas aidé cette fois-ci :p Je manque juste d&#8217;un peu de temps pour me réorganiser après mon changement de boulot.</p>
<p>Donc pas d&#8217;inquiétude (oué oué, je sais je suis le seul inquiet en fait), ca va revenir tranquillement. Surtout que je prend au moins toujours autant de temps pour mes bons plans de la semaine et que cette semaine, des trucs biens sympa ont pointé leur bout de html.<br />
<span id="more-906"></span><br />
Par contre je tiens à m&#8217;excuser, j&#8217;ai pris pas mal de chose de twitter cette semaine mais j&#8217;ai oublié de noter toutes les sources! Promis, j&#8217;essaie de corriger ça au plus vite.</p>
<ul>
<li><a  href="http://designrfix.com/freebies/free-twitter-icons-website-design">Des icones twitter très fun</a><br />
Certainement la meilleur liste que j&#8217;ai pu voir, on voit que le petit oiseau inspire plus que le F de facebook.</li>
<li><a  href="http://www.html-form-guide.com/blog/web-form-widget/54/web-form-password-widget/">Un widget de mot passe javascript</a><br />
Très complet, permettant de voir le mot de passe en clair, d&#8217;en générer un et de détecter sa force. Son seul tord a mon sens c&#8217;est qu&#8217;est pas écrit en jquery :p</li>
<li><a  href="http://code.google.com/p/jquery-text-truncate/">Couper vos textes au pixel près</a><br />
J&#8217;ai toujours cru que c&#8217;était pas possible, et là encore jquery vient dire le contraire avec ce plugin qui permet de couper un texte dans sa largeur, quelle que soit la taille de la police. Alors bien sûr, ca suit pas le niveau de zoom de la police. Faut pas rêver non plus hein.
</li>
<li><a  href="http://www.jquery.wisdomplug.com/jquery-plugins/jquery-photo-gallery-plugins/jquery-tutorial-create-a-unique-gallery-by-using-z-index-and-jquery/">Tuto pour créer une galerie jquery sympa</a><br />
L&#8217;effet et le style du tuto mérite bien un petit détour. Ca peut aussi aider pas mal de gens à se mettre un peu plus à jquery.</li>
<li><a  href="http://html-ipsum.com/">HTML Ipsum</a> (via <a  href="http://twitter.com/alsacreations">@alsacreations</a>)<br />
L&#8217;idée est tout bête et pourtant. Les lorem ipsums si chers, lors des intégrations de nos chers webdesigns, n&#8217;auront jamais été aussi facile à mettre en place. Ce site permet de récupérer les éléments HTML les plus courants, directement rempli avec ce jargon latin. Encore 10min de sauvé!
</li>
<li><a  href="http://www.webdevelopmenttips.com/autoload-your-php-classes/">L&#8217;autoload PHP en détail</a><br />
Mécanisme plutôt &laquo;&nbsp;récent&nbsp;&raquo; en PHP, il méritait bien quelques lignes pour montrer l&#8217;envers du décor quand on utilise des framework qui l&#8217;intégre déjà.</li>
<li><a  href="http://www.unwrongest.com/projects/password-strength/#demo">Testez la force de mots de passe</a><br />
Voyez combien de temps un bruteforce pourrait casser votre mot de passe! Ca ferait presque peur leur truc.</li>
<li><a  href="http://www.do-as-i-say.com/notes/2009/10/twitter-explique-a-ma-maman/">Twitter explique a ma maman</a><br />
Certainement l&#8217;explication de twitter que je rejoins le plus! Et c&#8217;est presque drôle en plus :p</li>
<li><a  href="http://www.playframework.org/">Play Framework</a><br />
C&#8217;est le lien de la semaine qui a fait le tour de twitter, Un nouveau framework dans le ROR style, mais cette fois en java! Et oui, mêmes les utilisateurs de ce langage ont fini par craquer et c&#8217;est personnellement pas pour me déplaire.</li>
<li><a  href="http://kroppr.rborn.info/">Une solution de Crop d&#8217;image</a><br />
Et même plus! Elle intégre aussi le zoom et la rotation des images dans un seul outil très bien outil. </li>
<li><a  href="http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/">Reproduire le login de twitter</a><br />
Parce que pour moi twitter, mais aussi dailymotion, ont la meilleur solution de dropdown, il fallait en parler l&#8217;expliquer, c&#8217;est chose fait.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.amicalement-web.net/developpement-web-les-bons-plans-de-la-semaine-20/2009/10/26/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Symfony: Domptez les filtres de l&#8217;admin generator</title>
		<link>http://www.amicalement-web.net/symfony-domptez-les-filtres-de-ladmin-generator/2009/06/16/</link>
		<comments>http://www.amicalement-web.net/symfony-domptez-les-filtres-de-ladmin-generator/2009/06/16/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 16:26:01 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[admin]]></category>
		<category><![CDATA[filter]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.amicalement-web.net/?p=348</guid>
		<description><![CDATA[ Un détail qui m&#8217;a toujours titillé dans le fabuleux admin generator de symfony, c&#8217;est le bloc de filtre. Le concept est bien sûr génial. Sans rien faire, vous avez déjà la possibilité de filtrer vos résultats, un gain de temps énorme, surtout quand on a un client qui sait ce qu&#8217;il veut. Mais voilà, [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.amicalement-web.net/wp-content/uploads/system-run.png" alt="system-run" title="system-run" width="48" height="48" class="alignleft size-full wp-image-38" /> Un détail qui m&#8217;a toujours titillé dans le fabuleux <a  href="http://www.symfony-project.org/jobeet/1_2/Propel/en/12" class="extern">admin generator de symfony</a>, c&#8217;est le bloc de filtre. Le concept est bien sûr génial. Sans rien faire, vous avez déjà la possibilité de filtrer vos résultats, un gain de temps énorme, surtout quand on a un client qui sait ce qu&#8217;il veut. Mais voilà, même si depuis la 1.2, le layout de l&#8217;admin generator par défaut a subit un lifting qui le rend beau de série:<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-56.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-56-300x44.png" alt="Image 56" title="Image 56" width="300" height="44" class="alignnone size-medium wp-image-349" /></a><br />
<span id="more-348"></span><br />
On rencontre très vite, dans le cas d&#8217;un tableau avec beaucoup de colonnes, le fameux &laquo;&nbsp;bug&nbsp;&raquo; css sur un écran plus petit que mon 20&#8243; (oui parce que chez moi, c&#8217;est toujours très beau, chez mes chefs de projets et leur portable, beaucoup moins :D):<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-57.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-57-300x48.png" alt="Image 57" title="Image 57" width="300" height="48" class="alignnone size-medium wp-image-350" /></a></p>
<p>Alors bien sûr, la solution radicale, c&#8217;est de réduire le nombre de colonnes, mais souvent le client, il les veut ses colonnes! La 2e solution est de supprimer ce bloc de filtre. On fait ça très simplement dans le generator.yml:</p>

<div class="wp_syntax"><div class="code"><pre class="yaml" style="font-family:monospace;">filter:
  class: false</pre></div></div>

<p>Cependant, il arrive quand même que le filtrage soit nécessaire mais bien souvent, seulement 2 ou 3 valeurs. J&#8217;ai donc décidé de prendre le taureau par les cornes et faire la modification dont je rêve depuis longtemps, passer ce bloc de filtre, au dessus du tableau! Pour ce faire, j&#8217;ai modifié 2 fichiers. Tout d&#8217;abord, le fichier <code>_filters.php</code> qu&#8217;il faudra rajouter dans le dossier templates de vos modules visés:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">&lt;div class=&quot;sf_admin_filter&quot;&gt;
&nbsp;
	&lt;div class=&quot;content_filter&quot;&gt;
  <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$form</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">hasGlobalErrors</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
    <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$form</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">renderGlobalErrors</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
  <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endif</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
&nbsp;
  &lt;form action=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> url_for<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'produits_collection'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'action'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'filter'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot; method=&quot;post&quot;&gt;
	  <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">foreach</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$configuration</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getFormFilterFields</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$form</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">as</span> <span style="color: #000088;">$name</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$field</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">:</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
	  &lt;div class=&quot;bloc_filter&quot;&gt;
        <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$form</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$name</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #000088;">$form</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$name</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">isHidden</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">||</span> <span style="color: #009900;">&#40;</span><span style="color: #339933;">!</span><span style="color: #990000;">isset</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$form</span><span style="color: #009900;">&#91;</span><span style="color: #000088;">$name</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">&amp;&amp;</span> <span style="color: #000088;">$field</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">isReal</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #b1b100;">continue</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
          <span style="color: #000000; font-weight: bold;">&lt;?php</span> include_partial<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'produits/filters_field'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
            <span style="color: #0000ff;">'name'</span>       <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$name</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'attributes'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$field</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getConfig</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'attributes'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'label'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$field</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getConfig</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'label'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'help'</span>       <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$field</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getConfig</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'help'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'form'</span>       <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$form</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'field'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #000088;">$field</span><span style="color: #339933;">,</span>
            <span style="color: #0000ff;">'class'</span>      <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'sf_admin_form_row sf_admin_'</span><span style="color: #339933;">.</span><span style="color: #990000;">strtolower</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$field</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">getType</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">.</span><span style="color: #0000ff;">' sf_admin_filter_field_'</span><span style="color: #339933;">.</span><span style="color: #000088;">$name</span><span style="color: #339933;">,</span>
          <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
    &lt;/div&gt;
    <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">endforeach</span><span style="color: #339933;">;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
&nbsp;
     <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> <span style="color: #000088;">$form</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">renderHiddenFields</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
     <span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> link_to<span style="color: #009900;">&#40;</span>__<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Reset'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sf_admin'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'produits_collection'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'action'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'filter'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'query_string'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'_reset'</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'method'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'post'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>
     &lt;input type=&quot;submit&quot; value=&quot;<span style="color: #000000; font-weight: bold;">&lt;?php</span> <span style="color: #b1b100;">echo</span> __<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'Filter'</span><span style="color: #339933;">,</span> <span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'sf_admin'</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">?&gt;</span>&quot; /&gt;
  &lt;/form&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre></div></div>

<p>Au final, j&#8217;ai simplement supprimé le tableau, par défaut et mis chaque widget dans un div. On obtient donc quelque chose qui change pas vraiment la donne pour l&#8217;instant:<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-58.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-58-300x36.png" alt="Image 58" title="Image 58" width="300" height="36" class="alignnone size-medium wp-image-353" /></a></p>
<p>Mais en lui appliquant un peu de css:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;">div<span style="color: #cc00cc;">#sf_admin_bar</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#sf_admin_bar</span> <span style="color: #6666ff;">.sf_admin_filter</span> form div<span style="color: #6666ff;">.bloc_filter</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span> <span style="color: #933;">20px</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
div<span style="color: #cc00cc;">#sf_admin_container</span> <span style="color: #cc00cc;">#sf_admin_bar</span> label <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span><span style="color: #993333;">inline</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span><span style="color: #993333;">none</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>On commence à approcher de ce que l&#8217;on souhaite:<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-60.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-60-300x29.png" alt="Image 60" title="Image 60" width="300" height="29" class="alignnone size-medium wp-image-354" /></a></p>
<p>Maintenant, on habille un peu la chose, histoire de gagner en clarté:</p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #cc00cc;">#sf_admin_bar</span> <span style="color: #6666ff;">.sf_admin_filter</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">background-color</span><span style="color: #00AA00;">:</span><span style="color: #cc00cc;">#FFF</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span><span style="color: #933;">12px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #cc00cc;">#sf_admin_bar</span> <span style="color: #6666ff;">.sf_admin_filter</span> <span style="color: #6666ff;">.content_filter</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">border</span><span style="color: #00AA00;">:</span><span style="color: #933;">1px</span> <span style="color: #993333;">solid</span> <span style="color: #cc00cc;">#DDDDDD</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span><span style="color: #933;">5px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>Pour obtenir finalement:<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-61.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-61-300x38.png" alt="Image 61" title="Image 61" width="300" height="38" class="alignnone size-medium wp-image-355" /></a></p>
<p>Un dernier détail, le filtre &laquo;&nbsp;référence&nbsp;&raquo; avec sa colonne &laquo;&nbsp;is_empty&nbsp;&raquo; casse un peu notre rendu. Personnellement, je ne me sers pas de cette checkbox, on va donc redéfinir notre filtre pour la supprimer dans <code>lib/filters/MonModuleFilters.class.php</code>:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> configure<span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>
  <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">widgetSchema</span><span style="color: #009900;">&#91;</span><span style="color: #0000ff;">'reference'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> sfWidgetFormFilterInput<span style="color: #009900;">&#40;</span><span style="color: #990000;">array</span><span style="color: #009900;">&#40;</span>
      <span style="color: #0000ff;">'template'</span> <span style="color: #339933;">=&gt;</span> <span style="color: #0000ff;">'%input%'</span>
    <span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span></pre></div></div>

<p>Et voilà, une jolie barre de recherche beaucoup plus du goût des clients en général :)<br />
<a  href="http://www.amicalement-web.net/wp-content/uploads/Image-62.png"><img src="http://www.amicalement-web.net/wp-content/uploads/Image-62-300x32.png" alt="Image 62" title="Image 62" width="300" height="32" class="alignnone size-medium wp-image-352" /></a></p>
<p>Alors bien sûr, cette solution ne fonctionne qu&#8217;avec un nombre limité de filtre, sinon on aurait un rendu un peu moins visuel, mais je pense que ça reste toujours mieux que 2 blocs qui se chevauchent.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.amicalement-web.net/symfony-domptez-les-filtres-de-ladmin-generator/2009/06/16/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Montastic, surveiller vos serveurs du coin de l&#8217;oeil</title>
		<link>http://www.amicalement-web.net/montastic-surveiller-vos-serveurs-du-coin-de-loeil/2009/02/05/</link>
		<comments>http://www.amicalement-web.net/montastic-surveiller-vos-serveurs-du-coin-de-loeil/2009/02/05/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 00:15:30 +0000</pubDate>
		<dc:creator>Tim</dc:creator>
				<category><![CDATA[Bons plans]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[serveur]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.amicalement-web.net/?p=68</guid>
		<description><![CDATA[ Quand on a pas la chance d&#8217;avoir un serveur dédié pour son site web, le monitoring de ce dernier est rarement de bonne facture, et c&#8217;est bien souvent un contact sur skype ou pire encore, vous même avec quelques heures de retard forcément, qui vous informe que votre site est tombé.
Et bien Montastic permet [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.amicalement-web.net/wp-content/uploads/system-software-update.png" alt="system-software-update" title="system-software-update" width="48" height="48" class="alignleft size-full wp-image-40" /> Quand on a pas la chance d&#8217;avoir un serveur dédié pour son site web, le monitoring de ce dernier est rarement de bonne facture, et c&#8217;est bien souvent un contact sur skype ou pire encore, vous même avec quelques heures de retard forcément, qui vous informe que votre site est tombé.</p>
<p>Et bien <a  href="http://www.montastic.com/" class="extern">Montastic</a> permet justement de monitorer vos sites web gratuitement. Bien sûr le monitoring est très basique, il ne teste que le ping, mais c&#8217;est bien le test le plus important et le plus simple à mettre en oeuvre. Pour ce faire, il vous suffit de vous inscrire (gratuitement!), et d&#8217;indiquer la liste des sites à monitorer.</p>
<p>Attention à l&#8217;adresse mail utilisé pour l&#8217;inscription, c&#8217;est cette dernière qui sera utilisée pour vous prévenir si votre site rencontre des problèmes. Pensez également à retirer les sites web d&#8217;exemple, google et l&#8217;hôte inconnu sinon vous allez être vite spammé de mail.</p>
<p>Un très bon service, auxquels sont venus <a  href="http://montastic-wiki.metadot.net/widgets" class="extern">se greffer des widgets</a> pour ceux qui ne passent pas leur journée la tête dans leur mailbox.</p>
<p>Pour la version mac, il faudra simplement renseigner la clé que l&#8217;on trouve dans son profil sur le site et on obtient un joli:<br />
<img src="http://www.amicalement-web.net/wp-content/uploads/image-31.png" alt="image-31" title="image-31" width="133" height="136" class="alignnone size-full wp-image-78" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.amicalement-web.net/montastic-surveiller-vos-serveurs-du-coin-de-loeil/2009/02/05/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
