/trunk/client/annuaire/configuration/ann_config.inc.php |
---|
New file |
0,0 → 1,107 |
<?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: ann_config.inc.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fichier de configuration de l'annuaire |
* |
* A éditer de façon spécifique à chaque déploiement |
* |
*@package inscription |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
/** |
//=========================DEFINITION DE VARIABLES ================================= |
* Définition des variables globales |
//================================================================================== |
*/ |
$GLOBALS['AUTH'] = &$_GEN_commun['pear_auth'] ; |
$GLOBALS['ann_db'] = &$_GEN_commun['pear_db'] ; |
/** |
//==================================== LES URLS ================================== |
* Constantes liées à l'utilisation des url |
//================================================================================== |
*/ |
$GLOBALS['ann_url'] = &$_GEN_commun['url']; //l'url de base de l'application, un objet Net_URL |
// Créer cet objet par $GLOBALS['ins_url'] = new Net_URL('http://....') ; |
/** |
//=========================DEFINITION DE VARIABLES ================================= |
* Définition des variables globales |
//================================================================================== |
*/ |
/** |
//==================================== LES URLS ================================== |
* Constantes liées à l'utilisation des url |
//================================================================================== |
*/ |
define ("ANN_URL_SPIP", "rubrique.php3?id_rubrique=$id_rubrique&lang=$lang") ; |
/** |
//==================================== LES CHEMINS ================================= |
* Constantes définissant les chemins d'accé au différents fichiers inclus dans les |
* applications. |
//================================================================================== |
*/ |
define("ANN_CHEMIN_APPLI",'annuaire/');//le chemin vers l'application courrante |
define("ANN_CHEMIN_LIBRAIRIE",'annuaire/bibliotheque/');//le chemin de la librairie de fichier php |
/** |
//==================================== CONSTANTES ================================== |
* Constantes des noms de tables et de champs dans l'annuaire |
//================================================================================== |
*/ |
define ("ANN_ANNUAIRE", "annuaire") ; |
define ("ANN_CHAMPS_NOM", "a_nom") ; // Nom du champs nom |
define ("ANN_CHAMPS_MAIL", "a_mail") ; // Nom du champs mail |
define ("ANN_CHAMPS_PRENOM", "a_prenom") ; // Nom du champs prénom |
define ("ANN_CHAMPS_ID", "a_id") ; // Nom du champs id |
/** |
//==================================== CONSTANTES================================== |
* Constantes contenant des mails |
//================================================================================== |
*/ |
define ("ANN_MAIL_ADMIN", "") ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:19:20 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/client/annuaire/annuaire.php |
---|
New file |
0,0 → 1,181 |
<? |
/*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: annuaire.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* programme principal du module annuaire |
* |
* programme principal du module annuaire |
* |
*@package annuaire |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
include_once 'client/annuaire/configuration/ann_config.inc.php' ; |
if (isset($lang)) { |
include_once CAR_CHEMIN_APPLI."/langues/ann_langue_$lang.inc.php" ; |
} else { |
include_once CAR_CHEMIN_APPLI.'/langues/ann_langue_fr.inc.php' ; |
} |
include_once 'annuaire/configuration/ann_config.inc.php' ; |
include_once ANN_CHEMIN_LIBRAIRIE.'ann_annuaire.fonct.php' ; |
if (isset($lang)) { |
include_once "annuaire/langues/ann_langue_$lang.inc.php" ; |
} else { |
include_once 'annuaire/langues/ann_langue_fr.inc.php' ; |
} |
include_once 'HTML/QuickForm.php' ; |
define ("ENVOIE_MAIL", 2) ; |
//============================================================================== |
// putFrame ($db, $link, $DOCrow, $PAGEresult, $CURRENTPAGErow, $innerTableWidth, $innerTableSpacing) |
// $db : database name |
// $link : connexion to database |
// $DOCrow : row about the current document |
// $PAGEresult : result set: all pages linked to the current document |
// $CURRENTPAGErow : row about the current page |
// $innerTableWidth : global table width |
// $innerTableSpacing : cell spacing for global table. |
// |
// Generation frame content. |
//============================================================================== |
function GEN_afficherContenuCorps () { |
global $AUTH, $db ; |
global $GS_GLOBAL ; |
if (!$AUTH->getAuth()) { |
$res = AUTH_formulaire_login() ; |
} else { |
// Le code javascript des cases à cocher |
$java = |
"function setCheckboxes(the_form) |
{ |
var do_check=document.forms[the_form].elements['selecttotal'].checked; |
var elts = document.forms[the_form].elements['select[]']; |
var elts_cnt = (typeof(elts.length) != 'undefined') |
? elts.length |
: 0; |
if (elts_cnt) { |
for (var i = 0; i < elts_cnt; i++) { |
elts[i].checked = do_check; |
} // Fin for |
} else { |
elts.checked = do_check; |
} // Fin if... else |
return true; |
} // Fin de la fonction 'setCheckboxes()'"; |
$GLOBALS['javascript'] .= $java ; |
$res = "<h1 class=\"annuaire_titre1\">".ANN_TITRE."</h1>\n" ; |
$res .= "<h2 class=\"annuaire_titre2\">".ANN_CLIQUEZ_LETTRE."</h2>\n"; |
global $baseURL ; |
$baseURL = ANN_URL_SPIP ; |
// S'il y a un mail a envoyé, on l'envoie |
if ($action == ENVOIE_MAIL) $res .= envoie_mail () ; |
$res .= parcourrirAnnu("") ; |
} |
return $res; |
} |
//============================================================================== |
// FUNCTION putFooter () |
// |
// Generation of footer. |
//============================================================================== |
function putFooter () { |
return ' '; |
} |
function envoie_mail () { |
global $titre, $corps, $HTTP_POST_VARS, $select, $AUTH, $db ; |
// On vérifie qu'un email aie été sélectionné |
if (!is_array($select)) { |
$res ="<div class=\"annuaire_erreur\">".ANN_VERIF_MAIL_COCHE."</divr>"; |
return $res ; |
} |
if ($titre == "" || $corps == "") { |
$res = "<div class=\"annuaire_erreur\">".ANN_VERIF_TITRE."</div>\n" ; |
return $res ; |
} |
// On récupère le mail de l'expéditeur |
$req_exp = "select ".ANN_CHAMPS_MAIL." from ".ANN_ANNUAIRE." where ".ANN_CHAMPS_ID."=".$AUTH->getAuthData(ANN_CHAMPS_ID) ; |
$res_exp = $db->query($req_exp) ; |
if (DB::isError($res_exp)) { |
die ("Echec de la requete sur annuaire_tela <br>".$res_exp->getMessage()) ; |
} |
$ligne_exp = $res_exp->fetchRow(DB_FETCHMODE_ASSOC) ; |
$expediteur = $ligne_exp[ANN_CHAMPS_MAIL] ; |
$corps .= ANN_PIED_MESSAGE ; |
$liste = "" ; |
for ($i = 0; $i < count($select); $i++) { |
$requete = "select ".ANN_CHAMPS_MAIL." from ".ANN_ANUAIRE." where ".ANN_CHAMPS_ID."=".$select[$i] ; |
$resultat = $db->query($requete) ; |
if (DB::isError($resultat)) { |
die ("Echec de la requete sur annuaire_tela <br>".$resultat->getMessage()) ; |
} |
$ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC) ; |
// L'envoie du mail proprement dit |
if (!mail($ligne[ANN_CHAMPS_MAIL], stripslashes($titre), stripslashes($corps), "From: $expediteur")) { |
return "<div class=\"annuaire_erreur\">Le mail n'est pas partie</div>\n" ; |
} |
$liste .= $ligne[ANN_CHAMPS_MAIL]."\n" ; |
} |
$corps .= "\n---------------------------------------------------------------------------- |
Ce message a été envoyé à :\n $liste" ; |
mail ("ANN_MAIL_ADMIN", stripslashes($titre), stripslashes($corps), "From: $expediteur"); |
} |
/**------------------------------------------------------------------------------ |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:18:43 alex |
* retour vers la liste des participants après un ajout. |
* |
* |
*-- End of source ------------------------------------------------------------*/ |
?> |
/trunk/client/annuaire/annuaire_moteur_config.php |
---|
New file |
0,0 → 1,67 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | annuaire_moteur_config.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2000 - 2003 Tela Botanica | |
// +--------------------------------------------------------------------------------+ |
// | Fichier de configuration de annuaire_moteur.php | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: annuaire_moteur_config.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
//=========================DEFINITION DE VARIABLES ================================= |
* Définition des variables globales |
//================================================================================== |
*/ |
global $GS_GLOBAL, $_SERVER ; |
/** |
//==================================== LES URLS ================================== |
* Constantes liées à l'utilisation des url |
//================================================================================== |
*/ |
define("AM_BASE_URL", 'http://'.$_SERVER["HTTP_HOST"].'/');//URL de base. Exemple: http://www.tela-botanica.org/ |
define("AM_URL_DOCUMENT",'index.php?project='.$GS_GLOBAL['project'].'&locale='. |
$GS_GLOBAL['locale'].'&doc='.$GS_GLOBAL['document_row']->GD_NOM.'&page='. |
$GS_GLOBAL['current_page_ndx']); //l'url de base de l'apllication |
/** |
//==================================== LES CHEMINS ================================= |
* Constantes définissant les chemins d'accé au différents fichiers inclus dans les |
* applications. |
//================================================================================== |
*/ |
define("AM_CHEMIN_APPLI",'client/applications_clientes/annuaire/');//le chemin vers l'application courrante |
define("AM_CHEMIN_PHP",'php/');//le chemin vers les fichiers propre à GSITE // obsolète ! |
define("AM_CHEMIN_LIBRAIRIE",'client/bibliotheque_client/fonctions/');//le chemin de la librairie de fichier php |
/** |
//==================================== CONSTANTES ================================== |
* Constantes de connexion aux bases de données MySQL |
//================================================================================== |
*/ |
define("AM_HOTE","brille.logicosme.net"); |
define("AM_UTILISATEUR","botanica"); |
define("AM_MDP","wuzvw90fq"); |
define("AM_BD_BOTA", $GS_GLOBAL['mysql_db']);//Nom de la base des tables de chorologie |
define("AM_BD_LINK", $GS_GLOBAL['link']);//Nom de la base des tables de la carto (et éventuellement de chorologie) |
/** |
//==================================== CONSTANTES ================================== |
* Constantes des noms de tables et de champs dans l'annuaire |
//================================================================================== |
*/ |
define ("AM_ANNUAIRE", "annuaire_tela") ; // Nom de la table d'annuaire |
define ("AM_NOM", "U_NAME") ; // Nom du champs nom |
define ("AM_MAIL", "U_MAIL") ; // Nom du champs mail |
define ("AM_PRENOM", "U_SURNAME") ; // Nom du champs prénom |
define ("AM_DPT", "gen_FRENCH_DPT") ; // Nom de la table département |
define ("AM_PAYS", "gen_COUNTRY") ; // Nom de la table pays |
?> |
/trunk/client/annuaire/fonctions.php |
---|
New file |
0,0 → 1,267 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | fonctions.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2002 Tela Botanica | |
// +--------------------------------------------------------------------------------+ |
// | Fonctions diverses | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: fonctions.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
// effectue une requete sur un colonne unique et renvoie le resultat sous la forme |
// d'un tableau |
function get($query) { |
$tableau = array() ; |
$query = "SELECT " . $query; |
$result = mysql_query($query) or die ("Echec de la requête sur AGORA"); |
while ($row = mysql_fetch_row($result)) { |
array_push ($tableau,$row[0]); |
} |
return $tableau ; |
} |
function textecourt($texte, $taille) { |
if (strlen($texte) > $taille) return substr($texte, 0, $taille-3)."..."; |
return $texte; |
} |
// formulaire, prend en parametre les valeurs par defaut |
function formulaire($titre="",$description="", $abreviation="", $internet="", $selectedForums="", $selectedProjet="",$origine="NOUVEAU") { |
global $baseURL, $forums, $projets, $projetAb ; |
$forums = get("AGO_A_ALIAS FROM agora") ; |
$IDforums = get ("AGO_A_ID FROM agora"); |
$projets = get("TITRE FROM PROJET_PROJET ORDER BY ABREVIATION"); |
$projetAb = get("ABREVIATION FROM PROJET_PROJET ORDER BY ABREVIATION") ; |
if ($selectedForums == "") $selectedForums = array() ; |
if ($selectedProjet == "") $selectedProjet = array() ; |
$res ="<table>\n"; |
if ($origine == "NOUVEAU") { |
$res .="<form action=\"$baseURL&menuProjet=projetadm&action=2\" method=\"post\">\n"; |
} else { |
$res .="<form action=\"$baseURL&menuProjet=projetgest&projet=$abreviation&action=2\" method=\"post\">\n"; |
} |
$res .="<tr class=\"text\"><td style=\"text-align:right;font-weight:bold;\">Titre :</td><td><input type=\"text\" |
class=\"insInputForm\" name=\"titre\" size=\"60\" value=\"$titre\"></td></tr>\n"; |
$res .="<tr class=\"text\"><td valign=\"top\" style=\"text-align:right;font-weight:bold;\">Description :</td><td><textarea name=\"description\" |
class=\"insInputForm\" cols=\"60\" rows=\"20\">$description</textarea></td></tr>\n"; |
if ($origine == "NOUVEAU") { |
$res .="<tr class=\"text\"><td style=\"text-align:right;font-weight:bold;\">Abréviation :</td>\n"; |
$res .="<td><input class=\"insInputForm\" type=\"text\" name=\"abreviation\" size=\"5\" value=\"$abreviation\"> "; |
$res .=" Au maximum 5 caractères, de préférence en majuscule.</td></tr>\n"; |
} |
$res .="<tr class=\"text\"><td style=\"text-align:right;font-weight:bold;\">Espace Internet :</td>\n"; |
$res .="<td><input class=\"insInputForm\" type=\"text\" name=\"internet\" size=\"60\" value=\"$internet\"></td></tr>\n"; |
$res .="<tr class=\"text\"><td valign=\"top\" style=\"text-align:right;font-weight:bold;\">Forums associés :</td><td><select class=\"insInputForm\" name=forumsS[] size=\""; |
$res .=count($forums); |
$res .="\" multiple>\n"; |
for ($i = 0 ; $i < count($forums) ; $i++) { |
$res .="<option value=\"$IDforums[$i]\""; |
if (in_array($forums[$i],$selectedForums)) $res .=" selected"; |
$res .=">"; |
$res .=$forums[$i]; |
$res .="</option>\n"; |
} |
$res .="</select>\n"; |
$res .="<tr class=\"text\"><td valign=\"top\" style=\"text-align:right;font-weight:bold;\">Projets associés :</td>\n<td><select class=\"insInputForm\" name=projetsS[] size=\""; |
$res .=count($projets); |
$res .="\" multiple>\n"; |
for ($i = 0 ; $i < count($projets) ; $i++) { |
$res .="<option value=\""; |
$res .=$projetAb[$i]; |
$res .="\""; |
if (in_array($projetAb[$i],$selectedProjet)) $res .=" selected"; |
$res .=">"; |
$res .=$projets[$i]; |
$res .="</option>\n"; |
} |
$res .="</select></td></tr>\n"; |
$res .="<tr><td colspan=\"2\" align=\"center\">\n"; |
if ($origine != "NOUVEAU") $res .="<input style=\"background-color:#FFFFFF\" type=\"button\" onclick=\"Javascript:history.go(-1);\" value=\"Annuler\">\n" ; |
$res .="<input style=\"background-color:#FFFFFF\" type=\"submit\""; |
if ($origine == "NOUVEAU") { |
$res .=" value=\"Créer\">"; |
} else { $res .=" value=\"Valider\">"; |
} |
$res .="</td></tr>\n"; |
$res .="</form>\n"; |
$res .="</table>\n"; |
return $res ; |
} |
function getExtension($filename) { |
$extension = explode (".",$filename) ; |
return $extension[1] ; |
} |
#-------------------------------------------------------------- |
# Insere $num espace insecable |
#-------------------------------------------------------------- |
function insert_spaces($num) { |
$res = "" ; |
for ($i = 0; $i < $num; $i++) $res .= " "; |
return $res ; |
} |
function getEnumSet($text) { |
$resultat = explode("'", $text) ; |
$retour = array() ; $j = 0 ; |
for ($i = 1 ; $i < count ($resultat)-1 ; $i = $i + 2) { |
$retour[$j] = $resultat[$i] ; |
$j++ ; |
} |
return $retour ; |
} |
$jour = array("lundi","mardi", "mercredi", "jeudi", "vendredi", "samedi","dimanche"); |
$moi = array("janvier","février","mars","avril","mai","juin","juillet","septembre","octobre","novembre","décembre") ; |
function parcourrirAnnu($event) { |
global $baseURL, $lettre, $menuProjet ; |
$outputText = "" ; |
$outputText .= "<tr><td> </td></tr>\n"; |
$outputText .= "<tr><td><table align=\"center\">"; |
$outputText .= "<tr class=\"texte_tb\">"; |
// ecrire toutes les lettres avec un lien |
for ($i = 65 ; $i <91 ; $i++) { |
$outputText .= "\t<td><a style=\"font-size:15px;\" href=\"$baseURL&menuProjet=$menuProjet&action=$event&lettre="; |
$outputText .= chr($i) ; |
$outputText .= "\">"; |
$outputText .= chr($i) ; |
$outputText .= "</a></td>\n"; |
} |
$outputText .= "<td> <a href=\"$baseURL&menuProjet=$menuProjet&action=$event&lettre=tous\">Tous</a></td>\n" ; |
$outputText .= "</tr></table></td></tr>\n"; |
// si une lettre est selectionne |
if (!empty($lettre)) { |
$query = "SELECT annuaire_tela.U_NAME,annuaire_tela.U_SURNAME,annuaire_tela.U_MAIL,annuaire_tela.U_CITY, |
annuaire_tela.U_ZIP_CODE,gen_COUNTRY.GC_NAME FROM annuaire_tela,gen_COUNTRY WHERE"; |
if ($lettre != "tous") $query .= " U_NAME LIKE \"$lettre%\" AND" ; |
$query .= " annuaire_tela.U_COUNTRY=gen_COUNTRY.GC_ID AND gen_COUNTRY.GC_LOCALE=\"fr\" |
AND U_NAME<>\"\" and U_SHOW=3 ORDER BY U_NAME" ; |
$result = mysql_query($query) or die ("Echec de la requête sur annuaire_tela..."); |
if (mysql_num_rows($result) != 0) { |
// pour chaque nom, on inscrit les infos |
$outputText .= "<tr><td> </td></tr>\n"; |
$outputText .= "<tr class=\"insTitle1\"><td>Liste des inscrits à la lettre : $lettre</td></tr>\n"; |
$outputText .= "<tr><td><table width=\"100%\">"; |
$outputText .= "<tr class=\"insTitle1\"><td>Nom</td>"; |
$outputText .= "<td>Prénom</td><td align=\"center\">E-mail</td>\n"; |
$outputText .= "<td align=\"center\">Code postal</td><td>Pays</td></tr>\n"; |
$pair = true ; |
while ($row = mysql_fetch_object($result)) { |
$outputText .= "<tr class=\"texte_tb2\""; |
if ($pair) { |
$outputText .= " bgcolor=\"#E8FFE5\""; |
$pair = false ; |
} else { |
$pair = true ; |
} |
$outputText .= "><td>$row->U_NAME</td><td>$row->U_SURNAME</td>\n"; |
$outputText .= "<td align=\"left\"><a href=\"mailto:$row->U_MAIL\">$row->U_MAIL</a></td>\n"; |
$outputText .= "<td align=\"center\">$row->U_ZIP_CODE</td>\n"; |
$outputText .= "<td>$row->GC_NAME</td>\n" ; |
$outputText .= "</tr>\n"; |
} |
$outputText .= "</table></td></tr>\n"; |
} else { |
$outputText .= "<tr><td> </td></tr>\n"; |
$outputText .= "<tr class=\"texte_tb\"><td>Pas d'inscrit</td></tr>\n"; |
} |
} |
return $outputText ; |
} |
function formRep($nom="", $description="", $origine="NOUVEAU", $visibilite="") { |
global $baseURL, $projet, $repcourant, $id ; |
if ($origine == "NOUVEAU") { |
$res = "<form action=$baseURL&action=20\" method=\"post\">\n" ; |
} else { |
$res = "<form action=$baseURL&action=19\" method=\"post\"\n>" ; |
} |
$res .= "\t<table align=\"center\">\n\t" ; |
$res .= "<tr class=\"texte_tb\"><td colspan=\"2\">N'utilisez pas d'accents, ni d'espace pour le nom du répertoire.</td></tr>\n"; |
$res .= "<tr class=\"text\"><td style=\"font-weight:bold;text-align:right\">" ; |
$res .= "Nom : </td><td><input class=\"insInputForm\" type=\"text\" name=\"nom\" size=\"80\" value=\"$nom\"></td></tr>\n" ; |
$res .= "<tr class=\"text\"><td style=\"font-weight:bold;text-align:right;vertical-align:top\">Description : </td>\n" ; |
$res .= "<td><textarea class=\"insInputForm\" name=\"description\" cols=\"81\">$description</textarea></td></tr>\n" ; |
$res .= "<tr class=\"text\"><td align=\"right\"><b>Visibilité :</b></td>\n"; |
$res .= "<td align=\"left\">\n"; |
$res .= "<input style=\"background-color:#FFFFFF;\" type=\"radio\" name=\"visible\" value=\"public\"" ; |
if ($visibilite == "public" or $visibilite == "") $res .= " checked" ; |
$res .= ">Tout public "; |
$res .= "<input style=\"background-color:#FFFFFF;\" type=\"radio\" name=\"visible\" value=\"prive\"" ; |
if ($visibilite == "prive") $res.= " checked" ; |
$res .= ">Projet seulement</td></tr>\n"; |
$res .= "<tr class=\"text\"><td><input type=\"hidden\" name=\"repcourant\" value=\"$repcourant\"</td><td>\n" ; |
$res .= "<input type=\"hidden\" name=\"id\" value=\"$id\">" ; |
$res .= "<input type=\"submit\" style=\"background-color:#FFFFFF;\"" ; |
if ($origine == "NOUVEAU") { $res.= "value=\"Valider\"" ; } else { $res .= "value=\"Modifier\"" ; } |
$res .= "></td></tr></table></form>\n" ; |
return $res ; |
} |
// renvoie le chemin complet depuis la racine de l'application |
// on indique en argument l'identifiant du repertoire en cour |
// la fonction remonte d'etage en etage jusqu'a ce que gen_voiraussi.PERE soit NULL |
function getPath($ID_rep) { |
$path = "" ; |
$query = "SELECT PERE,NOM FROM gen_repertoire WHERE ID='$ID_rep'" ; |
$result = mysql_query($query) or die ("Echec de la requête dans gen_voiraussi, au cours de la recherche |
du chemin des repertoire") ; |
$row = mysql_fetch_object($result) ; |
if ($row->PERE != NULL) { |
$path .= getPath($row->PERE)."/".$row->NOM ; |
} |
return $path ; |
} |
// renvoie le chemin avec les tag <a href |
function getHTMLPath($ID_rep) { |
global $baseURL ; |
$query = "SELECT PERE,NOM FROM gen_repertoire WHERE ID='$ID_rep'" ; |
$result = mysql_query($query) or die ("Echec de la requête dans gen_voiraussi, au cours de la recherche |
du chemin des repertoire") ; |
$row = mysql_fetch_object($result) ; |
if ($row->PERE != NULL) { |
$path .= " <b>></b><a href=\"$baseURL&repcourant=$ID_rep\">" ; |
$path .= $row->NOM ; |
$path .= "</a>\n" ; |
$path = getHTMLPath($row->PERE).$path ; |
} |
return $path ; |
} |
function nettoieAccent(&$texte) { |
// un peu barbare |
$texte = ereg_replace("é","e",$texte) ; |
$texte = ereg_replace("è","e",$texte) ; |
$texte = ereg_replace("ê","e",$texte) ; |
$texte = ereg_replace("à","a",$texte) ; |
$texte = ereg_replace("ù","u",$texte) ; |
$texte = ereg_replace("â","a",$texte) ; |
$texte = ereg_replace("ä","a",$texte) ; |
$texte = ereg_replace("ë","e",$texte) ; |
$texte = ereg_replace("î","i",$texte) ; |
$texte = ereg_replace("ô","o",$texte) ; |
$texte = ereg_replace("û","u",$texte) ; |
$texte = ereg_replace("ö","o",$texte) ; |
$texte = ereg_replace("ü","u",$texte) ; |
return $texte ; |
} |
?> |
/trunk/client/annuaire/annuaire_moteur_lang_fr.php |
---|
New file |
0,0 → 1,27 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | annuaire_moteur_lang_fr.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2000 - 2003 Tela Botanica | |
// +--------------------------------------------------------------------------------+ |
// | Contient le texte de l'appli en français | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: annuaire_moteur_lang_fr.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
define ("AM_L_TITRE", "Chercher un adhérent") ; |
define ("AM_L_RECHERCHER", "Rechercher") ; |
define ("AM_L_PAYS", "Pays") ; |
define ("AM_L_NOM", "Nom") ; |
define ("AM_L_PRENOM", "Prénom") ; |
define ("AM_L_VILLE", "Ville") ; |
define ("AM_L_DEPARTEMENT", "Département") ; |
define ("AM_L_MAIL", "Mail") ; |
define ("AM_L_COTISANTS", "Cotisants") ; |
define ("AM_L_GRP_RES", "Grouper les résultats") ; |
define ("AM_L_TOUS", "Tous") ; |
define ("AM_L_MAIL_SELECTION", "Envoyer un mail à la sélection") ; |
?> |
/trunk/client/annuaire/bibliotheque/annuaire.fonct.php |
---|
New file |
0,0 → 1,179 |
<?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: annuaire.fonct.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fonctions du module annuaire |
* |
* Fonctions du module annuaire |
* |
*@package annuaire |
//Auteur original : |
*@author Alexandre Granier <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
include_once "HTML/QuickForm.php" ; |
// +------------------------------------------------------------------------------------------------------+ |
// | LISTE de FONCTIONS | |
// +------------------------------------------------------------------------------------------------------+ |
function AUTH_formulaire_login() { |
// l'url de la page en cours |
$url = ANN_URL_SPIP; |
$res = ''; |
$form = new HTML_QuickForm ('inscription', 'post', $url) ; |
$form->addElement ('text', 'username', ANN_EMAIL) ; |
$form->addElement ('password', 'password', ANN_MOT_DE_PASSE) ; |
$form->addElement('submit', 'valider', ANN_VALIDER); |
$res .= $form->toHTML() ; |
$res .= "<tr class=\"texte_tb\"><td>".ANN_TEXTE_PERDU."</td></tr>\n" ; |
return $res; |
} |
/** function parcourrirAnnu () Affiche l'annuaire à partir d'une lettre |
* |
* |
* |
* @return string HTML |
*/ |
function parcourrirAnnu($event) { |
global $baseURL, $lettre, $menuProjet, $db, $HTTP_USER_AGENT ; |
$res = "" ; |
$res .= "<div><table align=\"center\">"; |
$res .= "<tr class=\"texte_tb\">"; |
// ecrire toutes les lettres avec un lien |
for ($i = 65 ; $i <91 ; $i++) { |
$res .= " <td><a style=\"font-size:15px;\" href=\"$baseURL&lettre="; |
$res .= chr($i) ; |
$res .= "\">"; |
$res .= chr($i) ; |
$res .= "</a></td>\n"; |
} |
$res .= "</tr></table></div>\n"; |
// si une lettre est selectionne |
if (!empty($lettre)) { |
$query = "SELECT ".ANN_ANNUAIRE.".".ANN_CHAMPS_NOM.",".ANN_ANNUAIRE.".".ANN_CHAMPS_PRENOM. |
",".ANN_ANNUAIRE.".".ANN_CHAMPS_ID.",".ANN_ANNUAIRE.".".ANN_CHAMPS_MAIL. |
" from ".ANN_ANNUAIRE." WHERE"; |
if ($lettre != "tous") $query .= " ".ANN_CHAMPS_NOM." LIKE \"$lettre%\"" ; |
$query .= " ORDER BY ".ANN_CHAMPS_NOM ; |
$result = $db->query($query) ; |
if (DB::isError($result)) { |
die ($result->getMessage().'<br />'.$result->getDebugInfo()) ; |
} |
if ($result->numRows() != 0) { |
// pour chaque nom, on inscrit les infos |
$res .= "<tr class=\"insTitle1\"><td>".ANN_LISTE_INSCRIT_LETTRE." : $lettre</td></tr>\n"; |
$res .= "<tr><td><form action=\"$baseURL&action=".ENVOIE_MAIL."&lettre=$lettre\" method=\"POST\" name=\"formmail\"><table width=\"100%\">" ; |
$res .= "<tr><td><table width=\"100%\" id=\"table_annuaire\">"; |
$res .= '<colgroup><col width="10%" /><col width="45%" /><col width="45%" /></colgroup>' ; |
$res .= "<thead><th> </th><th>".ANN_NOM."</th>"; |
$res .= "<th>".ANN_PRENOM."</th>\n"; |
$pair = true ; |
while ($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) { |
$res .= "<tr "; |
if ($pair) { |
$res .= " class=\"ligne_impaire\""; |
$pair = false ; |
} else { |
$res .= " class=\"ligne_paire\"" ; |
$pair = true ; |
} |
$res .= ">" ; |
$res .= "<td><input type=\"checkbox\" name=\"select[]\" value=\"$row->U_ID\"></td>\n" ; |
$res .= "<td>".$row[ANN_CHAMPS_NOM]."</td><td>".$row[ANN_CHAMPS_PRENOM]."</td>\n"; |
$res .= "</tr>\n"; |
} |
$res .= "</table></td></tr>" ; |
// Raccourci pour sélectionner tous les adhérents d'un coup |
$res .= "<tr class=\"texte_tb\" align=\"center\"><td>".ANN_CHECK_UNCHECK ; |
$res .= " <input type=\"checkbox\" name=\"selecttotal\" onclick=\"javascript:setCheckboxes('formmail');\"></td></tr>"; |
$res .= "<tr><td> </td></tr>\n" ; |
$res .= "<tr class=\"annuaire_titre2\"><td>".ANN_ENVOYER_MAIL."</td></tr>\n"; |
$res .= "<tr><td>\n<table width=\"100%\" border=\"0\">\n" ; |
$res .= "<tr><td class=\"insLabel\">".ANN_SUJET." :</td>\n |
<td><input class=\"formInput\" type=\"text\" name=\"titre\" size=\"80\" value=\"\"></td>\n |
</tr>\n |
<tr> |
<td class=\"insLabel\" valign=\"top\">".ANN_MESSAGE." :</td>\n |
<td><textarea class=\"formInput\" name=\"corps\" rows=\"5\" cols=\"80\"></textarea></td>\n |
</tr>\n |
<tr> |
<td></td>\n |
<td align=\"center\">"; |
if (ereg ("Gecko",$HTTP_USER_AGENT)) { |
$res .= "<input class=\"texte_tb\" type=\"submit\" value=\"".ANN_ENVOYER."\">"; |
} else { |
$res .= "<input class=\"texte_tb\" type=\"submit\" onclick=\"javascript:confirmer();\" value=\"".ANN_ENVOYER."\">"; |
} |
$res.="<input class=\"texte_tb\" type=\"button\" ". |
"onclick=\"javascript:if (window.confirm ('".ANN_CLIC_CONFIRMATION.".')) ". |
"window.location.href='$baseURL&fin=true&logout=1';\" |
\nvalue=\"Deconnexion\"> |
</td>\n |
</tr>\n |
</table>\n |
</td> |
</tr>" ; |
$res .= "</table></form></td></tr>\n"; |
} else { |
$res .= "<div>".ANN_PAS_D_INSCRIT."</div>\n"; |
} |
} |
return $res ; |
} |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:18:49 alex |
* retour vers la liste des participants après un ajout. |
* |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/client/annuaire/voir_recu_pdf.php |
---|
New file |
0,0 → 1,39 |
<?php |
// +----------------------------------------------------------------------------+ |
// |recu_pdf.php | |
// +----------------------------------------------------------------------------+ |
// | Copyright (c) 2003 Tela Botanica | |
// +----------------------------------------------------------------------------+ |
// | Ce fichier génère un fichier PDF | |
// | contenant le recu pour une cotisation à Tela Botanica | |
// | Il utilise la librairie FPDF | |
// | http://www.fpdf.org/ | |
// | | |
// | Recoie $cotisation_id en parametre | |
// +----------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +----------------------------------------------------------------------------+ |
// |
// $Id: voir_recu_pdf.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
// Inclusion des fichiers nécessaire à une connection |
include_once ("../../../php/config.php") ; |
$link = mysql_connect($G_mysqlHost, $G_mysqlUser, $G_mysqlPwd) ; |
mysql_select_db($G_mysqlDB) ; |
include_once "../../../php/lib/fpdf/fpdf.php"; |
$envoie = 1 ; |
include_once "recu_pdf_corps.php" ; |
// buffer est une propriété de la classe FPDF qui contient les données au format PDF. |
// habituellement on ne l'utilise pas, on appelle $pdf->Output() qui envoie les |
// entete HTTP du document généré |
$pdf->Output() ; |
?> |
/trunk/client/annuaire/classes/inscription.class.php |
---|
New file |
0,0 → 1,229 |
<?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: inscription.class.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Inscription |
* |
* Un module d'inscription, en général ce code est spécifique à |
* un site web |
* |
*@package inscription |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ $Date: 2005-01-03 17:27:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
// +------------------------------------------------------------------------------------------------------+ |
// | ENTETE du PROGRAMME | |
// +------------------------------------------------------------------------------------------------------+ |
require_once 'HTML/QuickForm.php' ; |
class HTML_formulaireInscription extends HTML_Quickform { |
/** |
* Constructeur |
* |
* @param string formName Le nom du formulaire |
* @param string method Méthode post ou get |
* @param string action L'action du formulaire. |
* @param int target La cible. |
* @param Array attributes Les attributs HTML en plus. |
* @param bool trackSubmit ?? |
* @return void |
* @access public |
*/ |
function HTML_forumlaireInscription ( $formName, $method = "post", $action, $target = "_self", $attributes, $trackSubmit = false ) { |
HTML_Quickform::HTML_Quickform($formName, $method, $action, $target, $attributes, $trackSubmit) ; |
} |
/** |
* |
* |
* @return void |
* @access public |
*/ |
function construitFormulaire($url, $liste_pays) |
{ |
$squelette =& $this->defaultRenderer(); |
$squelette->setFormTemplate("\n".'<form{attributes}>'."\n".'{content}'."\n".'</form>'."\n"); |
$squelette->setElementTemplate( '<li class="liste_inscription">'."\n".'{label}'."\n".'{element}'."\n". |
'<!-- BEGIN required --><span class="symbole_obligatoire">*</span><!-- END required -->'."\n". |
'<!-- BEGIN error --><span class="erreur">{error}</span><!-- END error -->'."\n". |
'</li>'."\n"); |
$squelette->setGroupElementTemplate ('<span class="groupe_formulaire">{label}{element}</span>', 'groupe_mot_de_passe') ; |
$squelette->setGroupElementTemplate ('<span class="groupe_formulaire">{label}{element}</span>', 'groupe_cp_ville') ; |
$squelette->setGroupElementTemplate ('<span class="groupe_formulaire">{label}{element}</span>', 'groupe_nom') ; |
$squelette->setRequiredNoteTemplate("\n".'<p>'."\n".'<span class="symbole_obligatoire">*</span> {requiredNote}'."\n".'</p>'."\n"); |
$fieldset_debut = '<fieldset>'."\n". |
'<legend>'.INS_AJOUT_MEMBRE.'</legend>'."\n". |
'<ul>'."\n"; |
$this->addElement('html', $fieldset_debut); |
$this->addElement ('text', 'email', INS_EMAIL) ; |
$this->addRule ('email', INS_EMAIL_REQUIS, 'required','', 'client') ; |
$this->addRule ('email', INS_MAIL_INCORRECT, 'email', '', 'client') ; |
$this->registerRule('doublonmail', 'callback', 'verif_doublonMail'); |
$this->addRule('email', INS_MAIL_DOUBLE, 'doublonmail', true); |
// A faire, grouper les mots de passe |
$this->addElement ('password', 'mot_de_passe', INS_MOT_DE_PASSE) ; |
$this->addElement ('password', 'mot_de_passe_repete', INS_REPETE_MOT_DE_PASSE) ; |
$this->addRule ('mot_de_passe', INS_MOT_DE_PASSE_REQUIS, 'required', '', 'client') ; |
$this->addRule ('mot_de_passe_repete', INS_MOT_DE_PASSE_REQUIS, 'required', '', 'client') ; |
$this->addRule (array ('mot_de_passe', 'mot_de_passe_repete'), INS_MOTS_DE_PASSE_DIFFERENTS, 'compare', '', 'client') ; |
$nom_prenom[] = & HTML_QuickForm::createElement ('text', 'nom', INS_NOM) ; |
$nom_prenom[] = & HTML_QuickForm::createElement ('text', 'prenom', INS_PRENOM) ; |
$this->addGroup ($nom_prenom, 'groupe_nom', '', '', false) ; |
if (INS_UTILISE_WIKINI) { |
$this->addElement ('text', 'nom_wikini', INS_NOM_WIKI) ; |
$this->addRule ('nom_wikini', INS_MAUVAIS_NOM_WIKI, 'regex', '/(!?[A-Z][A-Za-z0-9]*[a-z0-9]+[A-Z][A-Za-z0-9]*)/', 'client') ; |
$this->registerRule('doublonwikini', 'callback', 'verif_doublonNomWiki'); |
$this->addRule('nom_wikini', INS_NOMWIKI_DOUBLE, 'doublonwikini', true); |
} |
$this->addElement ('text', 'adresse_1', INS_ADRESSE) ; |
$this->addElement ('text', 'adresse_2', INS_ADRESSE) ; |
$this->addElement ('text', 'region', INS_REGION) ; |
$cp_ville[] = & HTML_QuickForm::createElement ('text', 'cp', INS_CODE_POSTAL) ; |
$cp_ville[] = & HTML_QuickForm::createElement ('text', 'ville', INS_VILLE) ; |
$this->addGroup ($cp_ville, 'groupe_cp_ville', '', '', false) ; |
$this->addGroupRule ('groupe_cp_ville', INS_CODE_POSTAL_REQUIS, 'required', '', 1, 'client') ; |
// L'élément pays est construit à partir du tableau liste_pays |
$this->addElement ('select', 'pays', INS_PAYS, $liste_pays) ; |
$this->addElement ('text', 'site', INS_SITE_INTERNET) ; |
// on fait un groupe avec les boutons pour les mettres sur la même ligne |
$buttons[] = &HTML_QuickForm::createElement('button', 'annuler', INS_ANNULER, array ("onclick" => "javascript:document.location.href='".$url."'")); |
$buttons[] = &HTML_QuickForm::createElement('submit', 'valider', INS_VALIDER); |
$this->addGroup($buttons, null, null, ' '); |
$fieldset_fin = '</ul>'."\n". |
'</fieldset>'."\n"; |
$this->addElement('html', $fieldset_fin); |
$this->setRequiredNote(INS_CHAMPS_REQUIS) ; |
} // end of member function construitFormulaire |
/** Modifie le formulaire pour l'adapter au cas des structures |
* |
* |
* @return void |
* @access public |
*/ |
function formulaireStructure() |
{ |
$this->removeElement('groupe_nom') ; |
$this->removeElement('email', false) ; |
$mail = & HTML_QuickForm::createElement ('text', 'email', INS_MAIL_STRUCTURE) ; |
$this->insertElementBefore ($mail, 'mot_de_passe') ; |
$nom_structure = & HTML_QuickForm::createElement ('text', 'nom', INS_NOM_STRUCTURE) ; |
$this->insertElementBefore ($nom_structure, 'email') ; |
$this->removeElement ('site', false) ; |
$site_structure = & HTML_QuickForm::createElement ('text', 'site', INS_SITE_STRUCTURE) ; |
$this->insertElementBefore ($site_structure, 'pays') ; |
$this->addElement ('hidden', 'est_structure', 1) ; |
$sigle_structure = & HTML_QuickForm::createElement ('text', 'sigle_structure', INS_SIGLE_STRUCTURE) ; |
$this->insertElementBefore ($sigle_structure, 'nom') ; |
$this->addRule ('sigle_structure', INS_SIGLE_REQUIS, 'required', '', 'client') ; |
} |
/** |
* |
* |
* @return string |
* @access public |
*/ |
function toHTML( ) |
{ |
$res = HTML_QuickForm::toHTML() ; |
return $res ; |
} // end of member function toHTML |
} |
class ListeDePays extends PEAR{ |
var $_db ; |
/** Constructeur |
* Vérifie l'existance de la table gen_pays_traduction |
* |
* @param DB Un objet PEAR::DB |
* @return |
*/ |
function ListeDePays (&$objetDB) { |
$this->_db = $objetDB ; |
$requete = "show tables" ; |
$resultat = $objetDB->query ($requete) ; |
if (DB::isError ($resultat)) { |
die ("Echec de la requete : $requete<br />".$resultat->getMessage()) ; |
} |
while ($ligne = $resultat->fetchRow()) { |
if ($ligne[0] == 'gen_pays_traduction') { |
return ; |
} |
} |
return $this->raiseError ('La table gen_pays_traduction n\'est pas présente dans la base de donnée !') ; |
} |
/** Renvoie la liste des pays traduite |
* |
* @param string une chaine de type i18n ou une chaine code iso langue (fr_FR ou fr ou FR) |
* @return un tableau contenant en clé, le code iso du pays, en majuscule et en valeur le nom du pays traduit |
*/ |
function getListePays ($i18n) { |
if (strlen($i18n) == 2) { |
$i18n = strtolower($i18n)."-".strtoupper($i18n) ; |
} |
$requete = "select gpt_id_pays, gpt_nom_pays_traduit from gen_pays_traduction where gpt_id_i18n='".$i18n."'" ; |
$resultat = $this->_db->query ($requete) ; |
if (DB::isError ($resultat)) { |
die ("Echec de la requete : $requete<br />".$resultat->getMessage()) ; |
} |
if ($resultat->numRows() == 0) { |
return $this->raiseError('Le code fourni ne correspond à aucun pays ou n\'est pas dans la table!') ; |
} |
$retour = array() ; |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) { |
$retour[$ligne->gpt_id_pays] = $ligne->gpt_nom_pays_traduit ; |
} |
return $retour ; |
} |
} |
?> |
/trunk/client/annuaire/langues/ann_langue_en.inc.php |
---|
New file |
0,0 → 1,95 |
<?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: ann_langue_en.inc.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fichier de traduction en français de l'application inscription |
* |
* Fichier de traduction en français de l'application inscription |
* |
*@package vecam |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ $Date: 2005-01-03 17:27:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
define ("ANN_NOM", "Name :") ; |
define ("ANN_PRENOM", "First name") ; |
define ("ANN_PAYS", "Country:") ; |
define ("ANN_LANGUES_PARLES", "Languages spoken :") ; |
define ("ANN_EMAIL", "E-mail :") ; |
define ("ANN_MOT_DE_PASSE", "Password:") ; |
define ("ANN_REPETE_MOT_DE_PASSE", "Repeat the password :") ; |
define ("ANN_RETABLIR", "Restore") ; |
define ("ANN_VALIDER", "Validate") ; |
define ("ANN_MOTS_DE_PASSE_DIFFERENTS", "The two passwords are different !") ; |
define ("ANN_EMAIL_REQUIS", "You must enter your e-mail.") ; |
define ("ANN_MOT_DE_PASSE_REQUIS", "You must enter your password.") ; |
define ("ANN_MAIL_INCORRECT", "E-mail addresses must be in the following format, user@domain.ext") ; |
define ("ANN_NOTE_REQUIS", "Indicate the required fields") ; |
define ("ANN_MODIFIER_INSCRIPTION", "Modify your registration") ; |
define ("ANN_SUPPRIMER_INSCRIPTION", "Cancel your registration") ; |
define ("ANN_MESSAGE_BIENVENU", "You are registered at i-twinning ") ; |
define ("ANN_CLIQUEZ_LETTRE", "Click on a letter to see the members ") ; |
define ("ANN_LISTE_INSCRIT_LETTRE", "List of the newsletter's subscribers") ; |
define ("ANN_TITRE", "I-twinning repertory") ; |
define ("ANN_TEXTE_PERDU", "If you forgot your password, enter your e-mail address in the Login ". |
"field below and click on \Validate\ ") ; |
define ("ANN_CHECK_UNCHECK", "Tick the boxes to select your recipient or tick / untick all") ; |
define ("ANN_ENVOYER_MAIL", "Send an e-mail") ; |
define ("ANN_SUJET", "Subject") ; |
define ("ANN_MESSAGE", "Message") ; |
define ("ANN_ENVOYER", "Send") ; |
define ("ANN_CLIC_CONFIRMATION", "Click on OK to confirm") ; |
define ("ANN_PAS_D_INSCRIT", "No registered members") ; |
// ========================= Labels pour les mails ============================= |
define ("ANN_VERIF_MAIL_COCHE", "Please tick at least one recipient for your mail.") ; |
define ("ANN_VERIF_TITRE", "Your message must be composed of a title <i>et</i> and a content") ; |
define ("ANN_PIED_MESSAGE", "\n---------------------------------------------------------------------------". |
"\nThis message has been sent by". |
"\n(http://www.vecam.org) VECAM, ". |
"\nwhere you are currently registered.". |
"\nOther members may also have received this message.") ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:19:32 alex |
* version initiale |
* |
* Revision 1.1 2004/06/30 08:50:01 alex |
* traduction |
* |
* Revision 1.1 2004/06/18 08:45:45 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/client/annuaire/langues/ann_langue_pt.inc.php |
---|
New file |
0,0 → 1,98 |
<?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: ann_langue_pt.inc.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fichier de traduction en français de l'application inscription |
* |
* Fichier de traduction en français de l'application inscription |
* |
*@package vecam |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ $Date: 2005-01-03 17:27:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
define ("ANN_NOM", "Name :") ; |
define ("ANN_PRENOM", "First name") ; |
define ("ANN_PAYS", "Country:") ; |
define ("ANN_LANGUES_PARLES", "Languages spoken :") ; |
define ("ANN_EMAIL", "E-mail :") ; |
define ("ANN_MOT_DE_PASSE", "Password:") ; |
define ("ANN_REPETE_MOT_DE_PASSE", "Repeat the password :") ; |
define ("ANN_RETABLIR", "Restore") ; |
define ("ANN_VALIDER", "Validate") ; |
define ("ANN_MOTS_DE_PASSE_DIFFERENTS", "The two passwords are different !") ; |
define ("ANN_EMAIL_REQUIS", "You must enter your e-mail.") ; |
define ("ANN_MOT_DE_PASSE_REQUIS", "You must enter your password.") ; |
define ("ANN_MAIL_INCORRECT", "E-mail addresses must be in the following format, user@domain.ext") ; |
define ("ANN_NOTE_REQUIS", "Indicate the required fields") ; |
define ("ANN_MODIFIER_INSCRIPTION", "Modify your registration") ; |
define ("ANN_SUPPRIMER_INSCRIPTION", "Cancel your registration") ; |
define ("ANN_MESSAGE_BIENVENU", "You are registered at i-twinning ") ; |
define ("ANN_CLIQUEZ_LETTRE", "Click on a letter to see the members ") ; |
define ("ANN_LISTE_INSCRIT_LETTRE", "List of the newsletter's subscribers") ; |
define ("ANN_TITRE", "I-twinning repertory") ; |
define ("ANN_TEXTE_PERDU", "If you forgot your password, enter your e-mail address in the Login ". |
"field below and click on \Validate\ ") ; |
define ("ANN_CHECK_UNCHECK", "Tick the boxes to select your recipient or tick / untick all") ; |
define ("ANN_ENVOYER_MAIL", "Send an e-mail") ; |
define ("ANN_SUJET", "Subject") ; |
define ("ANN_MESSAGE", "Message") ; |
define ("ANN_ENVOYER", "Send") ; |
define ("ANN_CLIC_CONFIRMATION", "Click on OK to confirm") ; |
define ("ANN_PAS_D_INSCRIT", "No registered members") ; |
// ========================= Labels pour les mails ============================= |
define ("ANN_VERIF_MAIL_COCHE", "Please tick at least one recipient for your mail.") ; |
define ("ANN_VERIF_TITRE", "Your message must be composed of a title <i>et</i> and a content") ; |
define ("ANN_PIED_MESSAGE", "\n---------------------------------------------------------------------------". |
"\nThis message has been sent by". |
"\n(http://www.vecam.org) VECAM, ". |
"\nwhere you are currently registered.". |
"\nOther members may also have received this message.") ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:19:32 alex |
* version initiale |
* |
* Revision 1.1 2004/09/14 11:54:49 alex |
* version initiale |
* |
* Revision 1.1 2004/06/30 08:50:01 alex |
* traduction |
* |
* Revision 1.1 2004/06/18 08:45:45 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/client/annuaire/langues/ann_langue_es.inc.php |
---|
New file |
0,0 → 1,77 |
<?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: ann_langue_es.inc.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fichier de traduction en français de l'application inscription |
* |
* Fichier de traduction en français de l'application inscription |
* |
*@package vecam |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ $Date: 2005-01-03 17:27:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
define ("ANN_NOM", "pellido") ; |
define ("ANN_PRENOM", "Nombre") ; |
define ("ANN_PAYS", "Pais") ; |
define ("ANN_LANGUES_PARLES", "Idiomas hablados") ; |
define ("ANN_EMAIL", "Correo electronico") ; |
define ("ANN_MOT_DE_PASSE", "Contraseña") ; |
define ("ANN_REPETE_MOT_DE_PASSE", "Repetir la contraseñas") ; |
define ("ANN_RETABLIR", "Restablecer") ; |
define ("ANN_VALIDER", "Ingresar") ; |
define ("ANN_MOTS_DE_PASSE_DIFFERENTS", "Las contraseñas son diferentes!") ; |
define ("ANN_EMAIL_REQUIS", "Debe ingresar un correo electronico") ; |
define ("ANN_MOT_DE_PASSE_REQUIS", "Debe ingresar una contraseña.") ; |
define ("ANN_MAIL_INCORRECT", "El correo electronico debe tener una forma correcta, utilisador@domaine.ext") ; |
define ("ANN_NOTE_REQUIS", "Indique los espacios requeridos") ; |
define ("ANN_MODIFIER_INSCRIPTION", "Modificar su inscripcion") ; |
define ("ANN_SUPPRIMER_INSCRIPTION", "Cancelar su inscripcion") ; |
define ("ANN_MESSAGE_BIENVENU", "Esta inscrito en I-Enlace") ; |
define ("ANN_CLIQUEZ_LETTRE", "Haga clic en una letra para ver los miembros.") ; |
define ("ANN_LISTE_INSCRIT_LETTRE", "Lista de los inscritos en la carta") ; |
define ("ANN_TITRE", "Guia de I-Enlace") ; |
define ("ANN_TEXTE_PERDU", "Si ha perdido su contraseña, indique su correo electronico en el espaciologin y haga clic en Ingresar") ; |
define ("ANN_CHECK_UNCHECK", "Marcar en la casilla para seleccionar su destinatario o marcar/quitar todo") ; |
define ("ANN_ENVOYER_MAIL", "Enviar un correo electronico") ; |
define ("ANN_SUJET", "Objet") ; |
define ("ANN_MESSAGE", "Mensaje") ; |
define ("ANN_ENVOYER", "Enviar") ; |
define ("ANN_CLIC_CONFIRMATION", "Haga clic en OK para confirmar") ; |
define ("ANN_PAS_D_INSCRIT", "Ninguninscrito") ; |
//======================== labels pour les mails=========================== |
define ("ANN_VERIF_MAIL_COCHE", "Marque al menos un destinatario para su correo electronico") ; |
define ("ANN_VERIF_TITRE", "Su mensaje debe tener un titulo y un cuerpo") ; |
define ("ANN_PIED_MESSAGE", "\n---------------------------------------------------------------------------". |
"\nCe message vous est envoyé par l'intermédiaire du site Internet". |
"\n(http://www.vecam.org) de VECAM, ". |
"\nauquel vous êtes inscrit.". |
"\nD'autres inscrits au réseau peuvent avoir reçu ce message.". |
"\nNe répondez que si vous êtes concerné, ou si vous avez des". |
"\ninformations utiles à transmettre au demandeur." ) ; |
?> |
/trunk/client/annuaire/langues/ann_langue_fr.inc.php |
---|
New file |
0,0 → 1,92 |
<?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: ann_langue_fr.inc.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** |
* Fichier de traduction en français de l'application inscription |
* |
* Fichier de traduction en français de l'application inscription |
* |
*@package vecam |
//Auteur original : |
*@author Alexandre GRANIER <alexandre@tela-botanica.org> |
//Autres auteurs : |
*@author Aucun |
*@copyright Tela-Botanica 2000-2004 |
*@version $Revision: 1.1.1.1 $ $Date: 2005-01-03 17:27:49 $ |
// +------------------------------------------------------------------------------------------------------+ |
*/ |
define ("ANN_NOM", "Nom") ; |
define ("ANN_PRENOM", "Prénom") ; |
define ("ANN_PAYS", "Pays :") ; |
define ("ANN_LANGUES_PARLES", "Langues parlés :") ; |
define ("ANN_EMAIL", "E-mail :") ; |
define ("ANN_MOT_DE_PASSE", "Mot de passe :") ; |
define ("ANN_REPETE_MOT_DE_PASSE", "Répéter le mot de passe :") ; |
define ("ANN_RETABLIR", "Rétablir") ; |
define ("ANN_VALIDER", "Valider") ; |
define ("ANN_MOTS_DE_PASSE_DIFFERENTS", "Les mots de passe sont différents !") ; |
define ("ANN_EMAIL_REQUIS", "Vous devez saisir un email.") ; |
define ("ANN_MOT_DE_PASSE_REQUIS", "Vous devez saisir un mot de passe.") ; |
define ("ANN_MAIL_INCORRECT", "L'email doit avoir une forme correcte, utilisateur@domaine.ext") ; |
define ("ANN_NOTE_REQUIS", "Indique les champs requis") ; |
define ("ANN_MODIFIER_INSCRIPTION", "Modifier votre inscription") ; |
define ("ANN_SUPPRIMER_INSCRIPTION", "Supprimer votre inscription") ; |
define ("ANN_MESSAGE_BIENVENU", "Vous êtes inscrit à I-Jumelage") ; |
define ("ANN_CLIQUEZ_LETTRE", 'Cliquez sur une lettre pour voir les adhérents.') ; |
define ("ANN_LISTE_INSCRIT_LETTRE", "Liste des inscrits à la lettre") ; |
define ("ANN_TITRE", 'Annuaire de I-Jumelage') ; |
define ("ANN_TEXTE_PERDU", "Si vous avez perdu votre mot de passe, indiquer ". |
"votre adresse email dans le champs login ci-dessus et cliquez sur \"Valider\"") ; |
define ("ANN_CHECK_UNCHECK", "Cocher les cases pour sélectionner votre destinataire ou cocher / décocher tout") ; |
define ("ANN_ENVOYER_MAIL", "Envoyer un email") ; |
define ("ANN_SUJET", "Sujet") ; |
define ("ANN_MESSAGE", "Message") ; |
define ("ANN_ENVOYER", "Envoyer") ; |
define ("ANN_CLIC_CONFIRMATION", "Cliquez sur OK pour confirmer") ; |
define ("ANN_PAS_D_INSCRIT", "Pas d'inscrit") ; |
// ========================= Labels pour les mails ============================ |
define ("ANN_VERIF_MAIL_COCHE", "Veuillez cocher au moins un destinataire pour votre mail" ); |
define ("ANN_VERIF_TITRE", "Votre message doit comporter un titre <i>et</i> un corps") ; |
define ("ANN_PIED_MESSAGE", "\n---------------------------------------------------------------------------". |
"\nCe message vous est envoyé par l'intermédiaire du site Internet". |
"\n(http://www.vecam.org) de VECAM, ". |
"\nauquel vous êtes inscrit.". |
"\nD'autres inscrits au réseau peuvent avoir reçu ce message.". |
"\nNe répondez que si vous êtes concerné, ou si vous avez des". |
"\ninformations utiles à transmettre au demandeur." ) ; |
/* +--Fin du code ----------------------------------------------------------------------------------------+ |
* |
* $Log: not supported by cvs2svn $ |
* Revision 1.1 2005/01/03 17:19:32 alex |
* version initiale |
* |
* Revision 1.1 2004/06/18 08:54:55 alex |
* version initiale |
* |
* |
* +-- Fin du code ----------------------------------------------------------------------------------------+ |
*/ |
?> |
/trunk/client/annuaire/admin_annu.php |
---|
New file |
0,0 → 1,637 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | admin_annu.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2002 | |
// +--------------------------------------------------------------------------------+ |
// | Administration des inscrits à un annuaire de type annuaire_tela | |
// | de Gsite, | |
// | Sont également mises en jeux les tables gen_COUNTRY, gen_FRENCH_DPT, | |
// | LABELS | |
// | Plus spécifique la fonction cotisation($id) en bas permet de | |
// | gérer les cotisations versées par les inscrits, avec la table | |
// | annuaire_COTISATION | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: admin_annu.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
include "php/lib/pack.lib.gen.php" ; |
global $HTTP_HOST ; |
define ("URL_RECU", "http://www.tela-botanica.org/modules/client/annuaire/voir_recu_pdf.php") ; |
include_once ("php/auth_object_login.php") ; |
include_once ("php/auth.php") ; |
include_once ("HTML/Table.php") ; |
class auth_annu extends authLoginClass { |
//============================================================================ |
// ENTRY dumpLoginForm ($errorMsg = '') |
// |
// Build the login form, with an error message. |
// This method calls the overloadable methods buildLoginLabel, |
// buildLoginLabel, buildMessage and buildErrorMessage (with $errorMsg as |
// argument). |
// Note that $errorMsg is supposed to be an HTML string. |
//============================================================================ |
function dumpLoginForm ($errorMsg = '') { |
global $GS_GLOBAL, $u_id ; |
// l'url de la page en cours |
$url = "document.php". |
"?project=".$GS_GLOBAL['project']. |
"&locale=".$GS_GLOBAL['locale']. |
"&doc=".$GS_GLOBAL['document_row']->D_NAME. |
"&page=".$GS_GLOBAL['current_page_ndx']; |
$prjLabel = "Administration de l'annuaire" ; |
$loginLabel = $this->buildLoginLabel (); |
$pwdLabel = $this->buildPasswordLabel (); |
$outputText = ''; |
//-------------------------------------------------------------------------- |
// Spacing. |
$outputText .= "\n".' <TR>'; |
$outputText .= "\n".' <TD><IMG src="Local/vide.gif" alt="" width="1" height="10"></TD>'; |
$outputText .= "\n".' </TR>'; |
//-------------------------------------------------------------------------- |
// Message ? |
$outputText .= $this->buildMessage (); |
//-------------------------------------------------------------------------- |
// The form itself. |
$outputText .= "<tr class=\"titlePage\"><td>Administration de l'annuaire de Tela Botanica</td></tr>\n" ; |
$outputText .= "<tr><td> </td></tr>\n" ; |
$outputText .= "<tr class=\"insTitle1\"><td>Identifiez-vous</td></tr>" ; |
$outputText .= "<tr class=\"texte_tb\"><td>Cette fonction est réservée aux administrateurs de Tela Botanica. Elle permet de visualiser |
l'ensemble des adhérents et de faire des ajouts, suppression, modifications. :" ; |
$outputText .= "<tr align=\"center\"><td>" ; |
$outputText .= "</td></tr>" ; |
$outputText .= "<tr><td> </td></tr>\n" ; |
$outputText .= "\n".' <TR>'; |
$outputText .= "\n".' <TD>'; |
$outputText .= "\n".' <FORM name="loginform" action="'.$this->scriptURL_.'" method="post">'; |
$outputText .= "\n".' <TABLE border="0" cellpadding="0" cellspacing="5" summary="" align="center">'; |
$outputText .= "\n".' <TR>'; |
$outputText .= "\n".' <TD class="insLabel">'.$loginLabel.' : </TD>'; |
$outputText .= "\n".' <TD class="authFormInput"><INPUT'; |
$outputText .= "\n".' tabindex="1" class="insInputForm" type="text" name="auth_login" size="32" maxlength="64"></TD>'; |
$outputText .= "\n".' <TD rowspan="2"><IMG src="Local/vide.gif" alt="" width="20" height="1"></TD>'; |
$outputText .= "\n".' <TD rowspan="2"><INPUT class="text" tabindex="3" type="submit" value="Valider"></TD>'; |
$outputText .= "\n".' </TR>'; |
$outputText .= "\n"; |
$outputText .= "\n".' <TR>'; |
$outputText .= "\n".' <TD class="insLabel">'.$pwdLabel.' : </TD>'; |
$outputText .= "\n".' <TD class="authFormInput"><INPUT'; |
$outputText .= "\n".' tabindex="2" class="insInputForm" type="password" name="auth_pwd" size="20" maxlength="32"></TD>'; |
$outputText .= "\n".' <TD class="authFormInput">'; |
$outputText .= "\n".' </TD>'; |
$outputText .= "\n".' </TR>'; |
$outputText .= $this->baseHidden (); |
$outputText .= "<input type=\"hidden\" name=\"u_id\" value=\"$u_id\">\n" ; |
$outputText .= "\n".' </TABLE>'; |
$outputText .= "\n".' </FORM>'; |
$outputText .= "\n".' </TD>'; |
$outputText .= "\n".' </TR>'; |
//-------------------------------------------------------------------------- |
// Error message ? |
$outputText .= $this->buildErrorMessage ($errorMsg); |
//-------------------------------------------------------------------------- |
// Spacing. |
$outputText .= "\n".' <TR>'; |
$outputText .= "\n".' <TD><IMG src="Local/vide.gif" alt="" width="1" height="10"></TD>'; |
$outputText .= "\n".' </TR>'; |
return $outputText; |
} |
} |
// admin_annu est une application cliente de gsite elle commence donc |
// dans une fonction putFrame() |
function putFrame() |
{ |
global $u_id, $cotisation_id ; |
global $link ; |
global $GS_GLOBAL ; |
global $doc ; |
global $action ; |
$loginObj = new auth_annu (); |
$loginObj->args_['auth_field_login'] = 'U_MAIL'; |
if (!gs_manageAuthWithObject ($GS_GLOBAL['mysql_db'], $GS_GLOBAL['link'], $loginObj, &$outputText)) { |
$res = $outputText ; |
} else { |
global $u_id ; |
global $link ; |
global $GS_GLOBAL ; |
global $doc ; |
global $action ; |
if (empty($action)) $action = false ; |
if (empty($GS_GLOBAL['doc'])) $GS_GLOBAL['doc'] = $doc ; |
if (empty($GS_GLOBAL['page'])) $GS_GLOBAL['page'] = "" ; |
$url = "document.php?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&set=" ; |
$url .= $GS_GLOBAL['set']."&doc=".$GS_GLOBAL['doc']."&page=".$GS_GLOBAL['page']."&u_id=$u_id" ; |
// mise à jour si il y lieu |
if ($action == "up") { |
upSQL() ; |
} |
// Requete de pour récupérer toutes les infos d'un usager |
$query = "select annuaire_tela.*,annuaire_LABEL_ACT.*,annuaire_LABEL_ASS.*,gen_COUNTRY.GC_NAME" ; |
$query .= ", annuaire_LABEL_NIV.*, annuaire_LABEL_STATUT.*" ; |
$query .= " from annuaire_tela,gen_COUNTRY,gen_FRENCH_DPT," ; |
$query .= " annuaire_LABEL_ACT,annuaire_LABEL_ASS, annuaire_LABEL_NIV, annuaire_LABEL_STATUT" ; |
$query .= " where U_ID=$u_id" ; |
$query .= " and annuaire_tela.U_FRENCH_DPT=gen_FRENCH_DPT.GFD_ID" ; |
$query .= " and annuaire_tela.U_COUNTRY=gen_COUNTRY.GC_ID" ; |
$query .= " and annuaire_tela.U_ACT=annuaire_LABEL_ACT.ID_LABEL_ACT" ; |
$query .= " and annuaire_tela.U_ASS=annuaire_LABEL_ASS.ID_LABEL_ASS" ; |
$query .= " and annuaire_tela.U_NIV=annuaire_LABEL_NIV.ID_LABEL_NIV" ; |
$query .= " and annuaire_tela.U_SHOW=annuaire_LABEL_STATUT.ID_LABEL_STATUT" ; |
$result = mysql_query($query) or die("Echec de la requete sur annu_USERS:<br>".mysql_error($GS_GLOBAL['link'])) ; |
$row = mysql_fetch_object($result) ; |
$res = "<tr class=\"titlePage\"><td>Edition d'un adhérent : $row->U_NAME $row->U_SURNAME</td></tr>\n" ; |
$res .= "<tr><td> </td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Nom : ", "U_NAME", $row->U_NAME)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Prénom : ", "U_SURNAME", $row->U_SURNAME)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Adresse mail : ", "U_MAIL", $row->U_MAIL)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Date d'inscription : ", "U_DATE", $row->U_DATE)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Adresse 1 : ", "U_ADDR1", $row->U_ADDR1)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Adresse 2 : ", "U_ADDR2", $row->U_ADDR2)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Région : ", "U_STATE", $row->U_STATE)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Code postal : ", "U_ZIP_CODE", $row->U_ZIP_CODE)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Ville : ", "U_CITY", $row->U_CITY)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Pays : ", "U_COUNTRY", $row->U_COUNTRY)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Site web personnel : ", "U_WEB", $row->U_WEB)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Organisme : ", "U_TITLE", $row->U_TITLE)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Fonction : ", "U_FONCTION", $row->U_FONCTION)."</td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Niveau en botanique : ", "LABEL_NIV", $row->LABEL_NIV)."<td></td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Activité : ", "LABEL_ACT", $row->LABEL_ACT)."<td></td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Secteur associatif : ", "LABEL_ASS", $row->LABEL_ASS)."<td></td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Spécialité : ", "U_SPE", $row->U_SPE)."<td></td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Spécialité géographique : ", "U_GEO", $row->U_GEO)."<td></td></tr>\n" ; |
$res .= "<tr class=\"texte_tb\"><td>".form("Statut : ", "LABEL_STATUT", $row->LABEL_STATUT)."<td></td></tr>\n" ; |
if (isset($cotisation_id) && $cotisation_id != "") { |
include_once "modules/client/annuaire/recu_pdf_corps.php" ; |
// buffer est une propriété de la classe FPDF qui contient les données au format PDF. |
// habituellement on ne l'utilise pas, on appelle $pdf->Output() qui envoie les |
// entete HTTP du document généré |
$pdf->Close() ; |
$buf = $pdf->buffer; |
// Inclusion des bibliothèques PEAR |
include_once ('Mail.php'); |
include_once ('Mail/mime.php'); |
$file = 'Recu_Fiscal_Tela_Botanica.pdf'; |
$crlf = "\r\n"; |
$hdrs = array( |
'From' => 'accueil@tela-botanica.org', |
'Subject' => 'Reçu pour don à Tela Botanica' |
); |
$mime = new Mail_mime($crlf); |
$text = "Bonjour !\n\n". |
"Le Réseau Tela Botanica vous remercie du soutien financier que vous lui avez apporté. Votre contribution permettra au réseau :\n\n". |
"- de continuer à encourager et accompagner des projets botaniques,\n". |
"- de maintenir et d'améliorer nos services Internet dédiés à la botanique.\n\n". |
"Vous trouverez en pièce jointe à ce message un document PDF contenant le reçu fiscal à imprimer". |
" et à joindre à votre déclaration d'impôts. Si vous n'arrivez pas à imprimer ce document, veuillez". |
" nous le signaler en répondant à ce mail et en indiquant votre nom et votre adresse postale. Nous vous". |
" ferons parvenir le reçu imprimé à cette adresse.\n\n". |
"Rappel : Votre contribution financière ne constitue pas une adhésion à l'Association Tela Botanica mais ". |
"bien un soutien aux actions menées par le Réseau Tela Botanica.\n\n". |
"Si ce n'est déjà fait, n'oubliez pas de vous inscrire au Réseau sur le site Internet, à l'adresse : ". |
"http://www.tela-botanica.org (menu « Inscription», onglet « Inscription»), afin que vous puissiez :\n\n". |
"- consulter l'annuaire des personnes inscrites au Réseau ;\n- localiser les membres du Réseau dans tous". |
" les pays;\n- accédez à certaines données diffusées sur le site ;\n- vous inscrire à des projets ". |
"botaniques ;\n- être informé personnellement des actualités du Réseau.\n\n". |
"Bien cordialement,\n\n". |
"Tela Botanica\nLe Réseau des Botanistes Francophones\n163, rue A. Broussonnet\n34090 Montpellier\n". |
"Tél. : 04-67-52-41-22\naccueil@tela-botanica.org\nhttp://www.tela-botanica.org\n" ; |
$mime->setTXTBody($text); |
// On attache le document PDF grace à $buf, et en indiquant son type MIME |
$mime->addAttachment($buf, 'application/pdf', $file, false) ; |
$body = $mime->get(); |
$hdrs = $mime->headers($hdrs); |
$mail =& Mail::factory('mail'); |
$mail->send($ligne->U_MAIL, $hdrs, $body); |
// On insere le numéro du reçu dans la table annuaire_COTISATION |
@mysql_query("update annuaire_COTISATION set IC_RECU=$num_recu, IC_DATE_ENVOIE_RECU=NOW() where IC_ID=$cotisation_id") ; |
// On incrémente le compteur de mail de 1 |
if (!$deja_envoye) { |
$num_recu++ ; |
mysql_query("update COMPTEUR_COTISATION set COMPTEUR=$num_recu ") ; |
} |
$res .= "<tr><td> </td></tr>\n" ; |
$res .= "<tr class=\"titlePage\"><td>Le reçu a été envoyé</td></tr>\n" ; |
} |
$res .= cotisation($u_id) ; |
$res .= suppression($u_id) ; |
} |
return $res ; |
} |
// form construit soit un formulaire de type <input type="text" ...> et |
// de nom $field_ et place un $label devant |
// soit construit un lien vers un formulaire à partir du champs $field_ |
function form($label, $field_, $value) |
{ |
global $u_id, $GS_GLOBAL, $field ; |
$url = "document.php?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&set=" ; |
$url .= $GS_GLOBAL['set']."&doc=".$GS_GLOBAL['doc']."&page=".$GS_GLOBAL['page']."&u_id=$u_id" ; |
if ($field != $field_) { |
$res = "<b>$label</b>" ; |
$res .= "<a href=\"$url&field=$field_\">" ; |
if ($field_ == 'LABEL_NIV' || $field_ == 'LABEL_ACT' || $field_== 'LABEL_ASS') { |
$res .= $value ? $value : "(vide)"; |
} else if ($field_ == "U_COT") { |
if ($value == 0) { |
$res .= "non" ; |
} else { |
$res .= "oui" ; |
} |
} else { |
$res .= $value ? $value : "(vide)"; |
} |
$res .= "</a>\n" ; |
} |
if ($field == $field_) { |
$res = "\n<form action=\"$url&u_id=$u_id&action=up&field_=$field_\" method=\"post\">" ; |
$res .= "<b>$label</b>\n" ; |
switch ($field_) { |
case "U_COUNTRY" : |
$select_country = new form($GS_GLOBAL['link']) ; |
$res .= ereg_replace("gen_COUNTRY", "U_COUNTRY", $select_country->selectFromTable("gen_COUNTRY", $value, "GC_ID", "GC_NAME")) ; |
unset($select_country) ; |
break ; |
case "LABEL_NIV" : |
$res .= getFormInsInfo($field_, $value) ; |
break ; |
case "LABEL_ASS" : |
$res .= getFormInsInfo($field_, $value) ; |
break ; |
case "LABEL_ACT" : |
$res .= getFormInsInfo($field_, $value) ; |
break ; |
case "LABEL_STATUT" : |
$res .= getFormInsInfo($field_, $value) ; |
break ; |
case "U_COT" : |
$res .= "<select class=\"insInputForm\" name=\"II_COT\">\n" ; |
if ($value == 0) { |
$check0 = " selected" ; |
$check1 = "" ; |
} else { |
$check1 = " selected" ; |
$check0 = "" ; |
} |
$res .= "<option value=\"0\"$check0>non</option>\n" ; |
$res .= "<option value=\"1\"$check1>oui</option>\n" ; |
$res .= "</select>\n" ; |
break ; |
default : |
$res .= "<input type=\"text\" size=\"40\" name=\"$field_\" value=\"$value\">\n" ; |
} |
$res .= "<input type=\"submit\" value=\"valider\" class=\"texte_tb\">\n" ; |
$res .= "</form>" ; |
} |
return $res ; |
} |
// upSQL met à jour la table annuaire_tela |
function upSQL() |
{ |
global $field_ ; |
global $u_id ; |
global $HTTP_POST_VARS ; |
switch ($field_) { |
case "LABEL_STATUT" : $field_ = "U_SHOW" ; |
$id_field = "ID_LABEL_STATUT"; |
break ; |
case "LABEL_NIV" : $field_ = "U_NIV" ; |
$id_field = "ID_LABEL_NIV"; |
break ; |
case "LABEL_ACT" : $field_ = "U_ACT" ; |
$id_field = "ID_LABEL_ACT"; |
break ; |
case "LABEL_ASS" : $field_ = "U_ACT" ; |
$id_field = "ID_LABEL_ASS"; |
break ; |
default :$id_field = $field_ ; |
} |
// Recherche de l'ancien mail |
$req_am = "select U_MAIL from annuaire_tela where U_ID = $u_id" ; |
$res_am = mysql_query ($req_am) or die ("Echec ".mysql_error()) ; |
$ligne_am = mysql_fetch_object ($res_am) ; |
$ancien_mail = $ligne_am->U_MAIL ; |
$query = "update annuaire_tela set $field_=\"".$HTTP_POST_VARS[$id_field]."\" where U_ID = $u_id" ; |
mysql_query($query) or die ("<br>Echec de la requete de mise à jour<br>\n") ; |
// Traitement du département |
if ($field_ == "U_ZIP_CODE") { |
if (preg_match("/^97|98[0-9]*/", $HTTP_POST_VARS['U_ZIP_CODE'])) { |
$n_dpt = substr($HTTP_POST_VARS['U_ZIP_CODE'], 0, 3) ; |
} else { |
$n_dpt = substr($HTTP_POST_VARS['U_ZIP_CODE'], 0, 2) ; |
} |
mysql_query ("update annuaire_tela set U_FRENCH_DPT='$n_dpt' where U_ID='$u_id'") ; |
} |
// Traitement de l'adresse mail |
if ($field_ == "U_MAIL") { |
$requete = "update ins_STATS set IS_MAIL=\"".$HTTP_POST_VARS['U_MAIL']."\" where IS_MAIL=\"$ancien_mail\"" ; |
mysql_query ($requete) ; |
} |
} |
function getFormInsInfo($field, $value) |
{ |
global $GS_GLOBAL ; |
$query = "select * from annuaire_$field" ; |
$id_field = "ID_$field" ; |
$result = mysql_query($query) or die ("Echec de la requete sur ID_$field<br>".mysql_error()) ; |
$res = "<select name=\"$id_field\" class=\"insInputForm\">\n" ; |
$i = 0 ; |
while ($row = mysql_fetch_object($result)) { |
$res .= "<option value=\"".$row->$id_field."\"" ; |
if ($value == $row->$field) $res .= " selected"; |
$res .= ">" ; |
$res .= $row->$field ; |
$res .= "</option>\n" ; |
$i++ ; |
} |
$res .= "</select>\n" ; |
return $res ; |
} |
// Fonction pour gérer les cotisations d'un inscrit, en |
// fonction de son id ($u_id) |
function cotisation($u_id) |
{ |
global $GS_GLOBAL, $action, $IC_MONTANT, $IC_DATE, $id_cot, $IC_MC_ID ; |
// un peu de javascript pour la confirmation en cas de destruction |
$outputText = "function confirmLink(theLink, theSqlQuery) |
{ |
var is_confirmed = confirm(theSqlQuery); |
return is_confirmed; |
} " ; |
// fonction gsite pour inclure la fonction Javascript |
// au code html |
js_register("confirmLink", $outputText) ; |
$url = "document.php?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&set=" ; |
$url .= $GS_GLOBAL['set']."&doc=".$GS_GLOBAL['doc']."&page=".$GS_GLOBAL['page']."&u_id=$u_id" ; |
// Ce qui suit sont le traitement des 3 actions ajouter, modifier, supprimer |
// qui agissent sur la table annuaire_COTISATION |
// l'action 'cu' consiste en l'insertion d'une ligne dans la table annuaire_COTISATION |
if ($action == "cu") { |
$date = preg_replace("/([0-9]+)-([0-9]+)-([0-9]+)/", "\\3\\2\\1", $IC_DATE) ; |
$query = "insert into annuaire_COTISATION values (\"\", $IC_MC_ID, $u_id, UNIX_TIMESTAMP($date),\"$IC_MONTANT\", 0, \"0000-00-00\")" ; |
mysql_query ($query) or die ("Echec de la requete d'insertion dans annuaire_COTISATION<br>$query<br>".mysql_error()) ; |
mysql_query("update annuaire_tela set U_COT=1 where U_ID=$u_id") ; |
} |
// l'action 'mu' permet de mettre à jour une ligne dans annuaire_COTISATION |
if ($action == "mu") { |
$date = preg_replace("/([0-9]+)-([0-9]+)-([0-9]+)/", "\\3\\2\\1", $IC_DATE) ; |
$query = "update annuaire_COTISATION set IC_DATE=UNIX_TIMESTAMP($date), IC_MONTANT=\"$IC_MONTANT\", |
IC_MC_ID=$IC_MC_ID where IC_ID=$id_cot" ; |
mysql_query ($query) or die ("Echec de la requete d'insertion dans annuaire_COTISATION<br>$query<br>".mysql_error()) ; |
} |
// l'action 'rm' retire une ligne de la table annuaire_COTISATION |
if ($action == "rm") { |
$query = "delete from annuaire_COTISATION where IC_ID=$id_cot" ; |
mysql_query ($query) or die ("Echec de la requete de suppression dans annuaire_COTISATION") ; |
mysql_query("update annuaire_tela set U_COT=0 where U_ID=$u_id") ; |
} |
// Quoi qu'il arrive, on récupère les informations concernant |
// les cotisations d'un inscrit et on les affiche sous forme de |
// table HTML |
$query = "select * from annuaire_COTISATION, MODE_COTISATION where IC_ANNU_ID=$u_id |
and IC_MC_ID=MC_ID" ; |
$result = mysql_query($query) or die ("Echec de la requete sur annuaire_COTISATION") ; |
$res = "<tr><td> </td></tr>\n" ; |
$res .= "<tr class=\"insTitle1\"><td><b>Etat des cotisations : </b></td></tr>" ; |
// formatage de la date |
$date = date("d-m-Y") ; |
// l'action 'sc' correspond à l'édition d'une ligne de la table |
// annuaire_COTISATION. Si elle est présente on affiche un formulaire |
// de modification |
if ($action == "sc") { |
$res .= "<tr class=\"texte_tb\"><td><form action=\"$url&action=cu\" method=\"post\"><b>Date : </b>" ; |
$res .= "<input type=\"text\" size=\"9\" class=\"insInputForm\" name=\"IC_DATE\" value=\""; |
$res .= $date ; |
$res .= "\">\n" ; |
$res .= "<b>Montant : </b><input type=\"text\" class=\"insInputForm\" size=\"5\" name=\"IC_MONTANT\" value=\"30\"> €\n" ; |
$res .= mode_paiement(0) ; |
$res .= "<input type=\"submit\" value=\"Valider\" class=\"texte_tb\">\n" ; |
$res .= "<input type=\"button\" value=\"Annuler\" class=\"texte_tb\" onclick=\"javascript:window.location.href='$url';\"></form>\n" ; |
$res .= "</td></tr>\n" ; |
// si l'action 'sc' n'est pas active on affiche toutes les lignes |
// de cotisation de l'inscrit |
} else { |
if (mysql_num_rows($result) != 0) { |
$res .= "<tr class=\"texte_tb\"><td>" ; |
$table = new HTML_Table(array("width" => "100%", "class" => "texte_tb2")) ; |
$table->addRow(array("Date", "Montant", "Mode", "modifier", "supprimer", "Voir le reçu", "Envoyer le reçu", |
"Date d'envoie du reçu"), |
array("class" => "insTitle1")) ; |
while ($row = mysql_fetch_object($result)) { |
// Le reçu a t il été envoyé ? |
if ($row->IC_RECU != 0) { |
$message_envoye = $row->IC_DATE_ENVOIE_RECU ; ; |
} else { |
$message_envoye = "Reçu non envoyé"; |
} |
if ($action != "mc" || $id_cot != $row->IC_ID) { |
$table->addRow(array (date ("j m Y", $row->IC_DATE), $row->IC_MONTANT." <b>€</b>", $row->MC_LABEL, |
"<a href=\"$url&action=mc&id_cot=$row->IC_ID\">modifier</a>", |
"<a href=\"$url&action=rm&id_cot=$row->IC_ID\"". |
" onclick=\"javascript:return confirmLink(this, 'êtes-vous". |
" sûr de vouloir supprimer cette entrée');\">supprimer</a>", |
"<a href=\"".URL_RECU."?cotisation_id=$row->IC_ID\">Voir le reçu</a>", |
"<a href=\"$url&cotisation_id=$row->IC_ID\">Envoyer le reçu</a>", |
$message_envoye)) ; |
} else { |
// Recherche du mode de paiement |
$table->addRow(array("<form action=\"$url&action=mu&id_cot=$row->IC_ID\" method=\"post\">\n". |
"<input type=\"text\" size=\"9\" class=\"insInputForm\" name=\"IC_DATE\" value=\"".date ("j-m-Y", $row->IC_DATE)."\">", |
"<input type=\"text\" size=\"5\" class=\"insInputForm\" name=\"IC_MONTANT\" value=\"$row->IC_MONTANT\"><b>€</b>", |
mode_paiement($row->IC_MC_ID), |
"<input type=\"submit\" class=\"texte_tb\" value=\"valider\">". |
"<input type=\"button\" value=\"Annuler\" class=\"texte_tb\" onclick=\"javascript:window.location.href='$url';\"></form>", |
" ")) ; |
} |
} |
$table->altRowAttributes(1, array("class" => "texte_tb2"), array("class" => "text2")) ; |
$res .= $table->toHTML()."</td></tr>\n" ; |
unset($table) ; |
} else { |
$res .= "<tr class=\"texte_tb\"><td>non cotisant</td></tr>\n" ; |
} |
$res .= "<tr><td> </td></tr>\n" ; |
$res .= "<tr><td><input type=\"button\" class=\"texte_tb\" " ; |
$res .= "value=\"Saisir une cotisation\" onclick=\"javascript:window.location.href='$url&action=sc';\"></td></tr>\n" ; |
} |
return $res ; |
} |
function suppression($u_id) { |
global $GS_GLOBAL, $action ; |
// un peu de javascript pour la confirmation en cas de destruction |
$outputText = "function confirmLink(theLink, theSqlQuery) |
{ |
var is_confirmed = confirm(theSqlQuery); |
return is_confirmed; |
} " ; |
// fonction gsite pour inclure la fonction Javascript |
// au code html |
js_register("confirmLink", $outputText) ; |
$url = "document.php?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&set=" ; |
$url .= $GS_GLOBAL['set']."&doc=".$GS_GLOBAL['doc']."&page=".$GS_GLOBAL['page']."&u_id=$u_id" ; |
$res = "<tr><td> </td></tr>\n" ; |
$res .= "<tr class=\"insTitle1\"><td>Supprimer l'inscription</td></tr>\n" ; |
$res .= "<tr><td> </td></tr>\n" ; |
$res .="<tr><td><form action=\"$url&action=suppr_adh\" method=\"post\">\n" ; |
$res .= "<input type=\"submit\" class=\"texte_tb\" value=\"Supprimer\" " ; |
$res .= "onclick=\"javascript:return confirmLink(this, 'êtes-vous sûr de vouloir supprimer cet adhérent');\">\n" ; |
$res .= "</form></td></tr>\n" ; |
if ($action=="suppr_adh") { |
$queryLogin = "select U_MAIL from annuaire_tela where U_ID=$u_id" ; |
$resultLogin = mysql_query($queryLogin) or die ("Echec de la requete sur annu_USERS"); |
$rowLogin = mysql_fetch_object($resultLogin) ; |
$mail = $rowLogin->U_MAIL ; |
mysql_free_result($resultLogin) ; |
// vérifications |
// 1. annu_ADMIN |
$q_annu_ADMIN = "select AA_ID from annu_ADMIN where AA_ID=$u_id" ; |
$r_annu_ADMIN = mysql_query($q_annu_ADMIN) or die ("Echec ..." ); |
if (mysql_num_rows($r_annu_ADMIN) != 0) { |
$res .= "Une référence dans annu_ADMIN" ; |
} |
// 2. |
// suppression |
$query = "delete from annuaire_tela where U_ID=$u_id" ; |
} |
return $res ; |
} |
/** function mode_paiement () Produit un champs select avec le mode de paiement |
* |
* |
* @param integer mode de paiement par defaut |
* @return string HTML |
*/ |
function mode_paiement ($defaut) { |
$res = "<select name=\"IC_MC_ID\" class=\"insInputForm\">\n" ; |
$req_mode = "select * from MODE_COTISATION" ; |
$res_mode = mysql_query($req_mode) or die ($req_mode."<br>".mysql_error()) ; |
while ($ligne_mode = mysql_fetch_object($res_mode)) { |
$res .= "<option value=\"$ligne_mode->MC_ID\"" ; |
if ($ligne_mode ->MC_ID == $defaut) $res .= " selected" ; |
$res .= ">$ligne_mode->MC_LABEL</option>\n" ; |
} |
$res .= "</select>\n" ; |
return $res ; |
} |
?> |
/trunk/client/annuaire/signature_Daniel.png |
---|
New file |
0,0 → 1,12 |
PNG |
+IHDR P $ ;É⦠bKGD ÿÌ¿ pHYs ÒÝ~ü tIMEÓ Ä* IDATxmL[UÇÏí |
+ë}AÊ-¬ Q¶ádi©ÂÌØÖm&Ff²S£¾9hp¾|?L§¦n%MöÞ,¬ K{)÷¶r»®÷z{éËiïé¸Oçþóüç9çÜç`<ø*ó~§%·ØÿÈÜDµûVluh (ç%tRÙa0¨dîákEw*;ZjMJ`þlW^¶c/å)x(.ã×æ8fü·¥W°ß<´³ÒhÒ+¢Wï¾c |
+êÔÀôÝly;»W Äf¼þ °4tæõiÜ·~½ßïèM·¡¸vÊsAÚK=pó)Â2\.{7Ul"0æ kHÛ!ô.ÞÉ`m |
+$«ÀàÏ=õ <õ×l¢¾ñ¤Qxé]EM96Ú÷ÆìâÁÖ´°÷J¼?=Ü Ñ$ªºk7ItÈà¡,¢ç |
+ÒÇ.´¯J(UÈzeß* |
+Öyä(-ù PòÕC¤òCKBEH2KMÊäyÀÄïÇÉ %yÀ«äBÈÛÃðfd6(ñ_OÈ%Ôü |
+ 9 IEND®B` |
\ No newline at end of file |
/trunk/client/annuaire/annuaire_moteur_fonction.php |
---|
New file |
0,0 → 1,392 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | annuaire_moteur_fonction.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2000 - 2003 Tela Botanica | |
// +--------------------------------------------------------------------------------+ |
// | Les fonctions de annuaire_moteur.php | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: annuaire_moteur_fonction.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
/** function mkengine () |
* |
* |
* |
* @return |
*/ |
function mkengine() |
{ |
global $GS_GLOBAL; |
global $label_bbota; |
global $nbr_total; |
global $bouton, $HTTP_POST_VARS ; |
$mon_frag = new fragmenteur_session() ; |
$mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "cotisant", "pays", "sort", "T_REPONSE", "lettre","statut") ; |
// Deux cas , soit on a cliqué sur rechercher, soit on a cliqué sur un lien |
foreach ($mes_vars as $key=>$value) { |
if (!$bouton) { // on a cliqué sur un lien |
if (empty($HTTP_POST_VARS[$value])) { |
$$value = $mon_frag->getVariable($value); |
} |
} else { |
// Si on clique sur le bouton rechercher |
if (empty ($HTTP_POST_VARS[$value])) { |
$$value = "" ; |
} else { |
$$value = $HTTP_POST_VARS[$value] ; |
} |
} |
} |
// Comptage du nombre total de données dans la table (hors CACHER = 1) |
$query = "select count(*) as CPT from ".AM_ANNUAIRE; |
$result = mysql_query($query) or die("<B>Erreur !</B> $query a échoué..."); |
if (mysql_num_rows($result) == 1) |
{ |
$tmp_nb = mysql_fetch_object($result); |
$nbr_total = $tmp_nb->CPT; |
if ($nbr_total > 0) $chaine = "parmi $nbr_total données"; |
else die("<B>Erreur</B> lors du comptage des structures ($nbr_total trouvées) : $query"); |
} |
else die("<B>Erreur</B> lors du comptage des structures : $query"); |
mysql_free_result($result); |
// fin comptage |
$ret = ""; |
// construction du moteur de str |
$ret .= "<form action=\"".AM_URL_DOCUMENT."\" method=\"post\">\n"; |
$ret .= "<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" summary=\"\">\n"; |
$ret .= "<tr class=\"titlePage\"><td colspan=\"2\">".AM_L_TITRE."</td></tr>\n" ; |
$ret .= presa_mk_blkline(1); |
$ret .= "<tr class=\"insTitle1\"><td colspan=\"2\">".AM_L_TITRE." $chaine :</td></tr>\n" ; |
$ret .= presa_mk_blkline(1); |
// ligne de recherche |
$ret .= "<tr><td colspan=\"2\">\n"; |
$ret .= "<table border=\"0\"><tr>\n" ; |
$ret .= "<td class=\"insLabel\">".AM_L_RECHERCHER." :\n</td>\n<td>"; |
$ret .= form_mk_chaineI(stripslashes($recherche), "recherche")." "; |
$ret .= "</td><td class=\"insLabel\" colspan=\"4\">".AM_L_PAYS." : \n" ; |
$ret .= "" ; |
// formulaire contenant les pays, avec par défaut soit le pays en cours |
// soit "tous les pays" |
$query_pays = "select GC_ID, GC_NAME from gen_COUNTRY where GC_LOCALE='fr'" ; |
$result_pays = mysql_query($query_pays) or die ("Echec de la requete sur gen_COUNTRY") ; |
$ret .= "<select name=\"pays\" class=\"insInputForm\">\n" ; |
$ret .= "<option value=\"tous\">Tous les pays</option>\n" ; |
while ($row_pays = mysql_fetch_object($result_pays)) { |
$ret .= "<option value=\"$row_pays->GC_ID\"" ; |
if (!empty($pays)) { |
if ($pays == $row_pays->GC_ID) $ret .= " selected" ; |
} |
$ret .= ">$row_pays->GC_NAME</option>\n" ; |
} |
$ret .= "</select>\n" ; |
$ret .= "</td>\n" ; |
$ret .= "<tr>\n"; |
$ret .= "<td class=\"insLabel\">".AM_L_NOM." :\n</td><td>"; |
$ret .= form_mk_chaineI(stripslashes($nom), "nom")." </td>\n<td class=\"insLabel\">" ; |
$ret .= AM_L_PRENOM." :</td>\n<td>".form_mk_chaineI(stripslashes($prenom), "prenom")." </td>\n<td class=\"insLabel\">" ; |
$ret .= AM_L_VILLE." :</td>\n<td>".form_mk_chaineI(stripslashes($ville), "ville")." </td>" ; |
$ret .= "</tr><tr>\n" ; |
$ret .= "<td class=\"insLabel\">".AM_L_DEPARTEMENT." : </td>\n<td>" ; |
// Construction du <select> des départements |
$requete_dpt = "select GFD_ID, GFD_NAME from gen_FRENCH_DPT" ; |
$resultat_dpt = mysql_query($requete_dpt) or die ("Echec de la requete sur gen_FRENCH_DPT<br>".mysql_error()) ; |
$ret .= "<select name=\"dept\" class=\"insInputForm\">\n" ; |
$ret .= "<option value=\"tous\">tous</option>\n" ; |
while ($ligne_dpt = mysql_fetch_object($resultat_dpt)) { |
$ret .= "<option value=\"$ligne_dpt->GFD_ID\"" ; |
if ($dept == $ligne_dpt->GFD_ID) $ret .= " selected" ; |
$ret .= ">$ligne_dpt->GFD_ID - $ligne_dpt->GFD_NAME</option>\n" ; |
} |
$ret .= "</select></td>\n" ; |
$ret .= "<td class=\"insLabel\">".AM_L_MAIL." : </td>\n<td>".form_mk_chaineI(stripslashes($mail), "mail")."</td>\n" ; |
$ret .= "<td class=\"insLabel\">".AM_L_COTISANTS." : </td>\n" ; |
$ret .= "<td>".form_mk_select(stripslashes($cotisant), "cotisant")."</td>\n"; |
$ret .= "</tr></table>\n"; |
$ret .= "</td></tr>\n"; |
$ret .= "<tr><td><table>\n" ; |
// Les statuts des inscrits |
$tableau_statut = array ("0" => "Désinscrit", "1" =>"Cotisant non inscrit", "3" =>"Inscrit") ; |
$ret .= "<tr>\n"; |
$ret .= "<td class=\"insLabel\">Statut : </td>" ; |
$ret .= "<td><select name=\"statut\" class=\"insInputForm\">\n" ; |
foreach ($tableau_statut as $key=>$value) { |
$ret .= "<option value=\"$key\"" ; |
if (!empty($HTTP_POST_VARS["statut"]) && $HTTP_POST_VARS["statut"] == $key) $ret .= " selected" ; |
if (empty($HTTP_POST_VARS["statut"]) && $key == "3") $ret .= " selected" ; |
$ret .= ">$value</option>\n" ; |
} |
$ret .= "</select></td>" ; |
$ret .= "<td class=\"insLabel\" width=\"60%\">\n"; |
$ret .= AM_L_GRP_RES." : </td>" ; |
$grp = array(20, 50, 100) ; |
$ret .= "<td><select name=\"T_REPONSE\" class=\"insInputForm\">\n" ; |
for ($i = 0; $i < count($grp); $i++) { |
$ret .= "<option value=\"".$grp[$i]."\">".$grp[$i]."</option>\n" ; |
} |
$ret .= "</select></td>" ; |
$ret .= "<td class=\"texte_tb\" align=\"right\" width=\"40%\">\n"; |
$ret .= "<input type=\"submit\" class=\"texte_tb\" value=\"".AM_L_RECHERCHER."\" name =\"bouton\">\n"; |
$ret .= "</td></tr></table>\n</td></tr>\n"; |
$ret .= presa_mk_blkline(1); |
$ret .= "</table></form>\n"; |
return $ret; |
} |
/** function form_mk_chaineI () Renvoie une balise de type <input> |
* |
* @param string l'attribut value de la balise |
* @param string l'attibut name de la balise |
* @param string la classe CSS |
* @return string HTML |
*/ |
function form_mk_chaineI($value="", $name, $class="insInputForm") |
{ |
return "<input type=\"text\" size=\"15\" value=\"$value\" name=\"$name\" class=\"$class\">"; |
} |
function form_mk_select($value="", $name="", $class="insInputForm") { |
$res = "<select name=\"$name\" class=\"$class\">\n" ; |
$res .= "<option value=\"1\"" ; |
if ($value == 1) $res .= " selected" ; |
$res .= ">Cotisants</option>\n" ; |
$res .= "<option value=\"2\"" ; |
if ($value == 2) $res .= " selected" ; |
$res .= ">Non cotisants</option>\n" ; |
$res .= "<option value=\"3\"" ; |
if ($value == 3 || $value == "") $res .= " selected" ; |
$res .= ">Tous</option>\n" ; |
$res .= "</select>\n" ; |
return $res ; |
} |
function mkquery() |
{ |
// définition des variables globales |
global $lettre ; |
global $bouton, $HTTP_POST_VARS ; |
$mon_frag = new fragmenteur_session() ; |
// Requete sur l'annuaire pour extraire le nom, prénom, ville, nom du département (jointure), |
// l'état de la cotisation (jointure) |
// le tableau suivant contient tous les champs de la table annuaire_tela sur lesquels on peut effectuer une recherche |
$fields_annu = array("nom" => "U_NAME", "prenom" => "U_SURNAME" , "mail" => "U_MAIL" , "ville" => "U_CITY", |
"dept" => "U_FRENCH_DPT", "pays" => "U_COUNTRY" ) ; |
$mes_vars = array ("recherche", "nom", "ville", "mail" ,"dept", "prenom", "cotisant", "pays", "sort", "T_REPONSE", "lettre","statut") ; |
foreach ($mes_vars as $key=>$value) { |
if (!$bouton) { |
if (empty($HTTP_POST_VARS[$value])) { |
$$value = $mon_frag->getVariable($value); |
} |
} else { |
$lettre = "" ; |
$mon_frag->setVariable("lettre", "") ; |
$mon_frag->fixerLeDebut(0) ; |
if (empty ($HTTP_POST_VARS[$value])) { |
$$value = "" ; |
} else { |
$$value = $HTTP_POST_VARS[$value] ; |
} |
} |
} |
if ($bouton) $sort = $mon_frag->getVariable("sort") ; |
$queries = "select ".AM_ANNUAIRE.".*" ; |
$queries .= ", ".AM_PAYS.".GC_NAME "; |
$queries .= "from ".AM_ANNUAIRE ; |
$queries .= ",".AM_PAYS ; |
// Construction en fonction des champs saisies |
// juste le champs "rechercher", on regarde partout |
$queries .= " where (" ; |
if ($lettre == "") { |
if ($recherche != "") { |
$queries .= "(U_NAME like '%$recherche%'" ; // le premier |
foreach($fields_annu as $key=>$value) { |
if ($key == "nom") continue ; |
$queries .= ($key == "pays" ? |
$pays == "tous" ? ")" : |
") and $value = '$pays'" : " or $value like '%$recherche%'") ; // les autres |
} |
} else { |
// si un ou plusieurs autres champs ont été indiqué, on les rajoute ici |
$or_flag = false ; |
foreach($fields_annu as $key=>$valeur) { |
if ($key != "") { |
if ($key == "pays") { |
if ($$key == "tous") $queries .= ") and U_COUNTRY like '%'"; |
else $queries .= ") and $valeur like \"%".$$key."%\"" ; |
} else { |
if ($key == "dept") { |
if ($$key != "tous" && isset($HTTP_POST_VARS[$key])) { |
$queries .= " and U_FRENCH_DPT=".$$key ; |
if ($fields_annu["pays"] != "fr") $queries .= " and U_COUNTRY=\"fr\"" ; |
} |
} else { |
if ($or_flag) $queries .= "$valeur like \"%".$$key."%\"" ; |
else $queries .= "($valeur like \"%".$$key."%\"" ; |
if ($key != "ville") $queries .= " and " ; |
} |
} |
$or_flag = true ; |
} |
} |
// ici le cas ou rien n'a été saisie du tout, on affiche tout |
if (!$or_flag) { |
$queries .= "U_NAME like '%')" ; |
} |
} |
} else { |
if ($lettre == "tous") $lettre = "" ; |
$queries .="U_NAME like '$lettre%'" ; |
} |
$queries .= ")" ; |
$queries .= " and ".AM_ANNUAIRE.".U_COUNTRY=".AM_PAYS.".GC_ID" ; |
if (isset($cotisant) && $cotisant != 3) if ($cotisant == 1) { |
$queries .= " and ".AM_ANNUAIRE.".U_COT=$cotisant" ; |
} else { |
$queries .= " and ".AM_ANNUAIRE.".U_COT=0" ; |
} |
if (isset($nom) && $nom != "") $queries .= " and U_NAME like \"%$nom%\"" ; |
if (isset($prenom) && $prenom != "") $queries .= " and U_SURNAME like \"%$prenom%\"" ; |
if (isset($ville) && $ville != "") $queries .= " and U_CITY like \"%$ville%\"" ; |
if (isset($mail) && $mail != "") $queries .= " and U_MAIL like \"%$mail%\"" ; |
if (isset($statut) && $statut != "") $queries .= " and U_SHOW=$statut" ; else $queries .= " and U_SHOW=0" ; |
if (isset($sort) && $sort != "") $queries .= " order by $sort" ; |
return $queries; |
} |
function mkresu() |
{ |
global $GS_GLOBAL; |
global $HTTP_HOST, $SCRIPT_URL, $SCRIPT_NAME, $bouton ; |
$mon_frag = new fragmenteur_session() ; |
$mon_frag->setURL(AM_BASE_URL.AM_URL_DOCUMENT) ; |
if ($bouton) $mon_frag->fixerLeDebut(0) ; |
$requete = mkquery() ; |
// Deux requetes, une avec tous les resultats, l'autre avec les résultats affichés |
$result_total = mysql_query($requete) or print ("Echec de la requete <br>$requete<br>".mysql_error()) ; |
// Affichage de la requete |
$ret_req = "<tr class=\"texte_tb\"><td><br><b>La requete : </b><br>$requete". |
" limit ".$mon_frag->lireLeDebut().",".$mon_frag->lireLePas()."</td></tr>\n" ; |
$result_final = mysql_query($requete." limit ".$mon_frag->lireLeDebut().",".$mon_frag->lireLePas()) or print (mysql_error()); |
$nbr_final = mysql_num_rows($result_total) ; |
mysql_free_result($result_total) ; |
cxt_addVariable(AM_BD_BOTA, AM_BD_LINK, "requete_mail_tous", $requete) ; |
$ret = "<tr class=\"text1\"><td align=\"center\"><table><tr>" ; |
for ($i = 65 ; $i <91 ; $i++) { |
$ret .= "\t<td><a href=\"".AM_URL_DOCUMENT."&lettre="; |
$ret .= chr($i)."\">"; |
$ret .= chr($i) ; |
$ret .= "</a></td>\n"; |
} |
$ret .= "<td> <a href=\"".AM_URL_DOCUMENT."&lettre=tous\">".AM_L_TOUS."</a></td>\n" ; |
$ret .= "<tr></table></td></tr>\n" ; |
$ret .= "<tr class=\"insInputForm\"><td>".$mon_frag->affNbRes($nbr_final) ; |
$ret .= "<tr class=\"insInputForm\" align=\"center\"><td align=\"center\">".$mon_frag->fragmente($nbr_final)."</td></tr>\n" ; |
if ($nbr_final != 0) { |
$ret .= "<tr><td><table width=\"100%\">\n"; |
$ret .= "<tr class=\"insTitle1\"><td nowrap><a href=\"".AM_BASE_URL.AM_URL_DOCUMENT."&sort=U_NAME\">Identité</a></td>\n"; |
$ret .= "<td><a href=\"".AM_BASE_URL.AM_URL_DOCUMENT."&sort=U_MAIL\">Adresse mail</a></td>\n" ; |
$ret .= "<td><a href=\"".AM_BASE_URL.AM_URL_DOCUMENT."&sort=U_CITY\">".AM_L_VILLE."</a></td>\n" ; |
$ret .= "<td>Pays ou Dpt (fr)</td>\n" ; |
$ret .= "<td><a href=\"".AM_BASE_URL.AM_URL_DOCUMENT."&sort=U_COT\">".AM_L_COTISANTS."</a></td></tr>\n" ; |
$cotisant = array( "non", "oui") ; |
$pair = true ; // pour afficher une ligne de résultat coloré, l'autre non |
while ($row = mysql_fetch_object($result_final)) |
{ |
$ret .= "<tr class=\"texte_tb2\""; |
if ($pair) { |
$ret .= " bgcolor=\"\"" ; |
$pair = false ; |
} else { |
$pair = true ; |
} |
$ret .= ">" ; |
$ret .= "\n<td nowrap>"; |
$urlPop = "http://$HTTP_HOST$SCRIPT_NAME" ; |
$urlPop .= "?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&set=popup&doc=admin_annu&page=". |
$GS_GLOBAL['current_page_ndx']."&u_id=$row->U_ID" ; |
$ret .= "<a href=\"javascript:MagicPopup('$urlPop', 'admin_annu');\">" ; |
$ret .= $row->U_NAME." ".$row->U_SURNAME ; |
$ret .= "</a></td>\n "; |
$ret .= "<td><a href=\"mailto:$row->U_MAIL\">$row->U_MAIL</a></td>\n" ; |
$ret .= "<td>$row->U_CITY</td>" ; |
if ($row->U_COUNTRY != 'fr') { |
$ret .= "<td>$row->GC_NAME</td>" ; |
} else { |
$req_dpt = "select GFD_NAME from ".AM_DPT.",".AM_ANNUAIRE." where ".AM_ANNUAIRE.".U_ID=$row->U_ID" ; |
$req_dpt .= " and ".AM_ANNUAIRE.".U_FRENCH_DPT=".AM_DPT.".GFD_ID" ; |
$resultat_dpt = mysql_query($req_dpt) or die ("Echec de la requete sur ".AM_DPT."<br>".mysql_error()) ; |
$ligne_dpt = mysql_fetch_object($resultat_dpt) ; |
$ret .= "<td>$ligne_dpt->GFD_NAME</td>" ; |
} |
$ret .= "<td>".$cotisant[$row->U_COT]."</td></tr>\n" ; |
} |
$ret .= "</table></td></tr>\n" ; |
$ret .= "<tr class=\"insInputForm\" align=\"center\"><td align=\"center\">".$mon_frag->fragmente($nbr_final)."</td></tr>\n" ; |
$ret .= presa_mk_blkline(1) ; |
$ret .= "<tr class=\"texte_tb\"><td><a href=\"document.php?project=gus&doc=mail_tous\" target=\"_blank\">".AM_L_MAIL_SELECTION."</a></td></tr>\n" ; |
} |
// $ret .= $ret_req ; |
return $ret; |
} |
/** function presa_mk_blkline () insere des lignes vides du type <tr><td> </td></tr> |
* |
* |
* @param integer nombre de ligne à insérer |
* @return string HTML |
*/ |
function presa_mk_blkline ($nombre) { |
$res = "" ; |
for ($i = 0; $i < $nombre; $i++) { |
$res .= "<tr><td> </td></tr>\n" ; |
} |
return $res ; |
} |
?> |
/trunk/client/annuaire/mail_tous.php |
---|
New file |
0,0 → 1,94 |
<?php |
// +--------------------------------------------------------------------+ |
// | mail_tous.php | |
// +--------------------------------------------------------------------+ |
// | Copyright (c) 2002 Tela Botanica | |
// +--------------------------------------------------------------------+ |
// | Application permetant d'envoyer un mail à tous | |
// +--------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------+ |
// |
// $Id: mail_tous.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
include_once "php/lib/pack.lib.gen.php" ; |
include_once "php/auth_object_login.php" ; |
function putFrame() { |
// configuration |
global $GS_GLOBAL ; |
global $objet, $corps, $annuaire_LABEL_STATUT, $SERVER_ADMIN ; |
global $action ; |
$url = "document.php?project=".$GS_GLOBAL['project']."&locale=".$GS_GLOBAL['locale']."&doc=".$GS_GLOBAL['document_row']->D_NAME ; |
$url .= "&page=".$GS_GLOBAL['current_page_ndx'] ; |
$link = $GS_GLOBAL['link'] ; |
$annu_table = "annuaire_tela" ; |
$champs_mail = "U_MAIL" ; |
// Identification |
$loginObj = new authLoginClass() ; |
if (!gs_manageAuthWithObject ($GS_GLOBAL['mysql_db'], $GS_GLOBAL['link'], $loginObj, &$outputText)) { |
$res = $outputText ; |
} else { |
// Entete |
confirmation() ; |
$corps_debut = "RESEAU TELA BOTANICA - Le ".date("j/m/Y"). |
"\n\nBonjour,\n"."\n\nCordialement,\n-------------------\nTela Botanica le réseau des botanistes francophones\naccueil@tela-botanica.org\nhttp://www.tela-botanica.org\n"; |
$res = "<tr class=\"titlePage\"><td>Envoi d'un mail à tous les membres</td></tr>\n" ; |
$res .= "<tr><td> </td></tr>\n" ; |
if ($action == "go") $res .= envoie_mail() ; |
// formulaire |
$res .= "<tr><td><form action=\"$url&action=go\" method=\"post\"><table width=\"100%\">\n" ; |
$res .= "<tr><td class=\"insLabel\">" ; |
$res .= "Objet : </td><td><input size=\"91\" name=\"objet\" type=\"text\" class=\"insInputForm\"></td></tr>\n" ; |
$res .= "<tr><td class=\"insLabel\">Corps : </td><td><textarea name=\"corps\" cols=\"90\" rows=\"30\" class=\"insInputForm\">$corps_debut</textarea></td></tr>\n" ; |
$res .= "<tr><td></td><td><input type=\"submit\" class=\"texte_tb\" value=\"envoyer\"" ; |
$res .= " onclick=\"javascript:return confirmLink(this, 'Etes-vous sur de vouloir envoyer ce message !!');\"" ; |
$res .= "></td></tr>\n" ; |
$res .= "</table></form></td></tr>\n" ; |
} |
return $res ; |
} |
include_once ("Mail.php"); |
// envoie le mail à tous |
function envoie_mail() |
{ |
global $objet, $corps, $annuaire_LABEL_STATUT, $SERVER_ADMIN, $GS_GLOBAL ; |
$annuaire = "annuaire_tela" ; |
$champs_mail = "U_MAIL" ; |
$headers['From'] = "accueil@tela-botanica.org" ; |
$headers['Subject'] = stripslashes($objet) ; |
$corps = stripslashes($corps) ; |
$requete = cxt_getVariable($GS_GLOBAL['mysql_db'], $GS_GLOBAL['link'], "requete_mail_tous") ; |
cxt_clear($GS_GLOBAL['mysql_db'], $GS_GLOBAL['link']) ; |
$resultat = mysql_query($requete) or die ("echec") ; |
while ($ligne = mysql_fetch_object($resultat)) { |
if (!mail($ligne->U_MAIL, $headers['Subject'], $corps, "From: ".$headers['From'])) { |
return "<tr><td>Une erreur s'est produite:<br>".$mail_object->getMessage()."</td></tr>\n" ; |
} |
} |
return "<tr><td class=\"titlePage\">Le mail est parti !</td></tr>\n"; |
} |
?> |
/trunk/client/annuaire/annuaire_moteur.php |
---|
New file |
0,0 → 1,42 |
<?php |
// +--------------------------------------------------------------------------------+ |
// | annuaire_moteur.php | |
// +--------------------------------------------------------------------------------+ |
// | Copyright (c) 2000 - 2003 Tela Botanica | |
// +--------------------------------------------------------------------------------+ |
// | Moteur de recherhche dans un annuaire, les champs à | |
// | affichés sont déterminé dans annuaire_moteur_config.php | |
// +--------------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +--------------------------------------------------------------------------------+ |
// |
// $Id: annuaire_moteur.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
include_once ("annuaire_moteur_config.php") ; |
include_once (AM_CHEMIN_LIBRAIRIE."pack.lib.gen.php") ; |
include_once (AM_CHEMIN_APPLI."annuaire_moteur_fonction.php"); |
if (!isset($locale)) $locale = 'fr' ; |
include_once (AM_CHEMIN_APPLI."annuaire_moteur_lang_".$locale.".php") ; |
include_once "php/auth.php" ; |
include_once "php/auth_object_login.php" ; |
function putframe () { |
global $statut, $GS_GLOBAL ; |
$objet_login = new AuthLoginClass() ; |
if (!gs_manageAuthWithObject ($GS_GLOBAL['mysql_db'], $GS_GLOBAL['link'], $objet_login, &$outputText)) { |
$res = $outputText ; |
} else { |
$res = "<tr><td>".mkengine()."</td></tr>\n" ; |
//mkquery() ; |
$res .= "<tr><td>".mkresu()."</td></tr>\n" ; |
} |
return $res ; |
} |
?> |
/trunk/client/annuaire/recu_pdf_corps.php |
---|
New file |
0,0 → 1,163 |
<?php |
// +----------------------------------------------------------------------------+ |
// |pdf_recu_et_mail.php | |
// +----------------------------------------------------------------------------+ |
// | Copyright (c) 2003 Tela Botanica | |
// +----------------------------------------------------------------------------+ |
// | Ce fichier génère un fichier PDF | |
// | contenant le recu pour une cotisation à Tela Botanica | |
// | Il utilise la librairie FPDF | |
// | http://www.fpdf.org/ | |
// | Il envoie également un email à l'adhérent concerné | |
// +----------------------------------------------------------------------------+ |
// | Auteur : Alexandre Granier <alexandre@tela-botanica.org> | |
// +----------------------------------------------------------------------------+ |
// |
// $Id: recu_pdf_corps.php,v 1.1.1.1 2005-01-03 17:27:49 alex Exp $ |
// Recherche des informations sur un utilisateur |
$requete = "select * from annuaire_COTISATION, annuaire_tela, MODE_COTISATION |
where IC_ID=$cotisation_id |
and IC_ANNU_ID=U_ID |
and IC_MC_ID=MC_ID" ; |
$resultat = mysql_query($requete) or die ($requete."<br>".mysql_error()) ; |
$ligne = mysql_fetch_object($resultat) ; |
mysql_free_result($resultat) ; |
/* |
// On regarde si le reçu a déjà été envoyé |
$requete = "select IC_RECU from annuaire_COTISATION where IC_ID=$cotisation_id" ; |
$resultat = mysql_query ($requete) or die ($requete."<br>".mysql_error()) ; |
$ligne = mysql_fetch_object($resultat) ; |
mysql_free_result($resultat) ; |
*/ |
if ($ligne->IC_RECU != 0) { |
$num_recu = $ligne->IC_RECU ; |
// $deja_envoye permettra au programme admin_annu.php de ne pas incrementé |
// le compteur de recu |
$deja_envoye = true ; |
} else { |
$res_compteur = mysql_query("select COMPTEUR from COMPTEUR_COTISATION") ; |
$ligne_compteur = mysql_fetch_object($res_compteur) ; |
$num_recu = $ligne_compteur->COMPTEUR ; |
$deja_envoye = false ; |
} |
@include_once "php/lib/fpdf/fpdf.php"; |
if (!isset($envoie)) $chemin = "modules/client/annuaire/" ; |
// Constante nécessaire à fpdf.php |
define('FPDF_FONTPATH','font/'); |
// Création de l'objet pdf |
$pdf = new FPDF(); |
$pdf->Open(); |
$pdf->AddPage("P"); |
// La ligne du haut |
$pdf->Line(10, 10, 200, 10) ; |
// Contenu du document |
$pdf->SetFont('Arial', '', 8) ; |
$pdf->Cell(150, 10, "", 0, 0) ; |
$pdf->MultiCell(40, 10, "Numéro d'ordre : $num_recu", 1,1, "C") ; |
$pdf->SetY($pdf->GetY() - 10) ; |
$pdf->SetFont('Arial','B',14); |
$pdf->Cell(0,10,'Reçu dons aux uvres', 0, 1, "C"); |
$pdf->SetFont('Arial', '', 10) ; |
$pdf->Cell(0, 0, '(Article 200-5 et 238 bis du Code Général des impôts)', 0, 1, "C") ; |
$pdf->Cell(0, 10, 'REÇU A CONSERVER ET A JOINDRE A VOTRE DECLARATION DE REVENUS 2004', 0, 1, "L") ; |
// On met le logo de Tela |
$pdf->Image($chemin."logotb.png", 12, 35, "29", "", "PNG", "http://www.tela-botanica.org/") ; |
// On écrie Les titres du cadre |
$pdf->SetFontSize(12) ; |
$pdf->Cell(100, 10, 'Bénéficiaire du don', 0, 0, "C") ; |
$pdf->Cell(100, 10, 'Donateur', 0, 1, "C") ; |
$pdf->SetFont('Arial', 'B', 10) ; |
$pdf->Cell(38, 5, '', 0, 0) ; |
$pdf->Cell(62, 5, 'Association Tela Botanica', 0, 0, "L") ; |
$pdf->SetFont('Arial', 'B', 10) ; |
$pdf->Cell(100, 5, "$ligne->U_NAME $ligne->U_SURNAME", 0, 1, "L") ; |
$pdf->SetFont('Arial', '', 10) ; |
$pdf->Cell(38, 5, '', 0, 0) ; |
$pdf->Cell(62, 5, 'Institut de Botanique', 0, 1, "L") ; |
$pdf->Cell(38, 5, '', 0, 0) ; |
$pdf->Cell(62, 5, '163, rue A. Broussonnet', 0, 0, "L") ; |
$pdf->Cell(100, 5, "$ligne->U_ADDR1", 0, 1, "L") ; |
$pdf->Cell(38, 5, '', 0, 0) ; |
$pdf->Cell(62, 5, '34090 Montpellier', 0, 0, "L") ; |
$pdf->Cell(100, 8, "$ligne->U_ADDR2", 0, 1, "L") ; |
$pdf->Cell(100, 5, 'Objet :', 0,1, "L") ; |
$pdf->SetFontSize(8) ; |
$pdf->MultiCell(100, 4, 'Contribuer au rapprochement de tous les botanistes de langue française. Favoriser l\'échange d\'information'. |
' et animer des projets botaniques grâce aux nouvelles technologies de la communication.', 0, 1, "") ; |
$pdf->SetFontSize(10) ; |
$pdf->Text(111, 58 + 8, "$ligne->U_ZIP_CODE $ligne->U_CITY") ; |
$pdf->SetFontSize(8) ; |
$pdf->MultiCell(100,4, 'Organisme d\'intérêt général à caractère scientifique concourant à la diffusion de la langue et des connaissances scientifiques françaises.', 0,1, "R") ; |
// On remonte le curseur de 52 |
$pdf->SetY($pdf->GetY() - 58) ; |
// Le cadre central |
$pdf->Cell(100, 60, '', 1) ; |
$pdf->Cell(90, 60, '', 1) ; |
$pdf->Ln() ; |
$pdf->SetFontSize(10) ; |
$pdf->Cell(0,10, 'L\'Association reconnaît avoir reçu, à titre de don, la somme de :', 0, 1, "L") ; |
$pdf->SetFont('Arial', 'B', 11) ; |
$pdf->Cell(0,10, "*** $ligne->IC_MONTANT euros ***", 0, 1, "C") ; |
$pdf->SetFont('Arial', '', 10) ; |
$pdf->Ln() ; |
$pdf->Cell(100,10, "Date du paiement : ".date ("d/m/Y", $ligne->IC_DATE), 0, 0, "L") ; |
$pdf->Cell(100, 10, 'Montpellier, le '.date("d/m/Y"), 0, 1, "L") ; |
// La signature de Daniel |
$pdf->Image($chemin."signature_Daniel.png", 110, $pdf->GetY(),28.22, "") ; |
$pdf->Ln() ; |
$pdf->Cell(0, 10, "Mode de versement : $ligne->MC_LABEL", 0, 1, "L") ; |
$pdf->Cell(100, 10, '', 0, 0) ; |
$pdf->Cell (100, 10, 'Daniel MATHIEU, Président', 0, 1, "L") ; |
$pdf->Ln(5) ; |
$pdf->SetFontSize(10) ; |
$pdf->Cell(0, 7, '60 % de votre don à Tela Botanica est déductible de vos impôts dans la limite de 20 % de votre revenu imposable.', 1, 1, "C") ; |
?> |