PageRenderTime 49ms CodeModel.GetById 20ms RepoModel.GetById 0ms app.codeStats 0ms

/requestor1/tickets.php

https://github.com/railroadman2k/ccss
PHP | 193 lines | 166 code | 21 blank | 6 comment | 47 complexity | 5dcee828f4b42879dff09ce9e538a6ca MD5 | raw file
  1. <?php
  2. /**
  3. * tickets.php - handle ticket search operation
  4. *
  5. * very similar to the account.php except search parameters in query
  6. * include validator.php
  7. */
  8. include "validator.php";
  9. if(array_key_exists("selected_ticket_id", $_SESSION)) unset($_SESSION["selected_ticket_id"]);
  10. if(array_key_exists("select", $_REQUEST))
  11. {
  12. $_SESSION["selected_tickets"] = $_REQUEST["select"];
  13. $tmp = new group_operations($act);
  14. }
  15. if(array_key_exists("selected_tickets", $_SESSION)) unset($_SESSION["selected_tickets"]);
  16. $cfg_sort_fields = array("#"=>array("field"=>"","sort"=>"","def_sort_type"=>"","sort_order"=>"","url_name"=>""),
  17. "<a href=\"#\" onclick=\"return false\" onmouseup=\"select_all_checkboxs('select[]','form1')\" class=\"table_header_text\">Select</a>"=>array("field"=>"","sort"=>"","def_sort_type"=>"","sort_order"=>"","url_name"=>""),
  18. "Subject"=>array("field"=>"subject","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"subj"),
  19. "Queues"=>array("field"=>"group_id","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"queue"),
  20. "Status"=>array("field"=>"status","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"status"),
  21. "Owner"=>array("field"=>"user_id","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"owner"),
  22. "Priority"=>array("field"=>"priority","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"priority"),
  23. "From"=>array("field"=>"","sort"=>"","def_sort_type"=>"desc","sort_order"=>"","url_name"=>""),
  24. "Complain"=>array("field"=>"complain","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"complain"),
  25. "Rate"=>array("field"=>"rate","sort"=>"sort","def_sort_type"=>"desc","sort_order"=>"","url_name"=>"rate"),
  26. "Updated"=>array("field"=>"","sort"=>"","def_sort_type"=>"desc","sort_order"=>"","url_name"=>""),
  27. "Created"=>array("field"=>"created","sort"=>"default","def_sort_type"=>"desc","sort_order"=>"0","url_name"=>"created"));
  28. list($query, $queue, $ticket_status) = get_query_for_tickets();
  29. if($query != "")
  30. {
  31. get_group_operations($xtpl, "main.tickets", "form1", (int)$_REQUEST["queue"]);
  32. $parameters = "";
  33. if(array_key_exists("searching_parameters", $_SESSION))
  34. {
  35. $parameters = get_parameters_string($_SESSION["searching_parameters"]);
  36. if($parameters != "") $parameters = "<a href=\"#\" onclick=\"return false;\" onmouseup=\"window.external.AddFavorite('" . MAIN_HOST . "search_tickets.php?act=search&" . $parameters . "', 'Search results of tickets')\" class=\"topmenu\">Add search results to favorites</a>";
  37. }
  38. $xtpl->assign("SEARCH_LINK", $parameters);
  39. $add_params = array("get"=>array(), "post"=>array(), "post1"=>array());
  40. if($queue > 0)
  41. {
  42. $add_params["get"][] = "queue=" . $queue;
  43. $add_params["post"][] = "<input type=\"hidden\" name=\"queue\" value=\"" . $queue . "\">\n";
  44. $add_params["post1"]["queue"] = $queue;
  45. $xtpl->assign("QUEUES",$queue);
  46. }
  47. if($ticket_status != "")
  48. {
  49. $add_params["get"][] = "ticket_status=" . $ticket_status;
  50. $add_params["post"][] = "<input type=\"hidden\" name=\"ticket_status\" value=\"" . $ticket_status . "\">\n";
  51. $add_params["post1"]["ticket_status"] = $ticket_status;
  52. }
  53. $xtpl->assign("ADD_FIELDS", implode(" ", $add_params["post"]));
  54. $str_params = "";
  55. if(count($add_params["get"]) > 0) $str_params = "?" . implode("&", $add_params["get"]);
  56. $href = MAIN_HOST . "tickets.php" . $str_params;
  57. $href1 = MAIN_HOST . "tickets.php";
  58. $pg_sel = new Page_Selector($query, $href, $pages, $sort, $cfg_sort_fields);
  59. $xtpl->assign("SELECTOR_LINKS", $pg_sel->display_selector());
  60. $xtpl->assign("SELECTOR_NUMROWS", $pg_sel->display_selector_num_rows($add_params["post1"], $href1));
  61. $xtpl->assign("TABLE_HEADER", $pg_sel->get_table_header());
  62. if(count($pg_sel->data) > 0)
  63. {
  64. foreach($pg_sel->data as $i=>$row)
  65. {
  66. $xtpl->assign("SUBJECT", "<a href=\"show_ticket.php?ticket_id=" . $row["id"] . "\" class=\"ticket_urgent\">" . StripSlashes(htmlspecialchars($row["subject"])) . "</a>");
  67. $xtpl->assign("NUM", $i);
  68. $xtpl->assign("_ID", $i);
  69. $xtpl->assign("TICKET_ID", $row["id"]);
  70. $style=color_ticket($row["id"]);
  71. if ($style==1)
  72. {
  73. $put_this="<span class='complain_on'>Answered</span>";
  74. $xtpl->assign("ANSWERED",$put_this);
  75. }
  76. else
  77. {
  78. $put_this="";
  79. $xtpl->assign("ANSWERED",$put_this);
  80. }
  81. if (isset ($row["website"]) && $row["website"]=="http://confidentialconnections.com/")
  82. {
  83. $row["website"]="Confident";
  84. }
  85. if (isset ($row["website"]) && $row["website"]=="http://fianceeconnections.com/")
  86. {
  87. $row["website"]="Fiancee";
  88. }
  89. if (isset ($row["website"]) && $row["website"]=="http://wifeconnections.com/")
  90. {
  91. $row["website"]="Wife";
  92. }
  93. if (isset($row["website"]))
  94. {
  95. $xtpl->assign("SITE", $row["website"]);
  96. }
  97. $xtpl->assign("SELECT", "<input type=\"checkbox\" id=\"" . $i . "\" name=\"select[]\" value=\"" . $row["id"] . "\" onclick=\"change_tr_class(this)\">");
  98. if(strlen(trim($row["subject"])) > 0)
  99. {
  100. $subject = trim($row["subject"]);
  101. }else $subject = "No subject";
  102. if($row["priority"]=='urgent')
  103. {
  104. $xtpl->assign("SUBJECT", "<a href=\"show_ticket.php?ticket_id=" . $row["id"] . "\" class=\"ticket_urgent\">" . StripSlashes(htmlspecialchars($subject)) . "</a>");
  105. }
  106. if($row["priority"]=='normal')
  107. {
  108. $xtpl->assign("SUBJECT", "<a href=\"show_ticket.php?ticket_id=" . $row["id"] . "\" class=\"ticket\">" . StripSlashes(htmlspecialchars($subject)) . "</a>");
  109. }
  110. if($row["priority"]=='high')
  111. {
  112. $xtpl->assign("SUBJECT", "<a href=\"show_ticket.php?ticket_id=" . $row["id"] . "\" class=\"ticket_high\">" . StripSlashes(htmlspecialchars($subject)) . "</a>");
  113. }
  114. $query = "SELECT name FROM " . T_GROUPS . " WHERE id=" . $row["group_id"];
  115. $row1 = SQL_select($query, 0);
  116. $xtpl->assign("QUEUE", StripSlashes(htmlspecialchars($row1["name"])));
  117. $xtpl->assign("PRIORITY",$row['priority']);
  118. $query = "SELECT login FROM " . T_USERS . " WHERE id=" . $row["user_id"];
  119. $row1 = SQL_select($query, 0);
  120. $xtpl->assign("OWNER", $row1["login"]);
  121. if($row["cc_member_id"] > 0) $member = "<span class=\"grey\">member id:</span> <strong>" . $row["cc_member_id"]."</strong>";
  122. else $member = "<span class=\"grey\">member id:</span> <strong>none</strong>";
  123. $golden = ($row["golden"] == "true" and (int)$row["cc_member_id"]) ? "<br><span class='golden'>[GOLDEN]</span>":"";
  124. if(strlen($row["from_email"]) > 0) $from_email = "<span class=\"grey\">email:</span>&nbsp;<strong>" . $row["from_email"]."</strong>";
  125. else $from_email = "<span class=\"grey\">email:</span> <strong>none</strong>";
  126. $applicant_name = "";
  127. if(trim($row["cc_fname"]) != "" || trim($row["cc_lname"]) != "") $applicant_name = "<br><span class=\"grey\">name:</span>&nbsp;<strong>" . ucwords(htmlspecialchars($row["cc_fname"])) . "&nbsp;" . ucwords(htmlspecialchars($row["cc_lname"]))."</strong>";
  128. $xtpl->assign("FROM", $member . $applicant_name . "<br>" . $from_email . $golden);
  129. $xtpl->assign("STATUS_CLASS", $row["status"]);
  130. $xtpl->assign("TICKET_STATUS", $row["status"]);
  131. if(!$row["updated_days_left"]) $updated_days_left = "<br><strong>Today</strong>";
  132. else $updated_days_left = "<br><strong>" . $row["updated_days_left"] . " days ago</strong>";
  133. $xtpl->assign("UPDATED", $row["updated1"] . $updated_days_left);
  134. if(!$row["created_days_left"]) $created_days_left = "<br><strong>Today</strong>";
  135. else $created_days_left = "<br><strong>" . $row["created_days_left"] . " days ago</strong>";
  136. $xtpl->assign("CREATED", $row["created1"] . $created_days_left);
  137. if($row["complain"]!='0000-00-00 00:00:00')
  138. {
  139. $xtpl->assign("COMPLAIN", "Complain");
  140. $xtpl->assign("COMPLAIN_STATUS", "complain_on");
  141. }else
  142. {
  143. $xtpl->assign("COMPLAIN", "No");
  144. $xtpl->assign("COMPLAIN_STATUS", "complain_off");
  145. }
  146. if($row["rate"] != "") $xtpl->assign("RATE", $row["rate"]);
  147. else $xtpl->assign("RATE", "No");
  148. $xtpl->parse("main.tickets.list");
  149. }
  150. }
  151. }else
  152. {
  153. header("Location: index.php");
  154. exit;
  155. }
  156. if(array_key_exists("searching_parameters", $_SESSION)) $xtpl->assign("SECTION_NAME", "Search Results");
  157. else $xtpl->assign("SECTION_NAME", "Tickets");
  158. if($myDB=='ccss')
  159. {
  160. $xtpl->parse("main.tickets.external");
  161. }
  162. else
  163. {
  164. $managersinfo=get_manager_data();
  165. $xtpl->assign("INTERNAL_FORM",$managersinfo);
  166. $xtpl->parse("main.tickets.internal");
  167. }
  168. $xtpl->parse("main.tickets");
  169. get_queues_status($xtpl);
  170. $xtpl->parse("main");
  171. $xtpl->out("main");
  172. ?>