[ Index ]
 

Code source de e107 0.7.8

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/e107_admin/ -> cpage.php (source)

   1  <?php
   2  /*
   3  + ----------------------------------------------------------------------------+
   4  |     e107 website system
   5  |
   6  |     ©Steve Dunstan 2001-2002
   7  |     http://e107.org
   8  |     jalist@e107.org
   9  |
  10  |     Released under the terms and conditions of the
  11  |     GNU General Public License (http://gnu.org).
  12  |
  13  |     $Source: /cvsroot/e107/e107_0.7/e107_admin/cpage.php,v $
  14  |     $Revision: 1.37 $
  15  |     $Date: 2007/01/09 20:28:32 $
  16  |     $Author: e107steved $
  17  +----------------------------------------------------------------------------+
  18  */
  19  
  20  require_once ("../class2.php");
  21  
  22  if (!getperms("5")) { header("location:".e_BASE."index.php"); exit; }
  23  
  24  $e_sub_cat = 'custom';
  25  $e_wysiwyg = "data";
  26  $page = new page;
  27  
  28  require_once ("auth.php");
  29  // require_once(e_HANDLER."ren_help.php");
  30  require_once(e_HANDLER."userclass_class.php");
  31  $custpage_lang = ($sql->mySQLlanguage) ? $sql->mySQLlanguage : $pref['sitelanguage'];
  32  
  33  if (e_QUERY)
  34  {
  35      $tmp        = explode(".", e_QUERY);
  36      $action     = $tmp[0];
  37      $sub_action = $tmp[1];
  38      $id         = $tmp[2];
  39      $from       = ($tmp[3] ? $tmp[3] : 0);
  40  }
  41  
  42  if(isset($_POST['submitPage']))
  43  {
  44      $page -> submitPage();
  45  }
  46  
  47  if(isset($_POST['uploadfiles']))
  48  {
  49  
  50      $page -> uploadPage();
  51      $id = $_POST['pe_id'];
  52      $sub_action = ($_POST['pe_id']) ? "edit" : "";
  53      $page -> createPage($_POST['mode']);
  54  }
  55  
  56  if(isset($_POST['submitMenu']))
  57  {
  58      $page -> submitPage("", TRUE);
  59  }
  60  
  61  if(isset($_POST['updateMenu']))
  62  {
  63      $page -> submitPage($_POST['pe_id'], TRUE);
  64  }
  65  
  66  if(isset($_POST['updatePage']))
  67  {
  68      $page -> submitPage($_POST['pe_id']);
  69  }
  70  
  71  if(isset($_POST['delete']))
  72  {
  73      foreach(array_keys($_POST['delete']) as $pid)
  74      {
  75          $page -> delete_page($pid);
  76      }
  77  }
  78  
  79  if (isset($_POST['saveOptions'])) {
  80      $page -> saveSettings();
  81  }
  82  
  83  if($page->message)
  84  {
  85      $ns->tablerender("", "<div style='text-align:center'><b>".$page->message."</b></div>");
  86  }
  87  
  88  if(!e_QUERY)
  89  {
  90      $page -> showExistingPages();
  91  }
  92  else
  93  {
  94      $function = $action."Page";
  95      $page -> $function();
  96  }
  97  
  98  require_once(e_ADMIN."footer.php");
  99  
 100  class page
 101  {
 102      var $message;
 103  
 104  	function showExistingPages()
 105      {
 106          global $sql, $tp, $ns;
 107  
 108          $text = "<div style='text-align: center;'>";
 109  
 110          if(!$sql -> db_Select("page", "*", "ORDER BY page_datestamp DESC", "nowhere"))
 111          {
 112              $text .= CUSLAN_42;
 113          }
 114          else
 115          {
 116              $pages = $sql -> db_getList('ALL', FALSE, FALSE);
 117              $text .= "<form action='".e_SELF."' id='newsform' method='post'>
 118              <table style='".ADMIN_WIDTH."' class='fborder'>
 119              <tr>
 120              <td style='width:5%; text-align: center;' class='fcaption'>ID</td>
 121              <td style='width:60%' class='fcaption'>".CUSLAN_1."</td>
 122              <td style='width:15%; text-align: center;' class='fcaption'>".CUSLAN_2."</td>
 123              <td style='width:20%; text-align: center;' class='fcaption'>".CUSLAN_3."</td>
 124              </tr>";
 125  
 126              foreach($pages as $pge)
 127              {
 128                  $text .= "
 129                  <tr>
 130                  <td style='width:5%; text-align: center;' class='forumheader3'>$pge[page_id]</td>
 131                  <td style='width:60%' class='forumheader3'><a href='".($pge[page_theme] ? e_ADMIN."menus.php" : e_BASE."page.php?{$pge[page_id]}" )."'>$pge[page_title]</a></td>
 132                  <td style='width:15%; text-align: center;' class='forumheader3'>".($pge[page_theme] ? "menu" : "page")."</td>
 133                  <td style='width:20%; text-align: center;' class='forumheader3'>
 134                  <a href='".e_SELF."?".($pge[page_theme] ? "createm": "create").".edit.{$pge[page_id]}'>".ADMIN_EDIT_ICON."</a>
 135                  <input type='image' title='".LAN_DELETE."' name='delete[{$pge[page_id]}]' src='".ADMIN_DELETE_ICON_PATH."' onclick=\"return jsconfirm('".CUSLAN_4." [ ID: $pge[page_id] ]')\"/>
 136                  </td>
 137                  </tr>";
 138              }
 139  
 140              $text .= "
 141              </table>
 142              </form>";
 143          }
 144  
 145          $text .= "
 146          </div>";
 147  
 148          $ns -> tablerender(CUSLAN_5, $text);
 149      }
 150  
 151  	function createmPage()
 152      {
 153          $this -> createPage(TRUE);
 154      }
 155  
 156  	function uploadPage()
 157      {
 158          global $pref;
 159          $pref['upload_storagetype'] = "1";
 160          require_once(e_HANDLER."upload_handler.php");
 161          $uploaded = file_upload(e_IMAGE."custom/");
 162      }
 163  
 164  	function createPage($mode=FALSE)
 165      {
 166          /* mode: FALSE == page, mode: TRUE == menu */
 167  
 168          global $sql, $tp, $ns, $pref, $sub_action, $id;
 169  
 170          if ($sub_action == "edit" && !$_POST['preview'] && !$_POST['submit'])
 171          {
 172              if ($sql->db_Select("page", "*", "page_id='$id' "))
 173              {
 174                  $row                          = $sql->db_Fetch();
 175                  $page_class                   = $row['page_class'];
 176                  $page_password                = $row['page_password'];
 177                  $page_title                   = $tp -> toFORM($row['page_title']);
 178                  $page_rating_flag             = $row['page_rating_flag'];
 179                  $page_comment_flag            = $row['page_comment_flag'];
 180                  $page_display_authordate_flag = $row['page_author'];
 181                  $data                         = $tp -> toFORM($row['page_text']);
 182                  $edit                         = TRUE;
 183              }
 184  
 185              if ($sql -> db_Select("links", "*", "link_url='page.php?".$id."'"))
 186              {
 187                  $row = $sql -> db_Fetch();
 188                  $page_link = $row['link_name'];
 189              }
 190          }
 191  
 192          $text = "<div style='text-align:center'>
 193          <form method='post' action='".e_SELF."' id='dataform' enctype='multipart/form-data'>
 194          <table style='".ADMIN_WIDTH."' class='fborder'>";
 195  
 196          if($mode)
 197          {
 198              $text .= "<tr>
 199              <td style='width:25%' class='forumheader3'>".CUSLAN_7."</td>
 200              <td style='width:75%' class='forumheader3'>";
 201  
 202              if($edit)
 203              {
 204                  $text .= $page_theme;
 205              }
 206              else
 207              {
 208                  $text .= "<input class='tbox' type='text' name='menu_name' size='30' value='".$menu_name."' maxlength='50' />";
 209              }
 210  
 211              $text .= "</td>
 212              </tr>";
 213          }
 214  
 215          $text .= "<tr>
 216          <td style='width:25%' class='forumheader3'>".CUSLAN_8."</td>
 217          <td style='width:75%' class='forumheader3'><input class='tbox' type='text' name='page_title' size='50' value='".$page_title."' maxlength='250' /></td>
 218          </tr>
 219  
 220          <tr>
 221          <td style='width:25%' class='forumheader3'>".CUSLAN_9."</td>
 222          <td style='width:75%' class='forumheader3'>";
 223  
 224          require_once(e_HANDLER."ren_help.php");
 225          $insertjs = (!e_WYSIWYG)?"rows='15' onselect='storeCaret(this);' onclick='storeCaret(this);' onkeyup='storeCaret(this);' style='width:95%'": "rows='25' style='width:100%' ";
 226          $data = $tp->toForm($data,FALSE,TRUE);    // Make sure we convert HTML tags to entities
 227          $text .= "<textarea class='tbox' id='data' name='data' cols='80'   $insertjs>".(strstr($data, "[img]http") ? $data : str_replace("[img]../", "[img]", $data))."</textarea>";
 228  
 229          $text .= "<br />".display_help('',"cpage")."</td>
 230          </tr>
 231  
 232          <tr>
 233              <td style='width:25%' class='forumheader3'>".LAN_UPLOAD_IMAGES."</td>
 234              <td style='width:75%;' class='forumheader3'>".$tp->parseTemplate("{UPLOADFILE=".e_IMAGE."custom/}")."</td>
 235          </tr>";
 236  
 237          if(!$mode)
 238          {
 239              $text .= "
 240  
 241  
 242              <tr>
 243              <td style='width:25%' class='forumheader3'>".CUSLAN_10."</td>
 244              <td style='width:75%;' class='forumheader3'>
 245              <input type='radio' name='page_rating_flag' value='1'".($page_rating_flag ? " checked='checked'" : "")." /> ".CUSLAN_38."&nbsp;&nbsp;
 246              <input type='radio' name='page_rating_flag' value='0'".($page_rating_flag ? "" : " checked='checked'")." /> ".CUSLAN_39."
 247              </td>
 248              </tr>
 249  
 250              <tr>
 251              <td style='width:25%' class='forumheader3'>".CUSLAN_13."</td>
 252              <td style='width:75%;' class='forumheader3'>
 253              <input type='radio' name='page_comment_flag' value='1'".($page_comment_flag ? " checked='checked'" : "")." /> ".CUSLAN_38."&nbsp;&nbsp;
 254              <input type='radio' name='page_comment_flag' value='0'".($page_comment_flag ? "" : " checked='checked'")." /> ".CUSLAN_39."
 255              </td>
 256              </tr>
 257  
 258              <tr>
 259              <td style='width:25%' class='forumheader3'>".CUSLAN_41."</td>
 260              <td style='width:75%;' class='forumheader3'>
 261              <input type='radio' name='page_display_authordate_flag' value='1'".($page_display_authordate_flag ? " checked='checked'" : "")." /> ".CUSLAN_38."&nbsp;&nbsp;
 262              <input type='radio' name='page_display_authordate_flag' value='0'".($page_display_authordate_flag ? "" : " checked='checked'")." /> ".CUSLAN_39."
 263              </td>
 264              </tr>
 265  
 266              <tr>
 267              <td style='width:25%' class='forumheader3'>".CUSLAN_14."<br /><span class='smalltext'>".CUSLAN_15."</span></td>
 268              <td style='width:75%' class='forumheader3'><input class='tbox' type='text' name='page_password' size='20' value='".$page_password."' maxlength='50' /></td>
 269              </tr>
 270  
 271              <tr>
 272              <td style='width:25%' class='forumheader3'>".CUSLAN_16."<br /><span class='smalltext'>".CUSLAN_17."</span></td>
 273              <td style='width:75%' class='forumheader3'><input class='tbox' type='text' name='page_link' size='60' value='".$page_link."' maxlength='50' /></td>
 274              </tr>
 275  
 276              <tr>
 277              <td style='width:25%' class='forumheader3'>".CUSLAN_18."</td>
 278              <td style='width:75%' class='forumheader3'>".r_userclass("page_class", $page_class)."</td>
 279              </tr>";
 280          }
 281  
 282          $text .= "<tr>
 283          <td colspan='2' style='text-align:center' class='forumheader'>".
 284  
 285          (!$mode ?
 286          ($edit  ? "<input class='button' type='submit' name='updatePage' value='".CUSLAN_19."' /><input type='hidden' name='pe_id' value='$id' />" : "<input class='button' type='submit' name='submitPage' value='".CUSLAN_20."' />") :
 287          ($edit  ? "<input class='button' type='submit' name='updateMenu' value='".CUSLAN_21."' /><input type='hidden' name='pe_id' value='$id' />" : "<input class='button' type='submit' name='submitMenu' value='".CUSLAN_22."' />"))
 288  
 289          ."<input type='hidden' name='mode' value='$mode' />
 290          </td>
 291          </tr>
 292  
 293          </table>
 294          </form>
 295          </div>";
 296  
 297          $caption =(!$mode ? ($edit ? CUSLAN_23 : CUSLAN_24) : ($edit ? CUSLAN_25 : CUSLAN_26));
 298          $ns -> tablerender($caption, $text);
 299      }
 300  
 301  
 302  	function submitPage($mode = FALSE, $type=FALSE)
 303      {
 304          global $sql, $tp, $e107cache;
 305  
 306          $page_title = $tp -> toDB($_POST['page_title']);
 307          $page_text = $tp -> toDB($_POST['data']);
 308          $pauthor = ($_POST['page_display_authordate_flag'] ? USERID : 0);
 309  
 310          if($mode)
 311          {
 312              $update = $sql -> db_Update("page", "page_title='$page_title', page_text='$page_text', page_author='$pauthor', page_rating_flag='".intval($_POST['page_rating_flag'])."', page_comment_flag='".intval($_POST['page_comment_flag'])."', page_password='".$_POST['page_password']."', page_class='".$_POST['page_class']."', page_ip_restrict='".$_POST['page_ip_restrict']."' WHERE page_id='$mode'");
 313              $e107cache->clear("page_{$mode}");
 314              $e107cache->clear("page-t_{$mode}");
 315  
 316              if ($_POST['page_link'])
 317              {
 318                  if ($sql -> db_Select("links", "link_id", "link_url='page.php?".$mode."' && link_name!='".$tp -> toDB($_POST['page_link'])."'"))
 319                  {
 320                      $sql -> db_Update("links", "link_name='".$tp -> toDB($_POST['page_link'])."' WHERE link_url='page.php?".$mode."'");
 321                      $update++;
 322                      $e107cache->clear("sitelinks");
 323                  }
 324                  else if (!$sql -> db_Select("links", "link_id", "link_url='page.php?".$mode."'"))
 325                  {
 326                      $sql -> db_Insert("links", "0, '".$tp -> toDB($_POST['page_link'])."', 'page.php?".$mode."', '', '', 1, 0, 0, 0, ".$_POST['page_class']);
 327                      $update++;
 328                      $e107cache->clear("sitelinks");
 329                  }
 330              } else {
 331                  if ($sql -> db_Select("links", "link_id", "link_url='page.php?".$mode."'"))
 332                  {
 333                      $sql -> db_Delete("links", "link_url='page.php?".$mode."'");
 334                      $update++;
 335                      $e107cache->clear("sitelinks");
 336                  }
 337              }
 338              admin_update($update, 'update', "Page updated in database.");
 339          }
 340          else
 341          {
 342  
 343              $menuname = ($type ? $tp -> toDB($_POST['menu_name']) : "");
 344  
 345              admin_update($sql -> db_Insert("page", "0, '$page_title', '$page_text', '$pauthor', '".time()."', '".intval($_POST['page_rating_flag'])."', '".intval($_POST['page_comment_flag'])."', '".$_POST['page_password']."', '".$_POST['page_class']."', '', '".$menuname."'"), 'insert', CUSLAN_27);
 346  
 347              if($type)
 348              {
 349                  $sql -> db_Insert("menus", "0, '$menuname', '0', '0', '0', '', '".mysql_insert_id()."' ");
 350              }
 351  
 352              if($_POST['page_link'])
 353              {
 354                  $link = "page.php?".mysql_insert_id();
 355                  if (!$sql->db_Select("links", "link_id", "link_name='".$tp -> toDB($_POST['page_link'])."'"))
 356                  {
 357                      $linkname = $tp -> toDB($_POST['page_link']);
 358                      $sql->db_Insert("links", "0, '$linkname', '$link', '', '', 1, 0, 0, 0, ".$_POST['page_class']);
 359                      $e107cache->clear("sitelinks");
 360                  }
 361              }
 362          }
 363      }
 364  
 365  	function delete_page($del_id)
 366      {
 367          global $sql, $e107cache;
 368          admin_update($sql -> db_Delete("page", "page_id='$del_id' "), 'delete', CUSLAN_28);
 369          $sql -> db_Delete("menus", "menu_path='$del_id' ");
 370          if ($sql -> db_Select("links", "link_id", "link_url='page.php?".$del_id."'"))
 371          {
 372              $sql -> db_Delete("links", "link_url='page.php?".$del_id."'");
 373              $e107cache->clear("sitelinks");
 374          }
 375      }
 376  
 377  	function optionsPage()
 378      {
 379          global $ns, $pref;
 380  
 381          if(!isset($pref['pageCookieExpire'])) $pref['pageCookieExpire'] = 84600;
 382  
 383          $text = "<div style='text-align: center; margin-left:auto; margin-right: auto;'>
 384          <form method='post' action='".e_SELF."'>
 385          <table style='".ADMIN_WIDTH."' class='fborder'>
 386  
 387          <tr>
 388          <td style='width:50%' class='forumheader3'>".CUSLAN_29."</td>
 389          <td style='width:50%; text-align: right;' class='forumheader3'>
 390          <input type='radio' name='listPages' value='1'".($pref['listPages'] ? " checked='checked'" : "")." /> ".CUSLAN_38."&nbsp;&nbsp;
 391          <input type='radio' name='listPages' value='0'".($pref['listPages'] ? "" : " checked='checked'")." /> ".CUSLAN_39."
 392          </td>
 393          </tr>
 394  
 395          <tr>
 396          <td style='width:50%' class='forumheader3'>".CUSLAN_30."</td>
 397          <td style='width:50%; text-align: right;' class='forumheader3'>
 398          <input class='tbox' type='text' name='pageCookieExpire' size='15' value='".$pref['pageCookieExpire']."' maxlength='10' />
 399          </td>
 400          </tr>
 401  
 402          <tr>
 403          <td colspan='2'  style='text-align:center' class='forumheader'>
 404          <input class='button' type='submit' name='saveOptions' value='".CUSLAN_40."' />
 405          </td>
 406          </tr>
 407          </table>
 408          </form>
 409          </div>";
 410  
 411          $ns->tablerender("Options", $text);
 412      }
 413  
 414  
 415  	function saveSettings()
 416      {
 417          global $pref;
 418          $pref['listPages'] = $_POST['listPages'];
 419          $pref['pageCookieExpire'] = $_POST['pageCookieExpire'];
 420          save_prefs();
 421          $this -> message = "Settings saved.";
 422      }
 423  
 424  	function show_options($action)
 425      {
 426          if ($action == "")
 427          {
 428              $action = "main";
 429          }
 430          $var['main']['text'] = CUSLAN_11;
 431          $var['main']['link'] = e_SELF;
 432  
 433          $var['create']['text'] = CUSLAN_12;
 434          $var['create']['link'] = e_SELF."?create";
 435  
 436          $var['createm']['text'] = CUSLAN_31;
 437          $var['createm']['link'] = e_SELF."?createm";
 438  
 439          $var['options']['text'] = LAN_OPTIONS;
 440          $var['options']['link'] = e_SELF."?options";
 441  
 442  
 443          show_admin_menu(CUSLAN_33, $action, $var);
 444      }
 445  }
 446  
 447  function cpage_adminmenu() {
 448      global $page;
 449      global $action;
 450      $page -> show_options($action);
 451  }
 452  
 453  ?>


Généré le : Sun Apr 1 01:23:32 2007 par Balluche grâce à PHPXref 0.7