/** * 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; }
/** * 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; }