From 41f438d51dfcb06741dbc83b0e2e3721d720b8fc Mon Sep 17 00:00:00 2001 From: stdonato Date: Sat, 27 Apr 2019 09:58:51 -0400 Subject: [PATCH] 1.3.2 --- inc/stats.inc.php-def | 143 ------------- setup.php | 8 +- .../palettes/{automn.css => _automn.scss~} | 155 ++++++++------ ...kworkorange.css => _clockworkorange.scss~} | 176 ++++++++++------ src/css/palettes/{dark.css => _dark.scss~} | 136 +++++++----- src/css/palettes/{flood.css => _flood.scss~} | 156 ++++++++------ .../palettes/{hipster.css => _hipster.scss~} | 164 +++++++++------ .../{icecream.css => _icecream.scss~} | 134 +++++++----- .../{lightblue.css => _lightblue.scss~} | 161 +++++++++------ .../{premiumred.css => _premiumred.scss~} | 142 ++++++++----- .../{purplehaze.css => _purplehaze.scss~} | 193 +++++++++++------- .../palettes/{teclib.css => _teclib.scss~} | 151 ++++++++------ .../palettes/{vintage.css => _vintage.scss~} | 165 +++++++++------ src/css/palettes/aerialgreen.css | 176 ---------------- src/css/palettes/auror.css | 155 -------------- src/css/palettes/classic.css | 174 ---------------- src/css/palettes/greenflat.css | 168 --------------- src/css/styles.scss | 15 +- src/front/login.php | 11 +- src/inc/auth.class.php | 28 +-- src/inc/search.class.php | 81 ++++---- src/index.php | 10 + src/indexe.php | 11 + src/login.php | 29 ++- 24 files changed, 1218 insertions(+), 1524 deletions(-) delete mode 100644 inc/stats.inc.php-def rename src/css/palettes/{automn.css => _automn.scss~} (64%) mode change 100644 => 100755 rename src/css/palettes/{clockworkorange.css => _clockworkorange.scss~} (61%) mode change 100644 => 100755 rename src/css/palettes/{dark.css => _dark.scss~} (67%) mode change 100644 => 100755 rename src/css/palettes/{flood.css => _flood.scss~} (64%) mode change 100644 => 100755 rename src/css/palettes/{hipster.css => _hipster.scss~} (63%) mode change 100644 => 100755 rename src/css/palettes/{icecream.css => _icecream.scss~} (67%) mode change 100644 => 100755 rename src/css/palettes/{lightblue.css => _lightblue.scss~} (65%) mode change 100644 => 100755 rename src/css/palettes/{premiumred.css => _premiumred.scss~} (65%) mode change 100644 => 100755 rename src/css/palettes/{purplehaze.css => _purplehaze.scss~} (58%) mode change 100644 => 100755 rename src/css/palettes/{teclib.css => _teclib.scss~} (64%) mode change 100644 => 100755 rename src/css/palettes/{vintage.css => _vintage.scss~} (65%) mode change 100644 => 100755 delete mode 100644 src/css/palettes/aerialgreen.css delete mode 100644 src/css/palettes/auror.css delete mode 100644 src/css/palettes/classic.css delete mode 100644 src/css/palettes/greenflat.css diff --git a/inc/stats.inc.php-def b/inc/stats.inc.php-def deleted file mode 100644 index 9cdedb9..0000000 --- a/inc/stats.inc.php-def +++ /dev/null @@ -1,143 +0,0 @@ - 'helpdesk'"; -$res_prof = $DB->query($query_prof); - -while ($row = $DB->fetch_assoc($res_prof)) -{ - $arr_prof[] = $row['id'] ; -} - -//if ($profid == 3 || $profid == 4 || $profid == 7) { -if (in_array($profid,$arr_prof)) { - - $entities = Profile_User::getUserEntities($_SESSION['glpiID'], true); - - if($activeent <> 0) { - $ent = implode(",",$entities); - $entidade = "AND glpi_tickets.entities_id IN (".$activeent.")"; - $getuser = ""; - } - else { - $ent = implode(",",$entities); - $entidade = "AND glpi_tickets.entities_id IN (".$ent.")"; - $getuser = ""; - } -} - -else { - //technician - $entidade = "AND glpi_tickets.entities_id IN (".$activeent.")"; - $getuser = "AND glpi_users.id IN = " . $userid ."" ; -} - -//total de chamados abertos -$sql_geral = "SELECT COUNT(glpi_tickets.id) as total - FROM glpi_tickets - LEFT JOIN glpi_entities ON glpi_tickets.entities_id = glpi_entities.id - WHERE glpi_tickets.is_deleted = '0' - AND glpi_tickets.status NOT IN (6) - ".$entidade." "; - -$result_geral = $DB->query($sql_geral) or die ("erro"); -$total_geral = $DB->result($result_geral,0,'total'); - - -//total de chamados novos -$sql_new = "SELECT COUNT(glpi_tickets.id) as total - FROM glpi_tickets - LEFT JOIN glpi_entities ON glpi_tickets.entities_id = glpi_entities.id - WHERE glpi_tickets.is_deleted = '0' - AND glpi_tickets.status = 1 - ".$entidade." "; - -$result_new = $DB->query($sql_new) or die ("erro"); -$total_new = $DB->result($result_new,0,'total'); - - -//total de chamados atribuidos -$sql_pro = "SELECT COUNT(glpi_tickets.id) as total - FROM glpi_tickets - LEFT JOIN glpi_entities ON glpi_tickets.entities_id = glpi_entities.id - WHERE glpi_tickets.is_deleted = '0' - AND glpi_tickets.status NOT IN (1,4,5,6) - ".$entidade." "; - -$result_pro = $DB->query($sql_pro) or die ("erro"); -$total_pro = $DB->result($result_pro,0,'total'); - - -//total de chamados solucionados -$sql_solv = "SELECT COUNT(glpi_tickets.id) as total - FROM glpi_tickets - LEFT JOIN glpi_entities ON glpi_tickets.entities_id = glpi_entities.id - WHERE glpi_tickets.is_deleted = '0' - AND glpi_tickets.status = 5 - ".$entidade." "; - -$result_solv = $DB->query($sql_solv) or die ("erro"); -$total_solv = $DB->result($result_solv,0,'total'); - - -//count due tickets -$sql_due = "SELECT DISTINCT COUNT(glpi_tickets.id) AS due - FROM glpi_tickets - WHERE glpi_tickets.status NOT IN (4,5,6) - AND glpi_tickets.is_deleted = 0 - AND glpi_tickets.time_to_resolve IS NOT NULL - AND glpi_tickets.time_to_resolve < NOW() - ".$entidade." "; - -$result_due = $DB->query($sql_due); -$total_due = $DB->result($result_due,0,'due'); - - -//total de chamados pendentes -$sql_pend = "SELECT COUNT(glpi_tickets.id) as total - FROM glpi_tickets - LEFT JOIN glpi_entities ON glpi_tickets.entities_id = glpi_entities.id - WHERE glpi_tickets.is_deleted = '0' - AND glpi_tickets.status = 4 - ".$entidade." "; - -$result_pend = $DB->query($sql_pend) or die ("erro"); -$total_pend = $DB->result($result_pend,0,'total'); - -//links para lista de chamados -$href_cham = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=12&criteria[0][searchtype]=equals&criteria[0][value]=notclosed&itemtype=Ticket&start=0"; -$href_new = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=12&criteria[0][searchtype]=equals&criteria[0][value]=1&itemtype=Ticket&start=0"; -$href_pro = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=12&criteria[0][searchtype]=equals&criteria[0][value]=process&itemtype=Ticket&start=0"; -$href_solv = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=12&criteria[0][searchtype]=equals&criteria[0][value]=5&itemtype=Ticket&start=0"; -$href_pend = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=12&criteria[0][searchtype]=equals&criteria[0][value]=4&itemtype=Ticket&start=0"; -$href_due = $CFG_GLPI["root_doc"]."/front/ticket.php?is_deleted=0&criteria[0][field]=82&criteria[0][searchtype]=equals&criteria[0][value]=1&criteria[1][link]=AND&criteria[1][field]=12&criteria[1][searchtype]=equals&criteria[1][value]=notold&itemtype=Ticket&start=0"; - -echo ' - - - - - - - - - - - -
' . $total_geral . '

'. _nx('ticket','Opened','Opened',2) . '
' . $total_new . '

'. Ticket::getStatus(1) .'
' . $total_pro . '

'. __('Processing') . '
' . $total_solv . '

'. Ticket::getStatus(5) .'
' . $total_pend . '

'. Ticket::getStatus(4) .'
' . $total_due . '

'. __('Late') . '
'; - -?> diff --git a/setup.php b/setup.php index eb62da4..f6e65a8 100755 --- a/setup.php +++ b/setup.php @@ -25,21 +25,21 @@ function plugin_version_mod(){ global $DB, $LANG; return array('name' => __('GLPI Modifications'), - 'version' => '1.3.0', + 'version' => '1.3.2', 'author' => ' Stevenes Donato ', 'license' => 'GPLv2+', 'homepage' => 'https://forge.glpi-project.org/projects/mod', - 'minGlpiVersion' => '9.4'); + 'minGlpiVersion' => '9.4.2'); } function plugin_mod_check_prerequisites(){ - if (GLPI_VERSION >= '9.4'){ + if (GLPI_VERSION >= '9.4.2'){ if(file_exists('/etc/hosts')){ return true; } } else { - echo "GLPI version not compatible need 9.4"; + echo "GLPI version not compatible need 9.4.2"; } } diff --git a/src/css/palettes/automn.css b/src/css/palettes/_automn.scss~ old mode 100644 new mode 100755 similarity index 64% rename from src/css/palettes/automn.css rename to src/css/palettes/_automn.scss~ index acd0d68..3753a47 --- a/src/css/palettes/automn.css +++ b/src/css/palettes/_automn.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #113F59; + background: url(../pics/login_logo_glpi.png) center no-repeat, #113F59; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #113E58; +a { + color: #113E58; + + &:link { + color: #113E58; + } +} + +.ui-widget-content a { + color: #113E58; } .main_form tr.headerRow th { @@ -77,31 +84,47 @@ a, a:link, .ui-widget-content a { background-color: #C06F3D; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #F2B265; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #F2B265; + } + } -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #8B4D34; -} + > li.active { + background-color: #8B4D34; + } + } -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #F2B265; -} + &.ssmenu li.active { + background-color: #8B4D34; + } -ul#menu > li:hover { - background-color: #F29542; -} + &#menu { + > li.active > a { + color: #F2B265; + } -ul#menu ul li a:hover { - background: #F29542; - color: #8B4D34; -} + ul { + &.ssmenu li.active > a { + color: #F2B265; + } + + li a { + &:hover { + background: #F29542; + color: #8B4D34; + } -ul#menu ul li a { - color: #8B4D34; + color: #8B4D34; + } + } + + > li:hover { + background-color: #F29542; + } + } } #c_recherche form #champRecherche button { @@ -110,21 +133,17 @@ ul#menu ul li a { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #F2B265; background-color: #8B4D34; } + .vsubmit a { color: #F2B265; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #8B4D34; } @@ -132,57 +151,77 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #8B4D34; -} -.breadcrumb_item:nth-of-type(3) a { - color: #F2B265 !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #8B4D34; + + a { + color: #F2B265 !important; + } + + &:after { + border-left-color: #8B4D34; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #C06F3D; } + .primary-bg-inverse { background: #F2B265; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: #F2B265; + + &:hover { + color: #F2B265; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #C06F3D; + + &:hover { + color: #C06F3D; + } } -#c_preference a.fa, #c_preference a { + &.fa { + color: #F2B265; + + &:hover { + color: white; + } + } + color: #F2B265; -} -#c_preference a.fa:hover { - color: white; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; -} + &.debugon { + color: black !important; -#show_all_menu a { - color: #8B4D34; + &:hover { + color: black !important; + } + } } -#show_all_menu dt a:hover { - background: #F29542; -} +#show_all_menu { + a { + color: #8B4D34; + } -#show_all_menu a:hover { - background-color: #C06F3D; - color: #F2B265; -} + dt a:hover { + background: #F29542; + } + a:hover { + background-color: #C06F3D; + color: #F2B265; + } +} /* Stevenes Donato */ diff --git a/src/css/palettes/clockworkorange.css b/src/css/palettes/_clockworkorange.scss~ old mode 100644 new mode 100755 similarity index 61% rename from src/css/palettes/clockworkorange.css rename to src/css/palettes/_clockworkorange.scss~ index 668baf9..3dd3f89 --- a/src/css/palettes/clockworkorange.css +++ b/src/css/palettes/_clockworkorange.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #008B8D; + background: url(../pics/login_logo_glpi.png) center no-repeat, #008B8D; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #006573; +a { + color: #006573; + + &:link { + color: #006573; + } +} + +.ui-widget-content a { + color: #006573; } .main_form tr.headerRow th { @@ -68,61 +75,90 @@ a, a:link, .ui-widget-content a { color: #ffd2ca; } -#c_recherche form #champRecherche input, -#c_recherche form #champRecherche input::-webkit-input-placeholder { +#c_recherche form #champRecherche input { background-color: #cc3c20; color: #F4D4AD; + + &::-webkit-input-placeholder { + background-color: #cc3c20; + color: #F4D4AD; + } } #c_menu { background-color: #FF5131; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #FF7C64; -} + ul li a { + color: #FF7C64; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #B2341C; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #B2341C; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #B2341C; - color: #fff; -} + &.ssmenu li.active { + background-color: #B2341C; + } -ul#menu ul li a:hover { - background: #FF5131; - color: #fff; + &#menu { + > li.active > a { + color: #FFF; + } + + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #FF5131; + color: #fff; + } + } + + > li:hover { + background-color: #B2341C; + color: #fff; + + > a { + background-color: #B2341C; + color: #fff; + } + } + } } /* ====== BUTTONS ====== */ input.submit { - background-color: #FF5131; - color: #fff; - border: 1px solid #FF674A; -} -input.submit:hover { - background-color: #ff7c64; + background-color: #FF5131; + color: #fff; + border: 1px solid #FF674A; + + &:hover { + background-color: #ff7c64; + } } + a.vsubmit { background-color: #FF5131; color: #fff; + + &:hover { + background-color: #ff7c64; + } } -a.vsubmit:hover { - background-color: #ff7c64; -} + #BackToTop { background-color: #FF5131; color: #fff; @@ -132,53 +168,69 @@ a.vsubmit:hover { #c_ssmenu2 .breadcrumb_item:nth-of-type(3) { background-color: #FF5131; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3) a { - color: #fff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3):after { - border-left-color: #FF5131; + + a { + color: #fff; + } + + &:after { + border-left-color: #FF5131; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #FF5131; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #FF5131; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; + &:hover { + color: #FF5131; + } } -#show_all_menu dt a { - color:white; -} +#c_preference a.debugon { + color: black !important; -#show_all_menu dt a:hover { - background: #B2341C; + &:hover { + color: black !important; + } } -#show_all_menu a { - color: #FF7C64; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a:hover { - background-color: #FF5131; - color: white; -} + &:hover { + background: #B2341C; + } + } + a { + color: #FF7C64; + + &:hover { + background-color: #FF5131; + color: white; + } + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { diff --git a/src/css/palettes/dark.css b/src/css/palettes/_dark.scss~ old mode 100644 new mode 100755 similarity index 67% rename from src/css/palettes/dark.css rename to src/css/palettes/_dark.scss~ index 65b35c7..66d0a08 --- a/src/css/palettes/dark.css +++ b/src/css/palettes/_dark.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #161514; + background: url(../pics/login_logo_glpi.png) center no-repeat, #161514; } #display-login { @@ -47,10 +47,17 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { +a { + color: #161514; + + &:link { + color: #161514; + } +} + +.ui-widget-content a { color: #161514; } @@ -77,31 +84,47 @@ a, a:link, .ui-widget-content a { background-color: #585957; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #FFF; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #FFF; + } + } -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #161514; -} + > li.active { + background-color: #161514; + } + } -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + &.ssmenu li.active { + background-color: #161514; + } -ul#menu > li:hover { - background-color: #3F403E; -} + &#menu { + > li.active > a { + color: #FFF; + } -ul#menu ul li a:hover { - background: #262626; - color: #FFF; -} + ul { + &.ssmenu li.active > a { + color: #FFF; + } -ul#menu ul li a { - color: #585957; + li a { + &:hover { + background: #262626; + color: #FFF; + } + + color: #585957; + } + } + + > li:hover { + background-color: #3F403E; + } + } } #c_recherche form #champRecherche button { @@ -110,21 +133,17 @@ ul#menu ul li a { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #fff; background-color: #585957; } + .vsubmit a { color: #fff; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #585957; } @@ -132,48 +151,63 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #585957; -} -.breadcrumb_item:nth-of-type(3) a { - color: #fff !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #585957; + + a { + color: #fff !important; + } + + &:after { + border-left-color: #585957; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #585957; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #585957; -} -#show_all_menu dt a { - color:white; + &:hover { + color: #585957; + } } -#show_all_menu dt a:hover { - background: #3F403E; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a { - color: #585957; -} + &:hover { + background: #3F403E; + } + } -#show_all_menu a:hover { - background-color: #585957; - color: white; + a { + color: #585957; + + &:hover { + background-color: #585957; + color: white; + } + } } + /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { background-color: #585957 !important; diff --git a/src/css/palettes/flood.css b/src/css/palettes/_flood.scss~ old mode 100644 new mode 100755 similarity index 64% rename from src/css/palettes/flood.css rename to src/css/palettes/_flood.scss~ index f33c817..deec265 --- a/src/css/palettes/flood.css +++ b/src/css/palettes/_flood.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #008B8D; + background: url(../pics/login_logo_glpi.png) center no-repeat, #008B8D; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #006573; +a { + color: #006573; + + &:link { + color: #006573; + } +} + +.ui-widget-content a { + color: #006573; } .main_form tr.headerRow th { @@ -77,32 +84,53 @@ a, a:link, .ui-widget-content a { background-color: #008B8D; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #006573; -} + ul li a { + color: #006573; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #006573; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #006573; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #81BEAA; - color: #000; -} + &.ssmenu li.active { + background-color: #006573; + } + + &#menu { + > li.active > a { + color: #FFF; + } + + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #81BEAA; + color: #000; + } + } -ul#menu ul li a:hover { - background: #81BEAA; - color: #000; + > li:hover { + background-color: #81BEAA; + color: #000; + + > a { + background-color: #81BEAA; + color: #000; + } + } + } } #c_recherche form #champRecherche button { @@ -111,21 +139,17 @@ ul#menu ul li a:hover { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #816644; background-color: #F4D4AD; } + .vsubmit a { color: #816644; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #F4D4AD; } @@ -133,54 +157,72 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #F4D4AD; -} -.breadcrumb_item:nth-of-type(3) a { - color: #816644 !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #F4D4AD; + + a { + color: #816644 !important; + } + + &:after { + border-left-color: #F4D4AD; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #008B8D; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #008B8D; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; + &:hover { + color: #008B8D; + } } -#show_all_menu dt a { - color:white; -} +#c_preference a.debugon { + color: black !important; -#show_all_menu dt a:hover { - background: #81BEAA; + &:hover { + color: black !important; + } } -#show_all_menu a { - color: #006573; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a:hover { - background-color: #008B8D; - color: black; + &:hover { + background: #81BEAA; + } + } + + a { + color: #006573; + + &:hover { + background-color: #008B8D; + color: black; + } + } } + /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { background-color: #006573 !important; diff --git a/src/css/palettes/hipster.css b/src/css/palettes/_hipster.scss~ old mode 100644 new mode 100755 similarity index 63% rename from src/css/palettes/hipster.css rename to src/css/palettes/_hipster.scss~ index 470a0ef..2cc5c44 --- a/src/css/palettes/hipster.css +++ b/src/css/palettes/_hipster.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #008B8D; + background: url(../pics/login_logo_glpi.png) center no-repeat, #008B8D; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #006573; +a { + color: #006573; + + &:link { + color: #006573; + } +} + +.ui-widget-content a { + color: #006573; } .main_form tr.headerRow th { @@ -68,60 +75,90 @@ a, a:link, .ui-widget-content a { color: #ffd2ca; } -#c_recherche form #champRecherche input, #c_recherche form #champRecherche input::-webkit-input-placeholder { +#c_recherche form #champRecherche input { background-color: #e08c83; color: #fff; + + &::-webkit-input-placeholder { + background-color: #e08c83; + color: #fff; + } } #c_menu { background-color: #dc9b74; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #75a48b; -} + ul li a { + color: #75a48b; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #B2341C; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #B2341C; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #d6665a; - color: #fff; -} + &.ssmenu li.active { + background-color: #B2341C; + } -ul#menu ul li a:hover { - background: #e08c83; - color: #fff; + &#menu { + > li.active > a { + color: #FFF; + } + + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #e08c83; + color: #fff; + } + } + + > li:hover { + background-color: #d6665a; + color: #fff; + + > a { + background-color: #d6665a; + color: #fff; + } + } + } } /* ====== BUTTONS ====== */ input.submit { - background-color: #d6665a; - color: #fff; - border: 1px solid #e08c83; -} -input.submit:hover { background-color: #d6665a; + color: #fff; + border: 1px solid #e08c83; + + &:hover { + background-color: #d6665a; + } } + a.vsubmit { background-color: #d6665a; color: #fff; + + &:hover { + background-color: #d6665a; + } } -a.vsubmit:hover { - background-color: #d6665a; -} + #BackToTop { background-color: #FF5131; color: #fff; @@ -131,48 +168,61 @@ a.vsubmit:hover { #c_ssmenu2 .breadcrumb_item:nth-of-type(3) { background-color: #d6665a; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3) a { - color: #fff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3):after { - border-left-color: #d6665a; + + a { + color: #fff; + } + + &:after { + border-left-color: #d6665a; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #dc9b74; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #dc9b74; -} -#show_all_menu dt a { - color:white; + &:hover { + color: #dc9b74; + } } -#show_all_menu dt a:hover { - background: #d6665a; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a { - color: #75a48b; -} + &:hover { + background: #d6665a; + } + } -#show_all_menu a:hover { - background-color: #dc9b74; - color: white; -} + a { + color: #75a48b; + &:hover { + background-color: #dc9b74; + color: white; + } + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { diff --git a/src/css/palettes/icecream.css b/src/css/palettes/_icecream.scss~ old mode 100644 new mode 100755 similarity index 67% rename from src/css/palettes/icecream.css rename to src/css/palettes/_icecream.scss~ index c60bc26..4fd2919 --- a/src/css/palettes/icecream.css +++ b/src/css/palettes/_icecream.scss~ @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #113F59; + background: url(../pics/login_logo_glpi.png) center no-repeat, #113F59; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #113E58; +a { + color: #113E58; + + &:link { + color: #113E58; + } +} + +.ui-widget-content a { + color: #113E58; } .main_form tr.headerRow th { @@ -77,31 +84,47 @@ a, a:link, .ui-widget-content a { background-color: #19BEC0; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #FFF; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #FFF; + } + } -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #113F59; -} + > li.active { + background-color: #113F59; + } + } -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #F3EDD3; -} + &.ssmenu li.active { + background-color: #113F59; + } -ul#menu > li:hover { - background-color: #20D6C7; -} + &#menu { + > li.active > a { + color: #F3EDD3; + } -ul#menu ul li a:hover { - background: #19BEC0; - color: #113F59; -} + ul { + &.ssmenu li.active > a { + color: #F3EDD3; + } + + li a { + &:hover { + background: #19BEC0; + color: #113F59; + } + + color: #113F59; + } + } -ul#menu ul li a { - color: #113F59; + > li:hover { + background-color: #20D6C7; + } + } } #c_recherche form #champRecherche button { @@ -110,21 +133,17 @@ ul#menu ul li a { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #F3EDD3; background-color: #D54F58; } + .vsubmit a { color: #F3EDD3; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #D54F58; } @@ -132,45 +151,58 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #D54F58; -} -.breadcrumb_item:nth-of-type(3) a { - color: #F3EDD3 !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #D54F58; + + a { + color: #F3EDD3 !important; + } + + &:after { + border-left-color: #D54F58; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #19BEC0; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #19BEC0; -} -#show_all_menu dt a { - color:white; + &:hover { + color: #19BEC0; + } } -#show_all_menu dt a:hover { - background: #20D6C7; - color: white; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a:hover { - background-color: #19BEC0; - color: #113F59; -} + &:hover { + background: #20D6C7; + color: white; + } + } + a:hover { + background-color: #19BEC0; + color: #113F59; + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { @@ -195,4 +227,4 @@ a.vsubmit:hover, border: none; } -.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} +.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} \ No newline at end of file diff --git a/src/css/palettes/lightblue.css b/src/css/palettes/_lightblue.scss~ old mode 100644 new mode 100755 similarity index 65% rename from src/css/palettes/lightblue.css rename to src/css/palettes/_lightblue.scss~ index 9f84adc..a593188 --- a/src/css/palettes/lightblue.css +++ b/src/css/palettes/_lightblue.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #5ABCFF; + background: url(../pics/login_logo_glpi.png) center no-repeat, #5ABCFF; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #006573; +a { + color: #006573; + + &:link { + color: #006573; + } +} + +.ui-widget-content a { + color: #006573; } .main_form tr.headerRow th { @@ -77,32 +84,53 @@ a, a:link, .ui-widget-content a { background-color: #5ABCFF; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #3891cd; -} + ul li a { + color: #3891cd; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #2da9ff; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #2da9ff; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #41B1FF; - color: #fff; -} + &.ssmenu li.active { + background-color: #2da9ff; + } -ul#menu ul li a:hover { - background: #55B2FF; - color: #fff; + &#menu { + > li.active > a { + color: #FFF; + } + + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #55B2FF; + color: #fff; + } + } + + > li:hover { + background-color: #41B1FF; + color: #fff; + + > a { + background-color: #41B1FF; + color: #fff; + } + } + } } #c_recherche form #champRecherche button { @@ -115,17 +143,21 @@ input.submit { background-color: #41B1FF; color: #fff; border: 1px solid #88c9ff; + + &:hover { + background-color: #92ceff; + } } -input.submit:hover { - background-color: #92ceff; -} + a.vsubmit { background-color: #41B1FF; color: #fff; + + &:hover { + background-color: #92ceff; + } } -a.vsubmit:hover { - background-color: #92ceff; -} + #BackToTop { background-color: #55B2FF; color: #fff; @@ -135,54 +167,69 @@ a.vsubmit:hover { #c_ssmenu2 .breadcrumb_item:nth-of-type(3) { background-color: #2da9ff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3) a { - color: #fff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3):after { - border-left-color: #2da9ff; + + a { + color: #fff; + } + + &:after { + border-left-color: #2da9ff; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #5ABCFF; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #5ABCFF; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; + &:hover { + color: #5ABCFF; + } } -#show_all_menu dt a { - color:white; -} +#c_preference a.debugon { + color: black !important; -#show_all_menu dt a:hover { - background: #41B1FF; + &:hover { + color: black !important; + } } -#show_all_menu a { - color: #3891cd; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a:hover { - background-color: #5ABCFF; - color: white; -} + &:hover { + background: #41B1FF; + } + } + a { + color: #3891cd; + &:hover { + background-color: #5ABCFF; + color: white; + } + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { diff --git a/src/css/palettes/premiumred.css b/src/css/palettes/_premiumred.scss~ old mode 100644 new mode 100755 similarity index 65% rename from src/css/palettes/premiumred.css rename to src/css/palettes/_premiumred.scss~ index 9c59661..913c054 --- a/src/css/palettes/premiumred.css +++ b/src/css/palettes/_premiumred.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #A2291F; + background: url(../pics/login_logo_glpi.png) center no-repeat, #A2291F; } #display-login { @@ -47,14 +47,17 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { +a { color: #C83226; + + &:link { + color: #C83226; + } } -.main_form tr.headerRow th { +.ui-widget-content a, .main_form tr.headerRow th { color: #C83226; } @@ -77,31 +80,47 @@ a, a:link, .ui-widget-content a { background-color: #E2392B; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #FFF; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #FFF; + } + } -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #A2291F; -} + > li.active { + background-color: #A2291F; + } + } -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + &.ssmenu li.active { + background-color: #A2291F; + } -ul#menu > li:hover { - background-color: #EF3C2D; -} + &#menu { + > li.active > a { + color: #FFF; + } -ul#menu ul li a:hover { - background: #EB3B2C; - color: #FFF; -} + ul { + &.ssmenu li.active > a { + color: #FFF; + } -ul#menu ul li a { - color: #C83226; + li a { + &:hover { + background: #EB3B2C; + color: #FFF; + } + + color: #C83226; + } + } + + > li:hover { + background-color: #EF3C2D; + } + } } #c_recherche form #champRecherche button { @@ -110,21 +129,17 @@ ul#menu ul li a { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #FFF; background-color: #FB6356; } + .vsubmit a { color: #FFF; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #FB6356; } @@ -132,51 +147,68 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #FB6356; -} -.breadcrumb_item:nth-of-type(3) a { - color: #FFF !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #FB6356; + + a { + color: #FFF !important; + } + + &:after { + border-left-color: #FB6356; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #E2392B; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #E2392B; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; + &:hover { + color: #E2392B; + } } -#show_all_menu dt a { - color:white; -} +#c_preference a.debugon { + color: black !important; -#show_all_menu dt a:hover { - background: #EF3C2D; + &:hover { + color: black !important; + } } -#show_all_menu a { - color: #C83226; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a:hover { - background-color: #E2392B; - color: white; + &:hover { + background: #EF3C2D; + } + } + + a { + color: #C83226; + + &:hover { + background-color: #E2392B; + color: white; + } + } } /* Stevenes Donato */ diff --git a/src/css/palettes/purplehaze.css b/src/css/palettes/_purplehaze.scss~ old mode 100644 new mode 100755 similarity index 58% rename from src/css/palettes/purplehaze.css rename to src/css/palettes/_purplehaze.scss~ index 2325ad2..4786dbb --- a/src/css/palettes/purplehaze.css +++ b/src/css/palettes/_purplehaze.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -31,7 +31,7 @@ /* ====== BODY ====== */ body { - background-color: #fefefe; + background-color: #fefefe; } /* ===== LOGIN ===== */ @@ -41,7 +41,7 @@ body { } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #008B8D; + background: url(../pics/login_logo_glpi.png) center no-repeat, #008B8D; } #display-login { @@ -53,11 +53,18 @@ body { color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #8783c2; +a { + color: #8783c2; + + &:link { + color: #8783c2; + } +} + +.ui-widget-content a { + color: #8783c2; } .main_form tr.headerRow th { @@ -67,72 +74,102 @@ a, a:link, .ui-widget-content a { /* ====== HEADER ====== */ #header_top { - background: linear-gradient(to top, #353166, #524b9d); + background: linear-gradient(to top, #353166, #524b9d); } #c_preference a, #language_link > span { color: #8783c2; } -#c_recherche form #champRecherche input, #c_recherche form #champRecherche input::-webkit-input-placeholder { +#c_recherche form #champRecherche input { background-color: #4e4996; color: #fff; + + &::-webkit-input-placeholder { + background-color: #4e4996; + color: #fff; + } } #c_menu { background-color: #564B7F; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #6660b2; -} + ul li a { + color: #6660b2; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #3c3874; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #3c3874; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #3c3874; - color: #fff; -} + &.ssmenu li.active { + background-color: #3c3874; + } -ul#menu ul li a:hover { - background: #403b7b; - color: #fff; + &#menu { + > li.active > a { + color: #FFF; + } + + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #403b7b; + color: #fff; + } + } + + > li:hover { + background-color: #3c3874; + color: #fff; + + > a { + background-color: #3c3874; + color: #fff; + } + } + } } /* ====== BUTTONS ====== */ input.submit { - background-color: #5953ab; - color: #fff; -} -input.submit:hover { - background-color: #736eb9; - -moz-box-shadow: initial; - -ms-box-shadow: initial; - -webkit-box-shadow: initial; + background-color: #5953ab; + color: #fff; + + &:hover { + background-color: #736eb9; + -moz-box-shadow: initial; + -ms-box-shadow: initial; + -webkit-box-shadow: initial; + } } + a.vsubmit { background-color: #6660b2; color: #fff; + + &:hover { + background-color: #736eb9; + -moz-box-shadow: initial; + -ms-box-shadow: initial; + -webkit-box-shadow: initial; + } } -a.vsubmit:hover { - background-color: #736eb9; - -moz-box-shadow: initial; - -ms-box-shadow: initial; - -webkit-box-shadow: initial; -} + #BackToTop { background-color: #635692; color: #fff; @@ -142,66 +179,78 @@ a.vsubmit:hover { #c_ssmenu2 .breadcrumb_item:nth-of-type(3) { background-color: #4e4996; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3) a { - color: #fff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3):after { - border-left-color: #4e4996; + + a { + color: #fff; + } + + &:after { + border-left-color: #4e4996; + } } /* ====== PANEL ====== */ - /* + Tabs */ +/* + Tabs */ .tab_bg_4 { - background-color: #efeef5; + background-color: #efeef5; } /* ====== FOOTER ====== */ #footer { - background-color: #635692; -} + background-color: #635692; -#footer .copyright, -#footer .right a { - color: #fff; + .copyright, .right a { + color: #fff; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #564B7F; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #564B7F; -} -#show_all_menu dt a { - color:white; + &:hover { + color: #564B7F; + } } -#show_all_menu dt a:hover { - background: #3c3874; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a { - color: #6660b2; -} + &:hover { + background: #3c3874; + } + } -#show_all_menu a:hover { - background-color: #564B7F; - color: white; -} + a { + color: #6660b2; + &:hover { + background-color: #564B7F; + color: white; + } + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { diff --git a/src/css/palettes/teclib.css b/src/css/palettes/_teclib.scss~ old mode 100644 new mode 100755 similarity index 64% rename from src/css/palettes/teclib.css rename to src/css/palettes/_teclib.scss~ index 46ebbda..c5fb589 --- a/src/css/palettes/teclib.css +++ b/src/css/palettes/_teclib.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #8E21A1; + background: url(../pics/login_logo_glpi.png) center no-repeat, #8E21A1; } #display-login { @@ -47,19 +47,21 @@ color: #FFF; } -#boxlogin #forget, -#footer-login a { +#boxlogin #forget, #footer-login a { color: #424242; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color: #8E21A1; +a { + color: #8E21A1; + + &:link { + color: #8E21A1; + } } -.main_form tr.headerRow th { +.ui-widget-content a, .main_form tr.headerRow th { color: #8E21A1; } @@ -82,31 +84,47 @@ a, a:link, .ui-widget-content a { background-color: #C6C6C8; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #676767; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #676767; + } + } -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #8E21A1; -} + > li.active { + background-color: #8E21A1; + } + } -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + &.ssmenu li.active { + background-color: #8E21A1; + } -ul#menu > li:hover { - background-color: #BB78CA; -} + &#menu { + > li.active > a { + color: #FFF; + } -ul#menu ul li a:hover { - background: #BB78CA; - color: #FFF; -} + ul { + &.ssmenu li.active > a { + color: #FFF; + } -ul#menu ul li a { - color: #000; + li a { + &:hover { + background: #BB78CA; + color: #FFF; + } + + color: #000; + } + } + + > li:hover { + background-color: #BB78CA; + } + } } #c_recherche form #champRecherche button { @@ -115,21 +133,17 @@ ul#menu ul li a { /* ====== BUTTONS ====== */ -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit, a.vsubmit, -#BackToTop { +input.submit, span.vsubmit, a.vsubmit, .ui-widget-content span.vsubmit, a.vsubmit, #BackToTop { color: #353B17; background-color: #BCDA1A; } + .vsubmit a { color: #353B17; text-decoration: underline; } -input.submit:hover, -a.vsubmit:hover, -#BackToTop:hover { +input.submit:hover, a.vsubmit:hover, #BackToTop:hover { background-color: #BCDA1A; } @@ -137,54 +151,73 @@ a.vsubmit:hover, .breadcrumb_item:nth-of-type(3) { background-color: #BCDA1A; -} -.breadcrumb_item:nth-of-type(3) a { - color: #353B17 !important; -} -.breadcrumb_item:nth-of-type(3):after { - border-left-color: #BCDA1A; + + a { + color: #353B17 !important; + } + + &:after { + border-left-color: #BCDA1A; + } } /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #C6C6C8; } + .primary-bg-inverse { background: #676767; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: #676767; + + &:hover { + color: #676767; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #C6C6C8; -} -#c_preference a.debugon, -#c_preference a.debugon:hover { - color: black!important; + &:hover { + color: #C6C6C8; + } } -#show_all_menu dt a { - color:white; -} +#c_preference a.debugon { + color: black !important; -#show_all_menu dt a:hover { - background: #BB78CA; + &:hover { + color: black !important; + } } -#show_all_menu a { - color: black; -} +#show_all_menu { + dt a { + color: white; + + &:hover { + background: #BB78CA; + } + } -#show_all_menu a:hover { - background-color: #BB78CA; - color: white; + a { + color: black; + + &:hover { + background-color: #BB78CA; + color: white; + } + } } + + /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { background-color: #F3F3F4 !important; @@ -208,4 +241,4 @@ a.vsubmit:hover, border: none; } -.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} +.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} \ No newline at end of file diff --git a/src/css/palettes/vintage.css b/src/css/palettes/_vintage.scss~ old mode 100644 new mode 100755 similarity index 65% rename from src/css/palettes/vintage.css rename to src/css/palettes/_vintage.scss~ index 679aa67..f46d3f0 --- a/src/css/palettes/vintage.css +++ b/src/css/palettes/_vintage.scss~ @@ -1,7 +1,7 @@ /** * --------------------------------------------------------------------- * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. + * Copyright (C) 2015-2018 Teclib' and contributors. * * http://glpi-project.org * @@ -35,7 +35,7 @@ } #logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #008B8D; + background: url(../pics/login_logo_glpi.png) center no-repeat, #008B8D; } #display-login { @@ -47,11 +47,18 @@ color: #FFF; } - /* ====== GENERAL ====== */ -a, a:link, .ui-widget-content a { - color : #006573; +a { + color: #006573; + + &:link { + color: #006573; + } +} + +.ui-widget-content a { + color: #006573; } .main_form tr.headerRow th { @@ -68,60 +75,89 @@ a, a:link, .ui-widget-content a { color: #f2ef9f; } -#c_recherche form #champRecherche input, #c_recherche form #champRecherche input::-webkit-input-placeholder { +#c_recherche form #champRecherche input { background-color: #096390; color: #fff; + + &::-webkit-input-placeholder { + background-color: #096390; + color: #fff; + } } #c_menu { background-color: #bf0805; } -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} +ul { + &#menu { + a { + &.itemP, &.itemP1 { + color: #fff; + } + } -ul#menu ul li a { - color: #bf0805; -} + ul li a { + color: #bf0805; + } -ul#menu > li.active , -ul.ssmenu li.active { - background-color: #064260; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #FFF; -} + > li.active { + background-color: #064260; + } + } -ul#menu > li:hover, -ul#menu > li:hover > a { - background-color: #064260; - color: #fff; -} + &.ssmenu li.active { + background-color: #064260; + } -ul#menu ul li a:hover { - background: #c90805; - color: #fff; -} + &#menu { + > li.active > a { + color: #FFF; + } + ul { + &.ssmenu li.active > a { + color: #FFF; + } + + li a:hover { + background: #c90805; + color: #fff; + } + } + + > li:hover { + background-color: #064260; + color: #fff; + + > a { + background-color: #064260; + color: #fff; + } + } + } +} /* ====== BUTTONS ====== */ input.submit { - background-color: #bf0805; - color: #fff; -} -input.submit:hover { - background-color: #f9201d; + background-color: #bf0805; + color: #fff; + + &:hover { + background-color: #f9201d; + } } + a.vsubmit { background-color: #bf0805; color: #fff; + + &:hover { + background-color: #d6665a; + } } -a.vsubmit:hover { - background-color: #d6665a; -} + #BackToTop { background-color: #FF5131; color: #fff; @@ -131,12 +167,14 @@ a.vsubmit:hover { #c_ssmenu2 .breadcrumb_item:nth-of-type(3) { background-color: #064260; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3) a { - color: #fff; -} -#c_ssmenu2 .breadcrumb_item:nth-of-type(3):after { - border-left-color: #064260; + + a { + color: #fff; + } + + &:after { + border-left-color: #064260; + } } .primary { @@ -148,38 +186,49 @@ a.vsubmit:hover { /* Primary color elements (white on blue BG) designed to be overridden from palettes */ /* Colors are same as #c_menu */ + .primary-bg { background: #bf0805; } + .primary-bg-inverse { background: white; } -.primary-fg, .primary-fg:hover { +.primary-fg { color: white; + + &:hover { + color: white; + } } -.primary-fg-inverse, .primary-fg-inverse:hover { +.primary-fg-inverse { color: #bf0805; -} -#show_all_menu dt a { - color:white; + &:hover { + color: #bf0805; + } } -#show_all_menu dt a:hover { - background: #064260; -} +#show_all_menu { + dt a { + color: white; -#show_all_menu a { - color: #bf0805; -} + &:hover { + background: #064260; + } + } -#show_all_menu a:hover { - background-color: #bf0805; - color: white; -} + a { + color: #bf0805; + &:hover { + background-color: #bf0805; + color: white; + } + } +} /* Stevenes Donato */ .tab_cadrehov th, .tab_cadre th { diff --git a/src/css/palettes/aerialgreen.css b/src/css/palettes/aerialgreen.css deleted file mode 100644 index 83a831a..0000000 --- a/src/css/palettes/aerialgreen.css +++ /dev/null @@ -1,176 +0,0 @@ -/** - * --------------------------------------------------------------------- - * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2018 Teclib' and contributors. - * - * http://glpi-project.org - * - * based on GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2003-2014 by the INDEPNET Development Team. - * - * --------------------------------------------------------------------- - * - * LICENSE - * - * This file is part of GLPI. - * - * GLPI is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GLPI is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GLPI. If not, see . - * --------------------------------------------------------------------- - */ -/* ===== LOGIN ===== */ - -#firstboxlogin { - background-color: #8EC547; -} - -#logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #459436; -} - -#display-login { - color: #FFF; -} - -#text-login { - background-color: #459436; - color: #FFF; -} - - -#boxlogin #forget, -#footer-login a { - color: #459436; -} - - -/* ====== GENERAL ====== */ - -a, a:link, .ui-widget-content a { - color: #459436; -} - -.main_form tr.headerRow th { - color: #93CC4A; -} - - -/* ====== HEADER ====== */ - -#header_top { - background-color: #459436; -} - -#c_preference a, #language_link > span { - color: #D9FFA8; -} - -#c_recherche form #champRecherche input { - background-color: #365731; - color: #D9FFA8; -} - -#c_menu { - background-color: #8EC547; -} - -ul#menu a.itemP, ul#menu a.itemP1 { - color: #fff; -} - -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #459436; -} -ul#menu > li.active > a, -ul#menu ul.ssmenu li.active > a { - color: #D9FFA8; -} - -ul#menu > li:hover { - background-color: #93CC4A; -} - -ul#menu ul li a:hover { - background: #93CC4A; - color: #D9FFA8; -} - -ul#menu ul li a { - color: #459436; -} - -#c_recherche form #champRecherche button { - background-color: white; -} - -/* ====== PANEL COMPONENTS ====== */ - -input.submit, -span.vsubmit, a.vsubmit, -.ui-widget-content span.vsubmit { - background-color: #8ec547; - color: #fff; -} - -/* Primary color elements (white on blue BG) designed to be overridden from palettes */ -/* Colors are same as #c_menu */ -.primary-bg { - background: #8EC547; -} -.primary-bg-inverse { - background: #D9FFA8; -} - -.primary-fg, .primary-fg:hover { - color: #D9FFA8; -} - -.primary-fg-inverse, .primary-fg-inverse:hover { - color: #8EC547; -} - -#show_all_menu dt a:hover { - background: #93CC4A; -} - -#show_all_menu a:hover { - background-color: #8EC547; - color: #D9FFA8; -} - -/* Stevenes Donato */ - -.tab_cadrehov th, .tab_cadre th { - background-color: #459436 !important; - color: #fff !important; - border-left: 1px solid #fff; - border-right: 1px solid #fff; - border-bottom: 1px solid #fff; -} - -.tab_cadrehov th a, .order_DESC::before, .order_ASC::before, .tab_cadre th a { - color: #fff !important; -} - -.loadingindicator { - color: #000; - background: #fff url(../../pics/spinner.48.gif) no-repeat center .5em; - padding: 60px .5em .5em; - text-align: center; - max-width: 350px; - margin : auto; - border: none; -} - -.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} diff --git a/src/css/palettes/auror.css b/src/css/palettes/auror.css deleted file mode 100644 index 460aa54..0000000 --- a/src/css/palettes/auror.css +++ /dev/null @@ -1,155 +0,0 @@ -/** - * --------------------------------------------------------------------- - * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2018 Teclib' and contributors. - * - * http://glpi-project.org - * - * based on GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2003-2014 by the INDEPNET Development Team. - * - * --------------------------------------------------------------------- - * - * LICENSE - * - * This file is part of GLPI. - * - * GLPI is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GLPI is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GLPI. If not, see . - * --------------------------------------------------------------------- - */ -/* ===== LOGIN ===== */ - -#firstboxlogin { - background-color: #1B2F62; -} - -#logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #3A5693; -} - -#display-login { - color: #FFF; -} - -#text-login { - background-color: #3A5693; - color: #FFF; -} - - -/* ====== GENERAL ====== */ - -a, a:link, .ui-widget-content a { - color : #3A5693; -} - -.main_form tr.headerRow th { - color: #8CABDB; -} - -/* ====== HEADER ====== */ - -#header_top { - background-color: #1B2F62; -} - -#c_preference a, #language_link > span { - color: #C7DBF5; -} - -#c_recherche form #champRecherche input { - background-color: #131425; - color: #C7DBF5; -} - -#c_menu { - background-color: #3A5693; -} - -ul#menu a.itemP, ul#menu a.itemP1 { - color: #FFF; -} - -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #8CABDB; -} - -ul#menu > li:hover { - background-color: #8BAADA; -} - -ul#menu ul li a:hover { - background: #3A5693; - color: #C7DBF5; -} - -ul#menu ul li a { - color: #131425; -} - -#c_recherche form #champRecherche button { - background-color: white; -} - -/* ====== BUTTONS ====== */ - -a.vsubmit, -.vsubmit a { - color: #8f5a0a; -} - -#BackToTop { - background-color: #1B2F62; - color: #fff; -} - - -/* Stevenes Donato */ - -.tab_cadrehov th, .tab_cadre th { - background-color: #3A5693 !important; - color: #fff !important; - border-left: 1px solid #fff; - border-right: 1px solid #fff; - border-bottom: 1px solid #fff; -} - -.tab_cadrehov th a, .order_DESC::before, .order_ASC::before { - color: #fff !important; -} - -.tab_cadre th a { - color: #fff !important; -} - -.loadingindicator { - color: #000; - background: #fff url(../../pics/spinner.48.gif) no-repeat center .5em; - padding: 60px .5em .5em; - text-align: center; - max-width: 350px; - margin : auto; - border: none; -} - -.noHover th a { - color: #fff; -} - -body { - background-color: #ebeef0 !important; /*#e3e8f5*/ -} - -.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} diff --git a/src/css/palettes/classic.css b/src/css/palettes/classic.css deleted file mode 100644 index 3756bea..0000000 --- a/src/css/palettes/classic.css +++ /dev/null @@ -1,174 +0,0 @@ -/** - * --------------------------------------------------------------------- - * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. - * - * http://glpi-project.org - * - * based on GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2003-2014 by the INDEPNET Development Team. - * - * --------------------------------------------------------------------- - * - * LICENSE - * - * This file is part of GLPI. - * - * GLPI is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GLPI is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GLPI. If not, see . - * --------------------------------------------------------------------- - */ -/* ===== LOGIN ===== */ - -#firstboxlogin { - background-color: #C0CC7B; -} - -#logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #E1D39E; -} - -#display-login { - color: #FFF; -} - -#text-login { - background-color: #E1D39E; - color: #FFF; -} - - -/* ====== GENERAL ====== */ - -a, a:link, .ui-widget-content a { - color: #659900; -} - -.main_form tr.headerRow th { - color: #659900; -} - - -/* ====== HEADER ====== */ - -#header_top { - background-color: #E1D39E; -} - -#c_preference a.fa, -#c_preference a, #language_link > span { - color: #000; -} -#c_preference a.fa:hover { - color: #999; -} - -#c_recherche form #champRecherche input { - background-color: #877C52; - color: #FFF; -} - -#c_menu { - background-color: #C0CC7B; -} - -ul#menu a.itemP, ul#menu a.itemP1 { - color: #000; -} - -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #98A458; -} - -ul#menu > li:hover { - background-color: #828D41; -} - -ul#menu ul li a:hover { - background: #98A458; - color: #FFF; -} - -ul#menu ul li a { - color: #659900; -} - -#c_recherche form #champRecherche button { - background-color: #000; - color: #FFF; -} - -#c_recherche form #champRecherche button:hover { - background-color: #999; -} - -/* ====== BUTTONS ====== */ -a.vsubmit, -.vsubmit a { - color: #8f5a0a; -} - -/* Primary color elements (white on blue BG) designed to be overridden from palettes */ -/* Colors are same as #c_menu */ -.primary-bg { - background: #C0CC7B; -} -.primary-bg-inverse { - background: black; -} - -.primary-fg, .primary-fg:hover { - color: black; -} - -.primary-fg-inverse, .primary-fg-inverse:hover { - color: #C0CC7B; -} - -#show_all_menu dt a { - color: black; -} - -#show_all_menu dt a:hover { - background: #828D41; -} - -#show_all_menu a:hover { - background-color: #C0CC7B; - color: white; -} - -/* Stevenes Donato */ - -.tab_cadrehov th, .tab_cadre th { - background-color: #E1D39E !important; - color: #000 !important; - border-left: 1px solid #fff; - border-right: 1px solid #fff; - border-bottom: 1px solid #fff; -} - -.tab_cadrehov th a, .order_DESC::before, .order_ASC::before, .tab_cadre th a { - color: #000 !important; -} - -.loadingindicator { - color: #000; - background: #fff url(../../pics/spinner.48.gif) no-repeat center .5em; - padding: 60px .5em .5em; - text-align: center; - max-width: 350px; - margin : auto; - border: none; -} diff --git a/src/css/palettes/greenflat.css b/src/css/palettes/greenflat.css deleted file mode 100644 index ac78b37..0000000 --- a/src/css/palettes/greenflat.css +++ /dev/null @@ -1,168 +0,0 @@ -/** - * --------------------------------------------------------------------- - * GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2015-2017 Teclib' and contributors. - * - * http://glpi-project.org - * - * based on GLPI - Gestionnaire Libre de Parc Informatique - * Copyright (C) 2003-2014 by the INDEPNET Development Team. - * - * --------------------------------------------------------------------- - * - * LICENSE - * - * This file is part of GLPI. - * - * GLPI is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * GLPI is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with GLPI. If not, see . - * --------------------------------------------------------------------- - */ -/* ===== LOGIN ===== */ - -#firstboxlogin { - background-color: #54BD90; -} - -#logo_login { - background: url(../../pics/login_logo_glpi.png) center no-repeat, #09A071; -} - -#display-login { - color: #FFF; -} - -#text-login { - background-color: #09A071; - color: #FFF; -} - - -/* ====== GENERAL ====== */ - -a, a:link, .ui-widget-content a { - color : #007A58; -} - -.main_form tr.headerRow th { - color: #007A58; -} - -/* ====== HEADER ====== */ - -#header_top { - background-color: #09A071; -} - -#c_preference a, #language_link > span { - color: #FFF; -} - -#c_recherche form #champRecherche input { - background-color: #004630; - color: #FFF; -} - -#c_menu { - background-color: #54BD90; -} - -ul#menu a.itemP, ul#menu a.itemP1 { - color: #FFF; -} - -ul#menu > li.active, -ul.ssmenu li.active { - background-color: #007A58; -} - -ul#menu > li:hover { - background-color: #09A071; -} - -ul#menu ul li a:hover { - background: #54BD90; -} - -ul#menu ul li a { - color: #004A33; -} - -#c_recherche form #champRecherche button { - background-color: white; -} - -/* ====== BUTTONS ====== */ -a.vsubmit, -.vsubmit a { - color: #8f5a0a; -} - -/* Primary color elements (white on blue BG) designed to be overridden from palettes */ -/* Colors are same as #c_menu */ -.primary-bg { - background: #54BD90; -} -.primary-bg-inverse { - background: white; -} - -.primary-fg, .primary-fg:hover { - color: white; -} - -.primary-fg-inverse, .primary-fg-inverse:hover { - color: #54BD90; -} - -#show_all_menu dt a { - color:white; -} - -#show_all_menu dt a:hover { - background: #09A071; -} - -#show_all_menu a { - color: #004A33; -} - -#show_all_menu a:hover { - background-color: #54BD90; - color: #004A33; -} - -/* Stevenes Donato */ -.tab_cadrehov th, .tab_cadre th { - background-color: #09A071 !important; - color: #fff !important; - border-left: 1px solid #fff; - border-right: 1px solid #fff; - border-bottom: 1px solid #fff; -} - -.tab_cadrehov th a, .order_DESC::before, .order_ASC::before, .tab_cadre th a { - color: #fff !important; -} - -.loadingindicator { - color: #000; - background: #fff url(../../pics/spinner.48.gif) no-repeat center .5em; - padding: 60px .5em .5em; - text-align: center; - max-width: 350px; - margin : auto; - border: none; -} - -.fa-tasks, .fa-clock-ox, .clockx, .fa-ticket, .fa-plus-mod {color: #fff !important;} diff --git a/src/css/styles.scss b/src/css/styles.scss index 007b0d6..bc07f4e 100644 --- a/src/css/styles.scss +++ b/src/css/styles.scss @@ -3303,6 +3303,10 @@ a.copyright { td:nth-child(2) { word-break: break-all; } + + .tab_cadre { + width:auto; + } } } @@ -3652,6 +3656,14 @@ a.copyright { word-wrap: break-word; display: flex; + &.Document_Item { + display: block; + + .displayed_content { + display: block; + } + } + .displayed_content { width: 100%; display: flex; @@ -3813,6 +3825,7 @@ a.copyright { .solimg { position: absolute; color: rgba(66, 91, 100, 0.1); + pointer-events: none; } } @@ -4046,7 +4059,7 @@ a.copyright { margin-bottom: 55px; } - .item_content img { + .item_content img, table { max-width: 100%; } } diff --git a/src/front/login.php b/src/front/login.php index 837e4bc..4152a05 100644 --- a/src/front/login.php +++ b/src/front/login.php @@ -70,14 +70,9 @@ $remember = isset($_SESSION['rmbfield']) && isset($_POST[$_SESSION['rmbfield']]) && $CFG_GLPI["login_remember_time"]; //entity login -if(isset($_POST["active_entity"])) { - $_POST["active_entity"] = rtrim($_POST["active_entity"], 'r'); - $_SESSION['glpiactive_entity'] = $_POST['active_entity']; - $act_ent = $_POST['active_entity']; -} -else { - $act_ent = ""; -} +$_POST["active_entity"] = rtrim($_POST["active_entity"], 'r'); +$_SESSION['glpiactive_entity'] = $_POST['active_entity']; +$act_ent = $_POST['active_entity']; // Redirect management $REDIRECT = ""; diff --git a/src/inc/auth.class.php b/src/inc/auth.class.php index e51bafe..50d6309 100644 --- a/src/inc/auth.class.php +++ b/src/inc/auth.class.php @@ -138,7 +138,7 @@ function userExists($options = []) { global $DB; $result = $DB->request('glpi_users', - ['AND' => [$options], + ['WHERE' => $options, 'LEFT JOIN' => ['glpi_useremails' => ['FKEY' => ['glpi_users' => 'id', 'glpi_useremails' => 'users_id']]]]); // Check if there is a row @@ -276,14 +276,14 @@ static function checkPassword($pass, $hash) { $ok = password_verify($pass, $hash); } else if (strlen($hash)==32) { - $ok = md5($pass) == $hash; + $ok = md5($pass) === $hash; } else if (strlen($hash)==40) { - $ok = sha1($pass) == $hash; + $ok = sha1($pass) === $hash; } else { $salt = substr($hash, 0, 8); - $ok = ($salt.sha1($salt.$pass) == $hash); + $ok = ($salt.sha1($salt.$pass) === $hash); } return $ok; @@ -508,9 +508,9 @@ function getAlternateAuthSystemsUserLogin($authtype = 0) { $user = new User(); $user->getFromDB($cookie_id); - $token = $user->getAuthToken(); + $hash = $user->getAuthToken('cookie_token'); - if ($token !== false && Auth::checkPassword($token, $cookie_token)) { + if (Auth::checkPassword($cookie_token, $hash)) { $this->user->fields['name'] = $user->fields['name']; return true; } else { @@ -869,7 +869,7 @@ function login($login_name, $login_password, $noauto = false, $remember_me = fal } if ($this->auth_succeded && $CFG_GLPI['login_remember_time'] > 0 && $remember_me) { - $token = $this->user->getAuthToken(); + $token = $this->user->getAuthToken('cookie_token', true); if ($token) { //Cookie name (Allow multiple GLPI) @@ -877,11 +877,11 @@ function login($login_name, $login_password, $noauto = false, $remember_me = fal //Cookie session path $cookie_path = ini_get('session.cookie_path'); - $hash = Auth::getPasswordHash($token); + //$hash = Auth::getPasswordHash($token); $data = json_encode([ $this->user->fields['id'], - $hash, + $token, ]); //Send cookie to browser @@ -1170,6 +1170,11 @@ static function checkAlternateAuthSystems($redirect = false, $redirect_string = } } + // using user token for api login + if (!empty($_REQUEST['user_token'])) { + return self::API; + } + // Using CAS server if (!empty($CFG_GLPI["cas_host"])) { if ($redirect) { @@ -1179,11 +1184,6 @@ static function checkAlternateAuthSystems($redirect = false, $redirect_string = } } - // using user token for api login - if (!empty($_REQUEST['user_token'])) { - return self::API; - } - $cookie_name = session_name() . '_rememberme'; if ($CFG_GLPI["login_remember_time"] && isset($_COOKIE[$cookie_name])) { if ($redirect) { diff --git a/src/inc/search.class.php b/src/inc/search.class.php index 03a6210..5306a1f 100755 --- a/src/inc/search.class.php +++ b/src/inc/search.class.php @@ -528,7 +528,7 @@ static function prepareDatasForSearch($itemtype, array $params, array $forcedisp * @return nothing **/ static function constructSQL(array &$data) { - global $CFG_GLPI; + global $CFG_GLPI, $DB; if (!isset($data['itemtype'])) { return false; @@ -845,9 +845,19 @@ static function constructSQL(array &$data) { $tmpquery.= $GROUPBY. $HAVING; - $tmpquery = str_replace($CFG_GLPI["union_search_type"][$data['itemtype']], - $ctable, $tmpquery); - + // Replace 'asset_types' by itemtype table name + $tmpquery = str_replace( + $CFG_GLPI["union_search_type"][$data['itemtype']], + $ctable, + $tmpquery + ); + // Replace 'AllAssets' by itemtype + // Use quoted value to prevent replacement of AllAssets in column identifiers + $tmpquery = str_replace( + $DB->quoteValue('AllAssets'), + $DB->quoteValue($ctype), + $tmpquery + ); } else {// Ref table case $reftable = getTableForItemType($data['itemtype']); @@ -970,17 +980,16 @@ static function constructCriteriaSQL($criteria = [], $data = [], $searchopt = [] if (strlen($sub_sql)) { $sql .= "$LINK ($sub_sql)"; } - } else if (isset($searchopt[$criterion['field']]["usehaving"])) { + } else if (isset($searchopt[$criterion['field']]["usehaving"]) + || ($meta && "AND NOT" === $criterion['link'])) { if (!$is_having) { // the having part will be managed in a second pass continue; } - // Find key - $item_num = array_search($criterion['field'], $data['tocompute']); $new_having = self::addHaving($LINK, $NOT, $itemtype, $criterion['field'], $criterion['searchtype'], - $criterion['value'], $meta); + $criterion['value']); if ($new_having !== false) { $sql .= $new_having; } @@ -1038,6 +1047,7 @@ static function constructCriteriaSQL($criteria = [], $data = [], $searchopt = [] $items[$val2] = $searchopt[$val2]; } } + $view_sql = ""; foreach ($items as $key2 => $val2) { if (isset($val2['nosearch']) && $val2['nosearch']) { continue; @@ -1054,13 +1064,13 @@ static function constructCriteriaSQL($criteria = [], $data = [], $searchopt = [] $criterion['searchtype'], $criterion['value'], $meta); if ($new_where !== false) { $first2 = false; - $sql .= $new_where; + $view_sql .= $new_where; } } } } - if (strlen($sql)) { - $sql = " ($sql) "; + if (strlen($view_sql)) { + $sql.= " ($view_sql) "; } } } @@ -1833,23 +1843,25 @@ static function displayData(array &$data) { } } } else { - echo "
"; - if (null == $item || $item->maybeLocated()) { - $map_link = ""; - echo $map_link; - } + if (!isset($_GET['_in_modal'])) { + echo "
"; + if (null == $item || $item->maybeLocated()) { + $map_link = ""; + echo $map_link; + } - if ($item !== null && $item->maybeDeleted()) { - echo self::isDeletedSwitch($data['search']['is_deleted'], $data['itemtype']); + if ($item !== null && $item->maybeDeleted()) { + echo self::isDeletedSwitch($data['search']['is_deleted'], $data['itemtype']); + } + echo "
"; } - echo "
"; echo self::showError($data['display_type']); } } @@ -3022,11 +3034,10 @@ static function displaySearchoptionValue($request = []) { * @param integer $ID ID of the item to search * @param string $searchtype search type ('contains' or 'equals') * @param string $val value search - * @param string $meta is it a meta item ? * * @return select string **/ - static function addHaving($LINK, $NOT, $itemtype, $ID, $searchtype, $val, $meta) { + static function addHaving($LINK, $NOT, $itemtype, $ID, $searchtype, $val) { $searchopt = &self::getOptions($itemtype); if (!isset($searchopt[$ID]['table'])) { @@ -3127,10 +3138,6 @@ static function addHaving($LINK, $NOT, $itemtype, $ID, $searchtype, $val, $meta) static function addOrderBy($itemtype, $ID, $order) { global $CFG_GLPI; - if ($itemtype == 'AllAssets') { - return ''; - } - // Security test for order if ($order != "ASC") { $order = "DESC"; @@ -3609,13 +3616,13 @@ static function addSelect($itemtype, $ID, $meta = 0, $meta_type = 0) { $TRANS = ''; if (Session::haveTranslations(getItemTypeForTable($table), $field)) { $TRANS = "GROUP_CONCAT(DISTINCT CONCAT(IFNULL($tocomputetrans, '".self::NULLVALUE."'), - '".self::SHORTSEP."',$tocomputeid) + '".self::SHORTSEP."',$tocomputeid) ORDER BY $tocomputeid SEPARATOR '".self::LONGSEP."') AS `".$NAME."_trans`, "; } return " GROUP_CONCAT(DISTINCT CONCAT($tocompute, '".self::SHORTSEP."' , - `$table$addtable`.`id`) + `$table$addtable`.`id`) ORDER BY `$table$addtable`.`id` SEPARATOR '".self::LONGSEP."') AS `".$NAME."`, $TRANS $ADDITONALFIELDS"; @@ -3635,12 +3642,12 @@ static function addSelect($itemtype, $ID, $meta = 0, $meta_type = 0) { $TRANS = ''; if (Session::haveTranslations(getItemTypeForTable($table), $field)) { $TRANS = "GROUP_CONCAT(DISTINCT CONCAT(IFNULL($tocomputetrans, '".self::NULLVALUE."'), - '".self::SHORTSEP."',$tocomputeid) SEPARATOR '".self::LONGSEP."') + '".self::SHORTSEP."',$tocomputeid) ORDER BY $tocomputeid SEPARATOR '".self::LONGSEP."') AS `".$NAME."_trans`, "; } return " GROUP_CONCAT(DISTINCT CONCAT(IFNULL($tocompute, '".self::NULLVALUE."'), - '".self::SHORTSEP."',$tocomputeid) SEPARATOR '".self::LONGSEP."') + '".self::SHORTSEP."',$tocomputeid) ORDER BY $tocomputeid SEPARATOR '".self::LONGSEP."') AS `".$NAME."`, $TRANS $ADDITONALFIELDS"; @@ -6209,7 +6216,7 @@ static function giveItem($itemtype, $ID, array $data, $meta = 0, $out .= $so['emptylabel']; } else { // Trans field exists - if (isset($data[$ID][$k]['trans']) && !empty($data[p][$k]['trans'])) { + if (isset($data[$ID][$k]['trans']) && !empty($data[$ID][$k]['trans'])) { $out .= Dropdown::getValueWithUnit($data[$ID][$k]['trans'], $unit); } else { $out .= Dropdown::getValueWithUnit($data[$ID][$k]['name'], $unit); diff --git a/src/index.php b/src/index.php index 9448c71..237b1b8 100644 --- a/src/index.php +++ b/src/index.php @@ -124,7 +124,17 @@ 0)) { @@ -77,11 +88,15 @@ // now we can continue with the process... if ($auth->login($login, $password, (isset($_REQUEST["noAUTO"])?$_REQUEST["noAUTO"]:false), $remember)) { - Auth::redirectIfAuthenticated(); + + //Auth::redirectIfAuthenticated(); + //entity login + Auth::redirectIfAuthenticated($act_ent); + } else { // we have done at least a good login? No, we exit. Html::nullHeader("Login", $CFG_GLPI["root_doc"] . '/index.php'); - echo '
' . $auth->getErr() . ''; + echo '
' . $auth->getErr() . '

'; // Logout whit noAUto to manage auto_login with errors echo '

';