From 4d507dce52676264bd80a0f3f564476da731a60e Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Thu, 5 Oct 2006 21:42:10 +0000 Subject: [PATCH] =?UTF-8?q?Les=20mini-gadgets=20en=20JavaScript=20asynchro?= =?UTF-8?q?ne=20plutot=20que=20synchrone=20c'est=20=C3=A0=20peine=20plus?= =?UTF-8?q?=20compliqu=C3=A9=20et=20le=20chargement=20est=20un=20chouia=20?= =?UTF-8?q?plus=20rapide.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/exec/articles.php | 2 +- ecrire/inc/chercher_rubrique.php | 2 +- ecrire/inc/gadgets.php | 36 ++++++++++---------------------- ecrire/inc/presentation.php | 11 +++------- 4 files changed, 16 insertions(+), 35 deletions(-) diff --git a/ecrire/exec/articles.php b/ecrire/exec/articles.php index fc39bd1357..7550567ae6 100644 --- a/ecrire/exec/articles.php +++ b/ecrire/exec/articles.php @@ -376,7 +376,7 @@ function afficher_corps_articles($virtuel, $chapo, $texte, $ps, $extra) if ($virtuel) { $res .= debut_boite_info(true) - . "\n<div id='renvoi' style='text-align: center'>" + . "\n<div style='text-align: center'>" . _T('info_renvoi_article') . " " . propre("[->$virtuel]") diff --git a/ecrire/inc/chercher_rubrique.php b/ecrire/inc/chercher_rubrique.php index 90f09a9e29..608d4f3f48 100644 --- a/ecrire/inc/chercher_rubrique.php +++ b/ecrire/inc/chercher_rubrique.php @@ -204,7 +204,7 @@ function selecteur_rubrique_ajax($id_rubrique, $type, $restreint, $idem=0) { $exclus = "&exclus=$idem&rac=oui"; if ($id_rubrique) - list($titre_parent) = spip_fetch_array(spip_query("SELECT titr<e FROM spip_rubriques WHERE id_rubrique=$id_rubrique"), SPIP_NUM); + list($titre_parent) = spip_fetch_array(spip_query("SELECT titre FROM spip_rubriques WHERE id_rubrique=$id_rubrique"), SPIP_NUM); else if ($type == 'auteur') $titre_parent = ' '; else diff --git a/ecrire/inc/gadgets.php b/ecrire/inc/gadgets.php index fb1189f7ee..f8e868f856 100644 --- a/ecrire/inc/gadgets.php +++ b/ecrire/inc/gadgets.php @@ -24,6 +24,11 @@ include_spip('inc/presentation'); // +function inc_gadgets_dist($id_rubrique, $gadget) +{ + $gadget = 'gadget_' . $gadget; + return (function_exists($gadget)) ? $gadget($id_rubrique) : ''; +} // // GADGET DES RUBRIQUES // @@ -456,32 +461,13 @@ function gadget_messagerie() { return $gadget; } - -// http://doc.spip.org/@dessiner_gadgets -function dessiner_gadgets($id_rubrique) { +function repercuter_gadgets($id_rubrique) { if ($_COOKIE['spip_accepte_ajax'] != -1) { - return "\n<!-- javascript gadgets -->\n" . - http_script( - "document.getElementById('gadget-rubriques').innerHTML = \"" - . addslashes(strtr(gadget_rubriques($id_rubrique),"\n\r"," ")) - . "\";\n" . - "document.getElementById('gadget-navigation').innerHTML = \"" - . addslashes(strtr(gadget_navigation($id_rubrique),"\n\r"," ")) - . "\";\n" . -# "document.getElementById('gadget-recherche').innerHTML = \"" -# . addslashes(strtr(gadget_recherche($id_rubrique),"\n\r"," ")) -# . "\";\n" . - "document.getElementById('gadget-agenda').innerHTML = \"" - . addslashes(strtr(gadget_agenda($id_rubrique),"\n\r"," ")) - . "\";\n" . - "document.getElementById('gadget-messagerie').innerHTML = \"" - . addslashes(strtr(gadget_messagerie($id_rubrique),"\n\r"," ")) - . "\";\n" . -# "document.getElementById('gadget-suivi').innerHTML = \"" -# . addslashes(strtr(gadget_suivi($id_rubrique),"\n\r"," ")) -# . "\";\n" . - - ''); + return "; + AjaxSqueeze('./?exec=gadgets&gadget=rubriques&id_rubrique=$id_rubrique', 'gadget-rubriques'); + AjaxSqueeze('./?exec=gadgets&gadget=navigation&id_rubrique=$id_rubrique', 'gadget-navigation'); + AjaxSqueeze('./?exec=gadgets&gadget=agenda&id_rubrique=$id_rubrique', 'gadget-agenda'); + AjaxSqueeze('./?exec=gadgets&gadget=messagerie&id_rubrique=$id_rubrique', 'gadget-messagerie');"; } } diff --git a/ecrire/inc/presentation.php b/ecrire/inc/presentation.php index 30e5f10d05..8cff0f5012 100644 --- a/ecrire/inc/presentation.php +++ b/ecrire/inc/presentation.php @@ -2128,8 +2128,8 @@ function init_body($rubrique='accueil', $sous_rubrique='accueil', $onLoad='', $i global $options, $spip_display, $spip_ecran; global $spip_lang, $spip_lang_rtl, $spip_lang_left, $spip_lang_right; global $browser_verifForm; - - if ($load = "$browser_verifForm$onLoad") + include_spip('inc/gadgets'); + if ($load = "$browser_verifForm$onLoad" . repercuter_gadgets($id_rubrique)) $load = " onLoad=\"$load\""; echo pipeline('body_prive',"<body ". _ATTRIBUTES_BODY @@ -2376,13 +2376,10 @@ if (true /*$bandeau_colore*/) { } // fin bandeau colore - // <div> pour la barre des gadgets // (elements invisibles qui s'ouvrent sous la barre precedente) - include_spip('inc/gadgets'); - echo bandeau_gadgets($largeur, $options, $id_rubrique); - $GLOBALS['id_rubrique_gadgets'] = $id_rubrique; # un peu sale + echo bandeau_gadgets($largeur, $options, $id_rubrique); echo "</div>"; echo "</div>"; @@ -2664,8 +2661,6 @@ function fin_html() { echo "</font>", $GLOBALS['rejoue_session']; - if (function_exists('dessiner_gadgets')) - echo dessiner_gadgets($GLOBALS['id_rubrique_gadgets']); if (defined('_TESTER_NOSCRIPT')) echo _TESTER_NOSCRIPT; -- GitLab