home *** CD-ROM | disk | FTP | other *** search
/ Cricao de Sites - 650 Layouts Prontos / WebMasters.iso / Templates / CSS / nolimit / snews.php < prev   
PHP Script  |  2006-04-14  |  80KB  |  1,685 lines

  1. <?php
  2. // ----------------------------------------------------------------------
  3. // sNews v1.4
  4. // Copyright(c) 2006, Solucija - All rights reserved
  5. // http://www.solucija.com/
  6. //
  7. // sNews is licenced under a Creative Commons Licence,
  8. // see http://creativecommons.org/licenses/by/2.5/ for more info.
  9. // ----------------------------------------------------------------------
  10. // For information how to set up the MySQL database, see readme.txt.
  11. // Enter your settings below
  12. // ----------------------------------------------------------------------
  13.  
  14. error_reporting (E_ALL ^ E_NOTICE);
  15.  
  16. function s($variable) {
  17. $s = Array();
  18.  
  19. //******************
  20. // GLOBAL SETTINGS
  21. //******************
  22.  
  23. $s['username'] = ""; // Enter your administration username
  24. $s['password'] = ""; // Enter your administration password
  25.  
  26. $s['dbhost'] = ""; // MySQL host
  27. $s['dbname'] = ""; // Database name
  28. $s['dbuname'] = ""; // Database Username
  29. $s['dbpass'] = ""; // Database password
  30. $s['dberror'] = "<b>There was an error while connecting to the database.</b> <br /> Check your database settings."; // Database error message
  31. $s['prefix'] = ""; // Table prefix for multiple sNews systems on one database (if you don't need it just leave it blank)
  32.  
  33. $s['home'] = "home"; // Enter blog title like home or blog
  34. $s['display_new_on_home'] = False; // Display new articles from all categories on home (True or False)
  35. $s['website'] = "http://yousite.com/"; // Website url with the trailing slash
  36. $s['website_title'] = ""; // Website title
  37. $s['website_email'] = ""; // Contact email (info@yoursite.com)
  38. $s['contact_subject'] = "Contact Form"; // Subject of the contact form message
  39. $s['image_folder'] = "img"; // Folder to save images
  40. $s['charset'] = "iso-8859-2"; // Default charset
  41. $s['display_num_categories'] = False; // Display number of articles next to a category name (True or False)
  42. $s['new_timezone'] = "Europe/London"; // Enter you timezome in GMT and please include the + or - sign
  43. $s['date_format'] = "d.m.Y."; // Date format
  44. $s['fp_date_format'] = "d.m."; // Date format for front page articles
  45. $s['comments_order'] = "ASC"; // Order of displaying comments ASC or DESC (DESC - newer ones on top)
  46. $s['results_per_page'] = "100"; // Number of comments to display per page
  47. $s['display_comment_time'] = "YES"; // display date and time on comments (YES or NO)
  48. $s['comment_dt_format'] = "d.m."; // Date and time format for comments
  49. $s['rss_limit'] = "5"; // Limit RSS feed to a number of articles
  50. $s['rss_date_format'] = "l dS \of F Y h:i:s A"; // RSS date format (DATE_RFC822)
  51.  
  52. $s['language'] = ""; // Download the translation file from http://translations.solucija.com/ put it in the same directory with snews.php and write the language name.
  53.  
  54. $s['use_javascript'] = True; // Use Javascript functions in snews (YER or NO)
  55.  
  56. // If you want to enable word filtering you must provide a file with the words you want to remove. One word per line
  57. $s['word_filter_enable'] = 'NO'; // Do you want to filter out bad words from your comments? YES / NO
  58. $s['word_filter_file'] = 'bad_words.txt'; // This is a file with words you want to exclude from your comments.
  59. $s['word_filter_change'] = 'XXXX'; // What you want to change words that have been filtered to?
  60.  
  61.  
  62. //**************
  63. // CSS SETTINGS
  64. //**************
  65.  
  66. $s['css_error'] = "error";
  67. $s['css_success'] = "success";
  68. $s['date_class'] = "date"; // class used for info line (read more, comments, date, etc.)
  69. $s['button'] = "button"; // button on submit comment, contact, etc.
  70. $s['search_button'] = "searchbutton"; // search button
  71.  
  72.  
  73. //***************
  74. $s['username'] = md5($s['username']);
  75. $s['password'] = md5($s['password']);
  76. $s['home'] = strtolower($s['home']);
  77.  
  78. return $s[$variable];
  79. }
  80.  
  81.  
  82. //********************
  83. // LANGUAGE VARIABLES
  84. //********************
  85. function l($variable) {
  86. $l = Array();
  87.  
  88. $l['home'] = "Home";
  89. $l['archives'] = "Archive";
  90. $l['rss_feed'] = "RSS Feed";
  91. $l['contact'] = "Contact";
  92. $l['search_button'] = "Search";
  93. $l['search_results'] = "Search results";
  94. $l['charerror'] = "At least 4 characters are needed to perform the search.";
  95. $l['noresults'] = "There are no results for query ";
  96. $l['resultsfound'] = "results were found for query";
  97. $l['recent_articles'] = "Recent articles";
  98. $l['addcomment'] = "Leave a comment";
  99. $l['comments'] = "Comments";
  100. $l['comment'] = "Comment";
  101. $l['first_page'] = "First";
  102. $l['last_page'] = "Last";
  103. $l['previous_page'] = "Previous";
  104. $l['next_page'] = "Next";
  105. $l['name'] = "Name";
  106. $l['sendcomment'] = "Submit";
  107. $l['comment_sent'] = "Your comment has been submitted";
  108. $l['comment_error'] = "Your comment was not sent";
  109. $l['ce_reasons'] = "Possible reasons: You left blank column or the comment is too short.";
  110. $l['email'] = "Email";
  111. $l['url'] = "Website URL";
  112. $l['message'] = "Message";
  113. $l['send_message'] = "Submit";
  114. $l['contact_sent'] = "Your message has been sent";
  115. $l['contact_not_sent'] = "Your message was not sent";
  116. $l['message_error'] = "Possible reasons: You left name or message field blank or email address does not exist";
  117. $l['backhome'] = "Back home";
  118. $l['backarticle'] = "Back to article";
  119. $l['read_more'] = "Read more";
  120. $l['article_not_exist'] = "Article does not exist";
  121.  
  122.  
  123. //***********************************
  124. // ADMINISTRATION LANGUAGE VARIABLES
  125. //***********************************
  126. $l['username'] = "Username";
  127. $l['password'] = "Password";
  128. $l['login'] = "Login";
  129. $l['logged_in'] = "You are Logged In";
  130. $l['log_out'] = "Logging out";
  131. $l['logout'] = "Logout";
  132. $l['settings'] = "Settings";
  133. $l['save_settings'] = "Save settings";
  134. $l['article'] = "Article";
  135. $l['articles'] = "Articles";
  136. $l['category'] = "Category";
  137. $l['categories'] = "Categories";
  138. $l['add_category'] = "Add category";
  139. $l['edit_category'] = "Edit category";
  140. $l['delete_category'] = "Delete category";
  141. $l['description'] = "Description";
  142. $l['publish_category'] = "Publish category";
  143. $l['published'] = "Published";
  144. $l['unpublished'] = "Unpublished";
  145. $l['new_article'] = "New article";
  146. $l['limit_article'] = "Limit front page article to a number of characters (0 = no limit)";
  147. $l['article_date'] = "Article date (enter a higher date for future posting)";
  148. $l['auto_html'] = "Auto paragraph";
  149. $l['display_title'] = "Display title";
  150. $l['display_info'] = "Display info line";
  151. $l['enable_commenting'] = "Enable commenting";
  152. $l['customize'] = "Customize";
  153. $l['server_time'] = "Time on Server";
  154. $l['future_posting'] = "Future posting";
  155. $l['publish_date'] = "Publish Date";
  156. $l['day'] = "Day";
  157. $l['month'] = "Month";
  158. $l['year'] = "Year";
  159. $l['hour'] = "Hour";
  160. $l['minute'] = "Minute";
  161. $l['publish_article'] = "Publish article";
  162. $l['edit_comment'] = "Edit comment";
  163. $l['freeze_comments'] = "Freeze comments";
  164. $l['unfreeze_comments'] = "Unfreeze comments";
  165. $l['unpublished_articles'] = "Unpublished articles";
  166. $l['enable'] = "Enable";
  167. $l['submit_new_article'] = "Submit";
  168. $l['operation_completed'] = "Operation completed succesfully";
  169. $l['deleted_success'] = "Succesfuly deleted";
  170. $l['edit_article'] = "Edit article";
  171. $l['simple'] = "Simple";
  172. $l['advanced'] = "Advanced";
  173. $l['images'] = "Images";
  174. $l['attach_image'] = "Attach image";
  175. $l['upload_image'] = "Upload Image";
  176. $l['upload'] = "Upload";
  177. $l['no_image'] = "No image";
  178. $l['edit'] = "Edit";
  179. $l['delete_article'] = "Delete article";
  180. $l['admin_error'] = "Error";
  181. $l['title_error'] = "Either a title or SEF title was not entered";
  182. $l['text_error'] = "You must enter some text";
  183. $l['back'] = "Back";
  184. $l['comments'] = "Comments";
  185. $l['enabled'] = "Enabled";
  186. $l['disabled'] = "Disabled";
  187. $l['delete_comment'] = "Delete comment";
  188. $l['title'] = "Title";
  189. $l['sef_title'] = "Search engine friendly title (will be used as link to the article)";
  190. $l['sef_title_cat'] = "Search engine friendly title (will be used as link to the category)";
  191. $l['text'] = "Text";
  192. $l['position'] = "Position";
  193. $l['display_menu_item'] = "Display as menu item";
  194. $l['left'] = "Left";
  195. $l['center'] = "Center";
  196. $l['right'] = "Right";
  197. $l['saved_images'] = "Saved images";
  198. $l['image_error'] = "Image could not be copied";
  199. $l['error_category_seftitle_exists'] = "The category SEF title allready exists.";
  200. $l['error_category_name_exists'] = "The category name allready exists.";
  201. $l['error_category_name_empty'] = "The category name cannot be empty.";
  202. $l['error_category_seftitle_empty'] = "The category SEF title cannot be empty.";
  203. $l['error_not_logged_in'] = "You are not currently logged in and so are not allowed to do that.";
  204. $l['error_article_seftitle_exists'] = "The article SEF title allready exists.<br /><br /><strong>Be carefull:</strong> Due to the fact that when something goes wrong most posting options are lost, please check them before posting again.";
  205. $l['error_article_title_exists'] = "The article title allready exists.<br /><br /><strong>Be carefull:</strong> Due to the fact that when something goes wrong most posting options are lost, please check them before posting again.";
  206. $l['error_article_title_empty'] = "The article title cannot be empty.<br /><br /><strong>Be carefull:</strong> Due to the fact that when something goes wrong most posting options are lost, please check them before posting again.";
  207. $l['error_article_seftitle_empty'] = "The article SEF title cannot be empty.<br /><br /><strong>Be carefull:</strong> Due to the fact that when something goes wrong most posting options are lost, please check them before posting again.";
  208. $l['warning_delete'] = "Are you sure you want to delete this?"; //Javascript warning when trying to delete an article, category, comment or file.
  209. $l['make_sef_text'] = "Make SEF title"; //This is the name of the javascript link that creates the SEF titles.
  210. $l['error_article_seftitle_illegal'] = "The SEF title you entered contains illegal characters.<br />You can only user a-z, 0-9 _ and -<br /><br />A new SEF url has been selected from the title. Please check it.";
  211. $l['error_category_seftitle_illegal'] = "The SEF title you entered contains illegal characters.<br />You can only user a-z, 0-9 _ and -<br /><br />A new SEF url has been selected from the title. Please check it.";
  212.  
  213.  
  214.  
  215. //*******************************************************************************
  216. //    END OF SETTINGS & VARIABLES, EDIT ONLY IF YOU KNOW WHAT YOU'RE DOING
  217. //*******************************************************************************
  218.  
  219.  
  220.  
  221. if (strtolower((s('language'))!='default') AND (strtolower(s('language'))!='english') AND file_exists('snews_'.s('language').'.php')) {
  222.     include('snews_'.s('language').'.php');
  223. }
  224. return $l[$variable];
  225. }
  226.  
  227. // PERMANENT CONNECTION TO THE DATABASE
  228. function connect_to_db() {
  229.     $db = mysql_pconnect(s('dbhost'),s('dbuname'),s('dbpass'));
  230.     mysql_select_db(s('dbname')) or die(s('dberror'));
  231. }
  232.  
  233. // FIND CATEGORY'S SEF TITLE THROUGH ARTICLE'S CATEGORY ID
  234. function find_cat_sef($categoryid) {
  235.     $query = "SELECT seftitle FROM " .s('prefix'). "categories WHERE id = '$categoryid'";
  236.     $result = mysql_query($query);
  237.           while ($r = mysql_fetch_array($result)) {
  238.               $cat_sef = $r['seftitle'];           
  239.         }
  240.         if (isset($cat_sef)) { 
  241.             $cat_sef_title = $cat_sef; 
  242.         } else {
  243.             $cat_sef_title = s('home'); // if there's no such category - it's home
  244.         }
  245.     return $cat_sef_title;
  246. }
  247.  
  248. // FIND ARTICLE'S SEF TITLE THROUGH ID
  249. function find_article_sef($articleid) {
  250.     $query = "SELECT seftitle FROM " .s('prefix'). "articles WHERE id = '$articleid'";
  251.     $result = mysql_query($query);
  252.           while ($r = mysql_fetch_array($result)) {
  253.               $article_sef_title = $r['seftitle'];           
  254.         }
  255.     return $article_sef_title;
  256. }
  257.  
  258. // FIND ARTICLE'S CATEGORY THROUGH ARTICLE'S ID
  259. function find_article_cat($articleid) {
  260.     $query = "SELECT category FROM " .s('prefix'). "articles WHERE id = '$articleid'";
  261.     $result = mysql_query($query);
  262.           while ($r = mysql_fetch_array($result)) {
  263.               $article_cat = $r['category'];           
  264.         }
  265.     return $article_cat;
  266. }
  267.  
  268. // CLEAN - cleaning query
  269. function clean($query) {
  270.     $query = mysql_real_escape_string(addslashes($query));
  271.     return $query;
  272. }
  273. // CLEAN - XSS stuff clean.
  274. function cleanXSS($text) {
  275.     $allowedtags = '<b><i><br><a><ul><li><pre><hr><blockquote><img>';
  276.     $notallowedattribs = array("@javascript:|onclick|ondblclick|onmousedown|onmouseup"
  277.         ."|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup@si");
  278.     $changexssto = '';
  279.     $text = str_replace("\n", "<br />", $text);
  280.     $text = preg_replace($notallowedattribs,$changexssto,$text);
  281.     $text = strip_tags($text,$allowedtags);
  282.     //Clean words if asked.
  283.     $text = cleanWords($text);
  284.     return $text;
  285. }
  286.  
  287. // CLEAN - WORD FILTER
  288. function cleanWords($text) {
  289.     if ((strtolower(s('word_filter_enable')) == 'yes') AND (file_exists(s('word_filter_file')))) {
  290.         $bad_words_from_what = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "", file(s('word_filter_file')));
  291.         $bad_words_from_what = preg_replace('/^(.*)$/', '/\\1/i', $bad_words_from_what);
  292.         echo $test[0];
  293.         $bad_words_to_what = s('word_filter_change');
  294.         $text = preg_replace($bad_words_from_what, $bad_words_to_what, $text);
  295.         return $text;
  296.     } else {
  297.         return $text;
  298. }}
  299.  
  300. //********
  301. // CHECK IF UNIQUE
  302. //********
  303. function check_if_unique($what, $text, $not_id = 'x') {
  304.  
  305.     switch ($what) {
  306.         case 'article_seftitle':
  307.             $sql = "SELECT id FROM ".s('prefix')."articles WHERE seftitle = '".clean($text)."' AND id != '".$not_id."'";
  308.             break;
  309.         case 'article_title':
  310.             $sql = "SELECT id FROM ".s('prefix')."articles WHERE title = '".clean($text)."' AND id != '".$not_id."'";
  311.             break;
  312.         case 'category_seftitle':
  313.             $sql = "SELECT id FROM ".s('prefix')."categories WHERE seftitle = '".clean($text)."' AND id != '".$not_id."'";
  314.             break;
  315.         case 'category_name':
  316.             $sql = "SELECT id FROM ".s('prefix')."categories WHERE name = '".clean($text)."' AND id != '".$not_id."'";
  317.             break;
  318.         };
  319.     $rows = mysql_num_rows(mysql_query($sql));
  320.     if ( $rows == 0 ) {
  321.         return false;
  322.     } else {
  323.         return true;
  324.     }
  325. }
  326.  
  327. // JAVASCRIPT ECHO
  328. function if_javascript_on($code, $do = 'echo') {
  329.     if (strtolower(s('use_javascript')) == True) {
  330.         if ($do=='echo') {
  331.             echo $code;
  332.         } else {
  333.             return $code;
  334.         }
  335.     }
  336. }
  337.  
  338. function if_javascript_off($code) {
  339.     if (strtolower(s('use_javascript')) != True) {
  340.         if ($do=='echo') {
  341.             echo $code;
  342.         } else {
  343.             return $code;
  344.         }
  345.     }
  346. }
  347.  
  348. // GET ID
  349. function get_id($parameter) {
  350.         $url = Array();
  351.         $url = explode("/", clean($_GET['category']));
  352.           $get_id = Array();
  353.         $get_id['category'] = $url['0'];
  354.         if (isset($url['1'])) {
  355.             $get_id['article'] = $url['1'];
  356.         }
  357.         if (isset($url['2'])) {
  358.             
  359.             $get_id['commentspage'] = $url['2'];
  360.         }
  361.     if (isset($get_id[$parameter])) {
  362.     return $get_id[$parameter];
  363. }}
  364.  
  365. // UPDATE ARTICLES (FUTURE POSTING)
  366. function update_articles() {
  367.     mysql_query("UPDATE ".s('prefix')."articles SET published=1 WHERE published=0 AND date <= '".date("Y-m-d H:i:s")."'");
  368. }
  369.  
  370. //Make a clean SEF url
  371. function cleanSEF($string) {
  372.     $string = str_replace(' ', '-', $string);
  373.     $string = preg_replace('/[^0-9a-zA-Z-_]/', '', $string); 
  374.     $string = str_replace('-', ' ', $string);
  375.     $string = preg_replace('/^\s+|\s+$/', '', $string);
  376.     $string = preg_replace('/\s+/', ' ', $string);
  377.     $string = str_replace(' ', '-', $string);
  378.     return strtolower($string);
  379. }
  380.  
  381. function cleancheckSEF($string) {
  382.     if (!ereg("^[_a-zA-Z0-9-]+$", $string)) {   
  383.         $ret="notok";
  384.     } else {
  385.         $ret="ok";
  386.     } 
  387.     return $ret;
  388. }
  389.  
  390. // PHP Vs Mysql time difference for usage in articles update.
  391. function phpvsmysqltimediff() {
  392.     $mysql_datetime = mysql_query('SELECT now()');
  393.     $mysql_datetime = mysql_fetch_row($mysql_datetime);
  394.     $mysql_datetime = $mysql_datetime['0'];
  395.     $mysql_datetime = strtotime($mysql_datetime);
  396.     $php_datetime = strtotime("now");
  397.     $timediff = $php_datetime-$mysql_datetime;
  398.     $days=intval($timediff/86400);
  399.     $remain=$timediff%86400;
  400.     $hours=intval($remain/3600);
  401.     $remain=$remain%3600;
  402.     $mins=intval($remain/60);
  403.     $secs=$remain%60;
  404.     echo $timediff=$hours.' hours '.$mins.' minutes '.$secs.' seconds';
  405. }
  406.  
  407. // If javascript is on echos javascript functions under <title/>
  408. function javascript_headers() {
  409. if_javascript_on('
  410. <script type="text/javascript">
  411. //<![CDATA[
  412. function makesef() {
  413. text_from = document.getElementById(\'article_title\');
  414. text_to = document.getElementById(\'article_sef\');
  415. str = text_from.value;
  416. ex = /\$|,|@|#|~|`|\%|\*|\^|\.|\&|\(|\)|\+|\=|\[|\]|\[|\}|\{|\;|\:|\'|\"|\<|\>|\?|\||\\\\|\!|\$|\//g;
  417. str = str.replace(ex, "");
  418. ex = /^\s+|\s+$/g;
  419. str = str.replace(ex, "");
  420. ex = /\s+/g;
  421. str = str.replace(ex, "_");
  422. str = str.toLowerCase();
  423. text_to.value = str;
  424. };
  425. //]]>
  426. </script>');
  427. };
  428.  
  429. //*******************************************************************************
  430. //                               WEBSITE FUNCTIONS
  431. //*******************************************************************************
  432.  
  433. // STARTUP
  434. function snews_startup() {
  435.     putenv("TZ=".s('new_timezone')."");
  436.     connect_to_db();
  437.     update_articles();
  438.     if (isset($_POST['Submitted']) == "True") {
  439.         if (md5(clean($_POST['Username'])) == s('username') && md5(clean($_POST['Password'])) == s('password')) {
  440.             $_SESSION['Logged_In'] = "True";
  441.             $_SESSION['Username'] = s('username');
  442.             $_SESSION['Website'] = s('website');
  443.         }
  444.     }
  445. };
  446. snews_startup();
  447.  
  448. // TITLE
  449. function title() {
  450.     echo "<base href='" .s('website'). "' />";
  451.     $article_title = get_id('article');
  452.     if ($article_title == "") {
  453.         $title = s('website_title');
  454.     } else {
  455.         $query = "SELECT * FROM " .s('prefix'). "articles WHERE seftitle = '$article_title'";
  456.         $result = mysql_query($query);
  457.           while ($r = mysql_fetch_array($result)) {
  458.             $title = s('website_title'). " » ". $r['title'];
  459.         }
  460.     }
  461.     echo "<title>" .$title. "</title>";
  462.     javascript_headers();
  463. }
  464.  
  465. // LOGIN LOGOUT LINK
  466. function login_link() {
  467.     if (isset($_SESSION['Logged_In'])) {
  468.         echo '<a href="'.s('website').'logout/" title="'.l('logout').'">'.l('logout').'</a>';
  469.     } else {
  470.         echo '<a href="'.s('website').'login/" title="'.l('login').'">'.l('login').'</a>';
  471.     }
  472. }
  473.  
  474. // DISPLAY CATEGORIES
  475. function categories() { 
  476.     echo "<ul>";
  477.     echo "<li><a href='". s('website'). "' title='" .s('website_title'). "'>". l('home') ."</a></li>";
  478.     $query = "SELECT * FROM " .s('prefix'). "categories WHERE published = 'YES' ORDER BY id"; 
  479.     $result = mysql_query($query);
  480.     while ($r = mysql_fetch_array($result)) {
  481.         $calc_num_query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND category = $r[id]"; 
  482.         $cm_result = mysql_query($calc_num_query);
  483.         $num_rows = mysql_num_rows($cm_result);
  484.         $category_title = $r['seftitle'];
  485.         if (s('display_num_categories') == True) {
  486.             echo "<li><a href='" .s('website').$category_title. "/' title='". $r['description'] ."'>" .$r['name']. " (" .$num_rows. ") </a></li>"; }
  487.         else { echo "<li><a href='" .s('website').$category_title. "/' title='". $r['description'] ."'>" .$r['name']. "</a></li>"; }}
  488.         echo "</ul>";
  489. }
  490.  
  491.  
  492. // DISPLAY MENU ITEMS
  493. function menu_items() { 
  494.     echo "<ul class='menu'>";
  495.     echo "<li><a href='" .s('website'). "archives/'>" .l('archives'). "</a></li>";        
  496.     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 3 ORDER BY id"; 
  497.     $result = mysql_query($query);
  498.     while ($r = mysql_fetch_array($result)) {
  499.         echo "<li><a href='" .s('website'). "home/" .$r['seftitle'] ."/'>" .$r['title']. "</a></li>";}
  500.     if (isset($_SESSION['Logged_In'])) { 
  501.         echo "<li><a href='" .s('website'). "categories/'>". l('categories') ."</a></li>"; 
  502.         echo "<li><a href='" .s('website'). "new/'>". l('new_article') ."</a></li>";
  503.         echo "<li><a href='" .s('website'). "unpublished/'>". l('unpublished_articles') ."</a></li>";
  504.         echo "<li><a href='" .s('website'). "images/'>". l('images') ."</a></li>"; } 
  505.         echo "<li><a href='" .s('website'). "contact/'>" .l('contact'). "</a></li>"; ?>
  506.     </ul> <?
  507. }
  508.  
  509. // LEFT
  510. function left() {    
  511.     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 5 AND published = 1 ORDER BY id DESC";
  512.     $result = mysql_query($query);
  513.     while ($r = mysql_fetch_array($result)) {
  514.         if ($r['textlimit'] == 0) { $textlimit = 999000; } else { $textlimit = $r['textlimit']; }
  515.         if (isset($_SESSION['Logged_In'])) { echo l('edit'). " [ <a href='" .s('website'). "index.php?action=simpleedit&id=$r[id]'>". l('simple') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=advancededit&id=$r[id]'>". l('advanced') ."</a> ] <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='index.php?action=process&task=delete&id=". $r['id'] ."'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l('delete_article') ."</a>"; }
  516.         if ($r['displaytitle'] == "YES") { echo "<h2>". $r['title'] ."</h2>"; }
  517.         if ($r['textlimit'] == 0) { $textlimit = 999000; } else { $textlimit = $r['textlimit']; }
  518.                 
  519.         // PHP files inclusion routine
  520.             $fulltext = $r['text'];
  521.             $findme  = "[include]";
  522.             $pos = strpos($fulltext, $findme); 
  523.             $findme  = "[/include]";
  524.             $pos2 = strpos($fulltext, $findme); 
  525.             $file = substr($fulltext, $pos + 9, $pos2 - 9);
  526.             if ($pos2 > 0) {
  527.                 $text = str_replace("[include]", "|&|", $fulltext);
  528.                 $text = str_replace("[/include]", "|&|", $text);
  529.                 $text = explode("|&|", $text); 
  530.                 $num = count($text);
  531.                 for ($i = 0; ; $i++) {
  532.                     if ($i == $num) {
  533.                         break;
  534.                     }
  535.                     if (strpos($text[$i], '.php') === false AND strpos($text[$i], '.txt') === false AND strpos($text[$i], '.inc') === false) {
  536.                         echo substr(stripslashes($text[$i]), 0, $textlimit);
  537.                     } else {
  538.                         include $text[$i];
  539.                     }}} else {
  540.                         echo substr(stripslashes($fulltext), 0, $textlimit);
  541.                         
  542.                     
  543. }}} 
  544.  
  545. // CENTER            
  546. function center($article_limit) {
  547.     if (isset($_GET['category'])) { $id = $_GET['category']; }
  548.     if (isset($_GET['articleid'])) { $articleid = $_GET['articleid']; }
  549.     if (isset($_POST['submit_text'])) { processing(); $processed = True; }
  550.     if (isset($_POST['contactform'])) { contact(); $processed = True; }
  551.     if (isset($_GET['category'])) { $action = $_GET['category']; } 
  552.     else if (isset($_GET['action'])) { $action = $_GET['action']; }
  553.     if (isset($processed) AND $processed == True) { unset($action); }
  554.     switch ($action) {    
  555.     case "archives": 
  556.         archives();
  557.     break;
  558.     case "contact": 
  559.         contact();
  560.     break;
  561.     case "rss": 
  562.         rss();
  563.     break;
  564.     case "login": 
  565.         login();
  566.     break;
  567.     case "categories": 
  568.         if (isset($_SESSION['Logged_In'])) { view_categories(); }
  569.     break;
  570.     case "editcategory":
  571.         if (isset($_SESSION['Logged_In'])) { edit_category(); }
  572.     break;
  573.     case "new":
  574.         if (isset($_SESSION['Logged_In'])) { new_article(); }
  575.     break;
  576.     case "unpublished": 
  577.         if (isset($_SESSION['Logged_In'])) { unpublished_articles(); }
  578.     break;
  579.     
  580.     case "simpleedit":
  581.         if (isset($_SESSION['Logged_In'])) { edit_article(simple); }
  582.     break;
  583.     case "advancededit":
  584.         if (isset($_SESSION['Logged_In'])) { edit_article(advanced); }
  585.     break;
  586.     case "editcomment":
  587.         if (isset($_SESSION['Logged_In'])) { edit_comment(); }
  588.     break;
  589.     case "images":
  590.         if (isset($_SESSION['Logged_In'])) { images(); }
  591.     break;
  592.     case "process": 
  593.         if (isset($_SESSION['Logged_In']) AND $display_further <> "NO") { processing(); }
  594.     break;    
  595.     case "logout":
  596.         session_start();
  597.         $_SESSION = array();
  598.         session_destroy();
  599.         echo "<META HTTP-EQUIV='refresh' content='1; URL=" . $_SERVER['PHP_SELF'] . "'>";
  600.         echo "<h2>" .l('log_out'). "</h2>";
  601.     break; 
  602.     default: 
  603.                       
  604.     if (isset($_POST['search'])) { search(); } 
  605.     else if (isset($_POST['comment'])) { comment("comment_posted");} 
  606.     else if ($processed == False) {
  607.         $article = get_id('article'); 
  608.           $category = get_id('category'); 
  609.           
  610.           if ($article <> "") {
  611.               $query = "SELECT * FROM " .s('prefix'). "articles WHERE seftitle = '$article'";
  612.               $shorten = 99990000;
  613.         } else if (isset($category)){
  614.             
  615.             $query_catname = "SELECT * FROM " .s('prefix'). "categories";
  616.             $result_catname = mysql_query($query_catname);
  617.             while ($r_catname = mysql_fetch_array($result_catname)) {
  618.                 if (isset($num_cat)) {
  619.                 $num_cat++;
  620.             }
  621.                 if ($r_catname['seftitle'] == $category) { $use_cat_id = $r_catname['id']; }
  622.             }
  623.             if ($category == "") { $use_cat_id = 0; $category = 0; }
  624.                         
  625.             if (s('display_new_on_home') == True) {
  626.                 if ($use_cat_id <> 0) {
  627.                     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 AND category = $use_cat_id ORDER BY date DESC LIMIT $article_limit";                    
  628.                 } else {
  629.                     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 ORDER BY date DESC LIMIT $article_limit";
  630.                 }
  631.             } else {
  632.                 $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 AND category = $use_cat_id ORDER BY date DESC LIMIT $article_limit";
  633.             }
  634.             if (isset($r['textlimit'])) {
  635.             $shorten = $r['textlimit'];
  636.         }
  637.             if (isset($shorten) == 0) { $shorten = 9999000; }
  638.         }
  639.         $result = mysql_query($query);
  640.         while ($r = mysql_fetch_array($result)) {
  641.             if ($article == "") { 
  642.                   $shorten = $r['textlimit'];
  643.                   if ($shorten == 0) { $shorten = 99990000; }}
  644.               $comments_num = 0;
  645.               $comment_query = "SELECT * FROM " .s('prefix'). "comments WHERE articleid = $r[id]"; 
  646.               $comment_result = mysql_query($comment_query);
  647.               while ($comment_r = mysql_fetch_array($comment_result)) { $comments_num++; }
  648.               $date = date(s('date_format'), strtotime($r['date']));
  649.               $fp_date_format = date(s('fp_date_format'), strtotime($r['date']));
  650.               $position = $r['position'];
  651.               
  652.             if ($category == "0") { $category = s('home'); }
  653.             if ($r['displaytitle'] == "YES" AND $article == "") {         
  654.             echo "<h2><a href='" .s('website'). find_cat_sef($r['category']). "/" .$r['seftitle']. "/'>" .$r['title']. "</a></h2>"; 
  655.             } else if ($r['displaytitle'] == "YES") {
  656.                 echo "<h2>" .$r['title']. "</h2>"; 
  657.               }
  658.             if ($r['image'] <> "") { ?>
  659.                 <div class="image">
  660.                     <img src="<? echo s('website') .s('image_folder'); ?>/<? echo $r['image']; ?>" alt="<? echo $r['title']; ?>" />
  661.                 </div><? }
  662.                                                          
  663.             // PHP files inclusion routine
  664.             $fulltext = $r['text'];
  665.             $findme  = "[include]";
  666.             $pos = strpos($fulltext, $findme); 
  667.             $findme  = "[/include]";
  668.             $pos2 = strpos($fulltext, $findme); 
  669.             $file = substr($fulltext, $pos + 9, $pos2 - 9);
  670.             if ($pos2 > 0) {
  671.                 $text = str_replace("[include]", "|&|", $fulltext);
  672.                 $text = str_replace("[/include]", "|&|", $text);
  673.                 $text = explode("|&|", $text); 
  674.                 $num = count($text);
  675.                 for ($i = 0; ; $i++) {
  676.                     if ($i == $num) {
  677.                         break;
  678.                     }
  679.                     if (strpos($text[$i], '.php') === false AND strpos($text[$i], '.txt') === false AND strpos($text[$i], '.inc') === false) {
  680.                         echo substr(stripslashes($text[$i]), 0, $shorten);
  681.                     } else {
  682.                         include $text[$i];
  683.                     }}} else {
  684.                         echo substr(stripslashes($fulltext), 0, $shorten);
  685.                     }
  686.             
  687.                 if (isset($numrows)) { $numrows++; }
  688.                   if ($article == "" AND strlen($r['text']) > $shorten) { echo "...</p>"; }
  689.                   $commentable = $r['commentable'];
  690.                      if ($r['position'] <> 3 AND $r['position'] <> 4 OR isset($_SESSION['Username'])) {
  691.                       
  692.                          if ($article == "") {
  693.                           if ($r['displayinfo'] == "YES") {
  694.                           echo "<p class='" .s('date_class'). "'>";
  695.                       if (strlen($r['text']) > $shorten) {                          
  696.                           echo "<img src='" .s('website'). "images/more.gif' alt='' /> <a href='" .s('website'). $category. "/" .$r['seftitle']. "/'>". l('read_more') ."</a> ";
  697.                       }
  698.                           if ($commentable == "YES" or $commentable == "FREEZ") {
  699.                               echo "<img src='" .s('website'). "images/comment.gif' alt='' /> <a href='" .s('website'). $category. "/" .$r['seftitle']. "/'>". l('comments') ."(". $comments_num .")</a> ";
  700.                           }
  701.                           echo "<img src='" .s('website'). "images/timeicon.gif' alt='' /> " .$fp_date_format. "</p>"; 
  702.                           }} else { 
  703.                           echo "<p class='" .s('date_class'). "'>";
  704.                           if (isset($_SESSION['Logged_In']))  {
  705.                               echo l('edit_article'). " [ <a href='" .s('website'). "index.php?action=simpleedit&id=$r[id]'>". l('simple') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=advancededit&id=$r[id]'>". l('advanced') ." </a> ] <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=process&task=delete&id=$r[id]'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l('delete_article') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  706.                               
  707.                               if ($r['commentable'] == "FREEZ") { echo "<a href='" .s('website'). "index.php?action=process&task=unfreezecomments&id=$r[id]'>". l('unfreeze_comments') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  708.                               } else if ($r['commentable'] <> "NO") { echo "<a href='" .s('website'). "index.php?action=process&task=freezecomments&id=$r[id]'>". l('freeze_comments') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> "; }
  709.                           }
  710.                           if ($category <> s('home')) { $category = $category. "/"; }
  711.                           echo "<a href='" .s('website');
  712.                           if ($category <> s('home')) { echo $category. "'>";  } else { echo "'>"; }
  713.                           echo l('back') ."</a> <img src='". s('website'). "images/timeicon.gif' alt='' /> ". $date ."</p>"; 
  714.               }}}}
  715.             if ($article <> "" AND $commentable == "YES") { comment("unfreezed"); } 
  716.               else if ($article <> "" AND $commentable == "FREEZ") { comment("freezed"); } 
  717. }}
  718.             
  719.             
  720. // COMMENTS
  721. function comment($freeze_status) {
  722.     $comments_order = s('comments_order');    
  723.     $category = get_id('category');
  724.     $article = get_id('article');
  725.       $commentspage = get_id('commentspage');
  726.       if (isset($_POST['commentspage'])) { $go_to_page = $_POST['commentspage']; }
  727.       $query = "SELECT * FROM " .s('prefix'). "articles WHERE seftitle = '$article'"; 
  728.     $result = mysql_query($query);
  729.       while ($r = mysql_fetch_array($result)) {
  730.         $articleid = $r['id'];
  731.         $id = $r['id'];
  732.     } 
  733.     
  734.     if ($commentspage == 0) { $commentspage = 1; }
  735.     if (isset($_POST['comment']) AND strlen($_POST['name']) > 2 AND strlen($_POST['comment']) > 5) {
  736.         echo "<h2>". l('comment_sent') ."</h2>";
  737.         if ($go_to_page > 1) { echo "<p><a href='" .s('website') .$_POST['category']. "/" .$_POST['article'].  "/" .$go_to_page. "/'>". l('backarticle'). "</a></p>"; }
  738.         else { echo "<p><a href='" .s('website') .$_POST['category']. "/" .$_POST['article']. "/'>". l('backarticle'). "</a></p>"; }
  739.         $name = $_POST['name'];
  740.         $comment = $_POST['text'];
  741.         $time = date('Y-m-d H:i:s');
  742.         $articleid = $_POST['id'];
  743.         mysql_query("INSERT INTO ". s('prefix')."comments(articleid,name,comment,time) VALUES('$articleid', '$name', '$comment', '$time')"); 
  744.     } else if (isset($_POST['comment'])) {
  745.         echo "<h2>". l('comment_error') ."</h2>";
  746.         echo "<p>". l('ce_reasons') ."</p>";
  747.         echo "<p><a href='index.php?id=" .$articleid. "&commentspage=" .$commentspage. "'>". l('back'). "</a></p>";
  748.     } else {     
  749.       $results_per_page = s('results_per_page');
  750.     $pageNum = 1;
  751.     if(isset($commentspage)) { $pageNum = $commentspage; }
  752.     $offset = ($pageNum - 1) * $results_per_page;
  753.     $totalrows  = "SELECT * FROM " .s('prefix'). "comments WHERE articleid = $articleid ORDER by id DESC";
  754.     $rowsresult = mysql_query($totalrows) or die(s('dberror'));
  755.     $numrows = mysql_num_rows($rowsresult);
  756.     $query  = "SELECT * FROM " .s('prefix'). "comments WHERE articleid = $articleid ORDER by id $comments_order LIMIT $offset, $results_per_page";
  757.     $result = mysql_query($query) or die(s('dberror'));
  758.     while ($r = mysql_fetch_array($result)) {
  759.             echo "<div class='comments'><p>" .cleanXSS($r['comment']). "</p>";
  760.             $date = date(s('comment_dt_format'), strtotime($r['time']));
  761.             echo "<p><img src='" .s('website'). "images/commentname.gif' alt='>' /> <b>" .cleanXSS($r['name']). "</b>";
  762.         if  (date("Y", strtotime($r['time'])) == 1999 OR s('display_comment_time') == "NO") { 
  763.             $date = ""; 
  764.         } else {
  765.             echo " <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  766.             echo $date;                
  767.         }
  768.         if (isset($_SESSION['Logged_In'])) { echo " <img src='" .s('website'). "images/arrow.gif' alt='|' /> "; ?>
  769.             <a href="<? echo s('website'); ?>index.php?action=process&action=editcomment&commentid=<?php echo $r['id']; ?>"><? echo l('edit'); ?></a> <img src="<? echo s('website'); ?>images/arrow.gif" alt="|" /> <a href="<? echo s('website'); ?>index.php?action=process&task=deletecomment&articleid=<? echo $articleid; ?>&commentid=<? echo $r['id']; ?>"<? if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'"); ?>"><? echo l('delete_comment'); ?></a> <? 
  770.         } echo "</p></div>"; }
  771.             $maxPage = ceil($numrows/$results_per_page);
  772.             $back_to_page = ceil(($numrows + 1)/$results_per_page);
  773.             $self = $_SERVER['PHP_SELF'];
  774.             if ($pageNum > 1) {
  775.                 $page = $pageNum - 1;
  776.             if ($page == 1) {
  777.                 $prev = " <a href='" .s('website'). $category. "/" .$article. "/'>< " .l('previous_page'). "</a> ";
  778.             } else {
  779.                 $prev = " <a href='" .s('website'). $category. "/" .$article. "/" .$page. "/'>< " .l('previous_page'). "</a> ";
  780.             }
  781.                 $first = " <a href='" .s('website'). $category. "/" .$article. "/'><< " .l('first_page')."</a>"; 
  782.             } else { $prev  = "< " .l('previous_page'); $first = "<< " .l('first_page'); }
  783.                 if ($pageNum < $maxPage) {
  784.                     $page = $pageNum + 1;
  785.                     $next = " <a href='" .s('website'). $category. "/" .$article. "/" .$page. "/'>" .l('next_page'). " ></a> ";
  786.                     $last = " <a href='" .s('website'). $category. "/" .$article. "/" .$maxPage. "/'>" .l('last_page'). " >></a> ";
  787.                 } else { $next = l('next_page'). " > "; $last = l('last_page'). " >>"; }
  788.                     if ($maxPage > 1) { echo "<div class='date'>" .$first ." ". $prev . " <strong>  [$pageNum</strong> / <strong>$maxPage]  </strong> " . $next ." ". $last ."</div>"; }
  789.                         
  790.                     if ($freeze_status <> "freezed") { ?>
  791.                     <div class="commentsbox">
  792.                         <h2><? echo l('addcomment') ?></h2>    
  793.                         <form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
  794.                               <p><? echo l('comment'); ?></p>
  795.                               <p><textarea name="text" class="text" rows="5" cols="5"></textarea></p>
  796.                             <p><? echo l('name'); ?></p>
  797.                             <p><input name="name" type="text" class="field" id="name" /></p>
  798.                             <p><input name="category" id="category" type="hidden" value="<? echo get_id('category'); ?>" />
  799.                             <input name="id" id="id" type="hidden" value="<? echo $articleid; ?>" />
  800.                             <input name="article" id="article" type="hidden" value="<? echo get_id('article'); ?>" />
  801.                               <input name="commentspage" id="commentspage" type="hidden" value="<? echo $back_to_page; ?>" /></p>
  802.                               <p><input name="comment" type="submit" class="<? echo s('button'); ?>" value="<? echo l('sendcomment'); ?>" /></p>
  803.                           </form>
  804.                         </div><?
  805. }}}
  806.  
  807. // RIGHT
  808. function right() {    
  809.       $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 2 AND published = 1 ORDER BY id DESC";
  810.     $result = mysql_query($query);
  811.       while ($r = mysql_fetch_array($result)) {
  812.           if ($r['textlimit'] == 0) { $textlimit = 999000; } else { $textlimit = $r['textlimit']; }
  813.         if (isset($_SESSION['Logged_In'])) { echo l('edit'). " [ <a href='" .s('website'). "index.php?action=simpleedit&id=$r[id]'>". l('simple') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=advancededit&id=$r[id]'>". l('advanced') ."</a> ] <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='index.php?action=process&task=delete&id=". $r['id'] ."'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l('delete_article') ."</a>"; }
  814.         if ($r['displaytitle'] == "YES") { echo "<h2>". $r['title'] ."</h2>"; }
  815.         // PHP files inclusion routine
  816.             $fulltext = $r['text'];
  817.             $findme  = "[include]";
  818.             $pos = strpos($fulltext, $findme); 
  819.             $findme  = "[/include]";
  820.             $pos2 = strpos($fulltext, $findme); 
  821.             $file = substr($fulltext, $pos + 9, $pos2 - 9);
  822.             if ($pos2 > 0) {
  823.                 $text = str_replace("[include]", "|&|", $fulltext);
  824.                 $text = str_replace("[/include]", "|&|", $text);
  825.                 $text = explode("|&|", $text); 
  826.                 $num = count($text);
  827.                 for ($i = 0; ; $i++) {
  828.                     if ($i == $num) {
  829.                         break;
  830.                     }
  831.                     if (strpos($text[$i], '.php') === false AND strpos($text[$i], '.txt') === false AND strpos($text[$i], '.inc') === false) {
  832.                         echo substr(stripslashes($text[$i]), 0, $textlimit);
  833.                     } else {
  834.                         include $text[$i];
  835.                     }}} else {
  836.                         echo substr(stripslashes($fulltext), 0, $textlimit);
  837. }}} 
  838.  
  839.  
  840. // ARCHIVES
  841. function archives() {
  842.     echo "<h2>". l('archives') ."</h2>";
  843.     echo "<br /><p><b>". l('home') ."</b></p>";
  844.     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 AND category = 0 ORDER BY date DESC"; 
  845.     $result = mysql_query($query);
  846.     while ($r = mysql_fetch_array($result)) {
  847.         $date = date(s('date_format'), strtotime($r['date']));
  848.         
  849.         echo "<p><img src='" .s('website'). "images/arrow.gif' alt='' /> <a href='" .s('website'). find_cat_sef($r['category']). "/" .$r['seftitle']. "/'>". $r['title'] ."</a> <img src='" .s('website') ."images/arrow.gif' alt='' /> ". $date ."</p>";
  850.     }    
  851.     $cat_query = "SELECT * FROM " .s('prefix'). "categories"; 
  852.     $cat_result = mysql_query($cat_query);
  853.     while ($c = mysql_fetch_array($cat_result)) {
  854.         echo "<br /><p><b>". $c['name'] ."</b> <img src='" .s('website'). "images/arrow.gif' alt='' /> ". $c['description'] ."</p>";
  855.         
  856.         echo "<p><a href='" .$title. "'>" .$r['title']. "</a></p> ";
  857.         $catid = $c['id'];
  858.         $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 AND category = $catid ORDER BY id DESC";
  859.         $result = mysql_query($query);
  860.             while ($r = mysql_fetch_array($result)) {
  861.                 $date = date(s('date_format'), strtotime($r['date']));
  862.                 echo "<p><img src='" .s('website'). "images/arrow.gif' alt='' /> <a href='" .s('website') .$c['seftitle']. "/" .$r['seftitle']. "/'>". $r['title'] ."</a> <img src='" .s('website'). "arrow.gif' alt='' /> ". $date ."</p>";
  863. }}} 
  864.  
  865.  
  866.  
  867. // CONTACT
  868. function contact() { 
  869. if ($_POST['contactform'] == "") {?>
  870.     <h2><? echo l('contact'); ?></h2>
  871.     <form method="post" action="">
  872.         <p><? echo l('name'); ?>:<br /></p>
  873.         <p><input name="name" type="text" id="name" class="field" /></p>
  874.         <p><br /><? echo l('email'); ?>:</p>
  875.         <p><input name="email" type="text" id="email" class="field" /></p>
  876.         <p><br /><? echo l('url'); ?>:</p>
  877.         <p><input name="weblink" type="text" id="weblink" class="field" /></p>
  878.         <p><br /><? echo l('message'); ?>:</p>
  879.           <p><textarea name="message" rows="4" cols="5" class="text"></textarea></p>
  880.          <p><br /><input name="contactform" type="submit" class="<? echo s('button'); ?>" value="<? echo l('send_message'); ?>" /></p>
  881.     </form>
  882.       <? }
  883. if (isset($_POST['contactform'])) {
  884.     $to = s('website_email');
  885.     $subject = s('contact_subject');
  886.     $body = l('name') .": ". $_POST['name'] ."\n";
  887.     $body .= l('email') .": ". $_POST['email'] ."\n";
  888.     $body .= l('url') .": ". $_POST['weblink'] ."\n\n";
  889.     $body .= l('message') .": ". $_POST['message'] ."\n";
  890. if (strlen(clean($_POST['name'])) > 1 AND strlen(clean($_POST['message'])) > 1) {
  891.     mail($to, $subject, $body);
  892.     echo "<h2>". l('contact_sent') ."</h2>";
  893.       echo "<p><a href='" .s('website'). "'>". l('backhome') ."</a></p>";
  894. } else { 
  895.     echo "<h2>". l('contact_not_sent') ."</h2>";
  896.     echo "<p>". l('message_error') ."</p>";
  897.     echo "<p><a href='" .s('website'). "'>". l('backhome') ."</a></p>";
  898. }}}
  899.     
  900.  
  901.  
  902. // NEW ARTICLES
  903. function new_articles($number) {
  904.     $category = get_id('category');
  905.     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 ORDER BY id DESC LIMIT 0, $number";
  906.     $result = mysql_query($query);
  907.     while ($r = mysql_fetch_array($result)) {
  908.         echo "<p><a href='" .s('website'). find_cat_sef($r['category']). "/" .$r['seftitle']. "/'>" .$r['title']. "</a></p>";    
  909. }}
  910.  
  911. // PAST ARTICLES
  912. function past_articles($ts, $tl) {
  913.     if (isset($_GET['category']) <> 0) { $category = $_GET['category']; } else { $category = 0; };
  914.     $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 1 AND published = 1 AND category = 0 ORDER BY id DESC LIMIT $ts, $tl";
  915.     $result = mysql_query($query);
  916.     while ($r = mysql_fetch_array($result)) {
  917.         $date = date(s('date_format'), strtotime($r['date']));
  918.         echo "<p><a href='" .s('website'). find_cat_sef($r['category']). "/" .$r['seftitle']. "/'>$r[title]</a> <img src='" .s('website'). "images/arrow.gif' alt='' /> ";
  919.         echo $date;
  920.         echo "</p>"; }
  921. }
  922.  
  923. // SEARCH FORM
  924. function searchform() { ?>
  925.     <form id="search_engine" method="post" action="" /> 
  926.         <p><input name="search_query" type="text" alt="Search" class="text" id="search_query" />
  927.           <input type="submit" name="search" tabindex="100" class="<? echo s('search_button'); ?>" value="<? echo l('search_button'); ?>" /></p>
  928. <? }
  929.  
  930. // SEARCH ENGINE
  931. function search() {
  932.     $search_query = clean($_POST['search_query']);
  933.     $search_query_var = "%".$search_query."%";
  934.     echo "<h2>". l(search_results) ."</h2>";
  935.     if (strlen($search_query) < 4) {
  936.         echo "<p>". l(charerror) ."</p>";
  937.     } else {
  938.         $query = "SELECT * FROM " .s('prefix'). "articles WHERE title LIKE '$search_query_var' || text LIKE '$search_query_var' AND position <> 2 AND published = 1 ORDER BY id DESC";
  939.         $result = mysql_query($query);
  940.         while ($r = mysql_fetch_array($result)) {
  941.             $num++;
  942.             $date = date(s('date_format'), strtotime($r['date']));
  943.             echo "<p><a href='" .s('website'). find_cat_sef($r['category']). "/" .$r['seftitle']. "/'>" .$r['title']. "</a> <img src='" .s('website'). "images/arrow.gif' alt='>' /> " . $date. "</p>";
  944.         }
  945.     if ($num == "") { echo "<p>". l('noresults') ." <b> " . $search_query . "</b>.</p>";
  946.         $num = "0";
  947.     } else { echo "<br /><p><b>" . $num . "</b> ". l('resultsfound') ."<b> " . $search_query . "</b>.</p>"; }}
  948.     echo "<p><br /><a href='" .s('website'). "'>". l('backhome') ."</a></p>";
  949. }
  950.  
  951. // RSS FEED
  952. function rss() {
  953.     $limit = s('rss_limit');
  954.     $query = "SELECT * FROM articles WHERE position = 1 ORDER BY date DESC LIMIT 0, $limit"; 
  955.     $result = mysql_query($query);
  956.     $filename = "rss.xml";
  957.     $header = "<?xml version=\"1.0\" ?>";
  958.     $header .= "<rss version=\"2.0\">";
  959.     $header .= "<channel>";
  960.     $header .= "<title>" .s('website_title'). "</title>";
  961.     $header .= "<description>" .s('website_title'). "</description>";
  962.     $header .= "<link>" .s('website'). "</link>";
  963.     $header .= "<copyright>Copyright " .s('website_title'). "</copyright>";
  964.     $footer = "</channel>";
  965.     $footer .= "</rss>";
  966.     $fh = fopen($filename, "w+");
  967.     fwrite($fh, $header);
  968.     while ($r = mysql_fetch_assoc($result)){
  969.         $date = date(s('rss_date_format'), strtotime($r['date']));
  970.            $pattern="'<[\/\!]*?[^<>]*?>'si";
  971.            $replace="";
  972.            $description = preg_replace($pattern, $replace,    stripslashes($r['text']));
  973.            $item  ="<item>";
  974.            $item .= "<title>". $r['title'] ."</title>";
  975.            $item .= "<description>". $description ."</description>";
  976.            $item .= "<pubDate>". $date ."</pubDate>";
  977.            $item .= "<link>". s(website) . find_cat_sef($r['category']). "/" .$r['seftitle']. "/</link>";
  978.            $item .= "</item>";
  979.            fwrite($fh, $item);
  980.   }
  981.     fwrite($fh, $footer);
  982.     fclose($fh);
  983.     echo "<script>self.location='" .s('website'). "rss.xml';</script>";
  984. }
  985.  
  986. //*******************************************************************************
  987. //                             ADMINISTRATIVE FUNCTIONS
  988. //*******************************************************************************
  989.  
  990. //********
  991. // LOGIN 
  992. //********
  993. function login() {
  994. if ($_SESSION['Logged_In'] != "True") {
  995.     echo "<h2>Login</h2>";
  996. echo "<form method='post' action='" .s('website'). "'>
  997.     <p><br />". l(username) .":</p><p><input type='textbox' class='text' name='Username' /></p>
  998.     <p>". l(password) .":</p><p><input type='password' class='text' name='Password' /></p>
  999.     <p><input type='hidden' name='Submitted' value='True' /></p>
  1000.     <p><input type='Submit' name='Submit' class='" .s('button'). "' value='". l(login) ."' /></p>
  1001.     </form>";
  1002. } else {
  1003. echo "<h2>" .l('logged_in'). "</h2>";
  1004. echo "<p><a href='". s('website') ."logout/'>". l('logout') ."</a></p>";
  1005. }}
  1006.  
  1007.  
  1008.  
  1009. //************************
  1010. // CATEGORIES (ADD, VIEW)
  1011. //************************
  1012. function view_categories() { ?>
  1013.     <h2><? echo l(categories); ?></h2> 
  1014.     <p>Home</p> <?
  1015.     $query = "SELECT * FROM " .s('prefix'). "categories ORDER BY id"; 
  1016.     $result = mysql_query($query);
  1017.       while ($r = mysql_fetch_array($result)) {
  1018.         if (isset($_SESSION['Logged_In'])) { echo "<p>". $r['name'] ." <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a title='". $r['description'] ."' href='" .s('website'). "index.php?action=editcategory&id=$r[id]'>". l(edit_category) ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=process&task=deletecategory&id=$r[id]'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l(delete_category) ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  1019.             if ($r['published'] == "YES") { echo l('published'); } else { echo l('unpublished'); }}
  1020.                 echo "</p>";
  1021.             } 
  1022.             echo "<br />"; ?>
  1023.             <fieldset>
  1024.             <legend><? echo l('add_category'); ?></legend>
  1025.             <form name="post-text" method="post" action=""> 
  1026.                 <p><? echo l('name'); ?>:</p>
  1027.                   <p><input type="text" value="<? echo $_POST['name']; ?>" id="article_title" class="field" name="name" /><?php if_javascript_on(' <a href="javascript:makesef();">'.l('make_sef_text').'</a>'); ?></p>
  1028.                   <p><? echo l('sef_title_cat'); ?>:</p>
  1029.                 <p><input type="text" name="seftitle" value="<? if ($_POST['name'] == '') { echo cleanSEF($_POST['name']); } else { echo cleanSEF($_POST['seftitle']); }; ?>" id="article_sef" class="field" /></p>
  1030.                   
  1031.                   <p><? echo l('description'); ?>:</p>
  1032.                   <p><input type="text" class="field" name="description" /></p>
  1033.                 <p><input type="checkbox" value="YES" name="publish" checked> <? echo l('publish_category'); ?></p>
  1034.                   <p><input type="hidden" name="task" value="add_category" /></p>
  1035.                 <p><input type="submit" name="submit_text" value="<? echo l(add_category); ?>" /></p>
  1036.             </form>
  1037.             </fieldset><?
  1038. }
  1039.  
  1040. //***************            
  1041. // EDIT CATEGORY 
  1042. //***************
  1043. function edit_category() { ?>
  1044.     <h2><? echo l('edit_category') ?></h2><?
  1045.     $categoryid = $_GET['id'];
  1046.     $query = "SELECT * FROM " .s('prefix'). "categories WHERE id = $categoryid"; 
  1047.     $result = mysql_query($query);
  1048.       while ($r = mysql_fetch_array($result)) {
  1049.         if (isset($_SESSION['Logged_In'])) {
  1050.             echo "<p>". $r['name'] ." <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='index.php?action=process&task=deletecategory&id=$r[id]'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l(delete_category) ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  1051.             if ($r['published'] == "YES") { echo l('published'); } else { echo l('unpublished'); }
  1052.                 echo "</p>"; }
  1053.             echo "<br />"; ?>
  1054.             <fieldset>
  1055.             <legend><? echo l('edit_category'); ?></legend>
  1056.             <form name="post-text" method="post" action="index.php?action=process&task=edit_category"> 
  1057.                 <p><? echo l('name'); ?>:</p>
  1058.                 <p><input type="text" class="field" value="<?php echo $r['name']; ?>" id="article_title" name="name" /><?php if_javascript_on(' <a href="javascript:makesef();">'.l('make_sef_text').'</a>'); ?></p>
  1059.                 <p><? echo l('sef_title_cat'); ?>:</p>
  1060.                 <p><input type="text" class="field" value="<?php echo $r['seftitle']; ?>" id="article_sef" name="seftitle" /></p>
  1061.                 <p><? echo l('description'); ?>:</p>
  1062.                 <p><input type="text" class="field" value="<?php echo $r['description']; ?>" name="description" /><br /></p><?
  1063.                   if ($r['published'] == "YES") { ?>
  1064.                       <p><input type="checkbox" value="YES" name="publish" checked /> <? echo l('publish_category'); ?></p><?
  1065.                   } else {    ?>
  1066.                       <p><input type="checkbox" value="YES" name="publish" /> <? echo l('publish_category'); ?></p>
  1067.                       <? } ?>
  1068.                   <p><input type="hidden" name="id" value="<?php echo $categoryid; ?>" /></p>
  1069.                   <p><input type="hidden" name="task" value="edit_category" /></p>
  1070.                   <p><input type="submit" name="submit_text" value="<? echo l('edit_category'); ?>" /></p>
  1071.             </form>
  1072.               </fieldset>
  1073.               <? }
  1074. }
  1075.  
  1076.  
  1077. //*************
  1078. // NEW ARTICLE 
  1079. //*************
  1080. function new_article() { ?>
  1081.     <h2><? echo l('new_article'); ?></h2>
  1082.       <form name="post-text" method="post" action="<? echo s('website') ?>index.php?action=process&task=new"> 
  1083.         <fieldset>
  1084.             <legend><? echo l('article'); ?></legend>
  1085.               <p><? echo l('title'); ?>:</p>
  1086.            <p><input name="title" type="text" id="article_title" class="field" value="<? echo $_SESSION['temp']['title']; ?>" /><?php if_javascript_on(' <a href="javascript:makesef();">'.l('make_sef_text').'</a>'); ?>
  1087.            </p>
  1088.             <p><? echo l('sef_title'); ?>:</p>
  1089.             <p><input name="seftitle" id="article_sef" type="text" class="field" value="<? echo cleanSEF($_SESSION['temp']['seftitle']); ?>" />
  1090.             </p>
  1091.                <p><? echo l('text'); ?>:</p>
  1092.               <p><textarea name="text" class="text"><? echo $_SESSION['temp']['text']; ?></textarea>
  1093.               </p>
  1094.               <p><? echo l('limit_article'); ?>:</p>
  1095.               <p><input type="text" name="text_limit" value="500" class="field" /></p>
  1096.                 <p><br /><input type="checkbox" value="ON" name="auto_html" checked> <? echo l('auto_html'); ?></p>
  1097.               <p><br /><? echo l('category'); ?>:
  1098.               <select name="category" class="text">
  1099.                 <option value="0"><? echo l('home'); ?></option> <?
  1100.                 $query = "SELECT * FROM " .s('prefix'). "categories ORDER BY id"; 
  1101.                 $result = mysql_query($query);
  1102.                 while ($r = mysql_fetch_array($result)) { echo "<option value='". $r['id'] ."'>". $r['name'] ."</option>"; } ?>
  1103.             </select></p>
  1104.         </fieldset><br />
  1105.         <fieldset>
  1106.             <legend><? echo l('position'); ?></legend>
  1107.             <p><input type="radio" value="3" name="position"> <? echo l('display_menu_item'); ?></p>
  1108.               <p><input type="radio" value="5" name="position"> <? echo l('left'); ?></p>
  1109.               <p><input type="radio" value="1" checked name="position"> <? echo l('center'); ?></p>
  1110.               <p><input type="radio" value="2" name="position"> <? echo l('right'); ?></p>
  1111.           </fieldset><br />
  1112.            <fieldset>
  1113.                <legend><? echo l('customize'); ?></legend>
  1114.               <p><input type="checkbox" value="YES" name="display_title" checked> <? echo l('display_title'); ?></p>
  1115.              <p><input type="checkbox" value="YES" name="display_info" checked> <? echo l('display_info'); ?></p>
  1116.               <p><input type="checkbox" value="YES" name="commentable"> <? echo l('enable_commenting'); ?></p>
  1117.               <p><input type="checkbox" value="ON" name="publish" checked> <? echo l('publish_article'); ?></p>
  1118.           </fieldset><br />
  1119.           <fieldset>
  1120.               <legend><? echo l('future_posting') ?></legend>
  1121.               <p><input type="checkbox" value="YES" name="fposting"> <? echo l('enable'); ?></p>   
  1122.               <p><? echo l('server_time'). ": ". date(s('date_format')). " - ". date('h:i:s'); ?></p>
  1123.                           
  1124.               <p><? echo l('day'). ":"; ?>
  1125.             <select name="fposting_day"><? 
  1126.                 $thisDay = intval(date('d'));
  1127.                 for($i = 1; $i < 32; $i++) {
  1128.                     echo '<option value="'. $i .'"';
  1129.                     if($i == $thisDay)
  1130.                         echo 'selected';
  1131.                           echo '>'. $i .'</option>';
  1132.                     } ?>
  1133.             </select>
  1134.             <? echo l('month'). ":"; ?>
  1135.             <select name="fposting_month"><?
  1136.                 $thisMonth = intval(date('m'));
  1137.                 for($i = 1; $i < 13; $i++) {
  1138.                       echo '<option value="'. $i .'"';
  1139.                       if($i == $thisMonth)
  1140.                         echo 'selected';
  1141.                           echo '>'. $i .'</option>';
  1142.                     } ?>
  1143.             </select>
  1144.             <? echo l('year'). ":"; ?>
  1145.             <select name="fposting_year"><? 
  1146.             $thisYear = intval(date('Y'));
  1147.                 for($i = $thisYear; $i < $thisYear + 5; $i++) {
  1148.                       echo '<option value="'. $i .'"';
  1149.                       if($i == $thisYear)
  1150.                         echo 'selected';
  1151.                           echo '>'. $i .'</option>';
  1152.                     } ?>
  1153.             </select>
  1154.                <? echo l('hour'). ":"; ?>
  1155.             <select name="fposting_hour"><?
  1156.                 $thisHour = intval(date('H'));
  1157.                 for($i = 0; $i < 24; $i++) {
  1158.                       echo '<option value="'. $i .'"';
  1159.                       if($i == $thisHour)
  1160.                         echo 'selected';
  1161.                           echo '>'. $i .'</option>';
  1162.                     } ?>
  1163.             </select>
  1164.             <? echo l('minute'). ":"; ?>
  1165.             <select name="fposting_minute"><?
  1166.                 $thisMinute = intval(date('i'));
  1167.                 for($i = 0; $i < 60; $i++) {
  1168.                       echo '<option value="'. $i .'"';
  1169.                       if($i == $thisMinute)
  1170.                         echo 'selected';
  1171.                           echo '>'. $i .'</option>';
  1172.                     } ?>
  1173.             </select></p>
  1174.         </fieldset><br />
  1175.         <fieldset>
  1176.               <legend><? echo l('attach_image'); ?></legend>
  1177.                  <p><select name="image" class="text">
  1178.             <option value=""><? echo l('no_image'); ?></option> <?
  1179.                 $upload_dir = s('image_folder') ."/";
  1180.                 $rep=opendir($upload_dir);
  1181.                 while ($file = readdir($rep)) {
  1182.                     if($file != '..' && $file !='.' && $file !=''){
  1183.                         if (!is_dir($file)){
  1184.                             $folder=substr($file, 0, -4);
  1185.                             echo "<option value='$file'>$folder</option>";
  1186.                         }
  1187.                     }
  1188.                 }
  1189.                 closedir($rep);
  1190.                 clearstatcache(); ?>
  1191.             </select>                                    
  1192.             <input type="hidden" name="task" value="new"></p>
  1193.         </fieldset>
  1194.         <p><br /><input type="submit" name="submit_text" value="<? echo l('submit_new_article'); ?>"></p>
  1195.     </form> <?
  1196. }
  1197.     
  1198.     
  1199. //**********************            
  1200. // UNPUBLISHED ARTICLES
  1201. //**********************
  1202. function unpublished_articles() {    
  1203.     echo "<h2>". l('unpublished_articles') ."</h2>";
  1204.       $query = "SELECT * FROM " .s('prefix'). "articles WHERE position = 4 OR published = 0 ORDER BY id DESC"; 
  1205.     $result = mysql_query($query);
  1206.       while ($r = mysql_fetch_array($result)) {
  1207.           $date = date(s('date_format'), strtotime($r['date']));
  1208.         if (isset($_SESSION['Logged_In'])) { echo "<p><a href='" .s('website') . find_cat_sef($r['category']). "/". $r['sef_title']. "/'>" .$r['title']. "</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  1209.             if ($r['published'] == 0) {
  1210.                 echo l('future_posting'). " <img src='" .s('website'). "images/arrow.gif' alt='|' /> ";
  1211.             }
  1212.         echo l('edit'). " [ <a href='" .s('website'). "index.php?action=simpleedit&id=$r[id]'>". l('simple') ."</a> <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=advancededit&id=$r[id]'>". l('advanced') ."</a> ] <img src='" .s('website'). "images/arrow.gif' alt='|' /> <a href='" .s('website'). "index.php?action=process&task=delete&id=". $r['id'] ."'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">". l('delete_article') ."</a></p>"; }
  1213.     } 
  1214. }     
  1215.     
  1216. //**************            
  1217. // EDIT ARTICLE 
  1218. //**************
  1219. function edit_article($mode) { ?>
  1220.               <h2><? echo l('edit_article'). " [" .$mode. "]"; ?></h2><?
  1221.             $id = $_REQUEST['id'];
  1222.               $query = mysql_query("SELECT * FROM " .s('prefix'). "articles WHERE id='$id'");
  1223.               $r = mysql_fetch_array($query);
  1224.               $article_category = $r['category']; ?>
  1225.               <fieldset>
  1226.             <legend><? echo l('article'); ?></legend>
  1227.               <form name="post-text" method="post" action="index.php?action=process&task=edit&id=<?php echo $id; ?>"> 
  1228.             <p><? echo l('title'); ?>:</p>
  1229.             <p><input type="text" name="title" id="article_title" value="<?php echo $_SESSION['temp']['title'] ? $_SESSION['temp']['title'] : $r['title']; ?>" class="field" /><? if ($mode == "advanced") { if_javascript_on(' <a href="javascript:makesef();">'.l('make_sef_text').'</a>'); }; ?></p>
  1230.             <? if ($mode == "advanced") { ?>
  1231.                 <p><? echo l('sef_title'); ?>:</p>
  1232.                 <p><input type="text" name="seftitle" id="article_sef" class="field" value="<?php echo $_SESSION['temp']['seftitle'] ? cleanSEF($_SESSION['temp']['seftitle']) : $r['seftitle']; ?>" /></p>
  1233.               <? } ?>
  1234.         
  1235.               <p><? echo l('text'); ?>:</p>
  1236.               <? if ($mode == "advanced") {    $text = str_replace('&', '&', $_SESSION['temp']['text'] ? $_SESSION['temp']['text'] : $r['text']); } 
  1237.                  if ($mode == "simple") { $text = str_replace(array("<br />", "<p>", "</p>"), "" , $r[text]); } ?>
  1238.               <p><textarea name="text" class="text"><? echo stripslashes($text); ?></textarea></p>
  1239.               <p><? echo l('limit_article'); ?>:</p>
  1240.               <p><input type="text" name="text_limit" value="<? echo $r['textlimit']; ?>" class="field" /></p>
  1241.               <p><br /><? echo l('category'); ?>:
  1242.               <select name="category" class="text">
  1243.                      <option value="category" <? if ($article_category == 0) { echo "selected"; } ?>><? echo l('home'); ?></option> <?
  1244.                     $category_query = "SELECT * FROM " .s('prefix'). "categories ORDER BY id"; 
  1245.                     $category_result = mysql_query($category_query);
  1246.                     while ($cat = mysql_fetch_array($category_result)) { 
  1247.                         echo "<option value='". $cat['id'] ."'";
  1248.                         if ($article_category == $cat['id']) { echo "selected"; }                        
  1249.                         echo ">". $cat['name'] ."</option>"; } ?>
  1250.                     </select></p>
  1251.             </fieldset><br />
  1252.             <fieldset>
  1253.             <legend><? echo l('position'); ?></legend>
  1254.               <? if ($r['position'] == 3) { ?>
  1255.                   <p><input type="radio" value="3" name="position" checked> <? echo l('display_menu_item'); ?></p>
  1256.             <? } else { ?>
  1257.                 <p><input type="radio" value="3" name="position"> <? echo l('display_menu_item'); ?></p>
  1258.             <? }
  1259.             if ($r['position'] == 5) { ?>
  1260.                   <p><input type="radio" value="5" name="position" checked> <? echo l('left'); ?></p>
  1261.             <? } else { ?>
  1262.                 <p><input type="radio" value="5" name="position"> <? echo l('left'); ?></p>
  1263.             <? }
  1264.             if ($r['position'] == 1) { ?>
  1265.                   <p><input type="radio" value="1" name="position" checked> <? echo l('center'); ?></p>
  1266.             <? } else { ?>
  1267.                 <p><input type="radio" value="1" name="position"> <? echo l('center'); ?></p>
  1268.             <? }
  1269.             if ($r['position'] == 2) { ?>
  1270.                   <p><input type="radio" value="2" name="position" checked> <? echo l('right'); ?></p>
  1271.             <? } else { ?>
  1272.                 <p><input type="radio" value="2" name="position"> <? echo l('right'); ?></p>
  1273.             <? } ?>
  1274.             </fieldset><br />
  1275.             <fieldset>
  1276.             <legend><? echo l('customize'); ?></legend>
  1277.             <? if ($r['displaytitle'] == "YES") { ?>
  1278.                   <p><input type="checkbox" value="YES" name="display_title" checked> <? echo l('display_title'); ?></p>
  1279.             <? } else { ?>
  1280.                 <p><input type="checkbox" value="YES" name="display_title"> <? echo l('display_title'); ?></p>
  1281.             <? }
  1282.             if ($r['displayinfo'] == "YES") { ?>
  1283.                   <p><input type="checkbox" value="YES" name="display_info" checked> <? echo l('display_info'); ?></p>
  1284.             <? } else { ?>
  1285.                 <p><input type="checkbox" value="YES" name="display_info"> <? echo l('display_info'); ?></p>
  1286.             <? }            
  1287.             if ($r['commentable'] == "YES") { ?>
  1288.                   <p><input type="checkbox" value="YES" name="commentable" checked> <? echo l('enable_commenting'); ?></p>
  1289.             <? } else { ?>
  1290.                 <p><input type="checkbox" value="YES" name="commentable"> <? echo l('enable_commenting'); ?></p>
  1291.             <? }
  1292.             if ($r['position'] == 4) { ?>
  1293.                   <p><input type="checkbox" value="ON" name="publish"> <? echo l('publish_article'); ?></p>
  1294.             <? } else { ?>
  1295.                 <p><input type="checkbox" value="ON" name="publish" checked> <? echo l('publish_article'); ?></p>
  1296.             <? } ?>
  1297.             </fieldset><br />
  1298.                        
  1299.             <? if ($mode == "advanced") { ?>
  1300.             <fieldset>
  1301.               <legend><? echo l('publish_date') ?></legend>
  1302.               <p><? echo l('day'). ":"; ?>
  1303.             <select name="fposting_day"><? 
  1304.                 $thisDay = intval(date('d'));
  1305.                 for($i = 1; $i < 32; $i++) {
  1306.                     echo '<option value="'. $i .'"';
  1307.                     if($i == substr($r['date'], 8, 2))
  1308.                         echo 'selected';
  1309.                           echo '>'. $i .'</option>';
  1310.                     } ?>
  1311.             </select>
  1312.             <? echo l('month'). ":"; ?>
  1313.             <select name="fposting_month"><?
  1314.                 $thisMonth = intval(date('m'));
  1315.                 for($i = 1; $i < 13; $i++) {
  1316.                       echo '<option value="'. $i .'"';
  1317.                       if($i == substr($r['date'], 5, 2))
  1318.                         echo 'selected';
  1319.                           echo '>'. $i .'</option>';
  1320.                     } ?>
  1321.             </select>
  1322.             <? echo l('year'). ":"; ?>
  1323.             <select name="fposting_year"><? 
  1324.             $thisYear = intval(date('Y'));
  1325.                 for($i = $thisYear; $i < $thisYear + 5; $i++) {
  1326.                       echo '<option value="'. $i .'"';
  1327.                       if($i == substr($r['date'], 0, 4))
  1328.                         echo 'selected';
  1329.                           echo '>'. $i .'</option>';
  1330.                     } ?>
  1331.             </select>
  1332.                <? echo l('hour'). ":"; ?>
  1333.             <select name="fposting_hour"><?
  1334.                 $thisHour = intval(date('H'));
  1335.                 for($i = 0; $i < 24; $i++) {
  1336.                       echo '<option value="'. $i .'"';
  1337.                       if($i == substr($r['date'], 11, 2))
  1338.                         echo 'selected';
  1339.                           echo '>'. $i .'</option>';
  1340.                     } ?>
  1341.             </select>
  1342.             <? echo l('minute'). ":"; ?>
  1343.             <select name="fposting_minute"><?
  1344.                 $thisMinute = intval(date('i'));
  1345.                 for($i = 0; $i < 60; $i++) {
  1346.                       echo '<option value="'. $i .'"';
  1347.                       if($i == substr($r['date'], 14, 2))
  1348.                         echo 'selected';
  1349.                           echo '>'. $i .'</option>';
  1350.                     } ?>
  1351.             </select></p>
  1352.             </fieldset><br />
  1353.             <? } ?>
  1354.             <fieldset>
  1355.             <legend><? echo l('attach_image'); ?></legend>
  1356.             <select name="image" class="text"><?
  1357.             if (stripslashes($r['image']) == "") { echo "<option value='' selected>". l('no_image') ."</option>"; } 
  1358.             else { echo "<option value=''>". l('no_image') ."</option>"; }
  1359.                     $upload_dir = s('image_folder') ."/";
  1360.                     $rep=opendir($upload_dir);
  1361.                     while ($file = readdir($rep)) {
  1362.                         if($file != '..' && $file !='.' && $file !=''){
  1363.                             if (!is_dir($file)){
  1364.                                 $folder=substr($file, 0, -4);
  1365.                                                         
  1366.                                 if ($file == stripslashes($r['image'])) {                            
  1367.                                       echo "<option value='$file' selected>$folder</option>";
  1368.                                 } else if ($folder <> "Thumb") {
  1369.                                        echo "<option value='$file'>$folder</option>";
  1370.                                }}}} ?>
  1371.                 </select></p>
  1372.             </fieldset>
  1373.             <p><input type="hidden" name="id" value="<?php echo $id; ?>"></p> <?
  1374.             if ($mode == "simple") { ?><p><input type="hidden" name="task" value="simpleedit"></p> <? }
  1375.             if ($mode == "advanced") { ?><p><input type="hidden" name="task" value="advancededit"></p> <? } ?>
  1376.             <p><input type="submit" name="submit_text" value="<? echo l('edit'); ?>"></p>
  1377.               </form><? 
  1378. }
  1379.  
  1380.  
  1381. //**************            
  1382. // EDIT COMMENT 
  1383. //**************
  1384. function edit_comment() { ?>
  1385.               <h2><? echo l('edit_comment') ?></h2><?
  1386.             $commentid = $_GET['commentid'];
  1387.             $query = mysql_query("SELECT * FROM " .s('prefix'). "comments WHERE id='$commentid'");
  1388.               $r = mysql_fetch_array($query);
  1389.               $text = $r['comment']; ?>
  1390.               <form name="post-text" method="post" action=""> 
  1391.                 <p><br /><? echo l('comment'); ?>:</p>
  1392.                   <p><textarea name="editedcomment" class="text"><? echo stripslashes($text); ?></textarea></p>
  1393.                 <p><? echo l('name'); ?>:</p>
  1394.                 <p><input type="text" name="name" value="<?php echo $r['name']; ?>" class="field" /></p>
  1395.                 <p><input type="hidden" name="id" value=<? echo $r['articleid']; ?>">
  1396.                 <input type="hidden" name="commentid" value="<? echo $r['id']; ?>">
  1397.                 <input type="hidden" name="task" value="editcomment"></p>
  1398.                 <p><input type="submit" name="submit_text" value="<? echo l('edit'); ?>"></p>
  1399.             </form>
  1400.             
  1401. <? }
  1402.  
  1403. //*********************************************
  1404. // PROCESSING (CATEGORIES, ARTICLES, COMMENTS)
  1405. //*********************************************
  1406. function processing() {
  1407.     if ($_SESSION['Logged_In'] != True) {
  1408.         echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>".l('error_not_logged_in')."</p></div>";
  1409.         return 0;
  1410.     };
  1411.     
  1412.     $action = $_REQUEST['action'];
  1413.       $id = $_REQUEST['id'];
  1414.       $commentid = $_POST['commentid'];
  1415.       $name = str_replace("\'", "'", $_POST['name']);
  1416.       $category = $_POST['category'];
  1417.       $description = $_POST['description'];
  1418.       $title = str_replace("\'", "'", $_POST['title']);
  1419.       $seftitle = $_POST['seftitle'];
  1420.        $comment = str_replace("\'", "'", $_POST['editedcomment']);
  1421.       $text = str_replace("\'", "'", $_POST['text']);
  1422.       $text_limit = $_POST['text_limit'];
  1423.       $auto_html = $_POST['auto_html'];
  1424.       $date = date('Y-m-d H:i:s');
  1425.       $display_title = $_POST['display_title'];
  1426.       $display_info = $_POST['display_info'];
  1427.       $commentable = $_POST['commentable'];
  1428.       $publish = $_POST['publish'];
  1429.       $publish_category = $_POST['publish'];
  1430.       $position = $_POST['position'];
  1431.       $display = $_POST['display'];
  1432.       $image = $_POST['image'];
  1433.     $fpost_enabled = false;
  1434.     $fpublished = 1;
  1435.     if($_POST['fposting'] == "YES" OR $_POST['task'] == "advancededit") {
  1436.         $fpublished = 0;
  1437.         $fpost_enabled = true;
  1438.         $fpost_day = $_POST['fposting_day'];
  1439.         $fpost_month = $_POST['fposting_month'];
  1440.         $fpost_year = $_POST['fposting_year'];
  1441.         $fpost_hour = $_POST['fposting_hour'];
  1442.         $fpost_minute = $_POST['fposting_minute'];
  1443.     }
  1444.     if ($text_limit == "") { $text_limit = 0; }
  1445.       if ($position == "") { $position = 1; }
  1446.       if ($commentable == "") { $commentable = "NO"; }
  1447.       if ($publish <> "ON") { $position = 4; }
  1448.       if ($display_title == "") { $display_title = "NO"; }
  1449.       if ($display_info == "") { $display_info = "NO"; }
  1450.     if ($fpost_enabled OR $_POST['task'] == "advancededit") { $date = $fpost_year .'-'. $fpost_month .'-'. $fpost_day .' '. $fpost_hour .':'. $fpost_minute .':00'; }
  1451.       
  1452.        if ($_POST['task'] == "add_category") {
  1453.         if ($_POST['submit_text']) {
  1454.               if ($name == "")  {
  1455.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_name_empty') ."</p></div>";
  1456.                 view_categories();
  1457.             } else if ($seftitle == "")  {
  1458.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_seftitle_empty') ."</p></div>";
  1459.                 view_categories();
  1460.             } else if ( check_if_unique('category_name', $name) ) {
  1461.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_category_name_exists'). "</p></div>";
  1462.                 view_categories();
  1463.             } else if ( check_if_unique('category_seftitle', $seftitle) ) {
  1464.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_category_seftitle_exists'). "</p></div>";
  1465.                 view_categories();
  1466.             } else if (cleancheckSEF($seftitle) == "notok")  {
  1467.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_seftitle_illegal') ."</p></div>";
  1468.                 view_categories();
  1469.             } else {
  1470.                 mysql_query("INSERT INTO ". s('prefix'). "categories(name,seftitle,description,published) VALUES('$name', '$seftitle', '$description', '$publish_category')"); 
  1471.                 echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). "categories/'>". l('back') ."</a></p></div>";
  1472.             }
  1473.         }
  1474.     } 
  1475.                   
  1476.     if ($_POST['task'] == "edit_category") {
  1477.         if ($_POST['submit_text']) {
  1478.         if ($name == "")  {
  1479.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_name_empty') ."</p></div>";
  1480.                 edit_category();
  1481.             } else if ($seftitle == "")  {
  1482.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_seftitle_empty') ."</p></div>";
  1483.                 edit_category();
  1484.             } else if ( check_if_unique('category_name', $name, $id) ) {
  1485.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_category_name_exists'). "</p></div>";
  1486.                 edit_category();
  1487.             } else if ( check_if_unique('category_seftitle', $seftitle, $id) ) {
  1488.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_category_seftitle_exists'). "</p></div>";
  1489.                 edit_category();
  1490.             } else if (cleancheckSEF($seftitle) == "notok")  {
  1491.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_category_seftitle_illegal') ."</p></div>";
  1492.                 edit_category();
  1493.             } else {
  1494.                 mysql_query("UPDATE ". s('prefix'). "categories SET name='$name' WHERE id='$id'");
  1495.                   mysql_query("UPDATE ". s('prefix'). "categories SET seftitle='$seftitle' WHERE id='$id'");
  1496.                   mysql_query("UPDATE ". s('prefix'). "categories SET description='$description' WHERE id='$id'");
  1497.                   mysql_query("UPDATE ". s('prefix'). "categories SET published='$publish_category' WHERE id='$id'");
  1498.                   echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). "categories/'>". l('back') ."</a></p></div>";
  1499.     }}}
  1500.                                      
  1501.       else if ($_POST['task'] == "new") {
  1502.         if ($_POST['submit_text']) {
  1503.             $_SESSION['temp']['title'] = $title;
  1504.             $_SESSION['temp']['seftitle'] = $seftitle;
  1505.             $_SESSION['temp']['text'] = $text;
  1506.               if ($title == "") {
  1507.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_title_empty') ."</p></div>";
  1508.                 new_article();
  1509.                 unset($_SESSION['temp']);
  1510.             } else if ($seftitle == "")  {
  1511.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_seftitle_empty') ."</p></div>";
  1512.                 $_SESSION['temp']['seftitle'] = $_SESSION['temp']['title'];
  1513.                 new_article();
  1514.                 unset($_SESSION['temp']);
  1515.             } else if (cleancheckSEF($seftitle) == "notok")  {
  1516.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_seftitle_illegal') ."</p></div>";
  1517.                 new_article();
  1518.                 unset($_SESSION['temp']);
  1519.             } else if ( check_if_unique('article_title', $title) ) {
  1520.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_article_title_exists'). "</p></div>";
  1521.                 new_article();
  1522.                 unset($_SESSION['temp']);
  1523.             } else if ( check_if_unique('article_seftitle', $seftitle) ) {
  1524.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_article_seftitle_exists'). "</p></div>";
  1525.                   new_article();
  1526.                 unset($_SESSION['temp']);
  1527.             } else {
  1528.                 if ($auto_html == "ON") {
  1529.                 $text = str_replace('<p></p>', '', '<p>' . preg_replace('#\n|\r#', '</p>$0<p>', $text) . '</p>'); }
  1530.                 $query = "INSERT INTO ". s('prefix'). "articles(title,seftitle,text,textlimit,date,category,position,displaytitle,displayinfo,commentable,image,published) VALUES('". $title ."', '". $seftitle ."', '". $text ."', '". $text_limit ."', '". $date ."', '". $category ."', '". $position ."', '". $display_title ."', '". $display_info ."', '". $commentable ."', '". $image ."', '". $fpublished ."')";
  1531.                 mysql_query($query);
  1532.                 echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). "'>". l('back') ."</a></p></div>";
  1533.                 unset($_SESSION['temp']);
  1534.     }}}
  1535.  
  1536.     else if ($_POST['task'] == "simpleedit") {
  1537.         if ($_POST['submit_text']) {
  1538.             $_SESSION['temp']['title'] = $title;
  1539.             $_SESSION['temp']['text'] = $text;
  1540.               if ($title == "") {
  1541.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_title_empty') ."</p></div>";
  1542.                 edit_article(simple);
  1543.                 unset($_SESSION['temp']);
  1544.             } else if ( check_if_unique('article_title', $title, $id) ) {
  1545.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_article_title_exists'). "</p></div>";
  1546.                 edit_article(simple);
  1547.                 unset($_SESSION['temp']);
  1548.             } else {
  1549.                 $text = str_replace('<p></p>', '', '<p>' . preg_replace('#\n|\r#', '</p>$0<p>', $text) . '</p>');
  1550.                 mysql_query("UPDATE ". s('prefix'). "articles SET title='$title' WHERE id='$id'");
  1551.                   mysql_query("UPDATE ". s('prefix'). "articles SET text='$text' WHERE id='$id'");
  1552.                   mysql_query("UPDATE ". s('prefix'). "articles SET textlimit='$text_limit' WHERE id='$id'");
  1553.                   mysql_query("UPDATE ". s('prefix'). "articles SET category='$category' WHERE id='$id'");
  1554.                   mysql_query("UPDATE ". s('prefix'). "articles SET position='$position' WHERE id='$id'");
  1555.                   mysql_query("UPDATE ". s('prefix'). "articles SET displaytitle='$display_title' WHERE id='$id'");
  1556.                   mysql_query("UPDATE ". s('prefix'). "articles SET displayinfo='$display_info' WHERE id='$id'");
  1557.                   mysql_query("UPDATE ". s('prefix'). "articles SET commentable='$commentable' WHERE id='$id'");
  1558.                   mysql_query("UPDATE ". s('prefix'). "articles SET image='$image' WHERE id='$id'");
  1559.                   echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). find_cat_sef($category). "/" .find_article_sef($id). "/'>". l('back') ."</a></p></div>";
  1560.                 unset($_SESSION['temp']);
  1561.             }
  1562.         }
  1563.     }
  1564.     else if ($_POST['task'] == "advancededit") {
  1565.         if ($_POST['submit_text']) {
  1566.             $_SESSION['temp']['title'] = $title;
  1567.             $_SESSION['temp']['seftitle'] = $seftitle;
  1568.             $_SESSION['temp']['text'] = $text;
  1569.                if ($title == "") {
  1570.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_title_empty') ."</p></div>";
  1571.                 edit_article(advanced);
  1572.                 unset($_SESSION['temp']);
  1573.             } else if ($seftitle == "")  {
  1574.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_seftitle_empty') ."</p></div>";
  1575.                 edit_article(advanced);
  1576.                 unset($_SESSION['temp']);
  1577.             } else if (cleancheckSEF($seftitle) == "notok")  {
  1578.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>". l('error_article_seftitle_illegal') ."</p></div>";
  1579.                 edit_article(advanced);
  1580.                 unset($_SESSION['temp']);
  1581.             } else if ( check_if_unique('article_title', $title, $id) ) {
  1582.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_article_title_exists'). "</p></div>";
  1583.                 edit_article(advanced);
  1584.                 unset($_SESSION['temp']);
  1585.             } else if ( check_if_unique('article_seftitle', $seftitle, $id) ) {
  1586.                 echo "<div class=\"".s('css_error')."\"><h2>". l('admin_error') ."</h2><p>" .l('error_article_seftitle_exists'). "</p></div>";
  1587.                   edit_article(advanced);
  1588.                 unset($_SESSION['temp']);
  1589.             } else {
  1590.                   mysql_query("UPDATE ". s('prefix'). "articles SET title='$title' WHERE id='$id'");
  1591.                   mysql_query("UPDATE ". s('prefix'). "articles SET seftitle='$seftitle' WHERE id='$id'");
  1592.                   mysql_query("UPDATE ". s('prefix'). "articles SET text='$text' WHERE id='$id'");
  1593.                   mysql_query("UPDATE ". s('prefix'). "articles SET textlimit='$text_limit' WHERE id='$id'");
  1594.                   mysql_query("UPDATE ". s('prefix'). "articles SET date='$date' WHERE id='$id'");
  1595.                   mysql_query("UPDATE ". s('prefix'). "articles SET category='$category' WHERE id='$id'");
  1596.                   mysql_query("UPDATE ". s('prefix'). "articles SET position='$position' WHERE id='$id'");
  1597.                   mysql_query("UPDATE ". s('prefix'). "articles SET displaytitle='$display_title' WHERE id='$id'");
  1598.                   mysql_query("UPDATE ". s('prefix'). "articles SET displayinfo='$display_info' WHERE id='$id'");
  1599.                   mysql_query("UPDATE ". s('prefix'). "articles SET commentable='$commentable' WHERE id='$id'");
  1600.                   mysql_query("UPDATE ". s('prefix'). "articles SET image='$image' WHERE id='$id'");
  1601.                   mysql_query("UPDATE ". s('prefix'). "articles SET published='$fpublished' WHERE id='$id'");
  1602.                   echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). find_cat_sef($category). "/" .find_article_sef($id). "/'>". l('back') ."</a></p></div>";
  1603.                 unset($_SESSION['temp']);
  1604.             }
  1605.         }
  1606.     }
  1607.       
  1608.     else if ($_GET['task'] == "delete") { 
  1609.         mysql_query("DELETE FROM " .s('prefix'). "articles WHERE id='$id'");
  1610.         echo "<h2>". l('deleted_success') ."</h2><p><a href='" .s('website'). "'>". l('backhome') ."</a></p>";
  1611.     }
  1612.       
  1613.       else if ($_POST['task'] == "editcomment") {
  1614.           mysql_query("UPDATE ". s('prefix'). "comments SET name='$name' WHERE id='$commentid'");
  1615.         mysql_query("UPDATE ". s('prefix'). "comments SET comment='$comment' WHERE id='$commentid'");
  1616.         echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). find_cat_sef($categoryid). "/" .find_article_sef($id). "/'>". l('back') ."</a></p></div>";
  1617.        }
  1618.       
  1619.     else if ($_GET['task'] == "freezecomments") {
  1620.         $categoryid = find_article_cat($id);
  1621.           mysql_query("UPDATE ". s('prefix'). "articles SET commentable='FREEZ' WHERE id='$id'");
  1622.           echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). find_cat_sef($categoryid). "/" .find_article_sef($id). "/'>". l('back') ."</a></p></div>";
  1623.     }
  1624.  
  1625.     else if ($_GET['task'] == "unfreezecomments") {
  1626.         $categoryid = find_article_cat($id);
  1627.         mysql_query("UPDATE ". s('prefix'). "articles SET commentable='YES' WHERE id='$id'");
  1628.         echo "<div class=\"".s('css_success')."\"><h2>". l('operation_completed') ."</h2><p><a href='" .s('website'). find_cat_sef($categoryid). "/" .find_article_sef($id). "/'>". l('back') ."</a></p></div>";
  1629.     }
  1630.       
  1631.     else if ($_GET['task'] == "deletecomment") { 
  1632.           $commentid = $_GET['commentid'];
  1633.         $articleid = $_GET['articleid'];
  1634.            mysql_query("DELETE FROM " .s('prefix'). "comments WHERE id='$commentid'");
  1635.         echo "<h2>". l('deleted_success') ."</h2><p><a href='" .s('website'). find_cat_sef($categoryid). "/" .find_article_sef($articleid). "/'>". l('back') ."</a></p>";
  1636.     }
  1637.       
  1638.       else if ($_GET['task'] == "deletecategory") { 
  1639.            $categoryid = $_GET['categoryid'];
  1640.         mysql_query("DELETE FROM " .s('prefix'). "categories WHERE id='$id'");
  1641.         echo "<h2>". l('deleted_success') ."</h2><p><a href='" .s('website'). "categories/'>". l('back') ."</a></p>";
  1642.     }
  1643. }
  1644.  
  1645.  
  1646. //********
  1647. // IMAGES 
  1648. //********
  1649. function images() { 
  1650.     if (isset($_GET['image'])) {
  1651.         $file_to_delete = s('image_folder') ."/". $_GET['image'];
  1652.         unlink($file_to_delete); 
  1653.         echo "<h2>". l('deleted_success') ."</h2><p><a href='" .s('website'). "images/'>". l('back') ."</a></p>";
  1654.     } else { ?>
  1655.     <h2><? echo l('images'); ?></h2>
  1656.     <form name="imageformauthenticate" method="post" action="" enctype="multipart/form-data"></form>
  1657.     <form name="imageform" method="post" action="" enctype="multipart/form-data">
  1658.         <p><br /><? echo l('upload_image'); ?>:</p>
  1659.         <p><input type="file" name="imagefile" />
  1660.         <input type="submit" name="upload" value="<? echo l('upload'); ?>" /><br /></p>
  1661.     </form> <?
  1662.     if(isset( $_POST['upload'] )) {
  1663.         if ($_FILES['imagefile']['type']){ 
  1664.             $upload_dir = s('image_folder') ."/";     
  1665.             copy ($_FILES['imagefile']['tmp_name'], $upload_dir .$_FILES['imagefile']['name']) or die ("Could not copy"); 
  1666.             echo "<div class=\"".s('css_success')."\"><h2>" .l('operation_completed'). "</h2></div>";
  1667.             $kb_size = round(($_FILES['imagefile']['size'] / 1024), 1);
  1668.             echo "<p><b>".$_FILES['imagefile']['name']. "</b>  [ " .$kb_size. " KB ] [ " .$_FILES['imagefile']['type']." ]";
  1669.         } else {
  1670.             echo "<h2>" .l('admin_error'). "</h2>";
  1671.             echo "<p>" .l('image_error'). "</p>";
  1672.         }
  1673.     } else {
  1674.         $upload_dir = s('image_folder') ."/";
  1675.         $handle= opendir($upload_dir);
  1676.         $filelist = "";
  1677.         while ($file = readdir($handle)) {
  1678.            if(!is_dir($file) && !is_link($file) && $file <> "Thumbs.db") {
  1679.             $filelist .= "<a href='$upload_dir$file'>".$file."</a> [ <a href='" .s('website'). "index.php?action=images&task=delete&image=" .$file. "'".if_javascript_on(" onclick='return confirm(\"".l('warning_delete')."\");'",'return').">Delete</a> ]<br />";
  1680.     }}
  1681.     echo "<h2>". l('saved_images') .":</h2>";
  1682.     echo "<p>" .$filelist. "</p>";
  1683. }}}
  1684. ?>
  1685.