New file |
0,0 → 1,196 |
<?php |
/*vim: set expandtab tabstop=4 shiftwidth=4: */ |
// +------------------------------------------------------------------------------------------------------+ |
// | PHP version 4.1 | |
// +------------------------------------------------------------------------------------------------------+ |
// | Copyright (C) 2004 Tela Botanica (accueil@tela-botanica.org) | |
// +------------------------------------------------------------------------------------------------------+ |
// | This library is free software; you can redistribute it and/or | |
// | modify it under the terms of the GNU Lesser General Public | |
// | License as published by the Free Software Foundation; either | |
// | version 2.1 of the License, or (at your option) any later version. | |
// | | |
// | This library is distributed in the hope that it will be useful, | |
// | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
// | Lesser General Public License for more details. | |
// | | |
// | You should have received a copy of the GNU Lesser General Public | |
// | License along with this library; if not, write to the Free Software | |
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
// +------------------------------------------------------------------------------------------------------+ |
// CVS : $Id: pap_meta.fonct.php,v 1.1 2004-06-15 15:12:12 jpm Exp $ |
/** |
* Bibliothèque de fonctions permettant d'inclure des balises META. |
* |
* Cet ensemble de fonctions permet de manipuler les balise meta à intégrer dans l'entête |
* des pages html. Cela peut être très pratique pour les applications voulant définir précisément |
* ces informations. |
* |
*@package Papyrus |
*@subpackage Fonctions |
//Auteur original : |
*@author Jean-Pascal MILCENT <jpm@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1 $ $Date: 2004-06-15 15:12:12 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
|
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
|
|
/** Fonction GEN_stockerMetaHttpEquiv() - Permet de stocker des informations Http-Equiv. |
* |
* Génésia permet à une application donnée de stocker les balises meta contenant l'attribut http-equiv |
* à intégrer dans l'entête de la page. |
* Cette fonction peut être appelé plusieurs fois. Elle ne fait que stocker les informations |
* dans une variable (tableau associatif) globale utilisée par Génésia. |
* |
* @global array "meta_http_equiv" : utilisé pour stocker les informations des meta contenant l'attribut http-equiv. |
* @param string la clé du tableau des meta http-equiv, l'information présente dans l'attribut http-equiv. |
* @param string le contenu présent dans l'attribut content. |
* @return void les informations sont stockées dans une variable (tableau associatif) globale. |
*/ |
function GEN_stockerMetaHttpEquiv($id_http_equiv, $content) |
{ |
global $_GEN_commun; |
|
if (empty($_GEN_commun['meta_http_equiv'][$id_http_equiv])) { |
$_GEN_commun['meta_http_equiv'][$id_http_equiv] = $content; |
} else { |
die('ERREUR Génésia : cette balise meta à déjà été enregistré par GEN_stockerMetaHttpEquiv(). <br />'. |
'Identifiant : '. $id_http_equiv .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier : '. __FILE__); |
} |
} |
|
/** Fonction GEN_stockerMetaName() - Permet de stocker des informations pour la balise meta. |
* |
* Génésia permet à une application donnée de stocker les balises meta contenant l'attribut name |
* à intégrer dans l'entête de la page. |
* Cette fonction peut être appelé plusieurs fois. Elle ne fait que stocker les informations |
* dans une variable (tableau associatif) globale utilisée par Génésia. |
* |
* @global array "meta_name" : utilisé pour stocker les informations des meta contenant l'attribut name. |
* @param string la clé du tableau des meta name, l'information présente dans l'attribut name. |
* @param string le contenu présent dans l'attribut content. |
* @return void les informations sont stockées dans une variable (tableau associatif) globale. |
*/ |
function GEN_stockerMetaName($id_name, $content) |
{ |
global $_GEN_commun; |
|
if (empty($_GEN_commun['meta_name'][$id_name])) { |
$_GEN_commun['meta_name'][$id_name] = $content; |
} else { |
die('ERREUR Génésia : cette balise meta à déjà été enregistré par GEN_stockerMetaName(). <br />'. |
'Identifiant : '. $id_name .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier : '. __FILE__); |
} |
} |
|
|
/** Fonction GEN_stockerMetaNameDC() - Permet de stocker des informations Dublin Core pour la balise meta. |
* |
* Génésia permet à une application donnée de stocker des informations Dublin Core pour les balises meta |
* à intégrer dans l'entête de la page. |
* Cette fonction peut être appelé plusieurs fois. Elle ne fait que stocker les informations |
* dans une variable (tableau associatif) globale utilisée par Génésia. |
* |
* @global array "meta_name_dc" : utilisé pour stocker les informations des meta contenant l'attribut name. |
* @param string la clé du tableau des meta name, l'information présente dans l'attribut name. |
* @param string le contenu présent dans l'attribut content. |
* @param string le contenu présent dans l'attribut lang. |
* @param string le contenu présent dans l'attribut scheme. |
* @return void les informations sont stockées dans une variable (tableau associatif) globale. |
*/ |
function GEN_stockerMetaNameDC($id_name, $content, $lang = '', $scheme = '') |
{ |
global $_GEN_commun; |
|
if (empty($_GEN_commun['meta_name_dc'][$id_name])) { |
$_GEN_commun['meta_name_dc'][$id_name]['contenu'] = $content; |
$_GEN_commun['meta_name_dc'][$id_name]['langue'] = $lang; |
$_GEN_commun['meta_name_dc'][$id_name]['scheme'] = $scheme; |
} else { |
die('ERREUR Génésia : cette balise meta à déjà été enregistré par GEN_stockerMetaNameDC(). <br />'. |
'Identifiant : '. $id_name .'<br />'. |
'Ligne n° : '. __LINE__ .'<br />'. |
'Fichier : '. __FILE__); |
} |
} |
|
/** Fonction GEN_afficherMeta() - Permet d'afficher les meta informations. |
* |
* Cette fonction affiche les meta informations Http-Equiv stockées |
* dans une variable (tableau associatif) globale utilisée par Génésia. |
* |
* @global array "meta_http_equiv" : utilisé pour stocker les informations des meta contenant l'attribut http-equiv |
* et "meta_name" : utilisé pour stocker les informations des meta contenant l'attribut name. |
* @param string le type de balise meta à afficher (http-equiv, name, dc). |
* @return void les informations sont stockées dans une variable (tableau associatif) globale. |
*/ |
function GEN_afficherMeta($type = 'name') |
{ |
global $_GEN_commun; |
$sortie = ''; |
|
if ($type == 'http-equiv' && isset($_GEN_commun['meta_http_equiv'])) { |
while (list($cle, $valeur) = each($_GEN_commun['meta_http_equiv'])) { |
$sortie .= str_repeat(' ', 8).'<meta http-equiv="'.$cle.'" content="'.$valeur.'" />'."\n"; |
} |
if (empty($sortie)) { |
$sortie .= '<!-- Aucune balise meta http-equiv -->'."\n"; |
} |
}else if ($type == 'name' && isset($_GEN_commun['meta_name'])) { |
while (list($cle, $valeur) = each($_GEN_commun['meta_name'])) { |
if (! empty($valeur['contenu'])) { |
$sortie .= str_repeat(' ', 8).'<meta name="'.$cle.'" content="'.$valeur.'" />'."\n"; |
} |
} |
if (empty($sortie)) { |
$sortie .= '<!-- Aucune balise meta name -->'."\n"; |
} |
} else if ($type == 'dc' && isset($_GEN_commun['meta_name_dc'])) { |
while (list($cle, $valeur) = each($_GEN_commun['meta_name_dc'])) { |
if (! empty($valeur['contenu'])) { |
$sortie .= str_repeat(' ', 8).'<meta name="'.$cle.'" '; |
if (! empty($valeur['langue'])) { |
$sortie .= 'lang="'.$valeur['langue'].'" '; |
} |
if (! empty($valeur['scheme'])) { |
$sortie .= 'scheme="'.$valeur['scheme'].'" '; |
} |
$sortie .= 'content="'.$valeur['contenu'].'" />'."\n"; |
} |
} |
// Ajout du schéma du Dublin Core si on affiche des informations DC |
if (! empty($sortie)) { |
$tmp = $sortie; |
$sortie = str_repeat(' ', 8).'<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" />'."\n"; |
$sortie .= $tmp; |
} else { |
$sortie .= '<!-- Aucune balise meta name Dublin Core -->'."\n"; |
} |
} |
|
return $sortie; |
} |
|
|
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2004/04/20 15:24:54 jpm |
* Ajout de la bibliotheque de fonctions gérant les meta. |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |