diff --git a/src/app/code/community/Zendesk/Zendesk/Helper/Data.php b/src/app/code/community/Zendesk/Zendesk/Helper/Data.php index d886310b..7087b7b1 100644 --- a/src/app/code/community/Zendesk/Zendesk/Helper/Data.php +++ b/src/app/code/community/Zendesk/Zendesk/Helper/Data.php @@ -22,9 +22,10 @@ public function getUrl($object = '', $id = null, $format = 'old') { $protocol = 'https://'; $domain = Mage::getStoreConfig('zendesk/general/domain'); - $root = ($format === 'old') ? '' : '/agent/#'; + $root = ($format === 'old') ? '' : '/agent'; $base = $protocol . $domain . $root; + $hc = $protocol . $domain . '/hc'; switch($object) { case '': @@ -42,6 +43,10 @@ public function getUrl($object = '', $id = null, $format = 'old') case 'raw': return $protocol . $domain . '/' . $id; break; + + case 'request': + return $hc . '/requests/' . $id; + break; } } @@ -292,6 +297,19 @@ public function getTicketUrl($row, $link = false) return '' . Mage::helper('core')->escapeHtml($subject) . ''; } + public function getRequestUrl($row, $link = false) + { + $path = Mage::getSingleton('admin/session')->getUser() ? 'adminhtml/zendesk/login' : '*/sso/login'; + $url = Mage::helper('adminhtml')->getUrl($path, array("return_url" => Mage::helper('core')->urlEncode(Mage::helper('zendesk')->getUrl('request', $row['id'])))); + + if ($link) + return $url; + + $subject = $row['subject'] ? $row['subject'] : $this->__('No Subject'); + + return '' . Mage::helper('core')->escapeHtml($subject) . ''; + } + public function getStatusMap() { return array( diff --git a/src/app/design/frontend/base/default/template/zendesk/customer/tickets/list.phtml b/src/app/design/frontend/base/default/template/zendesk/customer/tickets/list.phtml index 6b89baf0..5bd2acdf 100644 --- a/src/app/design/frontend/base/default/template/zendesk/customer/tickets/list.phtml +++ b/src/app/design/frontend/base/default/template/zendesk/customer/tickets/list.phtml @@ -38,7 +38,7 @@ get($ticket['id'], true); ?>