function formulaires_tri_stages_verifier_dist() { $erreurs = array(); // vérfication champs ville stage qui peut comporter plusieurs villes $ville_stage = _request('ville_stage'); if ($ville_stage) { preg_match_all("/[-0-9a-zA-Z_]+/", $ville_stage, $recherche); $nbre = count($recherche[0]); $sortie = ''; if ($recherche && $nbre > 1) { foreach ($recherche[0] as $k => $v) { if ($k < $nbre - 1) { $sortie .= $v . ', '; } else { $sortie .= $v; } } if ($input == $sortie) { return; } else { // $erreurs["ville_stage"] = _T('fraap_candidatures:erreur_champ_ville_stage'); set_request("ville_stage", $sortie); } } } // vérification des dates (via spip-bonux) $horaire = false; $date_debut = verifier_corriger_date_saisie('debut', $horaire, $erreurs); $date_fin = verifier_corriger_date_saisie('fin', $horaire, $erreurs); if ($date_debut and $date_fin and $date_fin < $date_debut) { $erreurs['date_fin'] = _T('fraap_candidatures:erreur_date_avant_apres'); } return $erreurs; }
function formulaires_editer_evenement_verifier_dist($id_evenement='new', $id_article=0, $retour='', $lier_trad = 0, $config_fonc='evenements_edit_config', $row=array(), $hidden=''){ $erreurs = formulaires_editer_objet_verifier('evenement',$id_evenement,array('titre','date_debut','date_fin')); include_spip('inc/date_gestion'); $horaire = _request('horaire')=='non'?false:true; $date_debut = verifier_corriger_date_saisie('debut',$horaire,$erreurs); $date_fin = verifier_corriger_date_saisie('fin',$horaire,$erreurs); if ($date_debut AND $date_fin AND $date_fin<$date_debut) $erreurs['date_fin'] = _T('agenda:erreur_date_avant_apres'); include_spip('spip_bonux_fonctions'); if (count($id = picker_selected(_request('parents_id'),'article')) AND $id = reset($id) AND $id = sql_getfetsel('id_article','spip_articles','id_article='.intval($id))){ // reinjecter dans id_parent set_request('id_parent',$id); } if (!$id_parent = intval(_request('id_parent'))) $erreurs['id_parent'] = _T('agenda:erreur_article_manquant'); else { if (!autoriser('creerevenementdans','article',$id_parent)) $erreurs['id_parent'] = _T('agenda:erreur_article_interdit'); } #if (!count($erreurs)) # $erreurs['message_erreur'] = 'ok?'; return $erreurs; }
function formulaires_editer_candidature_verifier_dist($id_candidature = 'new', $id_auteur = '', $retour = '') { $erreurs = formulaires_editer_objet_verifier('candidature', $id_candidature, array('regions', 'date_debut', 'date_fin', 'ecole', 'diplome', 'niveau', 'competences_offre', 'competences_recherche')); // vérification des dates (via spip-bonux) include_spip('inc/date_gestion'); $horaire = false; $date_debut = verifier_corriger_date_saisie('debut', $horaire, $erreurs); $date_fin = verifier_corriger_date_saisie('fin', $horaire, $erreurs); if ($date_debut and $date_fin and $date_fin < $date_debut) { $erreurs['date_fin'] = _T('fraap_candidatures:erreur_date_avant_apres'); } return $erreurs; }
function action_evenement_set($id_evenement, $set=null){ $err = ''; if (is_null($set)){ $c = array(); foreach (array( 'titre', 'descriptif', 'lieu', 'id_parent', 'inscription','places','adresse', ) as $champ) $c[$champ] = _request($champ); $c['horaire'] = _request('horaire')=='non'?'non':'oui'; include_spip('inc/date_gestion'); $date_debut = verifier_corriger_date_saisie('debut',$c['horaire']=='oui',$erreurs); $date_fin = verifier_corriger_date_saisie('fin',$c['horaire']=='oui',$erreurs); $c['date_debut'] = date('Y-m-d H:i:s',$date_debut); $c['date_fin'] = date('Y-m-d H:i:s',$date_fin); } else $c = $set; include_spip('inc/modifier'); agenda_action_revision_evenement($id_evenement, $c); agenda_action_revision_evenement_mots($id_evenement, _request('mots',$set)); agenda_action_revision_evenement_repetitions($id_evenement,_request('repetitions',$set), _request('mots',$set)); // Modification de statut, changement de rubrique ? $c = array(); foreach (array( 'id_parent' ) as $champ) $c[$champ] = _request($champ,$set); $err .= agenda_action_instituer_evenement($id_evenement, $c); return $err; }
function action_candidature_set($id_candidature, $set = null) { $err = ''; if (is_null($set)) { $c = array(); foreach (array('regions', 'ville_stage', 'date_debut', 'date_fin', 'ecole', 'ville_ecole', 'diplome', 'niveau', 'competences_offre', 'competences_recherche') as $champ) { $c[$champ] = _request($champ); } } else { $c = $set; } $c['regions'] = serialize($c['regions']); $c['competences_offre'] = serialize($c['competences_offre']); $c['competences_recherche'] = serialize($c['competences_recherche']); include_spip('inc/date_gestion'); $horaire = false; $date_debut = verifier_corriger_date_saisie('debut', $horaire, $erreurs); $date_fin = verifier_corriger_date_saisie('fin', $horaire, $erreurs); $c['date_debut'] = date('Y-m-d', $date_debut); $c['date_fin'] = date('Y-m-d', $date_fin); include_spip('inc/modifier'); stage_action_revision_candidature($id_candidature, $c); return $err; }
function formulaires_editer_evenement_traiter_dist($id_evenement = 'new', $id_article = 0, $retour = '', $lier_trad = 0, $config_fonc = 'evenements_edit_config', $row = array(), $hidden = '') { set_request('horaire', _request('horaire') == 'non' ? 'non' : 'oui'); set_request('inscription', _request('inscription') ? 1 : 0); include_spip('inc/date_gestion'); $erreurs = array(); $date_debut = verifier_corriger_date_saisie('debut', _request('horaire') == 'oui', $erreurs); $date_fin = verifier_corriger_date_saisie('fin', _request('horaire') == 'oui', $erreurs); set_request('date_debut', date('Y-m-d H:i:s', $date_debut)); set_request('date_fin', date('Y-m-d H:i:s', $date_fin)); $res = formulaires_editer_objet_traiter('evenement', $id_evenement, $id_article, 0, $retour, $config_fonc, $row, $hidden); // si c'est une creation dans un article publie, passer l'evenement en publie // l'article peut être renseigné/modifié par l'utilisateur dans le formulaire. On le retrouve. if (!intval($id_evenement) and $id_article = sql_getfetsel('id_article', 'spip_evenements', 'id_evenement=' . $res['id_evenement']) and objet_test_si_publie('article', $id_article)) { // sera refuse si auteur pas autorise evenement_modifier($res['id_evenement'], array('statut' => 'publie')); } // a la creation, documenter la date de creation if (!intval($id_evenement)) { evenement_modifier($res['id_evenement'], array('date_creation' => date('Y-m-d H:i:s'))); } $id_evenement = $res['id_evenement']; if ($res['redirect']) { if (strpos($res['redirect'], 'article') !== false) { $id_article = sql_getfetsel('id_article', 'spip_evenements', 'id_evenement=' . intval($id_evenement)); $res['redirect'] = parametre_url($res['redirect'], 'id_article', $id_article); } } return $res; }
function formulaires_editer_message_traiter_dist($id_message = 'new', $type = 'message', $retour = '', $accepter_email = 'oui', $destinataires = '', $titre = '', $texte = '') { // preformater le post // fixer le type de message // sans modifier le type d'un message existant if (intval($id_message) and $t = sql_getfetsel('type', 'spip_messages', 'id_message=' . intval($id_message))) { $type = $t; } set_request('type', $type); // formater les destinataires $d = _request('destinataires'); if (!$d) { $d = array(); } include_spip('inc/messages'); $d = messagerie_nettoyer_destinataires($d); // si email non acceptes, extraire les seuls id_auteur de la liste proposee if ($accepter_email !== 'oui') { // separer id_auteur et email $d = messagerie_destiner($d); // ne conserver que les id_auteur $d = reset($d); } // reinjecter sous forme de chaine set_request('destinataires', implode(',', $d)); // fixer l'auteur ! set_request('id_auteur', $GLOBALS['visiteur_session']['id_auteur']); if (_request('rv') == 'oui') { include_spip('inc/date_gestion'); $erreurs = array(); $date_debut = verifier_corriger_date_saisie('debut', true, $erreurs); $date_fin = verifier_corriger_date_saisie('fin', true, $erreurs); set_request('date_heure', date('Y-m-d H:i:s', $date_debut)); set_request('date_fin', date('Y-m-d H:i:s', $date_fin)); } else { set_request('date_heure'); set_request('date_fin'); } // on gere par les traitements standard // la diffusion du message se fait par pipeline post_edition sur instituer // et notification $res = formulaires_editer_objet_traiter('message', $id_message, 0, 0, $retour, ''); if ($id_message = $res['id_message'] and !_request('draft')) { include_spip('action/editer_objet'); objet_modifier('message', $id_message, array('statut' => 'publie')); // apres en message envoyes, retourner sur la boite d'envoi plutot que sur le message if ($res['redirect'] == generer_url_ecrire('message', 'id_message=' . $id_message)) { $res['redirect'] = generer_url_ecrire('messages', 'quoi=envoi'); } } set_request('destinataires', explode(',', _request('destinataires'))); return $res; }
/** * Compat ascendante pour d'autre plugins * http://zone.spip.org/trac/spip-zone/changeset/36546 */ function agenda_verifier_corriger_date_saisie($suffixe,$horaire,&$erreurs){ include_spip('inc/date_gestion'); return verifier_corriger_date_saisie($suffixe,$horaire,$erreurs); }