Don't like ads? PRO users don't see any ads ;-)
Guest

page.add.inc.php

By: a guest on Jan 26th, 2011  |  syntax: PHP  |  size: 9.83 KB  |  hits: 62  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. <?PHP
  2.  
  3. /* ====================
  4. Seditio - Website engine
  5. Copyright Neocrome
  6. http://www.neocrome.net
  7. [BEGIN_SED]
  8. File=page.inc.php
  9. Version=130
  10. Updated=2010-feb-05
  11. Type=Core
  12. Author=Neocrome
  13. Description=Pages
  14. [END_SED]
  15. ==================== */
  16.  
  17. if (!defined('SED_CODE')) { die('Wrong URL.'); }
  18.  
  19. $id = sed_import('id','G','INT');
  20. $r = sed_import('r','G','ALP');
  21. $c = sed_import('c','G','ALP');
  22.  
  23. list($usr['auth_read'], $usr['auth_write'], $usr['isadmin']) = sed_auth('page', 'any');
  24. sed_block($usr['auth_write']);
  25.  
  26. /* === Hook === */
  27. $extp = sed_getextplugins('page.add.first');
  28. if (is_array($extp))
  29.         { foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
  30. /* ===== */
  31.  
  32. if ($a=='add')
  33.         {
  34.         sed_shield_protect();
  35.  
  36.         /* === Hook === */
  37.         $extp = sed_getextplugins('page.add.add.first');
  38.         if (is_array($extp))
  39.                 { foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
  40.         /* ===== */
  41.  
  42.         $newpagecat = sed_import('newpagecat','P','TXT');
  43.         $newpagekey = sed_import('newpagekey','P','TXT');
  44.         $newpagealias = sed_import('newpagealias','P','ALP');
  45.         $newpageextra1 = sed_import('newpageextra1','P','TXT');
  46.         $newpageextra2 = sed_import('newpageextra2','P','TXT');
  47.   $newpageextra3 = sed_import('newpageextra3','P','TXT');
  48.         $newpageextra4 = sed_import('newpageextra4','P','TXT');
  49.   $newpageextra5 = sed_import('newpageextra5','P','HTM');
  50.         $newpagetitle = sed_import('newpagetitle','P','TXT');
  51.         $newpagedesc = sed_import('newpagedesc','P','TXT');
  52.         $newpagetext = sed_import('newpagetext','P','HTM');
  53.         $newpagetext2 = sed_import('newpagetext2','P','HTM');
  54.         $newpageauthor = sed_import('newpageauthor','P','TXT');
  55.         $newpagefile = sed_import('newpagefile','P','TXT');
  56.         $newpageurl = sed_import('newpageurl','P','TXT');
  57.         $newpagesize = sed_import('newpagesize','P','TXT');
  58.         $newpageyear_beg = sed_import('ryear_beg','P','INT');
  59.         $newpagemonth_beg = sed_import('rmonth_beg','P','INT');
  60.         $newpageday_beg = sed_import('rday_beg','P','INT');
  61.         $newpagehour_beg = sed_import('rhour_beg','P','INT');
  62.         $newpageminute_beg = sed_import('rminute_beg','P','INT');
  63.         $newpageyear_exp = sed_import('ryear_exp','P','INT');
  64.         $newpagemonth_exp = sed_import('rmonth_exp','P','INT');
  65.         $newpageday_exp = sed_import('rday_exp','P','INT');
  66.         $newpagehour_exp = sed_import('rhour_exp','P','INT');
  67.         $newpageminute_exp = sed_import('rminute_exp','P','INT');
  68.  
  69.         $newpagebegin = sed_mktime($newpagehour_beg, $newpageminute_beg, 0, $newpagemonth_beg, $newpageday_beg, $newpageyear_beg) - $usr['timezone'] * 3600;
  70.         $newpageexpire = sed_mktime($newpagehour_exp, $newpageminute_exp, 0, $newpagemonth_exp, $newpageday_exp, $newpageyear_exp) - $usr['timezone'] * 3600;
  71.         $newpageexpire = ($newpageexpire<=$newpagebegin) ? 1861916400 : $newpageexpire;
  72.  
  73.         list($usr['auth_read'], $usr['auth_write'], $usr['isadmin']) = sed_auth('page', $newpagecat);
  74.         sed_block($usr['auth_write']);
  75.  
  76.         $error_string .= (empty($newpagecat)) ? $L['pag_catmissing']."<br />" : '';
  77.         $error_string .= (mb_strlen($newpagetitle)<2) ? $L['pag_titletooshort']."<br />" : '';
  78.  
  79.         if (empty($error_string))
  80.                 {
  81.                 if (!empty($newpagealias))
  82.                         {
  83.                         $sql = sed_sql_query("SELECT page_id FROM $db_pages WHERE page_alias='".sed_sql_prep($newpagealias)."'");
  84.                         $newpagealias = (sed_sql_numrows($sql)>0) ? "alias".rand(1000,9999) : $newpagealias;
  85.                         }
  86.  
  87.                 $sql = sed_sql_query("INSERT into $db_pages
  88.                         (page_state,
  89.                         page_type,
  90.                         page_cat,
  91.                         page_key,
  92.                         page_extra1,
  93.                         page_extra2,
  94.                         page_extra3,
  95.                         page_extra4,
  96.                         page_extra5,
  97.                         page_title,
  98.                         page_desc,
  99.                         page_text,
  100.                         page_text2,
  101.                         page_author,
  102.                         page_ownerid,
  103.                         page_date,
  104.                         page_begin,
  105.                         page_expire,
  106.                         page_file,
  107.                         page_url,
  108.                         page_size,
  109.                         page_alias)
  110.                         VALUES
  111.                         (1,
  112.                         0,
  113.                         '".sed_sql_prep($newpagecat)."',
  114.                         '".sed_sql_prep($newpagekey)."',
  115.                         '".sed_sql_prep($newpageextra1)."',
  116.                         '".sed_sql_prep($newpageextra2)."',
  117.                         '".sed_sql_prep($newpageextra3)."',
  118.                         '".sed_sql_prep($newpageextra4)."',
  119.                         '".sed_sql_prep($newpageextra5)."',
  120.                         '".sed_sql_prep($newpagetitle)."',
  121.                         '".sed_sql_prep($newpagedesc)."',
  122.                         '".sed_sql_prep($newpagetext)."',
  123.                         '".sed_sql_prep($newpagetext2)."',
  124.                         '".sed_sql_prep($newpageauthor)."',
  125.                         ".(int)$usr['id'].",
  126.                         ".(int)$sys['now_offset'].",
  127.                         ".(int)$newpagebegin.",
  128.                         ".(int)$newpageexpire.",
  129.                         ".(int)$newpagefile.",
  130.                         '".sed_sql_prep($newpageurl)."',
  131.                         '".sed_sql_prep($newpagesize)."',
  132.                         '".sed_sql_prep($newpagealias)."')");
  133.  
  134.                 /* === Hook === */
  135.                 $extp = sed_getextplugins('page.add.add.done');
  136.                 if (is_array($extp))
  137.                         { foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
  138.                 /* ===== */
  139.  
  140.                 sed_shield_update(30, "New page");
  141.                 header("Location: message.php?msg=300");
  142.                 exit;
  143.                 }
  144.         }
  145.  
  146. if ($newpagefile)
  147.         { $pageadd_form_file = "<input type=\"radio\" class=\"radio\" name=\"newpagefile\" value=\"1\" checked=\"checked\" />".$L['Yes']." <input type=\"radio\" class=\"radio\" name=\"newpagefile\" value=\"0\" />".$L['No']; }
  148.         else
  149.         { $pageadd_form_file = "<input type=\"radio\" class=\"radio\" name=\"newpagefile\" value=\"1\" />".$L['Yes']." <input type=\"radio\" class=\"radio\" name=\"newpagefile\" value=\"0\" checked=\"checked\" />".$L['No']; }
  150.  
  151. $newpagecat = (empty($newpagecat)) ? $c : $newpagecat;
  152. $pageadd_form_categories = sed_selectbox_categories($newpagecat, 'newpagecat');
  153. $newpage_form_begin = sed_selectbox_date($sys['now_offset']+$usr['timezone']*3600, 'long', '_beg');
  154. $newpage_form_expire = sed_selectbox_date(1861916400, 'long', '_exp');
  155.  
  156. $bbcodes = ($cfg['parsebbcodepages']) ? sed_build_bbcodes('newpage', 'newpagetext',$L['BBcodes']) : '';
  157. $smilies = ($cfg['parsesmiliespages']) ? sed_build_smilies('newpage', 'newpagetext',$L['Smilies']) : '';
  158. $pfs = sed_build_pfs($usr['id'], 'newpage', 'newpagetext',$L['Mypfs']);
  159. $pfs .= (sed_auth('pfs', 'a', 'A')) ? " &nbsp; ".sed_build_pfs(0, 'newpage', 'newpagetext', $L['SFS']) : '';
  160. $pfs_form_url_myfiles = (!$cfg['disable_pfs']) ? sed_build_pfs($usr['id'], "newpage", "newpageurl", $L['Mypfs']) : '';
  161. $pfs_form_url_myfiles .= (sed_auth('pfs', 'a', 'A')) ? ' '.sed_build_pfs(0, 'newpage', 'newpageurl', $L['SFS']) : '';
  162.  
  163. $sys['sublocation'] = $sed_cat[$c]['title'];
  164.  
  165. /* === Hook === */
  166. $extp = sed_getextplugins('page.add.main');
  167. if (is_array($extp))
  168.         { foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
  169. /* ===== */
  170.  
  171. require("system/header.php");
  172.  
  173. $mskin = sed_skinfile(array('page', 'add', $sed_cat[$newpagecat]['tpl']));
  174. $t = new XTemplate($mskin);
  175.  
  176. if (!empty($error_string))
  177.         {
  178.         $t->assign("PAGEADD_ERROR_BODY",$error_string);
  179.         $t->parse("MAIN.PAGEADD_ERROR");
  180.         }
  181.  
  182. $t->assign(array(
  183.         "PAGEADD_PAGETITLE" => $L['pagadd_title'],
  184.         "PAGEADD_SUBTITLE" => $L['pagadd_subtitle'],
  185.         "PAGEADD_ADMINEMAIL" => "mailto:".$cfg['adminemail'],
  186.         "PAGEADD_FORM_SEND" => "page.php?m=add&amp;a=add",
  187.         "PAGEADD_FORM_CAT" => $pageadd_form_categories,
  188.         "PAGEADD_FORM_KEY" => "<input type=\"text\" class=\"text\" name=\"newpagekey\" value=\"".sed_cc($newpagekey)."\" size=\"16\" maxlength=\"16\" />",
  189.         "PAGEADD_FORM_ALIAS" => "<input type=\"text\" class=\"text\" name=\"newpagealias\" value=\"".sed_cc($newpagealias)."\" size=\"16\" maxlength=\"24\" />",
  190.         "PAGEADD_FORM_EXTRA1" => "<input type=\"text\" class=\"text\" name=\"newpageextra1\" value=\"".sed_cc($newpageextra1)."\" size=\"56\" maxlength=\"255\" />",
  191.         "PAGEADD_FORM_EXTRA2" => "<input type=\"text\" class=\"text\" name=\"newpageextra2\" value=\"".sed_cc($newpageextra2)."\" size=\"56\" maxlength=\"255\" />",
  192.         "PAGEADD_FORM_EXTRA3" => "<input type=\"text\" class=\"text\" name=\"newpageextra3\" value=\"".sed_cc($newpageextra3)."\" size=\"56\" maxlength=\"255\" />",
  193.         "PAGEADD_FORM_EXTRA4" => "<input type=\"text\" class=\"text\" name=\"newpageextra4\" value=\"".sed_cc($newpageextra4)."\" size=\"56\" maxlength=\"255\" />",
  194.         "PAGEADD_FORM_EXTRA5" => "<input type=\"text\" class=\"text\" name=\"newpageextra4\" value=\"".sed_cc($newpageextra4)."\" size=\"56\" maxlength=\"255\" />",
  195.         "PAGEADD_FORM_TITLE" => "<input type=\"text\" class=\"text\" name=\"newpagetitle\" value=\"".sed_cc($newpagetitle)."\" size=\"56\" maxlength=\"255\" />",
  196.         "PAGEADD_FORM_DESC" => "<input type=\"text\" class=\"text\" name=\"newpagedesc\" value=\"".sed_cc($newpagedesc)."\" size=\"56\" maxlength=\"255\" />",
  197.         "PAGEADD_FORM_AUTHOR" => "<input type=\"text\" class=\"text\" name=\"newpageauthor\" value=\"".sed_cc($newpageauthor)."\" size=\"16\" maxlength=\"24\" />",
  198.         "PAGEADD_FORM_OWNER" => sed_build_user($usr['id'], sed_cc($usr['name'])),
  199.         "PAGEADD_FORM_OWNERID" => $usr['id'],
  200.         "PAGEADD_FORM_BEGIN" => $newpage_form_begin,
  201.         "PAGEADD_FORM_EXPIRE" => $newpage_form_expire,
  202.         "PAGEADD_FORM_FILE" => $pageadd_form_file,
  203.         "PAGEADD_FORM_URL" => "<input type=\"text\" class=\"text\" name=\"newpageurl\" value=\"".sed_cc($newpageurl)."\" size=\"56\" maxlength=\"255\" /> ".$pfs_form_url_myfiles,
  204.         "PAGEADD_FORM_SIZE" => "<input type=\"text\" class=\"text\" name=\"newpagesize\" value=\"".sed_cc($newpagesize)."\" size=\"56\" maxlength=\"255\" />",
  205.         "PAGEADD_FORM_TEXT" => "<textarea name=\"newpagetext\" rows=\"24\" cols=\"56\">".sed_cc($newpagetext)."</textarea><br />".$bbcodes." ".$smilies." ".$pfs,
  206.         "PAGEADD_FORM_TEXT2" => "<textarea name=\"newpagetext2\" rows=\"24\" cols=\"56\">".sed_cc($newpagetext2)."</textarea>",
  207.         "PAGEADD_FORM_TEXTBOXER" => "<textarea name=\"newpagetext\" rows=\"24\" cols=\"56\">".sed_cc($newpagetext)."</textarea><br />".$bbcodes." ".$smilies." ".$pfs,
  208.         "PAGEADD_FORM_BBCODES" => $bbcodes,
  209.         "PAGEADD_FORM_SMILIES" => $smilies,
  210.         "PAGEADD_FORM_MYPFS" => $pfs
  211.                 ));
  212.  
  213. /* === Hook === */
  214. $extp = sed_getextplugins('page.add.tags');
  215. if (is_array($extp))
  216.         { foreach($extp as $k => $pl) { include('plugins/'.$pl['pl_code'].'/'.$pl['pl_file'].'.php'); } }
  217. /* ===== */
  218.  
  219. $t->parse("MAIN");
  220. $t->out("MAIN");
  221.  
  222. require("system/footer.php");
  223.  
  224. ?>