'extension' renamed to 'option' + showed in machine_cluster lists (machine/groups + groups/view) + module in term of design / option in term of user explanation

This commit is contained in:
xdrm-brackets 2017-09-23 19:40:37 +02:00
parent fd7bc472ec
commit 9fe1bf3072
17 changed files with 225 additions and 148 deletions

View File

@ -1,72 +0,0 @@
<?php
namespace viewer\view\extension;
use \viewer\core\Viewer;
use \api\core\Request;
use \api\core\Authentification;
use \error\core\Error;
use \error\core\Err;
class view{
public static function render(){
/* [1] Init Twig
=========================================================*/
$loader = new \Twig_Loader_Filesystem(__BUILD__.'/viewer/view');
$twig = new \Twig_Environment($loader, []);
/* [2] Store variables
=========================================================*/
$variables = [
'p_icon' => [
'group' => file_get_contents( __PUBLIC__.'/src/static/container/extension.svg' )
],
'p_theme' => $_SESSION['WAREHOUSE']['theme']
];
/* [3] Store functions
=========================================================*/
$twig->addFunction(new \Twig_Function('f_clusters', function(){
$request = new Request('clusterDefault/getAll', [
'class' => 1
]);
$answer = $request->dispatch();
// si erreur, on affiche rien par défaut
if( $answer->error->get() != Err::Success )
return [];
return $answer->get('clusters');
}));
$twig->addFunction(new \Twig_Function('f_modules', function($id_cluster){
$extReq = new Request('clusterDefault/getModules', [
'id_cluster' => (int) $id_cluster
]);
$extRes = $extReq->dispatch();
// si erreur, on affiche rien par défaut
if( $extRes->error->get() != Err::Success )
return [];
return $extRes->get('modules');
}));
/* [4] Build the whole stuff
=========================================================*/
return $twig->render('extension/view.twig', [
'p_icon' => $variables['p_icon'],
'p_theme' => $variables['p_theme']
]);
}
}
?>

View File

@ -1,42 +0,0 @@
<input type='text' class='searchbar' placeholder='Recherche'>
{% for cluster in f_clusters() %}
<article class='inline-box' id='{{ cluster.id_machine_cluster }}'>
{% set modulelist = f_modules(cluster.id_machine_cluster) %}
<span class='title' style='color: {{ p_theme }}'>{{ cluster.name }}</span>
<span class='link_remove' data-cluster='{{ cluster.id_machine_cluster }}'>{{ p_icon.remove | raw }}</span>
<span class='link_edit' data-cluster='{{ cluster.id_machine_cluster }}'>{{ p_icon.edit | raw }}</span>
<span class='code'>
{{ p_icon.device | raw }}
<span>{{ modulelist | length }} modules</span>
</span>
<span class='groups'>
{{ p_icon.group | raw }}
<span class='ignore'>
{% for module in modulelist %}
<span>
{{ module.name }}
<span class='rem-member' data-module='{{ module.id_module }}' data-cluster='{{ cluster.id_machine_cluster }}'></span>
</span>
{% endfor %}
</span>
<span class='add-member' data-cluster='{{ cluster.id_machine_cluster }}'>+</span>
</span>
</article>
{# if no result #}
{% else %}
<article class='inline-box'>
<span>Aucun groupe trouvé.</span>
</article>
{% endfor %}

View File

@ -21,8 +21,10 @@
'p_icon' => [ 'p_icon' => [
'remove' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/remove.svg' ), 'remove' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/remove.svg' ),
'edit' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/edit.svg' ), 'edit' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/edit.svg' ),
'type' => file_get_contents( __PUBLIC__.'/src/static/menu-side/type.svg' ), 'device' => file_get_contents( __PUBLIC__.'/src/static/menu-side/device.svg' ),
'group' => file_get_contents( __PUBLIC__.'/src/static/container/group.svg' ) 'user' => file_get_contents( __PUBLIC__.'/src/static/menu-side/users.svg' ),
'group' => file_get_contents( __PUBLIC__.'/src/static/container/group.svg' ),
'option' => file_get_contents( __PUBLIC__.'/src/static/container/option.svg' )
], ],
'p_theme' => $_SESSION['WAREHOUSE']['theme'] 'p_theme' => $_SESSION['WAREHOUSE']['theme']
@ -58,6 +60,19 @@
return $membersRes->get('members'); return $membersRes->get('members');
})); }));
$twig->addFunction(new \Twig_Function('f_options', function($id_cluster){
$modReq = new Request('clusterDefault/getModules', [
'id_cluster' => (int) $id_cluster
]);
$modRes = $modReq->dispatch();
// si erreur, on affiche rien par défaut
if( $modRes->error->get() != Err::Success )
return [];
return $modRes->get('modules');
}));
/* [4] Build the whole stuff /* [4] Build the whole stuff
=========================================================*/ =========================================================*/

View File

@ -17,10 +17,11 @@
<span class='link_edit' data-cluster='{{ id_user_cluster }}'>{{ p_icon.edit | raw }}</span> <span class='link_edit' data-cluster='{{ id_user_cluster }}'>{{ p_icon.edit | raw }}</span>
<span class='code'> <span class='code'>
{{ p_icon.type | raw }} {{ p_icon.user | raw }}
<span>{{ memlen }} utilisateur{% if memlen > 1 %}s{% endif %}</span> <span>{{ memlen }} utilisateur{% if memlen > 1 %}s{% endif %}</span>
</span> </span>
<span class='groups'> <span class='groups'>
{{ p_icon.group | raw }} {{ p_icon.group | raw }}
@ -55,10 +56,21 @@
<span class='link_edit' data-cluster='{{ id_machine_cluster }}'>{{ p_icon.edit | raw }}</span> <span class='link_edit' data-cluster='{{ id_machine_cluster }}'>{{ p_icon.edit | raw }}</span>
<span class='code'> <span class='code'>
{{ p_icon.type | raw }} {{ p_icon.device | raw }}
<span>{{ memlen }} machine{% if memlen > 1 %}s{% endif %}</span> <span>{{ memlen }} machine{% if memlen > 1 %}s{% endif %}</span>
</span> </span>
<span class='option'>
{{ p_icon.option | raw }}
{% for option in f_options(id_machine_cluster) %}
<span class='ignore'>
<span>{{ option.name }}</span>
</span>
{% else %}
<span class='ignore'>Aucune option</span>
{% endfor %}
</span>
<span class='groups'> <span class='groups'>
{{ p_icon.group | raw }} {{ p_icon.group | raw }}

View File

@ -23,7 +23,8 @@
'remove' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/remove.svg' ), 'remove' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/remove.svg' ),
'edit' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/edit.svg' ), 'edit' => file_get_contents( __PUBLIC__.'/src/static/sub-menu-side/edit.svg' ),
'device' => file_get_contents( __PUBLIC__.'/src/static/menu-side/device.svg' ), 'device' => file_get_contents( __PUBLIC__.'/src/static/menu-side/device.svg' ),
'group' => file_get_contents( __PUBLIC__.'/src/static/container/group.svg' ) 'group' => file_get_contents( __PUBLIC__.'/src/static/container/group.svg' ),
'option' => file_get_contents( __PUBLIC__.'/src/static/container/option.svg' )
], ],
'p_theme' => $_SESSION['WAREHOUSE']['theme'] 'p_theme' => $_SESSION['WAREHOUSE']['theme']
@ -60,6 +61,19 @@
return $usersRes->get('members'); return $usersRes->get('members');
})); }));
$twig->addFunction(new \Twig_Function('f_options', function($id_cluster){
$modReq = new Request('clusterDefault/getModules', [
'id_cluster' => (int) $id_cluster
]);
$modRes = $modReq->dispatch();
// si erreur, on affiche rien par défaut
if( $modRes->error->get() != Err::Success )
return [];
return $modRes->get('modules');
}));
/* [4] Build the whole stuff /* [4] Build the whole stuff
=========================================================*/ =========================================================*/

View File

@ -15,6 +15,18 @@
<span>{{ machinelist | length }} machines</span> <span>{{ machinelist | length }} machines</span>
</span> </span>
<span class='option'>
{{ p_icon.option | raw }}
{% for option in f_options(cluster.id_machine_cluster) %}
<span class='ignore'>
<span>{{ option.name }}</span>
</span>
{% else %}
<span class='ignore'>Aucune option</span>
{% endfor %}
</span>
<span class='groups'> <span class='groups'>
{{ p_icon.group | raw }} {{ p_icon.group | raw }}

View File

@ -155,6 +155,7 @@
/* (2) Code RFID */ /* (2) Code RFID */
/* (3) Adresse mail */ /* (3) Adresse mail */
.code, .code,
.option,
.mail{ .mail{
display: block; display: block;
margin: 1em; margin: 1em;
@ -191,7 +192,8 @@
/* (4) Groupes */ /* (4) Groupes */
.groups{ .groups,
.option{
display: block; display: block;
margin: 1em; margin: 1em;
color: #333; color: #333;
@ -332,6 +334,10 @@
} }
.option > span.ignore > span{
border-radius: 3px;
}
/* (5) Lien vers la modification */ /* (5) Lien vers la modification */
.link_edit, .link_edit,
.link_remove{ .link_remove{

View File

@ -167,8 +167,10 @@
} }
#WRAPPER > #CONTAINER > section > .inline-box .code, #WRAPPER > #CONTAINER > section > .inline-box .code,
#WRAPPER > #CONTAINER > section > .inline-box .option,
#WRAPPER > #CONTAINER > section > .inline-box .mail, #WRAPPER > #CONTAINER > section > .inline-box .mail,
#WRAPPER > #CONTAINER > section > .inline-row .code, #WRAPPER > #CONTAINER > section > .inline-row .code,
#WRAPPER > #CONTAINER > section > .inline-row .option,
#WRAPPER > #CONTAINER > section > .inline-row .mail { #WRAPPER > #CONTAINER > section > .inline-row .mail {
display: block; display: block;
margin: 1em; margin: 1em;
@ -177,8 +179,10 @@
} }
#WRAPPER > #CONTAINER > section > .inline-box .code svg, #WRAPPER > #CONTAINER > section > .inline-box .code svg,
#WRAPPER > #CONTAINER > section > .inline-box .option svg,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg, #WRAPPER > #CONTAINER > section > .inline-box .mail svg,
#WRAPPER > #CONTAINER > section > .inline-row .code svg, #WRAPPER > #CONTAINER > section > .inline-row .code svg,
#WRAPPER > #CONTAINER > section > .inline-row .option svg,
#WRAPPER > #CONTAINER > section > .inline-row .mail svg { #WRAPPER > #CONTAINER > section > .inline-row .mail svg {
display: inline-block; display: inline-block;
position: relative; position: relative;
@ -191,30 +195,38 @@
} }
#WRAPPER > #CONTAINER > section > .inline-box .code svg path#stylisable, #WRAPPER > #CONTAINER > section > .inline-box .code svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .option svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stylisable, #WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .code svg path#stylisable, #WRAPPER > #CONTAINER > section > .inline-row .code svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .option svg path#stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .mail svg path#stylisable { #WRAPPER > #CONTAINER > section > .inline-row .mail svg path#stylisable {
fill: #333 !important; fill: #333 !important;
pointer-events: none; pointer-events: none;
} }
#WRAPPER > #CONTAINER > section > .inline-box .code svg path#stroke-stylisable, #WRAPPER > #CONTAINER > section > .inline-box .code svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .option svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stroke-stylisable, #WRAPPER > #CONTAINER > section > .inline-box .mail svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .code svg path#stroke-stylisable, #WRAPPER > #CONTAINER > section > .inline-row .code svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .option svg path#stroke-stylisable,
#WRAPPER > #CONTAINER > section > .inline-row .mail svg path#stroke-stylisable { #WRAPPER > #CONTAINER > section > .inline-row .mail svg path#stroke-stylisable {
stroke: #333 !important; stroke: #333 !important;
pointer-events: none; pointer-events: none;
} }
#WRAPPER > #CONTAINER > section > .inline-box .groups, #WRAPPER > #CONTAINER > section > .inline-box .groups,
#WRAPPER > #CONTAINER > section > .inline-row .groups { #WRAPPER > #CONTAINER > section > .inline-box .option,
#WRAPPER > #CONTAINER > section > .inline-row .groups,
#WRAPPER > #CONTAINER > section > .inline-row .option {
display: block; display: block;
margin: 1em; margin: 1em;
color: #333; color: #333;
} }
#WRAPPER > #CONTAINER > section > .inline-box .groups svg, #WRAPPER > #CONTAINER > section > .inline-box .groups svg,
#WRAPPER > #CONTAINER > section > .inline-row .groups svg { #WRAPPER > #CONTAINER > section > .inline-box .option svg,
#WRAPPER > #CONTAINER > section > .inline-row .groups svg,
#WRAPPER > #CONTAINER > section > .inline-row .option svg {
display: inline-block; display: inline-block;
position: relative; position: relative;
margin-left: .5em; margin-left: .5em;
@ -226,15 +238,21 @@
} }
#WRAPPER > #CONTAINER > section > .inline-box .groups svg path, #WRAPPER > #CONTAINER > section > .inline-box .groups svg path,
#WRAPPER > #CONTAINER > section > .inline-row .groups svg path { #WRAPPER > #CONTAINER > section > .inline-box .option svg path,
#WRAPPER > #CONTAINER > section > .inline-row .groups svg path,
#WRAPPER > #CONTAINER > section > .inline-row .option svg path {
fill: #333 !important; fill: #333 !important;
pointer-events: none; pointer-events: none;
} }
#WRAPPER > #CONTAINER > section > .inline-box .groups > span:not(.ignore), #WRAPPER > #CONTAINER > section > .inline-box .groups > span:not(.ignore),
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore),
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore), #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore),
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore),
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span {
display: inline-block; display: inline-block;
position: relative; position: relative;
padding: .1em .5em; padding: .1em .5em;
@ -253,6 +271,14 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-group,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-member,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-extension,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-group,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-member,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-extension,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member,
@ -260,7 +286,15 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-group,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-member,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-extension,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-group,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-member,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-extension {
border-radius: 3px; border-radius: 3px;
cursor: pointer; cursor: pointer;
} }
@ -270,6 +304,14 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-extension > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-extension > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown,
@ -277,7 +319,15 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-extension > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-permission > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-group > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-member > div.dropdown,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-extension > div.dropdown {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
flex-wrap: nowrap; flex-wrap: nowrap;
@ -301,6 +351,14 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-extension > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-extension > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown > span,
@ -308,7 +366,15 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown > span, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown > span { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-extension > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-permission > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-group > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-member > div.dropdown > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-extension > div.dropdown > span {
padding: .5em; padding: .5em;
padding-left: 1em; padding-left: 1em;
flex: 2em 1 1; flex: 2em 1 1;
@ -320,6 +386,14 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span.add-extension > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore).add-extension > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span.add-extension > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore).add-member > div.dropdown > span:hover,
@ -327,7 +401,15 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown > span:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown > span:hover { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span.add-extension > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore).add-extension > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-permission > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-group > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-member > div.dropdown > span:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span.add-extension > div.dropdown > span:hover {
background-color: #F8F8F8; background-color: #F8F8F8;
} }
@ -341,6 +423,16 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-permission, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-member, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-extension, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-extension,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-extension,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-extension,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-group, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-permission,
@ -350,7 +442,17 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-member, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-extension { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-extension,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-extension,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-group,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-member,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-extension {
display: block; display: block;
position: absolute; position: absolute;
top: -1px; top: -1px;
@ -378,6 +480,16 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-permission:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-member:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-extension:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.rem-extension:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.rem-extension:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.rem-extension:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-group:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-permission:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.rem-permission:hover,
@ -387,7 +499,17 @@
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-permission:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-member:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-extension:hover { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.rem-extension:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.rem-extension:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-group:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-member:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.rem-extension:hover {
background-image: url("/src/static/sub-menu-side/remove@d52918.svg"); background-image: url("/src/static/sub-menu-side/remove@d52918.svg");
} }
@ -395,16 +517,29 @@
#WRAPPER > #CONTAINER > section > .inline-box .groups > span:not(.ignore) > span.icon-permission:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.icon-permission, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.icon-permission:hover, #WRAPPER > #CONTAINER > section > .inline-box .groups > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission:hover, #WRAPPER > #CONTAINER > section > .inline-row .groups > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission, #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission:hover { #WRAPPER > #CONTAINER > section > .inline-row .groups > span.ignore > span > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span:not(.ignore) > span.icon-permission:hover,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.icon-permission,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span > span.icon-permission:hover {
border-color: #ddd; border-color: #ddd;
background-color: #eee; background-color: #eee;
cursor: default; cursor: default;
background-image: url("/src/static/sub-menu-side/permission.svg"); background-image: url("/src/static/sub-menu-side/permission.svg");
} }
#WRAPPER > #CONTAINER > section > .inline-box .option > span.ignore > span,
#WRAPPER > #CONTAINER > section > .inline-row .option > span.ignore > span {
border-radius: 3px;
}
#WRAPPER > #CONTAINER > section > .inline-box .link_edit, #WRAPPER > #CONTAINER > section > .inline-box .link_edit,
#WRAPPER > #CONTAINER > section > .inline-box .link_remove, #WRAPPER > #CONTAINER > section > .inline-box .link_remove,
#WRAPPER > #CONTAINER > section > .inline-row .link_edit, #WRAPPER > #CONTAINER > section > .inline-row .link_edit,

View File

@ -92,7 +92,7 @@
// nomPage/arg1/arg2 -> inclusion de la page // nomPage/arg1/arg2 -> inclusion de la page
$R->get('(.*)', function($m){ $R->get('(.*)', function($m){
// Liste des pages du site // Liste des pages du site
$page_list = [ 'history', 'profile', 'machines', 'users', 'groups', 'extensions', 'settings' ]; $page_list = [ 'history', 'profile', 'machines', 'users', 'groups', 'options', 'settings' ];
if( !preg_match('#^(?:'.implode('|', $page_list).')(?:/[\w-]+)*/?$#i', $m[0]) ) if( !preg_match('#^(?:'.implode('|', $page_list).')(?:/[\w-]+)*/?$#i', $m[0]) )

View File

@ -175,7 +175,7 @@ function navMenu(section, persistence){
// init page-manager // init page-manager
pageManager.setPage(null, '/view', DOM.CONTAINER, ['history', 'profile', 'machines', 'users', 'groups', 'extensions', 'settings'] ); pageManager.setPage(null, '/view', DOM.CONTAINER, ['history', 'profile', 'machines', 'users', 'groups', 'options', 'settings'] );
// launch pageManager // launch pageManager
navMenu(pageManager.page); navMenu(pageManager.page);

View File

@ -1 +1 @@
function navSubMenu(e){var a=document.querySelector('#CONTAINER > .sub-menu-side > span[data-sublink="'+pageManager.vars[0]+'"]'),n=null;if(n=e instanceof Element?e:null,n="string"==typeof e?document.querySelector('#CONTAINER > .sub-menu-side > span[data-sublink="'+e+'"]'):n,n=null==n?document.querySelector("#CONTAINER > .sub-menu-side > span[data-sublink]"):n,null==n)return!1;null!=a&&a.remClass("active");for(var t=document.querySelectorAll("#CONTAINER > section[data-sublink].active"),r=0;r<t.length;r++)t[r].remClass("active");if(null!=n){n.addClass("active");var u=document.querySelector('#CONTAINER > section[data-sublink="'+n.getData("sublink")+'"]');null!=u&&u.addClass("active")}if(!n.getData("sublink"))return!1;var l=pageManager.vars[0]!=n.getData("sublink");pageManager.vars[0]=n.getData("sublink"),l&&pageManager.updateURL()}function navMenu(e,a){var n=document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.page+'"]'),t=null;if(t=e instanceof Element?e:null,t="string"==typeof e?document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+e+'"]'):t,t=t||document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.pagelist[0]+'"]'),null==t)return!1;a=a===!0?!0:!1,n&&n.remClass("active"),t&&t.addClass("active");if(a||n==t||(pageManager.vars=[]),t.getData("link")){DOM.HEADER.addClass("loading");var r=function(){var e=pageManager.vars.length>0&&null!=document.querySelector('#CONTAINER > .sub-menu-side > [data-sublink="'+pageManager.vars[0]+'"]');navSubMenu(e?pageManager.vars[0]:null),document.querySelector("#CONTAINER > .sub-menu-side").addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1),DOM.HEADER.remClass("loading")};pageManager.page!=t.getData("link")&&pageManager.setPage(t.getData("link")),pageManager.activeXHR?pageManager.activeXHR.addEventListener("loadend",r,!1):r.call()}}DOM={WRAPPER:$("WRAPPER"),HEADER:$("HEADER"),MENUSIDE:$("MENU-SIDE"),CONTAINER:$("CONTAINER")};var pageManager=new pageManagerClass,api=new APIClass("/api/");pageManager.setPage(null,"/view",DOM.CONTAINER,["history","profile","machines","users","groups","extensions","settings"]),navMenu(pageManager.page),pageManager.refresher=function(){navSubMenu(this.vars[0]),document.querySelector("#CONTAINER > .sub-menu-side").addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1)},DOM.MENUSIDE.addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("link");)a=a.parentNode;a.getData("link")&&navMenu(a.getData("link"))},!1); function navSubMenu(e){var a=document.querySelector('#CONTAINER > .sub-menu-side > span[data-sublink="'+pageManager.vars[0]+'"]'),n=null;if(n=e instanceof Element?e:null,n="string"==typeof e?document.querySelector('#CONTAINER > .sub-menu-side > span[data-sublink="'+e+'"]'):n,n=null==n?document.querySelector("#CONTAINER > .sub-menu-side > span[data-sublink]"):n,null==n)return!1;null!=a&&a.remClass("active");for(var t=document.querySelectorAll("#CONTAINER > section[data-sublink].active"),r=0;r<t.length;r++)t[r].remClass("active");if(null!=n){n.addClass("active");var u=document.querySelector('#CONTAINER > section[data-sublink="'+n.getData("sublink")+'"]');null!=u&&u.addClass("active")}if(!n.getData("sublink"))return!1;var l=pageManager.vars[0]!=n.getData("sublink");pageManager.vars[0]=n.getData("sublink"),l&&pageManager.updateURL()}function navMenu(e,a){var n=document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.page+'"]'),t=null;if(t=e instanceof Element?e:null,t="string"==typeof e?document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+e+'"]'):t,t=t||document.querySelector('#WRAPPER > #MENU-SIDE > span[data-link="'+pageManager.pagelist[0]+'"]'),null==t)return!1;a=a===!0?!0:!1,n&&n.remClass("active"),t&&t.addClass("active");if(a||n==t||(pageManager.vars=[]),t.getData("link")){DOM.HEADER.addClass("loading");var r=function(){var e=pageManager.vars.length>0&&null!=document.querySelector('#CONTAINER > .sub-menu-side > [data-sublink="'+pageManager.vars[0]+'"]');navSubMenu(e?pageManager.vars[0]:null),document.querySelector("#CONTAINER > .sub-menu-side").addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1),DOM.HEADER.remClass("loading")};pageManager.page!=t.getData("link")&&pageManager.setPage(t.getData("link")),pageManager.activeXHR?pageManager.activeXHR.addEventListener("loadend",r,!1):r.call()}}DOM={WRAPPER:$("WRAPPER"),HEADER:$("HEADER"),MENUSIDE:$("MENU-SIDE"),CONTAINER:$("CONTAINER")};var pageManager=new pageManagerClass,api=new APIClass("/api/");pageManager.setPage(null,"/view",DOM.CONTAINER,["history","profile","machines","users","groups","options","settings"]),navMenu(pageManager.page),pageManager.refresher=function(){navSubMenu(this.vars[0]),document.querySelector("#CONTAINER > .sub-menu-side").addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("sublink");)a=a.parentNode;a.getData("sublink")&&navSubMenu(a)},!1)},DOM.MENUSIDE.addEventListener("click",function(e){for(var a=e.target;a!=document.body&&!a.getData("link");)a=a.parentNode;a.getData("link")&&navMenu(a.getData("link"))},!1);

View File

Before

Width:  |  Height:  |  Size: 905 B

After

Width:  |  Height:  |  Size: 905 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -50,9 +50,6 @@
debug(); debug();
echo "<section data-sublink='view' class='list'>"; echo "<section data-sublink='view' class='list'>";
$extensionView = new Viewer('extension.view', []);
$extensionView->view();
echo '</section>'; echo '</section>';
@ -66,7 +63,7 @@
/* (1) Modules de l'entrepot /* (1) Modules de l'entrepot
---------------------------------------------------------*/ ---------------------------------------------------------*/
echo "<pre><u>Modules entrepot:</u>\n"; echo "<pre><u>Options entrepot:</u>\n";
/* (1) Requete de récupération */ /* (1) Requete de récupération */
$req_mods = new Repo('warehouse/getModules', [$_SESSION['WAREHOUSE']['id']]); $req_mods = new Repo('warehouse/getModules', [$_SESSION['WAREHOUSE']['id']]);
@ -85,7 +82,7 @@
/* (2) Modules par groupes de machines /* (2) Modules par groupes de machines
---------------------------------------------------------*/ ---------------------------------------------------------*/
echo "<u>Modules par groupes de machines:</u> \n"; echo "<u>Options par groupes de machines:</u> \n";
/* (1) Requête de récupération des groupes */ /* (1) Requête de récupération des groupes */
$req_mc = new Repo('machine_cluster/getAll', [$_SESSION['WAREHOUSE']['id']]); $req_mc = new Repo('machine_cluster/getAll', [$_SESSION['WAREHOUSE']['id']]);

View File

@ -55,7 +55,7 @@
<span data-link='machines' data-desc='Systèmes' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/device.svg'); ?></span> <span data-link='machines' data-desc='Systèmes' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/device.svg'); ?></span>
<span data-link='users' data-desc='Utilisateurs' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/users.svg'); ?></span> <span data-link='users' data-desc='Utilisateurs' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/users.svg'); ?></span>
<span data-link='groups' data-desc='Gestion des groupes' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/groups.svg'); ?></span> <span data-link='groups' data-desc='Gestion des groupes' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/groups.svg'); ?></span>
<span data-link='extensions' data-desc='Extensions' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/extensions.svg'); ?></span> <span data-link='options' data-desc='Options' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/options.svg'); ?></span>
<span data-link='settings' data-desc='Paramètres' class='mt' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/settings.svg'); ?></span> <span data-link='settings' data-desc='Paramètres' class='mt' ><?= file_get_contents(__PUBLIC__.'/src/static/menu-side/settings.svg'); ?></span>
</nav> </nav>