hellofacteurV1/ctrl/admin_rubriques_infos_tests...

76 lines
2.3 KiB
PHP
Executable File

<?php
/**
* Script testant les données envoyées lors de l'enregistrement d'une nouvelle rubrique
* ou encore de sa mise à jour
* Peut être appelé en ajax ou directement en php si JS désactivé
*
**/
if(!empty($_POST["id_rubrique"]))
$form["id_rubrique"]=$_POST["id_rubrique"];//utile pour certains tests sur autres attributs de l'objet.
$form["nom"]=trim($_POST["nom"]);
$form["description"]=trim($_POST["description"]);
if(!empty($_POST["reference_ok"]))
$form["reference_ok"]=1;
else
$form["reference_ok"]=0;
$ajax_on=false;
if(!empty($_POST["ajax"]))
{
$ajax_on=true;
session_save_path(SESSIONS_REP);
ini_set("session.use_only_cookies",1);
session_start();
header('Content-Type: text/html; charset=utf-8');
require_once("../modele/FclFlux_rubrique.php");
}
$msg_form=array();
if(empty($_POST["nom"]))
$msg_form[]=ERREUR_UTILISA_CHAMPS_ABSENTS;
else
{
if($_SESSION["statut"]!="administrateur")
$msg_form[]=ERREUR_IMPREVUE;
else
{
$auteur=new FclFlux_utilisateur();
$auteur->id_utilisateur=$_SESSION["id_utilisateur"];
$form["auteur"]=$auteur;
if(!empty($_POST["mere_id"]))
{
$mere=new FclFlux_rubrique();
$mere->id_rubrique=$_POST["mere_id"];
$form["rubrique_sup"]=$mere;
}
require_once("../modele/connexion-bd.php");
$form["limites"]["nom_long_min"]=RUBRIQUE_MIN_NOM;
$form["limites"]["nom_long_max"]=RUBRIQUE_MAX_NOM;
$form["limites"]["description_long_max"]=RUBRIQUE_MAX_DESCRIPTION;
$rubrique=new FclFlux_rubrique($form);//test les différentes valeurs fournies
if(!empty($rubrique->erreurs))
$msg_form=array_merge($rubrique->erreurs,$msg_form);
if(empty($msg_form))
{
if(!empty($_POST["id_rubrique"]))
{
$rubrique->id_rubrique=intval(trim($_POST["id_rubrique"]));
$action=$rubrique->actualise();
}
else
$action=$rubrique->ajout();
if(!empty($rubrique->erreurs))
$msg_form=array_merge($rubrique->erreurs,$msg_form);
elseif($action===false)
$msg_form[]=ERREUR_IMPREVUE;
if(empty($msg_form))
$msg_form[]=MSG_ADMIN_VALID;
}
$Bd=null;
}
}
if((!empty($msg_form))&&($ajax_on))
{
if(($msg_form[0]==MSG_ADMIN_VALID)&&(!empty($rubrique->id_rubrique)))
echo $rubrique->id_rubrique;//tout s'est bien passé, je recharge l'abonnement en ajax
else
echo get_html_alerte_msg($msg_form);
}