Cela devrait en interesser certain.
Ce plugin permet d'ajouter 2 blocs de menu dans la barre de menu, il accepte n'importe quel code HTML (en principe).
http://phpwebgallery.net/ext/extension_view.php?eid=187
==> http://phpwebgallery.net/ext/upload/ext … enshot.jpg
Ce plugin fait suite à ce message : [Plugin] AdSense MenuBar http://forum.phpwebgallery.net/viewtopic.php?id=11939
Je l'ai pas mal fait évolué par rapport à ce que j'envisageais au début et j'ai élargie ces possibilitées et lui est donc donnée un autre nom.
Il est compatible avec Menubarrmanager, qui vous permet de déplacer les blocs de menu dans la barre.
Je souhaite le rendre compatible aussi avec Uptodate, mais je ne sais pas comment faire pour l'instant. Un peu d'aide serait le bien venu, si vous voulez que cela soit rapidement implémenté, si non faudra attendre.
Je l'ai essentiellement tester dans sa version FR, le UK est présent mais nécessite d'être revu pour les traductions.
Pour l'instant il est assez dépouillé, mais parfaitement fonctionnel et administrable dans les plugin. J'envisage d'ajouter quelques fonctions (plusieurs idées commencent à venir). Faites moi vos retour et vos demandes d'évolution.
J'attend vos commentaires.
Dernière modification par yserver (2007-10-11 15:16:37)
Hors ligne
<?php
/*
Plugin Name: BlocMenuAdd
Version: 1.7.d
Description: Permet d'ajouter 2 blocs de menu personalisés dans la barre de menu
Plugin URI: http://phpwebgallery.net/ext/extension_view.php?eid=187
Author: yserver
Author URI: http://sebouvard.free.fr
*/
Hors ligne
Oui exact je vais rajouter cela.
Je ne l'avais pas encore mis puisque pas encore posté.
Hors ligne
Bon, nickel, pas grand chose à dire...
Mais quand meme, quelques petits trucs:
- revoir le fichier plugin.lang.php en anglais, les index ne sont pas bon...
- dans le fichier admin/BlocMenuAdd_admin.php, ligne 35, il faudrait mettre:
array_push($page['infos'], l10n('BlocMenuAdd_save_config');
Quelques suggestions:
- pourquoi mettre d'office 2 blocs? Et si j'en veut qu'un? (je suis obligé d'installer menubar manager). Et si j'en veux 3? (la, rien à faire)
- après on peut gérer ces blocs de la meme manières que les pages créées avec additional pages (gestion par langue, type d'utilisateur, groupes). Mais ca, c'est une autre paire de manche...
Hors ligne
P@t a écrit:
Bon, nickel, pas grand chose à dire...
Mais quand meme, quelques petits trucs:
- revoir le fichier plugin.lang.php en anglais, les index ne sont pas bon...
Ca ne m'etonne pas j'ai pas été très attentif dessus
P@t a écrit:
- dans le fichier admin/BlocMenuAdd_admin.php, ligne 35, il faudrait mettre:
array_push($page['infos'], l10n('BlocMenuAdd_save_config');
Je veux bien mais cette ligne je dois avouer que je ne sais pas pourquoi elle est là à par pour que ca marche.
Tu peux m'en dire plus
P@t a écrit:
Quelques suggestions:
- pourquoi mettre d'office 2 blocs? Et si j'en veut qu'un? (je suis obligé d'installer menubar manager). Et si j'en veux 3? (la, rien à faire)
- après on peut gérer ces blocs de la meme manières que les pages créées avec additional pages (gestion par langue, type d'utilisateur, groupes). Mais ca, c'est une autre paire de manche...
J'y ai déjà pensé, mais ca nécessite pas mal de tests logiques supplémentaires. Ca viens petit à petit : gestion des droits et nom de bloc non limité. Il faut que je débroussaille cela avant de m'y mettre.
J'ai rien contre un petit coups de pouce ou suggestion pour formaliser cela.
De mon coté je réflechie.
Hors ligne
Jolie travail merci
premier retour suite à un premier test sur une galerie que je viens de recharger toute neuve !
j'appelle le premier cadre TEST1 je colle dans le cadre un lien
j'appelle l'autre cadre TEST2 je colle dans le cadre un lien vers une image
et la le premier cadre ça va je part en direction du liens indiquer
le 2ème cadre l'image s'affiche mais en plus si je clic sur l'image je part en direction du liens de mon cadre 1 et la cela ne va plus ! (le lien se met aussi sur le titre TEST2)
Dernière modification par ddtddt (2007-10-11 22:11:32)
Hors ligne
le poroblème vien de ton code.
Le code de TEST1 est mauvais ajoute </a> avant </html>
Hors ligne
yserver a écrit:
le poroblème vien de ton code.
Le code de TEST1 est mauvais ajoute </a> avant </html>
ok merci j'ai taper trop vite.
il serrait peut être l'intéressant que les balise html se referme au moment de la validation ou que cela indique qu'il y a une erreur une partie des personnes qui vont utiliser le plugin ne sont que des utilisateurs.
Hors ligne
Cela ne changerait rien de le mettre dans un div.
Si tu oublie de fermer une balise, cela générera forcément des problèmes.
Je ne peux pas controler le code entré, c'est pour ca qu'il y a l'appercu.
L'appercu devait certainement presenter le même problème, mais tu ne l'a pas vu.
Hors ligne
yserver a écrit:
L'appercu devait certainement presenter le même problème, mais tu ne l'a pas vu.
non il ne représenter pas le même problème et cela m'a étonné.
Hors ligne
Exact dans l'appercu cela ne pose pas de pb.
Je suis assez surpris.
Je chercherais, mais c'est pas dans les trucs urgent.
Effectivement si vous mettez du code html erroné forcément le résulta est plutot imprévisible. Mais ça c'est valable pour tous le code que vous pouvez écrire (c/c++ html ...).
Hors ligne
yserver a écrit:
P@t a écrit:
- dans le fichier admin/BlocMenuAdd_admin.php, ligne 35, il faudrait mettre:
array_push($page['infos'], l10n('BlocMenuAdd_save_config');
Je veux bien mais cette ligne je dois avouer que je ne sais pas pourquoi elle est là à par pour que ca marche.
Tu peux m'en dire plus
$page['infos'] est un tableau qui regroupe tous les messages d'infos à afficher (dans un cadre vert)
$page['errors'] est un tableau qui regroupe tous les messages d'erreur (cadre rose)
Après, utiliser l10n('texte') revient au meme qu'utiliser $lang['texte'].
Mais ne génèrera pas d'erreur si $lang['texte'] n'existe pas.
l10n('texte') est l'équivalent de {lang:texte} des fichiers templates.
yserver a écrit:
J'ai rien contre un petit coups de pouce ou suggestion pour formaliser cela.
De mon coté je réflechie.
N'hésite pas à poser des questions ;-)
Dernière modification par P@t (2007-10-12 11:02:40)
Hors ligne
Je viens de trouver un bug :
Si le bloc contient une virgule dans un des champs, alors il est mal interprété.
J'envisage une solution ==> Changé le caractère de séparation du champs dans la base.
Je pense aux caractères | ou _.
Mais le problème sera toujours présent si le champs contient ce caractère. C'est peut probable donc le problème est limité et je peux ajouter un message d'avertisement.
La fonction explode("x",var) accèpte elle un appel de ce type explode("|_" ,var), cela permetrai de ne plus avoir de restriction dans la saisie, la chaine |_ étant peut probable.
Merci
Hors ligne
Tous mes plugins utilisent implode et explode avec une virgule pour enregistrer la config dans la table de donnée...
La raison: je ne savais pas faire autrement à mes débuts dans le php ;-)
Mais tu peux aussi utiliser le fonction serialyse et unserialyse pour passer un tableau dans la base de donnée.
Ce qui te donnera:
if ( isset($_POST['submit']) )
{
$array = array(stripslashes($_POST['BlocMenuAdd_titre_1']),
stripslashes($_POST['BlocMenuAdd_titre_2']),
stripslashes($_POST['BlocMenuAdd_content_1']),
stripslashes($_POST['BlocMenuAdd_content_2']));
$query = '
UPDATE '.CONFIG_TABLE.'
SET value="'. addslashes(serialize($array)) . '"
WHERE param="BlocMenuAdd"
LIMIT 1';
....
}
Attention, il faudra modifier la suite aussi ;-)
Puis pour récupérer les données:
$conf_BlocMenuAdd = unserialize($conf['BlocMenuAdd']);
Dernière modification par P@t (2007-10-12 12:42:43)
Hors ligne