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

Documentation generated on Fri, 16 Oct 2009 09:28:08 +0200 by phpDocumentor 1.4.1