示例#1
0
 /**
  * Creates new post in this ticket.
  * WARNING: Data is not sent to Kayako unless you explicitly call create() on this method's result.
  *
  * @param kyUser|kyStaff $creator Creator (User or Staff) of new post.
  * @param string $contents Contents of new post.
  * @return kyTicketPost
  */
 public function newPost($creator, $contents)
 {
     return kyTicketPost::createNew($this, $creator, $contents);
 }
 /**
  * Creates new ticket post.
  * WARNING: Data is not sent to Kayako unless you explicitly call create() on this method's result.
  *
  * @param kyTicket $ticket Ticket in which to create the post.
  * @param kyUser|kyStaff $creator Creator (User or Staff) of new post.
  * @param string $contents Contents of new post.
  * @return kyTicketPost
  */
 public static function createNew($ticket, $creator, $contents)
 {
     $new_ticket_post = new kyTicketPost();
     $new_ticket_post->setTicket($ticket);
     $new_ticket_post->setCreator($creator);
     $new_ticket_post->setContents($contents);
     return $new_ticket_post;
 }
 /**
  * Creates new attachment for ticket post with contents read from physical file.
  * WARNING: Data is not sent to Kayako unless you explicitly call create() on this method's result.
  *
  * @param kyTicketPost $ticket_post Ticket post.
  * @param string $file_path Path to file.
  * @param string $file_name Optional. Use to set filename other than physical file.
  * @return kyTicketAttachment
  */
 public static function createNewFromFile($ticket_post, $file_path, $file_name = null)
 {
     $new_ticket_attachment = new kyTicketAttachment();
     $new_ticket_attachment->setTicketId($ticket_post->getTicketId());
     $new_ticket_attachment->setTicketPostId($ticket_post->getId());
     $new_ticket_attachment->setContentsFromFile($file_path, $file_name);
     return $new_ticket_attachment;
 }
 $_ticketContainer['priority'] = $_ticketObject->getPriority()->getTitle();
 $_ticketContainer['prioritybgcolor'] = $_ticketObject->getPriority()->getBackgroundColor();
 $_ticketContainer['userid'] = $_ticketObject->getUserId();
 $_ticketContainer['tickettypeid'] = $_ticketObject->getTypeId();
 $_ticketContainer['type'] = $_ticketObject->getType()->getTitle();
 $_ticketContainer['userid'] = $_ticketObject->getUserId();
 $_ticketContainer['fullname'] = $_ticketObject->getFullName();
 $_ticketContainer['email'] = $_ticketObject->getEmail();
 $_ticketContainer['ownerstaffid'] = $_ticketObject->getOwnerStaffId();
 $_ticketContainer['owner'] = $_ticketObject->getOwnerStaffName();
 $_ticketContainer['lastreplier'] = $_ticketObject->getLastReplier();
 $_ticketContainer['subject'] = $_ticketObject->getSubject();
 $_ticketContainer['dateline'] = $_ticketObject->getCreationTime();
 $_ticketContainer['lastactivity'] = $_ticketObject->getLastActivity();
 //Get ticket posts
 $_ticketPostObjectContainer = kyTicketPost::getAll($_ticketContainer['ticketid']);
 $_ticketPostContainer = array();
 foreach ($_ticketPostObjectContainer as $_ticketPostObject) {
     $_ticketPost['ticketpostid'] = $_ticketPostObject->getId();
     $_ticketPost['ticketid'] = $_ticketPostObject->getTicketId();
     $_ticketPost['dateline'] = $_ticketPostObject->getDateline();
     $_ticketPost['userid'] = $_ticketPostObject->getUserId();
     $_ticketPost['fullname'] = $_ticketPostObject->getFullName();
     $_ticketPost['email'] = $_ticketPostObject->getEmail();
     $_ticketPost['emailto'] = $_ticketPostObject->getEmailTo();
     $_ticketPost['subject'] = $_ticketPostObject->getSubject();
     $_ticketPost['ipaddress'] = $_ticketPostObject->getIPAddress();
     $_ticketPost['hasattachments'] = $_ticketPostObject->getHasAttachments();
     $_ticketPost['creator'] = $_ticketPostObject->getCreatorType();
     $_ticketPost['isthirdparty'] = $_ticketPostObject->getIsThirdParty();
     $_ticketPost['ishtml'] = $_ticketPostObject->getIsHTML();
示例#5
0
 /**
  * Creates a new Ticket Post
  *
  * @param array  $data
  * @param int    $_ticketID
  * @param string $userEmail
  *
  * @return object $_ticketPost
  */
 public function createTicketPost($data, $_ticketID, $userEmail)
 {
     $_User = Mage::getModel("client/user");
     $_userDetails = $_User->getUser($userEmail);
     $_ticketObject = $this->getTicketDetails($_ticketID);
     $_ticketPost = kyTicketPost::createNew($_ticketObject, $_userDetails, $data['ticketmessage'])->create();
     return $_ticketPost;
 }
    $_ticketPriority['type'] = $_ticketPriorityObject->getType();
    $_ticketPriority['frcolorcode'] = $_ticketPriorityObject->getForegroundColor();
    $_ticketPriority['bgcolorcode'] = $_ticketPriorityObject->getBackgroundColor();
    $_ticketPriority['displayicon'] = $_ticketPriorityObject->getDisplayIcon();
    $_ticketPriority['uservisibilitycustom'] = $_ticketPriorityObject->getUserVisibilityCustom();
    $_ticketPriorityContainer[$_ticketPriorityObject->getId()] = $_ticketPriority;
}
if (isset($_GET['aid'])) {
    $_ticketAttachment = kyTicketAttachment::get($_GET['tid'], $_GET['aid']);
    Download($_ticketAttachment->getFileName(), $_ticketAttachment->getContents());
} else {
    if ($_GET['action'] == 'reply') {
        $_user = kyUser::search($clientsdetails['email']);
        $_user = $_user[0];
        $_ticketObject = kyTicket::get($_GET['ticketid']);
        $_ticketPost = kyTicketPost::createNew($_ticketObject, $_user, $_POST['replycontents'])->create();
        //Save ticket post attachments
        foreach ($_FILES['ticketattachments']['tmp_name'] as $_key => $_ticketAttachment) {
            kyTicketAttachment::createNewFromFile($_ticketPost, $_ticketAttachment, $_FILES['ticketattachments']['name'][$_key])->create();
        }
        header('Location: ' . WHMCS_URL . 'viewticket.php?ticketid=' . $_GET['ticketid']);
    } else {
        if ($_REQUEST['action'] == 'update') {
            require_once 'updateticket.php';
            header('Location: ' . WHMCS_URL . 'viewticket.php?ticketid=' . $_GET['ticketid']);
        } else {
            require_once 'ticketview.php';
        }
    }
}
$smarty->assign('_ticketPriorityContainer', $_ticketPriorityContainer);