Hello à tous,
après une longue phase de stand-by, j'ai repris le développement de ma galerie sous Coppermine. Etant le seul à alimenter ma galerie, j'aimerais faire totalement disparaitre le menu administrateur. J'ai bien essayé Final extract mais je ne trouve pas ça terrible (ou alors j'ai mal compris comment ça marchait) et ça me laisse quand même le cadre "admin menu".
Etant donné que j'ai prévu de me connecter grâce à loginform, je veux que ce menu admin n'apparaisse que quand je me suis logué.
Est-ce que qqn a une piste ? Mettre une condition dans mon template ?
Merci par avance pour vos lumières.
LoBo
J'ai oublié l'adresse de ma galerie : http://www.lobofakes.com/gallery
ce que vous appelez menu administrateur est en fait le menu principal.
dans votre cas, il faudrait modifier le theme tout en utilisant le plugin final_extrac pour faire ce que vous souhaitez
Je sais pas ce qu'est le plugin final_extract mais le plus simple est d'éditer le fichier theme.php de votre thème.
Recherchez ceci
if ($which == 'sys_menu' ) {
if (USER_ID) {
template_extract_block($template_sys_menu, 'login');
} else {
template_extract_block($template_sys_menu, 'logout');
template_extract_block($template_sys_menu, 'my_profile');
}
if (!USER_IS_ADMIN) {
template_extract_block($template_sys_menu, 'enter_admin_mode');
template_extract_block($template_sys_menu, 'leave_admin_mode');
} else {
if (GALLERY_ADMIN_MODE) {
template_extract_block($template_sys_menu, 'enter_admin_mode');
} else {
template_extract_block($template_sys_menu, 'leave_admin_mode');
}
}
if (!USER_CAN_CREATE_ALBUMS) {
template_extract_block($template_sys_menu, 'my_gallery');
}
if (USER_CAN_CREATE_ALBUMS) {
template_extract_block($template_sys_menu, 'my_profile');
}
if (!USER_CAN_UPLOAD_PICTURES && !USER_CAN_CREATE_ALBUMS) {
template_extract_block($template_sys_menu, 'upload_pic');
}
if (USER_ID || !$CONFIG['allow_user_registration']) {
template_extract_block($template_sys_menu, 'register');
}
if (!USER_ID || !$CONFIG['allow_memberlist']) {
template_extract_block($template_sys_menu, 'allow_memberlist');
}
if (!$CONFIG['display_faq']) {
template_extract_block($template_sys_menu, 'faq');
}
Avant ajoutez
if (USER_ID) {
Après ajoutez
}
Si ce code n'existe pas dans votre theme.php copiez la fonction theme_main_menu de themes/sample/theme.php dans themes/votretheme/theme.php
euh, dans le switch il y a déjà la condition
if {USER_ID}
et dans le theme utilisé par LoBo, il y a codé en dur le titre du fameux menu.
QuoteJe sais pas ce qu'est le plugin final_extract
c'est un plugin qui permets de cacher certains éléments du menu en fonction de paramétrages configurables par groupe d'utilisateur
Quote from: François Keller on March 14, 2008, 08:48:46 PM
euh, dans le switch il y a déjà la condition if {USER_ID}
Il n'est là que pour différencier login du logout il me semble ;)
Quote from: François Keller on March 14, 2008, 08:48:46 PM
c'est un plugin qui permets de cacher certains éléments du menu en fonction de paramétrages configurables par groupe d'utilisateur
ok
QuoteIl n'est là que pour différencier login du logout il me semble Wink
exact, autant pour moi ;)
Merci à tous les 2 pour vos réponses.
En appliquant la solution de Elwood, mon menu admin disparaissait bien mais mon menu galerie aussi.
Du coup, sur les conseils de François, j'ai réessayé final extract après avoir modifié mon theme et ça marche ! ;D
Seul bémol, j'ai utilisé le plug-in de contact (version v1.3) et le lien s'affiche toujours à l'emplacement de l'ancien menu adm.
J'ai pas trouvé comment le déplacer dans le menu de la galerie. Vous avez une idée ?
Donne-nous le lien du plugin stp
et tu veux le faire apparaitre ou le lien ?
c'est dans le fichier codebase.php du plugin qu'il faut faire une modif
QuoteDonne-nous le lien du plugin stp
C'est ici : http://forum.coppermine-gallery.net/index.php/topic,37611.0.html ;)
Quoteet tu veux le faire apparaitre ou le lien ?
c'est dans le fichier codebase.php du plugin qu'il faut faire une modif
J'aurais voulu le faire apparaitre en dessous de "rechercher" dans le menu de la galerie. J'ai été voir dans codebase.php mais j'avoue ne rien avoir vu qui me parlait beaucoup... :'(
remplace le contenu du fichier codebase.php du plugin par le code ci dessous
<?php
/*************************
Coppermine Photo Gallery
************************
Copyright (c) 2003-2006 Coppermine Dev Team
v1.1 originally written by Gregory DEMAR
This program 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.
/*********************************************
Plugin Coded by Frantz Based on Gizmo MOD
Fixing contact button positioning & Added CAPTCHA confirmation
by B.Mossavari (Sami)
**********************************************/
if (!defined('IN_COPPERMINE')) die('Not in Coppermine...');
require ('plugins/contact/include/init.inc.php');
// Add an install action
$thisplugin->add_action('plugin_install','contact_install');
// Add a configure action
$thisplugin->add_action('plugin_configure','contact_configure');
// User menus , (fixed by Sami)
$thisplugin->add_action('page_start','contact_page_start');
// Install function
// Checks if uid is 'me' and pwd is 'you'; If so, then install the plugin
function contact_install() {
// Install
if ($_POST['submit']==$lang_plugin_contact['button_install']) {
return true;
// Loop again
} else {
return 1;
}
}
// Configure function
// Displays the form
function contact_configure() {
global $CONFIG, $lang_plugin_contact;
require ('plugins/contact/include/init.inc.php');
echo <<< EOT
<h2>{$lang_plugin_contact['install_click']}</h2>
{$lang_plugin_contact['install_note']}<br />
<br />
<form action="{$_SERVER['REQUEST_URI']}" method="post">
<input type="submit" value="{$lang_plugin_contact['button_install']}" name="submit" />
</form>
EOT;
}
// create button template from current sys menu template (added by Sami)
function contact_add_admin_button($href,$title,$target,$link)
{
global $template_sub_menu, $template_sys_menu_spacer;
$new_template=$template_sub_menu;
$button=template_extract_block($new_template,'search');
$params = array(
'{SEARCH_LNK}' => $target,
'{SEARCH_TITLE}' => $title,
'{SEARCH_TGT}' => $href,
'search' => $link,
);
$new_button="<!-- BEGIN $link -->".template_eval($button,$params)."<!-- END $link -->\n";
template_extract_block($template_sub_menu,'search',"<!-- BEGIN search -->" . $button . "<!-- END search -->\n" .$new_button);
}
// Add contact button after home under sys menu (added by Sami)
function contact_page_start()
{
global $template_sys_menu, $template_sys_menu_spacer, $template_sys_menu_button, $sys_menu_buttons;
global $CONFIG, $lang_plugin_contact;
require ('plugins/contact/include/init.inc.php');
require_once('plugins/contact/include/captcha.class.php');
contact_add_admin_button('index.php?file=contact/contact',$lang_plugin_contact['menu_link'],$lang_plugin_contact['menu_link'],$lang_plugin_contact['menu_link']);
}
?>
Merci pour cette réponse mais ça me fait planter la galerie. J'ai le message suivant :
Template error
Failed to find block 'search'(#(<!-- BEGIN search -->)(.*?)(<!-- END search -->)#s) in :
<!-- BEGIN custom_link -->
<li><a href="{CUSTOM_LNK_TGT}" title="{CUSTOM_LNK_TITLE}">{CUSTOM_LNK_LNK}</a></li>
<!-- END custom_link -->
<!-- BEGIN album_list -->
<li><a href="{ALB_LIST_TGT}" title="{ALB_LIST_TITLE}">{ALB_LIST_LNK}</a></li>
<!-- END album_list -->
<li><a href="{LASTUP_TGT}" title="{LASTUP_LNK}">{LASTUP_LNK}</a></li>
<li><a href="{LASTCOM_TGT}" title="{LASTCOM_LNK}">{LASTCOM_LNK}</a></li>
<li><a href="{TOPN_TGT}" title="{TOPN_LNK}">{TOPN_LNK}</a></li>
<li><a href="{TOPRATED_TGT}" title="{TOPRATED_LNK}">{TOPRATED_LNK}</a></li>
<li><a href="{FAV_TGT}" title="{FAV_LNK}">{FAV_LNK}</a></li>
<li><a href="{SEARCH_TGT}" title="{SEARCH_LNK}">{SEARCH_LNK}</a></li>
J'avoue avoir du mal à comprendre ce message. Finalement, vu la "difficulté" de l'opération et après mûre réflexion, je me dis que l'emplacement en dessous des autres menus (dans l'ancien menu admin donc) ne me gène pas tant que ça...
il manque les tags de début et de fin de section.
attache les fichiers de ton theme à ton prochain post, je te les modifierais.
Merci François, je pensais que c'était plus simple. Comme je l'avais dit, je vais finalement laisser "contact" à sa place.
c'est très simple à faire, il suffit de rajouter deux lignes au fichier theme.php, mais pour pouvoir te dire lesquelles, il me faut les fichiers du themes
Quotec'est très simple à faire, il suffit de rajouter deux lignes au fichier theme.php, mais pour pouvoir te dire lesquelles, il me faut les fichiers du themes
OK, le voici. Merci par avance
(j'ai mis l'extension .txt car il ne voulait pas .php)
essaye le fichier attaché (en le renommant en .php)
Il manquait quelques lignes à la fin du theme.txt. J'ai réparé (fichier joint) mais ça n'a rien changé, contact est toujours à la place de l'ancien menu administrateur. Mais bon comme j'ai dit, c'est pas dramatique, il ne faut pas y passer des heures.
Merci en tout cas ;) ;) ;)