/** function used to close the ticket * @param array $input_array - array which contains the following values => int $id - customer id int $sessionid - session id int $ticketid - ticket id * return string - success or failure message will be returned based on the ticket close update query */ function close_current_ticket($input_array) { global $adb, $mod_strings, $log; $current_user = vglobal('current_user'); require_once 'modules/HelpDesk/HelpDesk.php'; $adb->println("Inside customer portal function close_current_ticket"); $adb->println($input_array); //foreach($input_array as $fieldname => $fieldvalue)$input_array[$fieldname] = mysql_real_escape_string($fieldvalue); $userid = getPortalUserid(); $current_user->id = $userid; $id = $input_array['id']; $sessionid = $input_array['sessionid']; $ticketid = (int) $input_array['ticketid']; if (!validateSession($id, $sessionid)) { return null; } $focus = new HelpDesk(); $focus->id = $ticketid; $focus->retrieve_entity_info($focus->id, 'HelpDesk'); $focus->mode = 'edit'; $focus->column_fields = array_map(decode_html, $focus->column_fields); $focus->column_fields['ticketstatus'] = 'Closed'; // Blank out the comments information to avoid un-necessary duplication $focus->column_fields['comments'] = ''; $focus->column_fields['from_portal'] = 1; // END $focus->save("HelpDesk"); return "closed"; }
function create_ticket_from_toolbar($username, $sessionid, $title, $description, $priority, $severity, $category, $user_name, $parent_id, $product_id) { global $log; global $adb; global $current_user; if (!validateSession($username, $sessionid)) { return null; } require_once "modules/Users/Users.php"; $seed_user = new Users(); $user_id = $seed_user->retrieve_user_id($username); $current_user = $seed_user; $current_user->retrieve_entity_info($user_id, 'Users'); if (isPermitted("HelpDesk", "EditView") == "yes") { $seed_ticket = new HelpDesk(); $output_list = array(); require_once 'modules/HelpDesk/HelpDesk.php'; $ticket = new HelpDesk(); $ticket->column_fields[ticket_title] = $title; $ticket->column_fields[description] = $description; $ticket->column_fields[ticketpriorities] = $priority; $ticket->column_fields[ticketseverities] = $severity; $ticket->column_fields[ticketcategories] = $category; $ticket->column_fields[ticketstatus] = 'Open'; $ticket->column_fields[parent_id] = $parent_id; $ticket->column_fields[product_id] = $product_id; $ticket->column_fields[assigned_user_id] = $user_id; //$ticket->saveentity("HelpDesk"); $ticket->save("HelpDesk"); if ($ticket->id != '') { return "Ticket created successfully"; } else { return "Error while creating Ticket.Try again"; } } else { return $accessDenied; } }
$ticket_title_array = array("Upload Attachment problem", "Individual Customization -Menu and RSS", "Export Output query", "Import Error CSV Leads", "How to automatically add a lead from a web form to VTiger"); for ($i = 0; $i < 5; $i++) { $helpdesk = new HelpDesk(); $rand = array_rand($num_array); $contact_key = array_rand($contact_ids); $helpdesk->column_fields["parent_id"] = $contact_ids[$contact_key]; $helpdesk->column_fields["ticketpriorities"] = "Normal"; $helpdesk->column_fields["product_id"] = $product_ids[$i]; $helpdesk->column_fields["ticketseverities"] = "Minor"; $helpdesk->column_fields["ticketstatus"] = $status_array[$i]; $helpdesk->column_fields["ticketcategories"] = $category_array[$i]; //$rand_key = array_rand($s);$contact_key = array_rand($contact_ids); $helpdesk->column_fields["contact_id"] = $contact_ids[$contact_key]; $helpdesk->column_fields["ticket_title"] = $ticket_title_array[$i]; $helpdesk->column_fields["assigned_user_id"] = $assigned_user_id; $helpdesk->save("HelpDesk"); if ($i > 3) { $freetag = $adb->getUniqueId('vtiger_freetags'); $query = "insert into vtiger_freetags values (?,?,?)"; $qparams = array($freetag, $cloudtag[3], $cloudtag[3]); $res_tkt = $adb->pquery($query, $qparams); $date = $adb->formatDate(date('YmdHis'), true); $query_tag = "insert into vtiger_freetagged_objects values (?,?,?,?,?)"; $tag_params = array($freetag, 1, $helpdesk->id, $date, 'HelpDesk'); $result_tkt = $adb->pquery($query_tag, $tag_params); } } // Populate Activities Data $task_array = array("Tele Conference", "Call user - John", "Send Fax to Mary Smith"); $event_array = array("", "", "Call Smith", "Team Meeting", "Call Richie", "Meeting with Don"); $task_status_array = array("Planned", "In Progress", "Completed");
/** * Create ticket action. */ function __CreateTicket($mailscanner, $mailrecord) { // Prepare data to create trouble ticket $usetitle = $mailrecord->_subject; $description = $mailrecord->getBodyText(); // There will be only on FROM address to email, so pick the first one $fromemail = $mailrecord->_from[0]; $linktoid = $mailscanner->LookupContact($fromemail); if (!$linktoid) { $linktoid = $mailscanner->LookupAccount($fromemail); } /** Now Create Ticket **/ global $current_user; if (!$current_user) { $current_user = Users::getActiveAdminUser(); } // Create trouble ticket record $ticket = new HelpDesk(); $ticket->column_fields['ticket_title'] = $usetitle; $ticket->column_fields['description'] = $description; $ticket->column_fields['ticketstatus'] = 'Open'; $ticket->column_fields['assigned_user_id'] = $current_user->id; if ($linktoid) { $ticket->column_fields['parent_id'] = $linktoid; } $ticket->save('HelpDesk'); // Associate any attachement of the email to ticket $this->__SaveAttachements($mailrecord, 'HelpDesk', $ticket); return $ticket->id; }
function create_ticket($title, $description, $priority, $severity, $category, $user_name, $parent_id, $product_id) { /* require_once('modules/Users/User.php'); $seed_user = new User(); $user_id = $seed_user->retrieve_user_id($user_name); */ $seed_ticket = new HelpDesk(); $output_list = array(); //$response = $seed_ticket->create_tickets_list($user_name,$smcreatorid); require_once 'modules/HelpDesk/HelpDesk.php'; $ticket = new HelpDesk(); $ticket->column_fields[ticket_title] = $title; $ticket->column_fields[description] = $description; $ticket->column_fields[ticketpriorities] = $priority; $ticket->column_fields[ticketseverities] = $severity; $ticket->column_fields[ticketcategories] = $category; $ticket->column_fields[ticketstatus] = 'Open'; $ticket->column_fields[parent_id] = $parent_id; $ticket->column_fields[product_id] = $product_id; // $ticket->column_fields[assigned_user_id]=$user_id; //$ticket->saveentity("HelpDesk"); $ticket->save("HelpDesk"); $_REQUEST['name'] = '[ Ticket ID : ' . $ticket->id . ' ] ' . $title; $body = ' Ticket ID : ' . $ticket->id . '<br> Ticket Title : ' . $title . '<br><br>'; $_REQUEST['description'] = $body . $description; $_REQUEST['return_module'] = 'HelpDesk'; $_REQUEST['parent_id'] = $parent_id; $_REQUEST['assigned_user_id'] = $parnet_id; require_once 'modules/Emails/send_mail.php'; return get_tickets_list($user_name, $parent_id); //return $ticket->id; }
/** function used to close the ticket * @param array $input_array - array which contains the following values => int $id - customer id int $sessionid - session id int $ticketid - ticket id * return string - success or failure message will be returned based on the ticket close update query */ function close_current_ticket($input_array) { global $adb, $mod_strings, $log, $current_user; require_once 'modules/HelpDesk/HelpDesk.php'; $adb->println("Inside customer portal function close_current_ticket"); $adb->println($input_array); //foreach($input_array as $fieldname => $fieldvalue)$input_array[$fieldname] = mysql_real_escape_string($fieldvalue); $userid = getPortalUserid(); $current_user->id = $userid; $id = $input_array['id']; $sessionid = $input_array['sessionid']; $ticketid = (int) $input_array['ticketid']; if (!validateSession($id, $sessionid)) { return null; } $focus = new HelpDesk(); $focus->id = $ticketid; $focus->retrieve_entity_info($focus->id, 'HelpDesk'); $focus->mode = 'edit'; $focus->column_fields['ticketstatus'] = 'Closed'; $focus->save("HelpDesk"); return "closed"; }