33,7 → 33,27 |
// DATE : $Date$ |
*/ |
|
/** |
* Renvoie l'accueil de l'inscription |
* |
* @return string HTML |
*/ |
function AUTH_formulaire_login() { |
require_once PAP_CHEMIN_RACINE.'api/pear/HTML/Template/IT.php'; |
$tpl = new HTML_Template_IT() ; |
// Le formulaire pour se logguer est dans un template |
// template 1 |
$requete = 'SELECT it_template FROM inscription_template WHERE it_id_template=1'. |
' AND it_i18n LIKE "%'.INS_LANGUE_DEFAUT.'"' ; |
|
if (!$tpl -> setTemplate($GLOBALS['ins_db']->getOne ($requete))) { |
echo 'erreur' ; |
} |
$tpl->setVariable('URL_INSCRIPTION', $GLOBALS['ins_url']->getURL()); |
return $tpl->get() ; |
|
} |
|
include_once 'inscription.fonct.wiki.php' ; |
if (INS_UTILISE_SPIP) include_once 'inscription.fonct.spip.php' ; |
|
96,7 → 116,7 |
* @return string HTML |
*/ |
function affiche_onglet_info() { |
include_once INS_CHEMIN_APPLI.'bibliotheque/inscription.fonct.php'; |
//include_once INS_CHEMIN_APPLI.'bibliotheque/inscription.fonct.php'; |
include_once INS_CHEMIN_APPLI.'bibliotheque/inscription.class.php'; |
if ( isset($_GET['voir_fiche']) ) { |
$res=info($_GET['voir_fiche'], 'fiche'); |
119,6 → 139,29 |
* @return string HTML |
*/ |
function Annuaire_recherche() { |
|
// On ajoute la fonction javascript |
// des case à 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()'"; |
GEN_stockerCodeScript($java) ; |
|
|
$res ='<h2>'.INS_RECHERCHE_ANNUAIRE_DES_INSCRITS.'</h2>'."\n"; |
$form =& new HTML_QuickForm('form_recherche_annuaire', 'post', str_replace('&', '&', $GLOBALS['ins_url']->getURL())); |
$squelette =& $form->defaultRenderer(); |
131,12 → 174,15 |
'<td style="padding:5px;text-align:left;">{element}</td>'."\n". |
'</tr>'."\n" ); |
$squelette->setElementTemplate( '<tr>'."\n".'<td colspan=2 style="padding:5px;">{label}{element}</td>'."\n".'</tr>'."\n", 'bouton_rechercher'); |
// La liste deroulante pour choisir entre structure et individus |
// uniquement si la constante INS_FORMULAIRE_STRUCTURE vaut 1 |
|
if (INS_FORMULAIRE_STRUCTURE == 1) { |
$option_type=array ('0' => INS_PERSONNES_OU_STRUCTURES, |
'1' => INS_PERSONNES, |
'2' => INS_STRUCTURES); |
$form->addElement('select', 'nom_type', INS_JE_RECHERCHE, $option_type); |
|
} |
//requete pour recuperer la liste des pays |
$requete = 'SELECT '.INS_CHAMPS_ID_PAYS.', '.INS_CHAMPS_LABEL_PAYS.' FROM '.INS_TABLE_PAYS.' WHERE '.INS_CHAMPS_I18N_PAYS.'="fr-FR"'; |
$resultat = $GLOBALS['ins_db']->query($requete) ; |
172,11 → 218,19 |
//affichage du formulaire |
$res .=$form->toHtml(); |
|
include_once INS_CHEMIN_APPLI.'/bibliotheque/bottin.class.php'; |
// On ajoute la liste des lettres cliquables |
$lettre = new lettresAlphabet($GLOBALS['ins_url']) ; |
$res .= $lettre->toHMTL(); |
|
$requete = ''; |
|
//on teste si l'on affiche le resultat de la recherche ou |
if (isset($_POST['nom_type'])) { |
if (isset($_POST['bouton_rechercher'])) { |
$requete = 'SELECT '.INS_CHAMPS_ID.', '.INS_CHAMPS_NOM.', '.INS_CHAMPS_PRENOM.', '.INS_CHAMPS_VILLE.', '.INS_CHAMPS_CODE_POSTAL; |
$requete .= ' FROM '.INS_ANNUAIRE.' WHERE '; |
$req_where=0; |
if (isset($_POST['nom_type'])) { |
if ($_POST['nom_type']==1) { |
$requete .= INS_CHAMPS_EST_STRUCTURE.'=0 '; |
$req_where=1; |
184,6 → 238,7 |
$requete .= INS_CHAMPS_EST_STRUCTURE.'=1 '; |
$req_where=1; |
} |
} |
if ($_POST['nom_pays']!='0'and$_POST['nom_pays']!='zz') { |
if ($req_where) { |
$requete .= 'AND '; |
208,12 → 263,26 |
} |
$requete .= '('.INS_CHAMPS_NOM.' LIKE "%'.$_POST['nom_annuaire'].'%"'. |
' OR '.INS_CHAMPS_PRENOM.' LIKE "%'.$_POST['nom_annuaire'].'%"'. |
' OR '.INS_CHAMPS_SIGLE_STRUCTURE.' LIKE "%'.$_POST['nom_annuaire'].'%"'. |
' OR '.INS_CHAMPS_DESCRIPTION.' LIKE "%'.$_POST['nom_annuaire'].'%") '; |
' OR '.INS_CHAMPS_SIGLE_STRUCTURE.' LIKE "%'.$_POST['nom_annuaire'].'%")'; |
} |
|
if (!$req_where) $requete .= '1'; |
$requete .=' ORDER BY '.INS_CHAMPS_NOM; |
|
|
// Cas ou on a clique sur une lettre |
} |
if (isset($_GET['lettre'])){ |
$requete = 'SELECT '.INS_CHAMPS_ID.', '.INS_CHAMPS_NOM.', '.INS_CHAMPS_PRENOM.', '.INS_CHAMPS_VILLE.', '.INS_CHAMPS_CODE_POSTAL; |
$requete .= ' FROM '.INS_ANNUAIRE.' WHERE '; |
$requete .= ' '.INS_CHAMPS_NOM.' like "'.$_GET['lettre'].'%"'; |
} |
|
if ($requete != '') { |
$resultat = $GLOBALS['ins_db']->query($requete); |
if (DB::isError($resultat)) { |
return ("Echec de la requete : $requete<br />".$resultat->getMessage()) ; |
} |
if ($resultat->numRows()>0) { |
$res .='<h2>'.INS_RESULTATS_RECHERCHE.' ('.$resultat->numRows().' '.INS_ENTREES.')</h2>'."\n"; |
$res .='<p class="zone_info">'.INS_CLIQUER_ELEMENT_LISTE.'</p>'."\n"; |
221,13 → 290,12 |
while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) { |
$donnees_membres[$i++]=$ligne; |
} |
$res .= listes_inscrit($donnees_membres); |
} |
else { |
return $res.listes_inscrit($donnees_membres); |
} else { |
$res .='<h2>'.INS_RESULTATS_RECHERCHE.'</h2>'."\n"; |
$res .= '<p class="zone_alert">'.INS_PAS_DE_RESULTATS.'</p>'."\n"; |
} |
} else { |
} |
$res .='<h2>'.INS_DIX_DERNIERES_INSCRIPTIONS.'</h2>'."\n"; |
$requete = 'SELECT '.INS_CHAMPS_ID.', '.INS_CHAMPS_NOM.', '.INS_CHAMPS_PRENOM.', '.INS_CHAMPS_VILLE.', '.INS_CHAMPS_CODE_POSTAL; |
$requete .= ' FROM '.INS_ANNUAIRE.' ORDER BY '.INS_CHAMPS_DATE.' DESC LIMIT 0 , 10'; |
238,11 → 306,9 |
$donnees_membres[$i++]=$ligne; |
} |
$res .= listes_inscrit($donnees_membres, 0); |
} |
else { |
} else { |
$res .= '<p class="zone_alert">'.INS_PAS_DE_RESULTATS.'</p>'."\n"; |
} |
} |
return $res ; |
} |
|
609,7 → 675,7 |
* @param array les valeurs renvoyés par le formulaire |
* @return |
*/ |
|
if (!function_exists('inscription_validee')) { |
function inscription_validee($valeurs) { |
inscription_insertion($valeurs) ; |
$GLOBALS['AUTH']->username = $valeurs['email'] ; |
621,7 → 687,7 |
inscription_lettre(INS_MAIL_INSCRIPTION_LISTE) ; |
} |
} |
|
} |
/** |
* Renvoie l'accueil de l'inscription |
* |
648,7 → 714,7 |
* |
* @return string HTML |
*/ |
function inscription_formulaire_envoi_passe() { |
function formulaire_envoi_passe() { |
$res = '<h2>'.INS_SI_PASSE_PERDU.'</h2>'."\n" ; |
$res .= '<form action="'.$GLOBALS['ins_url']->getURL().'&action=sendpasswd" method="post">'."\n" ; |
$res .= '<p class="label100">'.INS_EMAIL.' : </p>'."\n" ; |
662,7 → 728,7 |
} |
|
|
function inscription_insertion($valeur) { |
function insertion($valeur) { |
// =========== Insertion dans l'annuaire =================== |
// Génération du nom wikini à partir du nom et du prénom |
if (INS_UTILISE_WIKINI && INS_NOM_WIKINI_GENERE) { |
697,7 → 763,7 |
* @param array un tableau de valeur avec en clé les noms des champs du formulaire |
* @return void |
*/ |
function inscription_mise_a_jour($valeur, $id = '') { |
function mise_a_jour($valeur, $id = '') { |
// ====================Mise à jour dans l'annuaire gen_annuaire ==================== |
if ($id == '') { |
$id = $GLOBALS['AUTH']->getAuthData(INS_CHAMPS_ID); |
722,7 → 788,7 |
* @return string une requete du type champs="valeur",... |
*/ |
|
function inscription_requete_annuaire($valeur) { |
function requete_annuaire($valeur) { |
$req = INS_CHAMPS_NOM.'="'.addslashes($valeur['nom']).'", '; |
if (isset($valeur['est_structure']) && $valeur['est_structure'] == 0) |
$req .= INS_CHAMPS_PRENOM.'="'.addslashes($valeur['prenom']).'", '; |
790,7 → 856,7 |
* |
* @return array Valeurs par défaut du formulaire d'inscription |
*/ |
function inscription_formulaire_defaults($id = '') { |
function formulaire_defaults($id = '') { |
if ($id == '') { |
$id = $GLOBALS['AUTH']->getAuthData(INS_CHAMPS_ID); |
} |
978,7 → 1044,7 |
* |
* @return boolean |
*/ |
function inscription_verif_doublonMail($mail, $id = '') { |
function verif_doublonMail($mail, $id = '') { |
if ($id == '') { |
if (isset ($GLOBALS['AUTH'])) { |
$id = $GLOBALS['AUTH']->getAuthData(INS_CHAMPS_ID) ; |
1006,7 → 1072,7 |
} |
|
|
function inscription_envoie_passe() { |
function envoie_passe() { |
$res=''; |
$requete = 'SELECT '.INS_CHAMPS_MAIL.' FROM '.INS_ANNUAIRE.' WHERE '.INS_CHAMPS_MAIL.'="'.$_POST['mail'].'"' ; |
$resultat = $GLOBALS['ins_db']->query($requete) ; |
1073,7 → 1139,7 |
* @return |
*/ |
|
function inscription_envoie_mail() //A COMPLETER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
function envoie_mail() //A COMPLETER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
{ |
include_once PAP_CHEMIN_RACINE.'api/pear/Mail/mime.php' ; |
include_once PAP_CHEMIN_RACINE.'api/pear/Mail.php' ; |
1131,7 → 1197,7 |
* @return string un nom wiki valide |
*/ |
|
function inscription_genere_nom_wiki($prenom, $nom) { |
function genere_nom_wiki($prenom, $nom) { |
// 1. suppression des espaces |
$nom = trim ($nom) ; |
$prenom = trim ($prenom) ; |
1154,7 → 1220,7 |
* @return string la chaine épurée |
*/ |
|
function inscription_trim_non_ascii ($nom) { |
function trim_non_ascii ($nom) { |
$premiere_lettre = true ; |
for ($i = 0; $i < strlen ($nom); $i++) { |
if (!preg_match ('/[a-zA-Z0-9]/', $nom[$i])) { |
1192,7 → 1258,7 |
* |
* SORTIE : chaine de $n caractères pris dans une liste $type |
*/ |
function inscription_create_new_random($n,$type="") |
function create_new_random($n,$type="") |
{ |
$str = ""; |
|
1220,7 → 1286,7 |
* @param string Nom de la table |
* return interger l'identifiant |
*/ |
function inscription_nextId($table, $colonne_identifiant) |
function nextId($table, $colonne_identifiant) |
{ |
$requete = 'select MAX('.$colonne_identifiant.') as maxi from '.$table ; |
$resultat = $GLOBALS['ins_db']->query($requete) ; |
1240,6 → 1306,9 |
//-- Fin du code source ------------------------------------------------------------ |
/* |
* $Log$ |
* Revision 1.9 2006/12/12 10:00:07 alexandre_tb |
* Pettites modifications pour la généricité de la carto. Mais c est en cours donc prudence. |
* |
* Revision 1.8 2006/12/01 13:23:15 florian |
* integration annuaire backoffice |
* |