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

Source for file mod.php

Documentation is available at mod.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. if (isset($_GET['id']))    $id=$_GET['id'];
  24. if (isset($_POST['id'])) $id=$_POST['id'];
  25.  
  26. $news_object new news;
  27. $mask_template_1='';
  28. $mask_template_2='';
  29. $mask_template_3='';
  30. $mask_template_4='';
  31. $mask_statut_P='';
  32. $mask_statut_D='';
  33. $mask_archive_P='';
  34. $mask_archive_D='';
  35. $mask_archive_AA='';
  36. $mask_archive_PA='';
  37. $layer_tpl_1_2 'style="display:none;"';
  38. $layer_tpl_3 'style="display:none;"';
  39.  
  40. if(isset($_POST['enregistrer'])) {
  41.   include_once('../class/system/class.upload.php');
  42.   $upload_objectnew upload;
  43.   $data_table=unserialize(urldecode($_POST['data_table']));
  44.   $result=$news_object->ModifyNews($id$data_table$sql_object);
  45.   $visual_uri=GetAllPhotoUri($data_table[7]);
  46.   if($visual_uri!=0{
  47.     if(isset($visual_uri[0])) $result_rename=$upload_object->Archivefile('../'.$visual_uri[0]);
  48.     if(isset($visual_uri[1])) $result_rename=$upload_object->Archivefile('../'.$visual_uri[1]);
  49.   }
  50.   $link_confirm="confirm.php?rub=".$rub."&todo=".$todo;
  51.   if($resultheader("Location: ".$link_confirm);
  52.   else  system_error();
  53. }
  54.  
  55. // Titre de l'actu en cours de modification
  56. $requete=SQL_getNewsTitle($id);
  57. $result=$sql_object->DBSelect($requete);
  58. if($result==|| count($result)!=1exit;
  59. else $news_current_title=formatText($result[0]['news_title'],'2HTML');
  60.  
  61.  
  62. // Obtention des données  de la BDD
  63. $req_detSQL_getoneCompleteNews($id);
  64. $result=$sql_object->DBSelect($req_det);
  65. if($result==|| count($result)!=1exit;
  66.  
  67. $form_title=formatText($result[0]['news_title']'2FIELD');
  68. $form_header=formatText($result[0]['news_header']'2FIELD');
  69. $form_body=formatText($result[0]['news_body']'2FIELD');
  70. $form_theme=$result[0]['news_theme'];
  71. $form_scale=$result[0]['news_scale'];
  72. $form_level=$result[0]['news_level'];
  73. $form_template=$result[0]['news_template'];
  74. $current_template=$form_template;
  75. $form_statut=$result[0]['news_statut'];
  76. $current_statut=$result[0]['news_statut'];
  77. $news_owner $result[0]['news_posted_by'];
  78.  
  79. //////////// Check Droits utilisateur ////////////
  80. if (!HaveRight('news')) ReloadIndex('admin');
  81. if (GetSessionElement('id')!=$news_owner && !IsSuperAdmin()) ReloadIndex('admin');
  82. ////////////
  83.  
  84. $news_photouri=urlencode($result[0]['news_photo_uri']);
  85. $visual=GetAllPhotoUri($result[0]['news_photo_uri']);
  86. $reca_visual="<dl class=\"dl_mod\">\n";
  87. $reca_visual.="<dt>"._t('news','photouri').": </dt>\n";
  88. if($visual==0{
  89.   $reca_visual.="<dd>"._t('divers','none')."</dd>\n";
  90. else {
  91.   $complete_uri='../'.$visual[0];
  92.   $reca_visual.="<dd>&nbsp;</dd>\n";
  93.   $reca_visual.="<dt> ."._t('news','visu1').": </dt>\n";
  94.   $reca_visual.='<dd>'.EnlargeImage($complete_uri)."</dd>\n";
  95.   if(isset($visual[1])) {
  96.     $complete_uri='../'.$visual[1];
  97.     $reca_visual.="<dt> ."._t('news','visu2').": </dt>\n";
  98.     $reca_visual.='<dd>'.EnlargeImage($complete_uri)."</dd>\n";
  99.   }
  100. }
  101. $reca_visual.="</dl>\n";
  102.  
  103.  
  104. if(isset($_POST['valider'])) {
  105.   $table[0]=$_POST['news_title'];
  106.   $table[1]=$_POST['news_header'];
  107.   $table[2]=$_POST['news_body'];
  108.   $table[3]=$_POST['news_theme'];
  109.   $table[4]=$_POST['news_scale'];
  110.   $table[5]=$_POST['news_level'];
  111.   $table[6]=$_POST['news_template'];
  112.   $news_photo_uri=urldecode($_POST['news_photouri']);
  113.   $table[7]=$news_photo_uri;
  114.   $table[8]=$_POST['news_statut'];
  115.   $table[9]=$current_statut// statut courant
  116.  
  117.   $current_template=urldecode($_POST['current_template']);
  118.  
  119.   $news_objectnew news;
  120.   $integrity=$news_object->CheckDataIntegrity($table);
  121.  
  122.   // si changement de template
  123.   if($_POST['news_template']!=$current_template{
  124.     if(($_POST['news_template']==&& $current_template==2|| ($_POST['news_template']==&& $current_template==1)) {
  125.       $table[7]=urldecode($_POST['news_photouri']);
  126.       $template_integrity=1;
  127.     else {
  128.       if($_POST['news_template']==4{
  129.         $table[7]='';
  130.         $template_integrity=1;
  131.         $news_photo_uri='';
  132.         $reca_visual='';
  133.       else {
  134.         $template_integrity=1;
  135.         if(($_POST['news_template']==|| $_POST['news_template']==2&& (!isset($_FILES['news_visuel1']|| $_FILES['news_visuel1']['name']=='')) $template_integrity=_t('news','no_visu1');
  136.         if(((!isset($_FILES['news_visuel1']|| $_FILES['news_visuel1']['name']==''|| (!isset($_FILES['news_visuel2']|| $_FILES['news_visuel2']['name']=='')) && $_POST['news_template']==3$template_integrity=_t('news','no_visu2');
  137.       }
  138.     }
  139.  
  140.   else $template_integrity=1;
  141.  
  142.   if($template_integrity!=&& !is_string($integrity))  $integrity=$template_integrity;
  143.   if(!is_string($integrity)) {
  144.     if ($_POST['news_template'!= && (isset($_FILES['news_visuel1']&& $_FILES['news_visuel1']['name']!='')) {
  145.       include_once('../class/system/class.upload.php');
  146.       include_once('../class/system/class.image.php');
  147.       $image_object new image;
  148.       $upload_object new upload;
  149.       $upload1 $_FILES['news_visuel1'];
  150.       $size_integrity=$upload_object->CheckMaxFile($upload1['size']$news_object->UPLOAD_MAX_MO);
  151.       if(is_string($size_integrity)) $integrity=$size_integrity;
  152.       $format_integrity=$upload_object->CheckExtImage($upload1['name']);
  153.       if(is_string($format_integrity)) $integrity=$format_integrity;
  154.           
  155.       if($_POST['news_template'== && (isset($_FILES['news_visuel2']&& $_FILES['news_visuel2']['name']!='')) {
  156.         $upload2 $_FILES['news_visuel2'];
  157.         $size_integrity=$upload_object->CheckMaxFile($upload2['size']$news_object->UPLOAD_MAX_MO);
  158.         if(is_string($size_integrity)) $integrity=$size_integrity;
  159.         $format_integrity=$upload_object->CheckExtImage($upload2['name']);
  160.         if(is_string($format_integrity)) $integrity=$format_integrity;
  161.       }
  162.       if(!is_string($integrity)) {
  163.         $dir_name=$id.'/';
  164.         $destination="../".$news_object->URI_INPUT.$dir_name;
  165.  
  166.         $bdd_name="1.".$upload_object->GetExtension($upload1['name']);
  167.         $final_name='temp_'.$bdd_name;
  168.         $visual_link1=$destination.$final_name;
  169.         $table[7]=$news_object->URI_INPUT.$dir_name.$bdd_name;
  170.         if(isset($upload1)) {
  171.           $result_upload=$upload_object->UploadFile($upload1$final_name$destination);
  172.               
  173.           // création des thumbs
  174.           $min_name=get_min_name($destination.$final_name);
  175.           $image_object->ThumbCreate($destination.$final_name$min_name $news_object->MAX_PHOTO_MIN_WIDTH);
  176.               
  177.           // on retaille l'original au besoin.
  178.           if(PHOTO_RESIZE==true && ExcedMaxSize($destination.$final_name$news_object->MAX_PHOTO_MAX_WIDTH)) {
  179.             $image_object->ThumbCreate($destination.$final_name$destination.$final_name $news_object->MAX_PHOTO_MAX_WIDTH);
  180.           }
  181.           // préparation de l'affichage de la miniature
  182.           $visual_link1=EnlargeImage($visual_link1);
  183.         else $visual_link1=EnlargeImage($destination.$bdd_name);
  184.  
  185.  
  186.         if($_POST['news_template'== 3{
  187.           $bdd_name="2.".$upload_object->GetExtension($upload1['name']);
  188.           $final_name='temp_'.$bdd_name;
  189.           $visual_link2=$destination.$final_name;
  190.           $table[7.= '|'.$news_object->URI_INPUT.$dir_name.$bdd_name;
  191.           if(isset($upload2)) {
  192.             $result_upload=$upload_object->UploadFile($upload2$final_name$destination);
  193.  
  194.             // création des thumbs
  195.             $min_name=get_min_name($destination.$final_name);
  196.             $image_object->ThumbCreate($destination.$final_name$min_name $news_object->MAX_PHOTO_MIN_WIDTH);
  197.  
  198.             // on retaille l'original au besoin.
  199.             if(PHOTO_RESIZE==true && ExcedMaxSize($destination.$final_name$news_object->MAX_PHOTO_MAX_WIDTH)) {
  200.               $image_object->ThumbCreate($destination.$final_name$destination.$final_name $news_object->MAX_PHOTO_MAX_WIDTH);
  201.             }
  202.             // préparation de l'affichage de la miniature
  203.             $visual_link2=EnlargeImage($visual_link2);
  204.           else $visual_link2=EnlargeImage($destination.$bdd_name);
  205.               
  206.               
  207.         }
  208.       }
  209.     }
  210.   }
  211.  
  212.   if(is_string($integrity)) $text_format='2FIELD';
  213.   else $text_format='2HTML';
  214.   $form_title=formatText($_POST['news_title'],$text_format);
  215.   $form_header=formatText($_POST['news_header']$text_format);
  216.   $form_body=formatText($_POST['news_body']$text_format);
  217.   $form_theme=$_POST['news_theme'];
  218.   $form_scale=$_POST['news_scale'];
  219.   $form_level=$_POST['news_level'];
  220.   $form_template=$_POST['news_template'];
  221.   $form_statut=$_POST['news_statut'];
  222.  
  223.   if($_POST['news_template']==1$mask_template_1=" selected=\"selected\"";
  224.   if($_POST['news_template']==2$mask_template_2=" selected=\"selected\"";
  225.   if($_POST['news_template']==3{
  226.     $mask_template_3=" selected=\"selected\"";
  227.     $layer_tpl_3 "style=\"display:block;\"";
  228.   }
  229.   if($_POST['news_template']==4{
  230.     $mask_template_4=" selected=\"selected\"";
  231.     $layer_tpl_1_2 "style=\"display:none;\"";
  232.   }
  233.  
  234.   if($_POST['news_statut']=='D'$mask_statut_D="checked=\"checked\""else $mask_statut_D='';
  235.   if($_POST['news_statut']=='P'$mask_statut_P="checked=\"checked\""else $mask_statut_P='';
  236.   $table=urlencode(serialize($table));
  237. }
  238.  
  239.  
  240. include_once("../lib/input_helpers.php");
  241.  
  242. // select-box de thèmes
  243. $data=$sql_object->DBSelect($req_list_theme);
  244. $select_theme=ThemeSelectBox($data"news_theme"$form_theme);
  245.  
  246. // select-box des échelles
  247. $data=$sql_object->DBSelect($req_list_scale);
  248. $select_scale=ScaleSelectBox($data"news_scale"$form_scale);
  249.  
  250. // select-box des niveaux
  251. $data=$sql_object->DBSelect($req_list_level);
  252. $select_level=LevelSelectBox($data"news_level"$form_level);
  253.  
  254. // select-box Templates
  255. if($form_template==1$mask_template_1=' selected="selected"';
  256. if($form_template==2$mask_template_2=' selected="selected"';
  257. if($form_template==3$mask_template_3=' selected="selected"';
  258. if($form_template==4$mask_template_4=' selected="selected"';
  259. $select_template="<select name=\"news_template\" id=\"news_template\" onchange=\"ShowFilesLayer(this.value, 'news')\">\n";
  260. $select_template.="<option value=\"1\"".$mask_template_1.">".$news_object->GetTemplateName(1)."</option>\n";
  261. $select_template.="<option value=\"2\"".$mask_template_2.">".$news_object->GetTemplateName(2)."</option>\n";
  262. $select_template.="<option value=\"3\"".$mask_template_3.">".$news_object->GetTemplateName(3)."</option>\n";
  263. $select_template.="<option value=\"4\"".$mask_template_4.">".$news_object->GetTemplateName(4)."</option>\n";
  264. $select_template.="</select>\n";
  265.  
  266. // select-box statut
  267. if($form_statut=='P'$mask_archive_P=' selected="selected"';
  268. if($form_statut=='D'$mask_archive_D=' selected="selected"';
  269. if($form_statut=='AA'$mask_archive_AA=' selected="selected"';
  270. if($form_statut=='PA'$mask_archive_PA=' selected="selected"';
  271. $select_statut="<select name=\"news_statut\" id=\"news_statut\">\n";
  272. $select_statut.="<option value=\"P\"".$mask_archive_P.">".display_statut('P')."</option>\n";
  273. $select_statut.="<option value=\"D\"".$mask_archive_D.">".display_statut('D')."</option>\n";
  274. $select_statut.="<option value=\"AA\"".$mask_archive_AA.">".display_statut('AA')."</option>\n";
  275. $select_statut.="<option value=\"PA\"".$mask_archive_PA.">".display_statut('PA')."</option>\n";
  276. $select_statut.="</select>\n";
  277.  
  278. // Préparation affichage des layers Upload
  279. if($form_template!=4)  {
  280.   $layer_tpl_1_2 'style="display:block;"';
  281.   if($form_template==3$layer_tpl_3 'style="display:block;"';
  282. }
  283.  
  284. ?>
  285.  
  286.  
  287. <div id="chemin">
  288. <ul>
  289.     <li><a href="index.php" class="chemin_home"><?php echo _t('way','home')?></a>
  290.     </li>
  291.     <li><a href="<?php echo $rub_link?>" id="chemin_<?php echo $rub?>"
  292.         class="chemin_rub"><?php echo _t('menu','news');?></a></li>
  293.     <li><span><?php echo formatNavTitle(_t('news','mod')' : '.$news_current_title)?></span>
  294.     </li>
  295. </ul>
  296. </div>
  297. <!--end barre haute -->
  298. <?php
  299. include_once(THEME_ADMIN_PATH."quickicons.php");
  300. ?>
  301.  
  302. <?php
  303. if(!isset($integrity|| is_string($integrity)) {
  304.   ?>
  305. <div class="contentcontainer"><?php
  306. include_once($dir."/menurub.php");
  307. ?>
  308. <div id="content"><?php
  309. if(isset($integrity&& is_string($integrity)) display_errors($integrity);
  310. ?>
  311. <h2><?php echo formatTitleh2($news_current_title)?></h2>
  312. <form id="modnews" action="<?php echo $_SERVER['SCRIPT_NAME']?>"
  313.     method="post" enctype="multipart/form-data">
  314. <p><label for="news_title"><?php echo _t('news','title')?> : *</label>
  315. <input name="news_title" type="text" class="textfield" maxlength="200"
  316.     id="news_title" value="<?php echo $form_title?>" /></p>
  317. <p><label for="news_header"><?php echo _t('news','header')?> : *</label>
  318. <textarea id="news_header" name="news_header" class="largetextfield"
  319. <?php echo AREA_SETTINGS?>><?php echo $form_header?></textarea></p>
  320. <p><label for="news_body"><?php echo _t('news','body')?> : *</label> <textarea
  321.     id="news_body" name="news_body" class="largetextfield"
  322.     <?php echo AREA_SETTINGS?>><?php echo $form_body?></textarea></p>
  323. <p><label for="news_theme"><?php echo _t('news','theme')?> : *</label>
  324.     <?php echo $select_theme?></p>
  325. <p><label for="news_scale"><?php echo _t('news','scale')?> : *</label>
  326.     <?php echo $select_scale?></p>
  327. <p><label for="news_level"><?php echo _t('news','level')?> : </label>
  328.     <?php echo $select_level?></p>
  329. <p><label for="news_template"><?php echo _t('news','template')?> : </label>
  330.     <?php echo $select_template?></p>
  331.  
  332.     <?php echo $reca_visual?>
  333.  
  334. <p id="layervisuel1" <?php echo $layer_tpl_1_2?>><label
  335.     for="news_visuel1"><?php echo _t('news','visu1')?></label> <input
  336.     name="news_visuel1" type="file" size="47" id="news_visuel1"
  337.     class="file" value="" /><br />
  338. <br />
  339. </p>
  340. <p id="layervisuel2" <?php echo $layer_tpl_3?>><label
  341.     for="news_visuel2"><?php echo _t('news','visu2')?></label> <input
  342.     name="news_visuel2" type="file" size="47" id="news_visuel2"
  343.     class="file" /><br />
  344. <br />
  345. </p>
  346. <p style="clear: both"><label for="news_statut"><?php echo _t('news','statut')?>
  347. : </label> <?php echo $select_statut?></p>
  348. <div><input name="id" type="hidden" value="<?php echo $id?>" id="id" />
  349. <input name="news_photouri" type="hidden"
  350.     value="<?php echo $news_photouri?>" id="news_photouri" /> <input
  351.     name="current_template" type="hidden"
  352.     value="<?php echo $current_template?>" id="current_template" /> <input
  353.     name="rub" type="hidden" value="<?php echo $rub?>" id="rub" /> <input
  354.     name="todo" type="hidden" value="<?php echo $todo?>" id="todo" /> <?php echo cancel_button('javascript:history.go(-1);')?>
  355. <input name="valider" type="submit"
  356.     value="<?php echo _t('btn','valid')?>" class="button" id="valider" />
  357. </div>
  358. </form>
  359. </div>
  360.     <?php include_once($dir."/help.php")?></div>
  361.     <?php
  362.     // Récapitulatif
  363. else    {
  364.  
  365.   $requete=SQL_getonethemeName($form_theme);
  366.   $result=$sql_object->DBSelect($requete);
  367.   if($result==|| count($result)!=1exit;
  368.   else $theme_denomination=formatText($result[0]['theme_name']);
  369.  
  370.   $requete=SQL_getonescaleDenomination($form_scale);
  371.   $result=$sql_object->DBSelect($requete);
  372.   if($result==|| count($result)!=1exit;
  373.   else $scale_denomination=formatText($result[0]['scale_denomination']);
  374.  
  375.   if($form_level <> -1{
  376.     $requete=SQL_getonelevelName($form_level);
  377.     $result=$sql_object->DBSelect($requete);
  378.     if($result==|| count($result)!=1exit;
  379.     else $level_denomination=formatText($result[0]['level_name']);
  380.   else $level_denomination=_t('divers','none');
  381.  
  382.   $display_form_header=formatText(empty_nc($form_header));
  383.  
  384.  
  385.   if(isset($visual_link1)) {
  386.     $reca_visual="<dt>"._t('news','photouri')."</dt>\n";
  387.     $reca_visual.="<dd>&nbsp;</dd>\n";
  388.     $reca_visual.="<dt>"._t('news','visu1')." :</dt>\n";
  389.     $reca_visual.="<dd>".$visual_link1."</dd>\n";
  390.     if(isset($visual_link2)) {
  391.       $reca_visual.="<dt>"._t('news','visu2')." :</dt>\n";
  392.       $reca_visual.="<dd>".$visual_link2."</dd>\n";
  393.     }
  394.   }
  395.   ?>
  396. <div class="contentcontainer"><?php
  397. include_once($dir."/menurub.php");
  398. ?>
  399. <div id="content">
  400. <h2><?php echo formatTitleh2(_t('recap','title'))?></h2>
  401. <?php
  402. echo "<dl class=\"dl3\">\n";
  403. echo "<dt>"._t('news','title')."</dt>\n";
  404. echo "<dd>".$form_title."</dd>\n";
  405. echo "<dt>"._t('news','header')"</dt>\n";
  406. echo "<dd>".linkin_content($display_form_header)."</dd>\n";
  407. echo "<dt>"._t('news','body')." :</dt>\n";
  408. echo "<dd>".linkin_content($form_body)."</dd>\n";
  409. echo "<dt>"._t('news','theme')." :</dt>\n";
  410. echo "<dd>".$theme_denomination."</dd>\n";
  411. echo "<dt>"._t('news','scale')." :</dt>\n";
  412. echo "<dd>".$scale_denomination."</dd>\n";
  413. echo "<dt>"._t('news','level')." :</dt>\n";
  414. echo "<dd>".$level_denomination."</dd>\n";
  415. echo "<dt>"._t('news','template')." :</dt>\n";
  416. echo "<dd>".$news_object->GetTemplateName($form_template)."</dd>\n";
  417. echo $reca_visual;
  418. echo "<dt>"._t('divers','statut'."</dt>\n";
  419. echo "<dd>"display_statut($_POST['news_statut'])"</dd>\n";
  420. echo "</dl>\n";
  421. ?> <br style="clear: both" />
  422. <form id="modscale" action="<?php echo $_SERVER['SCRIPT_NAME']?>"
  423.     method="post">
  424. <div><input name="id" type="hidden" value="<?php echo $id?>" id="id" />
  425. <input name="rub" type="hidden" value="<?php echo $rub?>" id="rub" />
  426. <input name="todo" type="hidden" value="<?php echo $todo?>" id="todo" />
  427. <input name="data_table" type="hidden" value="<?php echo $table?>"
  428.     id="data_table" /> <?php echo cancel_button('?rub=news&amp;todo=list')?>
  429. <input name="retour" type="button"
  430.     value="<?php echo _t('btn','preview')?>" class="button" id="retour"
  431.     onclick="history.go(-1);" /> <input name="enregistrer" type="submit"
  432.     value="<?php echo _t('btn','save')?>" class="button" id="valider" />
  433. </div>
  434. </form>
  435. </div>
  436. <?php include_once($dir."/help.php")?></div>
  437. <?php
  438. }
  439. ?>

Documentation generated on Fri, 01 Apr 2011 09:33:18 +0200 by phpDocumentor 1.4.1