Procházet zdrojové kódy

Maj historique dynamique

stany.ferer před 2 roky
rodič
revize
d929f1ce3d

+ 1 - 0
conf.inc.php

@@ -33,6 +33,7 @@ define("DB_T_FILES", "files");
 define("DB_T_LOTTERY", "lottery");
 define("DB_T_LOTTERY_INSCRITS", "lottery_salaries");
 define("DB_T_HISTORIQUE", "historique");
+define("DB_T_HISTORIQUE_REF", "historiqueRef");
 
 define("DEFAUT_PAGE", "rh-liste-salaries");
 define("DEFAUT_PAGE_SOCIAL", "sociale-check-salarie");

+ 87 - 23
core/class/historique.class.php

@@ -2,28 +2,55 @@
 
 class historique
 {
+    private static function recRef(string $_name) {
+        db::query("INSERT IGNORE INTO " . DB_T_HISTORIQUE_REF . " (name) VALUES (:name)");
+        db::bind(':name', $_name);
+        try {
+            db::execute();
+        } catch (Exception $ex) {
+            alert::recError("Erreur lors de l'enregistrement de la référence historique");
+        }
+    }
+
+    private static function getIdRef(string $_name) {
+        db::query("SELECT id FROM " . DB_T_HISTORIQUE_REF . " WHERE name = :name");
+        db::bind(':name', $_name);
+        return db::single()["id"];
+    }
+
     public static function getAll() {
         db::query("SELECT "
                 . "" . DB_T_HISTORIQUE . ".id, "
+                . "" . DB_T_HISTORIQUE . ".idType ,"
+                . "HISTO_TYPE.name AS type ,"
+                . "" . DB_T_HISTORIQUE . ".idPage, "
+                . "HISTO_PAGE.name AS page, "
                 . "" . DB_T_HISTORIQUE . ".idUser ,"
                 . "CONCAT (" . DB_T_USER . ".prenom, ' ', " . DB_T_USER . ".nom) AS 'user' ,"
-                . "" . DB_T_HISTORIQUE . ".idPage, "
                 . "" . DB_T_HISTORIQUE . ".log, "
                 . "" . DB_T_HISTORIQUE . ".addDate "
                 . "FROM " . DB_T_HISTORIQUE . " "
-                . "INNER JOIN " . DB_T_USER . " ON " . DB_T_HISTORIQUE . ".idUser = " . DB_T_USER . ".id ");
+                . "INNER JOIN " . DB_T_USER . " ON " . DB_T_HISTORIQUE . ".idUser = " . DB_T_USER . ".id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_TYPE ON " . DB_T_HISTORIQUE . ".idType = HISTO_TYPE.id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_PAGE ON " . DB_T_HISTORIQUE . ".idPage = HISTO_PAGE.id ");
         return db::resultset();
     }
 
     public static function getByPage(string $_idPage) {
         db::query("SELECT "
                 . "" . DB_T_HISTORIQUE . ".id, "
+                . "" . DB_T_HISTORIQUE . ".idType ,"
+                . "HISTO_TYPE.name AS type ,"
+                . "" . DB_T_HISTORIQUE . ".idPage, "
+                . "HISTO_PAGE.name AS page, "
                 . "" . DB_T_HISTORIQUE . ".idUser ,"
                 . "CONCAT (" . DB_T_USER . ".prenom, ' ', " . DB_T_USER . ".nom) AS 'user' ,"
                 . "" . DB_T_HISTORIQUE . ".log, "
                 . "" . DB_T_HISTORIQUE . ".addDate "
                 . "FROM " . DB_T_HISTORIQUE . " "
                 . "INNER JOIN " . DB_T_USER . " ON " . DB_T_HISTORIQUE . ".idUser = " . DB_T_USER . ".id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_TYPE ON " . DB_T_HISTORIQUE . ".idType = HISTO_TYPE.id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_PAGE ON " . DB_T_HISTORIQUE . ".idPage = HISTO_PAGE.id "
                 . "WHERE " . DB_T_HISTORIQUE . ".idPage = :idPage");
         db::bind(':idPage', $_idPage);
         return db::resultset();
@@ -32,7 +59,10 @@ class historique
     public static function getByUser(int $_idUser) {
         db::query("SELECT "
                 . "" . DB_T_HISTORIQUE . ".id, "
+                . "" . DB_T_HISTORIQUE . ".type ,"
                 . "" . DB_T_HISTORIQUE . ".idPage, "
+                . "" . DB_T_HISTORIQUE . ".idUser ,"
+                . "CONCAT (" . DB_T_USER . ".prenom, ' ', " . DB_T_USER . ".nom) AS 'user' ,"
                 . "" . DB_T_HISTORIQUE . ".log, "
                 . "" . DB_T_HISTORIQUE . ".addDate "
                 . "FROM " . DB_T_HISTORIQUE . " "
@@ -41,17 +71,25 @@ class historique
         return db::resultset();
     }
 
-    private static function add(array $_input){
-        db::query("INSERT INTO " . DB_T_HISTORIQUE . " (idUser, idPage, log) VALUES (:idUser, :idPage, :log)");
-        db::bind(':idUser', $_input["idUser"]);
-        db::bind(':idPage', $_input["idPage"]);
-        db::bind(':log', $_input["log"]);
-        try {
-            db::execute();
-        } catch (Exception $ex) {
-            alert::recError("Erreur lors de l'enregistrement de l'historique");
-        }
-    }
+    public static function getByType(string $_type) {
+        db::query("SELECT "
+                . "" . DB_T_HISTORIQUE . ".id, "
+                . "" . DB_T_HISTORIQUE . ".idType ,"
+                . "HISTO_TYPE.name AS type ,"
+                . "" . DB_T_HISTORIQUE . ".idPage, "
+                . "HISTO_PAGE.name AS page, "
+                . "" . DB_T_HISTORIQUE . ".idUser ,"
+                . "CONCAT (" . DB_T_USER . ".prenom, ' ', " . DB_T_USER . ".nom) AS 'user' ,"
+                . "" . DB_T_HISTORIQUE . ".log, "
+                . "" . DB_T_HISTORIQUE . ".addDate "
+                . "FROM " . DB_T_HISTORIQUE . " "
+                . "INNER JOIN " . DB_T_USER . " ON " . DB_T_HISTORIQUE . ".idUser = " . DB_T_USER . ".id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_TYPE ON " . DB_T_HISTORIQUE . ".idType = HISTO_TYPE.id "
+                . "INNER JOIN " . DB_T_HISTORIQUE_REF . " HISTO_PAGE ON " . DB_T_HISTORIQUE . ".idPage = HISTO_PAGE.id "
+                . "WHERE " . DB_T_HISTORIQUE . ".type = :type");
+        db::bind(':type', $_type);
+        return db::resultset();
+    } 
 
     public static function recordLogs(){
         if(session::isConnect() AND (alert::getSuccess() OR alert::getWarning() OR alert::getError())){
@@ -59,29 +97,55 @@ class historique
 
             if(alert::getSuccess()){
                 foreach (alert::getSuccess() as $value) { 
-                    $log .= "[success] " . $value . "\r\n";
+                    $log .= $value . "\r\n";
                 }
+                self::recRef($_SERVER["REQUEST_URI"]);
+                self::add(array(
+                    "idType" => self::getIdRef("SUCCESS"),
+                    "idUser" => session::getId(),
+                    "idPage" => self::getIdRef($_SERVER["REQUEST_URI"]),
+                    "log" => $log
+                ));
             }
             
             if(alert::getWarning()){
                 foreach (alert::getWarning() as $value) { 
-                    $log .= "[warning] " . $value . "\r\n";
+                    $log .= $value . "\r\n";
                 }
+                self::recRef($_SERVER["REQUEST_URI"]);
+                self::add(array(
+                    "idType" => self::getIdRef("WARNING"),
+                    "idUser" => session::getId(),
+                    "idPage" => self::getIdRef($_SERVER["REQUEST_URI"]),
+                    "log" => $log
+                ));
             }
 
             if(alert::getError()){
                 foreach (alert::getError() as $value) { 
-                    $log .= "[error] " . $value . "\r\n";
+                    $log .= $value . "\r\n";
                 }
+                self::recRef($_SERVER["REQUEST_URI"]);
+                self::add(array(
+                    "idType" => self::getIdRef("ERROR"),
+                    "idUser" => session::getId(),
+                    "idPage" => self::getIdRef($_SERVER["REQUEST_URI"]),
+                    "log" => $log
+                ));
             }
+        }
+    }
 
-            $logs = array(
-                "idUser" => session::getId(),
-                "idPage" => $_SERVER["REQUEST_URI"],
-                "log" => $log
-            );
-
-            self::add($logs);
+    private static function add(array $_input){
+        db::query("INSERT INTO " . DB_T_HISTORIQUE . " (idType, idUser, idPage, log) VALUES (:idType, :idUser, :idPage, :log)");
+        db::bind(':idType', $_input["idType"]);
+        db::bind(':idUser', $_input["idUser"]);
+        db::bind(':idPage', $_input["idPage"]);
+        db::bind(':log', $_input["log"]);
+        try {
+            db::execute();
+        } catch (Exception $ex) {
+            alert::recError("Erreur lors de l'enregistrement de l'historique");
         }
     }
 }

+ 0 - 1
core/views/_cms.menu.php

@@ -32,7 +32,6 @@
                 if(session::accessUserByType(1)){ 
                     core::elementMenuH6("Pratiques");
                     core::elementMenuLink("https://corporatedirectory.capgemini.com/MyDirectory/portals/std/index-portal.jsp", "Corporate Directory", "link");
-                    core::elementMenuLink("https://wiki.cse-invent.com/shelves/process-cse", "Wiki CSE Invent", "link");
                 }
 
                 if(session::accessUserByType(1)){ 

+ 2 - 1
core/views/pages/cms.historique.php

@@ -30,7 +30,8 @@
         <thead>
             <tr>
                 <th data-sortable="true" data-field="addDate" data-filter-control="input" data-width="160">Date</th>
-                <th data-sortable="true" data-field="idPage" data-filter-control="input" data-width="250">Page</th>
+                <th data-sortable="true" data-field="type" data-filter-control="input" data-width="100">Type</th>
+                <th data-sortable="true" data-field="page" data-filter-control="input" data-width="250">Page</th>
                 <th data-sortable="true" data-field="log" data-filter-control="input">Log</th>
                 <th data-sortable="true" data-field="user" data-filter-control="input" data-width="160">Utilisateur</th>
             </tr>