Changeset 60866 in spip-zone
- Timestamp:
- May 2, 2012, 5:57:26 PM (9 years ago)
- Location:
- _plugins_/fabrique
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/fabrique/changelog.txt
r60822 r60866 7 7 8 8 * Coquille et code mort en moins 9 * Suivre le déplacement de jquery-ui dans SPIP3 10 * Éviter les fonctions mb_* lorsqu'elles ne sont pas présentes dans le PHP (c'est vraiment dommage) (vince) 11 12 Dans le plugin généré 13 * Mauvais nommage de l'autorisation du bouton d'action rapide (Cédric Couvrat) 14 9 15 10 16 Interface : 11 17 * Gestion des diff sous Windows (Julien Lanfray) 12 18 * Affichage des diff unix plus aérés et simples 19 * Permettre de saisir des liaisons vers des objets que l'on a déclaré 20 dans la Fabrique, mais qui ne sont pas encore connu de SPIP (plugin 21 non activé). [ Possible que ça ne fonctionne bien, pour ces objets 22 en cours de création, que si la table est naturelle pour SPIP 23 (spip_xxs, id_xx) ] 24 * Suppression du titre du plugin en doublon (le premier ne s'affichait pas à cause d'une coquille !) 25 13 26 14 27 -
_plugins_/fabrique/css/formulaire_fabrique.css.html
r60510 r60866 61 61 .formulaire_fabriquer_plugin h3.erreur, 62 62 .formulaire_fabriquer_plugin h4.erreur{ 63 background-image:url([(#CHEMIN _IMAGE{ui-bg_glass_75_e6e6e6_1x400.png}|image_sepia{F00}63 background-image:url([(#CHEMIN{css/images/ui-bg_glass_75_e6e6e6_1x400.png}|image_sepia{F00} 64 64 |extraire_attribut{src}|url_absolue)]); 65 65 } -
_plugins_/fabrique/fabrique/prefixe_autorisations.php.html
r60510 r60866 34 34 [ 35 35 // bouton d'outils rapides 36 function autoriser_[(# OBJET)]creer_menu_dist($faire, $type, $id, $qui, $opts){36 function autoriser_[(#TYPE)]creer_menu_dist($faire, $type, $id, $qui, $opts){ 37 37 return autoriser('creer', ['(#TYPE)'], '', $qui, $opts); 38 38 }(#VAL{outils_rapides}|in_any{#VALEUR{boutons}})] -
_plugins_/fabrique/fabrique_fonctions.php
r60724 r60866 92 92 **/ 93 93 function chaine_de_langue($texte) { 94 $texte = html_entity_decode($texte, ENT_QUOTES, 'UTF-8'); 95 # egalement 94 96 # http://www.php.net/manual/fr/function.html-entity-decode.php#104617 95 // mais eviter une fonction anonyme en PHP 5.2 96 97 $texte = preg_replace_callback("/(&#[0-9]+;)/", 'convertir_chaine_de_langue', $texte); 97 98 98 return addslashes($texte); 99 }100 101 // fonction normalement anonyme dans la fonction chaine_de_langue()102 // mais mise ici pour compat PHP 5.2103 function convertir_chaine_de_langue($m) {104 return mb_convert_encoding($m[1], "UTF-8", "HTML-ENTITIES");105 99 } 106 100 … … 530 524 531 525 532 // ucfirst en utilisant mb 533 if (!function_exists('mb_ucfirst')) { 534 function mb_ucfirst($str) { 535 $str[0] = mb_strtoupper($str[0]); 536 return $str; 526 527 /** 528 * Passer en majuscule en utilisant mb de preference 529 * s'il est disponible. 530 * 531 * @param string $str 532 * La chaine a passer en majuscule 533 * @return string 534 * La chaine en majuscule 535 **/ 536 function fabrique_mb_strtoupper($str) { 537 if (function_exists('mb_strtoupper')) { 538 return mb_strtoupper($str); 539 } else { 540 return strtoupper($str); 541 } 542 } 543 544 /** 545 * Passer en minuscule en utilisant mb de preference 546 * s'il est disponible. 547 * 548 * @param string $str 549 * La chaine a passer en minuscule 550 * @return string 551 * La chaine en minuscule 552 **/ 553 function fabrique_mb_strtolower($str) { 554 if (function_exists('mb_strtolower')) { 555 return mb_strtolower($str); 556 } else { 557 return strtolower($str); 537 558 } 538 559 } … … 554 575 555 576 577 578 /** 579 * Retourne un tableau table_sql=>Nom des objets de SPIP 580 * complété des objets declares dans la fabrique ainsi 581 * que de tables indiquees même si elles ne font pas parties 582 * de declarations connues. 583 * 584 * @param array $objets_fabrique 585 * Déclaration d'objets de la fabrique 586 * @param array $inclus 587 * Liste de tables SQL que l'on veut forcement presentes 588 * meme si l'objet n'est pas declare 589 * @param array $exclus 590 * Liste de tables SQL que l'on veut forcement exclues 591 * meme si l'objet n'est pas declare 592 * @return array 593 * Tableau table_sql => Nom 594 **/ 595 function filtre_fabrique_lister_objets_editoriaux($objets_fabrique, $inclus=array(), $exclus=array()) { 596 597 // les objets existants 598 $objets = lister_tables_objets_sql(); 599 foreach ($objets as $sql => $o) { 600 if ($o['editable']) { 601 $liste[$sql] = _T($o['texte_objets']); 602 } 603 } 604 unset($objets); 605 606 // les objets de la fabrique 607 foreach ($objets_fabrique as $o) { 608 if (!isset($liste[$o['table']])) { 609 $liste[ $o['table'] ] = $o['nom']; 610 } 611 } 612 613 // des objets qui n'existent pas mais qui sont actuellement coches dans la saisie 614 foreach ($inclus as $sql) { 615 if (!isset($liste[$sql])) { 616 $liste[$sql] = $sql; // on ne connait pas le nom 617 } 618 } 619 620 // tables forcement exclues 621 foreach ($exclus as $sql) { 622 unset($liste[$sql]); 623 } 624 // enlever un eventuel element vide 625 unset($liste['']); 626 627 asort($liste); 628 629 return $liste; 630 } 631 632 556 633 /** 557 634 * Retourne le code pour tester un type d'autorisation -
_plugins_/fabrique/formulaires/fabriquer_plugin.html
r60510 r60866 1 1 <div class='formulaire_spip formulaire_editer formulaire_#FORM'> 2 [(#ENV{paquet/nom}|oui)<h2 class='h2'><:fabrique:titre_plugin{plugin=#ENV{paquet/nom}}:></h2>]3 2 [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV**{message_ok})</p>] 4 3 [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] … … 43 42 <BOUCLE_tab_objets(DATA){source tableau, #OBJETS}> 44 43 [(#SET{defaut,<:fabrique:onglet_objet_n{nb=#CLE}:>})] 45 <li id='objet#CLE'><a href="#tab-objet-#CLE">[(#NOM| mb_strtoupper|sinon{#GET{defaut}})]44 <li id='objet#CLE'><a href="#tab-objet-#CLE">[(#NOM|fabrique_mb_strtoupper|sinon{#GET{defaut}})] 46 45 [(#REM) Attention à bien rafraichir l'image reduite lorsqu'on change de logo ] 47 46 [(#VALEUR{logo/24/fichier} -
_plugins_/fabrique/formulaires/inc-fabriquer_plugin_objet.html
r60724 r60866 270 270 <h3><a href="#chaines"><:fabrique:legend_chaines_langues:></a></h3> 271 271 <div class='li_colonne'> 272 [(#SET{objets,#ENV{objets/#CLE/nom}|trim| mb_strtolower})]273 [(#SET{type,#ENV{objets/#CLE/nom_singulier}|trim| mb_strtolower|sinon{#GET{objets}|substr{0,-1}}})]274 [(#SET{mobjets,#GET{objets}| mb_ucfirst})]275 [(#SET{mtype,#GET{type}| mb_ucfirst})]272 [(#SET{objets,#ENV{objets/#CLE/nom}|trim|fabrique_mb_strtolower})] 273 [(#SET{type,#ENV{objets/#CLE/nom_singulier}|trim|fabrique_mb_strtolower|sinon{#GET{objets}|substr{0,-1}}})] 274 [(#SET{mobjets,#GET{objets}|fabrique_mb_strtoupper|ucfirst})] 275 [(#SET{mtype,#GET{type}|fabrique_mb_strtoupper|ucfirst})] 276 276 <B_chaines> 277 277 <ul> … … 327 327 label=<:fabrique:label_table_liens:>})] 328 328 329 [(#SAISIE{ch oisir_objets, objets/#CLE/vue_liens,329 [(#SAISIE{checkbox, objets/#CLE/vue_liens, 330 330 label=<:fabrique:label_vue_liens:>, 331 331 explication=<:fabrique:label_vue_liens_explication:>, 332 exclus=#TABLE})] 332 datas=[(#ENV{objets}|fabrique_lister_objets_editoriaux{#ENV{objets/#CLE/vue_liens, #ARRAY}, #LISTE{#TABLE}})], 333 li_class=saisie_choisir_objets})] 333 334 </ul> 334 335 </fieldset> -
_plugins_/fabrique/paquet.xml
r60724 r60866 2 2 prefix="fabrique" 3 3 categorie="outil" 4 version="1.1 4.0"4 version="1.15.0" 5 5 etat="dev" 6 6 compatibilite="[3.0.0-rc;3.0.*]"
Note: See TracChangeset
for help on using the changeset viewer.