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

/adm/admin_acronyms.php

https://github.com/igorw-forks/icy_phoenix
PHP | 206 lines | 161 code | 35 blank | 10 comment | 23 complexity | 450a47f4fb3f43f20a2c503604061ded MD5 | raw file
Possible License(s): AGPL-1.0
  1. <?php
  2. /**
  3. *
  4. * @package Icy Phoenix
  5. * @version $Id$
  6. * @copyright (c) 2008 Icy Phoenix
  7. * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  8. *
  9. */
  10. define('IN_ICYPHOENIX', true);
  11. if(!empty($setmodules))
  12. {
  13. $file = basename(__FILE__);
  14. $module['1100_General']['100_Acronyms'] = $file;
  15. return;
  16. }
  17. // Load default header
  18. if (!defined('IP_ROOT_PATH')) define('IP_ROOT_PATH', './../');
  19. if (!defined('PHP_EXT')) define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
  20. require('pagestart.' . PHP_EXT);
  21. $mode = request_var('mode', '');
  22. if(empty($mode))
  23. {
  24. // These could be entered via a form button
  25. if(isset($_POST['add']))
  26. {
  27. $mode = 'add';
  28. }
  29. elseif(isset($_POST['save']))
  30. {
  31. $mode = 'save';
  32. }
  33. else
  34. {
  35. $mode = '';
  36. }
  37. }
  38. if(!empty($mode))
  39. {
  40. if(($mode == 'edit') || ($mode == 'add'))
  41. {
  42. $acronym_id = request_var('id', 0);
  43. $template->set_filenames(array('body' => ADM_TPL . 'acronyms_edit_body.tpl'));
  44. $s_hidden_fields = '';
  45. if($mode == 'edit')
  46. {
  47. if($acronym_id)
  48. {
  49. $sql = 'SELECT *
  50. FROM ' . ACRONYMS_TABLE . "
  51. WHERE acronym_id = $acronym_id";
  52. $result = $db->sql_query($sql);
  53. $acronym_info = $db->sql_fetchrow($result);
  54. $s_hidden_fields .= '<input type="hidden" name="id" value="' . $acronym_id . '" />';
  55. }
  56. else
  57. {
  58. message_die(GENERAL_MESSAGE, $lang['No_acronym_selected']);
  59. }
  60. }
  61. $template->assign_vars(array(
  62. 'ACRONYM' => $acronym_info['acronym'],
  63. 'DESCRIPTION' => $acronym_info['description'],
  64. 'L_ACRONYMS_TITLE' => $lang['Acronyms_title'],
  65. 'L_ACRONYMS_TEXT' => $lang['Acronyms_explain'],
  66. 'L_ACRONYM_EDIT' => $lang['Edit_acronym'],
  67. 'L_ACRONYM' => $lang['Acronym'],
  68. 'L_DESCRIPTION' => $lang['Description'],
  69. 'L_SUBMIT' => $lang['Submit'],
  70. 'S_ACRONYMS_ACTION' => append_sid('admin_acronyms.' . PHP_EXT),
  71. 'S_HIDDEN_FIELDS' => $s_hidden_fields
  72. )
  73. );
  74. $template->pparse('body');
  75. include('./page_footer_admin.' . PHP_EXT);
  76. }
  77. elseif($mode == 'save')
  78. {
  79. $acronym_id = request_post_var('id', 0);
  80. $acronym = request_post_var('acronym', '', true);
  81. $description = request_post_var('description', '', true);
  82. if(($acronym == '') || ($description == ''))
  83. {
  84. message_die(GENERAL_MESSAGE, $lang['Must_enter_acronym']);
  85. }
  86. if($acronym_id)
  87. {
  88. $sql = "UPDATE " . ACRONYMS_TABLE . "
  89. SET acronym = '" . $db->sql_escape($acronym) . "', description = '" . $db->sql_escape($description) . "'
  90. WHERE acronym_id = $acronym_id";
  91. $message = $lang['Acronym_updated'];
  92. }
  93. else
  94. {
  95. $sql = 'SELECT acronym FROM ' . ACRONYMS_TABLE . " WHERE acronym = '" . $db->sql_escape($acronym) . "'";
  96. $result = $db->sql_query($sql);
  97. if($db->sql_fetchrow($result))
  98. {
  99. $message = 'Acronym already in Database.';
  100. $message .= '<br /><br />' . sprintf($lang['Click_return_acronymadmin'], '<a href="' . append_sid('admin_acronyms.' . PHP_EXT) . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid('index.' . PHP_EXT . '?pane=right') . '">', '</a>');
  101. $db->sql_freeresult($result);
  102. message_die(GENERAL_MESSAGE, $message);
  103. }
  104. $db->sql_freeresult($result);
  105. $sql = "INSERT INTO " . ACRONYMS_TABLE . " (acronym, description)
  106. VALUES ('" . $db->sql_escape($acronym) . "', '" . $db->sql_escape($description) . "')";
  107. $message = $lang['Acronym_added'];
  108. }
  109. $result = $db->sql_query($sql);
  110. $db->clear_cache('acronyms_', TOPICS_CACHE_FOLDER);
  111. $message .= '<br /><br />' . sprintf($lang['Click_return_acronymadmin'], '<a href="' . append_sid('admin_acronyms.' . PHP_EXT) . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid('index.' . PHP_EXT . '?pane=right') . '">', '</a>');
  112. message_die(GENERAL_MESSAGE, $message);
  113. }
  114. elseif($mode == 'delete')
  115. {
  116. $acronym_id = request_post_var('id', 0);
  117. if(!empty($acronym_id))
  118. {
  119. $sql = "DELETE FROM " . ACRONYMS_TABLE . " WHERE acronym_id = $acronym_id";
  120. $result = $db->sql_query($sql);
  121. $db->clear_cache('acronyms_', TOPICS_CACHE_FOLDER);
  122. $message = $lang['Acronym_removed'] . '<br /><br />' . sprintf($lang['Click_return_acronymadmin'], '<a href="' . append_sid('admin_acronyms.' . PHP_EXT) . '">', '</a>') . '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid('index.' . PHP_EXT . '?pane=right') . '">', '</a>');
  123. message_die(GENERAL_MESSAGE, $message);
  124. }
  125. else
  126. {
  127. message_die(GENERAL_MESSAGE, $lang['No_acronym_selected']);
  128. }
  129. }
  130. }
  131. else
  132. {
  133. $template->set_filenames(array('body' => ADM_TPL . 'acronyms_list_body.tpl'));
  134. $sql = "SELECT *
  135. FROM " . ACRONYMS_TABLE . "
  136. ORDER BY acronym";
  137. $result = $db->sql_query($sql);
  138. $word_rows = $db->sql_fetchrowset($result);
  139. $word_count = sizeof($word_rows);
  140. $template->assign_vars(array(
  141. 'L_ACRONYMS_TITLE' => $lang['Acronyms_title'],
  142. 'L_ACRONYMS_TEXT' => $lang['Acronyms_explain'],
  143. 'L_ACRONYM' => $lang['Acronym'],
  144. 'L_DESCRIPTION' => $lang['Description'],
  145. 'L_EDIT' => $lang['Edit'],
  146. 'L_DELETE' => $lang['Delete'],
  147. 'L_ADD_ACRONYM' => $lang['Add_new_acronym'],
  148. 'L_ACTION' => $lang['Action'],
  149. 'S_ACRONYM_ACTION' => append_sid('admin_acronyms.' . PHP_EXT),
  150. 'S_HIDDEN_FIELDS' => ''
  151. )
  152. );
  153. for($i = 0; $i < $word_count; $i++)
  154. {
  155. $acronym = $word_rows[$i]['acronym'];
  156. $description = $word_rows[$i]['description'];
  157. $acronym_id = $word_rows[$i]['acronym_id'];
  158. $row_class = (!($i % 2)) ? $theme['td_class1'] : $theme['td_class2'];
  159. $template->assign_block_vars('acronyms', array(
  160. 'ROW_CLASS' => $row_class,
  161. 'ACRONYM' => $acronym,
  162. 'DESCRIPTION' => $description,
  163. 'U_ACRONYM_EDIT' => append_sid('admin_acronyms.' . PHP_EXT . '?mode=edit&amp;id=' . $acronym_id),
  164. 'U_ACRONYM_DELETE' => append_sid('admin_acronyms.' . PHP_EXT . '?mode=delete&amp;id=' . $acronym_id)
  165. )
  166. );
  167. }
  168. }
  169. $template->pparse('body');
  170. include('./page_footer_admin.' . PHP_EXT);
  171. ?>