Changeset 77170 in spip-zone


Ignore:
Timestamp:
Oct 11, 2013, 5:45:09 PM (8 years ago)
Author:
kent1@…
Message:

Gross amélioration de ce squelette qui est le bilan affiché uniquement pour les utilisateurs non connectés

On simplifie au maximum, on utilise des #SET #GET bien placés, éviter la redondance

On gagne à peu près 1 sec de chargement par rapport à la semaine dernière, on en a gagné 5 depuis le début de l'optimisation il y a un mois (cf http://www.webpagetest.org/video/compare.php?tests=131011_M5_PTF,131002_2S_SDN,130918_J1_100S)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _galaxie_/trad.spip.net/trunk/inclure/tradlang_bilan.html

    r77049 r77170  
     1[(#REM)
     2
     3        Bilan pour les personnes non connectées
     4
     5
     6]
    17[(#SET{langues,#ARRAY})]
    28[(#SET{langues_vides,#ARRAY})]
    3 [(#SET{langues_preferees_auteur,[(#INFO_LANGUES_PREFEREES{auteur,#SESSION{id_auteur}}|unserialize)]})]
    4 [(#SET{langues_preferees,[(#ENV{langues_choisies,[(#GET{langues_preferees_auteur,[(#CONFIG{tradlang_langues_max,[(#LISTE{fr,en,es,it}|serialize)]}|unserialize)]})]})]})]
    5 <BOUCLE_priorite(TRADLANG_MODULES){priorite = #ENV{priorite}}>
    6 #SET{priorite,#PRIORITE*}
    7 </BOUCLE_priorite>
    8 </B_priorite>
    9 <BOUCLE_priorite_un(TRADLANG_MODULES){si #ENV{priorite}|!={toutes}|oui}{par priorite}{0,1}>
    10 #SET{priorite,#PRIORITE*}
    11 </BOUCLE_priorite_un>
    12 </B_priorite_un>
    13 #SET{priorite,.*}
    14 <//B_priorite_un>
    15 <//B_priorite>
     9[(#SET{langues_preferees,[(#ENV{langues_choisies,[(#CONFIG{tradlang_langues_max,[(#LISTE{fr,en,es,it}|serialize)]}|unserialize)]})]})]
     10
    1611<BOUCLE_langues_sort(TRADLANGS){fusion lang}{lang == ^((#GET{langues_preferees}|implode{|}))$}>
     12#SET{full_total_#LANG,0}
    1713<BOUCLE_strings_ok(TRADLANGS){lang=#LANG}{statut=OK}> </BOUCLE_strings_ok>
    1814[(#TOTAL_BOUCLE|>{2}|oui)
     
    2521</BOUCLE_langues_sort>
    2622
    27 [(#ENV{afficher_form}|!={non}|oui)
    28 [(#ENV{langues_choisies}|is_array|oui)
    29 [(#SET{langues_string,[(#VAL{traduire_nom_langue}|array_map{#ENV{langues_choisies}}|implode{', '})]})]
    30 [(#BOITE_OUVRIR{'',notice})]
    31         <:tradlang:message_langues_choisies_affichees{langues=#GET{langues_string}}:>
    32 [(#BOITE_FERMER)]
     23#SET{langues,#GET{langues}|langues_sort}
    3324
    34 [(#FORMULAIRE_TRADLANG_SWITCHER_LANGUE{'',#ENV{langues_choisies},<:tradlang:titre_changer_langues_affichees:>,'langues_choisies',true})]]
     25<BOUCLE_priorite(TRADLANG_MODULES){priorite = #ENV{priorite}}>
     26[(#SET{priorite,#PRIORITE*})]
     27</BOUCLE_priorite>
     28</B_priorite>
     29<BOUCLE_priorite_un(TRADLANG_MODULES){si #ENV{priorite}|!={toutes}|oui}{par priorite}{0,1}>
     30[(#SET{priorite,#PRIORITE*})]
     31</BOUCLE_priorite_un>
     32</B_priorite_un>
     33#SET{priorite,.*}
     34<//B_priorite_un>
     35<//B_priorite>
    3536
    36 [(#ENV{langues_choisies}|is_array|non)
    37 [(#GET{langues_preferees_auteur}|is_array|oui)
    38 [(#GET{langues_preferees_auteur}|count|>{0}|oui)
    39         [(#SET{langues_string,[(#VAL{traduire_nom_langue}|array_map{#GET{langues_preferees_auteur}}|implode{', '})]})]
     37[(#ENV{afficher_form,oui}|!={non}|oui)
     38        [(#ENV{langues_choisies}|is_array|oui)
     39        [(#SET{langues_string,[(#VAL{traduire_nom_langue}|array_map{#ENV{langues_choisies}}|implode{', '})]})]
    4040        [(#BOITE_OUVRIR{'',notice})]
    41                 <:tradlang:message_langues_preferees_affichees{langues=#GET{langues_string}}:>
    42         [(#BOITE_FERMER)]
    43         [(#FORMULAIRE_TRADLANG_SWITCHER_LANGUE{'',#GET{langues_preferees_auteur},<:tradlang:titre_changer_langues_affichees:>,'langues_choisies',' '})]]]]
    44 [(#ENV{langues_choisies}|is_array|non|et{#GET{langues_preferees_auteur}|is_array|non|ou{#GET{langues_preferees_auteur}|count|>{0}|non}|oui})
    45 [(#GET{langues_utilisees}|is_array|oui)
    46         [(#SET{langues_string,[(#VAL{traduire_nom_langue}|array_map{#GET{langues_utilisees}}|implode{', '})]})]
    47         [(#BOITE_OUVRIR{'',notice})]
    48                 <:tradlang:message_langues_utilisees_affichees{langues=#GET{langues_string},nb=#GET{nb_utilisees}}:>
    49                 [(#SESSION{id_auteur}|oui)#SET{url_profil,#URL_AUTEUR{#SESSION{id_auteur}}|parametre_url{vue,profil}}
    50                 <br /><:tradlang:message_info_choisir_langues_profiles{url_profil=#GET{url_profil}}:>]
    51         [(#BOITE_FERMER)]
    52         [(#FORMULAIRE_TRADLANG_SWITCHER_LANGUE{'',#GET{langues_utilisees},<:tradlang:titre_changer_langues_affichees:>,'langues_choisies',true})]]]
    53 ]
    54 </B_langues_sort>
    55 #SET{langues,#GET{langues}|langues_sort}
    56 <B_priorites_liens>
    57 <div class="actions">
     41                <:tradlang:message_langues_choisies_affichees{langues=#GET{langues_string}}:>
     42        [(#BOITE_FERMER)]]
     43        [(#ENV{langues_choisies}|is_array|non|et{#GET{langues_preferees}|is_array}|oui)
     44                [(#SET{langues_string,[(#VAL{traduire_nom_langue}|array_map{#GET{langues_preferees}}|implode{', '})]})]
     45                [(#BOITE_OUVRIR{'',notice})]
     46                        <:tradlang:message_langues_utilisees_affichees{langues=#GET{langues_string},nb=#GET{nb_utilisees}}:>
     47                [(#BOITE_FERMER)]]
     48        [(#FORMULAIRE_TRADLANG_SWITCHER_LANGUE{'',#GET{langues_preferees},<:tradlang:titre_changer_langues_affichees:>,'langues_choisies',true})]]
     49
     50<B_priorites_liens><div class="actions">
    5851<BOUCLE_priorites_liens(TRADLANG_MODULES){fusion priorite}>
    5952[(#SELF|parametre_url{priorite,#PRIORITE*}|lien_ou_expose{#PRIORITE,#GET{priorite}|=={#PRIORITE*},btn ajax})]
    6053</BOUCLE_priorites_liens>
    6154[(#SELF|parametre_url{priorite,toutes}|lien_ou_expose{<:tradlang:lien_toutes_priorite:>,#GET{priorite}|=={.*},btn ajax})]
    62 </div>
    63 </B_priorites_liens>
    64 <BOUCLE_priorites(TRADLANG_MODULES){priorite == #GET{priorite,.*}$}{fusion priorite}>
    65 <B_modules_lang>
     55</div></B_priorites_liens>
     56
     57<BOUCLE_priorites(TRADLANG_MODULES){priorite == #GET{priorite,.*}$}{fusion priorite}>[(#SET{full_total,0})]
    6658<h3 class="h3">#PRIORITE[ ((#GRAND_TOTAL))]</h3>
    67 [<div class="description description_priorite[ (#EDIT_CONFIG{tradlang/[(#PRIORITE|supprimer_numero|replace{' ','_'})]})]">(#CONFIG{tradlang/[(#PRIORITE|supprimer_numero|replace{' ','_'})]}|propre)</div>]
    68 <B_langues_totales>
     59[<div class="description description_priorite">(#CONFIG{tradlang/[(#PRIORITE|supprimer_numero|replace{' ','_'})]}|propre)</div>]
    6960<div class="bilan">
    7061<table class="spip liste ss_tablesort">
     
    7263                <tr class="row_first">
    7364                        <th><:tradlang:th_module:></th>
    74                         <th><:tradlang:th_langue_mere:></th><BOUCLE_langues_totales(DATA){source tableau, #GET{langues}}>
    75                         <th class="lang #CLE">[(#SET{langue_longue,[(#CLE|traduire_nom_langue)]})]
    76                                 <a href="[(#SELF|parametre_url{id_tradlang_module,''}|parametre_url{langue_modules,#CLE})]" title="<:tradlang:lien_voir_bilan_lang{lang=#CLE,langue_longue=#GET{langue_longue}}|attribut_html:>">[(#CLE)]</a>
     65                        <th><:tradlang:th_langue_mere:></th><BOUCLE_langues_totales(DATA){source table, #GET{langues}}>#SET{full_total_#CLE,0}
     66                        <th class="lang #CLE">[(#SET{langue_longue_#CLE,[(#CLE|traduire_nom_langue)]})][(#SET{langue_dir_#CLE,[(#CLE|lang_dir)]})]
     67                                <a href="[(#SELF|parametre_url{id_tradlang_module,''}|parametre_url{langue_modules,#CLE})]" title="<:tradlang:lien_voir_bilan_lang{lang=#CLE,langue_longue=#GET{langue_longue_#CLE}}|attribut_html:>">[(#CLE)]</a>
    7768                        </th>[(#SET{total_#CLE,0})]</BOUCLE_langues_totales>
    7869                </tr>
    7970        </thead>
    8071        <tbody><BOUCLE_modules_lang(TRADLANG_MODULES){priorite}>
    81         <tr class="module #MODULE[ (#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">
    82                 <td class="#EDIT{nom_mod}">[(#FORMULAIRE_FAVORI{tradlang_module,#ID_TRADLANG_MODULE}) ]<a href="#URL_TRADLANG_MODULE" title="<:tradlang:lien_voir_bilan_module{module=#MODULE,nom_mod=#NOM_MOD}|attribut_html:>">[(#NOM_MOD)]</a></td>
    83                 [(#SET{full,''})][(#SET{langue_mere,#LANG_MERE})]
    84                 <BOUCLE_compte_langue_mere(TRADLANGS){id_tradlang_module}{lang=#LANG_MERE}> </BOUCLE_compte_langue_mere>
    85                 <td><abbr title="[(#GET{langue_mere}|traduire_nom_langue)]">[(#GET{langue_mere})]</abbr> [((#GRAND_TOTAL))]</td>[(#SET{full,#GRAND_TOTAL})]</B_compte_langue_mere>
    86                 <BOUCLE_langue_module(DATA){source table, #GET{langues}}>
    87                         <BOUCLE_compte_tradlang(TRADLANGS){id_tradlang_module}{lang=#CLE}{statut=OK}> </BOUCLE_compte_tradlang>
    88                         [(#SET{class,'non_traduit'})][
    89                         (#TOTAL_BOUCLE|=={#GET{full}}|oui)[(#SET{class,traduit_full})][(#SET{percent,100})]][
    90                         (#TOTAL_BOUCLE|=={#GET{full}}|non)[(#SET{percent,#TOTAL_BOUCLE|div{#GET{full}}|mult{100}})][(#TOTAL_BOUCLE|>={#GET{full}|div{100}|mult{50}}|oui)#SET{class,traduit}]][
    91                         (#CLE|=={#LANG_MERE}|oui)[(#SET{percent,100})]][
    92                         (#SET{total_#CLE,[(#GET{total_#CLE}|plus{#GET{percent,0}})]})][
    93                         (#SET{traduites,#TOTAL_BOUCLE})][
    94                         (#SET{langue,#CLE})][
    95                         (#SET{langue_longue,#CLE|traduire_nom_langue})][
    96                         (#SET{langue_dir,[(#CLE|lang_dir)]})][
    97                         (#_langue_module:CLE|!={#GET{langue_mere}}|oui)<td class="#GET{class}"><a href="[(#URL_TRADLANG_MODULE{#ID_TRADLANG_MODULE}|parametre_url{lang_cible,#CLE})]" title="<:tradlang:info_percent_chaines{total=#GET{full},traduites=#GET{traduites},langue=#GET{langue},langue_longue=#GET{langue_longue},langue_dir=#GET{langue_dir}}|attribut_html:>">[(#GET{percent}|floor)%]</a></td>][
    98                         (#_langue_module:CLE|=={#GET{langue_mere}}|oui)<td class="[(#GET{class})] lang_mere">#SET{total_boucle,#TOTAL_BOUCLE}<abbr title="<:tradlang:info_nb_items_module{module=#NOM_MOD,nb=#GET{total_boucle}}|attribut_html:>">[(#GET{percent}|floor)%]</abbr></td>]</B_compte_tradlang>
    99                         <td class="non_traduit"><a href="[(#URL_TRADLANG_MODULE{#ID_TRADLANG_MODULE}|parametre_url{lang_cible,#CLE})]"> - </a></td>
    100                         <//B_compte_tradlang></BOUCLE_langue_module>
     72        <tr class="module #MODULE[ (#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">[(#SET{full,''})][(#SET{langue_mere,#LANG_MERE})][(#SET{url_module,#URL_TRADLANG_MODULE})]
     73                <td><a href="#GET{url_module}" title="<:tradlang:lien_voir_bilan_module{module=#MODULE,nom_mod=#NOM_MOD}|attribut_html:>">[(#NOM_MOD)]</a></td>
     74                <BOUCLE_compte_langue_mere(TRADLANGS){id_tradlang_module}{lang=#LANG_MERE}{statut=OK}> </BOUCLE_compte_langue_mere>
     75                <td><abbr title="[(#GET{langue_mere}|traduire_nom_langue)]">[(#GET{langue_mere})]</abbr> [((#GRAND_TOTAL))]</td>[(#SET{full,#GRAND_TOTAL})][(#SET{full_total,#GET{full_total}|plus{#GRAND_TOTAL}})]</B_compte_langue_mere><BOUCLE_langue_module(DATA){source table,#GET{langues}}>
     76                <BOUCLE_compte_tradlang(TRADLANGS){id_tradlang_module}{lang=#CLE}{statut=OK}> </BOUCLE_compte_tradlang>[(#SET{class,'non_traduit'})
     77                ][(#SET{full_total_#CLE,#GET{full_total_#CLE}|plus{#GRAND_TOTAL}})][
     78                (#TOTAL_BOUCLE|=={#GET{full}}|?{[(#SET{class,traduit_full})][(#SET{percent,100})],[(#SET{percent,#TOTAL_BOUCLE|div{#GET{full}}|mult{100}})]})][
     79                (#SET{traduites,#TOTAL_BOUCLE})][
     80                (#_langue_module:CLE|!={#GET{langue_mere}}|?{<td[ class="(#GET{class})"]>[<a href="(#GET{url_module}|parametre_url{lang_cible,#CLE})" title="<:tradlang:info_percent_chaines{total=#GET{full},traduites=#GET{traduites},langue=#CLE,langue_longue=#GET{langue_longue_#CLE},langue_dir=#GET{langue_dir_#CLE}}|attribut_html:>">[(#GET{percent}|=={100}|?{#GET{percent},[(#GET{percent}|number_format{2})]})%]</a>]</td>})][
     81                (#_langue_module:CLE|=={#GET{langue_mere}}|?{[<td class="[(#GET{class})] lang_mere"><abbr title="<:tradlang:info_nb_items_module{module=#NOM_MOD,nb=#GET{traduites}}|attribut_html:>">(#GET{percent}|floor)%</abbr></td>]})]</B_compte_tradlang>
     82                <td class="non_traduit"><a href="[(#GET{url_module}|parametre_url{lang_cible,#CLE})]"> - </a></td><//B_compte_tradlang></BOUCLE_langue_module>
    10183        </tr></BOUCLE_modules_lang>
    102         </tbody>[(#SET{total_modules,#TOTAL_BOUCLE})]
     84        </tbody>
    10385        <tfoot>
    10486                <tr>
    10587                        <td><:tradlang:tfoot_total:></td>
    106                         <td></td>
     88                        <td>#GET{full_total}</td>
    10789                        <BOUCLE_langues_tfoot(DATA){source table,#GET{langues}}>
    108                         <td>[(#GET{total_#CLE}|div{#GET{total_modules}}|floor)%]</td></BOUCLE_langues_tfoot>
     90                        <td>[(#GET{full_total_#CLE}|div{#GET{full_total}}|mult{100}|number_format{2})%]</td></BOUCLE_langues_tfoot>
    10991                </tr>
    11092        </tfoot>
    11193</table>
    11294</div>
    113 </B_modules_lang>
    114 </B_langues_totales>
    115 <//B_langues_totales>
    11695</BOUCLE_priorites>
    11796#FILTRE{trim}
Note: See TracChangeset for help on using the changeset viewer.