PageRenderTime 54ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/admin/options.php

https://github.com/aravindc/pixelpost
PHP | 2188 lines | 1365 code | 417 blank | 406 comment | 251 complexity | 89a924d0b7e85edfe232831892f64dc5 MD5 | raw file
Possible License(s): GPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. <?php
  2. // SVN file version:
  3. // $Id$
  4. if(!isset($_SESSION["pixelpost_admin"]) || $cfgrow['password'] != $_SESSION["pixelpost_admin"] || isset($_GET["_SESSION"]["pixelpost_admin"]) AND $_GET["_SESSION"]["pixelpost_admin"] == $_SESSION["pixelpost_admin"] || isset($_POST["_SESSION"]["pixelpost_admin"]) AND $_POST["_SESSION"]["pixelpost_admin"] == $_SESSION["pixelpost_admin"] || isset($_COOKIE["_SESSION"]["pixelpost_admin"]) AND $_COOKIE["_SESSION"]["pixelpost_admin"] == $_SESSION["pixelpost_admin"])
  5. {
  6. die ("Try another day!!");
  7. }
  8. if(isset($_GET['view']) AND $_GET['view'] == "options")
  9. {
  10. if(!isset($_GET['optionsview'])){ $_GET['optionsview'] = ''; }
  11. /**
  12. * Initialize error array
  13. *
  14. */
  15. $error = array();
  16. ////////////////////////////////////////////////////////////////////////////////////
  17. ////////////////////////////////////////////////////////////////////////////////////
  18. ////
  19. //// GENERAL OPTIONS SQL
  20. ////
  21. ////////////////////////////////////////////////////////////////////////////////////
  22. ////////////////////////////////////////////////////////////////////////////////////
  23. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == '' OR isset($_GET['optionsview']) AND $_GET['optionsview'] == 'general');
  24. {
  25. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updateall')
  26. {
  27. /**
  28. * Update title, sub-title, site-url
  29. *
  30. */
  31. $site_url = $_POST['new_site_url'];
  32. if(substr($site_url, -1) != '/'){ $site_url = $site_url.'/'; } // Add the final backslash (/) if missing
  33. $site_url = preg_replace('#[\\\\/]{3,}#', '/', $site_url); // Remove recursive backslashes
  34. if(strtolower(substr(trim($site_url), 0, 7)) != 'http://') // Make sure we start with http://
  35. {
  36. $site_url = 'http://'.trim($site_url);
  37. }
  38. else
  39. {
  40. $site_url = trim($site_url);
  41. }
  42. /**
  43. * Update:*
  44. * sitetitle, subtitle, siteurl, commentemail, updatehtmlemailnote,
  45. * updateallowcomments, markdown, exif, visitorbooking, timestamp, rsstype,
  46. * feed_discovery, feeditems, feed_title, feed_description, feed_copyright, allow_comment_feed
  47. *
  48. */
  49. sql_query("
  50. UPDATE `".$pixelpost_db_prefix."config` SET
  51. `sitetitle` = '".clean($_POST['new_site_title'])."',
  52. `subtitle` = '".clean($_POST['new_sub_title'])."',
  53. `siteurl` = '".clean($site_url)."',
  54. `commentemail` = '".clean($_POST['new_commentemail'])."',
  55. `htmlemailnote` = '".clean($_POST['new_htmlemailnote'])."',
  56. `global_comments` = '".clean($_POST['global_comments'])."',
  57. `markdown` = '".clean($_POST['markdown'])."',
  58. `exif` = '".clean($_POST['exif'])."',
  59. `visitorbooking` = '".clean($_POST['visitorbooking'])."',
  60. `daysafterlastpost` = '".(int) $_POST['daysafterlastpost']."',
  61. `rsstype` = '".clean($_POST['rsstype'])."',
  62. `feed_discovery` = '".clean($_POST['feed_discovery'])."',
  63. `feeditems` = '".(int) $_POST['feeditems']."',
  64. `feed_title` = '".clean($_POST['feed_title'])."',
  65. `feed_description` = '".clean($_POST['feed_description'])."',
  66. `feed_copyright` = '".clean($_POST['feed_copyright'])."',
  67. `allow_comment_feed` = '".clean($_POST['allow_comment_feed'])."',
  68. `feed_enclosure` = '".clean($_POST['allow_feed_enclosure'])."'
  69. ");
  70. /**
  71. * Update default and alternative languages
  72. *
  73. */
  74. if($_POST['new_lang'] != $_POST['alt_lang'])
  75. {
  76. sql_query("
  77. UPDATE `".$pixelpost_db_prefix."config` SET
  78. `langfile` = '".clean($_POST['new_lang'])."',
  79. `altlangfile` = '".clean($_POST['alt_lang'])."'
  80. ");
  81. }
  82. else
  83. {
  84. $error['lang'] = $admin_lang_optn_upd_lang_error;
  85. }
  86. /**
  87. * External Feed
  88. * Do not bother to update unless the external feed option is selected and not null
  89. *
  90. */
  91. if($_POST['feed_discovery'] == 'E' && $_POST['feed_external'] != '')
  92. {
  93. sql_query("
  94. UPDATE `".$pixelpost_db_prefix."config` SET
  95. `feed_external` = '".clean($_POST['feed_external'])."',
  96. `feed_external_type` = '".clean($_POST['feed_external_type'])."'
  97. ");
  98. }
  99. /**
  100. * Refresh the settings
  101. *
  102. */
  103. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  104. } // END updateall
  105. } // END optionsview / general
  106. ////////////////////////////////////////////////////////////////////////////////////
  107. ////////////////////////////////////////////////////////////////////////////////////
  108. ////
  109. //// TEMPLATE OPTIONS SQL
  110. ////
  111. ////////////////////////////////////////////////////////////////////////////////////
  112. ////////////////////////////////////////////////////////////////////////////////////
  113. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'template')
  114. {
  115. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updatetemp')
  116. {
  117. /**
  118. * Update:
  119. * template, dateformat, calendar
  120. *
  121. */
  122. sql_query("UPDATE `".$pixelpost_db_prefix."config` SET
  123. `template` = '".clean($_POST['new_template'])."',
  124. `dateformat` = '".clean($_POST['new_dateformat'])."',
  125. `calendar` = '".clean($_POST['cal'])."'
  126. ");
  127. if($_POST['catformat'] != '')
  128. {
  129. if($_POST['catformat'] != 'custom')
  130. { // selected from the drop box
  131. $startcatformat = '';
  132. $endcatformat = clean($_POST['catformat']);
  133. if($_POST['catformat'] == '[')
  134. {
  135. $startcatformat = '[';
  136. $endcatformat = ']';
  137. }
  138. }
  139. else
  140. { // custom format
  141. $startcatformat = clean($_POST['startcatformat']);
  142. $endcatformat = clean($_POST['endcatformat']);
  143. }
  144. sql_query("
  145. UPDATE `".$pixelpost_db_prefix."config` SET
  146. `catgluestart` = '" .$startcatformat ."',
  147. `catglueend` = '" .$endcatformat ."'
  148. ");
  149. }
  150. /**
  151. * Refresh the settings
  152. *
  153. */
  154. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  155. }
  156. } // END optionsview / template
  157. ////////////////////////////////////////////////////////////////////////////////////
  158. ////////////////////////////////////////////////////////////////////////////////////
  159. ////
  160. //// THUMBNAIL OPTIONS SQL
  161. ////
  162. ////////////////////////////////////////////////////////////////////////////////////
  163. ////////////////////////////////////////////////////////////////////////////////////
  164. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'thumb')
  165. {
  166. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updatethumb' AND isset($_POST['submit']))
  167. {
  168. /**
  169. * Update:
  170. * thumbnumber, crop, thumbwidth, thumbheight,
  171. * compression, thumb_sharpening
  172. *
  173. */
  174. sql_query("UPDATE `".$pixelpost_db_prefix."config` SET
  175. `thumbnumber` = '".clean($_POST['thumbnumber'])."',
  176. `crop` = '".clean($_POST['new_crop'])."',
  177. `thumbwidth` = '".clean($_POST['thumbwidth'])."',
  178. `thumbheight` = '".clean($_POST['thumbheight'])."',
  179. `compression` = '".clean($_POST['new_compression'])."',
  180. `thumb_sharpening` = '".clean($_POST['new_thumb_sharpening'])."'
  181. ");
  182. } // END updateuser
  183. elseif(isset($_GET['optaction']) AND $_GET['optaction'] == 'updatethumb' AND isset($_POST['regenerate']) AND isset($_POST['do']) AND $_POST['do'] == 'do')
  184. {
  185. /**
  186. * Update:
  187. * thumbwidth, thumbheight
  188. *
  189. */
  190. sql_query("UPDATE `".$pixelpost_db_prefix."config` SET
  191. `thumbwidth` = '".clean($_POST['thumbwidth'])."',
  192. `thumbheight` = '".clean($_POST['thumbheight'])."'
  193. ");
  194. /**
  195. * Temporarily raise memory limit to 65M
  196. *
  197. */
  198. if(function_exists('ini_set'))
  199. {
  200. @ini_set('memory_limit','65M');
  201. }
  202. /**
  203. * Regenerate thumbnails
  204. *
  205. */
  206. if(function_exists('gd_info'))
  207. {
  208. $image = mysql_query("SELECT `image` FROM `{$pixelpost_db_prefix}pixelpost`");
  209. $dir = rtrim($cfgrow['imagepath'],"/");
  210. $thumbnail_counter = 0;
  211. while($row = mysql_fetch_assoc($image))
  212. {
  213. if(file_exists($dir.'/'.$row['image']))
  214. {
  215. $thumbnail = createthumbnail($row['image']);
  216. $thumbnail_counter++;
  217. }
  218. }
  219. echo "<div class='jcaption'>$admin_lang_optn_thumb_updated</div><div class='content confirm'>$admin_lang_done $thumbnail_counter $admin_lang_optn_updated </div><p>&nbsp;</p>";
  220. }
  221. }
  222. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updatethumb' AND isset($_POST['submit']) OR isset($_GET['optaction']) AND $_GET['optaction'] == 'updatethumb' AND isset($_POST['regenerate']))
  223. {
  224. /**
  225. * Refresh the settings
  226. *
  227. */
  228. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  229. }
  230. } // END optionsview / thumbnails
  231. ////////////////////////////////////////////////////////////////////////////////////
  232. ////////////////////////////////////////////////////////////////////////////////////
  233. ////
  234. //// ANTISPAM OPTIONS SQL
  235. ////
  236. ////////////////////////////////////////////////////////////////////////////////////
  237. ////////////////////////////////////////////////////////////////////////////////////
  238. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'antispam')
  239. {
  240. if(isset($_GET['optaction']) AND $_GET['optaction']=='updateantispam')
  241. {
  242. if(isset($_POST['token_time']) AND $_POST['token_time'] < 1)
  243. {
  244. /**
  245. * Token time < 1 minute is not allowed. Correct it and show error mesage.
  246. *
  247. */
  248. $_POST['token_time'] = 1;
  249. $error['token_time'] = $admin_lang_optn_token_error;
  250. }
  251. /**
  252. * UPDATE;
  253. * token, DSBL, flood, max URI
  254. *
  255. */
  256. sql_query("
  257. UPDATE `".$pixelpost_db_prefix."config` SET
  258. `token` = '".clean($_POST['token'])."',
  259. `token_time` = '".(int) $_POST['token_time']."',
  260. `comment_timebetween` = '".(int) $_POST['comment_timebetween']."',
  261. `max_uri_comments` = '".(int) $_POST['max_uri_comment']."'
  262. ");
  263. /**
  264. * Refresh the settings
  265. *
  266. */
  267. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  268. }
  269. } // END optionsview / antispam
  270. ////////////////////////////////////////////////////////////////////////////////////
  271. ////////////////////////////////////////////////////////////////////////////////////
  272. ////
  273. //// USER OPTIONS SQL
  274. ////
  275. ////////////////////////////////////////////////////////////////////////////////////
  276. ////////////////////////////////////////////////////////////////////////////////////
  277. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'user')
  278. {
  279. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updateuser')
  280. {
  281. /**
  282. * Update admin username / password
  283. *
  284. */
  285. if($_POST['newadminpass'] != '')
  286. {
  287. if($_POST['newadminpass_re'] == $_POST['newadminpass'])
  288. {
  289. $new_pass = md5($_POST['newadminpass']);
  290. sql_query("
  291. UPDATE `".$pixelpost_db_prefix."config` SET
  292. `admin` = '".clean($_POST['new_admin_user'])."',
  293. `password` = '$new_pass'
  294. ");
  295. echo "<div class='content confirm'>$admin_lang_optn_pass_chngd_txt</div>";
  296. unset($_SESSION["pixelpost_admin"]);
  297. setcookie( "pp_user", "", time()-36000);
  298. setcookie( "pp_password", "", time()-36000);
  299. }
  300. elseif($_POST['newadminpass_re'] != '')
  301. {
  302. echo "<div class='content confirm'>$admin_lang_optn_pass_notchngd_txt</div>";
  303. }
  304. }
  305. /**
  306. * Update:
  307. * updatetimezone, updateemail, updateadminlang
  308. *
  309. */
  310. sql_query("
  311. UPDATE `".$pixelpost_db_prefix."config` SET
  312. `timezone` = '".clean($_POST['timezone'])."',
  313. `email` = '".clean($_POST['new_email'])."',
  314. `admin_langfile` = '".clean($_POST['new_admin_lang'])."'
  315. ");
  316. /**
  317. * Refresh the settings
  318. *
  319. */
  320. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  321. }
  322. } // END optionsview / user
  323. ////////////////////////////////////////////////////////////////////////////////////
  324. ////////////////////////////////////////////////////////////////////////////////////
  325. ////
  326. //// ADVANCED GENERAL OPTIONS SQL
  327. ////
  328. ////////////////////////////////////////////////////////////////////////////////////
  329. ////////////////////////////////////////////////////////////////////////////////////
  330. if(isset($_GET['advancedview']) AND $_GET['advancedview'] == '' OR isset($_GET['advancedview']) AND $_GET['advancedview'] == 'general')
  331. {
  332. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updateadv_gen')
  333. {
  334. /**
  335. * Update:
  336. * updatethumbnailpath, updateimagepath,
  337. * display sort, display order
  338. *
  339. * @advanced
  340. *
  341. */
  342. sql_query("
  343. UPDATE `".$pixelpost_db_prefix."config` SET
  344. `thumbnailpath` = '".clean($_POST['new_thumbnail_path'])."',
  345. `imagepath` = '".clean($_POST['new_image_path'])."',
  346. `timestamp` = '".clean($_POST['timestamp'])."',
  347. `display_sort_by` = '".clean($_POST['display_sort_by'])."',
  348. `display_order` = '".clean($_POST['display_order'])."'
  349. ");
  350. /**
  351. * Refresh the settings
  352. *
  353. */
  354. $cfgrow = sql_array("SELECT * FROM `".$pixelpost_db_prefix."config`");
  355. } // END updateadv_gen
  356. } // END advanced / general
  357. ////////////////////////////////////////////////////////////////////////////////////
  358. ////////////////////////////////////////////////////////////////////////////////////
  359. ////
  360. //// ADVANCED LOCALIZATION OPTIONS SQL
  361. ////
  362. ////////////////////////////////////////////////////////////////////////////////////
  363. ////////////////////////////////////////////////////////////////////////////////////
  364. if(isset($_GET['advancedview']) AND $_GET['advancedview'] == '' OR isset($_GET['advancedview']) AND $_GET['advancedview'] == 'localization')
  365. {
  366. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updateadv_local' AND !isset($_POST['delete']))
  367. {
  368. /**
  369. * Clean the posted variables.
  370. *
  371. */
  372. $language = strtolower($_POST['language']);
  373. $language = preg_replace('# {1,}#', '_', trim($language)); // Replace recursive spaces with one underscore
  374. $language = eregi_replace('[^a-zA-Z_]+','',$language);
  375. $abbreviation = strtoupper(trim($_POST['abbr']));
  376. $abbreviation = eregi_replace('[^A-Z]+','',$abbreviation);
  377. $native_tongue = trim($_POST['native_tongue']);
  378. /**
  379. * Perform some simple checks before verifying the new language against the default pixelpost array.
  380. * Make sure all fields are filled and make sure the abbr has a string length of exactly two alpha characters.
  381. *
  382. */
  383. if(empty($language) OR empty($abbreviation) OR empty($native_tongue))
  384. {
  385. $error['newlang_missing'] = $admin_lang_adv_local_err_fields;
  386. }
  387. elseif(strlen($abbreviation) < '2' OR strlen($abbreviation) > '2')
  388. {
  389. $error['abbr_strlen'] = $admin_lang_adv_local_err_abbr_strlen;
  390. }
  391. else
  392. {
  393. /**
  394. * Query the database and pullout the default pixelpost language array.
  395. *
  396. */
  397. $query = mysql_query("SELECT * FROM `".$pixelpost_db_prefix."localization`");
  398. $row = mysql_fetch_array($query,MYSQL_ASSOC);
  399. /**
  400. * Unserialize the defualt language array using the UTF8 safe unserialize function, mb_unserialize.
  401. *
  402. */
  403. $pp_supp_lang = mb_unserialize(stripslashes($row['pp_supp_lang']));
  404. /**
  405. * If a user supplied language array exists,
  406. * Unserialize the user language array using the UTF8 safe unserialize function, mb_unserialize,
  407. * and merge with the default pixelpost array.
  408. *
  409. */
  410. if(!empty($row['user_supp_lang']))
  411. {
  412. $user_supp_lang = mb_unserialize(stripslashes($row['user_supp_lang']));
  413. $pp_supp_lang = array_merge($pp_supp_lang, $user_supp_lang);
  414. }
  415. //var_dump($pp_supp_lang);
  416. /**
  417. * Create an array of default and user supplied language abbreviations and names.
  418. * Used to check for duplicate languages.
  419. *
  420. */
  421. $languages = array();
  422. $abbreviations = array();
  423. foreach($pp_supp_lang as $lang => $abbr)
  424. {
  425. $languages[] = $lang; // EG: german
  426. $abbreviations[] = $abbr[0]; // EG: DE
  427. }
  428. if(in_array($language, $languages) OR in_array($abbreviation, $abbreviations))
  429. {
  430. $error['duplicate'] = $admin_lang_adv_local_err_duplicate;
  431. }
  432. else
  433. {
  434. /**
  435. * Create the new user supplied language array
  436. *
  437. */
  438. $user_supp_lang_new = array($language => array($abbreviation,$native_tongue));
  439. /**
  440. * Query the database and pullout the user supplied language array.
  441. *
  442. */
  443. $query = mysql_query("SELECT `user_supp_lang` FROM `".$pixelpost_db_prefix."localization`");
  444. $row = mysql_fetch_array($query,MYSQL_ASSOC);
  445. /**
  446. * If a user supplied language array already exists,
  447. * Unserialize the user language array using the UTF8 safe unserialize function, mb_unserialize,
  448. * and merge with the new user supplied language array.
  449. *
  450. */
  451. if(!empty($row['user_supp_lang']))
  452. {
  453. $user_supp_lang = mb_unserialize(stripslashes($row['user_supp_lang']));
  454. $user_supp_lang_new = array_merge($user_supp_lang, $user_supp_lang_new);
  455. }
  456. /**
  457. * Serialize the new array and insert it back into the database
  458. *
  459. */
  460. $user_supp_lang_new = addslashes(serialize($user_supp_lang_new));
  461. //var_dump($user_supp_lang_new);
  462. $query = mysql_query("UPDATE `".$pixelpost_db_prefix."localization` SET `user_supp_lang` = '$user_supp_lang_new' WHERE `id` = '1'");
  463. /**
  464. * Flag that clears the text boxes upon successfully adding a new language
  465. *
  466. */
  467. $lang_success = true;
  468. }
  469. }
  470. } // END updateadv_local
  471. if(isset($_GET['optaction']) AND $_GET['optaction'] == 'updateadv_local' AND isset($_POST['delete']))
  472. {
  473. $abbr_to_del = $_POST['delete'];
  474. /**
  475. * Query the database and pullout the default pixelpost language array.
  476. *
  477. */
  478. $query = mysql_query("SELECT `user_supp_lang` FROM `".$pixelpost_db_prefix."localization`");
  479. $row = mysql_fetch_array($query,MYSQL_ASSOC);
  480. /**
  481. * Unserialize the defualt language array using the UTF8 safe unserialize function, mb_unserialize.
  482. *
  483. */
  484. $user_supp_lang = mb_unserialize(stripslashes($row['user_supp_lang']));
  485. $user_supp_lang_new = array();
  486. foreach($user_supp_lang as $lang => $abbr)
  487. {
  488. if(!in_array($abbr[0], $abbr_to_del))
  489. {
  490. $user_supp_lang_new[$lang] = array($abbr[0],$abbr[1]);
  491. }
  492. }
  493. /**
  494. * Serialize the new array and insert it back into the database
  495. *
  496. */
  497. $user_supp_lang_new = addslashes(serialize($user_supp_lang_new));
  498. //var_dump($user_supp_lang_new);
  499. $query = mysql_query("UPDATE `".$pixelpost_db_prefix."localization` SET `user_supp_lang` = '$user_supp_lang_new' WHERE `id` = '1'");
  500. }
  501. } // END advanced / localization
  502. /**
  503. * Display error or done when saving
  504. *
  505. */
  506. if(isset($_GET['optaction']) AND $_GET['optaction'] != "")
  507. {
  508. /**
  509. * Show success or error message
  510. *
  511. */
  512. if(!sizeof(&$error))
  513. {
  514. echo "<div class='jcaption'>$admin_lang_optn_upd_done</div><div class='content confirm'>$admin_lang_done <a href='".PHP_SELF."?view=options'>$admin_lang_reload</a></div><p>&nbsp;</p>";
  515. }
  516. else
  517. {
  518. $result = implode('<br />', $error);
  519. echo "<div class='jcaption'>$admin_lang_optn_upd_error</div><div class='content'><font color='red'><strong>$result</strong></font></div><p>&nbsp;</p>";
  520. }
  521. }
  522. /**
  523. * Options Menu Items
  524. *
  525. */
  526. $optn_title = (!isset($_GET['advancedview'])) ? $admin_lang_options : $admin_lang_adv;
  527. echo "<div id='caption'>$optn_title</div>\n<div id='submenu'>";
  528. if(isset($_GET['advancedview'])) // advanced options
  529. {
  530. $submenucssclass = 'notselected';
  531. if(isset($_GET['advancedview']) AND $_GET['advancedview'] == '' OR isset($_GET['advancedview']) AND $_GET['advancedview'] == 'general' OR !isset($_GET['advancedview']))
  532. {
  533. $submenucssclass = 'selectedsubmenu';
  534. }
  535. echo "<a href='index.php?view=options&amp;advancedview=general' class='$submenucssclass'>$admin_lang_optn_general</a>\n";
  536. $submenucssclass = 'notselected';
  537. if(isset($_GET['advancedview']) AND $_GET['advancedview'] == 'localization')
  538. {
  539. $submenucssclass = 'selectedsubmenu';
  540. }
  541. echo "|<a href='index.php?view=options&amp;advancedview=localization' class='$submenucssclass'>LOCALIZATION</a>";//$admin_lang_localization
  542. $submenucssclass = 'notselected';
  543. if(isset($_GET['advancedview']) AND $_GET['advancedview'] == 'antispam')
  544. {
  545. $submenucssclass = 'selectedsubmenu';
  546. }
  547. echo "|<a href='index.php?view=options&amp;advancedview=antispam' class='$submenucssclass'>$admin_lang_spam</a>";
  548. }
  549. else // basic options
  550. {
  551. $submenucssclass = 'notselected';
  552. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == '' OR isset($_GET['optionsview']) AND $_GET['optionsview'] == 'general' OR isset($_GET['optionsview']) AND $_GET['optionsview'] == '' AND isset($_GET['view']) AND $_GET['view'] == 'options')
  553. {
  554. $submenucssclass = 'selectedsubmenu';
  555. }
  556. echo "<a href='index.php?view=options&amp;optionsview=general' class='".$submenucssclass."'>$admin_lang_optn_general</a>\n";
  557. $submenucssclass = 'notselected';
  558. if(isset($_GET['optionsview']) && $_GET['optionsview'] == 'template')
  559. {
  560. $submenucssclass = 'selectedsubmenu';
  561. }
  562. echo "|<a href='index.php?view=options&amp;optionsview=template' class='".$submenucssclass."'>$admin_lang_optn_template</a>\n";
  563. $submenucssclass = 'notselected';
  564. if(isset($_GET['optionsview']) && $_GET['optionsview'] == 'thumb')
  565. {
  566. $submenucssclass = 'selectedsubmenu';
  567. }
  568. echo "|<a href='?view=options&amp;optionsview=thumb' class='".$submenucssclass."'>$admin_lang_optn_thumbnails</a>\n";
  569. $submenucssclass = 'notselected';
  570. if(isset($_GET['optionsview']) && $_GET['optionsview'] == 'antispam')
  571. {
  572. $submenucssclass = 'selectedsubmenu';
  573. }
  574. echo "|<a href='?view=options&amp;optionsview=antispam' class='".$submenucssclass."'>$admin_lang_spam</a>\n";
  575. $submenucssclass = 'notselected';
  576. if(isset($_GET['optionsview']) && $_GET['optionsview'] == 'user')
  577. {
  578. $submenucssclass = 'selectedsubmenu';
  579. }
  580. echo "|<a href='?view=options&amp;optionsview=user' class='".$submenucssclass."'>".strtoupper($admin_lang_optn_usr)."</a>\n";
  581. echo_addon_admin_menus($addon_admin_functions,"options");
  582. }
  583. echo '</div>';
  584. if(isset($_GET['advancedview'])) // advanced notice
  585. {
  586. echo '
  587. <div class="jcaption">'.$admin_lang_adv_optn_notice_title.'</div>
  588. <div class="content">
  589. <span id="adv_warning">'.$admin_lang_adv_optn_notice.'</span>
  590. </div>';
  591. }
  592. /**
  593. * Get the config row again after updates
  594. *
  595. */
  596. if($cfgquery = mysql_query("SELECT * FROM `".$pixelpost_db_prefix."config`"))
  597. {
  598. $cfgrow = mysql_fetch_assoc($cfgquery);
  599. }
  600. eval_addon_admin_workspace_menu("options","options");
  601. ////////////////////////////////////////////////////////////////////////////////////
  602. ////////////////////////////////////////////////////////////////////////////////////
  603. ////
  604. //// START PAGE ONE: GENERAL OPTIONS
  605. ////
  606. ////////////////////////////////////////////////////////////////////////////////////
  607. ////////////////////////////////////////////////////////////////////////////////////
  608. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'general' AND !isset($_GET['advancedview']) OR isset($_GET['optionsview']) AND $_GET['optionsview'] == '' AND !isset($_GET['advancedview']) OR !isset($_GET['optionsview']) AND !isset($_GET['advancedview']))
  609. {
  610. /**
  611. * Clean site and sub title
  612. *
  613. */
  614. $pixelpost_site_title = htmlspecialchars(pullout($cfgrow['sitetitle']),ENT_QUOTES);
  615. $pixelpost_sub_title = htmlspecialchars(pullout($cfgrow['subtitle']),ENT_QUOTES);
  616. /**
  617. * Store language option variables
  618. *
  619. */
  620. $default_lang_select = select_option('../language', 'langfile');
  621. if($cfgrow['altlangfile'] != 'Off')
  622. {
  623. $alternative_lang_select = "<option value=\"Off\">++".ucfirst($admin_lang_optn_alt_lang_dis)."++</option>";
  624. }
  625. else
  626. {
  627. $alternative_lang_select = "<option value=\"Off\" selected=\"selected\">".ucfirst($admin_lang_optn_alt_lang_no)."</option>";
  628. }
  629. $alternative_lang_select .= select_option('../language', 'altlangfile');
  630. /**
  631. * Global Comment Setting option values
  632. *
  633. */
  634. $global_comments_select = '';
  635. for($i = 0; $i <= 2; $i++)
  636. {
  637. $sel = '';
  638. if($i == 0){
  639. $val = 'A';
  640. $opt = $admin_lang_optn_cmnt_mod_allowed;
  641. }elseif($i == 1){
  642. $val = 'M';
  643. $opt = $admin_lang_optn_cmnt_mod_moderation;
  644. }elseif($i == 2){
  645. $val = 'F';
  646. $opt = $admin_lang_optn_cmnt_mod_forbidden;
  647. }
  648. if($cfgrow['global_comments'] == $val){ $sel=' selected="selected"'; }
  649. $global_comments_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  650. }
  651. /**
  652. * Send email on comment option values
  653. *
  654. */
  655. if($cfgrow['commentemail']=='yes')
  656. {
  657. $toecho_ce = $admin_lang_optn_yes;
  658. $optnecho_ce = $admin_lang_optn_no;
  659. $optnval_ce = 'no';
  660. }
  661. else
  662. {
  663. $toecho_ce = $admin_lang_optn_no;
  664. $optnecho_ce = $admin_lang_optn_yes;
  665. $optnval_ce = 'yes';
  666. }
  667. /**
  668. * Send HTML email on comment option values
  669. *
  670. */
  671. if($cfgrow['htmlemailnote']=='yes')
  672. {
  673. $toecho_ce_html = $admin_lang_optn_yes;
  674. $optnecho_ce_html = $admin_lang_optn_no;
  675. $optnval_ce_html = 'no';
  676. }
  677. else
  678. {
  679. $toecho_ce_html = $admin_lang_optn_no;
  680. $optnecho_ce_html = $admin_lang_optn_yes;
  681. $optnval_ce_html = 'yes';
  682. }
  683. /**
  684. * Visitor booking option values
  685. *
  686. */
  687. if($cfgrow['visitorbooking']=='yes')
  688. {
  689. $toecho_vb = $admin_lang_optn_yes;
  690. $optnecho_vb = $admin_lang_optn_no;
  691. $optnval_vb = 'no';
  692. }
  693. else
  694. {
  695. $toecho_vb = $admin_lang_optn_no;
  696. $optnecho_vb = $admin_lang_optn_yes;
  697. $optnval_vb = 'yes';
  698. }
  699. /**
  700. * Markdown option values
  701. *
  702. */
  703. if($cfgrow['markdown']=='T')
  704. {
  705. $toecho_mrkd = $admin_lang_optn_yes;
  706. $optnecho_mrkd = $admin_lang_optn_no;
  707. $optnval_mrkd = 'F';
  708. }
  709. else
  710. {
  711. $toecho_mrkd = $admin_lang_optn_no;
  712. $optnecho_mrkd = $admin_lang_optn_yes;
  713. $optnval_mrkd = 'T';
  714. }
  715. /**
  716. * EXIF option values
  717. *
  718. */
  719. if($cfgrow['exif']=='T')
  720. {
  721. $toecho_exif = $admin_lang_optn_yes;
  722. $optnecho_exif = $admin_lang_optn_no;
  723. $optnval_exif = 'F';
  724. }
  725. else
  726. {
  727. $toecho_exif = $admin_lang_optn_no;
  728. $optnecho_exif = $admin_lang_optn_yes;
  729. $optnval_exif = 'T';
  730. }
  731. /**
  732. * RSS feed variables and option values
  733. *
  734. */
  735. $feed_title = htmlspecialchars(pullout($cfgrow['feed_title']),ENT_QUOTES);
  736. $feed_description = htmlspecialchars(pullout($cfgrow['feed_description']),ENT_QUOTES);
  737. $feed_copyright = htmlspecialchars(pullout($cfgrow['feed_copyright']),ENT_QUOTES);
  738. $feed_external = pullout($cfgrow['feed_external']);
  739. if($cfgrow['allow_comment_feed']=='Y')
  740. {
  741. $toecho_feed = $admin_lang_optn_yes;
  742. $optnecho_feed = $admin_lang_optn_no;
  743. $optnval_feed = 'N';
  744. }
  745. else
  746. {
  747. $toecho_feed = $admin_lang_optn_no;
  748. $optnecho_feed = $admin_lang_optn_yes;
  749. $optnval_feed = 'Y';
  750. }
  751. if($cfgrow['feed_enclosure']=='Y')
  752. {
  753. $toecho_feed_enc = $admin_lang_optn_yes;
  754. $optnecho_feed_enc = $admin_lang_optn_no;
  755. $optnval_feed_enc = 'N';
  756. }
  757. else
  758. {
  759. $toecho_feed_enc = $admin_lang_optn_no;
  760. $optnecho_feed_enc = $admin_lang_optn_yes;
  761. $optnval_feed_enc = 'Y';
  762. }
  763. if($cfgrow['feed_external_type']=='ER')
  764. {
  765. $toecho_feed_type = $admin_lang_optn_rss_opt_rss;
  766. $optnecho_feed_type = $admin_lang_optn_rss_opt_atom;
  767. $optnval_feed_type = 'EA';
  768. }
  769. else
  770. {
  771. $toecho_feed_type = $admin_lang_optn_rss_opt_atom;
  772. $optnecho_feed_type = $admin_lang_optn_rss_opt_rss;
  773. $optnval_feed_type = 'ER';
  774. }
  775. /**
  776. * Always show the external feed option if selected
  777. *
  778. */
  779. $show_ext_opt = '';
  780. if($cfgrow['feed_discovery'] != 'E')
  781. {
  782. $show_ext_opt = "<script type=\"text/javascript\">flip('external_feed_discovery');</script>";
  783. }
  784. $feed_style_select = '';
  785. for($i = 0; $i <= 4; $i++)
  786. {
  787. $sel = '';
  788. if($i == 0){
  789. $val = 'F';
  790. $opt = $admin_lang_optn_rss_full;
  791. }elseif($i == 1){
  792. $val = 'F0';
  793. $opt = $admin_lang_optn_rss_full_only;
  794. }elseif($i == 2){
  795. $val = 'T';
  796. $opt = $admin_lang_optn_rss_thumbs;
  797. }elseif($i == 3){
  798. $val = 'O';
  799. $opt = $admin_lang_optn_rss_thumbs_only;
  800. }elseif($i == 4){
  801. $val = 'N';
  802. $opt = $admin_lang_optn_rss_text;
  803. }
  804. if($cfgrow['rsstype'] == $val){ $sel=' selected="selected"'; }
  805. $feed_style_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  806. }
  807. $feed_type_select = '';
  808. for($i = 0; $i <= 4; $i++)
  809. {
  810. $sel = '';
  811. if($i == 0){
  812. $val = 'RA';
  813. $opt = $admin_lang_optn_rss_opt_both;
  814. }elseif($i == 1){
  815. $val = 'R';
  816. $opt = $admin_lang_optn_rss_opt_rss;
  817. }elseif($i == 2){
  818. $val = 'A';
  819. $opt = $admin_lang_optn_rss_opt_atom;
  820. }elseif($i == 3){
  821. $val = 'E';
  822. $opt = $admin_lang_optn_rss_opt_ext;
  823. }elseif($i == 4){
  824. $val = 'N';
  825. $opt = $admin_lang_optn_rss_opt_none;
  826. }
  827. if($cfgrow['feed_discovery'] == $val){ $sel=' selected="selected"'; }
  828. $feed_type_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  829. }
  830. echo <<<EOE
  831. <form method="post" action="{$_SERVER['PHP_SELF']}?{$_SERVER['QUERY_STRING']}&amp;optaction=updateall" accept-charset="UTF-8">
  832. <!-- Site Titles and URL -->
  833. <div class="jcaption">$admin_lang_optn_title_url</div>
  834. <div class="content">
  835. $admin_lang_optn_title_url_text
  836. <p>&nbsp;</p>
  837. <table border="0" cellspacing="2" cellpadding="0">
  838. <tr>
  839. <td align="left">$admin_lang_optn_title</td>
  840. <td align="right">&nbsp;<input type="text" name="new_site_title" value="$pixelpost_site_title" class="input" style="width:300px;" /></td>
  841. </tr>
  842. <tr>
  843. <td align="left">$admin_lang_optn_sub_title</td>
  844. <td align="right">&nbsp;<input type="text" name="new_sub_title" value="$pixelpost_sub_title" class="input" style="width:300px;" /></td>
  845. </tr>
  846. <tr>
  847. <td align="left">$admin_lang_optn_url</td>
  848. <td align="right">&nbsp;<input type="text" name="new_site_url" value="{$cfgrow['siteurl']}" class="input" style="width:300px;" /></td>
  849. </tr>
  850. </table>
  851. <p>&nbsp;</p>
  852. $admin_lang_optn_tip
  853. </div>
  854. <!-- Language Settings -->
  855. <div class="jcaption">$admin_lang_optn_lang_file</div>
  856. <div class="content">
  857. $admin_lang_optn_lang
  858. <br />
  859. <select name="new_lang">
  860. $default_lang_select
  861. </select>
  862. <p>&nbsp;</p>
  863. $admin_lang_optn_alt_lang
  864. <br />
  865. <select name="alt_lang">
  866. $alternative_lang_select
  867. </select>
  868. </div>
  869. <!-- Allow commenting on pictures -->
  870. <div class="jcaption">$admin_lang_optn_comment_setting</div>
  871. <div class="content">
  872. $admin_lang_optn_cmnt_mod_txt
  873. <br />
  874. <select name="global_comments">
  875. $global_comments_select
  876. </select>
  877. </div>
  878. <!-- Send Email on Comment (yes/no) -->
  879. <div class="jcaption">$admin_lang_optn_sendemail</div>
  880. <div class="content">
  881. $admin_lang_optn_sendemail_txt
  882. <br />
  883. <select name="new_commentemail">
  884. <option value="{$cfgrow['commentemail']}">$toecho_ce</option>
  885. <option value="$optnval_ce">$optnecho_ce</option>
  886. </select>
  887. <br /><br />
  888. <!-- Send HTML Email (yes/no) -->
  889. $admin_lang_optn_sendemail_html_txt
  890. <br />
  891. <select name="new_htmlemailnote">
  892. <option value="{$cfgrow['htmlemailnote']}">$toecho_ce_html</option>
  893. <option value="$optnval_ce_html">$optnecho_ce_html</option>
  894. </select>
  895. </div>
  896. <!-- Visitor Booking -->
  897. <div class="jcaption">$admin_lang_optn_visitorbooking_title</div>
  898. <div class="content">
  899. $admin_lang_optn_visitorbooking_desc
  900. <br />
  901. <select name="visitorbooking">
  902. <option value="{$cfgrow['visitorbooking']}">$toecho_vb</option>
  903. <option value="$optnval_vb">$optnecho_vb</option>
  904. </select>
  905. </div>
  906. <!-- Markdown -->
  907. <div class="jcaption">$admin_lang_optn_markdown</div>
  908. <div class="content">
  909. $admin_lang_optn_markdown_desc
  910. <br />
  911. <select name="markdown">
  912. <option value="{$cfgrow['markdown']}">$toecho_mrkd</option>
  913. <option value="$optnval_mrkd">$optnecho_mrkd</option>
  914. </select>
  915. </div>
  916. <!-- EXIF -->
  917. <div class="jcaption">$admin_lang_optn_exif</div>
  918. <div class="content">
  919. $admin_lang_optn_exif_desc
  920. <br />
  921. <select name="exif">
  922. <option value="{$cfgrow['exif']}">$toecho_exif</option>
  923. <option value="$optnval_exif">$optnecho_exif</option>
  924. </select>
  925. </div>
  926. <!-- Post every X days -->
  927. <div class="jcaption">$admin_lang_optn_postafterdays</div>
  928. <div class="content">
  929. $admin_lang_optn_postafterdays_desc
  930. &nbsp;<input type="text" name="daysafterlastpost" value="{$cfgrow['daysafterlastpost']}" class="input" style="width:20px;" />
  931. </div>
  932. <!-- RSS feed options -->
  933. <div class="jcaption">$admin_lang_optn_rss_setting</div>
  934. <div class="content">
  935. $admin_lang_optn_rss_title:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="feed_title" value="$feed_title" style="width:300px;" />
  936. <br /><br />
  937. $admin_lang_optn_rss_desc:&nbsp;&nbsp;<input type="text" name="feed_description" value="$feed_description" style="width:300px;" />
  938. <br /><br />
  939. $admin_lang_optn_rss_copyright:&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="feed_copyright" value="$feed_copyright" style="width:300px;" />
  940. <br /><br />
  941. $admin_lang_optn_rss_discovery:&nbsp;&nbsp;
  942. <select name="feed_discovery" onchange="if (this.selectedIndex=='3') { flip('external_feed_discovery'); }else{ hide('external_feed_discovery'); }return false;" >
  943. $feed_type_select
  944. </select>
  945. <br /><br />
  946. <div id="external_feed_discovery">
  947. $admin_lang_optn_rss_ext_type:
  948. <select name="feed_external_type">
  949. <option value="{$cfgrow['feed_external_type']}">$toecho_feed_type</option>
  950. <option value="$optnval_feed_type">$optnecho_feed_type</option>
  951. </select>
  952. <br /><br />
  953. $admin_lang_optn_rss_ext:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="feed_external" value="$feed_external" style="width:300px;" />
  954. <br />
  955. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$admin_lang_example: http://feeds.feedburner.com/YourBurnedBlog
  956. <br /><br />
  957. </div>
  958. $show_ext_opt
  959. $admin_lang_optn_rss_enable_comment_feed:
  960. <select name="allow_comment_feed">
  961. <option value="{$cfgrow['allow_comment_feed']}">$toecho_feed</option>
  962. <option value="$optnval_feed">$optnecho_feed</option>
  963. </select>
  964. <br /><br />
  965. $admin_lang_optn_rss_enable_feed_enc:
  966. <select name="allow_feed_enclosure">
  967. <option value="{$cfgrow['feed_enclosure']}">$toecho_feed_enc</option>
  968. <option value="$optnval_feed_enc">$optnecho_feed_enc</option>
  969. </select>
  970. <br /><br />
  971. $admin_lang_optn_rsstype_desc
  972. <select name="rsstype">
  973. $feed_style_select
  974. </select>
  975. <br /><br />
  976. $admin_lang_optn_feeditems_desc
  977. <input type="text" size="2" name="feeditems" value="{$cfgrow['feeditems']}" />
  978. </div>
  979. <div class="jcaption">$admin_lang_optn_update</div>
  980. <div class="content">
  981. <input type="submit" value="$admin_lang_optn_update" />
  982. </div>
  983. </form>
  984. </div>
  985. <div id="footer"><a href="index.php?view=options&amp;advancedview=general" title="$admin_lang_adv_optn_show_adv" id="show_optn">$admin_lang_adv_optn_show_adv</a>
  986. EOE;
  987. } // END options / general
  988. ////////////////////////////////////////////////////////////////////////////////////
  989. ////////////////////////////////////////////////////////////////////////////////////
  990. ////
  991. //// START PAGE TWO: TEMPLATE OPTIONS
  992. ////
  993. ////////////////////////////////////////////////////////////////////////////////////
  994. ////////////////////////////////////////////////////////////////////////////////////
  995. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'template' AND !isset($_GET['advancedview']))
  996. {
  997. $template_select = select_option('../templates', 'template');
  998. /**
  999. * Category Format option values
  1000. *
  1001. */
  1002. $catglue_select = '';
  1003. if($cfgrow['catglueend'] == '')
  1004. {
  1005. $catglue_select = 'Select Category Links Format';
  1006. }
  1007. $standard = array(']' , ' ,' , ' -' , ' |' , ' /');
  1008. $custom = false;
  1009. if(!in_array($cfgrow['catglueend'], $standard)){ $custom = true; }
  1010. for($i = 0; $i <= 5; $i++)
  1011. {
  1012. $sel = '';
  1013. if($i == 0){
  1014. $val = '[';
  1015. $opt = '[people] [nature] [etc]';
  1016. }elseif($i == 1){
  1017. $val = ' ,';
  1018. $opt = 'people, nature, etc';
  1019. }elseif($i == 2){
  1020. $val = ' -';
  1021. $opt = 'people - nature - etc';
  1022. }elseif($i == 3){
  1023. $val = ' |';
  1024. $opt = 'people | nature | etc';
  1025. }elseif($i == 4){
  1026. $val = ' /';
  1027. $opt = 'people / nature / etc';
  1028. }elseif($i == 5){
  1029. $val = 'custom';
  1030. $opt = 'Custom';
  1031. }
  1032. if($cfgrow['catglueend'] == $val OR $custom){ $sel=' selected="selected"'; }
  1033. $catglue_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  1034. }
  1035. /**
  1036. * Always show the custom catglue option if selected
  1037. *
  1038. */
  1039. $show_catglue_custom = '';
  1040. if(!$custom)
  1041. {
  1042. $show_catglue_custom = "<script type=\"text/javascript\">flip('costumcatformat');</script>";
  1043. }
  1044. /**
  1045. * Calendar option values
  1046. *
  1047. */
  1048. $calendar_select = '';
  1049. for($i = 0; $i <= 2; $i++)
  1050. {
  1051. $sel = '';
  1052. if($i == 0){
  1053. $val = 'Horizontal';
  1054. $opt = 'Horizontal';
  1055. }elseif($i == 1){
  1056. $val = 'Normal';
  1057. $opt = 'Normal';
  1058. }elseif($i == 2){
  1059. $val = 'No Calendar';
  1060. $opt = 'Don\'t Use a Calendar';
  1061. }
  1062. if($cfgrow['calendar'] == $val){ $sel=' selected="selected"'; }
  1063. $calendar_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  1064. }
  1065. echo <<<EOE
  1066. <form method="post" name="templateopt" action="{$_SERVER['PHP_SELF']}?{$_SERVER['QUERY_STRING']}&amp;optaction=updatetemp" accept-charset="UTF-8">
  1067. <!-- Template Options -->
  1068. <div class="jcaption">$admin_lang_optn_switch_template</div>
  1069. <div class="content">
  1070. <select name="new_template">
  1071. $template_select
  1072. </select>
  1073. </div>
  1074. <!-- Date Format Options -->
  1075. <div class="jcaption">$admin_lang_optn_dateformat</div>
  1076. <div class="content">
  1077. $admin_lang_optn_dateformat_txt
  1078. <br /><br />
  1079. <input type="text" name="new_dateformat" value="{$cfgrow['dateformat']}" style="width:150px;" /> <input type="button" value="PREVIEW" name="preview" onclick="previewDT()" />
  1080. <div id="df_preview"></div>
  1081. </div>
  1082. <!-- Category Format Options -->
  1083. <div class="jcaption">$admin_lang_optn_cat_link_format</div>
  1084. <div class="content">
  1085. $admin_lang_optn_cat_link_format_txt
  1086. <br />
  1087. <select name="catformat" onchange="if (this.selectedIndex=='5') { flip('costumcatformat'); }else{ hide('costumcatformat'); } return false;" >
  1088. $catglue_select
  1089. </select>
  1090. <div id="costumcatformat">
  1091. <table border="0" cellspacing="2" cellpadding="1">
  1092. <tr>
  1093. <td align="left">$admin_lang_optn_catlinkformat_custom_start</td>
  1094. <td align="right"><input type="text" name="startcatformat" class="input" size="3" value="{$cfgrow['catgluestart']}" /></td>
  1095. </tr>
  1096. <tr>
  1097. <td align="left">$admin_lang_optn_catlinkformat_custom_end</td>
  1098. <td align="right"><input type="text" name="endcatformat" size="3" value="{$cfgrow['catglueend']}" /></td>
  1099. </tr>
  1100. </table>
  1101. </div>
  1102. $show_catglue_custom
  1103. </div>
  1104. <!-- Calendar Options -->
  1105. <div class="jcaption">$admin_lang_optn_calendar_type</div>
  1106. <div class="content">
  1107. <select name="cal">
  1108. $calendar_select
  1109. </select>
  1110. </div>
  1111. <div class="jcaption">$admin_lang_optn_update</div>
  1112. <div class="content">
  1113. <input type="submit" value="$admin_lang_optn_update" />
  1114. </div>
  1115. </form>
  1116. EOE;
  1117. } // END options / template
  1118. ////////////////////////////////////////////////////////////////////////////////////
  1119. ////////////////////////////////////////////////////////////////////////////////////
  1120. ////
  1121. //// START PAGE THREE: THUMBNAIL OPTIONS
  1122. ////
  1123. ////////////////////////////////////////////////////////////////////////////////////
  1124. ////////////////////////////////////////////////////////////////////////////////////
  1125. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'thumb' AND !isset($_GET['advancedview']))
  1126. {
  1127. /**
  1128. * Crop option values
  1129. *
  1130. */
  1131. $crop_select = '';
  1132. for($i = 0; $i <= 2; $i++)
  1133. {
  1134. $sel = '';
  1135. if($i == 0){
  1136. $val = 'yes';
  1137. $opt = $admin_lang_optn_yes;
  1138. }elseif($i == 1){
  1139. $val = '12c';
  1140. $opt = '12CropImage';
  1141. }elseif($i == 2){
  1142. $val = 'no';
  1143. $opt = $admin_lang_optn_no;
  1144. }
  1145. if($cfgrow['crop'] == $val){ $sel=' selected="selected"'; }
  1146. $crop_select .= '<option value="'.$val.'"'.$sel.'>'.$opt.'</option>';
  1147. }
  1148. /**
  1149. * USM option values
  1150. *
  1151. */
  1152. $usm_select = '';
  1153. for($i = 0; $i < 5; $i++)
  1154. {
  1155. $usm_select .= '<option value="'.$i.'"'.(($i == $cfgrow['thumb_sharpening']) ? ' selected="selected"' : '').'>'.${'admin_lang_optn_thumb_sharp'.$i}.'</option>';
  1156. }
  1157. echo <<<EOE
  1158. <form method="post" action="{$_SERVER['PHP_SELF']}?{$_SERVER['QUERY_STRING']}&amp;optaction=updatethumb" accept-charset="UTF-8">
  1159. <div class="jcaption">$admin_lang_optn_thumb_row</div>
  1160. <div class="content">
  1161. $admin_lang_optn_thumb_row_txt
  1162. <br /><br />
  1163. <input type="text" name="thumbnumber" value="{$cfgrow['thumbnumber']}" style="width:50px;" />
  1164. </div>
  1165. <div class="jcaption">$admin_lang_optn_crop_thumbs</div>
  1166. <div class="content">
  1167. $admin_lang_optn_crop_thumbs_txt
  1168. <br /><br />
  1169. <select name="new_crop">
  1170. $crop_select
  1171. </select>
  1172. </div>
  1173. <div class="jcaption">$admin_lang_optn_thumb_size</div>
  1174. <div class="content">
  1175. $admin_lang_optn_thumb_size_txt
  1176. <br />
  1177. <input type="text" name="thumbwidth" value="{$cfgrow['thumbwidth']}" /> x <input type="text" name="thumbheight" value="{$cfgrow['thumbheight']}" /> <input type="checkbox" name="do" value="do" /> <input type="submit" value="$admin_lang_optn_reg_thumbs_button" name="regenerate" />
  1178. <br /><br />
  1179. $admin_lang_optn_regen_thumbs_txt
  1180. </div>
  1181. <div class="jcaption">$admin_lang_optn_img_compression</div>
  1182. <div class="content">
  1183. $admin_lang_optn_img_compression_txt
  1184. <br /><br />
  1185. <input type="text" name="new_compression" value="{$cfgrow['compression']}" style="width:50px;" />
  1186. </div>
  1187. <div class="jcaption">$admin_lang_optn_thumb_sharp</div>
  1188. <div class="content">
  1189. $admin_lang_optn_thumb_sharp_txt
  1190. <br /><br />
  1191. <select name="new_thumb_sharpening" value="{$cfgrow['thumb_sharpening']}" style="width:150px;">";
  1192. $usm_select
  1193. </select>
  1194. </div>
  1195. <div class="jcaption">$admin_lang_optn_update</div>
  1196. <div class="content">
  1197. <input type="submit" value="$admin_lang_optn_update" name="submit" />
  1198. </div>
  1199. </form>
  1200. EOE;
  1201. } // END options / thumbnails
  1202. ////////////////////////////////////////////////////////////////////////////////////
  1203. ////////////////////////////////////////////////////////////////////////////////////
  1204. ////
  1205. //// START PAGE FOUR: ANTISPAM OPTIONS
  1206. ////
  1207. ////////////////////////////////////////////////////////////////////////////////////
  1208. ////////////////////////////////////////////////////////////////////////////////////
  1209. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'antispam' AND !isset($_GET['advancedview']))
  1210. {
  1211. if($cfgrow['token']=='T')
  1212. {
  1213. $toecho_token = $admin_lang_optn_yes;
  1214. $optnecho_token = $admin_lang_optn_no;
  1215. $optnval_token = 'F';
  1216. }
  1217. else
  1218. {
  1219. $toecho_token = $admin_lang_optn_no;
  1220. $optnecho_token = $admin_lang_optn_yes;
  1221. $optnval_token = 'T';
  1222. }
  1223. //show_anti_spam(); // Moved to advanced menu
  1224. echo <<<EOE
  1225. <form method="post" action="{$_SERVER['PHP_SELF']}?{$_SERVER['QUERY_STRING']}&amp;optaction=updateantispam&" accept-charset="UTF-8">
  1226. <div class="jcaption">$admin_lang_optn_token</div>
  1227. <div class="content">
  1228. $admin_lang_optn_token_desc
  1229. <select name="token">
  1230. <option value="{$cfgrow['token']}">$toecho_token</option>
  1231. <option value="$optnval_token">$optnecho_token</option>
  1232. </select>
  1233. <br /><br />
  1234. $admin_lang_optn_token_time
  1235. <input type="text" size="2" name="token_time" value="{$cfgrow['token_time']}" style="width:50px;" />
  1236. </div>
  1237. <div class="jcaption">$admin_lang_optn_time_between_comments</div>
  1238. <div class="content">
  1239. $admin_lang_optn_time_between_comments_desc
  1240. <input type="text" size="2" name="comment_timebetween" value="{$cfgrow['comment_timebetween']}" style="width:50px;" /> s
  1241. </div>
  1242. <div class="jcaption">$admin_lang_optn_max_uri_comment</div>
  1243. <div class="content">
  1244. $admin_lang_optn_max_uri_comment_desc
  1245. <input type="text" size="2" name="max_uri_comment" value="{$cfgrow['max_uri_comments']}" style="width:50px;" />
  1246. </div>
  1247. EOE;
  1248. /**
  1249. * additional_spam_measures Workspace
  1250. *
  1251. */
  1252. eval_addon_admin_workspace_menu("additional_spam_measures","");
  1253. echo <<<EOE
  1254. <div class="jcaption">$admin_lang_optn_update</div>
  1255. <div class="content">
  1256. <input type="submit" value="$admin_lang_optn_update" />
  1257. </div>
  1258. </form>
  1259. </div>
  1260. <div id="footer"><a href="index.php?view=options&amp;advancedview=antispam" title="$admin_lang_adv_optn_show_adv" id="show_optn">$admin_lang_adv_optn_show_adv</a>
  1261. EOE;
  1262. } // END options / antispam
  1263. ////////////////////////////////////////////////////////////////////////////////////
  1264. ////////////////////////////////////////////////////////////////////////////////////
  1265. ////
  1266. //// START PAGE FIVE: USER OPTIONS
  1267. ////
  1268. ////////////////////////////////////////////////////////////////////////////////////
  1269. ////////////////////////////////////////////////////////////////////////////////////
  1270. if(isset($_GET['optionsview']) AND $_GET['optionsview'] == 'user' AND !isset($_GET['advancedview']))
  1271. {
  1272. /**
  1273. * Store language option variables
  1274. *
  1275. */
  1276. $admin_lang_select = select_option('../language', 'adminlangfile');
  1277. $timezone_select = timezone_select();
  1278. $local_time = gmdate($cfgrow['dateformat'],time()+(3600 * $cfgrow['timezone']));
  1279. $decoded_pass = '';
  1280. $_POST['newadminpass'] = '';
  1281. echo <<<EOE
  1282. <form method="post" action="{$_SERVER['PHP_SELF']}?{$_SERVER['QUERY_STRING']}&amp;optaction=updateuser" accept-charset="UTF-8">
  1283. <!-- Username / Pass Options -->
  1284. <div class="jcaption">$admin_lang_optn_usr_pss</div>
  1285. <div class="content">
  1286. <table border="0" cellspacing="2" cellpadding="0">
  1287. <tr>
  1288. <td colspan="2" align="left">$admin_lang_optn_usr_pss_txt<br /><br /></td>
  1289. </tr>
  1290. <tr>
  1291. <td align="left">$admin_lang_optn_usr:</td>
  1292. <td align="left"><input type="text" name="new_admin_user" value="{$cfgrow['admin']}" /></td>
  1293. </tr>
  1294. <tr>
  1295. <td align="left">$admin_lang_optn_pss:</td>
  1296. <td align="right"><input type="password" name="newadminpass" value="$decoded_pass" /> $admin_lang_optn_pss_re: <input type="password" name="newadminpass_re" value="" /></td>
  1297. </tr>
  1298. </table>
  1299. <input type="hidden" name="passchanged" value="no" />
  1300. </div>
  1301. <!-- Admin Lang Options -->
  1302. <div class="jcaption">$admin_lang_optn_lang_file_admin</div>
  1303. <div class="content">
  1304. <select name="new_admin_lang">
  1305. $admin_lang_select
  1306. </select>
  1307. </div>
  1308. <!-- Admin Email -->
  1309. <div class="jcaption">$admin_lang_optn_email</div>
  1310. <div class="content">
  1311. <input type="text" name="new_email" value="{$cfgrow['email']}" style="width:255px;" />
  1312. <br />
  1313. $admin_lang_optn_fillit
  1314. </div>
  1315. <!-- Timezone -->
  1316. <div class="jcaption">$admin_lang_optn_tz: $local_time</div>
  1317. <div class="content">
  1318. $admin_lang_optn_tz_txt
  1319. <br />
  1320. <select name="timezone">
  1321. $timezone_select
  1322. </select>
  1323. <br /><br />
  1324. $admin_lang_optn_gmt
  1325. <br /><br />
  1326. </div>
  1327. <!-- Update -->
  1328. <div class="jcaption">$admin_lang_optn_update</div>
  1329. <div class="content">
  1330. <input type="submit" value="$admin_lang_optn_update" />
  1331. </div>
  1332. </form>
  1333. EOE;
  1334. } // END options / user
  1335. ////////////////////////////////////////////////////////////////////////////////////
  1336. ////////////////////////////////////////////////////////////////////////////////////…

Large files files are truncated, but you can click here to view the full file