81 lines
2.5 KiB
PHP
Executable File
81 lines
2.5 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Script testant les données envoyées lors de la mise à jour d'un post.
|
|
* Peut être appelé en ajax ou directement en php si JS désactivé
|
|
*
|
|
**/
|
|
$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_post.php");
|
|
}
|
|
$msg_form=array();
|
|
if(((empty($_POST["auteur_id"]))&&(empty($_POST["flux_id"])))||((empty($_POST["hub_id"]))&&(empty($_POST["liste_hubs"])))||(empty($_POST["ancre"]))||((empty($_POST["url"]))&&(empty($_POST["annonce"]))))
|
|
$msg_form[]=ERREUR_UTILISA_CHAMPS_ABSENTS;
|
|
else
|
|
{
|
|
if($_SESSION["statut"]!="administrateur")
|
|
$msg_form[]=ERREUR_IMPREVUE;
|
|
else
|
|
{
|
|
if(empty($Bd))
|
|
require("../modele/connexion-bd.php");
|
|
$form["ancre"]=trim($_POST["ancre"]);
|
|
$form["url"]=trim($_POST["url"]);
|
|
$form["annonce_html"]=trim($_POST["annonce"]);
|
|
$form["time_diffusion"]=trim($_POST["time_diffusion"]);
|
|
$form["time_expiration"]=trim($_POST["time_expiration"]);
|
|
$form["limites"]["ancre_long_min"]=POST_MIN_ANCRE;
|
|
$form["limites"]["ancre_long_max"]=POST_MAX_ANCRE;
|
|
$form["limites"]["url_long_max"]=POST_MAX_URL;
|
|
$form["limites"]["annonce_long_min"]=POST_MIN_ANNONCE;
|
|
$form["limites"]["annonce_long_max"]=POST_MAX_ANNONCE;
|
|
$hub=new FclFlux_hub();
|
|
if(!empty($_POST["id_post"]))
|
|
$hub->id_hub=intval(trim($_POST["hub_id"]));
|
|
else
|
|
$hub->id_hub=intval(trim($_POST["liste_hubs"]));
|
|
$form["hub"]=$hub;
|
|
$post=new FclFlux_post($form);
|
|
if(!empty($post->erreurs))
|
|
$msg_form=array_merge($post->erreurs,$msg_form);
|
|
if(empty($msg_form))
|
|
{
|
|
if(!empty($_POST["id_post"]))
|
|
{// mise à jour d'un post
|
|
$post->id_post=intval(trim($_POST["id_post"]));
|
|
$action=$post->actualise();
|
|
}
|
|
else
|
|
{//enregistrement d'un nouveau post.
|
|
$auteur=new FclFlux_utilisateur();
|
|
$auteur->id_utilisateur=intval(trim($_POST["auteur_id"]));
|
|
$post->set_auteur($auteur);
|
|
if(empty($post->erreurs))
|
|
$action=$post->ajout();
|
|
}
|
|
if(!empty($post->erreurs))
|
|
$msg_form=array_merge($post->erreurs,$msg_form);
|
|
elseif($action===false)
|
|
$msg_form[]=ERREUR_IMPREVUE;
|
|
if(empty($msg_form))
|
|
{
|
|
$msg_form[]=MSG_ADMIN_VALID;
|
|
$form["id_post"]=$post->id_post;//utile pour réaffichage si pas en ajax
|
|
}
|
|
}
|
|
$Bd=null;
|
|
}
|
|
}
|
|
if((!empty($msg_form))&&($ajax_on))
|
|
{
|
|
if(($msg_form[0]==MSG_ADMIN_VALID)&&(!empty($post->id_post)))
|
|
echo $post->id_post;//tout s'est bien passé, je recharge le post en ajax
|
|
else
|
|
echo get_html_alerte_msg($msg_form);
|
|
} |