Suppression de ResourceDispatcher en cours
This commit is contained in:
parent
0bed2f351b
commit
0af02f1243
|
@ -0,0 +1,4 @@
|
||||||
|
RewriteEngine on
|
||||||
|
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-f
|
||||||
|
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
|
|
@ -1,7 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace api;
|
namespace api;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
|
|
||||||
/* CLASSE PERMETANT L'UTILISATION DU manifest.json POUR UTILISER DES APIS DIVERSES
|
/* CLASSE PERMETANT L'UTILISATION DU manifest.json POUR UTILISER DES APIS DIVERSES
|
||||||
|
@ -12,7 +11,7 @@
|
||||||
class client{
|
class client{
|
||||||
|
|
||||||
// Fichier de configuration par defaut
|
// Fichier de configuration par defaut
|
||||||
private $config_path = 'f/json/manifest/api';
|
private $config_path = __ROOT__.'/api/manifest.json';
|
||||||
public $error;
|
public $error;
|
||||||
|
|
||||||
// liste des methodes
|
// liste des methodes
|
||||||
|
@ -46,7 +45,7 @@
|
||||||
|
|
||||||
/* [1] On recupere le contenu du fichier de config
|
/* [1] On recupere le contenu du fichier de config
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$manifest = json_decode( ResourceDispatcher::getResource($this->config_path), true );
|
$manifest = json_decode( file_get_contents($this->config_path), true );
|
||||||
|
|
||||||
// Si erreur de parsage ou de fichier, on retourne une erreur
|
// Si erreur de parsage ou de fichier, on retourne une erreur
|
||||||
if( $manifest === null ){
|
if( $manifest === null ){
|
||||||
|
@ -91,7 +90,7 @@
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
/* (1) On definit l'URL */
|
/* (1) On definit l'URL */
|
||||||
$curl = curl_init($build['url']);
|
$curl = curl_init($build['url']);
|
||||||
|
|
||||||
// permet de recupere le resultat au lieu de l'afficher
|
// permet de recupere le resultat au lieu de l'afficher
|
||||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
|
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
|
||||||
|
|
||||||
|
@ -112,7 +111,7 @@
|
||||||
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
|
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
|
||||||
|
|
||||||
|
|
||||||
/* (4) On definit les donnees POST si on est pas en get */
|
/* (4) On definit les donnees POST si on est pas en get */
|
||||||
if( $build['method'] != 'GET' ){
|
if( $build['method'] != 'GET' ){
|
||||||
$postdata = '';
|
$postdata = '';
|
||||||
|
|
||||||
|
@ -212,10 +211,10 @@
|
||||||
|
|
||||||
// Si on a trouve, on remplace le nom de variable par la valeur
|
// Si on a trouve, on remplace le nom de variable par la valeur
|
||||||
if( $position !== false )
|
if( $position !== false )
|
||||||
$after = substr($after, 0, $position) . $value . substr($after, $position+strlen($name) );
|
$after = substr($after, 0, $position) . $value . substr($after, $position+strlen($name) );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* [2] On retourne la nouvelle chaine
|
/* [2] On retourne la nouvelle chaine
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
return $after;
|
return $after;
|
||||||
|
@ -224,4 +223,4 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
|
|
||||||
|
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[
|
[
|
||||||
|
|
||||||
{ "icon": "f/svg/home/st/menu-side", "text": "Tableau de bord",
|
{ "icon": "/src/static/menu-side/home.svg", "text": "Tableau de bord",
|
||||||
"attributes": { "data-link": "dashboard", "class": "sep" },
|
"attributes": { "data-link": "dashboard", "class": "sep" },
|
||||||
|
|
||||||
"children": [
|
"children": [
|
||||||
|
@ -12,7 +12,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{ "icon": "f/svg/input/st/menu-side", "text": "Acquisition",
|
{ "icon": "/src/static/menu-side/input.svg", "text": "Acquisition",
|
||||||
"attributes": { "data-link": "input" },
|
"attributes": { "data-link": "input" },
|
||||||
|
|
||||||
"children": [
|
"children": [
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{ "icon": "f/svg/charts/st/menu-side", "text": "Graphiques",
|
{ "icon": "/src/static/menu-side/charts.svg", "text": "Graphiques",
|
||||||
"attributes": { "data-link": "charts", "class": "sep" },
|
"attributes": { "data-link": "charts", "class": "sep" },
|
||||||
|
|
||||||
"children": [
|
"children": [
|
||||||
|
@ -38,7 +38,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{ "icon": "f/svg/analytics/st/menu-side", "text": "Données",
|
{ "icon": "/src/static/menu-side/analytics.svg", "text": "Données",
|
||||||
"attributes": { "data-link": "data" },
|
"attributes": { "data-link": "data" },
|
||||||
|
|
||||||
"children": [
|
"children": [
|
||||||
|
@ -52,7 +52,7 @@
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
||||||
{ "icon": "f/svg/settings/st/menu-side", "text": "Paramètres",
|
{ "icon": "/src/static/menu-side/settings.svg", "text": "Paramètres",
|
||||||
"attributes": { "data-link": "settings" },
|
"attributes": { "data-link": "settings" },
|
||||||
|
|
||||||
"children": [
|
"children": [
|
||||||
|
|
|
@ -443,6 +443,15 @@
|
||||||
"survey": { "description": "Si vaut TRUE, renvoie les sujets ResTIC.", "type": "boolean", "optional": true },
|
"survey": { "description": "Si vaut TRUE, renvoie les sujets ResTIC.", "type": "boolean", "optional": true },
|
||||||
"all": { "description": "Si vaut TRUE, renvoie tous les sujets enregistrés.", "type": "boolean", "optional": true }
|
"all": { "description": "Si vaut TRUE, renvoie tous les sujets enregistrés.", "type": "boolean", "optional": true }
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
"menu": {
|
||||||
|
"description": "Contenu de la configuration du menu.",
|
||||||
|
"permissions": ["admin"],
|
||||||
|
"parameters": {},
|
||||||
|
"output": {
|
||||||
|
"menu": { "description": "Contenu formatté de la configuration du menu.", "type": "array<mixed>" }
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -117,7 +117,7 @@
|
||||||
& input[type="radio"]:checked + label[for]:before,
|
& input[type="radio"]:checked + label[for]:before,
|
||||||
& input[type="checkbox"]:checked + label[for]:before{
|
& input[type="checkbox"]:checked + label[for]:before{
|
||||||
background-color: $theme-fg-primary;
|
background-color: $theme-fg-primary;
|
||||||
background-image: url('/f/svg/checked/st/container');
|
background-image: url('src/static/container/checked.svg');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -65,11 +65,11 @@
|
||||||
|
|
||||||
border-radius: 50% / 50%;
|
border-radius: 50% / 50%;
|
||||||
|
|
||||||
background: $theme-bg url('/f/svg/nopic/st/header') center center no-repeat;
|
background: $theme-bg url('/src/static/header/nopic.svg') center center no-repeat;
|
||||||
background-size: auto 80%;
|
background-size: auto 80%;
|
||||||
|
|
||||||
// Si on est connecte
|
// Si on est connecte
|
||||||
&.active{ background-image: url('/f/svg/sample/dy/profile'); background-size: auto 100%; }
|
&.active{ background-image: url('/src/dynamic/profile/sample.svg'); background-size: auto 100%; }
|
||||||
|
|
||||||
cursor: default;
|
cursor: default;
|
||||||
|
|
||||||
|
@ -88,7 +88,7 @@
|
||||||
width: $header-height;
|
width: $header-height;
|
||||||
height: $header-height;
|
height: $header-height;
|
||||||
|
|
||||||
background: url('/f/svg/expand/st/header/000000') center center no-repeat;
|
background: url('/src/static/header/expand.svg@000000') center center no-repeat;
|
||||||
background-size: 1em 1em;
|
background-size: 1em 1em;
|
||||||
|
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -6,9 +6,9 @@
|
||||||
"../constants.scss"
|
"../constants.scss"
|
||||||
],
|
],
|
||||||
"sourcesContent": [
|
"sourcesContent": [
|
||||||
"@import 'constants';\n\n\n#WRAPPER > #HEADER{\n\n\t/* [1] Barre de recherche\n\t=========================================================*/\n\t& > #searchbar{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: .8em;\n\t\t\tleft: 1em;\n\t\t\twidth: 20em;\n\t\t\theight: 2em;\n\n\t\tpadding: .2em 1em;\n\n\t\tborder: 0;\n\t\tborder-radius: 3px;\n\n\t\tbackground-color: $theme-bg;\n\n\t}\n\n\t/* [2] Informations utilisateur\n\t=========================================================*/\n\t/* (0) Conteneur */\n\t& > #user-data{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\theight: calc( 100% - 2*1em );\n\n\n\t\t/* (1) Username de l'utilisateur */\n\t\t& > #user-name{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: calc( #{$header-height}*2 - 1em );\n\t\t\t\theight: $header-height;\n\n\t\t\tpadding: 0 1em;\n\n\t\t\tcolor: #555;\n\t\t\tline-height: $header-height;\n\t\t\twhite-space: nowrap;\n\t\t\tfont-weight: bold;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t\t/* (2) Image du profil */\n\t\t& > #user-picture{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 1em;\n\t\t\t\tright: $header-height;\n\t\t\t\twidth: calc( #{$header-height} - 2*1em );\n\t\t\t\theight: calc( #{$header-height} - 2*1em );\n\n\n\t\t\tborder-radius: 50% / 50%;\n\n\t\t\tbackground: $theme-bg url('/f/svg/nopic/st/header') center center no-repeat;\n\t\t\tbackground-size: auto 80%;\n\n\t\t\t// Si on est connecte\n\t\t\t&.active{ background-image: url('/f/svg/sample/dy/profile'); background-size: auto 100%; }\n\n\t\t\tcursor: default;\n\n\t\t\talign-self: center;\n\t\t}\n\n\n\n\t\t/* (3) Icone d'activation */\n\t\t&:before{\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: 0;\n\t\t\t\twidth: $header-height;\n\t\t\t\theight: $header-height;\n\n\t\t\tbackground: url('/f/svg/expand/st/header/000000') center center no-repeat;\n\t\t\tbackground-size: 1em 1em;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t}\n\n\n\n\t/* [3] Menu deroulant pour l'administration du profil\n\t=========================================================*/\n\t& > .user-panel{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: calc( #{$header-height} - 1em );\n\t\t\tright: 0;\n\n\t\tmargin: .5em;\n\n\t\tborder-radius: 5px;\n\t\tborder: 1px solid darken($theme-bg, 10);\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( left .3s ease-in-out );\n\n\n\t\t/* (1) Pour chaque element du menu */\n\t\t& > span{\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\n\t\t\t// On ajoute une ligne en dessous sauf pour le dernier\n\t\t\t&:not(:last-child){\n\t\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\t}\n\n\t\t\tcolor: #000;\n\t\t\tpadding: .5em 1em;\n\t\t\tpadding-left: 2em;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: #eee;\n\t\t\t}\n\t\t}\n\n\n\n\n\t}\n\n\t/* (3) Gestion de l'activation ou non de l'user panel */\n\t& > #toggle-user-panel{ display: none; }\n\t& > #toggle-user-panel + .user-panel{ left: 100%; }\n\t& > #toggle-user-panel:checked + .user-panel{ left: auto; }\n\t& > #toggle-user-panel:checked + .user-panel:before{ left: 7em; }\n\n\n\n\n\n\n}\n",
|
"@import 'constants';\n\n\n#WRAPPER > #HEADER{\n\n\t/* [1] Barre de recherche\n\t=========================================================*/\n\t& > #searchbar{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: .8em;\n\t\t\tleft: 1em;\n\t\t\twidth: 20em;\n\t\t\theight: 2em;\n\n\t\tpadding: .2em 1em;\n\n\t\tborder: 0;\n\t\tborder-radius: 3px;\n\n\t\tbackground-color: $theme-bg;\n\n\t}\n\n\t/* [2] Informations utilisateur\n\t=========================================================*/\n\t/* (0) Conteneur */\n\t& > #user-data{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\theight: calc( 100% - 2*1em );\n\n\n\t\t/* (1) Username de l'utilisateur */\n\t\t& > #user-name{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: calc( #{$header-height}*2 - 1em );\n\t\t\t\theight: $header-height;\n\n\t\t\tpadding: 0 1em;\n\n\t\t\tcolor: #555;\n\t\t\tline-height: $header-height;\n\t\t\twhite-space: nowrap;\n\t\t\tfont-weight: bold;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t\t/* (2) Image du profil */\n\t\t& > #user-picture{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 1em;\n\t\t\t\tright: $header-height;\n\t\t\t\twidth: calc( #{$header-height} - 2*1em );\n\t\t\t\theight: calc( #{$header-height} - 2*1em );\n\n\n\t\t\tborder-radius: 50% / 50%;\n\n\t\t\tbackground: $theme-bg url('/src/static/header/nopic.svg') center center no-repeat;\n\t\t\tbackground-size: auto 80%;\n\n\t\t\t// Si on est connecte\n\t\t\t&.active{ background-image: url('/src/dynamic/profile/sample.svg'); background-size: auto 100%; }\n\n\t\t\tcursor: default;\n\n\t\t\talign-self: center;\n\t\t}\n\n\n\n\t\t/* (3) Icone d'activation */\n\t\t&:before{\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: 0;\n\t\t\t\twidth: $header-height;\n\t\t\t\theight: $header-height;\n\n\t\t\tbackground: url('/src/static/header/expand.svg@000000') center center no-repeat;\n\t\t\tbackground-size: 1em 1em;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t}\n\n\n\n\t/* [3] Menu deroulant pour l'administration du profil\n\t=========================================================*/\n\t& > .user-panel{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: calc( #{$header-height} - 1em );\n\t\t\tright: 0;\n\n\t\tmargin: .5em;\n\n\t\tborder-radius: 5px;\n\t\tborder: 1px solid darken($theme-bg, 10);\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( left .3s ease-in-out );\n\n\n\t\t/* (1) Pour chaque element du menu */\n\t\t& > span{\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\n\t\t\t// On ajoute une ligne en dessous sauf pour le dernier\n\t\t\t&:not(:last-child){\n\t\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\t}\n\n\t\t\tcolor: #000;\n\t\t\tpadding: .5em 1em;\n\t\t\tpadding-left: 2em;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: #eee;\n\t\t\t}\n\t\t}\n\n\n\n\n\t}\n\n\t/* (3) Gestion de l'activation ou non de l'user panel */\n\t& > #toggle-user-panel{ display: none; }\n\t& > #toggle-user-panel + .user-panel{ left: 100%; }\n\t& > #toggle-user-panel:checked + .user-panel{ left: auto; }\n\t& > #toggle-user-panel:checked + .user-panel:before{ left: 7em; }\n\n\n\n\n\n\n}\n",
|
||||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||||
],
|
],
|
||||||
"mappings": "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",
|
"mappings": "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",
|
||||||
"names": []
|
"names": []
|
||||||
}
|
}
|
File diff suppressed because one or more lines are too long
|
@ -6,9 +6,9 @@
|
||||||
"../constants.scss"
|
"../constants.scss"
|
||||||
],
|
],
|
||||||
"sourcesContent": [
|
"sourcesContent": [
|
||||||
"@import 'constants';\n\n\n#WRAPPER > #HEADER{\n\n\t/* [1] Barre de recherche\n\t=========================================================*/\n\t& > #searchbar{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: .8em;\n\t\t\tleft: 1em;\n\t\t\twidth: 20em;\n\t\t\theight: 2em;\n\n\t\tpadding: .2em 1em;\n\n\t\tborder: 0;\n\t\tborder-radius: 3px;\n\n\t\tbackground-color: $theme-bg;\n\n\t}\n\n\t/* [2] Informations utilisateur\n\t=========================================================*/\n\t/* (0) Conteneur */\n\t& > #user-data{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\theight: calc( 100% - 2*1em );\n\n\n\t\t/* (1) Username de l'utilisateur */\n\t\t& > #user-name{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: calc( #{$header-height}*2 - 1em );\n\t\t\t\theight: $header-height;\n\n\t\t\tpadding: 0 1em;\n\n\t\t\tcolor: #555;\n\t\t\tline-height: $header-height;\n\t\t\twhite-space: nowrap;\n\t\t\tfont-weight: bold;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t\t/* (2) Image du profil */\n\t\t& > #user-picture{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 1em;\n\t\t\t\tright: $header-height;\n\t\t\t\twidth: calc( #{$header-height} - 2*1em );\n\t\t\t\theight: calc( #{$header-height} - 2*1em );\n\n\n\t\t\tborder-radius: 50% / 50%;\n\n\t\t\tbackground: $theme-bg url('/f/svg/nopic/st/header') center center no-repeat;\n\t\t\tbackground-size: auto 80%;\n\n\t\t\t// Si on est connecte\n\t\t\t&.active{ background-image: url('/f/svg/sample/dy/profile'); background-size: auto 100%; }\n\n\t\t\tcursor: default;\n\n\t\t\talign-self: center;\n\t\t}\n\n\n\n\t\t/* (3) Icone d'activation */\n\t\t&:before{\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: 0;\n\t\t\t\twidth: $header-height;\n\t\t\t\theight: $header-height;\n\n\t\t\tbackground: url('/f/svg/expand/st/header/000000') center center no-repeat;\n\t\t\tbackground-size: 1em 1em;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t}\n\n\n\n\t/* [3] Menu deroulant pour l'administration du profil\n\t=========================================================*/\n\t& > .user-panel{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: calc( #{$header-height} - 1em );\n\t\t\tright: 0;\n\n\t\tmargin: .5em;\n\n\t\tborder-radius: 5px;\n\t\tborder: 1px solid darken($theme-bg, 10);\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( left .3s ease-in-out );\n\n\n\t\t/* (1) Pour chaque element du menu */\n\t\t& > span{\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\n\t\t\t// On ajoute une ligne en dessous sauf pour le dernier\n\t\t\t&:not(:last-child){\n\t\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\t}\n\n\t\t\tcolor: #000;\n\t\t\tpadding: .5em 1em;\n\t\t\tpadding-left: 2em;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: #eee;\n\t\t\t}\n\t\t}\n\n\n\n\n\t}\n\n\t/* (3) Gestion de l'activation ou non de l'user panel */\n\t& > #toggle-user-panel{ display: none; }\n\t& > #toggle-user-panel + .user-panel{ left: 100%; }\n\t& > #toggle-user-panel:checked + .user-panel{ left: auto; }\n\t& > #toggle-user-panel:checked + .user-panel:before{ left: 7em; }\n\n\n\n\n\n\n}\n",
|
"@import 'constants';\n\n\n#WRAPPER > #HEADER{\n\n\t/* [1] Barre de recherche\n\t=========================================================*/\n\t& > #searchbar{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: .8em;\n\t\t\tleft: 1em;\n\t\t\twidth: 20em;\n\t\t\theight: 2em;\n\n\t\tpadding: .2em 1em;\n\n\t\tborder: 0;\n\t\tborder-radius: 3px;\n\n\t\tbackground-color: $theme-bg;\n\n\t}\n\n\t/* [2] Informations utilisateur\n\t=========================================================*/\n\t/* (0) Conteneur */\n\t& > #user-data{\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tright: 0;\n\t\t\theight: calc( 100% - 2*1em );\n\n\n\t\t/* (1) Username de l'utilisateur */\n\t\t& > #user-name{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: calc( #{$header-height}*2 - 1em );\n\t\t\t\theight: $header-height;\n\n\t\t\tpadding: 0 1em;\n\n\t\t\tcolor: #555;\n\t\t\tline-height: $header-height;\n\t\t\twhite-space: nowrap;\n\t\t\tfont-weight: bold;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t\t/* (2) Image du profil */\n\t\t& > #user-picture{\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 1em;\n\t\t\t\tright: $header-height;\n\t\t\t\twidth: calc( #{$header-height} - 2*1em );\n\t\t\t\theight: calc( #{$header-height} - 2*1em );\n\n\n\t\t\tborder-radius: 50% / 50%;\n\n\t\t\tbackground: $theme-bg url('/src/static/header/nopic.svg') center center no-repeat;\n\t\t\tbackground-size: auto 80%;\n\n\t\t\t// Si on est connecte\n\t\t\t&.active{ background-image: url('/src/dynamic/profile/sample.svg'); background-size: auto 100%; }\n\n\t\t\tcursor: default;\n\n\t\t\talign-self: center;\n\t\t}\n\n\n\n\t\t/* (3) Icone d'activation */\n\t\t&:before{\n\t\t\tcontent: '';\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\t\ttop: 0;\n\t\t\t\tright: 0;\n\t\t\t\twidth: $header-height;\n\t\t\t\theight: $header-height;\n\n\t\t\tbackground: url('/src/static/header/expand.svg@000000') center center no-repeat;\n\t\t\tbackground-size: 1em 1em;\n\n\t\t\tcursor: pointer;\n\n\t\t}\n\n\n\t}\n\n\n\n\t/* [3] Menu deroulant pour l'administration du profil\n\t=========================================================*/\n\t& > .user-panel{\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\t\ttop: calc( #{$header-height} - 1em );\n\t\t\tright: 0;\n\n\t\tmargin: .5em;\n\n\t\tborder-radius: 5px;\n\t\tborder: 1px solid darken($theme-bg, 10);\n\n\t\tbackground-color: #fff;\n\n\t\t@include transition( left .3s ease-in-out );\n\n\n\t\t/* (1) Pour chaque element du menu */\n\t\t& > span{\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\n\t\t\t// On ajoute une ligne en dessous sauf pour le dernier\n\t\t\t&:not(:last-child){\n\t\t\t\tborder-bottom: 1px solid #ddd;\n\t\t\t}\n\n\t\t\tcolor: #000;\n\t\t\tpadding: .5em 1em;\n\t\t\tpadding-left: 2em;\n\n\t\t\tcursor: pointer;\n\n\t\t\t// @hover\n\t\t\t&:hover{\n\t\t\t\tbackground-color: #eee;\n\t\t\t}\n\t\t}\n\n\n\n\n\t}\n\n\t/* (3) Gestion de l'activation ou non de l'user panel */\n\t& > #toggle-user-panel{ display: none; }\n\t& > #toggle-user-panel + .user-panel{ left: 100%; }\n\t& > #toggle-user-panel:checked + .user-panel{ left: auto; }\n\t& > #toggle-user-panel:checked + .user-panel:before{ left: 7em; }\n\n\n\n\n\n\n}\n",
|
||||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||||
],
|
],
|
||||||
"mappings": "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",
|
"mappings": "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",
|
||||||
"names": []
|
"names": []
|
||||||
}
|
}
|
|
@ -124,7 +124,7 @@ body{
|
||||||
width: 35em;
|
width: 35em;
|
||||||
height: 10em;
|
height: 10em;
|
||||||
|
|
||||||
background: url('/f/svg/iconv2/st') center center no-repeat;
|
background: url('/src/static/iconv2.svg') center center no-repeat;
|
||||||
background-size: auto 100%;
|
background-size: auto 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -239,7 +239,7 @@ body{
|
||||||
min-width: 2em;
|
min-width: 2em;
|
||||||
height: 2em;
|
height: 2em;
|
||||||
|
|
||||||
background: url('/f/svg/back/st/container/555555') right center no-repeat;
|
background: url('/src/static/container/back.svg@555555') right center no-repeat;
|
||||||
background-size: 1em;
|
background-size: 1em;
|
||||||
|
|
||||||
color: #555;
|
color: #555;
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -14,7 +14,7 @@
|
||||||
|
|
||||||
border-bottom: 1px solid transparent;
|
border-bottom: 1px solid transparent;
|
||||||
|
|
||||||
background: url('/f/svg/sub/st/menu-side/aaaaaa') right 1.5em center no-repeat;
|
background: url('/src/static/menu-side/sub.svg@aaaaaa') right 1.5em center no-repeat;
|
||||||
background-size: .5em .5em;
|
background-size: .5em .5em;
|
||||||
|
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
|
|
||||||
/* (2) Animation de @hover */
|
/* (2) Animation de @hover */
|
||||||
&:not(.active):hover{
|
&:not(.active):hover{
|
||||||
background-image: url('/f/svg/sub/st/menu-side/000000');
|
background-image: url('/src/static/menu-side/sub.svg@000000');
|
||||||
color: #000;
|
color: #000;
|
||||||
|
|
||||||
& > svg, & > svg *{
|
& > svg, & > svg *{
|
||||||
|
@ -54,7 +54,7 @@
|
||||||
// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);
|
// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);
|
||||||
|
|
||||||
background-color: $theme-fg-primary;
|
background-color: $theme-fg-primary;
|
||||||
background-image: url('/f/svg/sub-active/st/menu-side/ffffff');
|
background-image: url('/src/static/menu-side/sub-active.svg@ffffff');
|
||||||
color: $dark-fg-primary;
|
color: $dark-fg-primary;
|
||||||
|
|
||||||
& > svg, & > svg *{
|
& > svg, & > svg *{
|
||||||
|
@ -78,7 +78,7 @@
|
||||||
padding: .5em 1.5em;
|
padding: .5em 1.5em;
|
||||||
padding-left: 2.5em;
|
padding-left: 2.5em;
|
||||||
|
|
||||||
background: #eee url('/f/svg/sub/st/menu-side/777777') 1.5em center no-repeat;;
|
background: #eee url('/src/static/menu-side/sub.svg@777777') 1.5em center no-repeat;;
|
||||||
background-size: .5em;
|
background-size: .5em;
|
||||||
|
|
||||||
color: #777777;
|
color: #777777;
|
||||||
|
@ -92,7 +92,7 @@
|
||||||
&:hover,
|
&:hover,
|
||||||
&.active{
|
&.active{
|
||||||
color: #000;
|
color: #000;
|
||||||
background-image: url('/f/svg/sub/st/menu-side/000000');
|
background-image: url('/src/static/menu-side/sub.svg@000000');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -6,9 +6,9 @@
|
||||||
"../constants.scss"
|
"../constants.scss"
|
||||||
],
|
],
|
||||||
"sourcesContent": [
|
"sourcesContent": [
|
||||||
"@import 'constants';\n\n#WRAPPER > #MENU-SIDE{\n\n\t/* [1] Elements du menu\n\t=========================================================*/\n\t& > span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 2*1em - 2*1.5em );\n\n\t\tpadding: .8em 1.5em;\n\t\tpadding-left: calc( 1.5em + 2*1em );\n\n\t\tborder-bottom: 1px solid transparent;\n\n\t\tbackground: url('/f/svg/sub/st/menu-side/aaaaaa') right 1.5em center no-repeat;\n\t\tbackground-size: .5em .5em;\n\n\n\t\tcolor: #666;\n\t\tfont-size: .85em;\n\n\t\t@include transition( color .2s ease-in-out, background .2s ease-in-out, box-shadow .2s ease-in-out, border .2s ease-in-out );\n\n\t\tcursor: pointer;\n\n\t\t/* (1) Icone svg */\n\t\t& > svg, & > svg *{\n\t\t\tposition: absolute;\n\t\t\t\ttop: calc( 50% - 1em/2 );\n\t\t\t\tleft: 1.5em;\n\t\t\t\twidth: 1em;\n\t\t\t\theight: 1em;\n\n\t\t\tfill: $dark-fg !important;\n\t\t\t@include transition( fill .2s ease-in-out );\n\t\t}\n\n\n\t\t/* (2) Animation de @hover */\n\t\t&:not(.active):hover{\n\t\t\tbackground-image: url('/f/svg/sub/st/menu-side/000000');\n\t\t\tcolor: #000;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #000 !important;\n\t\t\t}\n\t\t}\n\n\t\t/* (3) Animation quand .active */\n\t\t&.active{\n\t\t\tborder-bottom-color: darken($theme-fg-primary, 5);\n\t\t\t// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);\n\n\t\t\tbackground-color: $theme-fg-primary;\n\t\t\tbackground-image: url('/f/svg/sub-active/st/menu-side/ffffff');\n\t\t\tcolor: $dark-fg-primary;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #fff !important;\n\t\t\t}\n\t\t}\n\n\n\t}\n\n\n\n\t/* [2] Gestion du menu deroulant\n\t=========================================================*/\n\t/* (1) Quand le menu est deroule */\n\t& > span:not(.icon) + div.sub>span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 1.5em - 2.5em );\n\n\t\tpadding: .5em 1.5em;\n\t\tpadding-left: 2.5em;\n\n\t\tbackground: #eee url('/f/svg/sub/st/menu-side/777777') 1.5em center no-repeat;;\n\t\tbackground-size: .5em;\n\n\t\tcolor: #777777;\n\t\tfont-size: .85em;\n\n\t\tcursor: pointer;\n\n\t\t@include transition( color .2s ease-in-out );\n\n\t\t// Animation de @hover ou .active\n\t\t&:hover,\n\t\t&.active{\n\t\t\tcolor: #000;\n\t\t\tbackground-image: url('/f/svg/sub/st/menu-side/000000');\n\t\t}\n\t}\n\n\n\t& > span:not(.icon):not(.active) + div.sub>span{\n\t\tdisplay: none;\n\t}\n}\n",
|
"@import 'constants';\n\n#WRAPPER > #MENU-SIDE{\n\n\t/* [1] Elements du menu\n\t=========================================================*/\n\t& > span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 2*1em - 2*1.5em );\n\n\t\tpadding: .8em 1.5em;\n\t\tpadding-left: calc( 1.5em + 2*1em );\n\n\t\tborder-bottom: 1px solid transparent;\n\n\t\tbackground: url('/src/static/menu-side/sub.svg@aaaaaa') right 1.5em center no-repeat;\n\t\tbackground-size: .5em .5em;\n\n\n\t\tcolor: #666;\n\t\tfont-size: .85em;\n\n\t\t@include transition( color .2s ease-in-out, background .2s ease-in-out, box-shadow .2s ease-in-out, border .2s ease-in-out );\n\n\t\tcursor: pointer;\n\n\t\t/* (1) Icone svg */\n\t\t& > svg, & > svg *{\n\t\t\tposition: absolute;\n\t\t\t\ttop: calc( 50% - 1em/2 );\n\t\t\t\tleft: 1.5em;\n\t\t\t\twidth: 1em;\n\t\t\t\theight: 1em;\n\n\t\t\tfill: $dark-fg !important;\n\t\t\t@include transition( fill .2s ease-in-out );\n\t\t}\n\n\n\t\t/* (2) Animation de @hover */\n\t\t&:not(.active):hover{\n\t\t\tbackground-image: url('/src/static/menu-side/sub.svg@000000');\n\t\t\tcolor: #000;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #000 !important;\n\t\t\t}\n\t\t}\n\n\t\t/* (3) Animation quand .active */\n\t\t&.active{\n\t\t\tborder-bottom-color: darken($theme-fg-primary, 5);\n\t\t\t// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);\n\n\t\t\tbackground-color: $theme-fg-primary;\n\t\t\tbackground-image: url('/src/static/menu-side/sub-active.svg@ffffff');\n\t\t\tcolor: $dark-fg-primary;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #fff !important;\n\t\t\t}\n\t\t}\n\n\n\t}\n\n\n\n\t/* [2] Gestion du menu deroulant\n\t=========================================================*/\n\t/* (1) Quand le menu est deroule */\n\t& > span:not(.icon) + div.sub>span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 1.5em - 2.5em );\n\n\t\tpadding: .5em 1.5em;\n\t\tpadding-left: 2.5em;\n\n\t\tbackground: #eee url('/src/static/menu-side/sub.svg@777777') 1.5em center no-repeat;;\n\t\tbackground-size: .5em;\n\n\t\tcolor: #777777;\n\t\tfont-size: .85em;\n\n\t\tcursor: pointer;\n\n\t\t@include transition( color .2s ease-in-out );\n\n\t\t// Animation de @hover ou .active\n\t\t&:hover,\n\t\t&.active{\n\t\t\tcolor: #000;\n\t\t\tbackground-image: url('/src/static/menu-side/sub.svg@000000');\n\t\t}\n\t}\n\n\n\t& > span:not(.icon):not(.active) + div.sub>span{\n\t\tdisplay: none;\n\t}\n}\n",
|
||||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||||
],
|
],
|
||||||
"mappings": "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",
|
"mappings": "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",
|
||||||
"names": []
|
"names": []
|
||||||
}
|
}
|
File diff suppressed because one or more lines are too long
|
@ -6,9 +6,9 @@
|
||||||
"../constants.scss"
|
"../constants.scss"
|
||||||
],
|
],
|
||||||
"sourcesContent": [
|
"sourcesContent": [
|
||||||
"@import 'constants';\n\n#WRAPPER > #MENU-SIDE{\n\n\t/* [1] Elements du menu\n\t=========================================================*/\n\t& > span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 2*1em - 2*1.5em );\n\n\t\tpadding: .8em 1.5em;\n\t\tpadding-left: calc( 1.5em + 2*1em );\n\n\t\tborder-bottom: 1px solid transparent;\n\n\t\tbackground: url('/f/svg/sub/st/menu-side/aaaaaa') right 1.5em center no-repeat;\n\t\tbackground-size: .5em .5em;\n\n\n\t\tcolor: #666;\n\t\tfont-size: .85em;\n\n\t\t@include transition( color .2s ease-in-out, background .2s ease-in-out, box-shadow .2s ease-in-out, border .2s ease-in-out );\n\n\t\tcursor: pointer;\n\n\t\t/* (1) Icone svg */\n\t\t& > svg, & > svg *{\n\t\t\tposition: absolute;\n\t\t\t\ttop: calc( 50% - 1em/2 );\n\t\t\t\tleft: 1.5em;\n\t\t\t\twidth: 1em;\n\t\t\t\theight: 1em;\n\n\t\t\tfill: $dark-fg !important;\n\t\t\t@include transition( fill .2s ease-in-out );\n\t\t}\n\n\n\t\t/* (2) Animation de @hover */\n\t\t&:not(.active):hover{\n\t\t\tbackground-image: url('/f/svg/sub/st/menu-side/000000');\n\t\t\tcolor: #000;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #000 !important;\n\t\t\t}\n\t\t}\n\n\t\t/* (3) Animation quand .active */\n\t\t&.active{\n\t\t\tborder-bottom-color: darken($theme-fg-primary, 5);\n\t\t\t// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);\n\n\t\t\tbackground-color: $theme-fg-primary;\n\t\t\tbackground-image: url('/f/svg/sub-active/st/menu-side/ffffff');\n\t\t\tcolor: $dark-fg-primary;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #fff !important;\n\t\t\t}\n\t\t}\n\n\n\t}\n\n\n\n\t/* [2] Gestion du menu deroulant\n\t=========================================================*/\n\t/* (1) Quand le menu est deroule */\n\t& > span:not(.icon) + div.sub>span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 1.5em - 2.5em );\n\n\t\tpadding: .5em 1.5em;\n\t\tpadding-left: 2.5em;\n\n\t\tbackground: #eee url('/f/svg/sub/st/menu-side/777777') 1.5em center no-repeat;;\n\t\tbackground-size: .5em;\n\n\t\tcolor: #777777;\n\t\tfont-size: .85em;\n\n\t\tcursor: pointer;\n\n\t\t@include transition( color .2s ease-in-out );\n\n\t\t// Animation de @hover ou .active\n\t\t&:hover,\n\t\t&.active{\n\t\t\tcolor: #000;\n\t\t\tbackground-image: url('/f/svg/sub/st/menu-side/000000');\n\t\t}\n\t}\n\n\n\t& > span:not(.icon):not(.active) + div.sub>span{\n\t\tdisplay: none;\n\t}\n}\n",
|
"@import 'constants';\n\n#WRAPPER > #MENU-SIDE{\n\n\t/* [1] Elements du menu\n\t=========================================================*/\n\t& > span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 2*1em - 2*1.5em );\n\n\t\tpadding: .8em 1.5em;\n\t\tpadding-left: calc( 1.5em + 2*1em );\n\n\t\tborder-bottom: 1px solid transparent;\n\n\t\tbackground: url('/src/static/menu-side/sub.svg@aaaaaa') right 1.5em center no-repeat;\n\t\tbackground-size: .5em .5em;\n\n\n\t\tcolor: #666;\n\t\tfont-size: .85em;\n\n\t\t@include transition( color .2s ease-in-out, background .2s ease-in-out, box-shadow .2s ease-in-out, border .2s ease-in-out );\n\n\t\tcursor: pointer;\n\n\t\t/* (1) Icone svg */\n\t\t& > svg, & > svg *{\n\t\t\tposition: absolute;\n\t\t\t\ttop: calc( 50% - 1em/2 );\n\t\t\t\tleft: 1.5em;\n\t\t\t\twidth: 1em;\n\t\t\t\theight: 1em;\n\n\t\t\tfill: $dark-fg !important;\n\t\t\t@include transition( fill .2s ease-in-out );\n\t\t}\n\n\n\t\t/* (2) Animation de @hover */\n\t\t&:not(.active):hover{\n\t\t\tbackground-image: url('/src/static/menu-side/sub.svg@000000');\n\t\t\tcolor: #000;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #000 !important;\n\t\t\t}\n\t\t}\n\n\t\t/* (3) Animation quand .active */\n\t\t&.active{\n\t\t\tborder-bottom-color: darken($theme-fg-primary, 5);\n\t\t\t// box-shadow: inset 0 0 1em darken($dark-bg-primary, 1);\n\n\t\t\tbackground-color: $theme-fg-primary;\n\t\t\tbackground-image: url('/src/static/menu-side/sub-active.svg@ffffff');\n\t\t\tcolor: $dark-fg-primary;\n\n\t\t\t& > svg, & > svg *{\n\t\t\t\tfill: #fff !important;\n\t\t\t}\n\t\t}\n\n\n\t}\n\n\n\n\t/* [2] Gestion du menu deroulant\n\t=========================================================*/\n\t/* (1) Quand le menu est deroule */\n\t& > span:not(.icon) + div.sub>span{\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\t\twidth: calc( 100% - 1.5em - 2.5em );\n\n\t\tpadding: .5em 1.5em;\n\t\tpadding-left: 2.5em;\n\n\t\tbackground: #eee url('/src/static/menu-side/sub.svg@777777') 1.5em center no-repeat;;\n\t\tbackground-size: .5em;\n\n\t\tcolor: #777777;\n\t\tfont-size: .85em;\n\n\t\tcursor: pointer;\n\n\t\t@include transition( color .2s ease-in-out );\n\n\t\t// Animation de @hover ou .active\n\t\t&:hover,\n\t\t&.active{\n\t\t\tcolor: #000;\n\t\t\tbackground-image: url('/src/static/menu-side/sub.svg@000000');\n\t\t}\n\t}\n\n\n\t& > span:not(.icon):not(.active) + div.sub>span{\n\t\tdisplay: none;\n\t}\n}\n",
|
||||||
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
"/* [1] COULEURS\n=========================================================*/\n/* (1) COULEURS DU THEME $DEFAULT */\n$theme-bg: #e8e8e8;\n$theme-bg-primary: #ffffff;\n$theme-fg: #515151;\n$theme-fg-primary: #399ced;\n\n/* (2) COULEURS DE THEME $DARK */\n$dark-bg: #313541;\n$dark-bg-primary: #29282e;\n$dark-fg: #939393;\n$dark-fg-primary: #ffffff;\n\n$header-dark: #F8F8FA;\n\n/* (3) Couleurs du theme pour la timeline */\n$timeline-color: #738394;\n$timeline-0: #399ced;\n$timeline-1: #e64e3e;\n$timeline-2: #10baa3;\n$timeline-3: #b14be7;\n$timeline-4: #053b5d;\n\n\n/* [2] DIMENSIONS\n=========================================================*/\n/* (1) Layout de base */\n$menu-side-width: 15em;\n$header-height: 4em;\n\n\n\n/* [3] Mixins\n=========================================================*/\n@mixin transform($value...) {\n\ttransform: $value;\n\t-moz-transform: $value;\n\t-o-transform: $value;\n\t-ms-transform: $value;\n\t-webkit-transform: $value;\n}\n\n\n@mixin transition($value...) {\n\t-webkit-transition: $value;\n\ttransition: $value;\n}\n\n/* [4] Functions\n=========================================================*/\n// Transforme une couleur hex en string sans le #\n@function color-str($color){\n\t@return str-slice(#{$color}, 2, str-length(#{$color}));\n}\n"
|
||||||
],
|
],
|
||||||
"mappings": "AAEA,QAAQ,CAAG,UAAU,CAIhB,IAAI,AAAA,CACP,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,QAAS,CAClB,KAAK,CAAE,6BAAI,CAEZ,OAAO,CAAE,UAAW,CACpB,YAAY,CAAE,oBAAI,CAElB,aAAa,CAAE,qBAAsB,CAErC,UAAU,CAAE,qCAAG,CAAmC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAC9E,eAAe,CAAE,SAAU,CAG3B,KAAK,CAAE,IAAK,CACZ,SAAS,CAAE,KAAM,CCwBlB,kBAAkB,CDtBI,KAAK,CAAC,IAAG,CAAC,WAAW,CAAE,UAAU,CAAC,IAAG,CAAC,WAAW,CAAE,UAAU,CAAC,IAAG,CAAC,WAAW,CAAE,MAAM,CAAC,IAAG,CAAC,WAAW,CCuB3H,UAAU,CDvBY,KAAK,CAAC,IAAG,CAAC,WAAW,CAAE,UAAU,CAAC,IAAG,CAAC,WAAW,CAAE,UAAU,CAAC,IAAG,CAAC,WAAW,CAAE,MAAM,CAAC,IAAG,CAAC,WAAW,CAE1H,MAAM,CAAE,OAAQ,CAwChB,AA/DF,QAAQ,CAAG,UAAU,CAIhB,IAAI,CAsBH,GAAG,CA1BT,QAAQ,CAAG,UAAU,CAIhB,IAAI,CAsBM,GAAG,CAAC,CAAC,AAAA,CACjB,QAAQ,CAAE,QAAS,CAClB,GAAG,CAAE,kBAAI,CACT,IAAI,CAAE,KAAM,CACZ,KAAK,CAAE,GAAI,CACX,MAAM,CAAE,GAAI,CAEb,IAAI,CCxBW,OAAO,CDwBP,UAAU,CCU3B,kBAAkB,CDTK,IAAI,CAAC,IAAG,CAAC,WAAW,CCU3C,UAAU,CDVa,IAAI,CAAC,IAAG,CAAC,WAAW,CACzC,AAnCH,QAAQ,CAAG,UAAU,CAIhB,IAAI,AAmCN,IAAK,CAAA,OAAO,CAAC,MAAM,AAAA,CACnB,gBAAgB,CAAE,qCAAG,CACrB,KAAK,CAAE,IAAK,CAKZ,AA9CH,QAAQ,CAAG,UAAU,CAIhB,IAAI,AAmCN,IAAK,CAAA,OAAO,CAAC,MAAM,CAIf,GAAG,CA3CV,QAAQ,CAAG,UAAU,CAIhB,IAAI,AAmCN,IAAK,CAAA,OAAO,CAAC,MAAM,CAIN,GAAG,CAAC,CAAC,AAAA,CACjB,IAAI,CAAE,eAAgB,CACtB,AA7CJ,QAAQ,CAAG,UAAU,CAIhB,IAAI,AA6CN,OAAO,AAAA,CACP,mBAAmB,CAAE,OAAM,CAG3B,gBAAgB,CCjDA,OAAO,CDkDvB,gBAAgB,CAAE,4CAAG,CACrB,KAAK,CC7CU,IAAO,CDkDtB,AA5DH,QAAQ,CAAG,UAAU,CAIhB,IAAI,AA6CN,OAAO,CAQH,GAAG,CAzDV,QAAQ,CAAG,UAAU,CAIhB,IAAI,AA6CN,OAAO,CAQM,GAAG,CAAC,CAAC,AAAA,CACjB,IAAI,CAAE,eAAgB,CACtB,AA3DJ,QAAQ,CAAG,UAAU,CAsEhB,IAAI,AAAA,IAAK,CAAA,KAAK,EAAI,GAAG,AAAA,IAAI,CAAC,IAAI,AAAA,CACjC,OAAO,CAAE,KAAM,CACf,QAAQ,CAAE,QAAS,CAClB,KAAK,CAAE,2BAAI,CAEZ,OAAO,CAAE,UAAW,CACpB,YAAY,CAAE,KAAM,CAEpB,UAAU,CAAE,IAAI,CAAC,qCAAG,CAAmC,KAAK,CAAC,MAAM,CAAC,SAAS,CAC7E,eAAe,CAAE,IAAK,CAEtB,KAAK,CAAE,OAAQ,CACf,SAAS,CAAE,KAAM,CAEjB,MAAM,CAAE,OAAQ,CCzCjB,kBAAkB,CD2CI,KAAK,CAAC,IAAG,CAAC,WAAW,CC1C3C,UAAU,CD0CY,KAAK,CAAC,IAAG,CAAC,WAAW,CAQ1C,AA9FF,QAAQ,CAAG,UAAU,CAsEhB,IAAI,AAAA,IAAK,CAAA,KAAK,EAAI,GAAG,AAAA,IAAI,CAAC,IAAI,AAmBhC,MAAM,CAzFT,QAAQ,CAAG,UAAU,CAsEhB,IAAI,AAAA,IAAK,CAAA,KAAK,EAAI,GAAG,AAAA,IAAI,CAAC,IAAI,AAoBhC,OAAO,AAAA,CACP,KAAK,CAAE,IAAK,CACZ,gBAAgB,CAAE,qCAAG,CACrB,AA7FH,QAAQ,CAAG,UAAU,CAiGhB,IAAI,AAAA,IAAK,CAAA,KAAK,CAAC,IAAK,CAAA,OAAO,EAAI,GAAG,AAAA,IAAI,CAAC,IAAI,AAAA,CAC9C,OAAO,CAAE,IAAK,CACd",
|
"mappings": "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",
|
||||||
"names": []
|
"names": []
|
||||||
}
|
}
|
|
@ -126,30 +126,30 @@
|
||||||
|
|
||||||
// Image pour token
|
// Image pour token
|
||||||
&[data-token]{
|
&[data-token]{
|
||||||
background: url('/f/svg/token/st/container/666666') center 1em no-repeat;
|
background: url('/src/static/container/token.svg@666666') center 1em no-repeat;
|
||||||
// Si le token est actif
|
// Si le token est actif
|
||||||
&.active{
|
&.active{
|
||||||
background-image: url('/f/svg/token/st/container/#{color-str($theme-fg-primary)}');
|
background-image: url('/src/static/container/token.svg@#{color-str($theme-fg-primary)}');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Image pour utilisateur
|
// Image pour utilisateur
|
||||||
&[data-user]{
|
&[data-user]{
|
||||||
background: url('/f/svg/user/st/container/666666') center 1em no-repeat;
|
background: url('/src/static/container/user.svg@666666') center 1em no-repeat;
|
||||||
// Si le token est actif
|
// Si le token est actif
|
||||||
&.active{
|
&.active{
|
||||||
background-image: url('/f/svg/user/st/container/#{color-str($theme-fg-primary)}');
|
background-image: url('/src/static/container/user.svg@#{color-str($theme-fg-primary)}');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Image pour utilisateur
|
// Image pour utilisateur
|
||||||
&[data-number]{
|
&[data-number]{
|
||||||
background: url('/f/svg/phone_number/st/container/666666') center 1em no-repeat;
|
background: url('/src/static/container/phone_number.svg@666666') center 1em no-repeat;
|
||||||
// Si le token est actif
|
// Si le token est actif
|
||||||
&.active{
|
&.active{
|
||||||
background-image: url('/f/svg/phone_number/st/container/#{color-str($theme-fg-primary)}');
|
background-image: url('/src/static/container/phone_number.svg@#{color-str($theme-fg-primary)}');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -351,7 +351,7 @@
|
||||||
border: none;
|
border: none;
|
||||||
border-bottom: 1px solid #333;
|
border-bottom: 1px solid #333;
|
||||||
|
|
||||||
background: #fff url('/f/svg/bottom_arrow/st/container/333333') right 10px center no-repeat;
|
background: #fff url('/src/static/container/bottom_arrow.svg@333333') right 10px center no-repeat;
|
||||||
background-size: 10px auto;
|
background-size: 10px auto;
|
||||||
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
@ -359,7 +359,7 @@
|
||||||
// Animation de @focus
|
// Animation de @focus
|
||||||
&:focus{
|
&:focus{
|
||||||
border-color: $timeline-2;
|
border-color: $timeline-2;
|
||||||
background-image:url('/f/svg/bottom_arrow/st/container/#{color-str($timeline-2)}');
|
background-image:url('/src/static/container/bottom_arrow.svg@#{color-str($timeline-2)}');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -487,7 +487,7 @@
|
||||||
|
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
|
|
||||||
background: url('/f/svg/switch-both/st/container/4e4e50') center center no-repeat;
|
background: url('/src/static/container/switch-both.svg@4e4e50') center center no-repeat;
|
||||||
background-size: 1em auto;
|
background-size: 1em auto;
|
||||||
|
|
||||||
font-size: .8em;
|
font-size: .8em;
|
||||||
|
@ -505,7 +505,7 @@
|
||||||
|
|
||||||
margin-right: 15px;
|
margin-right: 15px;
|
||||||
|
|
||||||
background: url('/f/svg/switch-left/st/container/4e4e50') center center no-repeat;
|
background: url('/src/static/container/switch-left.svg@4e4e50') center center no-repeat;
|
||||||
background-size: 1em auto;
|
background-size: 1em auto;
|
||||||
|
|
||||||
font-size: .8em;
|
font-size: .8em;
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
28
index.php
28
index.php
|
@ -3,7 +3,6 @@
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
|
|
||||||
use \router\Router;
|
use \router\Router;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ModuleResponse;
|
use \manager\ModuleResponse;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
|
@ -75,6 +74,31 @@
|
||||||
$R = new Router( $_GET['url'] );
|
$R = new Router( $_GET['url'] );
|
||||||
|
|
||||||
|
|
||||||
|
/* (2) Gestion des SVG avec couleur modifiée */
|
||||||
|
// path/to/resource/filename-HEXADE.svg
|
||||||
|
$R->get('(.+)@([a-f0-9]{6})(\.svg)', function($matches){
|
||||||
|
$path = __ROOT__.'/'.$matches[0].$matches[2];
|
||||||
|
|
||||||
|
header('Content-Type: image/svg+xml');
|
||||||
|
|
||||||
|
// On crée la partie ajoutée
|
||||||
|
$stylesheet = "\n<style type='text/css'>\n";
|
||||||
|
$stylesheet .= "\t#stylisable{\n";
|
||||||
|
$stylesheet .= "\t\tfill: #".$matches[1]." !important;\n";
|
||||||
|
$stylesheet .= "\t\tfill-opacity: 1 !important;\n";
|
||||||
|
$stylesheet .= "\t}\n";
|
||||||
|
$stylesheet .= "</style></svg>";
|
||||||
|
|
||||||
|
// On récupère le fichier
|
||||||
|
$file = file_get_contents($path);
|
||||||
|
|
||||||
|
// On ajoute le style
|
||||||
|
$file = str_replace('</svg>', $stylesheet, $file);
|
||||||
|
|
||||||
|
echo $file;
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
/* [1] On cree les regles de routage
|
/* [1] On cree les regles de routage
|
||||||
===================================================*/
|
===================================================*/
|
||||||
// Racine -> page d'accueil
|
// Racine -> page d'accueil
|
||||||
|
@ -92,7 +116,7 @@
|
||||||
|
|
||||||
|
|
||||||
// Dispatcher
|
// Dispatcher
|
||||||
$R->get('f(?:/([\w-]+))*/?', function(){ new ResourceDispatcher($_GET['url'], true); });
|
// $R->get('f(?:/([\w-]+))*/?', function(){ new ResourceDispatcher($_GET['url'], true); });
|
||||||
|
|
||||||
|
|
||||||
// Api
|
// Api
|
||||||
|
|
|
@ -6,4 +6,4 @@ c.length;a++)c[a].remClass("active");if(null!=b)for(b.addClass("active"),c=$$('#
|
||||||
function navMenu(a){var c=$('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.page+'"]'),b=null,b=a instanceof Element?a:null,b="string"==typeof a?$('#WRAPPER > #MENU-SIDE > span[data-link="'+a+'"]'):b,b=null==b?$('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.pagelist[0]+'"]'):b;if(null==b)return!1;null!=c&&c.remClass("active");null!=b&&b.addClass("active");b.getData("link")&&(DOM.HEADER.addClass("loading"),pageManager.setPage(b.getData("link")),pageManager.activeXHR.addEventListener("loadend",
|
function navMenu(a){var c=$('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.page+'"]'),b=null,b=a instanceof Element?a:null,b="string"==typeof a?$('#WRAPPER > #MENU-SIDE > span[data-link="'+a+'"]'):b,b=null==b?$('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.pagelist[0]+'"]'):b;if(null==b)return!1;null!=c&&c.remClass("active");null!=b&&b.addClass("active");b.getData("link")&&(DOM.HEADER.addClass("loading"),pageManager.setPage(b.getData("link")),pageManager.activeXHR.addEventListener("loadend",
|
||||||
function(){1<=pageManager.vars.length&&null!=$('#CONTAINER > section[data-sublink="'+pageManager.vars[0]+'"]')?navSubMenu(pageManager.vars[0]):navSubMenu(null);var a=$("#MENU-SIDE > span[data-link="+pageManager.page+"] + div.sub");null!=a&&a.addEventListener("click",function(a){for(a=a.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1);DOM.HEADER.remClass("loading")},!1))}
|
function(){1<=pageManager.vars.length&&null!=$('#CONTAINER > section[data-sublink="'+pageManager.vars[0]+'"]')?navSubMenu(pageManager.vars[0]):navSubMenu(null);var a=$("#MENU-SIDE > span[data-link="+pageManager.page+"] + div.sub");null!=a&&a.addEventListener("click",function(a){for(a=a.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1);DOM.HEADER.remClass("loading")},!1))}
|
||||||
DOM.MENUSIDE.addEventListener("click",function(a){for(a=a.target;a!=document.body&&!a.getData("link");)a=a.parentNode;a.getData("link")&&navMenu(a.getData("link"))},!1);function reload(){navMenu(pageManager.page)}var LOGIN={show:document.getElementById("user-data"),hide:document.getElementById("login-close"),page:document.getElementById("LOGIN")};LOGIN.show.addEventListener("click",function(a){LOGIN.page.className="active"},!1);
|
DOM.MENUSIDE.addEventListener("click",function(a){for(a=a.target;a!=document.body&&!a.getData("link");)a=a.parentNode;a.getData("link")&&navMenu(a.getData("link"))},!1);function reload(){navMenu(pageManager.page)}var LOGIN={show:document.getElementById("user-data"),hide:document.getElementById("login-close"),page:document.getElementById("LOGIN")};LOGIN.show.addEventListener("click",function(a){LOGIN.page.className="active"},!1);
|
||||||
LOGIN.hide.addEventListener("click",function(a){LOGIN.page.className=""},!1);pageManagerClass.prototype.ajax("/f/json/menu/conf",function(a){var c=[];a=JSON.parse(a);for(var b=0;b<a.length;b++)c.push(a[b].attributes["data-link"]);pageManager=new pageManagerClass;pageManager.setPage(null,"/view",DOM.CONTAINER,c,null);navMenu(pageManager.page)},"GET");
|
LOGIN.hide.addEventListener("click",function(a){LOGIN.page.className=""},!1);api.send({path:"download/menu"},function(a){if(0==a.ModuleError){pagelist=[];for(var c=0;c<a.menu.length;c++)pagelist.push(a.menu[c].attributes["data-link"]);pageManager=new pageManagerClass;pageManager.setPage(null,"/view",DOM.CONTAINER,pagelist,null);navMenu(pageManager.page)}});
|
||||||
|
|
|
@ -244,16 +244,18 @@ LOGIN.hide.addEventListener('click', function(e){ LOGIN.page.className = ''; },
|
||||||
|
|
||||||
/* [7] On recupere la liste des pages et on lance pageManager
|
/* [7] On recupere la liste des pages et on lance pageManager
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
pageManagerClass.prototype.ajax('/f/json/menu/conf', function(pagelistSerialized){
|
api.send({path:'download/menu'}, function(response){
|
||||||
// On initialise la liste des pages
|
|
||||||
var pagelist = [];
|
|
||||||
|
|
||||||
// On deserialise le bordel
|
// si erreur
|
||||||
var pagelistObject = JSON.parse(pagelistSerialized);
|
if( response.ModuleError != 0 )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// On initialise la liste des pages
|
||||||
|
pagelist = [];
|
||||||
|
|
||||||
// On recupere chaque page
|
// On recupere chaque page
|
||||||
for( var i = 0 ; i < pagelistObject.length; i++ )
|
for( var i = 0 ; i < response.menu.length; i++ )
|
||||||
pagelist.push( pagelistObject[i]['attributes']['data-link'] );
|
pagelist.push( response.menu[i].attributes['data-link'] );
|
||||||
|
|
||||||
/* (1) On initialisa pageManager */
|
/* (1) On initialisa pageManager */
|
||||||
pageManager = new pageManagerClass();
|
pageManager = new pageManagerClass();
|
||||||
|
@ -261,4 +263,4 @@ pageManagerClass.prototype.ajax('/f/json/menu/conf', function(pagelistSerialized
|
||||||
|
|
||||||
/* (2) On charge la premiere page */
|
/* (2) On charge la premiere page */
|
||||||
navMenu(pageManager.page);
|
navMenu(pageManager.page);
|
||||||
}, 'GET');
|
});
|
||||||
|
|
|
@ -7,35 +7,35 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
function FormDeflater(container, tags, attr){
|
function FormDeflater(container, tags, attr){
|
||||||
/* [0] Vérification des INPUT
|
/* [0] Vérification des INPUT
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
var correctParams = container instanceof Element;
|
var correctParams = container instanceof Element;
|
||||||
correctParams = correctParams && tags instanceof Array;
|
correctParams = correctParams && tags instanceof Array;
|
||||||
correctParams = correctParams && attr instanceof Array;
|
correctParams = correctParams && attr instanceof Array;
|
||||||
|
|
||||||
|
|
||||||
/* [1] On formatte les données
|
/* [1] On formatte les données
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// On met les tags en minuscule
|
// On met les tags en minuscule
|
||||||
for( var i = 0 ; i < tags.length ; i++ )
|
for( var i = 0 ; i < tags.length ; i++ )
|
||||||
tags[i] = tags[i].toLowerCase();
|
tags[i] = tags[i].toLowerCase();
|
||||||
|
|
||||||
// On met les attributs en minuscule
|
// On met les attributs en minuscule
|
||||||
for( var i = 0 ; i < attr.length ; i++ )
|
for( var i = 0 ; i < attr.length ; i++ )
|
||||||
attr[i] = attr[i].toLowerCase();
|
attr[i] = attr[i].toLowerCase();
|
||||||
|
|
||||||
/* [2] On enregistre les attributs
|
/* [2] On enregistre les attributs
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
this.container = container;
|
this.container = container;
|
||||||
this.tags = tags;
|
this.tags = tags;
|
||||||
this.attr = attr;
|
this.attr = attr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
FormDeflater.prototype = {
|
FormDeflater.prototype = {
|
||||||
container: this.container, // Contiendra le 'formulaire' (<form> ou autre)
|
container: this.container, // Contiendra le 'formulaire' (<form> ou autre)
|
||||||
tags: this.tags, // Contiendra les balises HTML à ne pas prendre en compte
|
tags: this.tags, // Contiendra les balises HTML à ne pas prendre en compte
|
||||||
attr: this.attr // Contiendra la liste des attributs à prendre pour nom (par ordre de priorité)
|
attr: this.attr // Contiendra la liste des attributs à prendre pour nom (par ordre de priorité)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -46,66 +46,66 @@ FormDeflater.prototype = {
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
FormDeflater.prototype.deflate = function(){
|
FormDeflater.prototype.deflate = function(){
|
||||||
/* [1] On récupère tous les enfants
|
/* [1] On récupère tous les enfants
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
var children = this.getChildren( this.container );
|
var children = this.getChildren( this.container );
|
||||||
|
|
||||||
/* [2] On filtre les éléments qui ont pas le bon tag
|
/* [2] On filtre les éléments qui ont pas le bon tag
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
children = this.filterElements( children );
|
children = this.filterElements( children );
|
||||||
|
|
||||||
|
|
||||||
/* [3] On essaie de trouver les attributs primants (non vides et en premier dans la liste @this.attr)
|
/* [3] On essaie de trouver les attributs primants (non vides et en premier dans la liste @this.attr)
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
/* (0) On initialise l'objet de retour */
|
/* (0) On initialise l'objet de retour */
|
||||||
var object = {};
|
var object = {};
|
||||||
|
|
||||||
/* (1) Pour chacun des éléments */
|
/* (1) Pour chacun des éléments */
|
||||||
for( var c = 0 ; c < children.length ; c++ ){
|
for( var c = 0 ; c < children.length ; c++ ){
|
||||||
|
|
||||||
/* (2) Pour chacun des attributs par ordre de priorité */
|
/* (2) Pour chacun des attributs par ordre de priorité */
|
||||||
for( var a = 0 ; a < this.attr.length ; a++ ){
|
for( var a = 0 ; a < this.attr.length ; a++ ){
|
||||||
// On récupère l'attribut
|
// On récupère l'attribut
|
||||||
var attr = children[c].getAttribute(this.attr[a]);
|
var attr = children[c].getAttribute(this.attr[a]);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* (3) Si l'attribut est défini (pas null ni vide) */
|
/* (3) Si l'attribut est défini (pas null ni vide) */
|
||||||
if( attr !== null && attr.length > 0 ){
|
if( attr !== null && attr.length > 0 ){
|
||||||
|
|
||||||
/* (4) Si on a pas déja un champ de même nom */
|
/* (4) Si on a pas déja un champ de même nom */
|
||||||
if( object.hasOwnProperty(attr) ){
|
if( object.hasOwnProperty(attr) ){
|
||||||
var existing = object[attr];
|
var existing = object[attr];
|
||||||
|
|
||||||
// {1} Si l'existant est un tableau, on ajoute notre valeur //
|
// {1} Si l'existant est un tableau, on ajoute notre valeur //
|
||||||
if( existing instanceof Array )
|
if( existing instanceof Array )
|
||||||
object[attr].push( { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked } );
|
object[attr].push( { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked } );
|
||||||
|
|
||||||
// {2} Sinon, si c'est une valeur seule, on crée un tableau //
|
// {2} Sinon, si c'est une valeur seule, on crée un tableau //
|
||||||
else
|
else
|
||||||
object[attr] = [ object[attr], { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked } ];
|
object[attr] = [ object[attr], { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked } ];
|
||||||
|
|
||||||
/* (5) Si c'est le premier champ avec ce nom, on le crée */
|
/* (5) Si c'est le premier champ avec ce nom, on le crée */
|
||||||
}else
|
}else
|
||||||
object[attr] = { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked };
|
object[attr] = { target: children[c], attr: this.attr[a], value: children[c].value, checked: children[c].checked };
|
||||||
|
|
||||||
// On en a fini pour cet élément
|
// On en a fini pour cet élément
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* [4] On met en forme les données
|
/* [4] On met en forme les données
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
object = this.cleanOutput(object);
|
object = this.cleanOutput(object);
|
||||||
|
|
||||||
|
|
||||||
return object;
|
return object;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -119,13 +119,13 @@ FormDeflater.prototype.deflate = function(){
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
FormDeflater.prototype.checkable = function(element){
|
FormDeflater.prototype.checkable = function(element){
|
||||||
if( element.tagName != 'INPUT' )
|
if( element.tagName != 'INPUT' )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if( ['radio', 'checkbox'].indexOf( element.getAttribute('type').toLowerCase() ) == -1 )
|
if( ['radio', 'checkbox'].indexOf( element.getAttribute('type').toLowerCase() ) == -1 )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -139,68 +139,68 @@ FormDeflater.prototype.checkable = function(element){
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
FormDeflater.prototype.cleanOutput = function(input){
|
FormDeflater.prototype.cleanOutput = function(input){
|
||||||
var output = {};
|
var output = {};
|
||||||
|
|
||||||
/* [1] On parcourt toutes les valeurs récupérées
|
/* [1] On parcourt toutes les valeurs récupérées
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
for( var key in input ){
|
for( var key in input ){
|
||||||
|
|
||||||
/* [2] Si c'est un tableau
|
/* [2] Si c'est un tableau
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
if( input[key] instanceof Array ){
|
if( input[key] instanceof Array ){
|
||||||
|
|
||||||
// VRAI si tous les éléments sont radio/checkbox
|
// VRAI si tous les éléments sont radio/checkbox
|
||||||
var areCheckable = true;
|
var areCheckable = true;
|
||||||
// Contiendra les indices des valeurs ou 'checked=TRUE'
|
// Contiendra les indices des valeurs ou 'checked=TRUE'
|
||||||
var checkedIndexes = [];
|
var checkedIndexes = [];
|
||||||
|
|
||||||
/* (1) On vérifie si tous les champs sont checkables */
|
/* (1) On vérifie si tous les champs sont checkables */
|
||||||
for( var i in input[key])
|
for( var i in input[key])
|
||||||
// si pas checkable, on arrête de vérifier
|
// si pas checkable, on arrête de vérifier
|
||||||
if( !this.checkable(input[key][i].target) ){
|
if( !this.checkable(input[key][i].target) ){
|
||||||
areCheckable = false;
|
areCheckable = false;
|
||||||
break;
|
break;
|
||||||
// Sinon si checkable et checked=TRUE, on incrémente @nbChecked
|
// Sinon si checkable et checked=TRUE, on incrémente @nbChecked
|
||||||
}else if( input[key][i].checked === true )
|
}else if( input[key][i].checked === true )
|
||||||
checkedIndexes.push(i);
|
checkedIndexes.push(i);
|
||||||
|
|
||||||
/* (2) Si c'est que des radio ou des checkbox avec une seule valeur à TRUE */
|
/* (2) Si c'est que des radio ou des checkbox avec une seule valeur à TRUE */
|
||||||
if( areCheckable )
|
if( areCheckable )
|
||||||
if( checkedIndexes.length == 1 )
|
if( checkedIndexes.length == 1 )
|
||||||
output[key] = input[key][checkedIndexes[0]].value;
|
output[key] = input[key][checkedIndexes[0]].value;
|
||||||
|
|
||||||
/* (3) Si c'est que des radio ou des checkbox avec plusieurs valeurs à TRUE */
|
/* (3) Si c'est que des radio ou des checkbox avec plusieurs valeurs à TRUE */
|
||||||
else{
|
else{
|
||||||
output[key] = [];
|
output[key] = [];
|
||||||
for( var i in checkedIndexes )
|
for( var i in checkedIndexes )
|
||||||
output[key].push( input[key][checkedIndexes[i]].value );
|
output[key].push( input[key][checkedIndexes[i]].value );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (4) Si c'est pas que des radio ou des checkbox, on met les valeurs */
|
/* (4) Si c'est pas que des radio ou des checkbox, on met les valeurs */
|
||||||
else{
|
else{
|
||||||
output[key] = [];
|
output[key] = [];
|
||||||
for( var i in input[key] )
|
for( var i in input[key] )
|
||||||
output[key].push( input[key][i].value );
|
output[key].push( input[key][i].value );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* [3] S'il n'y a qu'une donnée (pas un tableau)
|
/* [3] S'il n'y a qu'une donnée (pas un tableau)
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
}else{
|
}else{
|
||||||
|
|
||||||
/* (1) Si de type 'radio' ou 'checkbox', on met la valeur de 'checked' */
|
/* (1) Si de type 'radio' ou 'checkbox', on met la valeur de 'checked' */
|
||||||
if( this.checkable(input[key].target) )
|
if( this.checkable(input[key].target) )
|
||||||
output[key] = input[key].checked ? input[key].value : null;
|
output[key] = input[key].checked ? input[key].value : null;
|
||||||
|
|
||||||
/* (2) Sinon, on met la valeur de 'value' */
|
/* (2) Sinon, on met la valeur de 'value' */
|
||||||
else
|
else
|
||||||
output[key] = input[key].value;
|
output[key] = input[key].value;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return output;
|
return output;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -217,27 +217,27 @@ FormDeflater.prototype.cleanOutput = function(input){
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
FormDeflater.prototype.getChildren = function(parent){
|
FormDeflater.prototype.getChildren = function(parent){
|
||||||
// Si le parent n'est pas un élément, on retourne aucun enfant
|
// Si le parent n'est pas un élément, on retourne aucun enfant
|
||||||
if( !(parent instanceof Element) ) return [];
|
if( !(parent instanceof Element) ) return [];
|
||||||
|
|
||||||
/* [1] Initialisation des variables
|
/* [1] Initialisation des variables
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// Contient la liste des enfants directs
|
// Contient la liste des enfants directs
|
||||||
var children = [].slice.call(parent.children);
|
var children = [].slice.call(parent.children);
|
||||||
|
|
||||||
// Contiendra la liste des enfants directs et indirects
|
// Contiendra la liste des enfants directs et indirects
|
||||||
var allChildren = children;
|
var allChildren = children;
|
||||||
|
|
||||||
/* [2] On parcourt tous les enfants
|
/* [2] On parcourt tous les enfants
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
for( var i = 0 ; i < children.length ; i++ ){
|
for( var i = 0 ; i < children.length ; i++ ){
|
||||||
// On relance la fonction récursivement sur tous les enfants
|
// On relance la fonction récursivement sur tous les enfants
|
||||||
allChildren = allChildren.concat( [].slice.call(this.getChildren(children[i])) );
|
allChildren = allChildren.concat( [].slice.call(this.getChildren(children[i])) );
|
||||||
}
|
}
|
||||||
|
|
||||||
/* [3] On retourne le résultat
|
/* [3] On retourne le résultat
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
return allChildren;
|
return allChildren;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -251,19 +251,19 @@ FormDeflater.prototype.getChildren = function(parent){
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
FormDeflater.prototype.filterElements = function(elements){
|
FormDeflater.prototype.filterElements = function(elements){
|
||||||
// Contiendra les éléments correspondants aux critères
|
// Contiendra les éléments correspondants aux critères
|
||||||
var filtered = [];
|
var filtered = [];
|
||||||
|
|
||||||
/* [1] On parcourt tous les éléments
|
/* [1] On parcourt tous les éléments
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
for( var i = 0 ; i < elements.length ; i++ )
|
for( var i = 0 ; i < elements.length ; i++ )
|
||||||
// Si l'élément a le bon tag, on le garde
|
// Si l'élément a le bon tag, on le garde
|
||||||
if( this.tags.indexOf( elements[i].tagName.toLowerCase() ) > -1 )
|
if( this.tags.indexOf( elements[i].tagName.toLowerCase() ) > -1 )
|
||||||
filtered.push(elements[i]);
|
filtered.push(elements[i]);
|
||||||
|
|
||||||
/* [2] On retourne les éléments filtrés
|
/* [2] On retourne les éléments filtrés
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
return filtered;
|
return filtered;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -7,8 +7,8 @@
|
||||||
|
|
||||||
/* ATTRIBUTS STATIQUES */
|
/* ATTRIBUTS STATIQUES */
|
||||||
public static $config_path = array(
|
public static $config_path = array(
|
||||||
'local' => 'f/json/database-local/conf',
|
'local' => __ROOT__.'/config/database-local.json',
|
||||||
'remote' => 'f/json/database/conf'
|
'remote' => __ROOT__.'/config/database.json'
|
||||||
);
|
);
|
||||||
|
|
||||||
private static $pdo;
|
private static $pdo;
|
||||||
|
@ -49,9 +49,9 @@
|
||||||
|
|
||||||
// chargement de la configuration du server SQL
|
// chargement de la configuration du server SQL
|
||||||
if( !checkdnsrr($_SERVER['SERVER_NAME'], 'NS') )
|
if( !checkdnsrr($_SERVER['SERVER_NAME'], 'NS') )
|
||||||
$conf = json_decode( ResourceDispatcher::getResource(self::$config_path['local']), true );
|
$conf = json_decode( file_get_contents(self::$config_path['local']), true );
|
||||||
else
|
else
|
||||||
$conf = json_decode( ResourceDispatcher::getResource(self::$config_path['remote']), true );
|
$conf = json_decode( file_get_contents(self::$config_path['remote']), true );
|
||||||
|
|
||||||
// creation de l'instance en fonction des parametres
|
// creation de l'instance en fonction des parametres
|
||||||
self::$instance = new DataBase($conf['host'], $conf['dbname'], $conf['user'], $conf['password']);
|
self::$instance = new DataBase($conf['host'], $conf['dbname'], $conf['user'], $conf['password']);
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace manager;
|
namespace manager;
|
||||||
|
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
|
|
||||||
|
|
||||||
class MenuManager{
|
class MenuManager{
|
||||||
|
|
||||||
// Constantes
|
// Constantes
|
||||||
public static $config_path = 'f/json/menu/conf';
|
public static $config_path = __ROOT__.'/config/menu.json';
|
||||||
|
|
||||||
|
|
||||||
// Attributs prives utiles (initialisation)
|
// Attributs prives utiles (initialisation)
|
||||||
|
@ -28,8 +27,8 @@
|
||||||
/* [0] On met a jour la configuration
|
/* [0] On met a jour la configuration
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// Categories specifiees
|
// Categories specifiees
|
||||||
$this->categories = json_decode( ResourceDispatcher::getResource(self::$config_path), true );
|
$this->categories = json_decode( file_get_contents(self::$config_path), true );
|
||||||
|
|
||||||
// Gestion de l'erreur de parsage
|
// Gestion de l'erreur de parsage
|
||||||
if( $this->categories == null ){
|
if( $this->categories == null ){
|
||||||
$this->error = ManagerError::ParsingFailed;
|
$this->error = ManagerError::ParsingFailed;
|
||||||
|
@ -69,15 +68,15 @@
|
||||||
foreach($this->categories as $category){
|
foreach($this->categories as $category){
|
||||||
// On met les attributs
|
// On met les attributs
|
||||||
$render .= '<span'.$this->parseAttributes($category['attributes']).'>';
|
$render .= '<span'.$this->parseAttributes($category['attributes']).'>';
|
||||||
|
|
||||||
// On met l'icone associee
|
// On met l'icone associee
|
||||||
if( isset($category['icon']) )
|
if( isset($category['icon']) )
|
||||||
$render .= ResourceDispatcher::getResource($category['icon']);
|
$render .= file_get_contents(__ROOT__.$category['icon']);
|
||||||
|
|
||||||
// On met le texte de la categorie
|
// On met le texte de la categorie
|
||||||
if( isset($category['text']) )
|
if( isset($category['text']) )
|
||||||
$render .= $category['text'];
|
$render .= $category['text'];
|
||||||
|
|
||||||
// On ferme la balise
|
// On ferme la balise
|
||||||
$render .= '</span>';
|
$render .= '</span>';
|
||||||
|
|
||||||
|
@ -97,7 +96,7 @@
|
||||||
// On ferme la liste des sous-parties
|
// On ferme la liste des sous-parties
|
||||||
$render .= "</div>";
|
$render .= "</div>";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -120,7 +119,7 @@
|
||||||
|
|
||||||
|
|
||||||
/* [3] On retourne la liste des categories
|
/* [3] On retourne la liste des categories
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
return $views;
|
return $views;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,7 +140,7 @@
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
foreach($this->categories as $a=>$category){
|
foreach($this->categories as $a=>$category){
|
||||||
// Contiendra les sous-parties dont on a acces
|
// Contiendra les sous-parties dont on a acces
|
||||||
$access_children = array();
|
$access_children = array();
|
||||||
|
|
||||||
/* [2] Pour chaque sous-partie
|
/* [2] Pour chaque sous-partie
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
|
@ -238,4 +237,4 @@
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
class ModuleRequest{
|
class ModuleRequest{
|
||||||
|
|
||||||
// Constantes
|
// Constantes
|
||||||
public static $config_path = 'f/json/modules/conf';
|
public static $config_path = __ROOT__.'/config/modules.json';
|
||||||
public static $default_options = array(
|
public static $default_options = array(
|
||||||
'download' => false
|
'download' => false
|
||||||
);
|
);
|
||||||
|
@ -47,7 +47,7 @@
|
||||||
/* [0] On met a jour la configuration
|
/* [0] On met a jour la configuration
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// Modules specifies
|
// Modules specifies
|
||||||
$this->modules = json_decode( ResourceDispatcher::getResource(self::$config_path), true );
|
$this->modules = json_decode( file_get_contents(self::$config_path), true );
|
||||||
|
|
||||||
// Gestion de l'erreur de parsage
|
// Gestion de l'erreur de parsage
|
||||||
if( $this->modules == null ){
|
if( $this->modules == null ){
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
class Repo{
|
class Repo{
|
||||||
|
|
||||||
// Constantes
|
// Constantes
|
||||||
public static $config_path = 'f/json/repositories/conf';
|
public static $config_path = __ROOT__.'/config/repositories.json';
|
||||||
|
|
||||||
|
|
||||||
// Attributs prives utiles (initialisation)
|
// Attributs prives utiles (initialisation)
|
||||||
|
@ -53,7 +53,7 @@
|
||||||
/* [0] On met a jour la configuration
|
/* [0] On met a jour la configuration
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// Modules specifies
|
// Modules specifies
|
||||||
$this->repositories = json_decode( ResourceDispatcher::getResource(self::$config_path), true );
|
$this->repositories = json_decode( file_get_contents(self::$config_path), true );
|
||||||
|
|
||||||
// Gestion de l'erreur de parsage
|
// Gestion de l'erreur de parsage
|
||||||
if( $this->repositories == null ){
|
if( $this->repositories == null ){
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
namespace manager\module;
|
namespace manager\module;
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
|
|
||||||
|
@ -25,7 +24,7 @@
|
||||||
/* [0] On récupère dans la config le chemin du fichier
|
/* [0] On récupère dans la config le chemin du fichier
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
/* (1) On récupère le fichier */
|
/* (1) On récupère le fichier */
|
||||||
$uploadAuth = ResourceDispatcher::getResource('f/json/upload-auth/conf');
|
$uploadAuth = file_get_contents(__ROOT__.'/config/upload-auth.json');
|
||||||
|
|
||||||
/* (2) Si une erreur pour le fichier de conf */
|
/* (2) Si une erreur pour le fichier de conf */
|
||||||
if( $uploadAuth === false )
|
if( $uploadAuth === false )
|
||||||
|
@ -47,7 +46,7 @@
|
||||||
/* [1] On récupère le dictionnaire des valeurs
|
/* [1] On récupère le dictionnaire des valeurs
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
/* (1) On récupère le fichier */
|
/* (1) On récupère le fichier */
|
||||||
$dict = ResourceDispatcher::getResource('f/json/dictionary/dy');
|
$dict = file_get_contents(__ROOT__.'/src/dynamic/dictionary.json');
|
||||||
|
|
||||||
/* (2) Si une erreur pour le fichier de conf */
|
/* (2) Si une erreur pour le fichier de conf */
|
||||||
if( $dict === false )
|
if( $dict === false )
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
namespace manager\module;
|
namespace manager\module;
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\lightdb;
|
use \manager\lightdb;
|
||||||
|
|
||||||
|
|
||||||
|
@ -18,7 +17,7 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static function loadDictionary(){
|
private static function loadDictionary(){
|
||||||
$dict = ResourceDispatcher::getResource('f/json/dictionary/dy');
|
$dict = file_get_contents(__ROOT__.'/src/dynamic/dictionary.json');
|
||||||
|
|
||||||
$dict = json_decode( $dict, true );
|
$dict = json_decode( $dict, true );
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
namespace manager\module;
|
namespace manager\module;
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
|
@ -151,7 +150,7 @@
|
||||||
|
|
||||||
/* [0] On récupère le dictionnaire
|
/* [0] On récupère le dictionnaire
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$dict = ResourceDispatcher::getResource('f/json/dictionary/dy');
|
$dict = file_get_contents(__ROOT__.'/src/dynamic/dictionary.json');
|
||||||
|
|
||||||
/* (2) Si une erreur pour le fichier de conf */
|
/* (2) Si une erreur pour le fichier de conf */
|
||||||
if( $dict === false )
|
if( $dict === false )
|
||||||
|
@ -373,7 +372,7 @@
|
||||||
|
|
||||||
/* [0] On récupère le dictionnaire
|
/* [0] On récupère le dictionnaire
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
$dict = ResourceDispatcher::getResource('f/json/dictionary/dy');
|
$dict = file_get_contents(__ROOT__.'/src/dynamic/dictionary.json');
|
||||||
|
|
||||||
/* (2) Si une erreur pour le fichier de conf */
|
/* (2) Si une erreur pour le fichier de conf */
|
||||||
if( $dict === false )
|
if( $dict === false )
|
||||||
|
@ -597,6 +596,42 @@
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* RENVOIE LE CONTENU DU MENU
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public static function menu($params){
|
||||||
|
extract($params);
|
||||||
|
|
||||||
|
$menu_json = json_decode( file_get_contents(__ROOT__.'/config/menu.json'), true );
|
||||||
|
|
||||||
|
// si erreur
|
||||||
|
if( $menu_json == null )
|
||||||
|
return ['ModuleError' => ManagerError::ParsingFailed];
|
||||||
|
|
||||||
|
// si tout bon
|
||||||
|
return [
|
||||||
|
'ModuleError' => ManagerError::Success,
|
||||||
|
'menu' => $menu_json
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
namespace manager\module;
|
namespace manager\module;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
|
|
||||||
class module{
|
class module{
|
||||||
|
|
||||||
|
@ -41,7 +40,7 @@
|
||||||
/* [1] Récupération de la configuration
|
/* [1] Récupération de la configuration
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// On récupère le fichier et on le parse
|
// On récupère le fichier et on le parse
|
||||||
$modules = json_decode( ResourceDispatcher::getResource('f/json/modules/conf'), true );
|
$modules = json_decode( file_get_contents(__ROOT__.'/config/modules.json'), true );
|
||||||
|
|
||||||
// Gestion de l'erreur de parsage
|
// Gestion de l'erreur de parsage
|
||||||
if( $modules == null )
|
if( $modules == null )
|
||||||
|
@ -97,7 +96,7 @@
|
||||||
/* [0] Récupération de la configuration
|
/* [0] Récupération de la configuration
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
// On récupère le fichier et on le parse
|
// On récupère le fichier et on le parse
|
||||||
$modules = json_decode( ResourceDispatcher::getResource('f/json/modules/conf'), true );
|
$modules = json_decode( file_get_contents(__ROOT__.'/config/modules.json'), true );
|
||||||
|
|
||||||
// Gestion de l'erreur de parsage
|
// Gestion de l'erreur de parsage
|
||||||
if( $modules == null )
|
if( $modules == null )
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
|
|
||||||
namespace manager\module;
|
namespace manager\module;
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
|
@ -26,7 +25,7 @@
|
||||||
/* [1] Chargement du fichier de config
|
/* [1] Chargement du fichier de config
|
||||||
=========================================================*/
|
=========================================================*/
|
||||||
/* (1) On récupère le fichier */
|
/* (1) On récupère le fichier */
|
||||||
$uploadAuth = ResourceDispatcher::getResource('f/json/upload-auth/conf');
|
$uploadAuth = file_get_contents(__ROOT__.'/config/upload-auth.json');
|
||||||
|
|
||||||
/* (2) Si une erreur pour le fichier de conf */
|
/* (2) Si une erreur pour le fichier de conf */
|
||||||
if( $uploadAuth === false )
|
if( $uploadAuth === false )
|
||||||
|
|
51
view.php
51
view.php
|
@ -1,5 +1,4 @@
|
||||||
<?php use \manager\ResourceDispatcher;
|
<?php use \manager\MenuManager; ?>
|
||||||
use \manager\MenuManager; ?>
|
|
||||||
|
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
|
@ -14,36 +13,36 @@
|
||||||
<meta name='description' content="Tableau de bord pour une enquete sociologique sur les liens sociaux entre les reseaux sociaux et la vie hors-ligne">
|
<meta name='description' content="Tableau de bord pour une enquete sociologique sur les liens sociaux entre les reseaux sociaux et la vie hors-ligne">
|
||||||
|
|
||||||
<!-- Dépendences CSS -->
|
<!-- Dépendences CSS -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/reset' /> <!-- Reset du css natif des browsers -->
|
<link type='text/css' rel='stylesheet' href='/css/reset/min.css' /> <!-- Reset du css natif des browsers -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/font' /> <!-- Positionnement global des pages -->
|
<link type='text/css' rel='stylesheet' href='/css/font/min.css' /> <!-- Positionnement global des pages -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/layout' /> <!-- Positionnement global des pages -->
|
<link type='text/css' rel='stylesheet' href='/css/layout/min.css' /> <!-- Positionnement global des pages -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/header' /> <!-- Gestion du header -->
|
<link type='text/css' rel='stylesheet' href='/css/header/min.css' /> <!-- Gestion du header -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/menu-side' /> <!-- Gestion du menu -->
|
<link type='text/css' rel='stylesheet' href='/css/menu-side/min.css' /> <!-- Gestion du menu -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/container' /> <!-- Gestion du container -->
|
<link type='text/css' rel='stylesheet' href='/css/container/min.css' /> <!-- Gestion du container -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/global' /> <!-- Style global -->
|
<link type='text/css' rel='stylesheet' href='/css/global/min.css' /> <!-- Style global -->
|
||||||
<link type='text/css' rel='stylesheet' href='/f/css/min/css/notif' /> <!-- Inclusion du system de notifs -->
|
<link type='text/css' rel='stylesheet' href='/css/notif/min.css' /> <!-- Inclusion du system de notifs -->
|
||||||
|
|
||||||
|
|
||||||
<!-- Dépendences Javascript -->
|
<!-- Dépendences Javascript -->
|
||||||
<script type='text/javascript' src='/f/js/crc32-min/js/lib' ></script> <!-- Système de hash unique et rapide -->
|
<script type='text/javascript' src='/js/lib/crc32-min.js' ></script> <!-- Système de hash unique et rapide -->
|
||||||
<script type='text/javascript' src='/f/js/local-storage-interface-min/js/lib' ></script> <!-- Interface de gestion du 'localStorage' -->
|
<script type='text/javascript' src='/js/lib/local-storage-interface-min.js' ></script> <!-- Interface de gestion du 'localStorage' -->
|
||||||
<script type='text/javascript' src='/f/js/html-builder-min/js/lib' ></script> <!-- Gestion de construction de HTML -->
|
<script type='text/javascript' src='/js/lib/html-builder-min.js' ></script> <!-- Gestion de construction de HTML -->
|
||||||
<script type='text/javascript' src='/f/js/input-checker-min/js/lib' ></script> <!-- Gestion dynamique des saisies -->
|
<script type='text/javascript' src='/js/lib/input-checker-min.js' ></script> <!-- Gestion dynamique des saisies -->
|
||||||
<script type='text/javascript' src='/f/js/form-deflater-min/js/lib' ></script> <!-- Gestion des formulaires js-friendly -->
|
<script type='text/javascript' src='/js/lib/form-deflater-min.js' ></script> <!-- Gestion des formulaires js-friendly -->
|
||||||
<script type='text/javascript' src='/f/js/reset-min/js/lib' ></script> <!-- Corrections Javascript natif (ajouts) -->
|
<script type='text/javascript' src='/js/lib/reset-min.js' ></script> <!-- Corrections Javascript natif (ajouts) -->
|
||||||
<script type='text/javascript' src='/f/js/api-min/js/lib' ></script> <!-- Gestion des transactions avec le serveur -->
|
<script type='text/javascript' src='/js/lib/api-min.js' ></script> <!-- Gestion des transactions avec le serveur -->
|
||||||
<script type='text/javascript' src='/f/js/page-manager-min/js/lib' ></script> <!-- Gestion réseau/chargement/liens/URL -->
|
<script type='text/javascript' src='/js/lib/page-manager-min.js' ></script> <!-- Gestion réseau/chargement/liens/URL -->
|
||||||
<script type='text/javascript' src='/f/js/notif-min/js/lib' ></script> <!-- Gestion des notifications -->
|
<script type='text/javascript' src='/js/lib/notif-min.js' ></script> <!-- Gestion des notifications -->
|
||||||
<script type='text/javascript' src='/f/js/shortcut-manager/js/lib' ></script> <!-- Gestion des raccourcis clavier -->
|
<script type='text/javascript' src='/js/lib/shortcut-manager.js' ></script> <!-- Gestion des raccourcis clavier -->
|
||||||
|
|
||||||
<!-- Dépendences Spéficiques pré-chargeables -->
|
<!-- Dépendences Spéficiques pré-chargeables -->
|
||||||
<script type='text/javascript' src='/f/js/input-html-phone-data-min/js/includes' ></script> <!-- Gestion du constructeur HTML pour la page d'acquisition 'phone' -->
|
<script type='text/javascript' src='/js/includes/input-html-phone-data-min.js' ></script> <!-- Gestion du constructeur HTML pour la page d'acquisition 'phone' -->
|
||||||
<script type='text/javascript' src='/f/js/input-html-facebook-data-min/js/includes' ></script> <!-- Gestion du constructeur HTML pour la page d'acquisition 'facebook' -->
|
<script type='text/javascript' src='/js/includes/input-html-facebook-data-min.js' ></script> <!-- Gestion du constructeur HTML pour la page d'acquisition 'facebook' -->
|
||||||
|
|
||||||
<!-- Librairies Externes Javascript -->
|
<!-- Librairies Externes Javascript -->
|
||||||
<script type='text/javascript' src='/f/js/highcharts/highcharts' ></script> <!-- Librairie pour les graphiques -->
|
<script type='text/javascript' src='/js/lib/highcharts/js/highcharts.js' ></script> <!-- Librairie pour les graphiques -->
|
||||||
<script type='text/javascript' src='/f/js/exporting/highcharts/modules' ></script> <!-- Librairie pour les graphiques -->
|
<script type='text/javascript' src='/js/highcharts/js/modules/exporting.js' ></script> <!-- Librairie pour les graphiques -->
|
||||||
<script type='text/javascript' src='/f/js/_charts-min/js/lib' ></script> <!-- Librairie pour les graphiques -->
|
<script type='text/javascript' src='/js/lib/_charts-min.js' ></script> <!-- Librairie pour les graphiques -->
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
@ -121,7 +120,7 @@
|
||||||
|
|
||||||
|
|
||||||
<!-- Dépendences Javascript après chargement des éléments -->
|
<!-- Dépendences Javascript après chargement des éléments -->
|
||||||
<script type='text/javascript' src='/f/js/action-script-min/js'></script>
|
<script type='text/javascript' src='/js/action-script-min.js'></script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
@ -22,11 +21,11 @@
|
||||||
<section data-sublink='presentation'>
|
<section data-sublink='presentation'>
|
||||||
|
|
||||||
<center>
|
<center>
|
||||||
<img src='/f/svg/icon/st'/>
|
<img src='/src/static/icon.svg'/>
|
||||||
<img src='/f/svg/sms/st/credits'/>
|
<img src='/src/static/credits/sms.svg'/>
|
||||||
<img src='/f/jpg/cnrs/st/credits'/>
|
<img src='/src/static/credits/cnrs.jpg'/>
|
||||||
<img src='/f/png/univ_midi/st/credits'/>
|
<img src='/src/static/credits/univ_midi.png'/>
|
||||||
<img src='/f/png/ut2/st/credits'/>
|
<img src='/src/static/credits/ut2.png'/>
|
||||||
</center>
|
</center>
|
||||||
|
|
||||||
<p>Bienvenue sur la Web Application dévéloppée par des chercheurs du CNRS appartenant au LabEx SMS (Structuration des Mondes Sociaux) de l'université de Toulouse.</p>
|
<p>Bienvenue sur la Web Application dévéloppée par des chercheurs du CNRS appartenant au LabEx SMS (Structuration des Mondes Sociaux) de l'université de Toulouse.</p>
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
|
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\sessionManager;
|
use \manager\sessionManager;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
require_once __ROOT__.'/manager/autoloader.php';
|
require_once __ROOT__.'/manager/autoloader.php';
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
debug();
|
debug();
|
||||||
?>
|
?>
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
use \manager\Repo;
|
use \manager\Repo;
|
||||||
use \manager\ModuleRequest;
|
use \manager\ModuleRequest;
|
||||||
use \manager\ManagerError;
|
use \manager\ManagerError;
|
||||||
use \manager\ResourceDispatcher;
|
|
||||||
use \manager\Database;
|
use \manager\Database;
|
||||||
|
|
||||||
debug();
|
debug();
|
||||||
|
@ -60,11 +59,11 @@ if( permission('admin') ){
|
||||||
|
|
||||||
|
|
||||||
echo "<div>";
|
echo "<div>";
|
||||||
echo "<span>".$token['name']."</span>";
|
echo "<span>".$token['name']."</span>";
|
||||||
echo "<span data-prefix='Expiration'>".Database::frDate($token['expires'])."</span>";
|
echo "<span data-prefix='Expiration'>".Database::frDate($token['expires'])."</span>";
|
||||||
echo "</div><div>";
|
echo "</div><div>";
|
||||||
echo "<span><span class='flag'>".$token['token']."</span></span>";
|
echo "<span><span class='flag'>".$token['token']."</span></span>";
|
||||||
echo "</div>";
|
echo "</div>";
|
||||||
|
|
||||||
echo "<button class='remove-token'>Supprimer</button>";
|
echo "<button class='remove-token'>Supprimer</button>";
|
||||||
echo "</li>";
|
echo "</li>";
|
||||||
|
@ -138,9 +137,9 @@ if( permission('admin') ){
|
||||||
|
|
||||||
|
|
||||||
echo "<div>";
|
echo "<div>";
|
||||||
echo "<span data-prefix='Identifiant'>".$user['login']."</span>";
|
echo "<span data-prefix='Identifiant'>".$user['login']."</span>";
|
||||||
echo "<span data-prefix='Adresse mail'>".$user['mail']."</span>";
|
echo "<span data-prefix='Adresse mail'>".$user['mail']."</span>";
|
||||||
echo "</div>";
|
echo "</div>";
|
||||||
|
|
||||||
echo "<button class='remove-user'>Supprimer</button>";
|
echo "<button class='remove-user'>Supprimer</button>";
|
||||||
echo "</li>";
|
echo "</li>";
|
||||||
|
|
Loading…
Reference in New Issue