Skip to content
Extraits de code Groupes Projets
Valider 1e93659d rédigé par marcimat's avatar marcimat
Parcourir les fichiers

Début d'intégration du plugin "Menu prive alpha".

Ici on ajoute simplement un formulaire permettant de cocher des entrées "favorites " sur les  menus principaux.
Ce formulaire est pour l'instant ajouté sous le formulaire de préférences actuel.

Note: j'avais tenté de l'intégrer directement dans le formulaire de préférence, mais ce n'était pas pratique
à l'usage à cause de l'auto-submit sur ce formulaire.
parent 352efa22
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -326,6 +326,8 @@ prive/formulaires/configurer_multilinguisme.html -text
prive/formulaires/configurer_multilinguisme.php -text
prive/formulaires/configurer_preferences.html -text
prive/formulaires/configurer_preferences.php -text
prive/formulaires/configurer_preferences_menus.html -text
prive/formulaires/configurer_preferences_menus.php -text
prive/formulaires/configurer_previsualiseur.html -text
prive/formulaires/configurer_previsualiseur.php -text
prive/formulaires/configurer_redacteurs.html -text
......
......@@ -178,3 +178,18 @@ function bandeau_creer_url($url, $args = '', $contexte = null) {
function inc_bandeau_dist() {
return recuperer_fond('prive/squelettes/inclure/barre-nav', $_GET);
}
/**
* Retourne la liste des noms d'entrées de menus favoris de l'auteur connecté
* @return array
*/
function obtenir_menus_favoris() {
if (
isset($GLOBALS['visiteur_session']['prefs']['menus_favoris'])
and is_array($GLOBALS['visiteur_session']['prefs']['menus_favoris'])
) {
return $GLOBALS['visiteur_session']['prefs']['menus_favoris'];
}
return array();
}
\ No newline at end of file
......@@ -882,6 +882,7 @@ avez fait des modifications importantes de graphisme ou de structure du site.',
'titre_config_langage' => 'Configurer la langue',
'titre_configuration' => 'Configuration du site',
'titre_configurer_preferences' => 'Configurer vos préférences',
'titre_configurer_preferences_menus' => 'Configurer vos menus',
'titre_conflit_edition' => 'Conflit lors de l’édition',
'titre_connexion_ldap' => 'Options : <b>Votre connexion LDAP</b>',
'titre_groupe_mots' => 'GROUPE DE MOTS :',
......@@ -903,6 +904,7 @@ avez fait des modifications importantes de graphisme ou de structure du site.',
'titre_page_recherche' => 'Résultats de la recherche @recherche@',
'titre_page_statistiques_referers' => 'Statistiques (liens entrants)',
'titre_page_upgrade' => 'Mise à niveau de SPIP',
'titre_preference_menus_favoris' => 'Menus favoris',
'titre_publication_articles_post_dates' => 'Publication des articles post-datés',
'titre_reparation' => 'Réparation',
'titre_suivi_petition' => 'Suivi des pétitions',
......
<div class="formulaire_spip formulaire_configurer formulaire_#FORM formulaire_#FORM-#ENV{id,nouveau}">
<h3 class='titrem'><:titre_configurer_preferences_menus:></h3>
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
<form method='post' action='#ENV{action}'><div>
#ACTION_FORMULAIRE
#SET{boutons,#ARRAY|definir_barre_boutons{0}}
<div class='menus_favoris fieldset'>
<fieldset>
<legend><:titre_preference_menus_favoris:></legend>
<div class="editer-groupe deux_colonnes">
<BOUCLE_menu(DATA){source tableau, #GET{boutons}}{cle LIKE 'menu_%'}{cle !IN #LISTE{menu_accueil}}>
<B_menusous>
<div class="editer menus_favoris pleine_largeur">
<label>[(#LIBELLE|_T)]</label>
[<span class='erreur_message'>(#ENV{erreurs/menus_favoris})</span>]
<BOUCLE_menusous(DATA){source tableau, #SOUSMENU}>
<div class="item choix">
<input class='checkbox' type="checkbox" name="menus_favoris[]" value="#CLE" id="menu_fav_#CLE"[(#CLE|in_any{#ENV{menus_favoris}}|oui)checked="checked"]>
<label for="menu_fav_#CLE">[(#LIBELLE|_T)]</label>
</div>
</BOUCLE_menusous>
</div>
</B_menusous>
</BOUCLE_menu>
</div>
</fieldset>
</div>
[(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
<!--extra-->
<p class='boutons'><span class='image_loading'>&nbsp;</span><input type='submit' class='submit' value='<:bouton_enregistrer:>' /></p>
</div></form>
</div>
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
/**
* Formulaire de configuration des préférences auteurs dans l'espace privé
*
* Ces préférences sont stockées dans la clé `prefs` dans la session de l'auteur
* en tant que tableau, ainsi que dans la colonne SQL `prefs` de spip_auteurs
* sous forme sérialisée.
*
* @package SPIP\Core\Formulaires
**/
include_spip('inc/bandeau');
/**
* Chargement du formulaire de préférence des menus d'un auteur dans l'espace privé
*
* @return array
* Environnement du formulaire
**/
function formulaires_configurer_preferences_menus_charger_dist() {
// travailler sur des meta fraîches
include_spip('inc/meta');
lire_metas();
$valeurs = array();
$valeurs['menus_favoris'] = obtenir_menus_favoris();
return $valeurs;
}
/**
* Traitements du formulaire de préférence des menus d'un auteur dans l'espace privé
*
* @return array
* Retours des traitements
**/
function formulaires_configurer_preferences_menus_traiter_dist() {
$menus_favoris = _request('menus_favoris');
// si le menu change, on recharge toute la page.
if ($menus_favoris != obtenir_menus_favoris()) {
refuser_traiter_formulaire_ajax();
$GLOBALS['visiteur_session']['prefs']['menus_favoris'] = $menus_favoris;
if (intval($GLOBALS['visiteur_session']['id_auteur'])) {
include_spip('action/editer_auteur');
$c = array('prefs' => serialize($GLOBALS['visiteur_session']['prefs']));
auteur_modifier($GLOBALS['visiteur_session']['id_auteur'], $c);
}
}
return array('message_ok' => _T('config_info_enregistree'), 'editable' => true);
}
<!-- <h1 class="grostitre"><:icone_mes_preferences:></h1> -->
<div class="ajax">
#FORMULAIRE_CONFIGURER_PREFERENCES
</div>
<div class="ajax">
#FORMULAIRE_CONFIGURER_PREFERENCES_MENUS
</div>
\ No newline at end of file
......@@ -65,6 +65,8 @@ h3.titrem {position:relative;}
.formulaire_spip .editer {padding: [(#ENV{margin-bottom}|floatval|div{2})em] 10px;clear:both;overflow:hidden;}
.formulaire_spip .editer-groupe.deux_colonnes { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; }
/* label -----*/
/* Formulaires alignes a gauche c'est le par defaut des formulaires de Spip */
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter