]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 2 Feb 2012 12:48:54 +0000 (12:48 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Thu, 2 Feb 2012 12:48:54 +0000 (12:48 +0000)
inc/commons/class.common.filtre.php
inc/commons/class.common.page.php
inc/ws/Controlleur/class.ws.url.php
inc/ws/DAO/class.ws.dao.book.php

index 3f4e37f4eb88815dc621aaa37b35108641b44628..d6d099e6642ebbcba901c51bcf216bc29f41b87b 100644 (file)
@@ -1,30 +1,35 @@
 <?php\r
+\r
 class commonFiltre {\r
+\r
        public $titre;\r
        public $varname;\r
        public $settings;\r
        public $values;\r
        public $all;\r
 \r
-       public function __construct($titre, $varname, $settings)\r
-       {\r
+       public function __construct($titre, $varname, $settings) {\r
                $this->titre = $titre;\r
                $this->varname = $varname;\r
                $this->all = __('Tous');\r
-               $this->settings = isset($settings[$varname]) && count($settings[$varname])?$settings[$varname]:null;\r
+               $this->settings = isset($settings[$varname]) && count($settings[$varname]) ? $settings[$varname] : null;\r
                $this->getValues();\r
        }\r
 \r
-       protected function getValues()\r
-       {\r
+       protected function getValues() {\r
                global $core;\r
                if ($this->varname == 'equipier' || $this->varname == 'equipier_participe' || $this->varname == 'admin_book' || $this->varname == 'admin_client') {\r
                        $r = $core->con->select('SELECT prenom,utilisateur_id FROM equipiers');\r
                        while ($r->fetch()) {\r
                                $this->values[$r->prenom] = $r->utilisateur_id;\r
                        }\r
+               } elseif ($this->varname == 'revendeur_book') {\r
+                       $r = $core->con->select('SELECT DISTINCT facturable,facturable_id FROM books_vue WHERE status>0 AND facturable_id IN(SELECT utilisateur_id FROM utilisateurs WHERE entreprise IN(SELECT entreprise_id FROM entreprises WHERE ws_grade BETWEEN 3 AND 4)) ORDER BY facturable');\r
+                       while ($r->fetch()) {\r
+                               $this->values[$r->facturable] = $r->facturable;\r
+                       }\r
                } elseif ($this->varname == 'annee') {\r
-                       for($i = 2006;$i <= date('Y', TIME);$i++) {\r
+                       for ($i = 2006; $i <= date('Y', TIME); $i++) {\r
                                $this->values[$i] = $i;\r
                        }\r
                        $this->all = __('Toutes');\r
@@ -40,7 +45,7 @@ class commonFiltre {
                } elseif ($this->varname == 'status_demande') {\r
                        $this->values = array_flip($core->demandes_status);\r
                } elseif ($this->varname == 'annee_facture') {\r
-                       for($i = 2008;$i <= date('Y', TIME);$i++) {\r
+                       for ($i = 2008; $i <= date('Y', TIME); $i++) {\r
                                $this->values[$i] = $i;\r
                        }\r
                        $this->all = __('Toutes');\r
@@ -51,7 +56,7 @@ class commonFiltre {
                } elseif ($this->varname == 'status_book') {\r
                        $this->values = array_flip($core->books_status);\r
                } elseif ($this->varname == 'annee_book') {\r
-                       for($i = 2007;$i <= date('Y', TIME);$i++) {\r
+                       for ($i = 2007; $i <= date('Y', TIME); $i++) {\r
                                $this->values[$i] = $i;\r
                        }\r
                        $this->all = __('Toutes');\r
@@ -63,42 +68,41 @@ class commonFiltre {
                }\r
        }\r
 \r
-       public function display()\r
-       {\r
+       public function display() {\r
                if (is_null($this->settings) || count($this->settings) == count($this->values)) {\r
                        $class = '';\r
                        $titre = $this->all;\r
                } else {\r
                        $class = ' active';\r
                        $t = array();\r
-                       foreach($this->settings as $k => $v) {\r
+                       foreach ($this->settings as $k => $v) {\r
                                $t[] = array_search($k, $this->values);\r
                        }\r
                        $titre = implode(', ', $t);\r
                }\r
 \r
                $limit = 20;\r
-               $t = (mb_strlen($titre) > $limit)?mb_substr($titre, 0, $limit-4) . '...':$titre;\r
+               $t = (mb_strlen($titre) > $limit) ? mb_substr($titre, 0, $limit - 4) . '...' : $titre;\r
 \r
                $res = '<div class="filtre">';\r
                $res .= '<span>' . $this->titre . '</span>';\r
-               $res .= '<div class="input' . $class . '"><span>' . $t . '</span>' ;\r
+               $res .= '<div class="input' . $class . '"><span>' . $t . '</span>';\r
                $res .= '<a href="#" class="bt" title="' . $titre . '">' . cubeMedia::spacer(155, 18) . '</a>';\r
                $res .= '</div>';\r
                if (is_array($this->values)) {\r
                        $res .= '<ul><li class="all">' . $this->all . '</li>';\r
 \r
-                       $last = count($this->values)-1;\r
+                       $last = count($this->values) - 1;\r
                        $i = 0;\r
 \r
-                       foreach($this->values as $v => $k) {\r
+                       foreach ($this->values as $v => $k) {\r
                                $checked = false;\r
                                if (is_null($this->settings)) {\r
                                        $checked = true;\r
                                } elseif (isset($this->settings[$k])) {\r
                                        $checked = true;\r
                                }\r
-                               $l = ($i == $last)?' class="last"':'';\r
+                               $l = ($i == $last) ? ' class="last"' : '';\r
                                $res .= '<li' . $l . '><label>' . form::checkbox(array($this->varname . '[' . $k . '][]'), 1, $checked) . ' ' . $v . '</label></li>';\r
                                $i++;\r
                        }\r
@@ -108,11 +112,11 @@ class commonFiltre {
                return $res;\r
        }\r
 \r
-       public static function test($varname, $settings)\r
-       {\r
+       public static function test($varname, $settings) {\r
                $f = new commonFiltre(__(''), $varname, array());\r
                return isset($settings[$varname]) && count($f->values) > count($settings[$varname]) && count($settings[$varname]);\r
        }\r
+\r
 }\r
 \r
 ?>
\ No newline at end of file
index 59287417010b858f97ca91ecbfbdc6379aea68aa..63371a951601c0e15895f81726401e8b3b53c70c 100644 (file)
@@ -86,12 +86,17 @@ class commonPage {
                return $res;\r
        }\r
 \r
-       public static function barre($filtres = null, $action = null, $dashboard = null, $shortcuts = null) {\r
+       public static function barre($filtres = null, $action = null, $dashboard = null, $shortcuts = null,$big=false) {\r
                if (is_null($shortcuts) && is_null($filtres)) {\r
                        return '<div id="bar" class="vide"></div>';\r
                }\r
+               \r
+               $class='';\r
+               if($big){\r
+                       $class=' class="big"';\r
+               }\r
 \r
-               $res = '<div id="bar">';\r
+               $res = '<div id="bar"'.$class.'>';\r
                $res .= '<div class="content">';\r
 \r
                if (!is_null($shortcuts)) {\r
index 4582b15c55fc6c0d396a8267dfb8686c02eb92e5..4225d0d3f02cf89a1247a2bbe7435aa28ba1de68 100644 (file)
@@ -22,8 +22,9 @@ class wsUrl {
                }\r
                if (wsDroits::admin()) {\r
                        $filtres[] = new commonFiltre(__('Administrateur'), 'admin_book', $settings['filtres']);\r
+                       $filtres[] = new commonFiltre(__('Revendeur'), 'revendeur_book', $settings['filtres']);\r
                }\r
-               $res = commonPage::barre($filtres, 'filtreBooks', 'books', $shortcuts);\r
+               $res = commonPage::barre($filtres, 'filtreBooks', 'books', $shortcuts, wsDroits::admin());\r
                $res .= commonPage::tMain(null, wsDroits::admin());\r
                $res .= commonPage::bh();\r
                $res .= '<div id="listeBooks">';\r
index f1afa2e36b9afcf1fdcf24b4cc4e68dc083c57d4..69ea3c6b5db630a8f8e6d79f6c8d16d604ad1525 100644 (file)
@@ -394,6 +394,9 @@ class wsDAOBook extends commonDAO {
                        if (commonFiltre::test('status_book', $this->filtres)) {\r
                                $w[] = 'status IN(' . implode(',', array_keys($this->filtres['status_book'])) . ')';\r
                        }\r
+                       if (commonFiltre::test('revendeur_book', $this->filtres)) {\r
+                               $w[] = 'facturable IN(\'' . implode('\',\'', array_keys($this->filtres['revendeur_book'])) . '\')';\r
+                       }\r
                        return implode(' AND ', $w);\r
                } else {\r
                        return '1=1';\r