menu burger suite

This commit is contained in:
Deltacms 2023-06-13 08:46:14 +02:00
parent 0562c7d299
commit 199f3a740c
21 changed files with 82 additions and 42 deletions

View File

@ -6,16 +6,15 @@
- Thème / Menu : le menu en petit écran (burger) dispose maintenant de ses propres paramètres, - Thème / Menu : le menu en petit écran (burger) dispose maintenant de ses propres paramètres,
- Edition de page / emplacement dans le menu : une page désactivée est signalée par le curseur 'not-allowed' en grand écran et par son nom barré en petit écran, - Edition de page / emplacement dans le menu : une page désactivée est signalée par le curseur 'not-allowed' en grand écran et par son nom barré en petit écran,
- Nouveaux gabarits pour l'éditeur Tinymce : accordéon à 3 et 4 paragraphes, - Nouveaux gabarits pour l'éditeur Tinymce : accordéon à 3 et 4 paragraphes,
- Statislite 4.8 : comptage des liens cliqués (ils doivent posséder la class="download-link" ). - Statislite 4.8 : comptage des liens cliqués pour lesquels la class 'clicked_link_count' a été ajoutée par l'éditeur de liens de Tinymce.
- Corrections : - Corrections :
- Thème / header : erreur qui permettait l'affichage de la banière sur toutes les pages même si 'Bannière visible uniquement sur la page d'accueil' était cochée
- Statislite / configuration : erreur qui effaçait l'information 'configuration validée', - Statislite / configuration : erreur qui effaçait l'information 'configuration validée',
- Slider 4.8 / Configuration : les liens sur les images étaient modifiés au changement de l'ordre des pages. - Slider 4.8 / Configuration : les liens sur les images étaient modifiés au changement de l'ordre des pages.
## Version 4.4.09 de Deltacms ## Version 4.4.09 de Deltacms
- Corrections : - Corrections :
- Statislite / configuration : erreur qui effaçait l'information 'configuration validée', - Statislite / configuration : erreur qui effaçait l'information 'configuration validée',
- Thème / bannière : bannière sur page d'accueil seulement, correction. - Thème / header : bannière sur page d'accueil seulement, correction.
## Version 4.4.08 de Deltacms ## Version 4.4.08 de Deltacms
- Correction : - Correction :

View File

@ -580,13 +580,13 @@ $(document).ready(function(){
} }
}).trigger("resize"); }).trigger("resize");
/* Compteur de téléchargements /* Compteur de liens cliqués
* Fonctionne avec download_counter.php * Fonctionne avec download_counter.php
* Les liens comptabilisés doivent avoir la class="download-link" * Les liens comptabilisés doivent avoir la class="clicked_link_count"
* Envoi au fichier download_counter.php la donnée url * Envoi au fichier download_counter.php la donnée url
*/ */
<?php if( $this->getData(['config', 'statislite', 'enable']) && is_file('site/data/statislite/module/download_counter/download_counter.php' ) ) { ?> <?php if( $this->getData(['config', 'statislite', 'enable']) && is_file('site/data/statislite/module/download_counter/download_counter.php' ) ) { ?>
$('.download-link').on('click', function(event) { $('.clicked_link_count').on('click', function(event) {
// Récupérer le chemin vers le fichier // Récupérer le chemin vers le fichier
var filePath = $(this).attr('href'); var filePath = $(this).attr('href');
// Envoyer une requête AJAX pour enregistrer le téléchargement // Envoyer une requête AJAX pour enregistrer le téléchargement
@ -643,11 +643,5 @@ $(document).ready(function(){
$("#site.container").css("padding-top","0"); $("#site.container").css("padding-top","0");
<?php } ?> <?php } ?>
} }
/*
* Lien vers une page ou une sous-page désactivée en petit écran
*/
if($(window).width() < 800) {
$("a.disabled-link").css('text-decoration', 'line-through');
}
}); });

View File

@ -1822,6 +1822,7 @@ class common {
$disableChild = 0; $disableChild = 0;
foreach($childrenPageIds as $childKey) { foreach($childrenPageIds as $childKey) {
$totalChild += 1; $totalChild += 1;
if( $this->getData(['page', $childKey, 'disable']) === true ) $disableChild +=1;
} }
if($childrenPageIds && $disableChild !== $totalChild && $this->getdata(['page',$parentPageId,'hideMenuChildren']) === false) { if($childrenPageIds && $disableChild !== $totalChild && $this->getdata(['page',$parentPageId,'hideMenuChildren']) === false) {
$itemsLeft .= template::ico('down', 'left'); $itemsLeft .= template::ico('down', 'left');

View File

@ -175,6 +175,9 @@
body > nav { body > nav {
margin: 0 auto !important ; margin: 0 auto !important ;
} }
nav a.disabled-link {
text-decoration:line-through;
}
nav{ nav{
padding: 0; padding: 0;
} }
@ -198,11 +201,6 @@
text-align: left; text-align: left;
margin-left: 10px; margin-left: 10px;
} }
/* Espacement icône down des pages avec sous-pages*/
nav ul li .spacexpx{
padding-left:25px;
}
nav #menuLeft { nav #menuLeft {
display: block; display: block;
float: none; float: none;

View File

@ -168,11 +168,13 @@ class install extends common {
$this->copyDir('core/module/install/ressource/themes', self::FILE_DIR . 'source/theme'); $this->copyDir('core/module/install/ressource/themes', self::FILE_DIR . 'source/theme');
unlink(self::FILE_DIR . 'source/theme/themes.json'); unlink(self::FILE_DIR . 'source/theme/themes.json');
// Modification du texte 'Pied de page personnalisé' situé dans theme.json ( $this->setData pose problème) // Modification des textes 'Pied de page personnalisé', 'Bannière vide' et du lien vers la page d'accueil situé dans theme.json ( $this->setData pose problème)
if( $langAdmin !== 'fr'){ if( $langAdmin !== 'fr'){
$theme = file_get_contents( self::DATA_DIR.'theme.json'); $theme = file_get_contents( self::DATA_DIR.'theme.json');
$theme = json_decode( $theme, true); $theme = json_decode( $theme, true);
$theme['theme']['footer']['text'] = $text['core_install']['index'][7]; $theme['theme']['footer']['text'] = $text['core_install']['index'][7];
$theme['theme']['header']['featureContent'] = $text['core_install']['index'][8];
$theme['theme']['menu']['burgerIconLink1'] = $text['core_install']['index'][9];
$json = json_encode($theme); $json = json_encode($theme);
file_put_contents(self::DATA_DIR.'theme.json',$json); file_put_contents(self::DATA_DIR.'theme.json',$json);
} }

View File

@ -21,4 +21,8 @@ $text['core_install']['index'][5] = 'Installation completed';
$text['core_install']['index'][6] = 'home.html'; $text['core_install']['index'][6] = 'home.html';
// Texte par défaut à gauche du footer // Texte par défaut à gauche du footer
$text['core_install']['index'][7] = 'Custom footer'; $text['core_install']['index'][7] = 'Custom footer';
// Texte pour la bannière customisable
$text['core_install']['index'][8] = 'Banner empty';
// Texte pour le lien vers la page d'accueil
$text['core_install']['index'][9] = 'home';
?> ?>

View File

@ -21,4 +21,8 @@ $text['core_install']['index'][5] = 'Instalación completa';
$text['core_install']['index'][6] = 'home.html'; $text['core_install']['index'][6] = 'home.html';
// Texte par défaut à gauche du footer // Texte par défaut à gauche du footer
$text['core_install']['index'][7] = 'Pie de página personalizado'; $text['core_install']['index'][7] = 'Pie de página personalizado';
// Texte pour la bannière customisable
$text['core_install']['index'][8] = 'Banner vacío';
// Texte pour le lien vers la page d'accueil
$text['core_install']['index'][9] = 'inicio';
?> ?>

View File

@ -21,4 +21,8 @@ $text['core_install']['index'][5] = 'Installation terminée';
$text['core_install']['index'][6] = 'accueil.html'; $text['core_install']['index'][6] = 'accueil.html';
// Texte par défaut à gauche du footer // Texte par défaut à gauche du footer
$text['core_install']['index'][7] = 'Pied de page personnalisé'; $text['core_install']['index'][7] = 'Pied de page personnalisé';
// Texte pour la bannière customisable
$text['core_install']['index'][8] = 'Bannière vide';
// Texte pour le lien vers la page d'accueil
$text['core_install']['index'][9] = 'accueil';
?> ?>

View File

@ -0,0 +1 @@
<p>Content of your new page.</p>

View File

@ -1,6 +1,6 @@
{ {
"locale": { "locale": {
"homePageId": "accueil", "homePageId": "home",
"page302": "none", "page302": "none",
"page403": "none", "page403": "none",
"page404": "none", "page404": "none",

View File

@ -1,10 +1,10 @@
{ {
"page": { "page": {
"accueil": { "home": {
"typeMenu": "text", "typeMenu": "text",
"iconUrl": "", "iconUrl": "",
"disable": false, "disable": false,
"content": "accueil.html", "content": "home.html",
"hideTitle": true, "hideTitle": true,
"homePageId": true, "homePageId": true,
"breadCrumb": false, "breadCrumb": false,

View File

@ -348,8 +348,8 @@ class init extends common {
'swiperTransition' => '1000' 'swiperTransition' => '1000'
], ],
'menu' => [ 'menu' => [
'backgroundColor' => 'rgba(32, 59, 82, 0.85)', 'backgroundColor' => 'rgba(103, 127, 163, 0.85)',
'backgroundColorSub' => 'rgba(32, 59, 82, 1)', 'backgroundColorSub' => 'rgba(83, 107, 143, 1)',
'font' => 'roboto', 'font' => 'roboto',
'fontSize' => '1.1em', 'fontSize' => '1.1em',
'fontWeight' => 'normal', 'fontWeight' => 'normal',
@ -363,19 +363,31 @@ class init extends common {
'fixed' => true, 'fixed' => true,
'activeColorAuto' => true, 'activeColorAuto' => true,
'activeColor' => 'rgba(255, 255, 255, 1)', 'activeColor' => 'rgba(255, 255, 255, 1)',
'activeTextColor' => 'rgba(255, 255, 255, 1)', 'activeTextColor' => 'rgba(224, 248, 87, 1)',
'radius' => '0px', 'radius' => '0px',
'memberBar' => true, 'memberBar' => true,
'burgerLogo' => '',
'burgerContent' => 'title',
'width' => 'container', 'width' => 'container',
'burgerFontSize' => '1.5em',
'burgerTextColor' => '#DDD',
'minWidthTab' => 'auto', 'minWidthTab' => 'auto',
'minWidthParentOrAll' => false, 'minWidthParentOrAll' => false,
'widthLogo' => '30px', 'burgerTitle' => false,
'heightLogo' => 'auto' 'burgerIcon1' => 'icones/home_orange.png',
], 'burgerIcon2' => '',
'burgerContent' => 'oneIcon',
'burgerTextColor' => 'rgba(221, 221, 221, 1)',
'burgerFontSize' => '1.5em',
'burgerFixed' => true,
'burgerIconColor' => 'rgba(199, 246, 9, 1)',
'burgerIconBgColor' => 'rgba(103, 127, 163, 0)',
'burgerBannerColor' => 'rgba(103, 127, 163, 0)',
'burgerTextMenuColor' => 'rgba(255, 255, 255, 1)',
'burgerActiveTextColor' => 'rgba(224, 248, 87, 1)',
'burgerBackgroundColor' => 'rgba(103, 127, 163, 0.85)',
'burgerActiveColorAuto' => true,
'burgerActiveColor' => '',
'burgerBackgroundColorSub' => 'rgba(83, 107, 143, 1)',
'burgerIconLink1' => 'accueil',
'burgerIconLink2' => ''
],
'site' => [ 'site' => [
'backgroundColor' => 'rgba(255, 255, 255, 1)', 'backgroundColor' => 'rgba(255, 255, 255, 1)',
'radius' => '0px', 'radius' => '0px',

View File

@ -213,6 +213,10 @@ tinymce.init({
image_caption: true, image_caption: true,
// Pages internes // Pages internes
link_list: baseUrl + "core/vendor/tinymce/links.php", link_list: baseUrl + "core/vendor/tinymce/links.php",
link_class_list: [
{title: 'None', value: ''},
{title: 'clicked_link_count', value: 'clicked_link_count'}
],
// Contenu du menu contextuel // Contenu du menu contextuel
contextmenu: "selectall searchreplace | hr | media image link anchor nonbreaking | insertable cell row column deletetable", contextmenu: "selectall searchreplace | hr | media image link anchor nonbreaking | insertable cell row column deletetable",
// Fichiers CSS à intégrer à l'éditeur // Fichiers CSS à intégrer à l'éditeur

View File

@ -105,7 +105,7 @@ $text['statislite_view']['index'][27] = ' - Total number of pages viewed: ';
$text['statislite_view']['index'][28] = ' - Number of visits: '; $text['statislite_view']['index'][28] = ' - Number of visits: ';
$text['statislite_view']['index'][29] = 'en_GB'; $text['statislite_view']['index'][29] = 'en_GB';
$text['statislite_view']['index'][30] = 'Europe/London'; $text['statislite_view']['index'][30] = 'Europe/London';
$text['statislite_view']['index'][31] = 'Links clicked'; $text['statislite_view']['index'][31] = 'Links clicked since ';
$text['statislite']['config'][0] = 'Your choice...'; $text['statislite']['config'][0] = 'Your choice...';
$text['statislite']['config'][1] = 'Changes saved'; $text['statislite']['config'][1] = 'Changes saved';
$text['statislite']['config'][2] = 'No save file'; $text['statislite']['config'][2] = 'No save file';

View File

@ -105,7 +105,7 @@ $text['statislite_view']['index'][27] = ' - Número total de páginas vistas: ';
$text['statislite_view']['index'][28] = ' - Número de visitas: '; $text['statislite_view']['index'][28] = ' - Número de visitas: ';
$text['statislite_view']['index'][29] = 'es_ES'; $text['statislite_view']['index'][29] = 'es_ES';
$text['statislite_view']['index'][30] = 'Europe/Madrid'; $text['statislite_view']['index'][30] = 'Europe/Madrid';
$text['statislite_view']['index'][31] = 'Enlaces seleccionados'; $text['statislite_view']['index'][31] = 'Enlaces seleccionados desde ';
$text['statislite']['config'][0] = 'Tu elección...'; $text['statislite']['config'][0] = 'Tu elección...';
$text['statislite']['config'][1] = 'Cambios guardados'; $text['statislite']['config'][1] = 'Cambios guardados';
$text['statislite']['config'][2] = 'No hay archivo de respaldo'; $text['statislite']['config'][2] = 'No hay archivo de respaldo';

View File

@ -105,7 +105,7 @@ $text['statislite_view']['index'][27] = ' - Nombre total de pages vues : ';
$text['statislite_view']['index'][28] = ' - Nombre de visites : '; $text['statislite_view']['index'][28] = ' - Nombre de visites : ';
$text['statislite_view']['index'][29] = 'fr_FR'; $text['statislite_view']['index'][29] = 'fr_FR';
$text['statislite_view']['index'][30] = 'Europe/Paris'; $text['statislite_view']['index'][30] = 'Europe/Paris';
$text['statislite_view']['index'][31] = 'Liens cliqués'; $text['statislite_view']['index'][31] = 'Liens cliqués depuis le ';
$text['statislite']['config'][0] = 'Votre choix...'; $text['statislite']['config'][0] = 'Votre choix...';
$text['statislite']['config'][1] = 'Modifications enregistrées'; $text['statislite']['config'][1] = 'Modifications enregistrées';
$text['statislite']['config'][2] = 'Pas de fichier de sauvegarde'; $text['statislite']['config'][2] = 'Pas de fichier de sauvegarde';

View File

@ -4,7 +4,9 @@
if (isset($_POST['url'])) { if (isset($_POST['url'])) {
$url = $_POST['url']; $url = $_POST['url'];
$urlfile = 'counter.json'; $urlfile = 'counter.json';
if( !is_file( $urlfile )) file_put_contents($urlfile,'{"'.$url.'":0}'); if( !is_file( $urlfile ) || filesize($urlfile)<5 ){
file_put_contents($urlfile,'{"date_creation_fichier":"'.date('Y/m/d H:i:s').'"}');
}
$json = file_get_contents($urlfile); $json = file_get_contents($urlfile);
$tab = json_decode($json, true); $tab = json_decode($json, true);
//Lire le tableau si la clef === $url incrémentation de la valeur associée, sortir //Lire le tableau si la clef === $url incrémentation de la valeur associée, sortir

View File

@ -152,19 +152,34 @@ if( function_exists('datefmt_create') && function_exists('datefmt_format') && ex
* Affichage des téléchargements * Affichage des téléchargements
* *
*/ */
if( file_exists( $module::$downloadLink.'counter.json' ) && file_get_contents($module::$downloadLink.'counter.json') !== '{}'){ ?> if( file_exists( $module::$downloadLink.'counter.json' ) && file_get_contents($module::$downloadLink.'counter.json') !== '{}'){
<div class="block">
<div class="blockTitle"><?php echo $text['statislite_view']['index'][31]; ?></div>
<?php
$json = file_get_contents($module::$downloadLink.'counter.json'); $json = file_get_contents($module::$downloadLink.'counter.json');
$download = json_decode($json, true); $download = json_decode($json, true);
foreach( $download as $key=>$value){ ?> if( function_exists('datefmt_create') && function_exists('datefmt_format') && extension_loaded('intl') ){
// Affichage au format de la langue d'administration
$fmt = datefmt_create(
$text['statislite_view']['index'][29],
IntlDateFormatter::LONG,
IntlDateFormatter::SHORT,
$text['statislite_view']['index'][30],
IntlDateFormatter::GREGORIAN
);
$datedeb = datefmt_format($fmt, strtotime($download["date_creation_fichier"]));
} else{
$datedeb = $download["date_creation_fichier"];
} ?>
<div class="block">
<div class="blockTitle"><?php echo $text['statislite_view']['index'][31].$datedeb; ?></div>
<?php
foreach( $download as $key=>$value){
if( $key !== "date_creation_fichier" ){ ?>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<?php echo '<em>'.$key.'</em> => <strong>'.$value.'</strong>'; ?> <?php echo '<em>'.$key.'</em> => <strong>'.$value.'</strong>'; ?>
</div> </div>
</div> </div>
<?php } ?> <?php } } ?>
</div> </div>
<?php } ?> <?php } ?>