Version Notes
Added autocomplete for customer details when creating a Zendesk ticket inside Magento.
Download this release
Release Info
Developer | Jason Smale |
Extension | zendesk |
Version | 1.1.4 |
Comparing to | |
See all releases |
Code changes from version 1.1.3 to 1.1.4
app/code/community/Zendesk/Zendesk/controllers/Adminhtml/ZendeskController.php
CHANGED
@@ -51,6 +51,10 @@ class Zendesk_Zendesk_Adminhtml_ZendeskController extends Mage_Adminhtml_Control
|
|
51 |
}
|
52 |
}
|
53 |
|
|
|
|
|
|
|
|
|
54 |
public function authenticateAction()
|
55 |
{
|
56 |
if(!Mage::getStoreConfig('zendesk/sso/enabled')) {
|
@@ -105,6 +109,15 @@ class Zendesk_Zendesk_Adminhtml_ZendeskController extends Mage_Adminhtml_Control
|
|
105 |
$this->_title($this->__('Zendesk Create Ticket'));
|
106 |
$this->loadLayout();
|
107 |
$this->_setActiveMenu('zendesk/zendesk_create');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
$this->renderLayout();
|
109 |
}
|
110 |
|
@@ -233,4 +246,30 @@ class Zendesk_Zendesk_Adminhtml_ZendeskController extends Mage_Adminhtml_Control
|
|
233 |
|
234 |
$this->_redirect('adminhtml/system_config/edit/section/zendesk');
|
235 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
236 |
}
|
51 |
}
|
52 |
}
|
53 |
|
54 |
+
/**
|
55 |
+
* Used by the Zendesk single sign on functionality to authenticate users.
|
56 |
+
* Currently only works for admin panel users, not for customers.
|
57 |
+
*/
|
58 |
public function authenticateAction()
|
59 |
{
|
60 |
if(!Mage::getStoreConfig('zendesk/sso/enabled')) {
|
109 |
$this->_title($this->__('Zendesk Create Ticket'));
|
110 |
$this->loadLayout();
|
111 |
$this->_setActiveMenu('zendesk/zendesk_create');
|
112 |
+
|
113 |
+
// Add the custom JavaScript for the customer autocomplete
|
114 |
+
$block = $this->getLayout()->createBlock(
|
115 |
+
'Mage_Core_Block_Template',
|
116 |
+
'customer_email_autocomplete',
|
117 |
+
array('template' => 'zendesk/autocomplete.phtml')
|
118 |
+
);
|
119 |
+
$this->getLayout()->getBlock('js')->append($block);
|
120 |
+
|
121 |
$this->renderLayout();
|
122 |
}
|
123 |
|
246 |
|
247 |
$this->_redirect('adminhtml/system_config/edit/section/zendesk');
|
248 |
}
|
249 |
+
|
250 |
+
/*
|
251 |
+
* Sends back an HTML unordered list for use in the Scriptaculous Autcomplete call.
|
252 |
+
*/
|
253 |
+
public function autocompleteAction()
|
254 |
+
{
|
255 |
+
$query = $this->getRequest()->getParam('requester');
|
256 |
+
|
257 |
+
$customers = Mage::getModel('customer/customer')
|
258 |
+
->getCollection()
|
259 |
+
->addNameToSelect()
|
260 |
+
->addFieldToFilter('email', array('like' => '%' . $query . '%'));
|
261 |
+
|
262 |
+
$output = '<ul>';
|
263 |
+
if($customers->getSize()) {
|
264 |
+
foreach($customers as $customer) {
|
265 |
+
$id = $customer->getId();
|
266 |
+
$name = $customer->getName();
|
267 |
+
$email = $customer->getEmail();
|
268 |
+
$output .= '<li id="customer-' . $id . '" data-email="' . $email . '" data-name="' . $name . '">' . $name . ' <' . $email . '></li>';
|
269 |
+
}
|
270 |
+
}
|
271 |
+
$output .= '</ul>';
|
272 |
+
|
273 |
+
$this->getResponse()->setBody($output);
|
274 |
+
}
|
275 |
}
|
app/code/community/Zendesk/Zendesk/etc/config.xml
CHANGED
@@ -19,7 +19,7 @@
|
|
19 |
<config>
|
20 |
<modules>
|
21 |
<Zendesk_Zendesk>
|
22 |
-
<version>1.1.
|
23 |
</Zendesk_Zendesk>
|
24 |
</modules>
|
25 |
<zendesk>
|
19 |
<config>
|
20 |
<modules>
|
21 |
<Zendesk_Zendesk>
|
22 |
+
<version>1.1.4</version>
|
23 |
</Zendesk_Zendesk>
|
24 |
</modules>
|
25 |
<zendesk>
|
app/design/adminhtml/default/default/template/zendesk/autocomplete.phtml
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<style type="text/css">
|
2 |
+
div.autocomplete {
|
3 |
+
position:absolute;
|
4 |
+
width:250px;
|
5 |
+
background-color:white;
|
6 |
+
border:1px solid #888;
|
7 |
+
margin:0;
|
8 |
+
padding:0;
|
9 |
+
}
|
10 |
+
div.autocomplete ul {
|
11 |
+
list-style-type:none;
|
12 |
+
margin:0;
|
13 |
+
padding:0;
|
14 |
+
}
|
15 |
+
div.autocomplete ul li.selected {
|
16 |
+
background-color: #ffb;
|
17 |
+
}
|
18 |
+
div.autocomplete ul li {
|
19 |
+
list-style-type:none;
|
20 |
+
display:block;
|
21 |
+
margin:0;
|
22 |
+
padding:2px;
|
23 |
+
cursor:pointer;
|
24 |
+
}
|
25 |
+
</style>
|
26 |
+
<script type="text/javascript">
|
27 |
+
function updateRequester(text, item) {
|
28 |
+
$('requester').value = item.dataset.email;
|
29 |
+
$('requester_name').value = item.dataset.name;
|
30 |
+
}
|
31 |
+
|
32 |
+
var autocomplete_requester = new Element("div", { id: "autocomplete_requester", class: "autocomplete" });
|
33 |
+
$("requester").parentNode.appendChild(autocomplete_requester);
|
34 |
+
|
35 |
+
var completer = new Ajax.Autocompleter("requester", "autocomplete_requester", "<?php echo $this->getUrl('*/*/autocomplete'); ?>", {
|
36 |
+
afterUpdateElement: updateRequester,
|
37 |
+
minChars: 3
|
38 |
+
});
|
39 |
+
</script>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>zendesk</name>
|
4 |
-
<version>1.1.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.apache.org/licenses/LICENSE-2.0.html">Apache Software License v2</license>
|
7 |
<channel>community</channel>
|
@@ -17,25 +17,11 @@ This extension makes Zendesk work seamlessly with Magento to enable stores to de
|
|
17 |
- Display relevant support tickets on order & customer dashboards<br />
|
18 |
- Create support tickets from Contact Us requests<br />
|
19 |
- Easily add a feedback tab to your site</description>
|
20 |
-
<notes>Added
|
21 |
-
- German
|
22 |
-
- Spanish
|
23 |
-
- French
|
24 |
-
- Italian
|
25 |
-
- Japanese
|
26 |
-
- Korean
|
27 |
-
- Nederlands (Dutch)
|
28 |
-
- Portuguese (Brasil)
|
29 |
-
- Russian
|
30 |
-
- Traditional Chinese
|
31 |
-
- Simplified Chinese
|
32 |
-

|
33 |
-

|
34 |
-
</notes>
|
35 |
<authors><author><name>Jason Smale</name><user>zendesk</user><email>jsmale@zendesk.com</email></author><author><name>Fontis</name><user>fontis</user><email>magento@fontis.com.au</email></author></authors>
|
36 |
-
<date>
|
37 |
-
<time>
|
38 |
-
<contents><target name="mageetc"><dir name="modules"><file name="Zendesk_Zendesk.xml" hash="a630cf18c788dafb70d4c156a33eaa07"/></dir></target><target name="magecommunity"><dir name="Zendesk"><dir name="Zendesk"><dir name="Block"><dir name="Adminhtml"><dir name="Config"><dir name="Buttons"><file name="Generate.php" hash="7fa35e3e71b4bfb94f2dceddb19e86a0"/><file name="Signup.php" hash="f0d9ec9bc9a99f8643f1c2e6ac9989f2"/></dir><file name="Link.php" hash="779827427e11db311b6e1de9d42818f2"/></dir><dir name="Create"><dir name="Edit"><file name="Form.php" hash="fce297c645bb4bcc5433f317500aff96"/></dir><file name="Edit.php" hash="43aaf990ffaf4fd2ef0f65bbbbc19935"/></dir><dir name="Dashboard"><file name="Grids.php" hash="5b733e8b0f1e9c555619ff37f909bc00"/><dir name="Tab"><file name="View.php" hash="7d98b1f871626a4e783a9dd82bb4ea24"/></dir></dir><file name="Dashboard.php" hash="cd58a68d5a8cb2f3814426598ef016c3"/><file name="Menu.php" hash="c6000d5c571de25414f67dc8f49d97a0"/><dir name="Order"><dir name="View"><file name="Tickets.php" hash="a83a2ad42801ddbddad2d761779a597b"/></dir><file name="View.php" hash="db944df25b671288ad9e04d699653a19"/></dir></dir><file name="Supporttab.php" hash="4c5cbb2a18827045a3d0989ccb878733"/></dir><dir name="Helper"><file name="Data.php" hash="c1c7d21a04a472202d7e7639aa7837e5"/></dir><file name="LICENSE.txt" hash="d9922043f61f536de5d4d7af831e7f73"/><dir name="Model"><dir name="Api"><file name="Abstract.php" hash="02c9893a6d4452988ea68629b2d64558"/><file name="Requesters.php" hash="24eeb10f3eb80c15915af3fd50506e38"/><file name="Tickets.php" hash="14e55044b0855b6159fff9daf222c6dd"/><file name="Users.php" hash="1ecfe4c536bb45ccc6046dbb3743712b"/><file name="Views.php" hash="3cf9eedc651389599a4fe5e5ecfbeebe"/></dir><file name="Observer.php" hash="a745f0ebef9f5a3f203914b55a7854b8"/><dir name="Source"><file name="Views.php" hash="1c7527338bf40082016a62e45fe44622"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ZendeskController.php" hash="
|
39 |
<compatible/>
|
40 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
41 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>zendesk</name>
|
4 |
+
<version>1.1.4</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.apache.org/licenses/LICENSE-2.0.html">Apache Software License v2</license>
|
7 |
<channel>community</channel>
|
17 |
- Display relevant support tickets on order & customer dashboards<br />
|
18 |
- Create support tickets from Contact Us requests<br />
|
19 |
- Easily add a feedback tab to your site</description>
|
20 |
+
<notes>Added autocomplete for customer details when creating a Zendesk ticket inside Magento.</notes>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
21 |
<authors><author><name>Jason Smale</name><user>zendesk</user><email>jsmale@zendesk.com</email></author><author><name>Fontis</name><user>fontis</user><email>magento@fontis.com.au</email></author></authors>
|
22 |
+
<date>2013-02-18</date>
|
23 |
+
<time>03:41:19</time>
|
24 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Zendesk_Zendesk.xml" hash="a630cf18c788dafb70d4c156a33eaa07"/></dir></target><target name="magecommunity"><dir name="Zendesk"><dir name="Zendesk"><dir name="Block"><dir name="Adminhtml"><dir name="Config"><dir name="Buttons"><file name="Generate.php" hash="7fa35e3e71b4bfb94f2dceddb19e86a0"/><file name="Signup.php" hash="f0d9ec9bc9a99f8643f1c2e6ac9989f2"/></dir><file name="Link.php" hash="779827427e11db311b6e1de9d42818f2"/></dir><dir name="Create"><dir name="Edit"><file name="Form.php" hash="fce297c645bb4bcc5433f317500aff96"/></dir><file name="Edit.php" hash="43aaf990ffaf4fd2ef0f65bbbbc19935"/></dir><dir name="Dashboard"><file name="Grids.php" hash="5b733e8b0f1e9c555619ff37f909bc00"/><dir name="Tab"><file name="View.php" hash="7d98b1f871626a4e783a9dd82bb4ea24"/></dir></dir><file name="Dashboard.php" hash="cd58a68d5a8cb2f3814426598ef016c3"/><file name="Menu.php" hash="c6000d5c571de25414f67dc8f49d97a0"/><dir name="Order"><dir name="View"><file name="Tickets.php" hash="a83a2ad42801ddbddad2d761779a597b"/></dir><file name="View.php" hash="db944df25b671288ad9e04d699653a19"/></dir></dir><file name="Supporttab.php" hash="4c5cbb2a18827045a3d0989ccb878733"/></dir><dir name="Helper"><file name="Data.php" hash="c1c7d21a04a472202d7e7639aa7837e5"/></dir><file name="LICENSE.txt" hash="d9922043f61f536de5d4d7af831e7f73"/><dir name="Model"><dir name="Api"><file name="Abstract.php" hash="02c9893a6d4452988ea68629b2d64558"/><file name="Requesters.php" hash="24eeb10f3eb80c15915af3fd50506e38"/><file name="Tickets.php" hash="14e55044b0855b6159fff9daf222c6dd"/><file name="Users.php" hash="1ecfe4c536bb45ccc6046dbb3743712b"/><file name="Views.php" hash="3cf9eedc651389599a4fe5e5ecfbeebe"/></dir><file name="Observer.php" hash="a745f0ebef9f5a3f203914b55a7854b8"/><dir name="Source"><file name="Views.php" hash="1c7527338bf40082016a62e45fe44622"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ZendeskController.php" hash="b3fec169806d0e9d452880b52ddf0ee1"/></dir><file name="ApiController.php" hash="65fdebea6b94b44344300308376722d2"/><file name="IndexController.php" hash="a9c590f951f294d3641c29bd98b6834c"/></dir><dir name="etc"><file name="config.xml" hash="0f87f087c731e767d3555ed6e0c69bbf"/><file name="system.xml" hash="6e3e922965b5d713a1a1ef100401f28e"/></dir></dir></dir></target><target name="magelocale"><dir name="en_US"><file name="Zendesk_Zendesk.csv" hash="7ca6957ec2ab86d7cad0da6d3db451d8"/></dir><dir name="de_DE"><file name="Zendesk_Zendesk.csv" hash="763c45870e912c2510cd5202cd844ee5"/></dir><dir name="es_ES"><file name="Zendesk_Zendesk.csv" hash="0602d8b70510f15784e1cca16cc2c41c"/></dir><dir name="fr_FR"><file name="Zendesk_Zendesk.csv" hash="f292cb30c7103dee6d47f808f82b3b6d"/></dir><dir name="it_IT"><file name="Zendesk_Zendesk.csv" hash="1dca15b2c95ac058a442fe764afb359c"/></dir><dir name="ja_JP"><file name="Zendesk_Zendesk.csv" hash="71de6c4043003e0cfc0ac8f03fb71a31"/></dir><dir name="ko_KR"><file name="Zendesk_Zendesk.csv" hash="f1ab32c6d8eb2e4486a7dbfb8d1e1abc"/></dir><dir name="nl_NL"><file name="Zendesk_Zendesk.csv" hash="bdda5f5ab107984487cbba1e1cb47c15"/></dir><dir name="pt_BR"><file name="Zendesk_Zendesk.csv" hash="8a1458f0e498706c7541851a9a32ed3c"/></dir><dir name="ru_RU"><file name="Zendesk_Zendesk.csv" hash="871fcc5befc62df4e93c3c36ca8dcc87"/></dir><dir name="zh_TW"><file name="Zendesk_Zendesk.csv" hash="486ee9e2eea24301299f73d9e745dc00"/></dir><dir name="zh_CN"><file name="Zendesk_Zendesk.csv" hash="414730c8365bd652b2a7934f948de9b2"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="zendesk.xml" hash="d11620289479769a35c98b0676153906"/></dir><dir name="template"><dir name="zendesk"><file name="autocomplete.phtml" hash="01f42e0bbe3337c058ebc0a8832ddca9"/><dir name="config"><file name="button-generate.phtml" hash="21a25898c1fdea93d31b02ae91c1dd6f"/><file name="button-signup.phtml" hash="8871a0aa0bad7f85a7419853db8e0ce4"/><file name="link.phtml" hash="ce55d65900113183e770b2905a31b0eb"/></dir><dir name="customer"><file name="tickets.phtml" hash="e417ed76cee982be652dfe858822a26a"/></dir><dir name="dashboard"><file name="empty.phtml" hash="d0c30af25f17ff45215d210b48063a46"/><file name="index.phtml" hash="ac71050399d3789d2d4217472bc726cf"/><dir name="tabs"><file name="view.phtml" hash="b173979d7a295d8c4bcc5434b095c3be"/></dir></dir><file name="left-menu.phtml" hash="3147dca7821863ae6da3f7b650739780"/><dir name="order"><file name="tickets.phtml" hash="c12ae3af7d9591af53f7c6f910a9a438"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="zendesk.xml" hash="5aefda9b293f1a8c9384c9c98a4c70b2"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="zendesk"><file name="button.png" hash="58e62edb7f4be46e3b29c0bb774c7ad7"/><file name="icon.png" hash="b5bfce535c987d1e9e604823ac4b3943"/><file name="zendesk-tab.png" hash="0f322d15c392528c212d6491732bc133"/><file name="zendesk.css" hash="454aaabc787598a2ee2db5dd48f8ed96"/></dir></dir></dir></dir></target></contents>
|
25 |
<compatible/>
|
26 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
27 |
</package>
|