linea21-modules
[ class tree: linea21-modules ] [ index: linea21-modules ] [ all elements ]

Source for file add.php

Documentation is available at add.php

  1. <?php
  2. /**
  3.  * @package linea21.modules
  4.  * @subpackage news
  5.  * @author linea21 <info@linea21.com>
  6.  * @version $id SVN
  7.  * @access public
  8.  * @license http://opensource.org/licenses/gpl-3.0.html
  9.  */
  10.  
  11. //////////// Check Inclusion de pages ////////////
  12. if (!function_exists('AuthenthificationProcess')) {
  13.   include_once("../lib/lib_common.php");
  14.   ReloadIndex('admin');
  15. }
  16. ////////////
  17.  
  18. //////////// Check Droits utilisateur ////////////
  19. if (!HaveRight('news')) ReloadIndex('admin');
  20. ////////////
  21. ?>
  22.  
  23. <div id="chemin">
  24. <ul>
  25.     <li><a href="index.php" class="chemin_home"><?php echo _t('way','home')?></a>
  26.     </li>
  27.     <li><a href="<?php echo $rub_link?>" id="chemin_<?php echo $rub?>"
  28.         class="chemin_rub"><?php echo _t('menu','news')?></a></li>
  29.     <li><span><?php echo formatNavTitle(_t('news','add'))?></span></li>
  30. </ul>
  31. </div>
  32. <!--end barre haute -->
  33. <?php
  34. $form_title='';
  35. $form_header='';
  36. $form_body='';
  37. $mask_template_1='';
  38. $mask_template_2='';
  39. $mask_template_3='';
  40. $mask_template_4=" selected=\"selected\"";
  41. $form_theme=-1;
  42. $form_scale=-1;
  43. $form_level=-1;
  44. $layer_tpl_1_2 "style=\"display:none;\"";
  45. $layer_tpl_3 "style=\"display:none;\"";
  46. $mask_statut_P="checked=\"checked\"";
  47. $mask_statut_D='';
  48.  
  49.  
  50. $news_object new news;
  51.  
  52. if(isset($_POST['enregistrer'])) {
  53.   $data_table=unserialize(urldecode($_POST['data_table']));
  54.   $result=$news_object->AddNews($data_table$sql_object);
  55.   $link_confirm="confirm.php?rub=".$rub."&todo=".$todo;
  56.   if(is_numeric($result)) header("Location: ".$link_confirm);
  57.   else  system_error();
  58. }
  59.  
  60. if(isset($_POST['valider'])) {
  61.   $table[0]=$_POST['news_title'];
  62.   $table[1]=$_POST['news_header'];
  63.   $table[2]=$_POST['news_body'];
  64.   $table[3]=$_POST['news_theme'];
  65.   $table[4]=$_POST['news_scale'];
  66.   $table[5]=$_POST['news_level'];
  67.   $table[6]=$_POST['news_template'];
  68.   $table[8]=0//range
  69.   $table[9]=GetSessionElement('id')// ID posteur
  70.   $table[10]=''// date de péremption
  71.   $table[11]='N'// is_national
  72.   $table[12]=$_POST['news_statut'];
  73.  
  74.   $news_objectnew news;
  75.   $integrity=$news_object->CheckDataIntegrity($table);
  76.  
  77.   if((!isset($_FILES['news_visuel1']|| $_FILES['news_visuel1']['name']==''&& ($_POST['news_template']==|| $_POST['news_template']==2)) $files_integrity=_t('news','no_visu1');
  78.   if(((!isset($_FILES['news_visuel1']|| $_FILES['news_visuel1']['name']==''|| (!isset($_FILES['news_visuel2']|| $_FILES['news_visuel2']['name']=='')) && $_POST['news_template']==3$files_integrity=_t('news','no_visu2');
  79.   if(isset($files_integrity&& !is_string($integrity))  $integrity=$files_integrity;
  80.  
  81.   if(!is_string($integrity)) {
  82.     if ($_POST['news_template'!= 4{
  83.       include_once('../class/system/class.upload.php');
  84.       include_once('../class/system/class.image.php');
  85.       $image_object new image;
  86.       $upload_object new upload;
  87.       $upload1 $_FILES['news_visuel1'];
  88.       $size_integrity=$upload_object->CheckMaxFile($upload1['size']$news_object->UPLOAD_MAX_MO);
  89.       if(is_string($size_integrity)) $integrity=$size_integrity;
  90.       $format_integrity=$upload_object->CheckExtImage($upload1['name']);
  91.       if(is_string($format_integrity)) $integrity=$format_integrity;
  92.           
  93.       if($_POST['news_template'== 3{
  94.         $upload2 $_FILES['news_visuel2'];
  95.         $size_integrity=$upload_object->CheckMaxFile($upload2['size']$news_object->UPLOAD_MAX_MO);
  96.         if(is_string($size_integrity)) $integrity=$size_integrity;
  97.         $format_integrity=$upload_object->CheckExtImage($upload2['name']);
  98.         if(is_string($format_integrity)) $integrity=$format_integrity;
  99.       }
  100.       if(!is_string($integrity)) {
  101.         $result=$sql_object->DBSelect($req_max_news_id'OBJECT');
  102.         $dir_name=($result[0]->maxid+1).'/';
  103.         $destination="../".$news_object->URI_INPUT.$dir_name;
  104.  
  105.         $final_name="1.".$upload_object->GetExtension($upload1['name']);
  106.         $visual_link1=$destination.$final_name;
  107.         $table[7]=$news_object->URI_INPUT.$dir_name.$final_name;
  108.         $result_upload=$upload_object->UploadFile($upload1$final_name$destination);
  109.         $upload_object->CheckMimeImageType($visual_link1);
  110.  
  111.         // création des thumbs
  112.         $min_name=get_min_name($destination.$final_name);
  113.         $image_object->ThumbCreate($destination.$final_name$min_name $news_object->MAX_PHOTO_MIN_WIDTH);
  114.  
  115.         // on retaille l'original au besoin.
  116.         if(PHOTO_RESIZE==true && ExcedMaxSize($destination.$final_name$news_object->MAX_PHOTO_MAX_WIDTH)) {
  117.           $image_object->ThumbCreate($destination.$final_name$destination.$final_name $news_object->MAX_PHOTO_MAX_WIDTH);
  118.         }
  119.  
  120.         // préparation de l'affichage de la miniature
  121.         $visual_link1=EnlargeImage($visual_link1);
  122.  
  123.         if($_POST['news_template'== 3{
  124.           $final_name="2.".$upload_object->GetExtension($upload2['name']);
  125.           $visual_link2=$destination.$final_name;
  126.           $table[7.= '|'.$news_object->URI_INPUT.$dir_name.$final_name;
  127.           $result_upload=$upload_object->UploadFile($upload2$final_name$destination);
  128.           $upload_object->CheckMimeImageType($visual_link2);
  129.  
  130.           // création des thumbs
  131.           $min_name=get_min_name($destination.$final_name);
  132.           $image_object->ThumbCreate($destination.$final_name$min_name $news_object->MAX_PHOTO_MIN_WIDTH);
  133.               
  134.           // on retaille l'original au besoin.
  135.           if(PHOTO_RESIZE==true && ExcedMaxSize($destination.$final_name$news_object->MAX_PHOTO_MAX_WIDTH)) {
  136.             $image_object->ThumbCreate($destination.$final_name$destination.$final_name $news_object->MAX_PHOTO_MAX_WIDTH);
  137.           }
  138.               
  139.           // préparation de l'affichage de la miniature
  140.           $visual_link2=EnlargeImage($visual_link2);
  141.  
  142.         }
  143.       }
  144.     }
  145.   }
  146.   if(is_string($integrity)) {
  147.     $text_format='2FIELD';
  148.   else {
  149.     $text_format='2HTML';
  150.   }
  151.   $form_title=formatText($_POST['news_title']$text_format);
  152.   $form_header=formatText($_POST['news_header']$text_format);
  153.   $form_body=formatText($_POST['news_body']$text_format);
  154.   $form_theme=$_POST['news_theme'];
  155.   $form_scale=$_POST['news_scale'];
  156.   $form_level=$_POST['news_level'];
  157.   $form_template=$_POST['news_template'];
  158.   if($_POST['news_template']==1$mask_template_1=" selected=\"selected\"";
  159.   if($_POST['news_template']==2$mask_template_2=" selected=\"selected\"";
  160.   if($_POST['news_template']==3{
  161.     $mask_template_3=" selected=\"selected\"";
  162.     $layer_tpl_3 "style=\"display:block;\"";
  163.   }
  164.   if($_POST['news_template']==4{
  165.     $mask_template_4=" selected=\"selected\"";
  166.     $layer_tpl_1_2 "style=\"display:none;\"";
  167.   }
  168.  
  169.   if($_POST['news_statut']=='D'$mask_statut_D="checked=\"checked\""else $mask_statut_D='';
  170.   if($_POST['news_statut']=='P'$mask_statut_P="checked=\"checked\""else $mask_statut_P='';
  171.   $table=urlencode(serialize($table));
  172. }
  173.  
  174.  
  175. if(!isset($integrity|| is_string($integrity)) {
  176.   include_once("../lib/input_helpers.php");
  177.  
  178.   // select-box de thèmes
  179.   $data=$sql_object->DBSelect($req_list_theme);
  180.   $select_theme=ThemeSelectBox($data"news_theme"$form_theme);
  181.  
  182.   // select-box des échelles
  183.   $data=$sql_object->DBSelect($req_list_scale);
  184.   $select_scale=ScaleSelectBox($data"news_scale"$form_scale);
  185.  
  186.   // select-box des niveaux
  187.   $data=$sql_object->DBSelect($req_list_level);
  188.   $select_level=LevelSelectBox($data"news_level"$form_level);
  189.  
  190.   // select-box Templates
  191.   $select_template="<select name=\"news_template\" id=\"news_template\" onchange=\"ShowFilesLayer(this.value, 'news')\">\n";
  192.   $select_template.="<option value=\"1\"".$mask_template_1.">".$news_object->GetTemplateName(1)."</option>\n";
  193.   $select_template.="<option value=\"2\"".$mask_template_2.">".$news_object->GetTemplateName(2)."</option>\n";
  194.   $select_template.="<option value=\"3\"".$mask_template_3.">".$news_object->GetTemplateName(3)."</option>\n";
  195.   $select_template.="<option value=\"4\"".$mask_template_4.">".$news_object->GetTemplateName(4)."</option>\n";
  196.   $select_template.="</select>\n";
  197. }
  198.  
  199. include_once(THEME_ADMIN_PATH."quickicons.php");
  200.  
  201. ?>
  202.  
  203. <?php
  204. if(!isset($integrity|| is_string($integrity)) {
  205.   ?>
  206. <div class="contentcontainer"><?php
  207. include_once($dir."/menurub.php");
  208. ?>
  209. <div id="content"><?php
  210. if(isset($integrity&& is_string($integrity)) display_errors($integrity);
  211. ?>
  212. <h2><?php echo formatTitleh2(_t('news','add_title'))?></h2>
  213. <form id="addnews" action="<?php echo $_SERVER['SCRIPT_NAME']?>"
  214.     method="post" enctype="multipart/form-data">
  215. <p><label for="news_title"><?php echo _t('news','title')?> : *</label>
  216. <input name="news_title" type="text" maxlength="200" id="news_title"
  217.     class="textfield" value="<?php echo $form_title?>" /></p>
  218. <p><label for="news_header"><?php echo _t('news','header')?> : *</label>
  219. <textarea id="news_header" name="news_header" class="largetextfield"
  220. <?php echo AREA_SETTINGS?>><?php echo $form_header?></textarea></p>
  221. <p><label for="news_body"><?php echo _t('news','body')?> : *</label> <textarea
  222.     id="news_body" name="news_body" class="largetextfield"
  223.     <?php echo AREA_SETTINGS?>><?php echo $form_body?></textarea></p>
  224. <p><label for="news_theme"><?php echo _t('news','theme')?> : *</label>
  225.     <?php echo $select_theme?></p>
  226. <p><label for="news_scale"><?php echo _t('news','scale')?> : *</label>
  227.     <?php echo $select_scale?></p>
  228. <p><label for="news_level"><?php echo _t('news','level')?> : </label>
  229.     <?php echo $select_level?></p>
  230. <p><label for="news_template"><?php echo _t('news','template')?> : </label>
  231.     <?php echo $select_template?></p>
  232. <p id="layervisuel1" <?php echo $layer_tpl_1_2?>><label
  233.     for="news_visuel1"><?php echo _t('news','visu1')?></label> <input
  234.     name="news_visuel1" type="file" size="47" id="news_visuel1"
  235.     class="file" /><br />
  236. <br />
  237. </p>
  238. <p id="layervisuel2" <?php echo $layer_tpl_3?>><label
  239.     for="news_visuel2"><?php echo _t('news','visu2')?></label> <input
  240.     name="news_visuel2" type="file" size="47" id="news_visuel2"
  241.     class="file" /><br />
  242. <br />
  243. </p>
  244. <p style="clear: both"><label for="statut_P"><?php echo _t('news','statut')?>
  245. : </label> <input name="news_statut" type="radio" id="statut_P"
  246.     value="P" <?php echo $mask_statut_P?> /><span class="radio"><?php echo _t('statut','public')?></span>
  247. <input name="news_statut" type="radio" id="statut_D" value="D"
  248.     <?php echo $mask_statut_D?> /><span class="radio"><?php echo _t('statut','draft')?></span>
  249. <br />
  250. </p>
  251. <div><input name="rub" type="hidden" value="<?php echo $rub?>"
  252.     id="rub" /> <input name="todo" type="hidden"
  253.     value="<?php echo $todo?>" id="todo" /> <?php echo cancel_button('javascript:history.go(-1);')?>
  254. <input name="valider" type="submit"
  255.     value="<?php echo _t('btn','valid'?>" class="button" id="valider" />
  256. </div>
  257. </form>
  258. </div>
  259.     <?php include_once($dir."/help.php")?></div>
  260.     <?php
  261.     // Récapitulatif
  262. else    {
  263.  
  264.   $requete=SQL_getonethemeName($form_theme);
  265.   $result=$sql_object->DBSelect($requete);
  266.   if($result==|| count($result)!=1exit;
  267.   else $theme_denomination=formatText($result[0]['theme_name']'2HTML');
  268.  
  269.   $requete=SQL_getonescaleDenomination($form_scale);
  270.   $result=$sql_object->DBSelect($requete);
  271.   if($result==|| count($result)!=1exit;
  272.   else $scale_denomination=formatText($result[0]['scale_denomination']'2HTML');
  273.  
  274.   if($form_level <> -1{
  275.     $requete=SQL_getonelevelName($form_level);
  276.     $result=$sql_object->DBSelect($requete);
  277.     if($result==|| count($result)!=1exit;
  278.     else $level_denomination=formatText($result[0]['level_name']'2HTML');
  279.   }else $level_denomination=_t('divers','none');
  280.  
  281.   $reca_visual="<dt>"._t('news','photouri')."</dt>\n";
  282.   if(isset($visual_link1)) {
  283.     $reca_visual.="<dd>&nbsp;</dd>\n";
  284.     $reca_visual.="<dt>"._t('news','visu1')." :</dt>\n";
  285.     $reca_visual.="<dd>".$visual_link1."</dd>\n";
  286.     if(isset($visual_link2)) {
  287.       $reca_visual.="<dt>"._t('news','visu2')." :</dt>\n";
  288.       $reca_visual.="<dd>".$visual_link2."</dd>\n";
  289.     }
  290.   else {
  291.     $reca_visual.="<dd>"._t('divers','none')."</dd>\n";
  292.   }
  293.  
  294.   ?>
  295. <div class="contentcontainer"><?php
  296. include_once($dir."/menurub.php");
  297. ?>
  298. <div id="content">
  299. <h2><?php echo formatTitleh2(_t('recap','title'))?></h2>
  300. <?php
  301. echo "<dl class=\"dl3\">\n";
  302. echo "<dt>"._t('news','title')."</dt>\n";
  303. echo "<dd>"$form_title."</dd>\n";
  304. echo "<dt>"_t('news','header')"</dt>\n";
  305. echo "<dd>".empty_nc(linkin_content($form_header))."</dd>\n";
  306. echo "<dt>"._t('news','body')." :</dt>\n";
  307. echo "<dd>".linkin_content($form_body)."</dd>\n";
  308. echo "<dt>"._t('news','theme')." :</dt>\n";
  309. echo "<dd>".$theme_denomination."</dd>\n";
  310. echo "<dt>"._t('news','scale')." :</dt>\n";
  311. echo "<dd>".$scale_denomination."</dd>\n";
  312. echo "<dt>"._t('news','level')." :</dt>\n";
  313. echo "<dd>".$level_denomination."</dd>\n";
  314. echo "<dt>"._t('news','template')." :</dt>\n";
  315. echo "<dd>".$news_object->GetTemplateName($form_template)."</dd>\n";
  316. echo $reca_visual;
  317. echo "<dt>"._t('divers','statut')."</dt>\n";
  318. echo "<dd>"display_statut($_POST['news_statut'])"</dd>\n";
  319. echo "</dl>\n";
  320. ?>
  321. <form id="addscale" action="<?php echo $_SERVER['SCRIPT_NAME']?>"
  322.     method="post">
  323. <div><input name="rub" type="hidden" value="<?php echo $rub?>"
  324.     id="rub" /> <input name="todo" type="hidden"
  325.     value="<?php echo $todo?>" id="todo" /> <input name="data_table"
  326.     type="hidden" value="<?php echo $table?>" id="data_table" /> <?php echo cancel_button('?rub=news&amp;todo=list')?>
  327. <input name="retour" type="button"
  328.     value="<?php echo _t('btn','preview')?>" class="button" id="retour"
  329.     onclick="history.go(-1);" /> <input name="enregistrer" type="submit"
  330.     value="<?php echo _t('btn','save')?>" class="button" id="valider" />
  331. </div>
  332. </form>
  333. </div>
  334. <?php include_once($dir."/help.php")?></div>
  335. <?php
  336. }
  337. ?>

Documentation generated on Fri, 01 Apr 2011 09:27:24 +0200 by phpDocumentor 1.4.1