PageRenderTime 57ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/admin/includes/edit_sitemap.php

https://bitbucket.org/mpercy/deeemm-cms
PHP | 212 lines | 144 code | 30 blank | 38 comment | 9 complexity | a0de1d548ab4b8a056c0e91ebbaab518 MD5 | raw file
Possible License(s): LGPL-2.1, BSD-2-Clause
  1. <?php
  2. defined( '_INDM' ) or die( 'POSSIBLE HACK ATTEMPT!' );
  3. /*===========================================================================
  4. Check user priviledges
  5. ===========================================================================*/
  6. require VALIDATE;
  7. if ($user != 'ADMIN') header("Location: " . $default_url . "index.php");
  8. switch ($action) {
  9. /*===========================================================================
  10. Move up
  11. ===========================================================================*/
  12. case 'move_up_category';
  13. //get current order value
  14. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "core_structure` WHERE `table` = '$category'");
  15. while($sql_result = mysql_fetch_array($sql_query)) {
  16. $current_order = $sql_result[order];
  17. $new_order = $current_order - 1;
  18. }
  19. //swap order value with adjacent category
  20. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$current_order' WHERE `order` = '$new_order'");
  21. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$new_order' WHERE `table` = '$category'");
  22. //reorder results to get rid of blank / ambiguous results
  23. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "core_structure` ORDER BY `order`");
  24. while($sql_result = mysql_fetch_array($sql_query)){
  25. $old_order[].= $sql_result[order];
  26. }
  27. $i = 1;
  28. foreach ($old_order as $temp){
  29. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$i' WHERE `order` = '$temp'");
  30. $i = $i + 1;
  31. }
  32. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  33. break;
  34. /*===========================================================================
  35. Move up sub category
  36. ===========================================================================*/
  37. case 'move_up_subcategory';
  38. //get current order value
  39. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "$category` WHERE `id` = '$id'");
  40. while($sql_result = mysql_fetch_array($sql_query)) {
  41. $current_order = $sql_result[order];
  42. $new_order = $current_order - 1;
  43. }
  44. //swap order value with adjacent category
  45. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$current_order' WHERE `order` = '$new_order'");
  46. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$new_order' WHERE `id` = '$id'");
  47. //reorder results to get rid of blank / ambiguous results
  48. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "$category` ORDER BY `order`");
  49. while($sql_result = mysql_fetch_array($sql_query)){
  50. $old_order[].= $sql_result[order];
  51. }
  52. $i = 1;
  53. foreach ($old_order as $temp){
  54. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$i' WHERE `order` = '$temp'");
  55. $i = $i + 1;
  56. }
  57. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  58. break;
  59. /*===========================================================================
  60. Move down
  61. ===========================================================================*/
  62. case 'move_down_category';
  63. //get current order value
  64. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "core_structure` WHERE `table` = '$category'");
  65. while($sql_result = mysql_fetch_array($sql_query)) {
  66. $current_order = $sql_result[order];
  67. $new_order = $current_order + 1;
  68. }
  69. //swap order value with adjacent category
  70. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$current_order' WHERE `order` = '$new_order'");
  71. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$new_order' WHERE `table` = '$category'");
  72. //reorder results to get rid of blank / ambiguous results
  73. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "core_structure` ORDER BY `order`");
  74. while($sql_result = mysql_fetch_array($sql_query)){
  75. $old_order[].= $sql_result[order];
  76. }
  77. $i = 1;
  78. foreach ($old_order as $temp){
  79. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `order` = '$i' WHERE `order` = '$temp'");
  80. $i = $i + 1;
  81. }
  82. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  83. break;
  84. /*===========================================================================
  85. Move down sub category
  86. ===========================================================================*/
  87. case 'move_down_subcategory';
  88. //get current order value
  89. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "$category` WHERE `id` = '$id'");
  90. while($sql_result = mysql_fetch_array($sql_query)) {
  91. $current_order = $sql_result[order];
  92. $new_order = $current_order + 1;
  93. }
  94. //swap order value with adjacent category
  95. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$current_order' WHERE `order` = '$new_order'");
  96. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$new_order' WHERE `table` = '$category'");
  97. //reorder results to get rid of blank / ambiguous results
  98. $sql_query = mysql_query("SELECT * FROM `" . $db_table_prefix . "$category` ORDER BY `order`");
  99. while($sql_result = mysql_fetch_array($sql_query)){
  100. $old_order[].= $sql_result[order];
  101. }
  102. $i = 1;
  103. foreach ($old_order as $temp){
  104. mysql_query("UPDATE `" . $db_table_prefix . "$category` SET `order` = '$i' WHERE `order` = '$temp'");
  105. $i = $i + 1;
  106. }
  107. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  108. break;
  109. /*===========================================================================
  110. Delete category
  111. ===========================================================================*/
  112. case 'delete_category';
  113. $category = strtolower($_REQUEST['category']);
  114. mysql_query("DELETE FROM " . $db_table_prefix . "core_structure WHERE `table` = '$category'") or die ("<b>A fatal MySQL error occured</b>.\n<br />Query: " . $sql_query . "<br />\nError: (" . mysql_errno() . ") " . mysql_error());;
  115. mysql_query("DROP TABLE `" . $db_table_prefix . "$category`");
  116. //reorder id by recreating field
  117. if ($page != 'orphan') {
  118. mysql_query("ALTER TABLE `" . $db_table_prefix . "core_structure` DROP `id`");
  119. mysql_query("ALTER TABLE `" . $db_table_prefix . "core_structure` ADD `id` MEDIUMINT( 16 ) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST");
  120. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  121. }
  122. break;
  123. /*===========================================================================
  124. Save category information
  125. ===========================================================================*/
  126. case 'save_categories';
  127. $type = strtolower($_REQUEST['category_type']);
  128. $category = strtolower($_REQUEST['category_lan_1']);
  129. $old_category = $_REQUEST['old_category'];
  130. $media_library_default_view = $_REQUEST['media_library_default_view'];
  131. $num_slideshow_images = $_REQUEST['num_slideshow_images'];
  132. $imagebox_type = $_REQUEST['imagebox_type'];
  133. $display_in_margin = $_REQUEST['display_in_margin'];
  134. $display_in_sitemap = $_REQUEST['display_in_sitemap'];
  135. $allow_comments = $_REQUEST['allow_comments'];
  136. $category_lan_1 = $_REQUEST['category_lan_1'];
  137. $category_lan_2 = $_REQUEST['category_lan_2'];
  138. $category_lan_3 = $_REQUEST['category_lan_3'];
  139. $category_lan_4 = $_REQUEST['category_lan_4'];
  140. $tool_tip_lan_1 = $_REQUEST['tool_tip_lan_1'];
  141. $tool_tip_lan_2 = $_REQUEST['tool_tip_lan_2'];
  142. $tool_tip_lan_3 = $_REQUEST['tool_tip_lan_3'];
  143. $tool_tip_lan_4 = $_REQUEST['tool_tip_lan_4'];
  144. if ($old_category == '') {
  145. //save new category to structure table
  146. $order = $num_tables + 1;
  147. if (mysql_query("INSERT INTO " . $db_table_prefix . "core_structure VALUES(NULL,'$category','$order','$type', '$media_library_default_view', '$num_slideshow_images', '$imagebox_type', '$display_in_margin', '$display_in_sitemap', '$allow_comments', '$category_lan_1', '$tool_tip_lan_1', '$category_lan_2', '$tool_tip_lan_2', '$category_lan_3', '$tool_tip_lan_3', '$category_lan_4', '$tool_tip_lan_4')")) {
  148. //if (mkdir($media_library .'/'. $category, 0700)) echo 'test';
  149. //create new table for category
  150. mysql_query("CREATE TABLE `" . $db_table_prefix . "$category` (
  151. `id` mediumint( 16 ) NOT NULL AUTO_INCREMENT ,
  152. `date` date NOT NULL default '0000-00-00',
  153. `order` mediumint( 16 ) NOT NULL default '1',
  154. `parent` varchar( 60 ) NOT NULL default '',
  155. `child` varchar( 60 ) NOT NULL default '',
  156. `category` varchar( 60 ) NOT NULL default '',
  157. `image` varchar( 60 ) default NULL,
  158. `link_url` varchar(200) NOT NULL default '',
  159. `display_in_navbar` varchar(50) NOT NULL default 'on',
  160. `title_lan_1` varchar( 60 ) NOT NULL default '',
  161. `tool_tip_lan_1` varchar( 60 ) NOT NULL default '',
  162. `description_lan_1` text NOT NULL,
  163. `title_lan_2` varchar( 60 ) NOT NULL default '',
  164. `tool_tip_lan_2` varchar( 60 ) NOT NULL default '',
  165. `description_lan_2` text NOT NULL ,
  166. `title_lan_3` varchar( 60 ) NOT NULL default '',
  167. `tool_tip_lan_3` varchar( 60 ) NOT NULL default '',
  168. `description_lan_3` text NOT NULL,
  169. `title_lan_4` varchar( 60 ) NOT NULL default '',
  170. `tool_tip_lan_4` varchar( 60 ) NOT NULL default '',
  171. `description_lan_4` text NOT NULL,
  172. PRIMARY KEY ( `id` ) ) ENGINE = InnoDB DEFAULT CHARSET = latin1") or die ("<b>A fatal MySQL error occured</b>.\n<br />Query: " . $sql_query . "<br />\nError: (" . mysql_errno() . ") " . mysql_error());;
  173. }
  174. } else {
  175. //category exists - update values
  176. mysql_query("UPDATE `" . $db_table_prefix . "core_structure` SET `table` = '$category', `type` = '$type', `media_library_default_view` = '$media_library_default_view', `num_slideshow_images` = '$num_slideshow_images', `imagebox_type` = '$imagebox_type', `display_in_margin` = '$display_in_margin', `display_in_sitemap` = '$display_in_sitemap', `allow_comments` = '$allow_comments', `category_lan_1` = '$category_lan_1', `tool_tip_lan_1` = '$tool_tip_lan_1', `category_lan_2` = '$category_lan_2', `tool_tip_lan_2` = '$tool_tip_lan_2', `category_lan_3` = '$category_lan_3', `tool_tip_lan_3` = '$tool_tip_lan_3', `category_lan_4` = '$category_lan_4', `tool_tip_lan_4` = '$tool_tip_lan_4' WHERE `table` = '$old_category'");
  177. mysql_query("RENAME TABLE `" . $db_table_prefix . $old_category . "` TO `" . $db_table_prefix . $category . "`");
  178. }
  179. header("Location: " . $default_url . $admin_dir . "index.php?action=edit_sitemap");
  180. break;
  181. }//end switch case
  182. ?>