Annonce

Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

P@t
2011-05-11 20:51:18

mistic100 a écrit:

get_admin_plugin_menu_links ?
ouais mais... il n'est pas fait pour ça :D

Si on devait avoir un trigger spécifique pour chaque bout de code à insérer, il y aurait un trigger toute les trois lignes! Pour ce cas précis, je reconnais que ca serait peut-etre judicieux d'avoir une nouveau trigger... mais je me contente très bien de celui qui existe...

mistic100 a écrit:

et puis c'est un trigger_event, tel que je me connais je vais oublier de faire transiter les données et je vais tourner en rond pendant 1h à trouver pourquoi c'est tout cassé

Ca n'arrivera que la première fois ;-)

mistic100
2011-05-11 16:16:14

get_admin_plugin_menu_links ?
ouais mais... il n'est pas fait pour ça :D
et puis c'est un trigger_event, tel que je me connais je vais oublier de faire transiter les données et je vais tourner en rond pendant 1h à trouver pourquoi c'est tout cassé

P@t
2011-05-11 16:06:18

mistic100 a écrit:

comme c'est pas la première fois que ça m'arrive je vais ajouter un trigger ('loc_begin_admin_page' ligne 224 de admin.php), j'ai vu qu'il y en a sur certaines page (cat_modify par exemple) mais pas sur toutes

Perso, j'utilise en général le trigger plugin_admin_menu_link qui fait très bien l'affaire :-)

mistic100
2011-05-11 12:21:23

c'est bon j'y suis :D

seulement il y a un problème, c'est que j'ai besoin d'opérer avant que la page picture_modify soit exécutée, mais j'ai besoin des variables $page[*] qui sont créée entre le trigger 'loc_gegin_admin' et l'inclusion de la page

comme c'est pas la première fois que ça m'arrive je vais ajouter un trigger ('loc_begin_admin_page' ligne 224 de admin.php), j'ai vu qu'il y en a sur certaines page (cat_modify par exemple) mais pas sur toutes

mistic100
2011-05-11 12:01:56

j'avais essayé aussi penses-tu ^^

et Damien je ne vois pas bien la différence entre mon code et le tiens :s

bon là je vais m'y remettre je suis sur que c'est a bonne

P@t
2011-05-11 09:28:50

Comme je le dis souvent attention à preg_replace... il y a des caractères non-échappés dans le pattern.

S'il n'y a pas besoin d'utiliser d'expression rationelle, alors, mieux vaut utiliser un str_replace pour éviter les soucis:

Code:

function smart_prefilter($content, &$smarty)
{
  $search = '<form action="{$F_ACTION}" method="POST" id="links">';
  
  $replacement = '
My new form here
<form action="{$F_ACTION}" method="POST" id="links">
  ';
  
  return str_replace($search, $replacement, $content);
}
LucMorizur
2011-05-10 22:30:41

Bah, euh, moi, ça va, aujourd'hui, hein... (enfin, si j'arrive à m'y remettre :-/ ...) (Je ne sais pas si ça s'adresse à moi ou à mistic100, ou aux deux.) Mais je peux en tous cas regarder si ta proposition donne du mieux.

Voyons en tous cas si ça aide mistic100 :-)

ddtddt
2011-05-10 21:32:49

j'ai oublié une partie de l'explication dsl

dans le fichier cat_modify.php tu as ligne 194

$template->set_filename( 'categories', 'cat_modify.tpl');

donc le nom à filtré est sur categories

ddtddt
2011-05-10 21:29:18

je te propose plutôt

fichier main.inc.php

if (script_basename() == 'admin')
{
  include(SMART_PATH.'init_cat_modify.php');

}

fichier init_cat_modify.php

add_event_handler('loc_begin_admin', 'smart_init_prefilter', 50);

function smart_init_prefilter()
{
  global $template;
  $template->set_prefilter('categories', 'smart_prefilter');
}

function smart_prefilter($content, &$smarty)
{
  $search = '#<form .*? id="links">#';
 
  $replacement = '
My new form here
<form action="{$F_ACTION}" method="POST" id="links">
  ';
 
  return preg_replace($search, $replacement, $content);
}

mais tu n'en a peux être plus besoin

LucMorizur
2011-05-10 13:30:40

Je ne sais pas si ça peut aider...

Dans post:133967, P@t m'a aidé à trouver le handler pour le préfiltre dont j'ai besoin pour extension:326. Ce n'est pas encore implémenté dans la version actuelle de Event Cats, mais j'ai pu modifier la page d'admin cat_list.php correctement, ça fonctionne en local.

mistic100
2011-05-09 23:13:49

nan définitivement il y a un truc qui m'échappe

fichier main.inc.php

Code:

if (script_basename() == 'admin')
{
  include(SMART_PATH.'init_cat_modify.php');
  add_event_handler('loc_begin_admin', 'smart_init_prefilter', 50);  
}

fichier init_cat_modify.php

Code:

function smart_init_prefilter()
{
  global $template;
  $template->set_prefilter('cat_modify', 'smart_prefilter');
}

function smart_prefilter($content, &$smarty)
{
  $search = '#<form action="{$F_ACTION}" method="POST" id="links">#';
  
  $replacement = '
My new form here
<form action="{$F_ACTION}" method="POST" id="links">
  ';
  
  return preg_replace($search, $replacement, $content);
}

et nada !
pourtant 5 secondes avant le même script fonctionnait sur 'picture_modify'

ps : j'ai essayé d'appliquer le préfiltre à 'categories' aussi, ne sachant plus si on doit faire référence au nom du fichier ou au nom sous lequel il est inclut

mistic100
2011-05-09 22:48:17

cache du template.... il ne passera pas un jour sans que je me fasse avoir

avec $conf['template_force_compile'] = true; c'est mieux

mistic100
2011-05-08 20:22:03

j'ai essayé pourtant...
je vais regarder addInfo, il doit y avoir une subtilité

ddtddt
2011-05-08 20:20:36

je pense que tu peux faire un préfiltre sur picture_modify sans problème

je l'utilise pour addInfo, title et meta

mistic100
2011-05-06 21:35:08

Question assez technique aux devs de longue date ^^

Comment ajouter des "trucs" sur la page "picture_modify" (back-office)
j'ai pensé à un préfiltre mais j'ai l'impression que ça ne fonctionne que pour des template compilés par pparse, ici c'est assign_var_from_handle qui est utilisé

En fait là je suis sur cette page mais ça peut s'appliquer à n'importe quelle page admin, pour CommentOnAlbums j'ai modifié le DOM en javascript parce qu'il n'y avait pas grand chose, mais pour les modifs plus lourdes c'est pas génial.
On peu facilement ajouter des éléments à la suite mais pas au milieu de ces pages.

hs mais pas trop : ça serait une bonne idée d'utiliser les mêmes méthodes pour la gestion du template côté admin que côté publique...

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact