PageRenderTime 37ms CodeModel.GetById 8ms RepoModel.GetById 1ms app.codeStats 0ms

/adm/admin_tickets.php

http://github.com/MightyGorgon/icy_phoenix
PHP | 171 lines | 133 code | 24 blank | 14 comment | 21 complexity | 0f2154877348a38f81c81392b2ed75d1 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']['220_Tickets_Emails'] = $file;
  15. return;
  16. }
  17. if (!defined('IP_ROOT_PATH')) define('IP_ROOT_PATH', './../');
  18. if (!defined('PHP_EXT')) define('PHP_EXT', substr(strrchr(__FILE__, '.'), 1));
  19. require('pagestart.' . PHP_EXT);
  20. // DB CLASS - BEGIN
  21. include(IP_ROOT_PATH . 'includes/class_db.' . PHP_EXT);
  22. $class_db = new class_db();
  23. $class_db->main_db_table = TICKETS_CAT_TABLE;
  24. $class_db->main_db_item = 'ticket_cat_id';
  25. // DB CLASS - END
  26. // MODES - BEGIN
  27. $mode_types = array('list', 'add', 'edit', 'save', 'delete');
  28. $mode = request_var('mode', $mode_types[0]);
  29. $mode = (isset($_POST['add']) ? 'add' : (isset($_POST['save']) ? 'save' : $mode));
  30. $mode = (!in_array($mode, $mode_types) ? $mode_types[0] : $mode);
  31. // MODES - END
  32. // VARS - BEGIN
  33. $ticket_cat_id = request_var('ticket_cat_id', 0);
  34. $s_hidden_fields = '';
  35. // VARS - END
  36. if($mode != 'list')
  37. {
  38. if(($mode == 'edit') || ($mode == 'add'))
  39. {
  40. $template->set_filenames(array('body' => ADM_TPL . 'tickets_edit_body.tpl'));
  41. if($mode == 'edit')
  42. {
  43. if($ticket_cat_id)
  44. {
  45. $sql = "SELECT * FROM " . TICKETS_CAT_TABLE . " WHERE ticket_cat_id = " . $ticket_cat_id;
  46. $result = $db->sql_query($sql);
  47. $ticket_info = $db->sql_fetchrow($result);
  48. $s_hidden_fields .= '<input type="hidden" name="ticket_cat_id" value="' . $ticket_cat_id . '" />';
  49. $db->sql_freeresult($result);
  50. }
  51. else
  52. {
  53. message_die(GENERAL_MESSAGE, $lang['TICKETS_NO_TICKET_SEL']);
  54. }
  55. }
  56. $template->assign_vars(array(
  57. 'TICKET_TITLE' => $ticket_info['ticket_cat_title'],
  58. 'TICKET_DESCRIPTION' => $ticket_info['ticket_cat_des'],
  59. 'TICKET_EMAILS' => $ticket_info['ticket_cat_emails'],
  60. 'L_SUBMIT' => $lang['Submit'],
  61. 'S_TICKETS_ACTION' => append_sid('admin_tickets.' . PHP_EXT),
  62. 'S_HIDDEN_FIELDS' => $s_hidden_fields
  63. )
  64. );
  65. }
  66. elseif($mode == 'save')
  67. {
  68. $ticket_cat_title = request_var('ticket_cat_title', '', true);
  69. $ticket_cat_des = request_var('ticket_cat_des', '', true);
  70. $ticket_cat_emails = request_var('ticket_cat_emails', '', true);
  71. if($ticket_cat_title == '')
  72. {
  73. message_die(GENERAL_MESSAGE, $lang['TICKETS_NO_TICKET_TITLE']);
  74. }
  75. $inputs_array = array(
  76. 'ticket_cat_title' => $ticket_cat_title,
  77. 'ticket_cat_des' => $ticket_cat_des,
  78. 'ticket_cat_emails' => $ticket_cat_emails,
  79. );
  80. if ($ticket_cat_id > 0)
  81. {
  82. $class_db->update_item($ticket_cat_id, $inputs_array);
  83. $message = '<br /><br />' . $lang['TICKETS_DB_UPDATED'];
  84. }
  85. else
  86. {
  87. $class_db->insert_item($inputs_array);
  88. $message = '<br /><br />' . $lang['TICKETS_DB_ADDED'];
  89. }
  90. $message .= '<br /><br />' . sprintf($lang['TICKETS_DB_CLICK'], '<a href="' . append_sid('admin_tickets.' . PHP_EXT) . '">', '</a>');
  91. $message .= '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid('index.' . PHP_EXT . '?pane=right') . '">', '</a>');
  92. message_die(GENERAL_MESSAGE, $message);
  93. }
  94. elseif($mode == 'delete')
  95. {
  96. $ticket_cat_id = request_var('ticket_cat_id', 0);
  97. if($ticket_cat_id > 0)
  98. {
  99. $class_db->delete_item($ticket_cat_id);
  100. $message = '<br /><br />' . $lang['TICKETS_DB_DELETED'];
  101. }
  102. else
  103. {
  104. $message = '<br /><br />' . $lang['TICKETS_NO_TICKET_SEL'];
  105. }
  106. $message .= '<br /><br />' . sprintf($lang['TICKETS_DB_CLICK'], '<a href="' . append_sid('admin_tickets.' . PHP_EXT) . '">', '</a>');
  107. $message .= '<br /><br />' . sprintf($lang['Click_return_admin_index'], '<a href="' . append_sid('index.' . PHP_EXT . '?pane=right') . '">', '</a>');
  108. message_die(GENERAL_MESSAGE, $message);
  109. }
  110. }
  111. else
  112. {
  113. $template->set_filenames(array('body' => ADM_TPL . 'tickets_list_body.tpl'));
  114. $sql = "SELECT * FROM " . TICKETS_CAT_TABLE . " ORDER BY ticket_cat_id ASC";
  115. $result = $db->sql_query($sql);
  116. $ticket_rows = $db->sql_fetchrowset($result);
  117. $tickets_count = sizeof($ticket_rows);
  118. $db->sql_freeresult($result);
  119. $template->assign_vars(array(
  120. 'S_TICKETS_ACTION' => append_sid('admin_tickets.' . PHP_EXT),
  121. 'S_HIDDEN_FIELDS' => $s_hidden_fields
  122. )
  123. );
  124. if ($tickets_count == 0)
  125. {
  126. $template->assign_var('S_NO_TICKETS', true);
  127. }
  128. else
  129. {
  130. for($i = 0; $i < $tickets_count; $i++)
  131. {
  132. $row_class = (!($i % 2)) ? $theme['td_class1'] : $theme['td_class2'];
  133. $template->assign_block_vars('ticket', array(
  134. 'ROW_CLASS' => $row_class,
  135. 'TICKET_TITLE' => $ticket_rows[$i]['ticket_cat_title'],
  136. 'TICKET_DESCRIPTION' => $ticket_rows[$i]['ticket_cat_des'],
  137. 'TICKET_EMAILS' => $ticket_rows[$i]['ticket_cat_emails'],
  138. 'U_EDIT' => append_sid('admin_tickets.' . PHP_EXT . '?mode=edit&amp;ticket_cat_id=' . $ticket_rows[$i]['ticket_cat_id']),
  139. 'U_DELETE' => append_sid('admin_tickets.' . PHP_EXT . '?mode=delete&amp;ticket_cat_id=' . $ticket_rows[$i]['ticket_cat_id'])
  140. )
  141. );
  142. }
  143. }
  144. }
  145. $template->pparse('body');
  146. include(IP_ROOT_PATH . ADM . '/page_footer_admin.' . PHP_EXT);
  147. ?>