Quelle est la fonction de ton plugin? 
-----Message d'origine-----
De : spip-zone-commit-bounces@rezo.net [mailto:spip-zone-commit-bounces@rezo.net] De la part de eric@smellup.net
Envoyé : dimanche 9 novembre 2008 23:09
À : spip-zone-commit@rezo.net
Objet : [Spip-zone-commit] r24133 - in /_plugins_/_stable_/spiperipsum: ./ inc/ modeles/ public/
Author: eric@smellup.net
Date: Sun Nov 9 23:08:48 2008
New Revision: 24133
Log:
Creation du plugin qui envoie direct au paradis...
La balise n'est pas encore opérationelle.
Added:
_plugins_/_stable_/spiperipsum/
_plugins_/_stable_/spiperipsum/inc/
_plugins_/_stable_/spiperipsum/inc/spiperipsum_filtres.php
_plugins_/_stable_/spiperipsum/inc/spiperipsum_utils.php
_plugins_/_stable_/spiperipsum/modeles/
_plugins_/_stable_/spiperipsum/modeles/lecture.html
_plugins_/_stable_/spiperipsum/modeles/spiperipsum.html
_plugins_/_stable_/spiperipsum/plugin.xml
_plugins_/_stable_/spiperipsum/public/
_plugins_/_stable_/spiperipsum/public/spiperipsum_balises.php
_plugins_/_stable_/spiperipsum/spiperipsum-64.png (with props)
_plugins_/_stable_/spiperipsum/spiperipsum_demo.html
_plugins_/_stable_/spiperipsum/spiperipsum_fonctions.php
_plugins_/_stable_/spiperipsum/spiperipsum_options.php
Added: _plugins_/_stable_/spiperipsum/inc/spiperipsum_filtres.php
--- _plugins_/_stable_/spiperipsum/inc/spiperipsum_filtres.php (added)
+++ _plugins_/_stable_/spiperipsum/inc/spiperipsum_filtres.php Sun Nov 9 23:08:48 2008
@@ -0,0 +1,17 @@
+<?php
+function spiperipsum_lire($langue, $jour, $lecture){
+ include_spip('inc/spiperipsum_utils');
+
+ if (!$jour) $jour = _SPIPERIPSUM_JOUR_DEFAUT;
+ if (!$lecture) $lecture = _SPIPERIPSUM_LECTURE_DEFAUT;
+
+ $nom_fichier = charger_lectures($langue, $jour);
+ lire_fichier($nom_fichier,$tableau);
+ $tableau = unserialize($tableau);
+
+ $contexte = $tableau[$lecture];
+ $texte = recuperer_fond("modeles/lecture", $contexte);
+
+ return $texte;
+}
+?>
Added: _plugins_/_stable_/spiperipsum/inc/spiperipsum_utils.php
--- _plugins_/_stable_/spiperipsum/inc/spiperipsum_utils.php (added)
+++ _plugins_/_stable_/spiperipsum/inc/spiperipsum_utils.php Sun Nov 9 23:08:48 2008
@@ -0,0 +1,127 @@
+<?php
+// Convertir le code de langue SPIP en code langue du serveur
+function langue2code($langue){
+ switch(strtolower($langue))
+ {
+ case 'fr':
+ case 'co':
+ case 'fr_tu':
+ case 'oc':
+ case 'oc_lnc':
+ case 'oc_ni':
+ case 'oc_ni_la':
+ case 'oc_prv':
+ case 'oc_gsc':
+ case 'oc_lms':
+ case 'oc_auv':
+ case 'oc_va':
+ case 'roa':
+ case 'ty':
+ $code = 'FR'; break;
+ case 'en':
+ case 'en_hx':
+ case 'ga':
+ case 'gd':
+ $code = 'AM'; break;
+ case 'de':
+ $code = 'DE'; break;
+ case 'es':
+ case 'an':
+ case 'ast':
+ case 'ca':
+ case 'es_co':
+ case 'eu':
+ case 'gl':
+ case 'la':
+ $code = 'SP'; break;
+ case 'pt':
+ case 'pt_br':
+ $code = 'PT'; break;
+ case 'it':
+ case 'it_fem':
+ case 'nap':
+ case 'ro':
+ case 'sc':
+ case 'scn':
+ case 'src':
+ case 'sro':
+ $code = 'IT'; break;
+ case 'nl':
+ $code = 'NL'; break;
+ case 'trf': $code = 'TRF'; break;
+ case 'maa': $code = 'MAA'; break;
+ default:
+ $code = _SPIPERIPSUM_LANGUE_DEFAUT; break;
+ }
+ return $code;
+}
+
+// Convertir la date Y-m-d en url avec l'annee, le mois et le jour
+function date2url_date($date){
+ $url = '';
+ $infos = getdate(strtotime($date));
+ $url = '&year=' . $infos['year'] . '&month=' . $infos['mon'] .'&day=' . $infos['mday'];
+ return $url;
+}
+
+// Charger le fichier des lectures du jour j
+// - si le fichier existe on retourne directement son nom complet
+// - sinon on le cree dans le cache du plugin
+function charger_lectures($langue, $jour){
+
+ $date = ($jour == _SPIPERIPSUM_JOUR_DEFAUT) ? date('Y-m-d') : $jour;
+ $code_langue = langue2code($langue);
+
+ $dir = sous_repertoire(_DIR_CACHE,"spiperipsum");
+ $dir = sous_repertoire($dir,substr(md5($code_langue),0,1));
+ $f = $dir . $code_langue . "_" . $date . ".txt";
+
+ if (!file_exists($f)) {
+ // Determination de la sous-chaine url correspondant a la date (vide si jour courant)
+ $url_date = ($jour == _SPIPERIPSUM_JOUR_DEFAUT) ? '' : date2url_date($date);
+ // Date du jour
+ $tableau['date'] = $date;
+ // Traitement de l'evangile
+ $url = "http://www.levangileauquotidien.org/ind-gospel-d.php?language=".$code_langue.$url_date;
+ $textes = extraire_balises(recuperer_page($url), 'font');
+ $tableau['evangile']['titre'] = $textes[0];
+ $tableau['evangile']['verset'] = $textes[1];
+ $tableau['evangile']['texte'] = $textes[2];
+ $tableau['evangile'] = preg_replace(',</?font\b.*>,UimsS', '', $tableau['evangile']);
+ $tableau['evangile'] = preg_replace(',</?br\b.*>,UimsS', '<br />', $tableau['evangile']);
+ // Traitement de la premiere lecture
+ $url = "http://www.levangileauquotidien.org/ind-gospel-d.php?language=".$code_langue."&typeRead=FR".$url_date;
+ $textes = extraire_balises(recuperer_page($url), 'font');
+ $tableau['premiere']['titre'] = $textes[0];
+ $tableau['premiere']['verset'] = $textes[1];
+ $tableau['premiere']['texte'] = $textes[2];
+ $tableau['premiere'] = preg_replace(',</?font\b.*>,UimsS', '', $tableau['premiere']);
+ $tableau['premiere'] = preg_replace(',</?br\b.*>,UimsS', '<br />', $tableau['premiere']);
+ // Traitement de la seconde lecture
+ $url = "http://www.levangileauquotidien.org/ind-gospel-d.php?language=".$code_langue."&typeRead=SR".$url_date;
+ $textes = extraire_balises(recuperer_page($url), 'font');
+ if ($textes) {
+ $tableau['seconde']['titre'] = $textes[0];
+ $tableau['seconde']['verset'] = $textes[1];
+ $tableau['seconde']['texte'] = $textes[2];
+ $tableau['seconde'] = preg_replace(',</?font\b.*>,UimsS', '', $tableau['seconde']);
+ $tableau['seconde'] = preg_replace(',</?br\b.*>,UimsS', '<br />', $tableau['seconde']);
+ }
+ // Traitement du psaume
+ $url = "http://www.levangileauquotidien.org/ind-gospel-d.php?language=".$code_langue."&typeRead=PS".$url_date;
+ $page = recuperer_page($url);
+ // -- on traite faon particuliere les numŽros de verset du psaume
+ preg_match('/,[0-9\.\-]*\./', $page, $fin_verset);
+ $textes = extraire_balises($page, 'font');
+ $tableau['psaume']['titre'] = $textes[0];
+ $tableau['psaume']['verset'] = $textes[1] . $fin_verset[0];
+ $tableau['psaume']['texte'] = $textes[2];
+ $tableau['psaume'] = preg_replace(',</?font\b.*>,UimsS', '', $tableau['psaume']);
+ $tableau['psaume'] = preg_replace(',</?br\b.*>,UimsS', '<br />', $tableau['psaume']);
+
+ ecrire_fichier($f, serialize($tableau));
+ }
+ return $f;
+}
+
+?>
\ No newline at end of file
Added: _plugins_/_stable_/spiperipsum/modeles/lecture.html
--- _plugins_/_stable_/spiperipsum/modeles/lecture.html (added)
+++ _plugins_/_stable_/spiperipsum/modeles/lecture.html Sun Nov 9 23:08:48 2008
@@ -0,0 +1,8 @@
+[(#REM)<!--
+ Afficher:
+ - les lectures demandees
+ - pour le jour requis
+ - dans la langue du contexte courant
+ -->]
+[<h3>(#ENV{titre}|trim) - [(#ENV{verset}|trim)]</h3>]
+[<p>(#ENV*{texte})</p>]
Added: _plugins_/_stable_/spiperipsum/modeles/spiperipsum.html
--- _plugins_/_stable_/spiperipsum/modeles/spiperipsum.html (added)
+++ _plugins_/_stable_/spiperipsum/modeles/spiperipsum.html Sun Nov 9 23:08:48 2008
@@ -0,0 +1,4 @@
+[(#REM)<!--
+ Afficher les lectures demandees pour le jour requis dans la langue du contexte courant
+ -->]
+[(#ENV{langue, #LANG}|spiperipsum_lire{#ENV{jour}, #ENV{lecture}})]
Added: _plugins_/_stable_/spiperipsum/plugin.xml
--- _plugins_/_stable_/spiperipsum/plugin.xml (added)
+++ _plugins_/_stable_/spiperipsum/plugin.xml Sun Nov 9 23:08:48 2008
@@ -0,0 +1,22 @@
+<plugin>
+ <nom>SPIPer Ipsum</nom>
+ <auteur>SarkASmeL, sur une idée de Gwen</auteur>
+ <version>0.1</version>
+ <etat>stable</etat>
+ <licence>GPL 3</licence>
+ <description>
+Ce plugin permet d'afficher les différentes lectures de l'évangile du jour ou d'un jour donné selon le calendrier fixé par l'Eglise catholique.
+Ce service est proposé par le site de « [L'Evangile au Quotidien->http://www.levangileauquotidien.org] » dans plusieurs langues.
+
+L'affichage des lectures se fait principalement via l'utilisation d'un modèle {{spiperipsum}} dans les squelettes utilisateur ou dans les articles.
+<code>
+- dans un squelette [(#MODELE{spiperipsum, jour=aujourdhui, lecture=evangile})]
+- dans un article <spiperipsum|jour=aujourdhui|lecture=evangile>
+</code>
+ </description>
+ <lien>http://plugins.spip.net</lien>
+ <prefix>spiperipsum</prefix>
+ <icon>spiperipsum-64.png</icon>
+ <fonctions>spiperipsum_fonctions.php</fonctions>
+ <options>spiperipsum_options.php</options>
+</plugin>
Added: _plugins_/_stable_/spiperipsum/public/spiperipsum_balises.php
--- _plugins_/_stable_/spiperipsum/public/spiperipsum_balises.php (added)
+++ _plugins_/_stable_/spiperipsum/public/spiperipsum_balises.php Sun Nov 9 23:08:48 2008
@@ -0,0 +1,22 @@
+<?php
+// A completer
+function balise_SPIPERIPSUM($p) {
+
+ $jour = interprete_argument_balise(2,$p);
+ $jour = isset($jour) ? str_replace('\'', '"', $jour) : '""';
+ $lecture = interprete_argument_balise(1,$p);
+ $lecture = isset($lecture) ? str_replace('\'', '"', $lecture) : '""';
+ $langue = interprete_argument_balise(1,$p);
+ $langue = isset($langue) ? str_replace('\'', '"', $langue) : '""';
+
+ $p->code = 'calculer_spiperipsum('.$jour.', '.$lecture.', '.$langue.')';
+ $p->interdire_scripts = false;
+ return $p;
+}
+
+function calculer_spiperipsum($jour, $lecture, $langue) {
+ include_spip('inc/spiperipsum_utils');
+ $texte = '';
+ return $texte;
+}
+?>
\ No newline at end of file
Added: _plugins_/_stable_/spiperipsum/spiperipsum-64.png
[... 83 lines stripped ...]
_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit