settings.php
上传用户:gzy2002
上传日期:2010-02-11
资源大小:1785k
文件大小:8k
源码类别:

电子政务应用

开发平台:

Java

  1. <?php
  2. // +-------------------------------------------------------------+
  3. // | DeskPRO v [2.0.1 Production]
  4. // | Copyright (C) 2001 - 2004 Headstart Solutions Limited
  5. // | Supplied by WTN-WDYL
  6. // | Nullified by WTN-WDYL
  7. // | Distribution via WebForum, ForumRU and associated file dumps
  8. // +-------------------------------------------------------------+
  9. // | DESKPRO IS NOT FREE SOFTWARE
  10. // +-------------------------------------------------------------+
  11. // | License ID : Full Enterprise License =) ...
  12. // | License Owner : WTN-WDYL Team
  13. // +-------------------------------------------------------------+
  14. // | $RCSfile: settings.php,v $
  15. // | $Date: 2004/02/10 01:34:25 $
  16. // | $Revision: 1.19 $
  17. // +-------------------------------------------------------------+
  18. // | File Details:
  19. // | - Settings maintenance (administration interface)
  20. // +-------------------------------------------------------------+
  21. error_reporting(E_ALL & ~E_NOTICE);
  22. require_once('./global.php');
  23. //Nullify WTN-WDYL Team
  24. // default do
  25. $_REQUEST['do'] = trim($_REQUEST['do']);
  26. if (!isset($_REQUEST['do']) or $_REQUEST['do'] == "") {
  27. $_REQUEST['do'] = "list";
  28. }
  29. // globalise variables
  30. $global = array (
  31. array('id', 'number'),
  32. array('onecat', 'number') // only show a particular category
  33. );
  34. rg($global);
  35. include('./settings_include.php');
  36. ############################### UPDATE THE SETTINGS ###############################
  37. if ($_REQUEST['do'] == "update") {
  38. update_settings();
  39. alert('Settings Updated');
  40. $_REQUEST['do'] = "list";
  41. }
  42. ############################### DISPLAY SETTINGS ###############################
  43. if ($_REQUEST['do'] == "list") {
  44. admin_header('Settings', 'Edit Settings');
  45. show_settings();
  46. }
  47. ############################### EDIT CATEGORIES (DEVELOPER ONLY) ###############################
  48. if ($_REQUEST['do'] == "cat2") {
  49. developer_check();
  50. while (list ($key, $value) = each ($_REQUEST[name])) {
  51. $db->query("UPDATE settings_cat SET name = '".mysql_escape_string($value)."' WHERE id='$key'");
  52. $array[] = array(
  53. $key,
  54. $value, 
  55. $_REQUEST[description][$key], 
  56. $_REQUEST[defaultdisplay][$key],
  57. $_REQUEST[displayorder][$key]
  58. );
  59. }
  60. $db->query("REPLACE INTO settings_cat (id, name, description, defaultdisplay, displayorder) VALUES " . multi_array2sql($array) . "");
  61. alert('Categories Updated');
  62. $_REQUEST['do'] = "cats";
  63. }
  64. ############################### ADD / DELETE CATEGORY (DEVELOPER ONLY) ###############################
  65. if ($_REQUEST['do'] == "addcat") {
  66. developer_check();
  67. $db->query("INSERT INTO settings_cat SET name = 'new'");
  68. alert('Category Created');
  69. $_REQUEST['do'] = "cats";
  70. }
  71. if ($_REQUEST['do'] == "delcat") {
  72. developer_check();
  73. $db->query("DELETE FROM settings_cat WHERE id = '$id'");
  74. $db->query("DELETE FROM settings WHERE category = '$id'");
  75. alert('Category Deleted');
  76. $_REQUEST['do'] = "cats";
  77. }
  78. ############################### EDIT CATEGORY SETTINGS (DEVELOPER ONLY) ###############################
  79. if ($_REQUEST['do'] == "cats") {
  80. developer_check();
  81. admin_header('Settings', 'Edit Categories');
  82. $db->query("SELECT * FROM settings_cat ORDER BY defaultdisplay DESC, displayorder ASC");
  83. while ($set = $db->row_array()) {
  84. if ($set[defaultdisplay] != 1 AND !$y) {
  85. $table[] = table_midheader('Not Displayed by Default');
  86. $y=1;
  87. }
  88. $table[] = array(
  89. form_input($set[id], $set[displayorder], '3', 'displayorder'),
  90. form_radio_yn($set[id], 'defaultdisplay', $set[defaultdisplay]),
  91. form_input($set[id], $set[name], '25', 'name'),
  92. form_input($set[id], $set[description], '50', 'description'),
  93. jprompt('Confirm deletion of category and any settings it contains', "settings.php?do=delcat&id=$set[id]", "Delete")
  94. );
  95. }
  96. $cols = array('Order', 'Default Display', 'Title', 'Description', 'Delete');
  97. table_header("Edit the Setting Categories", 'settings.php', array('do' => 'cat2'));
  98. table_content($cols, $table);
  99. table_footer('Update');
  100. echo "<br /><center><a href="settings.php?do=addcat">Add Category</a></center>";
  101. }
  102. ############################### ADD / DELETE / SETTING (DEVELOPER ONLY) ###############################
  103. if ($_REQUEST['do'] == "add") {
  104. developer_check();
  105. $db->query("INSERT INTO settings SET category=1, field_type = '$_REQUEST[type]'");
  106. alert('Setting Created');
  107. $_REQUEST['do'] = "edit_settings";
  108. }
  109. if ($_REQUEST['do'] == "del") {
  110. developer_check();
  111. $db->query("DELETE FROM settings WHERE id = '$id'");
  112. alert('Setting Deleted');
  113. $_REQUEST['do'] = "edit_settings";
  114. }
  115. ############################### EDIT SETTINGS (2) (DEVELOPER ONLY) ###############################
  116. if ($_REQUEST['do'] == "edit_settings2") {
  117. // update the settings
  118. while (list ($key, $value) = each ($_REQUEST[name])) {
  119. $db->query("
  120. UPDATE settings SET 
  121. name = '" . mysql_escape_string($value) . "',
  122. settings = '" . mysql_escape_string($_REQUEST[variablename][$key]) . "',
  123. description = '" . mysql_escape_string($_REQUEST[description][$key]) . "',
  124. category = '" . mysql_escape_string($_REQUEST[category][$key]) . "',
  125. value = '" . mysql_escape_string($_REQUEST[settings][$key]) . "'
  126. WHERE id = '$key'
  127. ");
  128. }
  129. alert('Setting Updated');
  130. $_REQUEST['do'] = 'edit_settings';
  131. }
  132. ############################### EDIT SETTINGS (DEVELOPER ONLY) ###############################
  133. if ($_REQUEST['do'] == "edit_settings") {
  134. developer_check();
  135. admin_header('Settings', 'Edit The Settings');
  136. // get settings_cat details
  137. $db->query(
  138. "SELECT * from settings_cat"
  139. );
  140. while ($setcat = $db->row_array()) {
  141. $settingid[] = $setcat[id];
  142. $settingname[$setcat[id]] = $setcat[name];
  143. $settingdescription[$setcat[id]] = $setcat[description];
  144. }
  145. // get settings data
  146. $db->query(
  147. "SELECT settings.*
  148. FROM settings
  149. LEFT JOIN settings_cat ON (settings.category = settings_cat.id)
  150. ORDER BY settings.category, settings.show_order"
  151. );
  152. $no=1;
  153. $width = array('60%', '40%');
  154. echo "<form action="settings.php" method="post">";
  155. while ($set = $db->row_array()) {
  156. if ($set[category] != $previous) {
  157. if ($no != "1") {
  158. if ($onecat != $previous) {
  159. $show = 1;
  160. } else {
  161. $show = '';
  162. }
  163. $show=0;
  164. table_header($settingname[$previous] . "</b>: " . $settingdescription[$previous] . "<b>", '', '', $show);
  165. table_content('', $table, '', '', '', '', $width);
  166. table_footer();
  167. unset($table);
  168. }
  169. unset($no);
  170. }
  171. if ($set[field_type] == "text") {
  172. $bit = form_input($set[id], $set[value], '30', 'settings');
  173. } elseif ($set[field_type] == "area") {
  174. $bit =  form_textarea($set[id], '30', '5', $set[value], 'settings');
  175. } elseif ($set[field_type] == "radio") {
  176. $bit =  form_radio_yn($set[id], 'settings', $set[value]);
  177. }
  178. $table[] = 
  179. '<table cellpadding="3">
  180. <tr><td><b>Name</b></td><td>' . form_input($set[id], $set[name], '45', 'name') .
  181. '&nbsp;&nbsp;<b>Variable Name</b>&nbsp;&nbsp;' . form_input($set[id], $set[settings], '25', 'variablename') . '</td></tr>' .
  182. '<tr><td><b>Description</b></td><td>' . form_input($set[id], $set[description], '100', 'description') . '</td></tr>' .
  183. '<tr><td><b>Category</b></td><td>' . form_select($set[id], $settingname, 'category', $set[category]) . jprompt('Confirm deletion of setings', "settings.php?do=del&id=$set[id]", "Delete") . $bit . 
  184. '</td></tr></table>';
  185. $previous = $set[category];
  186. }
  187. table_header($settingname[$previous] . "</b>: " . $settingdescription[$previous] . "<b>", '', '', $show);
  188. table_content('', $table, '', '', '', '', $width);
  189. table_footer();
  190. echo form_hidden('do', 'edit_settings2');
  191. echo "<input type="submit" name="update" value="update"></form>";
  192. echo "
  193. <br /><br />
  194. <a href="settings.php?do=add&type=text">Create new text based setting</a><br /><br />
  195. <a href="settings.php?do=add&type=radio">Create new radio based setting</a><br /><br />";
  196. }
  197. admin_footer();