$db->dashboard->equipier('integer', 0, false);\r
$db->dashboard->state('integer', 1, false, '1');\r
$db->dashboard->sort('integer', 0, false);\r
+ $db->dashboard->site('varchar', 32, false, '\'extranet\'');\r
// Clés\r
$db->dashboard->primary('pk_dashboard', 'dashboard_id');\r
$db->dashboard->reference('fk_dashboard_equipier', 'equipier', 'utilisateurs', 'utilisateur_id');\r
$res .= '</form>';\r
return $res;\r
}\r
+\r
+ public static function autocomplete($args)\r
+ {\r
+ global $core;\r
+\r
+ if (isset($_GET['q'])) {\r
+ $args[2] = $_GET['q'];\r
+ }\r
+ $q = mb_strtolower(cubeText::removeAccents($args[2]));\r
+ $suggestions = array();\r
+ if ($args[1] == 'client') {\r
+ $dao = new commonDAOClient($core->con);\r
+ $dao->setSearch($q, true);\r
+ $clients = $dao->getListe();\r
+ foreach($clients as $client) {\r
+ $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
+ }\r
+ } elseif ($args[1] == 'projet') {\r
+ $dao = new extranetDAOProjet($core->con);\r
+ $dao->setSearch($q, true);\r
+ $projets = $dao->getListe();\r
+ foreach($projets as $projet) {\r
+ $suggestions[] = $projet->projet_id . ' - ' . $projet->nom . ' (' . $projet->client . ')';\r
+ }\r
+ } elseif ($args[1] == 'book') {\r
+ $dao = new wsDAOBook($core->con);\r
+ $dao->setSearch($q, true);\r
+ $books = $dao->getListe('date', 'DESC', 15);\r
+ foreach($books as $book) {\r
+ $suggestions[] = $book->book_id . ' - ' . $book->nom;\r
+ }\r
+ } elseif ($args[1] == 'wsuser') {\r
+ $dao = new commonDAOClient($core->con);\r
+ $dao->setSearch($q, true);\r
+ $clients = $dao->getListe();\r
+ foreach($clients as $client) {\r
+ $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
+ }\r
+ } elseif ($args[1] == 'wsadmin') {\r
+ $dao = new commonDAOUtilisateur($core->con);\r
+ $dao->setSearch($q, true);\r
+ $clients = $dao->getListe('utilisateur_id', 'ASC', null, null, 'AND ws_grade>=2');\r
+ foreach($clients as $client) {\r
+ $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
+ }\r
+ }\r
+ cubeSearch::searchSuggestion($args[2], $suggestions);\r
+ exit;\r
+ }\r
+\r
+ public static function dashboard($args)\r
+ {\r
+ cubePage::ui('Sortable');\r
+ $res = commonPage::barre();\r
+ $res .= commonPage::tMain('dash');\r
+ $res .= commonUrl::listeDashboard($args);\r
+ $res .= commonPage::bMain();\r
+ return $res;\r
+ }\r
+\r
+ public static function listeDashboard($args)\r
+ {\r
+ global $core;\r
+ $r = $core->con->select('SELECT * FROM dashboard WHERE equipier=\'' . $core->user->utilisateur_id . '\' AND site=\'' . MODE . '\' ORDER BY sort');\r
+ $res = '';\r
+ while ($r->fetch()) {\r
+ $res .= '<div class="dashboard" id="dashboard_' . $r->dashboard_id . '">';\r
+ $res .= commonUrl::displayDashboard($r);\r
+ $res .= '</div>';\r
+ }\r
+ return $res;\r
+ }\r
+\r
+ public static function displayDashboard($r)\r
+ {\r
+ global $core;\r
+ $res = '<div class="caption">' . $core->typo->OngletBlanc($r->nom);\r
+\r
+ $close = ($r->state == '0')?' close':'';\r
+ $hide = ($r->state == '0')?' class="close"':'';\r
+\r
+ $res .= '<a href="#" rel="' . $r->dashboard_id . '" class="toggle' . $close . '">' . cubeMedia::spacer(18, 10) . '</a>';\r
+ $res .= '<a href="#" rel="formDashboard/d/' . $r->dashboard_id . '" class="edit popup">' . cubeMedia::image(IMG . '/edit.png') . '</a>';\r
+ $res .= '<a href="#" rel="delDashboard/' . $r->dashboard_id . '" class="ajax delete" title="' . __('Êtes vous certain de vouloir supprimer cette liste de votre dashboard ?') . '">' . cubeMedia::image(IMG . '/delete.png') . '</a>';\r
+ $res .= '</div>';\r
+ $res .= commonPage::bh();\r
+ $res .= '<div' . $hide . '>';\r
+\r
+ if ($r->rubrique == 'projets') {\r
+ $res .= extranetUrl::listeProjets($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ } elseif ($r->rubrique == 'factures') {\r
+ $res .= extranetUrl::listeFactures($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ } elseif ($r->rubrique == 'devis') {\r
+ $res .= extranetUrl::listeDevis($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ } elseif ($r->rubrique == 'clients' && MODE=='extranet') {\r
+ $res .= extranetUrl::listeClients($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ } elseif ($r->rubrique == 'timereport') {\r
+ $res .= extranetUrl::listeTimereport($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ }\r
+ $res .= '</div>';\r
+ $res .= commonPage::bf();\r
+\r
+ return $res;\r
+ }\r
+\r
+ public static function getDashboardSettings($s)\r
+ {\r
+ $s = unserialize($s);\r
+ if (isset($s['filtres']['annee'])) {\r
+ $s['filtres']['annee'] = range(2006, date('Y'), 1);\r
+ }\r
+ return $s;\r
+ }\r
+\r
+ public static function formDashboard($args)\r
+ {\r
+ global $core;\r
+ $rub = $args[1];\r
+ $dashboard_id = isset($args[2])?$args[2]:'new';\r
+\r
+ if ($dashboard_id == 'new') {\r
+ $res = '<tr><td class="right">Titre de la liste</td><td>' . form::field('nom', 20, 128, false) . form::hidden('rubrique', $rub) . form::hidden('dashboard_id', $dashboard_id) . '</td></tr>';\r
+ } else {\r
+ $r = $core->con->select('SELECT * FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($dashboard_id) . '\'');\r
+ $res = '<tr><td class="right">Titre de la liste</td><td>' . form::field('nom', 20, 128, $r->nom) . form::hidden('dashboard_id', $dashboard_id) . '</td></tr>';\r
+ }\r
+\r
+ return $res;\r
+ }\r
}\r
\r
?>
\ No newline at end of file
return $res;\r
}\r
\r
- public static function dashboard($args)\r
- {\r
- extranetDroits::min(1);\r
- cubePage::ui('Sortable');\r
- $res = commonPage::barre();\r
- $res .= commonPage::tMain('dash');\r
- $res .= self::listeDashboard($args);\r
- $res .= commonPage::bMain();\r
- return $res;\r
- }\r
-\r
- public static function listeDashboard($args)\r
- {\r
- global $core;\r
- $r = $core->con->select('SELECT * FROM dashboard WHERE equipier=\'' . $core->user->utilisateur_id . '\' ORDER BY sort');\r
- $res = '';\r
- while ($r->fetch()) {\r
- $res .= '<div class="dashboard" id="dashboard_' . $r->dashboard_id . '">';\r
- $res .= self::displayDashboard($r);\r
- $res .= '</div>';\r
- }\r
- return $res;\r
- }\r
-\r
- public static function displayDashboard($r)\r
- {\r
- global $core;\r
- $res = '<div class="caption">' . $core->typo->OngletBlanc($r->nom);\r
-\r
- $close = ($r->state == '0')?' close':'';\r
- $hide = ($r->state == '0')?' class="close"':'';\r
-\r
- $res .= '<a href="#" rel="' . $r->dashboard_id . '" class="toggle' . $close . '">' . cubeMedia::spacer(18, 10) . '</a>';\r
- $res .= '<a href="#" rel="formDashboard/d/' . $r->dashboard_id . '" class="edit popup">' . cubeMedia::image(IMG . '/edit.png') . '</a>';\r
- $res .= '<a href="#" rel="delDashboard/' . $r->dashboard_id . '" class="ajax delete" title="' . __('Êtes vous certain de vouloir supprimer cette liste de votre dashboard ?') . '">' . cubeMedia::image(IMG . '/delete.png') . '</a>';\r
- $res .= '</div>';\r
- $res .= commonPage::bh();\r
- $res .= '<div' . $hide . '>';\r
- if ($r->rubrique == 'projets') {\r
- $res .= self::listeProjets($r->dashboard_id, self::getDashboardSettings($r->settings));\r
- } elseif ($r->rubrique == 'factures') {\r
- $res .= self::listeFactures($r->dashboard_id, self::getDashboardSettings($r->settings));\r
- } elseif ($r->rubrique == 'devis') {\r
- $res .= self::listeDevis($r->dashboard_id, self::getDashboardSettings($r->settings));\r
- } elseif ($r->rubrique == 'clients') {\r
- $res .= self::listeClients($r->dashboard_id, self::getDashboardSettings($r->settings));\r
- } elseif ($r->rubrique == 'timereport') {\r
- $res .= self::listeTimereport($r->dashboard_id, self::getDashboardSettings($r->settings));\r
- }\r
- $res .= '</div>';\r
- $res .= commonPage::bf();\r
-\r
- return $res;\r
- }\r
-\r
- public static function getDashboardSettings($s)\r
- {\r
- $s = unserialize($s);\r
- if (isset($s['filtres']['annee'])) {\r
- $s['filtres']['annee'] = range(2006, date('Y'), 1);\r
- }\r
- return $s;\r
- }\r
-\r
- public static function formDashboard($args)\r
- {\r
- global $core;\r
- $rub = $args[1];\r
- $dashboard_id = isset($args[2])?$args[2]:'new';\r
-\r
- if ($dashboard_id == 'new') {\r
- $res = '<tr><td class="right">Titre de la liste</td><td>' . form::field('nom', 20, 128, false) . form::hidden('rubrique', $rub) . form::hidden('dashboard_id', $dashboard_id) . '</td></tr>';\r
- } else {\r
- $r = $core->con->select('SELECT * FROM dashboard WHERE dashboard_id=\'' . $core->con->escape($dashboard_id) . '\'');\r
- $res = '<tr><td class="right">Titre de la liste</td><td>' . form::field('nom', 20, 128, $r->nom) . form::hidden('dashboard_id', $dashboard_id) . '</td></tr>';\r
- }\r
-\r
- return $res;\r
- }\r
-\r
- public static function autocomplete($args)\r
- {\r
- global $core;\r
-\r
- if (isset($_GET['q'])) {\r
- $args[2] = $_GET['q'];\r
- }\r
- $q = mb_strtolower(cubeText::removeAccents($args[2]));\r
- $suggestions = array();\r
- if ($args[1] == 'client') {\r
- $dao = new commonDAOClient($core->con);\r
- $dao->setSearch($q, true);\r
- $clients = $dao->getListe();\r
- foreach($clients as $client) {\r
- $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
- }\r
- } elseif ($args[1] == 'projet') {\r
- $dao = new extranetDAOProjet($core->con);\r
- $dao->setSearch($q, true);\r
- $projets = $dao->getListe();\r
- foreach($projets as $projet) {\r
- $suggestions[] = $projet->projet_id . ' - ' . $projet->nom . ' (' . $projet->client . ')';\r
- }\r
- } elseif ($args[1] == 'book') {\r
- $dao = new wsDAOBook($core->con);\r
- $dao->setSearch($q, true);\r
- $books = $dao->getListe('date', 'DESC', 15);\r
- foreach($books as $book) {\r
- $suggestions[] = $book->book_id . ' - ' . $book->nom;\r
- }\r
- } elseif ($args[1] == 'wsuser') {\r
- $dao = new commonDAOClient($core->con);\r
- $dao->setSearch($q, true);\r
- $clients = $dao->getListe();\r
- foreach($clients as $client) {\r
- $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
- }\r
- } elseif ($args[1] == 'wsadmin') {\r
- $dao = new commonDAOUtilisateur($core->con);\r
- $dao->setSearch($q, true);\r
- $clients = $dao->getListe('utilisateur_id', 'ASC', null, null, 'AND ws_grade>=2');\r
- foreach($clients as $client) {\r
- $suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
- }\r
- }\r
- cubeSearch::searchSuggestion($args[2], $suggestions);\r
- exit;\r
- }\r
-\r
public static function traduction($args)\r
{\r
global $core;\r