Subversion Repositories Applications.papyrus

Rev

Rev 1163 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1163 Rev 1421
Line 24... Line 24...
24
//Autres auteurs :
24
//Autres auteurs :
25
*@copyright         Outils-reseaux 2006-2040
25
*@copyright         Outils-reseaux 2006-2040
26
*@version           05 avril 2006
26
*@version           05 avril 2006
27
// +-----------------------------------------------------------------------------------------------+
27
// +-----------------------------------------------------------------------------------------------+
28
//
28
//
29
// $Id: bottin.class.php,v 1.1 2006-12-13 13:26:52 alexandre_tb Exp $
29
// $Id: bottin.class.php,v 1.2 2007-05-25 14:31:24 alexandre_tb Exp $
30
// FICHIER : $RCSfile: bottin.class.php,v $
30
// FICHIER : $RCSfile: bottin.class.php,v $
31
// AUTEUR    : $Author: alexandre_tb $
31
// AUTEUR    : $Author: alexandre_tb $
32
// VERSION : $Revision: 1.1 $
32
// VERSION : $Revision: 1.2 $
33
// DATE        : $Date: 2006-12-13 13:26:52 $
33
// DATE        : $Date: 2007-05-25 14:31:24 $
34
*/
34
*/
Line 35... Line 35...
35
 
35
 
36
 
36
 
Line 80... Line 80...
80
		$res .= '</ul>';
80
		$res .= '</ul>';
81
		return $res ;
81
		return $res ;
82
	}	
82
	}	
83
}
83
}
Line -... Line 84...
-
 
84
 
-
 
85
 
-
 
86
class inscription extends PEAR {
-
 
87
	
-
 
88
	/**
-
 
89
     * Constructeur
-
 
90
     *
-
 
91
     *	
-
 
92
     * @return void
-
 
93
     * @access public
-
 
94
     */
-
 
95
	function inscription() {
-
 
96
			
-
 
97
	}
-
 
98
	
-
 
99
	/**
-
 
100
	 * Renvoie le code HTML d une liste avec les lettres
-
 
101
	 * 
-
 
102
	 * @global  Un pointeur vers une connexion de base de donnee $GLOBALS['ins_url']
-
 
103
	 * @return array ['ic_param'] les parametres tels que dans la table inscription_config
-
 
104
	 * @access public
-
 
105
	 */
-
 
106
	function getConfig() {
-
 
107
		// Recuperation de la configuration
-
 
108
	    $requete = 'select * from inscription_configuration';
-
 
109
	    $resultat = $GLOBALS['ins_db']->query($requete);
-
 
110
	    if (DB::isError($resultat)) return "Echec de la requete : $requete<br />".$resultat->getMessage() ;
-
 
111
		    if ($resultat->numRows() != 0) {
-
 
112
		    $ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC);
-
 
113
		    return $ligne;
-
 
114
	    } else {
-
 
115
	    	return $this->raiseError('La table inscription_configuration est vide...');
-
 
116
	    }
-
 
117
	}
-
 
118
	
-
 
119
	/**
-
 
120
	 * Renvoi un tableau avec les informations de inscription_attente
-
 
121
	 * 
-
 
122
	 * @global  Un pointeur vers une connexion de base de donnee $GLOBALS['ins_db']
-
 
123
	 * @return array Un tableau ['id'], ['nom'], ['prenom'] ... ou la chaine vide si il n'y a personne en attente
-
 
124
	 * @access public
-
 
125
	 */
-
 
126
	function getInscritEnAttenteModeration() {
-
 
127
		$requete = 'select * from inscription_attente';
-
 
128
		$resultat = $GLOBALS['ins_db']->query($requete);
-
 
129
		
-
 
130
		$tableau_inscrit = array();
-
 
131
		if (DB::isError($resultat)) return "Echec de la requete : $requete<br />".$resultat->getMessage() ;
-
 
132
		    if ($resultat->numRows() != 0) {
-
 
133
			    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_OBJECT)) {
-
 
134
				    $donnees = unserialize (stripslashes($ligne->ia_donnees)) ;
-
 
135
				    array_push ($tableau_inscrit, array_merge (array('id' => $ligne->ia_id_inscription, 'date' => $ligne->ia_date), $donnees));
-
 
136
			    }
-
 
137
			    return $tableau_inscrit;
-
 
138
		    } else {
-
 
139
	    		return '';
-
 
140
	    	}
-
 
141
	}
-
 
142
	
-
 
143
	/** Renvoi le tableau des inscrits en attente
-
 
144
	 * 
-
 
145
	 * @global	$GLOBALS['ins_url'] un objet Net_URL avec l url courante
-
 
146
	 * @param array Un tableau de tableau d inscrit avec ['id'],['nom'],['prenom'],['email'],['ville'],['date']
-
 
147
	 * @return string Un tableau HTML
-
 
148
	 */
-
 
149
	 
-
 
150
	 function getTableauEnAttente($tableau) {
-
 
151
	 	$html = '';
-
 
152
	 	
-
 
153
	 	$table = new HTML_Table();
-
 
154
	 	$table->addRow(array (INS_NOM, INS_EMAIL, INS_VILLE, INS_DATE_INS, INS_ACTION), '', 'TH');
-
 
155
	 	$GLOBALS['ins_url']->addQueryString(ANN_NOM_VARIABLE_ACTION, ANN_ACTION_VALIDER_INSCRIPTION);
-
 
156
	 	$action = '<a href="'.$GLOBALS['ins_url']->getURL().'">'.'</a>';
-
 
157
	 	foreach ($tableau as $demandeur) {
-
 
158
	 		$table->addRow(array($demandeur['nom'].' '.$demandeur['prenom'], $demandeur['email'], $demandeur['ville'], $demandeur['date']));
-
 
159
	 	}
-
 
160
	 	return $table->toHTML();
-
 
161
	 }
-
 
162
	
-
 
163
	/**
-
 
164
	 * Renvoie un tableau avec les moderateurs de l inscription
-
 
165
	 * ceux du champs ic_mail_moderateur
-
 
166
	 * 
-
 
167
	 * @return array Un tableau de mail de moderateur
-
 
168
	 */
-
 
169
	function getModerateurs() {
-
 
170
		
-
 
171
	}
-
 
172
	/**
-
 
173
	 * Insere une demande d inscription dans la table inscription_attente et 
-
 
174
	 * envoi un mail aux moderateurs
-
 
175
	 * 
-
 
176
	 * @param	string	Un identifiant de session, soit genere aleatoirement soit venu de la tablea inscription_demande
-
 
177
	 * @global array la globale $GLOBALS['ins_config']
-
 
178
	 * @global mixed un pointeur vers une base de donnees $GLOBALS['ins_db']
-
 
179
	 * @return string Un message a renvoye a l utilisateur indiquant que sa demande a ete prise en compte
-
 
180
	 */
-
 
181
	function demandeInscriptionModere($valeurs) {
-
 
182
	// On stocke les informations dans un variable de session
-
 
183
	    // On coupe l'identifiant de session pour ne prendre que les 8 premiers caractères
-
 
184
	    // afin d'éviter d'obtenir une url trop longue
-
 
185
	    $chaine = substr (session_id(), 0, 8) ;
-
 
186
	    $requete_verif = 'select * from inscription_attente where ia_id_inscription="'.$chaine.'"' ;
-
 
187
	    $resultat_verif = $GLOBALS['ins_db']->query ($requete_verif) ;
-
 
188
	    if ($resultat_verif->numRows() != 0) {
-
 
189
	        $requete_suppression = 'delete from inscription_attente where ia_id_inscription="'.$chaine.'"' ;
-
 
190
	        $GLOBALS['ins_db']->query ($requete_suppression) ;
-
 
191
	    }
-
 
192
	    $requete = 'insert into inscription_attente set ia_id_inscription="'.$chaine.'", ia_donnees="'.
-
 
193
	                addslashes(serialize($valeurs)).'", ia_date=NOW()' ;
-
 
194
	    $resultat = $GLOBALS['ins_db']->query ($requete) ;
-
 
195
	    if (DB::isError ($resultat)) {
-
 
196
	        echo ("Echec de la requete : $requete<br />".$resultat->getMessage()) ;
-
 
197
	    }
-
 
198
	    // On envoie un email aux moderateurs
-
 
199
	    
-
 
200
	    require_once PAP_CHEMIN_RACINE.'api/pear/HTML/Template/IT.php';
-
 
201
	    $tpl = new HTML_Template_IT() ;
-
 
202
	    // Le gabarit du mail est dans un template
-
 
203
	    // template 3
-
 
204
	    $url = $GLOBALS['ins_url']->getURL();
-
 
205
	    $requete = 'select it_template from inscription_template where it_id_template=3'.
-
 
206
	    			' and it_i18n like "%'.INS_LANGUE_DEFAUT.'"' ;
-
 
207
	    
-
 
208
	    if (!$tpl -> setTemplate($GLOBALS['ins_db']->getOne ($requete))) {
-
 
209
	    	echo 'erreur' ;	
-
 
210
	    }
-
 
211
		$tpl->setVariable('URL_INSCRIPTION', $url) ;
-
 
212
		$mails_moderateur = split ('/\n/', $GLOBALS['ins_config']['ic_mail_moderateur']);
-
 
213
		foreach ($mails_moderateur as $mail) {
-
 
214
			mail ($mail, INS_MODERATION_SUJET, INS_NOUVELLE_INSCRIPTION_A_MODERE) ;
-
 
215
		}
-
 
216
	    return INS_MESSAGE_EN_ATTENTE ;
-
 
217
	}
84
 
218
}
85
//-- Fin du code source    ------------------------------------------------------------
219
//-- Fin du code source    ------------------------------------------------------------
86
/*
220
/*
-
 
221
* $Log: not supported by cvs2svn $
-
 
222
* Revision 1.1  2006/12/13 13:26:52  alexandre_tb
-
 
223
* version initiale
87
* $Log: not supported by cvs2svn $
224
*
88
*/
225
*/
89
?>
226
?>