/trunk/api/text/wiki_papyrus/Parse/Categorie.php |
---|
New file |
0,0 → 1,45 |
<?php |
// $Id: Categorie.php,v 1.1 2005-04-14 16:35:36 jpm Exp $ |
/** |
* |
* This class implements a Text_Wiki_Parse to find source text marked as |
* an Interwiki link. See the regex for a detailed explanation of the |
* text matching procedure; e.g., "InterWikiName:PageName". |
* |
* @author Paul M. Jones <pmjones@ciaweb.net> |
* |
* @package Text_Wiki |
* |
*/ |
class Text_Wiki_Parse_Categorie extends Text_Wiki_Parse { |
var $regex = '/\{\{Categorie mots="((?i:[,-]|\w|\s)+)"\}\}/'; |
/** |
* |
* Remplace l'action par une liste des pages contenant les mots clés choisis |
* Les options sont: |
* |
* 'mots' => les mots clés séparés par des virgules |
* |
* @access public |
* |
* @param array &$matches The array of matches from parse(). |
* |
* @return A delimited token to be used as a placeholder in |
* the source text, plus any text priot to the match. |
* |
*/ |
function process(&$matches) |
{ |
$options = array( |
'mots' => $matches[1] |
); |
return $this->wiki->addToken($this->rule, $options); |
} |
} |
?> |
/trunk/api/text/wiki_papyrus/Parse/Motcles.php |
---|
New file |
0,0 → 1,45 |
<?php |
// $Id: Motcles.php,v 1.1 2005-04-14 16:35:36 jpm Exp $ |
/** |
* |
* This class implements a Text_Wiki_Parse to find source text marked as |
* an Interwiki link. See the regex for a detailed explanation of the |
* text matching procedure; e.g., "InterWikiName:PageName". |
* |
* @author Paul M. Jones <pmjones@ciaweb.net> |
* |
* @package Text_Wiki |
* |
*/ |
class Text_Wiki_Parse_Motcles extends Text_Wiki_Parse { |
var $regex = '/\{\{MotCles mots="((?i:[,-]|\w|\s)+)"\}\}/'; |
/** |
* |
* Remplace l'action par une liste des pages contenant les mots clés choisis |
* Les options sont: |
* |
* 'mots' => les mots clés séparés par des virgules |
* |
* @access public |
* |
* @param array &$matches The array of matches from parse(). |
* |
* @return A delimited token to be used as a placeholder in |
* the source text, plus any text priot to the match. |
* |
*/ |
function process(&$matches) |
{ |
$options = array( |
'mots' => $matches[1] |
); |
return $this->wiki->addToken($this->rule, $options); |
} |
} |
?> |
/trunk/api/text/wiki_papyrus/Parse/Nouveaute.php |
---|
New file |
0,0 → 1,47 |
<?php |
// $Id: Nouveaute.php,v 1.1 2005-04-14 16:35:36 jpm Exp $ |
/** |
* |
* This class implements a Text_Wiki_Parse to find source text marked as |
* an Interwiki link. See the regex for a detailed explanation of the |
* text matching procedure; e.g., "InterWikiName:PageName". |
* |
* @author Paul M. Jones <pmjones@ciaweb.net> |
* |
* @package Text_Wiki |
* |
*/ |
class Text_Wiki_Parse_Nouveaute extends Text_Wiki_Parse { |
var $regex = '/\{\{Nouveaute nombre="([1-9][0-9]*)"(?: type="(mineure|majeure)"|)(?: site="((?i:[,-]|\w|\s)+)"|)\}\}/'; |
/** |
* |
* Remplace l'action par une liste des dernières pages modifiées |
* Les options sont: |
* |
* 'nombre' => le nombre de dernière page modifiée que l'on veut afficher |
* |
* @access public |
* |
* @param array &$matches The array of matches from parse(). |
* |
* @return A delimited token to be used as a placeholder in |
* the source text, plus any text priot to the match. |
* |
*/ |
function process(&$matches) |
{ |
$options = array( |
'nombre' => $matches[1], |
'type' => $matches[2], |
'site' => $matches[3] |
); |
return $this->wiki->addToken($this->rule, $options); |
} |
} |
?> |
/trunk/api/text/wiki_papyrus/Papyrus.class.php |
---|
21,7 → 21,7 |
// | along with Foobar; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: Papyrus.class.php,v 1.4 2005-01-20 19:39:39 jpm Exp $ |
// CVS : $Id: Papyrus.class.php,v 1.5 2005-04-14 16:35:42 jpm Exp $ |
/** |
* Classe configurant le formatage pour Papyrus. |
* |
36,7 → 36,7 |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.4 $ $Date: 2005-01-20 19:39:39 $ |
*@version $Revision: 1.5 $ $Date: 2005-04-14 16:35:42 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
72,7 → 72,10 |
* |
*/ |
var $rules = array( |
'Inclure'// Action Inclure |
'Inclure', // Action Inclure |
'Motcles', // Action Motcles |
'Categorie', // Action Categorie |
'Nouveaute' // Action Nouveaute |
); |
/** |
278,6 → 281,9 |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.4 2005/01/20 19:39:39 jpm |
* Correction bogue du à la fonction file_exists qui renvoie false pour les fichiers présent dans le dossier Pear /usr/local/lib/php/. |
* |
* Revision 1.3 2004/12/07 12:17:37 jpm |
* Correction message d'erreur. |
* |
/trunk/api/text/wiki_papyrus/Render/Xhtml/Categorie.php |
---|
New file |
0,0 → 1,129 |
<?php |
class Text_Wiki_Render_Xhtml_Categorie extends Text_Wiki_Render { |
/** |
* |
* Renders a token into text matching the requested format. |
* |
* @access public |
* |
* @param array $options The "options" portion of the token (second |
* element). |
* |
* @return string The text rendered from the token options. |
* |
*/ |
function token($options) |
{ |
// Initialisation des variables |
$sortie = ''; |
if (isset($options['mots'])) { |
$mots = $options['mots']; |
} else { |
return '<p>'.' Aucune catégorie passé en paramêtre! '.'</p>'; |
} |
// Récupération des infos |
$tab_mots = explode(',', $mots); |
for ($i = 0; $i < count($tab_mots); $i++) { |
// Suppression des espaces, tabulations... en début et fin de chaine |
$tab_mots[$i] = trim($tab_mots[$i]); |
} |
$aso_info_menu = GEN_lireInfoMenuCategorie($GLOBALS['_GEN_commun']['pear_db'], $tab_mots); |
// Formatage des infos en XHTML |
$sortie .= '<ul class="page_liste">'."\n"; |
foreach ($aso_info_menu as $id_menu => $un_menu) { |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($id_menu); |
$sortie .= '<li>'."\n"; |
// Affichage de l'auteur(s) |
$sortie .= '<span class="page_auteur"> '.$un_menu->gm_auteur.'</span>'; |
$sortie .= '<span class="page_separateur_auteur"> - </span>'; |
// Affichage du titre |
$sortie .= '<a href="'.$une_url->getURL().'">'; |
$sortie .= '<span class="page_titre"> '.$un_menu->gm_titre.'</span>'; |
$sortie .= '</a>'; |
$sortie .= '<span class="page_separateur_titre"> - </span>'; |
// Affichage de l'horaire de la création de la page |
if (($heure = date('G', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_heure">'.$heure.'</span>'; |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$minute = date('i', strtotime($un_menu->gm_date_creation)); |
$sortie .= '<span class="page_creation_minute">'.$minute.'</span>'; |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$sortie .= '<span class="page_creation_seconde">'.$seconde.'</span>'; |
} |
} |
$sortie .= '<span class="page_separateur_date_heure"> - </span>'."\n"; |
// Affichage de la date de la création de la page |
if (($jour = date('d', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_jour"> '.$jour.'</span>'; |
} |
if (($mois = $this->_traduireMois(date('m', strtotime($un_menu->gm_date_creation))) ) != '' ) { |
$sortie .= '<span class="page_creation_mois"> '.$mois.'</span>'; |
} |
if (($annee = date('Y', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_annee"> '.$annee.'</span>'; |
} |
$sortie .= '</li>'."\n"; |
} |
$sortie .= '</ul>'."\n"; |
return $sortie; |
} |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return 'janvier'; |
break; |
case '02' : |
return 'février'; |
break; |
case '03' : |
return 'mars'; |
break; |
case '04' : |
return 'avril'; |
break; |
case '05' : |
return 'mai'; |
break; |
case '06' : |
return 'juin'; |
break; |
case '07' : |
return 'juillet'; |
break; |
case '08' : |
return 'août'; |
break; |
case '09' : |
return 'septembre'; |
break; |
case '10' : |
return 'octobre'; |
break; |
case '11' : |
return 'novembre'; |
break; |
case '12' : |
return 'décembre'; |
break; |
default: |
return ''; |
break; |
} |
} |
} |
?> |
/trunk/api/text/wiki_papyrus/Render/Xhtml/Motcles.php |
---|
New file |
0,0 → 1,129 |
<?php |
class Text_Wiki_Render_Xhtml_Motcles extends Text_Wiki_Render { |
/** |
* |
* Renders a token into text matching the requested format. |
* |
* @access public |
* |
* @param array $options The "options" portion of the token (second |
* element). |
* |
* @return string The text rendered from the token options. |
* |
*/ |
function token($options) |
{ |
// Initialisation des variables |
$sortie = ''; |
if (isset($options['mots'])) { |
$mots = $options['mots']; |
} else { |
return '<p>'.' Aucun mot-clés passé en paramêtre! '.'</p>'; |
} |
// Récupération des infos |
$tab_mots = explode(',', $mots); |
for ($i = 0; $i < count($tab_mots); $i++) { |
// Suppression des espaces, tabulations... en début et fin de chaine |
$tab_mots[$i] = trim($tab_mots[$i]); |
} |
$aso_info_menu = GEN_lireInfoMenuMotsCles($GLOBALS['_GEN_commun']['pear_db'], $tab_mots); |
// Formatage des infos en XHTML |
$sortie .= '<ul class="page_liste">'."\n"; |
foreach ($aso_info_menu as $id_menu => $un_menu) { |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($id_menu); |
$sortie .= '<li>'."\n"; |
// Affichage de l'auteur(s) |
$sortie .= '<span class="page_auteur"> '.$un_menu->gm_auteur.'</span>'."\n"; |
$sortie .= '<span class="page_separateur_auteur"> - </span>'."\n"; |
// Affichage du titre |
$sortie .= '<a href="'.$une_url->getURL().'">'; |
$sortie .= '<span class="page_titre"> '.$un_menu->gm_titre.'</span>'; |
$sortie .= '</a>'."\n"; |
$sortie .= '<span class="page_separateur_titre"> - </span>'."\n"; |
// Affichage de l'horaire de la création de la page |
if (($heure = date('G', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_heure">'.$heure.'</span>'; |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$minute = date('i', strtotime($un_menu->gm_date_creation)); |
$sortie .= '<span class="page_creation_minute">'.$minute.'</span>'; |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$sortie .= '<span class="page_creation_seconde">'.$seconde.'</span>'; |
} |
} |
$sortie .= "\n".'<span class="page_separateur_date_heure"> - </span>'."\n"; |
// Affichage de la date de la création de la page |
if (($jour = date('d', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_jour"> '.$jour.'</span>'."\n"; |
} |
if (($mois = $this->_traduireMois(date('m', strtotime($un_menu->gm_date_creation))) ) != '' ) { |
$sortie .= '<span class="page_creation_mois"> '.$mois.'</span>'."\n"; |
} |
if (($annee = date('Y', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_creation_annee"> '.$annee.'</span>'."\n"; |
} |
$sortie .= '</li>'."\n"; |
} |
$sortie .= '</ul>'."\n"; |
return $sortie; |
} |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return 'janvier'; |
break; |
case '02' : |
return 'février'; |
break; |
case '03' : |
return 'mars'; |
break; |
case '04' : |
return 'avril'; |
break; |
case '05' : |
return 'mai'; |
break; |
case '06' : |
return 'juin'; |
break; |
case '07' : |
return 'juillet'; |
break; |
case '08' : |
return 'août'; |
break; |
case '09' : |
return 'septembre'; |
break; |
case '10' : |
return 'octobre'; |
break; |
case '11' : |
return 'novembre'; |
break; |
case '12' : |
return 'décembre'; |
break; |
default: |
return ''; |
break; |
} |
} |
} |
?> |
/trunk/api/text/wiki_papyrus/Render/Xhtml/Nouveaute.php |
---|
New file |
0,0 → 1,173 |
<?php |
class Text_Wiki_Render_Xhtml_Nouveaute extends Text_Wiki_Render { |
/** |
* |
* Renders a token into text matching the requested format. |
* |
* @access public |
* |
* @param array $options The "options" portion of the token (second |
* element). |
* |
* @return string The text rendered from the token options. |
* |
*/ |
function token($options) |
{ |
// Initialisation des variables |
$sortie = ''; |
$type = ''; |
$site = ''; |
$nombre = $options['nombre']; |
// Récupération du type |
if (isset($options['type'])) { |
$type = $options['type']; |
} |
// Récupération du site |
if (isset($options['site'])) { |
$site = $options['site']; |
} |
$aso_info_menu = GEN_lireInfoMenuContenuDate($GLOBALS['_GEN_commun']['pear_db'], $type, $site); |
// Formatage des infos en XHTML |
$sortie .= '<ul class="page_liste">'."\n"; |
$i = 0; |
foreach ($aso_info_menu as $menu_id => $un_menu) { |
if ($i == $nombre) { |
break; |
} |
// Création de l'url |
$une_url =& new Pap_URL(); |
$une_url->setId($menu_id); |
// Début affichage d'une entrée de la liste des pages modifiées |
if ($un_menu->gmc_ce_type_modification = 1) { |
$type_modif = 'mineure'; |
} elseif ($un_menu->gmc_ce_type_modification = 2) { |
$type_modif = 'majeure'; |
} |
$sortie .= '<li class="page_modification_'.$type_modif.'">'."\n"; |
// Affichage du titre |
$sortie .= '<h2 class="page_titre"><a href="'.$une_url->getURL().'">'; |
if (!empty($un_menu->gm_titre)) { |
$sortie .= $un_menu->gm_titre; |
} elseif (!empty($un_menu->gm_titre_alternatif)) { |
$sortie .= $un_menu->gm_titre_alternatif; |
} else { |
$sortie .= $un_menu->gm_nom; |
} |
$sortie .= '</a></h2>'."\n".'<dl>'."\n"; |
// Affichage de l'auteur(s) |
if (!empty($un_menu->gm_auteur)) { |
$sortie .= '<dt class="page_auteur"> Auteur(s) : '.'</dt>'."\n"; |
$sortie .= '<dd>'.$un_menu->gm_auteur.'</dd>'."\n"; |
} |
// Affichage des contributeur(s) |
if (!empty($un_menu->gm_contributeur)) { |
$sortie .= '<dt class="page_contributeur"> Contributeur(s) : '.'</dt>'."\n"; |
$sortie .= '<dd>'.$un_menu->gm_contributeur.'</dd>'."\n"; |
} |
// Affichage de la date de la modification de la page |
$sortie .= '<dt class="page_modification_date"> '.'Modifié le : '.'</dt>'."\n"; |
$sortie .= '<dd>'."\n"; |
if (($jour = date('d', strtotime($un_menu->gmc_date_modification)) ) != 0 ) { |
$sortie .= '<span class="page_modification_jour"> '.$jour.'</span>'."\n"; |
} |
if (($mois = $this->_traduireMois(date('m', strtotime($un_menu->gmc_date_modification))) ) != '' ) { |
$sortie .= '<span class="page_modification_mois"> '.$mois.'</span>'."\n"; |
} |
if (($annee = date('Y', strtotime($un_menu->gmc_date_modification)) ) != 0 ) { |
$sortie .= '<span class="page_modification_annee"> '.$annee.'</span>'."\n"; |
} |
$sortie .= '<span class="page_separateur_date_heure"> - </span>'."\n"; |
// Affichage de l'horaire de la modification de la page |
if (($heure = date('G', strtotime($un_menu->gmc_date_modification)) ) != 0 ) { |
$sortie .= '<span class="page_modification_heure">'.$heure.'</span>'; |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$minute = date('i', strtotime($un_menu->gmc_date_modification)); |
$sortie .= '<span class="page_modification_minute">'.$minute.'</span>'."\n"; |
/* |
if (($seconde = date('s', strtotime($un_menu->gm_date_creation)) ) != 0 ) { |
$sortie .= '<span class="page_separateur_heure">:</span>'; |
$sortie .= '<span class="page_creation_seconde">'.$seconde.'</span>'; |
} |
*/ |
} |
$sortie .= '</dd>'."\n"; |
// Affichage de la description |
if (!empty($un_menu->gm_description_libre)) { |
$sortie .= '<dt class="page_description"> Description : '.'</dt>'."\n"; |
$sortie .= '<dd>'.$un_menu->gm_description_libre.'</dd>'."\n"; |
} |
// Affichage du résumé de la modification |
if (!empty($un_menu->gmc_resume_modification)) { |
$sortie .= '<dt class="page_resumer_modification_'.$type_modif.'"> Résumer modification : '.'</dt>'."\n"; |
$sortie .= '<dd>'.$un_menu->gmc_resume_modification.'</dd>'."\n"; |
} |
$sortie .= '</dl>'."\n"; |
$sortie .= '</li>'."\n"; |
$i++; |
} |
$sortie .= '</ul>'."\n"; |
return $sortie; |
} |
function _traduireMois($mois_numerique) |
{ |
switch ($mois_numerique) { |
case '01' : |
return 'janvier'; |
break; |
case '02' : |
return 'février'; |
break; |
case '03' : |
return 'mars'; |
break; |
case '04' : |
return 'avril'; |
break; |
case '05' : |
return 'mai'; |
break; |
case '06' : |
return 'juin'; |
break; |
case '07' : |
return 'juillet'; |
break; |
case '08' : |
return 'août'; |
break; |
case '09' : |
return 'septembre'; |
break; |
case '10' : |
return 'octobre'; |
break; |
case '11' : |
return 'novembre'; |
break; |
case '12' : |
return 'décembre'; |
break; |
default: |
return ''; |
break; |
} |
} |
} |
?> |