Example #1
0
/**
 * Verification du formulaire
 * @return
 */
function formulaires_adhi3_recherche_verifier_dist($type_objet, $id_objet)
{
    global $visiteur_session;
    global $email_env;
    if (_request('mailer_liste')) {
        $auteurs_checked = _request('check_aut');
        if (is_array($auteurs_checked)) {
            //include_spip('inc/autoriser');
            foreach ($auteurs_checked as $key => $val) {
                $email_envoi = sql_fetsel('nom_famille, prenom, email', 'spip_auteurs', 'id_auteur=' . intval($val));
                // Recherche email_envoi ou email webmaster pour détecter les emails inactifs
                $email_env = adhclub_imp_email_fictif(intval($val));
                if ($email_envoi['email'] == $email_env['tmp']) {
                    $erreurs['check_aut' . $val] = array('nom' => $email_envoi['nom_famille'], 'prenom' => $email_envoi['prenom'], 'email' => $email_envoi['email']);
                }
            }
            if (count($erreurs) > 0) {
                foreach ($erreurs as $erreur => $infos) {
                    $infos_erreurs = "<p>" . _T('adhclub:erreur_email', $infos) . "</p>";
                }
                $erreurs['message_erreur'] = "<p>" . _T('adhclub:erreur_envoi_email') . "</p>";
                $erreurs['message_erreur'] .= $infos_erreurs;
            }
        } else {
            $erreurs['message_erreur'] = _T('adhclub:no_user_selected');
        }
    }
    return $erreurs;
}
Example #2
0
/**
 * remise en forme des champs specifiques associes
 * 		Ceux qui doivent etre importes
 *
 * @param $rec_intg{int}
 * @param $id_auteur{array}
 * @param $assoc_field{array}
 * 
 * @return $rec_creat
 */
function adhclub_imp_field_reformate($id_auteur, $assoc_field, $rec_intg)
{
    if (!is_array($rec_creat)) {
        $rec_creat = array();
    }
    /*$debug1= "DEBUG adhclub JR : inc/adh_import - adhclub_imp_field_reformate - Pt10 - <br />";
    	echo "<br />", $debug1;
    	echo "rec_intg= <br />"; var_dump($rec_intg); echo ".<br />";
    	echo "assoc_field= <br />"; var_dump($assoc_field); echo ".<br />";
    	echo "FIN ", $debug1;
    	*/
    // Traitement des champs en entree (rec_intg)
    foreach (array_keys($assoc_field) as $tablekey) {
        /*$debug1= "DEBUG adhclub JR : inc/adh_import - adhclub_imp_field_reformate - Pt11 - <br />";
        		echo "<br />", $debug1;
        		echo "tablekey= $tablekey.<br />";
        		echo "FIN ", $debug1;
        		*/
        switch ($tablekey) {
            case 'souscription':
                // la date n'est pas dans la forme correcte
                $rec_creat[$tablekey] = substr($rec_intg[$tablekey], 6, 4) . '-' . substr($rec_intg[$tablekey], 3, 2) . '-' . substr($rec_intg[$tablekey], 0, 2);
                //unset($assoc_field[$tablekey]);
                break;
            case 'prenom':
                $patterns = '/ /';
                $replacements = '-';
                $prenom = preg_replace($patterns, $replacements, $rec_intg[$tablekey]);
                // TODO voir F() ucfirst($prenom) ??
                $rec_creat[$tablekey] = strtoupper(substr($prenom, 0, 1)) . strtolower(substr(trim($prenom), 1));
                //unset($assoc_field[$tablekey]);
                break;
            case 'nom':
                // chargement du nom car ne passera pas dans default
                // C'est le pseudo (Prenom dot Nom)
                $patterns = '/ /';
                $replacements = '.';
                $prenom = preg_replace($patterns, $replacements, $rec_intg['prenom']);
                $nom = preg_replace($patterns, $replacements, $rec_intg[$tablekey]);
                // TODO voir F() ucfirst($prenom) ??
                $rec_creat[$tablekey] = strtoupper(substr($prenom, 0, 1)) . strtolower(substr(trim($prenom), 1)) . '.' . strtoupper(substr($nom, 0, 1)) . strtolower(substr(trim($nom), 1));
                //unset($assoc_field[$tablekey]);
                break;
            case 'nom_famille':
                $patterns = '/ /';
                $replacements = '-';
                $rec_creat[$tablekey] = preg_replace($patterns, $replacements, $rec_intg['nom']);
                //unset($assoc_field[$tablekey]);
                break;
            case 'login':
                // login (2 premieres lettres du prenom suivi de nom simple(1er))==> voir inscription2_definir_login','inc'
                $lengthname = stripos(trim($rec_intg['nom']), '/ /');
                if ($lengthname = false) {
                    $nom = trim($rec_intg['nom']);
                } else {
                    $nom = substr(trim($rec_intg['nom']), 0, $lengthname);
                }
                $rec_creat['login'] = strtolower(substr($rec_intg['prenom'], 0, 2)) . strtolower(trim($rec_intg['nom']));
                /*$debug1= "DEBUG adhclub JR : inc/adh_import adhclub_imp_field_reformate-Pt221 - <br />";
                		echo "<br />", $debug1;
                		$field=$rec_creat['login'];
                		echo "rec_creat(login)= $field.<br />";
                		echo "FIN ", $debug1;
                		*/
                //unset($assoc_field[$tablekey]);
                break;
            case 'email_corr':
                // email_corr (= email si existe, genere virtuellement sinon)
                if ($rec_intg['email']) {
                    $rec_creat[$tablekey] = $rec_intg['email'];
                } else {
                    $email_env = adhclub_imp_email_fictif($id_auteur);
                    $rec_creat[$tablekey] = $email_env['tmp'];
                }
                //unset($assoc_field[$tablekey]);
                break;
            case 'email':
                // email (= email si existe et disponible, genere virtuellement sinon)
                if ($rec_intg[$tablekey]) {
                    $rec_creat[$tablekey] = adhclub_imp_email($id_auteur, $rec_intg[$tablekey]);
                } else {
                    $email_env = adhclub_imp_email_fictif($id_auteur);
                    $rec_creat[$tablekey] = $email_env['tmp'];
                }
                //unset($assoc_field[$tablekey]);
                break;
            case 'civilite':
                // sexe (civilite M=>M, Mlle=>F, Mme=>F)
                switch ($rec_intg[$tablekey]) {
                    case 'Mme':
                        $rec_creat[$tablekey] = 'F';
                        break;
                    case 'Mlle':
                        $rec_creat[$tablekey] = 'F';
                        break;
                    case 'M':
                        $rec_creat[$tablekey] = 'M';
                        break;
                    default:
                        $rec_creat[$tablekey] = $rec_intg[$tablekey];
                        break;
                }
                //unset($assoc_field[$tablekey]);
                break;
            case 'naissance':
                // la date n'est pas dans la forme correcte
                $rec_creat[$tablekey] = substr($rec_intg[$tablekey], 6, 4) . '-' . substr($rec_intg[$tablekey], 3, 2) . '-' . substr($rec_intg[$tablekey], 0, 2);
                //unset($assoc_field[$tablekey]);
                break;
            case 'adresse1':
                $rec_creat[$tablekey] = adhclub_imp_adresse($rec_intg[$tablekey], $rec_intg['adresse2'], $rec_intg['adresse3']);
                //unset($assoc_field[$tablekey]);
                //unset($assoc_field['adresse2']);
                //unset($assoc_field['adresse3']);
                break;
            case 'pays':
                // Le chargement du pays ne doit pas passer dans default
                // @todo-JR-20121030-La recherche du pays devrait passer par plugin Pays ISO 3166-1.
                // Solution provisoire
                switch ($rec_intg[$tablekey]) {
                    case 'FRANCE':
                        $rec_creat[$tablekey] = '314';
                        break;
                    default:
                        $rec_creat[$tablekey] = '00';
                        break;
                }
                //unset($assoc_field[$tablekey]);
                break;
                // Traitement des champs complementaires
            // Traitement des champs complementaires
            case 'source':
                // source (spip) pour indiquer que c'est 1 fiche interne et non de source externe.
                $rec_creat[$tablekey] = 'spip';
                //unset($assoc_field[$tablekey]);
                break;
            case 'divers':
                // divers (adhclub) pour indiquer que c'est le plugin a touche a la fiche.
                $rec_creat[$tablekey] = 'adhclub';
                //unset($assoc_field[$tablekey]);
                break;
            case 'certiflimite':
                // certiflimite (0001-01-01)
                $rec_creat[$tablekey] = '0001-01-01';
                //unset($assoc_field[$tablekey]);
                break;
            case 'certifqualif':
                // certifqualif ('')
                $rec_creat['$tablekey'] = '';
                break;
            case 'certifaspirine':
                // certifaspirine ('non')
                $rec_creat['certifaspirine'] = '';
                break;
                // Traitement des champs ordinaires, sans reprise de donnée
            // Traitement des champs ordinaires, sans reprise de donnée
            default:
                $rec_creat[$tablekey] = $rec_intg[$tablekey];
                /*$debug1= "DEBUG adhclub JR : inc/adh_import adhclub_imp_field_reformate-Pt299 - <br />";
                		echo "<br />", $debug1;
                		echo "tablekey= $tablekey.<br />";
                		$field=$rec_intg['licence'];
                		echo "rec_intg(licence)= $field.<br />";
                		$field=$rec_creat['licence'];
                		echo "rec_creat(licence)= $field.<br />";
                		echo "FIN ", $debug1;
                		*/
                break;
        }
    }
    /*$debug1= "DEBUG adhclub JR : inc/adh_import - adhclub_imp_field_reformate - Pt999 - <br />";
    	echo "<br />", $debug1;
    	echo "rec_creat= <br />"; var_dump($rec_creat); echo ".<br />";
    	echo "FIN ", $debug1;
    	*/
    return $rec_creat;
}