#419, cacher certaines validations
authorx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sun, 30 Jul 2006 12:51:29 +0000 (12:51 +0000)
committerx2001corpet <x2001corpet@839d8a87-29fc-0310-9880-83ba4fa771e5>
Sun, 30 Jul 2006 12:51:29 +0000 (12:51 +0000)
git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@721 839d8a87-29fc-0310-9880-83ba4fa771e5

modules/admin.php
templates/admin/valider.tpl

index f39dac8..3f72157 100644 (file)
@@ -465,6 +465,25 @@ class AdminModule extends PLModule
             if($req) { $req->handle_formu(); }
         }
         
+        $r = XDB::iterator('SHOW COLUMNS FROM requests_answers');
+        while (($a = $r->next()) && $a['Field'] != 'category');
+        $page->assign('categories', $categories = explode(',', str_replace("'", '', substr($a['Type'], 5, -1))));
+        
+        $hidden = array();
+        if (Post::has('hide')) {
+            $hide = array(); 
+            foreach ($categories as $cat) 
+                if (!Post::v($cat)) {
+                    $hidden[$cat] = 1;
+                    $hide[] = $cat;
+                }
+            setcookie('hide_requests', join(',',$hide), time()+(count($hide)?25920000:(-3600)), '/', '', 0);
+        } elseif (Env::has('hide_requests'))  {
+            foreach (explode(',',Env::v('hide_requests')) as $hide_type)
+                $hidden[$hide_type] = true;
+        }
+        $page->assign('hide_requests', $hidden);
+        
         $page->assign('vit', new ValidateIterator());
     }
     function handler_validate_answers(&$page, $action = 'list', $id = null) {
index 93e4000..3e748f1 100644 (file)
 
 {if $vit->total()}
 
+{counter print=false start=0 assign=hidden}
+
 {iterate item=valid from=$vit|smarty:nodefaults}
+{assign var=type value=$valid->type}
+{if !$hide_requests[$type]}
 <br />
 <table class="bicol">
   <tr>
     </td>
   </tr>
 </table>
+{else}
+{counter print=false assign=hidden}
+{/if}
 {/iterate}
 
+{if $hidden}
+<p>{$hidden} validation{if $hidden > 1}s ont été masquées{else} a été masquée{/if}.</p>
+{/if}
+
 {else}
 
 <p>Rien à valider</p>
 
 {/if}
 
+<p>
+  Afficher seulement les validation suivantes :
+  <form action="admin/validate" method="post">
+    {foreach from=$categories item=type}
+      <div style="float:left;width:33%"><input type="checkbox" name="{$type}" id="hide_{$type}"{if !$hide_requests[$type]} checked="checked"{/if}/>
+      <label for="hide_{$type}">{$type}</label></div>
+    {/foreach}
+    <div class="center" style="clear:left"><input type="submit" name="hide"/></div>
+  </form>
+</p>
 
 {* vim:set et sw=2 sts=2 sws=2: *}