249 lines
3.7 KiB
PHP
249 lines
3.7 KiB
PHP
<?php
|
|
|
|
/*******************************************************************************
|
|
|
|
* Plugin LogoSite pour Thélia.
|
|
|
|
* -----------------------------------------------------------------------------
|
|
|
|
* Date de création : Mars 2008
|
|
|
|
* Version : 1.0
|
|
|
|
* -----------------------------------------------------------------------------
|
|
|
|
* Auteur : Guillaume RAYNAUD
|
|
|
|
* Mail : guillaume.raynaud@gmail.com
|
|
|
|
* Pseudo sur les sites de Thélia : Guillaume
|
|
|
|
* Site web : http://guillaume.raynaud.cv.free.fr
|
|
|
|
* Mon profil viadeo : http://www.viadeo.com/fr/profile/guillaume.raynaud4
|
|
|
|
* -----------------------------------------------------------------------------
|
|
|
|
* Site Thélia utilisant ce plugin : http://www.oenoschool.com
|
|
|
|
******************************************************************************/
|
|
|
|
?>
|
|
|
|
<?php
|
|
|
|
|
|
|
|
include_once(realpath(dirname(__FILE__)) . "/../../../classes/PluginsClassiques.class.php");
|
|
|
|
|
|
|
|
|
|
|
|
class LogoSite extends PluginsClassiques{
|
|
|
|
|
|
|
|
var $id;
|
|
|
|
var $nom;
|
|
|
|
var $chemin;
|
|
|
|
var $actif;
|
|
|
|
var $date;
|
|
|
|
|
|
|
|
var $table="logos";
|
|
|
|
var $bddvars = array("id", "nom", "chemin", "actif", "date");
|
|
|
|
|
|
|
|
function LogoSite(){
|
|
|
|
$this->PluginsClassiques();
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
Cette méthode permet de charger un logo de la base de données
|
|
|
|
*/
|
|
|
|
function charger($id){
|
|
|
|
return $this->getVars("select * from $this->table where id=\"$id\"");
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
Cette méthode permet d'initialiser le plugin :
|
|
|
|
création de la table
|
|
|
|
*/
|
|
|
|
function init(){
|
|
|
|
$cnx = new Cnx();
|
|
|
|
$query = "CREATE TABLE `logos` (
|
|
|
|
`id` int(11) NOT NULL auto_increment,
|
|
|
|
`nom` text NOT NULL,
|
|
|
|
`chemin` text NOT NULL,
|
|
|
|
`actif` tinyint(4) DEFAULT '0' NOT NULL,
|
|
|
|
`date` datetime NOT NULL,
|
|
|
|
PRIMARY KEY (`id`)
|
|
|
|
) AUTO_INCREMENT=1 ;";
|
|
|
|
$resul = mysql_query($query, $cnx->link);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
A la désactivation du plugin nous conservons les données enregistrées, nous ne faisons donc rien de particulier.
|
|
|
|
*/
|
|
|
|
function destroy(){
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
Traitement côté client.
|
|
|
|
|
|
|
|
Param entrée
|
|
|
|
<aucun>
|
|
|
|
|
|
|
|
Param sortie
|
|
|
|
#NOM : nom du logo
|
|
|
|
#CHEMIN : chemin du logo sur le serveur
|
|
|
|
#DATE : date du logo
|
|
|
|
|
|
|
|
Exemple d'utililsation
|
|
|
|
<THELIA_logo type="LOGOSITE">
|
|
|
|
<img src="#CHEMIN/#NOM" width="150" height="100" alt="" />
|
|
|
|
<!-- width et height devront toujours avoir la même valeur définie dans le squelette.
|
|
|
|
Le logo s'il est une image illustrative on ne met rien dans le alt,
|
|
|
|
sinon penser à mettre la fonction du lien (s'il est utilisé pour faire un retour à la page d'accueil par ex.) -->
|
|
|
|
</THELIA_logo>
|
|
|
|
*/
|
|
|
|
function boucle($texte, $args){
|
|
|
|
// récupération des arguments
|
|
|
|
//$ref= lireTag($args, "ref");
|
|
|
|
|
|
|
|
$search = "actif=1";
|
|
|
|
$res = "";
|
|
|
|
|
|
|
|
// préparation de la requête
|
|
|
|
//if($ref!="") $search.=" and ref=\"$ref\"";
|
|
|
|
|
|
|
|
$logo = new LogoSite();
|
|
|
|
|
|
|
|
$query = "select * from $logo->table where $search";
|
|
|
|
$resul = mysql_query($query, $logo->link);
|
|
|
|
$nbres = mysql_numrows($resul);
|
|
|
|
if(!$nbres) return "";
|
|
|
|
|
|
|
|
while( $row = mysql_fetch_object($resul)){
|
|
|
|
$temp = str_replace("#NOM", "$row->nom", $texte);
|
|
|
|
$temp = str_replace("#CHEMIN", "$row->chemin", $temp);
|
|
|
|
$temp = str_replace("#DATE", substr($row->date, 0, 10), $temp);
|
|
|
|
//$temp = str_replace("#HEURE", substr($row->date, 11), $temp);
|
|
|
|
|
|
|
|
$res .= $temp;
|
|
|
|
}
|
|
|
|
return $res;
|
|
|
|
}
|
|
|
|
|
|
|
|
/*
|
|
|
|
Il n'y a pas d'action particulière à attendre de la part du client
|
|
|
|
*/
|
|
|
|
function action(){
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|
|
|