Menu et user
This commit is contained in:
parent
a6b109be62
commit
e989bc9f1d
|
@ -6,9 +6,11 @@
|
|||
- Adaptation des modules de page à ce nouveau groupe avec des actions autorisées limitées,
|
||||
- Nouvelle option dans l'édition d'une page, permissions : sélection du groupe requis pour modifier la page,
|
||||
- Modules Gallery et Slider, sélection du dossier : seuls les dossiers incluant au moins une image sont proposés et exclusion de certains dossiers
|
||||
- Affichage du menu : modifications de l'ordre pages, icônes login ou membre, drapeaux suivant l'alignement du contenu ou en menu burger
|
||||
- Nettoyage : suppression de fichiers inutiles (2.5Mo),
|
||||
- Corrections :
|
||||
- Affichage du sous-menu avec un alignement du contenu à droite : il y avait un décalage du site quand les pages situées à la droite du menu possédaient des pages enfants.
|
||||
- Affichage du menu : quand le menu comprenait de nombreux items certains pouvaient être masqués dans une fenêtre de taille moyenne.
|
||||
|
||||
## Version 4.3.08 de Deltacms
|
||||
- Modifications :
|
||||
|
|
|
@ -548,5 +548,19 @@ $(document).ready(function(){
|
|||
});
|
||||
});
|
||||
});
|
||||
|
||||
/*
|
||||
* Largeur du sous-menu égale à la largeur de l'onglet parent sauf en petit écran
|
||||
*/
|
||||
$(window).on("resize", function() {
|
||||
if( $(window).width() > 768 ){
|
||||
$.each(parentPage, function(index, value) {
|
||||
$('.navSub .'+value).css('width', $('.'+value).css('width'));
|
||||
});
|
||||
}
|
||||
}).trigger("resize");
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
|
|
|
@ -1612,14 +1612,24 @@ class common {
|
|||
// Met en forme les items du menu
|
||||
$itemsLeft = '';
|
||||
$currentPageId = $this->getData(['page', $this->getUrl(0)]) ? $this->getUrl(0) : $this->getUrl(2);
|
||||
|
||||
|
||||
?> <script> var parentPage=[]; </script>
|
||||
<?php
|
||||
|
||||
foreach($this->getHierarchy() as $parentPageId => $childrenPageIds) {
|
||||
// Passer les entrées masquées
|
||||
// Propriétés de l'item
|
||||
$active = ($parentPageId === $currentPageId OR in_array($currentPageId, $childrenPageIds)) ? 'active ' : '';
|
||||
$targetBlank = $this->getData(['page', $parentPageId, 'targetBlank']) ? ' target="_blank"' : '';
|
||||
|
||||
// Si c'est une page parent, on passe son id à core.js.php pour adampter la largeur du sous-menu à la largeur de l'onglet de la page parent
|
||||
if( $childrenPageIds !== [] ){ ?>
|
||||
<script> parentPage.push('<?php echo $parentPageId; ?>'); </script>
|
||||
<?php }
|
||||
|
||||
// Mise en page de l'item
|
||||
$itemsLeft .= '<li>';
|
||||
|
||||
if ( ( $this->getData(['page',$parentPageId,'disable']) === true
|
||||
AND $this->getUser('password') !== $this->getInput('DELTA_USER_PASSWORD')
|
||||
) OR (
|
||||
|
@ -1762,6 +1772,8 @@ class common {
|
|||
}
|
||||
// Lien de connexion
|
||||
$itemsRight = '';
|
||||
$space1Menu = '<li id="menuSpace"> </li>';
|
||||
$space2Menu = '<li id="menuSpace"> </li>';
|
||||
if(
|
||||
(
|
||||
$this->getData(['theme', 'menu', 'loginLink'])
|
||||
|
@ -1770,7 +1782,7 @@ class common {
|
|||
OR $this->getUrl(0) === 'theme'
|
||||
) {
|
||||
$itemsRight .= '<li id="menuLoginLink" ' .
|
||||
($this->getUrl(0) === 'theme' ? 'class="displayNone"' : '') .
|
||||
($this->getUrl(0) === 'theme' ? 'class="displayNone"' : 'class="smallScreenInline"') .
|
||||
'><a href="' . helper::baseUrl() . 'user/login/' .
|
||||
strip_tags(str_replace('/', '_', $this->getUrl())) .
|
||||
'">' . template::ico('login') .'</a></li>';
|
||||
|
@ -1785,12 +1797,32 @@ class common {
|
|||
$itemsRight .= '<li><a href="' . helper::baseUrl() . 'user/edit/' . $this->getUser('id'). '/' . $_SESSION['csrf'] . '" data-tippy-content="'.$text['core']['showmenu'][1].'">' . template::ico('user', 'right') . '</a></li>';
|
||||
$itemsRight .= '<li><a id="barLogout" href="' . helper::baseUrl() . 'user/logout" data-tippy-content="'.$text['core']['showmenu'][2].'">' . template::ico('logout') . '</a></li>';
|
||||
}
|
||||
// Retourne les items du menu
|
||||
echo '<ul class="navMain" id="menuLeft">' . $itemsLeft . '</ul><ul class="navMain" id="menuRight">' . $itemsRight;
|
||||
if ($this->getData(['config', 'i18n', 'enable']) === true) {
|
||||
// Retourne les items du menu suivant l'alignement du contenu
|
||||
|
||||
// Les drapeaux d'abord en petit écran
|
||||
echo '<ul class="smallScreenFlags">';
|
||||
if($this->getData(['config', 'i18n', 'enable']) === true) {
|
||||
echo $this->showi18n();
|
||||
}
|
||||
echo '</ul>';
|
||||
|
||||
if( $this->getData(['theme', 'menu', 'textAlign']) === 'right'){
|
||||
if( $itemsRight === '') $space1Menu ='';
|
||||
echo '<ul class="navMain" id="menuLeft">' . $itemsLeft . $space1Menu . $itemsRight ;
|
||||
if($this->getData(['config', 'i18n', 'enable']) === true) {
|
||||
if( $itemsRight === '') echo $space2Menu;
|
||||
echo $this->showi18n();
|
||||
}
|
||||
}
|
||||
else{
|
||||
if( $itemsRight === '') $space1Menu ='';
|
||||
echo '<ul class="navMain" id="menuLeft">' . $itemsRight . $space1Menu . $itemsLeft ;
|
||||
if($this->getData(['config', 'i18n', 'enable']) === true) {
|
||||
echo $space2Menu;
|
||||
echo $this->showi18n();
|
||||
}
|
||||
}
|
||||
echo '</ul>';
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2183,7 +2215,7 @@ class common {
|
|||
$select = ' class="i18nFlag flag" ';
|
||||
}
|
||||
|
||||
echo '<li>';
|
||||
echo '<li class="smallScreenInline">';
|
||||
echo '<a href="' . helper::baseUrl() . 'translate/i18n/' . $key . '/' . $this->getData(['config', 'i18n',$key]) . '/' . $this->getUrl(0) . '"><img ' . $select . ' alt="' . $value . '" src="' . helper::baseUrl(false) . 'core/vendor/i18n/png/' . $key . '.png"/></a>';
|
||||
echo '</li>';
|
||||
}
|
||||
|
|
|
@ -566,18 +566,18 @@ nav ul {
|
|||
nav li {
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
max-width: 25vmin;
|
||||
/*max-width: 30vmin;*/
|
||||
}
|
||||
|
||||
@media screen and (max-width: 768px) {
|
||||
nav li {
|
||||
max-width: 50vmin;
|
||||
/*max-width: 50vmin;*/
|
||||
} }
|
||||
|
||||
nav li ul {
|
||||
display: block;
|
||||
position: absolute;
|
||||
width: inherit;
|
||||
/*width: inherit;*/
|
||||
z-index: -1;
|
||||
opacity: 0;
|
||||
transition: .3s ease-out;
|
||||
|
@ -589,6 +589,10 @@ nav li ul li {
|
|||
text-align: left;
|
||||
}
|
||||
|
||||
nav .navSub a{
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
nav li:hover ul {
|
||||
z-index: 8;
|
||||
opacity: 1;
|
||||
|
@ -605,6 +609,7 @@ nav a:hover {
|
|||
|
||||
|
||||
/* Barre de menu */
|
||||
/*
|
||||
#menuLeft {
|
||||
display: inline-flex;
|
||||
}
|
||||
|
@ -613,8 +618,13 @@ nav a:hover {
|
|||
display: inline-flex ;
|
||||
float: right;
|
||||
}
|
||||
|
||||
*/
|
||||
/* fin barre de menu */
|
||||
|
||||
#menuSpace {
|
||||
width: 80px;
|
||||
}
|
||||
|
||||
nav::after {
|
||||
content: " ";
|
||||
clear: both;
|
||||
|
@ -628,6 +638,9 @@ nav::before {
|
|||
}
|
||||
|
||||
@media screen and (min-width: 769px) {
|
||||
.smallScreenFlags{
|
||||
display : none;
|
||||
}
|
||||
nav #menu {
|
||||
display: block;
|
||||
}
|
||||
|
@ -667,7 +680,7 @@ nav::before {
|
|||
opacity: 1;
|
||||
position: static;
|
||||
min-width: inherit;
|
||||
width: auto;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
/* Taille du menu hamburger */
|
||||
|
@ -734,17 +747,25 @@ li .menuSideChild {
|
|||
*/
|
||||
|
||||
|
||||
@media screen and (max-width:1024px){
|
||||
@media screen and (max-width:768px){
|
||||
.smallScreenFlags{
|
||||
display : inline-block;
|
||||
position: relative;
|
||||
left : 10px;
|
||||
}
|
||||
|
||||
.smallScreenInline{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.i18nFlag {
|
||||
width: 100%;
|
||||
padding: 5px;
|
||||
width: 25px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
.i18nFlagSelected {
|
||||
width: 130%;
|
||||
padding: 5px;
|
||||
width: 30px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -136,12 +136,12 @@ $text['core_user']['login'][4] = 'Only an administrator can log in during mainte
|
|||
$text['core_user']['login'][5] = 'Successful connection';
|
||||
$text['core_user']['login'][6] = 'Welcome ';
|
||||
$text['core_user']['login'][7] = 'Incorrect captcha, username or password';
|
||||
$text['core_user']['login'][8] = 'Password error';
|
||||
$text['core_user']['login'][9] = 'Captcha error';
|
||||
//$text['core_user']['login'][8] = 'Password error';
|
||||
//$text['core_user']['login'][9] = 'Captcha error';
|
||||
$text['core_user']['login'][10] = 'Account locked ';
|
||||
$text['core_user']['login'][11] = 'Connection';
|
||||
$text['core_user']['login'][12] = '';
|
||||
$text['core_user']['login'][13] = ' Fill in the Captcha ';
|
||||
//$text['core_user']['login'][12] = '';
|
||||
//$text['core_user']['login'][13] = ' Fill in the Captcha ';
|
||||
$text['core_user']['logout'][0] = 'Successfully disconnected';
|
||||
$text['core_user']['reset'][0] = 'Incorrect';
|
||||
$text['core_user']['reset'][1] = 'New password registered';
|
||||
|
|
|
@ -136,12 +136,12 @@ $text['core_user']['login'][4] = 'Seul un administrateur peut se connecter lors
|
|||
$text['core_user']['login'][5] = 'Connexion réussie';
|
||||
$text['core_user']['login'][6] = 'Bienvenue ';
|
||||
$text['core_user']['login'][7] = 'Captcha, identifiant ou mot de passe incorrects';
|
||||
$text['core_user']['login'][8] = 'Erreur de mot de passe';
|
||||
$text['core_user']['login'][9] = 'Erreur de captcha';
|
||||
//$text['core_user']['login'][8] = 'Erreur de mot de passe';
|
||||
//$text['core_user']['login'][9] = 'Erreur de captcha';
|
||||
$text['core_user']['login'][10] = 'Accès bloqué ';
|
||||
$text['core_user']['login'][11] = 'Connexion';
|
||||
$text['core_user']['login'][12] = '';
|
||||
$text['core_user']['login'][13] = ' Renseignez le Captcha ';
|
||||
//$text['core_user']['login'][12] = '';
|
||||
//$text['core_user']['login'][13] = ' Renseignez le Captcha ';
|
||||
$text['core_user']['logout'][0] = 'Déconnexion réussie';
|
||||
$text['core_user']['reset'][0] = 'Incorrect';
|
||||
$text['core_user']['reset'][1] = 'Nouveau mot de passe enregistré';
|
||||
|
|
|
@ -524,11 +524,10 @@ class user extends common {
|
|||
'state' => true
|
||||
]);
|
||||
}
|
||||
// Sinon notification d'échec
|
||||
// Sinon notification d'échec et captcha addition
|
||||
} else {
|
||||
$notification = $text['core_user']['login'][7];
|
||||
if( $detectBot = 'bot' ) $notification = $text['core_user']['login'][13];
|
||||
$logStatus = $captcha === true ? $text['core_user']['login'][8] : $text['core_user']['login'][9];
|
||||
$_SESSION['humanBot']='bot';
|
||||
// Cas 1 le nombre de connexions est inférieur aux tentatives autorisées : incrément compteur d'échec
|
||||
if ($this->getData(['user',$userId,'connectFail']) < $this->getData(['config', 'connect', 'attempt'])) {
|
||||
$this->setData(['user',$userId,'connectFail',$this->getdata(['user',$userId,'connectFail']) + 1 ]);
|
||||
|
|
Loading…
Reference in New Issue