\r
cubeLang::set();\r
try {\r
- $this->authentifie(); \r
+ $this->authentifie();\r
} catch (Exception $e) {\r
\r
}\r
// Clés\r
$db->book_pages->primary('pk_book_pages', 'book_id', 'book_page');\r
// .\r
+ // Table versions de composition\r
+ $db->book_pages_versions->book_id('integer', 0, false);\r
+ $db->book_pages_versions->update('integer', 0, false);\r
+ $db->book_pages_versions->composition('text', 0, false);\r
+ // Clés\r
+ $db->book_pages_versions->primary('pk_book_pages_versions', 'book_id');\r
+ $db->book_pages_versions->index('idx_book_pages_versions', 'BTREE', 'update');\r
// Table de cache des urls courtes\r
$db->book_short_url->long_url('varchar', 255, false);\r
$db->book_short_url->short_url('varchar', 64, false);\r
. 'SUM(f.total_ht) AS ca '\r
. 'FROM entreprises e LEFT JOIN impayes_entreprises i ON e.entreprise_id=i.entreprise LEFT JOIN utilisateurs u ON u.entreprise=e.entreprise_id AND u.grade=0 LEFT JOIN projets p ON p.client=u.utilisateur_id LEFT JOIN factures f ON f.projet=p.projet_id AND f.status IN(1,2) '\r
. 'GROUP BY u.utilisateur_id', 'TEMPTABLE');\r
- $this->views->createView('taches_books','SELECT tache,GROUP_CONCAT(book_id ORDER BY book_id ASC SEPARATOR ",") AS books FROM books WHERE tache>0 GROUP BY tache');\r
+ $this->views->createView('taches_books', 'SELECT tache,GROUP_CONCAT(book_id ORDER BY book_id ASC SEPARATOR ",") AS books FROM books WHERE tache>0 GROUP BY tache');\r
$this->views->createView('taches_vue', 'SELECT taches.tache_id,taches.nom,taches.categorie,taches.type,taches.budget,taches.projet,taches.taux_journalier,tb.books, '\r
. '(SUM(timereport.heures)/' . JOURNEE . ') AS jours_consommes, ((SUM(timereport.heures)/' . JOURNEE . ')/(taches.budget/taches.taux_journalier))*100 AS progression,(taches.budget/taches.taux_journalier) AS jours_prevus '\r
. 'FROM taches LEFT JOIN timereport ON taches.tache_id=timereport.tache_id '\r
. 'LEFT JOIN utilisateurs_entreprise r ON d.revendeur=r.utilisateur_id '\r
. 'LEFT JOIN utilisateurs_entreprise c ON d.utilisateur=c.utilisateur_id '\r
. 'LEFT JOIN utilisateurs a ON d.administrateur=a.utilisateur_id');\r
- cubeDb::mysqlConvert($this->con, 'UTF8', 'utf8_general_ci', 'MYISAM'); \r
+ cubeDb::mysqlConvert($this->con, 'UTF8', 'utf8_general_ci', 'MYISAM');\r
touch($cache);\r
}\r
\r
foreach ($onglets as $titre => $url) {\r
// Si cet onglet correspond à la page active, on le place actif\r
$active = ($args[0] == $url || (isset($supp[$args[0]]) && $supp[$args[0]] == $url)) ? ' active' : '';\r
- $res .= '<a href="' . SITE_PATH . $url . '" class="onglet '.$active.'">' . $titre . '</a>';\r
+ $res .= '<a href="' . SITE_PATH . $url . '" class="onglet ' . $active . '">' . $titre . '</a>';\r
}\r
$res .= '</div>';\r
return $res;\r
return '<div id="main"' . $big . '><div id="logo-main"></div><div class="content"' . $id . '>';\r
}\r
\r
- public static function bh($class = null) {\r
- return '<div class="b">';\r
- $class = is_null($class) ? ' class="b"' : ' class="b ' . $class . '"';\r
-\r
-\r
-\r
- $res = '<table' . $class . '>';\r
- $res .= '<tr class="b-top">';\r
- $res .= '<td class="b-nw"></td><td class="b-n"></td><td class="b-ne"></td>';\r
- $res .= '</tr>';\r
- $res .= '<tr class="b-center">';\r
- $res .= '<td class="b-w"></td><td class="b-c c"><div>';\r
- return $res;\r
+ public static function bh($class = '') {\r
+ $class = trim('b ' . $class);\r
+ return '<div class="'.$class.'">';\r
}\r
\r
public static function bf($max = false) {\r
return '</div>';\r
- $res = '</div></td><td class="b-e"></td>';\r
- $res .= '</tr>';\r
- $res .= '<tr class="b-footer">';\r
- $res .= '<td class="b-sw"></td><td class="b-s">';\r
- if ($max) {\r
- $res .= cubeMedia::spacer(960, 1);\r
- }\r
- $res .= '</td><td class="b-se"></td>';\r
- $res .= '</tr>';\r
- $res .= '</table>';\r
- return $res;\r
}\r
\r
public static function pager($current, $nb, $par_page, $url) {\r
\r
$res = commonPage::barre();\r
$res .= commonPage::tMain();\r
- $res .= commonPage::bh();\r
+ $res .= commonPage::bh('login');\r
$res .= '<div class="form">';\r
$res .= '<form action="" method="post" class="notajax">';\r
$res .= '<h1>' . $core->typo->Titre(__('Veuillez vous identifier')) . '</h1>';\r
<?php\r
\r
define('DB_DRIVER', 'mysql');\r
+define('DB_ENGINE', 'MyISAM');\r
+\r
define('ROOT', dirname(__FILE__) . '/..');\r
\r
define('WEBROOT', '');\r
}\r
$pdf->Output(ROOT . '/devis/' . $devis->devis_id . '.pdf');\r
// Restaure les paramètres de langue de l'utilisateur\r
+ global $core;\r
cubeLang::set($core->user->lang);\r
}\r
\r
public function insertDocument($book_id, $after_page, $document_id) {\r
// Obtiens le book\r
$book = $this->selectById($book_id);\r
- $num = $book->numerotation;\r
+ $num = explode(',', $book->numerotation);\r
// Obtiens le nombre de pages\r
$r = $this->con->select('SELECT pages,numberSections FROM documents WHERE document_id=\'' . $this->con->escape($document_id) . '\'');\r
// Décale les pages vers le bas\r
// Mets à jour la liste des numéros des pages\r
$before = array_slice($num, 0, $after_page);\r
$after = array_slice($num, $after_page, count($num) - $after_page);\r
- $between = explode(',', $r->numberSections);\r
+\r
+ $newnum = $r->numberSections;\r
+ if (trim($newnum, ',') == '') {\r
+ // If no number detected, we create a numeric list from 1\r
+ $between = range(1, $r->pages);\r
+ } else {\r
+ // Else, we use numbers detected at conversion\r
+ $between = explode(',', $r->numberSections);\r
+ }\r
$num = array_merge($before, $between, $after);\r
// Mets à jour la numerotation de la publication\r
$c = $this->con->openCursor('books');\r
- $c->numerotation = json_encode($num);\r
+ $c->numerotation = implode(',', $num);\r
+ $c->composition_update=TIME;\r
$c->update('WHERE book_id=\'' . $this->con->escape($book_id) . '\'');\r
}\r
\r
if ($now != $ref) {\r
$this->con->execute('DELETE FROM book_pages WHERE book_id=\'' . $this->con->escape($book_id) . '\'');\r
\r
- $c = $this->con->openCursor('book_pages');\r
- $c->book_id = $book_id;\r
+ $c1 = $this->con->openCursor('book_pages');\r
+ $c1->book_id = $book_id;\r
$i = 1;\r
foreach ($pages as $p) {\r
- $c->document_id = $p->document_id;\r
- $c->document_page = $p->document_page;\r
- $c->book_page = $i;\r
- $c->insert();\r
+ $c1->document_id = $p->document_id;\r
+ $c1->document_page = $p->document_page;\r
+ $c1->book_page = $i;\r
+ $c1->insert();\r
$i++;\r
}\r
$c->composition_update = TIME;\r
margin-bottom: 10px;
}
+.b table{
+ width:100%;
+}
+
/* Top left */
.b table tr:first-child th:first-child{
border-radius:6px 0 0 0;
border-radius:0 0 6px 0;
}
+.b h1{
+ border-radius:6px 6px 0 0;
+}
+
+.b.login{
+ width:325px;
+ margin:0 auto;
+}
+
.onglet{
background:url('onglet.png');
.dashboard .caption{\r
position:relative;\r
left:20px;\r
- top:10px;\r
display:inline;\r
cursor:move;\r
}\r
.dashboard .caption{\r
position:relative;\r
left:20px;\r
- top:10px;\r
display:inline;\r
cursor:move;\r
}\r