AJAX_ZOOM - Version 1.2.0

Version Notes

Added 360 degree "Product Tour"

Download this release

Release Info

Developer AJAX-ZOOM
Extension AJAX_ZOOM
Version 1.2.0
Comparing to
See all releases


Code changes from version 1.1.4 to 1.2.0

Files changed (41) hide show
  1. app/code/local/Ax/Zoom/Block/Adminhtml/System/Config/Fieldset/License.php +5 -5
  2. app/code/local/Ax/Zoom/Block/Adminhtml/Tabs.php +9 -10
  3. app/code/local/Ax/Zoom/Block/Adminhtml/Tabs/Tabid.php +5 -5
  4. app/code/local/Ax/Zoom/Helper/Data.php +5 -5
  5. app/code/local/Ax/Zoom/Helper/Head.php +5 -5
  6. app/code/local/Ax/Zoom/Model/Ax360.php +43 -22
  7. app/code/local/Ax/Zoom/Model/Ax360set.php +5 -5
  8. app/code/local/Ax/Zoom/Model/Axproducts.php +5 -5
  9. app/code/local/Ax/Zoom/Model/Galleryposition.php +5 -5
  10. app/code/local/Ax/Zoom/Model/Observer.php +5 -5
  11. app/code/local/Ax/Zoom/Model/Position.php +5 -5
  12. app/code/local/Ax/Zoom/Model/Position4.php +28 -0
  13. app/code/local/Ax/Zoom/Model/Resource/Ax360.php +5 -5
  14. app/code/local/Ax/Zoom/Model/Resource/Ax360/Collection.php +5 -5
  15. app/code/local/Ax/Zoom/Model/Resource/Ax360set.php +5 -5
  16. app/code/local/Ax/Zoom/Model/Resource/Ax360set/Collection.php +5 -5
  17. app/code/local/Ax/Zoom/Model/Resource/Axproducts.php +5 -5
  18. app/code/local/Ax/Zoom/Model/Resource/Axproducts/Collection.php +5 -5
  19. app/code/local/Ax/Zoom/Model/Words.php +5 -5
  20. app/code/local/Ax/Zoom/Model/Yesno.php +5 -5
  21. app/code/local/Ax/Zoom/controllers/AxzoomController.php +54 -20
  22. app/code/local/Ax/Zoom/etc/config.xml +12 -4
  23. app/code/local/Ax/Zoom/etc/system.xml +80 -5
  24. app/code/local/Ax/Zoom/sql/axzoom_setup/install-0.0.1.php +12 -12
  25. app/design/adminhtml/default/default/layout/axzoom.xml +7 -6
  26. app/design/adminhtml/default/default/template/axzoom/tab.phtml +4 -4
  27. app/design/adminhtml/default/default/template/axzoom/tab360-sets.phtml +28 -5
  28. app/design/adminhtml/default/default/template/axzoom/tab360-settings.phtml +5 -5
  29. app/design/adminhtml/default/default/template/axzoom/tab360.phtml +3 -3
  30. app/design/adminhtml/default/default/template/axzoom/uploader.phtml +3 -3
  31. app/design/frontend/base/default/layout/axzoom.xml +15 -5
  32. app/design/frontend/base/default/template/ax_zoom/catalog/product/view/media.phtml +30 -17
  33. app/etc/modules/Ax_Zoom.xml +3 -3
  34. js/axzoom/check_fallback.js +12 -6
  35. js/axzoom/check_jquery.js +5 -5
  36. js/axzoom/check_jquery_admin.js +3 -3
  37. js/axzoom/lic.php +6 -5
  38. js/axzoom/preview/cropeditor.php +1324 -0
  39. js/axzoom/preview/preview.php +0 -5
  40. js/axzoom/zoomConfigCustomAZ.inc.php +15 -0
  41. package.xml +5 -5
app/code/local/Ax/Zoom/Block/Adminhtml/System/Config/Fieldset/License.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/System/Config/Fieldset/License.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.3
7
- * Date: 2015-10-09
8
- * Review: 2015-10-09
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/System/Config/Fieldset/License.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Block/Adminhtml/Tabs.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/tabs.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
@@ -22,20 +22,19 @@ class Ax_Zoom_Block_Adminhtml_Tabs extends Mage_Adminhtml_Block_Catalog_Product_
22
  {
23
 
24
  $productId = Mage::app()->getRequest()->getParam('id');
25
-
26
  //get all existing tabs
27
  $this->parent = parent::_prepareLayout();
28
-
29
  if (!empty($productId)) {
30
  //add new tab
31
  $this->addTab(
32
  'tabid', array(
33
  'label' => Mage::helper('catalog')->__('AJAX ZOOM'),
34
- 'content' => $this->getLayout()
35
- ->createBlock('zoom/adminhtml_tabs_tabid')->toHtml(),
36
  ));
37
  }
38
-
39
  return $this->parent;
40
  }
41
  }
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/tabs.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
22
  {
23
 
24
  $productId = Mage::app()->getRequest()->getParam('id');
25
+
26
  //get all existing tabs
27
  $this->parent = parent::_prepareLayout();
28
+
29
  if (!empty($productId)) {
30
  //add new tab
31
  $this->addTab(
32
  'tabid', array(
33
  'label' => Mage::helper('catalog')->__('AJAX ZOOM'),
34
+ 'content' => $this->getLayout()->createBlock('zoom/adminhtml_tabs_tabid')->toHtml(),
 
35
  ));
36
  }
37
+
38
  return $this->parent;
39
  }
40
  }
app/code/local/Ax/Zoom/Block/Adminhtml/Tabs/Tabid.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/Tabs/Tabid.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Block/Adminhtml/Tabs/Tabid.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Helper/Data.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Helper/Data.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Helper/Data.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Helper/Head.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Helper/Head.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Helper/Head.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Ax360.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Ax360.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
@@ -74,11 +74,21 @@ class Ax_Zoom_Model_Ax360 extends Mage_Core_Model_Abstract
74
  if (!empty($settings)) $settings = ", $settings";
75
 
76
  if ($group['qty'] > 0) {
 
 
 
77
  if ($group['qty'] == 1) {
78
- $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $productId . "/" . $group['id_360'] . "/" . $group['id_360set'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]}";
79
  } else {
80
- $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $productId . "/" . $group['id_360'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]}";
81
  }
 
 
 
 
 
 
 
82
  $cnt++;
83
  if ($cnt != count($setsGroups)+1) $json .= ',';
84
  }
@@ -86,27 +96,38 @@ class Ax_Zoom_Model_Ax360 extends Mage_Core_Model_Abstract
86
  }
87
 
88
  $cnt = 1;
89
- if ($extraGroups) foreach ($extraGroups as $id360) {
 
90
 
91
- $setsGroup = $this->getSetsGroup($id360);
92
- $group = $setsGroup[0];
93
 
94
- if ($group['status'] == 0)
95
- continue;
96
 
97
- $settings = $this->prepareSettings($group['settings']);
98
- if (!empty($settings)) $settings = ", $settings";
 
 
 
99
 
100
- if ($group['qty'] > 0) {
101
- if ($group['qty'] == 1) {
102
- $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $group['id_product'] . "/" . $group['id_360'] . "/" . $group['id_360set'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]}";
103
- } else {
104
- $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $group['id_product'] . "/" . $group['id_360'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]}";
 
 
 
 
 
 
 
 
 
105
  }
106
- $cnt++;
107
- if ($cnt != count($extraGroups)+1) $json .= ',';
108
  }
109
-
110
  }
111
 
112
  $json .= '}';
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Ax360.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
74
  if (!empty($settings)) $settings = ", $settings";
75
 
76
  if ($group['qty'] > 0) {
77
+
78
+ $crop = empty($group['crop']) ? '[]' : trim(preg_replace('/\s+/', ' ', $group['crop']));
79
+
80
  if ($group['qty'] == 1) {
81
+ $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $productId . "/" . $group['id_360'] . "/" . $group['id_360set'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]";
82
  } else {
83
+ $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $productId . "/" . $group['id_360'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]";
84
  }
85
+
86
+ if ($crop && $crop != '[]') {
87
+ $json .= ', "crop": '.$crop;
88
+ }
89
+
90
+ $json .= '}';
91
+
92
  $cnt++;
93
  if ($cnt != count($setsGroups)+1) $json .= ',';
94
  }
96
  }
97
 
98
  $cnt = 1;
99
+ if ($extraGroups) {
100
+ foreach ($extraGroups as $id360) {
101
 
102
+ $setsGroup = $this->getSetsGroup($id360);
103
+ $group = $setsGroup[0];
104
 
105
+ if ($group['status'] == 0)
106
+ continue;
107
 
108
+ $settings = $this->prepareSettings($group['settings']);
109
+ if (!empty($settings)) $settings = ", $settings";
110
+
111
+ if ($group['qty'] > 0) {
112
+ $crop = empty($group['crop']) ? '[]' : trim(preg_replace('/\s+/', ' ', $group['crop']));
113
 
114
+ if ($group['qty'] == 1) {
115
+ $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $group['id_product'] . "/" . $group['id_360'] . "/" . $group['id_360set'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]";
116
+ } else {
117
+ $json .= "'" . $group['id_360'] . "'" . ": {'path': '" . $this->rootFolder() . "js/axzoom/pic/360/" . $group['id_product'] . "/" . $group['id_360'] . "'" . $settings . ", 'combinations': [" . $group['combinations'] . "]";
118
+ }
119
+
120
+ if ($crop && $crop != '[]') {
121
+ $json .= ', "crop": '.$crop;
122
+ }
123
+
124
+ $json .= '}';
125
+
126
+ $cnt++;
127
+ if ($cnt != count($extraGroups)+1) $json .= ',';
128
  }
129
+
 
130
  }
 
131
  }
132
 
133
  $json .= '}';
app/code/local/Ax/Zoom/Model/Ax360set.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Ax360set.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Ax360set.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Axproducts.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Axproducts.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Axproducts.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Galleryposition.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Galleryposition.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.3
7
- * Date: 2015-10-09
8
- * Review: 2015-10-09
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Galleryposition.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Observer.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Observer.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Observer.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Position.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Position.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Position.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Position4.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Position4.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
+ * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
+ * URL: http://www.ajax-zoom.com
10
+ * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
+ *
12
+ * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
+ * @license http://www.ajax-zoom.com/index.php?cid=download
15
+ */
16
+
17
+ class Ax_Zoom_Model_Position4
18
+ {
19
+ public function toOptionArray()
20
+ {
21
+ return array(
22
+ array('value'=>'top', 'label'=>Mage::helper('axzoom')->__('top')),
23
+ array('value'=>'right', 'label'=>Mage::helper('axzoom')->__('right')),
24
+ array('value'=>'bottom', 'label'=>Mage::helper('axzoom')->__('bottom')),
25
+ array('value'=>'left', 'label'=>Mage::helper('axzoom')->__('left'))
26
+ );
27
+ }
28
+ }
app/code/local/Ax/Zoom/Model/Resource/Ax360.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Resource/Ax360/Collection.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360/Collection.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360/Collection.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Resource/Ax360set.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360set.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360set.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Resource/Ax360set/Collection.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360set/Collection.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Ax360set/Collection.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Resource/Axproducts.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Axproducts.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Axproducts.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Resource/Axproducts/Collection.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Axproducts/Collection.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Resource/Axproducts/Collection.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Words.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Words.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Words.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/Model/Yesno.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Yesno.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/Model/Yesno.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
app/code/local/Ax/Zoom/controllers/AxzoomController.php CHANGED
@@ -1,19 +1,19 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/controllers/IndexController.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.7
7
- * Date: 2015-11-15
8
- * Review: 2015-11-15
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
- //Mage_Core_Controller_Front_Action
17
  class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
18
  {
19
  public function AddProductImage360Action()
@@ -22,7 +22,7 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
22
  $id360set = $this->getRequest()->getPost('id_360set');
23
  $id360 = Mage::getModel('axzoom/ax360set')->load($id360set)->getId_360();
24
  $folder = $this->createProduct360Folder($productId, $id360set);
25
-
26
  if (isset($_FILES['file360']['name'][0]) && $_FILES['file360']['name'][0] != '') {
27
  try {
28
  $fileName = $_FILES['file360']['name'][0];
@@ -40,7 +40,7 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
40
  $uploader->setAllowedExtensions(array('png', 'jpg')); //allowed extensions
41
  $uploader->setAllowRenameFiles(false);
42
  $uploader->setFilesDispersion(false);
43
-
44
  $uploader->save($folder, $fileName );
45
  } catch (Exception $e) {
46
  echo $e->getMessage();
@@ -144,9 +144,9 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
144
  public function Set360StatusAction()
145
  {
146
  $get = Mage::app()->getRequest();
147
- $productId = $get->getParam('id_product');
148
- $id360 = $get->getParam('id_360');
149
- $status = $get->getParam('status');
150
 
151
  Mage::getModel('axzoom/ax360')->load($id360)->addData(array('status' => $status))->setId($id360)->save();
152
 
@@ -155,16 +155,53 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
155
  'confirmations' => array('The status has been updated.' . $status . '-' . $id360)
156
  )));
157
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
 
159
  public function AddSetAction()
160
  {
161
  $get = Mage::app()->getRequest();
162
- $productId = $get->getParam('id_product');
163
- $name = $get->getParam('name');
164
- $existing = $get->getParam('existing');
165
- $zip = $get->getParam('zip');
166
- $delete = $get->getParam('delete');
167
- $arcfile = $get->getParam('arcfile');
168
  $newId = '';
169
  $newName = '';
170
  $newSettings = '';
@@ -208,7 +245,6 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
208
  )));
209
  }
210
 
211
-
212
  public function addImagesArc($arcfile, $productId, $id360, $id360set, $delete = '')
213
  {
214
  set_time_limit(0);
@@ -252,7 +288,6 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
252
  }
253
  }
254
 
255
-
256
  // delete temp directory which was created when zip extracted
257
  if(!is_dir($path)) {
258
  $this->deleteDirectory($dst);
@@ -336,7 +371,6 @@ class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
336
  }
337
  }
338
 
339
-
340
  public function getFilesFromFolder($path)
341
  {
342
  $files = array();
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/controllers/IndexController.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
+
17
  class Ax_Zoom_AxzoomController extends Mage_Adminhtml_Controller_Action
18
  {
19
  public function AddProductImage360Action()
22
  $id360set = $this->getRequest()->getPost('id_360set');
23
  $id360 = Mage::getModel('axzoom/ax360set')->load($id360set)->getId_360();
24
  $folder = $this->createProduct360Folder($productId, $id360set);
25
+
26
  if (isset($_FILES['file360']['name'][0]) && $_FILES['file360']['name'][0] != '') {
27
  try {
28
  $fileName = $_FILES['file360']['name'][0];
40
  $uploader->setAllowedExtensions(array('png', 'jpg')); //allowed extensions
41
  $uploader->setAllowRenameFiles(false);
42
  $uploader->setFilesDispersion(false);
43
+
44
  $uploader->save($folder, $fileName );
45
  } catch (Exception $e) {
46
  echo $e->getMessage();
144
  public function Set360StatusAction()
145
  {
146
  $get = Mage::app()->getRequest();
147
+ $productId = $get->getParam('id_product');
148
+ $id360 = $get->getParam('id_360');
149
+ $status = $get->getParam('status');
150
 
151
  Mage::getModel('axzoom/ax360')->load($id360)->addData(array('status' => $status))->setId($id360)->save();
152
 
155
  'confirmations' => array('The status has been updated.' . $status . '-' . $id360)
156
  )));
157
  }
158
+
159
+ public function GetCropJsonAction()
160
+ {
161
+ $get = Mage::app()->getRequest();
162
+ $id_360 = $get->getParam('id_360');
163
+
164
+ $db = Mage::getSingleton('core/resource')->getConnection('core_write');
165
+ $check_crop_field = $db->query('SHOW FIELDS FROM `ajaxzoom360`');
166
+ if ($check_crop_field){
167
+ $check_crop_field_fetch = $check_crop_field->fetchAll(PDO::FETCH_COLUMN);
168
+ // Update table
169
+ if (!in_array('crop', $check_crop_field_fetch)){
170
+ $db->query('ALTER TABLE `ajaxzoom360` ADD `crop` TEXT NOT NULL');
171
+ }
172
+ }
173
+
174
+ $row = $db->fetchAll('SELECT * FROM `ajaxzoom360` WHERE id_360 = '.(int)$id_360.' LIMIT 1');
175
+ if ($row[0]['crop']){
176
+ die(stripslashes($row[0]['crop']));
177
+ }else{
178
+ die('[]');
179
+ }
180
+ }
181
+
182
+ public function SetCropJsonAction()
183
+ {
184
+ $json = $this->getRequest()->getPost('json');
185
+ $id_360 = Mage::app()->getRequest()->getParam('id_360');
186
+
187
+ $db = Mage::getSingleton('core/resource')->getConnection('core_write');
188
+ $query = 'UPDATE `ajaxzoom360` SET crop = \''.addslashes($json).'\' WHERE id_360 = '.(int)$id_360;
189
+ $result = $db->query($query);
190
+
191
+ die(Mage::helper('core')->jsonEncode(array(
192
+ 'status' => $result->rowCount()
193
+ )));
194
+ }
195
 
196
  public function AddSetAction()
197
  {
198
  $get = Mage::app()->getRequest();
199
+ $productId = $get->getParam('id_product');
200
+ $name = $get->getParam('name');
201
+ $existing = $get->getParam('existing');
202
+ $zip = $get->getParam('zip');
203
+ $delete = $get->getParam('delete');
204
+ $arcfile = $get->getParam('arcfile');
205
  $newId = '';
206
  $newName = '';
207
  $newSettings = '';
245
  )));
246
  }
247
 
 
248
  public function addImagesArc($arcfile, $productId, $id360, $id360set, $delete = '')
249
  {
250
  set_time_limit(0);
288
  }
289
  }
290
 
 
291
  // delete temp directory which was created when zip extracted
292
  if(!is_dir($path)) {
293
  $this->deleteDirectory($dst);
371
  }
372
  }
373
 
 
374
  public function getFilesFromFolder($path)
375
  {
376
  $files = array();
app/code/local/Ax/Zoom/etc/config.xml CHANGED
@@ -4,9 +4,9 @@
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/etc/config.xml
5
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
- * Version: 1.1.4
8
- * Date: 2016-04-22
9
- * Review: 2015-04-22
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
@@ -20,7 +20,7 @@
20
 
21
  <modules>
22
  <Ax_Zoom>
23
- <version>1.1.4</version>
24
  </Ax_Zoom>
25
  </modules>
26
 
@@ -407,6 +407,14 @@
407
  <btnSrc>//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png</btnSrc>
408
  <data>{}</data>
409
  </pinterest>
 
 
 
 
 
 
 
 
410
  <mouseOverZoomParam>
411
  <position>right</position>
412
  <posAutoInside>150</posAutoInside>
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/etc/config.xml
5
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
+ * Version: 1.2.0
8
+ * Date: 2016-05-07
9
+ * Review: 2016-05-07
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
20
 
21
  <modules>
22
  <Ax_Zoom>
23
+ <version>1.2.0</version>
24
  </Ax_Zoom>
25
  </modules>
26
 
407
  <btnSrc>//assets.pinterest.com/images/pidgets/pinit_fg_en_rect_gray_20.png</btnSrc>
408
  <data>{}</data>
409
  </pinterest>
410
+ <producttour>
411
+ <cropAxZmThumbSliderParam></cropAxZmThumbSliderParam>
412
+ <cropSliderPosition>left</cropSliderPosition>
413
+ <cropSliderDimension>86</cropSliderDimension>
414
+ <cropSliderThumbAutoSize>true</cropSliderThumbAutoSize>
415
+ <cropSliderThumbAutoMargin>7</cropSliderThumbAutoMargin>
416
+ <cropSliderThumbDescr>true</cropSliderThumbDescr>
417
+ </producttour>
418
  <mouseOverZoomParam>
419
  <position>right</position>
420
  <posAutoInside>150</posAutoInside>
app/code/local/Ax/Zoom/etc/system.xml CHANGED
@@ -4,9 +4,9 @@
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/etc/system.xml
5
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
- * Version: 1.1.2
8
- * Date: 2016-03-31
9
- * Review: 2015-03-31
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
@@ -1279,7 +1279,10 @@
1279
  <fields>
1280
  <enabled>
1281
  <label><![CDATA[<div class="notice-msg importantAZoption">enabled</div>]]></label>
1282
- <comment>Experimental feature - enable Pinterest button. Pinterest allows to collect visual bookmarks in the form of images collected on the internet.</comment>
 
 
 
1283
  <frontend_type>select</frontend_type>
1284
  <source_model>axzoom/yesno</source_model>
1285
  <sort_order>50</sort_order>
@@ -1361,7 +1364,79 @@
1361
  </data>
1362
  </fields>
1363
  </pinterest>
1364
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1365
  <magento translate="label">
1366
  <label>Magento specific settings</label>
1367
  <frontend_type>text</frontend_type>
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/etc/system.xml
5
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
+ * Version: 1.2.0
8
+ * Date: 2016-05-07
9
+ * Review: 2016-05-07
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
1279
  <fields>
1280
  <enabled>
1281
  <label><![CDATA[<div class="notice-msg importantAZoption">enabled</div>]]></label>
1282
+ <comment>Pinterest button should be disabled till it is reimplemented!
1283
+ Experimental feature - enable Pinterest button.
1284
+ Pinterest allows to collect visual bookmarks in the form of images collected on the internet.
1285
+ </comment>
1286
  <frontend_type>select</frontend_type>
1287
  <source_model>axzoom/yesno</source_model>
1288
  <sort_order>50</sort_order>
1364
  </data>
1365
  </fields>
1366
  </pinterest>
1367
+
1368
+ <producttour translate="label">
1369
+ <label>New: 360° Product Tour</label>
1370
+ <frontend_type>text</frontend_type>
1371
+ <sort_order>51</sort_order>
1372
+ <show_in_default>1</show_in_default>
1373
+ <show_in_website>1</show_in_website>
1374
+ <show_in_store>1</show_in_store>
1375
+ <fields>
1376
+ <cropAxZmThumbSliderParam>
1377
+ <label>cropAxZmThumbSliderParam</label>
1378
+ <comment>
1379
+ <![CDATA[<div class="validation-advice">Attention: you are editing JavaScript object! Errors will lead to AJAX-ZOOM not working properly.</div>
1380
+ Slider settings for 360° "Product Tour". Can be kept empty. See also "galleryAxZmThumbSliderParam" option for more info.
1381
+ ]]>
1382
+ </comment>
1383
+ <frontend_type>textarea</frontend_type>
1384
+ <sort_order>10</sort_order>
1385
+ <show_in_default>1</show_in_default>
1386
+ <show_in_website>1</show_in_website>
1387
+ <show_in_store>1</show_in_store>
1388
+ </cropAxZmThumbSliderParam>
1389
+ <cropSliderPosition>
1390
+ <label><![CDATA[<div class="notice-msg importantAZoption">cropSliderPosition</div>]]></label>
1391
+ <comment>Position of the crop slider, possible values: "top", "right", "bottom", "left".</comment>
1392
+ <frontend_type>select</frontend_type>
1393
+ <source_model>axzoom/position4</source_model>
1394
+ <sort_order>20</sort_order>
1395
+ <show_in_default>1</show_in_default>
1396
+ <show_in_website>1</show_in_website>
1397
+ <show_in_store>1</show_in_store>
1398
+ </cropSliderPosition>
1399
+ <cropSliderDimension>
1400
+ <label><![CDATA[<div class="notice-msg importantAZoption">cropSliderDimension</div>]]></label>
1401
+ <comment>Width or height (depending on position) of the instantly created container for the 360° "Product Tour" thumb slider.</comment>
1402
+ <frontend_type>text</frontend_type>
1403
+ <sort_order>30</sort_order>
1404
+ <show_in_default>1</show_in_default>
1405
+ <show_in_website>1</show_in_website>
1406
+ <show_in_store>1</show_in_store>
1407
+ </cropSliderDimension>
1408
+ <cropSliderThumbAutoSize>
1409
+ <label>cropSliderThumbAutoSize</label>
1410
+ <comment>Thumb CSS size will be set instantly depending on "cropSliderDimension" option</comment>
1411
+ <frontend_type>select</frontend_type>
1412
+ <source_model>axzoom/yesno</source_model>
1413
+ <sort_order>40</sort_order>
1414
+ <show_in_default>1</show_in_default>
1415
+ <show_in_website>1</show_in_website>
1416
+ <show_in_store>1</show_in_store>
1417
+ </cropSliderThumbAutoSize>
1418
+ <cropSliderThumbAutoMargin>
1419
+ <label>cropSliderThumbAutoMargin</label>
1420
+ <comment>Thumb margin when set instantly.</comment>
1421
+ <frontend_type>text</frontend_type>
1422
+ <sort_order>50</sort_order>
1423
+ <show_in_default>1</show_in_default>
1424
+ <show_in_website>1</show_in_website>
1425
+ <show_in_store>1</show_in_store>
1426
+ </cropSliderThumbAutoMargin>
1427
+ <cropSliderThumbDescr>
1428
+ <label>cropSliderThumbDescr</label>
1429
+ <comment>Enable descriptions for the thumbs in the slider for 360° "Product Tour"</comment>
1430
+ <frontend_type>select</frontend_type>
1431
+ <source_model>axzoom/yesno</source_model>
1432
+ <sort_order>60</sort_order>
1433
+ <show_in_default>1</show_in_default>
1434
+ <show_in_website>1</show_in_website>
1435
+ <show_in_store>1</show_in_store>
1436
+ </cropSliderThumbDescr>
1437
+ </fields>
1438
+ </producttour>
1439
+
1440
  <magento translate="label">
1441
  <label>Magento specific settings</label>
1442
  <frontend_type>text</frontend_type>
app/code/local/Ax/Zoom/sql/axzoom_setup/install-0.0.1.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
- * Module: jQuery AJAX-ZOOM for Magento, install-0.0.1.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.9
7
- * Date: 2015-12-01
8
- * Review: 2015-12-01
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
@@ -19,10 +19,10 @@
19
  $installer = $this;
20
  $installer->startSetup();
21
  $installer->run("
22
- CREATE TABLE IF NOT EXISTS `ajaxzoom360` (`id_360` int(11) NOT NULL AUTO_INCREMENT, `id_product` int(11) NOT NULL, `name` varchar(255) NOT NULL, `num` int(11) NOT NULL DEFAULT '1', `settings` text NOT NULL, `status` tinyint(1) NOT NULL DEFAULT '0', `combinations` text NOT NULL, PRIMARY KEY (`id_360`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
23
- CREATE TABLE IF NOT EXISTS `ajaxzoom360set` (`id_360set` int(11) NOT NULL AUTO_INCREMENT, `id_360` int(11) NOT NULL, `sort_order` int(11) NOT NULL, PRIMARY KEY (`id_360set`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
24
- CREATE TABLE IF NOT EXISTS `ajaxzoomproducts` (`id_product` int(11) NOT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;
25
- ");
26
 
27
  $installer->endSetup();
28
 
@@ -33,9 +33,9 @@ foreach (array('360', 'cache', 'zoomgallery', 'zoommap', 'zoomthumb', 'zoomtiles
33
 
34
  // download axZm if not exists
35
  if (!file_exists(Mage::getBaseDir() . '/js/axzoom/axZm') && ini_get('allow_url_fopen') ) {
36
- $remoteFileContents = file_get_contents('http://www.ajax-zoom.com/download.php?ver=latest');
37
  $localFilePath = Mage::getBaseDir() . '/js/axzoom/pic/tmp/jquery.ajaxZoom_ver_latest.zip';
38
-
39
  if ($remoteFileContents !== false){
40
  file_put_contents($localFilePath, $remoteFileContents);
41
 
1
  <?php
2
  /**
3
+ * Module: jQuery AJAX-ZOOM for Magento, /app/code/local/Ax/Zoom/sql/axzoom_setup/install-0.0.1.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
19
  $installer = $this;
20
  $installer->startSetup();
21
  $installer->run("
22
+ CREATE TABLE IF NOT EXISTS `ajaxzoom360` (`id_360` int(11) NOT NULL AUTO_INCREMENT, `id_product` int(11) NOT NULL, `name` varchar(255) NOT NULL, `num` int(11) NOT NULL DEFAULT '1', `settings` text NOT NULL, `status` tinyint(1) NOT NULL DEFAULT '0', `combinations` text NOT NULL, `crop` text NOT NULL, PRIMARY KEY (`id_360`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 ;
23
+ CREATE TABLE IF NOT EXISTS `ajaxzoom360set` (`id_360set` int(11) NOT NULL AUTO_INCREMENT, `id_360` int(11) NOT NULL, `sort_order` int(11) NOT NULL, PRIMARY KEY (`id_360set`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
24
+ CREATE TABLE IF NOT EXISTS `ajaxzoomproducts` (`id_product` int(11) NOT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;
25
+ ");
26
 
27
  $installer->endSetup();
28
 
33
 
34
  // download axZm if not exists
35
  if (!file_exists(Mage::getBaseDir() . '/js/axzoom/axZm') && ini_get('allow_url_fopen') ) {
36
+ $remoteFileContents = file_get_contents('http://www.ajax-zoom.com/download.php?ver=latest&module=magento');
37
  $localFilePath = Mage::getBaseDir() . '/js/axzoom/pic/tmp/jquery.ajaxZoom_ver_latest.zip';
38
+
39
  if ($remoteFileContents !== false){
40
  file_put_contents($localFilePath, $remoteFileContents);
41
 
app/design/adminhtml/default/default/layout/axzoom.xml CHANGED
@@ -2,16 +2,16 @@
2
  <!--
3
  /**
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/layout/axzoom.xml
5
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
- * Version: 1.0.0
8
- * Date: 2015-09-08
9
- * Review: 2015-09-08
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
13
  * @author AJAX-ZOOM <support@ajax-zoom.com>
14
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
15
  * @license http://www.ajax-zoom.com/index.php?cid=download
16
  */
17
  -->
@@ -29,7 +29,8 @@
29
  </action>
30
  <action method="addJs"><script>axzoom/axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.pack.js</script></action>
31
  <action method="addJs"><script>axzoom/axZm/extensions/jquery.axZm.openAjaxZoomInFancyBox.js</script></action>
32
-
 
33
  <!-- Fileupload for 360 images -->
34
  <action method="addJs"><script>axzoom/jquery.ui.widget.min.js</script></action>
35
  <action method="addJs"><script>axzoom/jquery.fileupload.js</script></action>
2
  <!--
3
  /**
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/layout/axzoom.xml
5
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
+ * Version: 1.2.0
8
+ * Date: 2016-05-07
9
+ * Review: 2016-05-07
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
13
  * @author AJAX-ZOOM <support@ajax-zoom.com>
14
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
15
  * @license http://www.ajax-zoom.com/index.php?cid=download
16
  */
17
  -->
29
  </action>
30
  <action method="addJs"><script>axzoom/axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.pack.js</script></action>
31
  <action method="addJs"><script>axzoom/axZm/extensions/jquery.axZm.openAjaxZoomInFancyBox.js</script></action>
32
+ <action method="addJs"><script>axzoom/axZm/plugins/jquery.scrollTo.min.js</script></action>
33
+
34
  <!-- Fileupload for 360 images -->
35
  <action method="addJs"><script>axzoom/jquery.ui.widget.min.js</script></action>
36
  <action method="addJs"><script>axzoom/jquery.fileupload.js</script></action>
app/design/adminhtml/default/default/template/axzoom/tab.phtml CHANGED
@@ -3,14 +3,14 @@
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.12
7
- * Date: 2016-03-02
8
- * Review: 2016-03-02
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
  -->
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
  -->
app/design/adminhtml/default/default/template/axzoom/tab360-sets.phtml CHANGED
@@ -3,9 +3,9 @@
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360-sets.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.1.4
7
- * Date: 2016-04-22
8
- * Review: 2016-04-22
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
@@ -52,6 +52,11 @@ $conf = Mage::getStoreConfig('axzoom_options');
52
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAA8klEQVQoU43MoUsEYRAF8Mclg4hsMB0iF8QgIqZDLi5m8yEGEf8CwyFWg4gYRIxy0b/gohhNJrkkKmK6tLret9/OzPsMG2TXvcM3ZYb3Y4D/Z9y0Z5Ni9PBvvcChXha7dfS+Wkf2GIKdFRc3K+Bz1h4YGGR3AmBXB1ns24Br+U46p6t6VwHSB5IZvWUIgV+yl7ZqgJ4wybfdop7T/FoJhK70ARvqKQC8NuxNj2s+2JNeAMCoYR/aqwF6RCf7fkNvaNlyCUjMF14n83pFYaAxSPkD4GPZcetAGo1Xvpt8p+VbmJy8Tc9RtjSFyIENXDQF/OYHw2GYt0Xo/PcAAAAASUVORK5CYII=);
53
  background-repeat: no-repeat;
54
  }
 
 
 
 
 
55
 
56
  #file360-add-button span{
57
  padding-left: 20px;
@@ -176,7 +181,7 @@ $conf = Mage::getStoreConfig('axzoom_options');
176
  <th><?php echo $this->__('Cover Image'); ?></th>
177
  <th><?php echo $this->__('Name'); ?></th>
178
  <th><?php echo $this->__('Active'); ?></th>
179
- <th class="last" style="width:240px;"><?php echo $this->__('Actions'); ?></th>
180
  </tr>
181
  </thead>
182
  <tbody id="imageTableSetsRows">
@@ -201,6 +206,7 @@ $conf = Mage::getStoreConfig('axzoom_options');
201
  <button class="delete_set scalable delete"><span><?php echo $this->__('Delete'); ?></span></button>
202
  <button class="images_set scalable"><span><?php echo $this->__('Images'); ?></span></button>
203
  <button class="scalable preview_set hide_class"><span><?php echo $this->__('Preview'); ?></span></button>
 
204
  </td>
205
  </tr>
206
  </table>
@@ -322,6 +328,12 @@ $conf = Mage::getStoreConfig('axzoom_options');
322
  imageLine360(data.images[i]['id'], data.images[i]['thumb'], '', "", "", "");
323
  };
324
 
 
 
 
 
 
 
325
  }
326
 
327
 
@@ -370,6 +382,17 @@ $conf = Mage::getStoreConfig('axzoom_options');
370
 
371
  $.openAjaxZoomInFancyBox({href: '<?php echo Mage::getBaseUrl('js') ?>axzoom/preview/preview.php?3dDir=<?php echo Mage::getModel('axzoom/ax360')->rootFolder() ?>js/axzoom/pic/360/' + id_product + '/' + id360+'&group='+id360+'&id='+id360set, iframe: true});
372
  });
 
 
 
 
 
 
 
 
 
 
 
373
 
374
  $('.images_set').die().live('click', function(e) {
375
  e.preventDefault();
@@ -385,7 +408,7 @@ $conf = Mage::getStoreConfig('axzoom_options');
385
  "id_product" : <?php echo $productId ?>,
386
  "id_360set" : id}, afterGetImages
387
  );
388
-
389
  $('#id_360set').val(id);
390
  $('#product-images360').show();
391
  });
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360-sets.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
52
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAA8klEQVQoU43MoUsEYRAF8Mclg4hsMB0iF8QgIqZDLi5m8yEGEf8CwyFWg4gYRIxy0b/gohhNJrkkKmK6tLret9/OzPsMG2TXvcM3ZYb3Y4D/Z9y0Z5Ni9PBvvcChXha7dfS+Wkf2GIKdFRc3K+Bz1h4YGGR3AmBXB1ns24Br+U46p6t6VwHSB5IZvWUIgV+yl7ZqgJ4wybfdop7T/FoJhK70ARvqKQC8NuxNj2s+2JNeAMCoYR/aqwF6RCf7fkNvaNlyCUjMF14n83pFYaAxSPkD4GPZcetAGo1Xvpt8p+VbmJy8Tc9RtjSFyIENXDQF/OYHw2GYt0Xo/PcAAAAASUVORK5CYII=);
53
  background-repeat: no-repeat;
54
  }
55
+ #imageTableSetsRows .crop_set>span {
56
+ padding-left: 20px;
57
+ background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAABX0lEQVQYGXXBPyiEcRgH8O/wJunSdRkvGSSZDDJckmSQZDCYrhskg0xGm3RJBoMMMkoGww2XJBkMMhh06XqTZJDOFV3e+/e+v+d5fo97ryuu+HzwmxnmIzOFdkWnHEeDF6WUPKragpkvOvjB11b5lLN8SatmQQpmkZYoy+laXzniT5YjkJKq/arNoOGtg47R5I/QgXyqSh5mVIr+OB9wxk9UBziNFi9uVdUSAHbRUOvlPb6nja8uk/QTtCJPfCEuJQGwixazxhl5VbXKx9Ue3g8mEGIXTZU+W+c0bVm1pXoc4Nx7B0LsAl6E1ilL23REh3xVjgG1QckgxLtW+ITOg2k00R7ngkmvm3doCSG5UBXXi6KFbypDtCEFVZNCqBoL5mhZHoIxNHgxzgP1Xnmz1WACP/wBvqXND8ckedfM8mW9P+eg3YdDm/JsRV5ov9SJv8mdqpVSDP8xY3xGK2jzDTL14vqSI1apAAAAAElFTkSuQmCC);
58
+ background-repeat: no-repeat;
59
+ }
60
 
61
  #file360-add-button span{
62
  padding-left: 20px;
181
  <th><?php echo $this->__('Cover Image'); ?></th>
182
  <th><?php echo $this->__('Name'); ?></th>
183
  <th><?php echo $this->__('Active'); ?></th>
184
+ <th class="last" style="width:400px;"><?php echo $this->__('Actions'); ?></th>
185
  </tr>
186
  </thead>
187
  <tbody id="imageTableSetsRows">
206
  <button class="delete_set scalable delete"><span><?php echo $this->__('Delete'); ?></span></button>
207
  <button class="images_set scalable"><span><?php echo $this->__('Images'); ?></span></button>
208
  <button class="scalable preview_set hide_class"><span><?php echo $this->__('Preview'); ?></span></button>
209
+ <button class="crop_set scalable"><span><?php echo $this->__('360° Product Tour'); ?></span></button>
210
  </td>
211
  </tr>
212
  </table>
328
  imageLine360(data.images[i]['id'], data.images[i]['thumb'], '', "", "", "");
329
  };
330
 
331
+ var pppPos = $('#product-images360').offset();
332
+
333
+ if ($.scrollTo && pppPos && pppPos.top){
334
+ $.scrollTo(pppPos.top - 50);
335
+ }
336
+
337
  }
338
 
339
 
382
 
383
  $.openAjaxZoomInFancyBox({href: '<?php echo Mage::getBaseUrl('js') ?>axzoom/preview/preview.php?3dDir=<?php echo Mage::getModel('axzoom/ax360')->rootFolder() ?>js/axzoom/pic/360/' + id_product + '/' + id360+'&group='+id360+'&id='+id360set, iframe: true});
384
  });
385
+
386
+
387
+ $('.crop_set').die().live('click', function(e) {
388
+ e.preventDefault();
389
+
390
+ var id360 = $(this).parent().parent().data('group');
391
+ var id360set = $(this).parent().parent().attr('id');
392
+
393
+ $.openAjaxZoomInFancyBox({href: '<?php echo Mage::getBaseUrl('js') ?>axzoom/preview/cropeditor.php?&3dDir=<?php echo Mage::getModel('axzoom/ax360')->rootFolder() ?>js/axzoom/pic/360/' + id_product + '/' + id360+'&group='+id360+'&id='+id360set+'&url_get=<?php echo Mage::helper("adminhtml")->getUrl("adminhtml/axzoom/getCropJson") ?>&url_set=<?php echo Mage::helper("adminhtml")->getUrl("adminhtml/axzoom/setCropJson") ?>&form_key=<?php echo $this->getFormKey();?>', iframe: true, scrolling: 1});
394
+
395
+ });
396
 
397
  $('.images_set').die().live('click', function(e) {
398
  e.preventDefault();
408
  "id_product" : <?php echo $productId ?>,
409
  "id_360set" : id}, afterGetImages
410
  );
411
+
412
  $('#id_360set').val(id);
413
  $('#product-images360').show();
414
  });
app/design/adminhtml/default/default/template/axzoom/tab360-settings.phtml CHANGED
@@ -1,16 +1,16 @@
1
  <!--
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360-settings.phtml
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.9
7
- * Date: 2015-12-01
8
- * Review: 2015-12-01
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
  -->
1
  <!--
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360-settings.phtml
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
  -->
app/design/adminhtml/default/default/template/axzoom/tab360.phtml CHANGED
@@ -3,9 +3,9 @@
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.12
7
- * Date: 2016-03-02
8
- * Review: 2016-03-02
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/tab360.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
app/design/adminhtml/default/default/template/axzoom/uploader.phtml CHANGED
@@ -3,9 +3,9 @@
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/uploader.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.1.4
7
- * Date: 2016-04-22
8
- * Review: 2016-04-22
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/adminhtml/default/default/template/axzoom/uploader.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
app/design/frontend/base/default/layout/axzoom.xml CHANGED
@@ -2,16 +2,16 @@
2
  <!--
3
  /**
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/frontend/base/default/layout/axzoom.xml
5
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
- * Version: 1.0.4
8
- * Date: 2015-10-28
9
- * Review: 2015-10-28
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
13
  * @author AJAX-ZOOM <support@ajax-zoom.com>
14
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
15
  * @license http://www.ajax-zoom.com/index.php?cid=download
16
  */
17
  -->
@@ -50,6 +50,16 @@
50
  <action ifconfig="axzoom_options/mouseOverZoomParam/spinner" method="addJs">
51
  <script>axzoom/axZm/plugins/spin/spin.min.js</script>
52
  </action>
 
 
 
 
 
 
 
 
 
 
53
  <action method="addItem">
54
  <type>js_css</type>
55
  <name>axzoom/axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.css</name>
2
  <!--
3
  /**
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/frontend/base/default/layout/axzoom.xml
5
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
+ * Version: 1.2.0
8
+ * Date: 2016-05-07
9
+ * Review: 2016-05-07
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
13
  * @author AJAX-ZOOM <support@ajax-zoom.com>
14
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
15
  * @license http://www.ajax-zoom.com/index.php?cid=download
16
  */
17
  -->
50
  <action ifconfig="axzoom_options/mouseOverZoomParam/spinner" method="addJs">
51
  <script>axzoom/axZm/plugins/spin/spin.min.js</script>
52
  </action>
53
+ <action method="addItem">
54
+ <type>js_css</type>
55
+ <name>axzoom/axZm/extensions/jquery.axZm.expButton.css</name>
56
+ </action>
57
+ <action method="addJs">
58
+ <script>axzoom/axZm/extensions/jquery.axZm.expButton.js</script>
59
+ </action>
60
+ <action method="addJs">
61
+ <script>axzoom/axZm/extensions/jquery.axZm.imageCropLoad.js</script>
62
+ </action>
63
  <action method="addItem">
64
  <type>js_css</type>
65
  <name>axzoom/axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.css</name>
app/design/frontend/base/default/template/ax_zoom/catalog/product/view/media.phtml CHANGED
@@ -3,14 +3,14 @@
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/frontend/base/default/template/ax_zoom/catalog/product/view/media.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.10
7
- * Date: 2016-01-09
8
- * Review: 2016-01-09
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
@@ -145,7 +145,7 @@ if ($product->isConfigurable()) {
145
 
146
  $pairs = array();
147
  $labels = array();
148
-
149
  foreach ($attributesCodes as $code) { // $code is e.g. color or size
150
  $pairs[] = $mapAttributesCodeId[$code] . ':' . $data[$code]; // generate pairs of attribures
151
  $attr = $product->getResource()->getAttribute($code);
@@ -157,7 +157,7 @@ if ($product->isConfigurable()) {
157
  // This would return language specific values
158
  $option_label = $attr->getSource()->getOptionText($data[$code]);
159
  }
160
-
161
  array_push($labels, trim($option_label));
162
  }
163
 
@@ -201,7 +201,7 @@ if ($product->isConfigurable()) {
201
  } else {
202
  $res[$idx]['images'] = new stdClass();
203
  }
204
-
205
  $extraGroups = empty($map[$data['entity_id']]) ? array() : $map[$data['entity_id']];
206
  $res[$idx]['images360'] = Mage::helper('core')->jsonDecode(str_replace("'", '"', $ax->images360Json($data['entity_id'], $extraGroups)));
207
  }
@@ -223,7 +223,7 @@ if (count($this->getGalleryImages()) > 0) {
223
  foreach ($this->getGalleryImages() as $image) {
224
 
225
  $check_image = false;
226
-
227
  if (method_exists($this, 'isGalleryImageVisible')) {
228
  $check_image = $this->isGalleryImageVisible($image);
229
  } else {
@@ -254,8 +254,15 @@ echo $this->getChildHtml('after');
254
 
255
  <!-- AJAX-ZOOM js block -->
256
  <script type="text/javascript">
 
 
 
 
 
 
 
257
  ;(function($){
258
-
259
  // Load plugin settings
260
  <?php
261
  $exclParArray = array('LICENSE_LIC');
@@ -264,17 +271,17 @@ echo $this->getChildHtml('after');
264
  $groupKey = strtoupper($group . '_' . $key);
265
  if (!in_array($groupKey, $exclParArray)){
266
  if ($value == 'false' || $value == 'true' || $value == 'null' || is_numeric($value) || substr(trim($value), 0, 1) == '{' || substr(trim($value), 0, 1) == '['){
267
- echo ' var AJAXZOOM_' . $groupKey . ' = ' . $value . '; ' . "\n";
268
  } else {
269
- echo ' var AJAXZOOM_' . $groupKey . ' = "' . str_replace('"', '&#34;', $value) . '"; ' . "\n";
270
  }
271
  }
272
  }
273
  }
274
  ?>
275
-
276
  var AXZMPATH = '<?php echo $axZmPath; ?>';
277
-
278
  // Colors / attributes
279
  var axAssociated = jQuery.parseJSON('<?php echo Mage::helper('core')->jsonEncode($res); ?>');
280
 
@@ -284,18 +291,18 @@ echo $this->getChildHtml('after');
284
  <?php } else { ?>
285
  var IMAGES_JSON = {<?php echo implode(',', $imagesJson);?>};
286
  <?php } ?>
287
-
288
  // All images
289
  var IMAGES_ALL_JSON = <?php echo $ax->imagesJsonAll($imagesJsonAll);?>;
290
 
291
  // Default 360
292
  var IMAGES_360_JSON = <?php echo $images360Json; ?>;
293
-
294
  // Need that later for not reloading if images are the same
295
  var IMAGES_AND_360_LOADED = JSON.stringify({
296
  images: jQuery.extend(true, {}, IMAGES_JSON),
297
  images360: jQuery.extend(true, {}, IMAGES_360_JSON)
298
- });
299
 
300
  // AJAX-ZOOM mouseover and other parameters
301
  var zoomParams = {
@@ -314,6 +321,12 @@ echo $this->getChildHtml('after');
314
  qualityThumb: AJAXZOOM_MAIN_QUALITYTHUMB,
315
  quality: AJAXZOOM_MAIN_QUALITY,
316
  qualityZoom: AJAXZOOM_MAIN_QUALITYZOOM,
 
 
 
 
 
 
317
  images: IMAGES_JSON,
318
  firstImageToLoad: AJAXZOOM_MAIN_FIRSTIMAGETOLOAD,
319
  images360: IMAGES_360_JSON,
@@ -429,7 +442,7 @@ echo $this->getChildHtml('after');
429
  spinnerParam: AJAXZOOM_MOUSEOVERZOOMPARAM_SPINNERPARAM
430
  }
431
  };
432
-
433
  // Swatches
434
  var resetAxZoom = function() {
435
  if (JSON.stringify({images: IMAGES_JSON, images360: IMAGES_360_JSON}) == IMAGES_AND_360_LOADED) {
3
  * Module: jQuery AJAX-ZOOM for Magento, /app/design/frontend/base/default/template/ax_zoom/catalog/product/view/media.phtml
4
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
145
 
146
  $pairs = array();
147
  $labels = array();
148
+
149
  foreach ($attributesCodes as $code) { // $code is e.g. color or size
150
  $pairs[] = $mapAttributesCodeId[$code] . ':' . $data[$code]; // generate pairs of attribures
151
  $attr = $product->getResource()->getAttribute($code);
157
  // This would return language specific values
158
  $option_label = $attr->getSource()->getOptionText($data[$code]);
159
  }
160
+
161
  array_push($labels, trim($option_label));
162
  }
163
 
201
  } else {
202
  $res[$idx]['images'] = new stdClass();
203
  }
204
+
205
  $extraGroups = empty($map[$data['entity_id']]) ? array() : $map[$data['entity_id']];
206
  $res[$idx]['images360'] = Mage::helper('core')->jsonDecode(str_replace("'", '"', $ax->images360Json($data['entity_id'], $extraGroups)));
207
  }
223
  foreach ($this->getGalleryImages() as $image) {
224
 
225
  $check_image = false;
226
+
227
  if (method_exists($this, 'isGalleryImageVisible')) {
228
  $check_image = $this->isGalleryImageVisible($image);
229
  } else {
254
 
255
  <!-- AJAX-ZOOM js block -->
256
  <script type="text/javascript">
257
+ /*!
258
+ * Module: jQuery AJAX-ZOOM for Magento
259
+ * Info: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
260
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
261
+ * @license http://www.ajax-zoom.com/index.php?cid=download
262
+ */
263
+
264
  ;(function($){
265
+
266
  // Load plugin settings
267
  <?php
268
  $exclParArray = array('LICENSE_LIC');
271
  $groupKey = strtoupper($group . '_' . $key);
272
  if (!in_array($groupKey, $exclParArray)){
273
  if ($value == 'false' || $value == 'true' || $value == 'null' || is_numeric($value) || substr(trim($value), 0, 1) == '{' || substr(trim($value), 0, 1) == '['){
274
+ echo ' var AJAXZOOM_' . $groupKey . ' = ' . $value . '; ';// . "\n";
275
  } else {
276
+ echo ' var AJAXZOOM_' . $groupKey . ' = "' . str_replace('"', '&#34;', $value) . '"; ';// . "\n";
277
  }
278
  }
279
  }
280
  }
281
  ?>
282
+
283
  var AXZMPATH = '<?php echo $axZmPath; ?>';
284
+
285
  // Colors / attributes
286
  var axAssociated = jQuery.parseJSON('<?php echo Mage::helper('core')->jsonEncode($res); ?>');
287
 
291
  <?php } else { ?>
292
  var IMAGES_JSON = {<?php echo implode(',', $imagesJson);?>};
293
  <?php } ?>
294
+
295
  // All images
296
  var IMAGES_ALL_JSON = <?php echo $ax->imagesJsonAll($imagesJsonAll);?>;
297
 
298
  // Default 360
299
  var IMAGES_360_JSON = <?php echo $images360Json; ?>;
300
+
301
  // Need that later for not reloading if images are the same
302
  var IMAGES_AND_360_LOADED = JSON.stringify({
303
  images: jQuery.extend(true, {}, IMAGES_JSON),
304
  images360: jQuery.extend(true, {}, IMAGES_360_JSON)
305
+ });
306
 
307
  // AJAX-ZOOM mouseover and other parameters
308
  var zoomParams = {
321
  qualityThumb: AJAXZOOM_MAIN_QUALITYTHUMB,
322
  quality: AJAXZOOM_MAIN_QUALITY,
323
  qualityZoom: AJAXZOOM_MAIN_QUALITYZOOM,
324
+ cropAxZmThumbSliderParam: AJAXZOOM_PRODUCTTOUR_CROPAXZMTHUMBSLIDERPARAM,
325
+ cropSliderPosition: AJAXZOOM_PRODUCTTOUR_CROPSLIDERPOSITION,
326
+ cropSliderDimension: AJAXZOOM_PRODUCTTOUR_CROPSLIDERDIMENSION,
327
+ cropSliderThumbAutoSize: AJAXZOOM_PRODUCTTOUR_CROPSLIDERTHUMBAUTOSIZE,
328
+ cropSliderThumbAutoMargin: AJAXZOOM_PRODUCTTOUR_CROPSLIDERTHUMBAUTOMARGIN,
329
+ cropSliderThumbDescr: AJAXZOOM_PRODUCTTOUR_CROPSLIDERTHUMBDESCR,
330
  images: IMAGES_JSON,
331
  firstImageToLoad: AJAXZOOM_MAIN_FIRSTIMAGETOLOAD,
332
  images360: IMAGES_360_JSON,
442
  spinnerParam: AJAXZOOM_MOUSEOVERZOOMPARAM_SPINNERPARAM
443
  }
444
  };
445
+
446
  // Swatches
447
  var resetAxZoom = function() {
448
  if (JSON.stringify({images: IMAGES_JSON, images360: IMAGES_360_JSON}) == IMAGES_AND_360_LOADED) {
app/etc/modules/Ax_Zoom.xml CHANGED
@@ -4,9 +4,9 @@
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/etc/modules/Ax_Zoom.xml
5
  * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
- * Version: 1.0.9
8
- * Date: 2015-12-01
9
- * Review: 2015-12-01
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
4
  * Module: jQuery AJAX-ZOOM for Magento, /app/etc/modules/Ax_Zoom.xml
5
  * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
6
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
7
+ * Version: 1.2.0
8
+ * Date: 2016-05-07
9
+ * Review: 2016-05-07
10
  * URL: http://www.ajax-zoom.com
11
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
12
  *
js/axzoom/check_fallback.js CHANGED
@@ -1,15 +1,15 @@
1
  /**
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/check_fallback.js
3
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
- * Version: 1.0.4
6
- * Date: 2015-10-09
7
- * Review: 2015-10-09
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
11
  * @author AJAX-ZOOM <support@ajax-zoom.com>
12
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
13
  * @license http://www.ajax-zoom.com/index.php?cid=download
14
  */
15
 
@@ -21,8 +21,9 @@ if (!jQuery.isFunction(jQuery.mouseOverZoomInit)){
21
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/skins/default/jquery.axZm.thumbSlider.css' %3E"));
22
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.css' %3E"));
23
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/mods/jquery.axZm.mouseOverZoomMagento.4.css' %3E"));
 
24
 
25
- if (!jQuery.isFunction(jQuery.fancybox)){
26
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.css' %3E"));
27
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.pack.js'%3E%3C/script%3E"));
28
  }
@@ -31,8 +32,13 @@ if (!jQuery.isFunction(jQuery.mouseOverZoomInit)){
31
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/lib/jquery.mousewheel.min.js'%3E%3C/script%3E"));
32
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/lib/jquery.axZm.thumbSlider.js'%3E%3C/script%3E"));
33
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/spin/spin.min.js'%3E%3C/script%3E"));
 
 
 
 
34
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.js'%3E%3C/script%3E"));
35
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoomInit.4.js'%3E%3C/script%3E"));
 
36
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/jquery.axZm.openAjaxZoomInFancyBox.js'%3E%3C/script%3E"));
37
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/JSON/jquery.json-2.3.min.js'%3E%3C/script%3E"));
38
  }
1
  /**
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/check_fallback.js
3
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
+ * Version: 1.2.0
6
+ * Date: 2016-05-07
7
+ * Review: 2016-05-07
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
11
  * @author AJAX-ZOOM <support@ajax-zoom.com>
12
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
13
  * @license http://www.ajax-zoom.com/index.php?cid=download
14
  */
15
 
21
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/skins/default/jquery.axZm.thumbSlider.css' %3E"));
22
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.css' %3E"));
23
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/mods/jquery.axZm.mouseOverZoomMagento.4.css' %3E"));
24
+ document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/extensions/jquery.axZm.expButton.css' %3E"));
25
 
26
+ if (!jQuery.isFunction(jQuery.fancybox)){
27
  document.writeln(unescape("%3Clink rel='stylesheet' type='text/css' href='"+mageAzJsUrl+"axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.css' %3E"));
28
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.pack.js'%3E%3C/script%3E"));
29
  }
32
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/lib/jquery.mousewheel.min.js'%3E%3C/script%3E"));
33
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmThumbSlider/lib/jquery.axZm.thumbSlider.js'%3E%3C/script%3E"));
34
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/spin/spin.min.js'%3E%3C/script%3E"));
35
+
36
+ document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/jquery.axZm.expButton.js'%3E%3C/script%3E"));
37
+ document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/jquery.axZm.imageCropLoad.js'%3E%3C/script%3E"));
38
+
39
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoom.4.js'%3E%3C/script%3E"));
40
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/axZmMouseOverZoom/jquery.axZm.mouseOverZoomInit.4.js'%3E%3C/script%3E"));
41
+
42
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/extensions/jquery.axZm.openAjaxZoomInFancyBox.js'%3E%3C/script%3E"));
43
  document.writeln(unescape("%3Cscript type='text/javascript' src='"+mageAzJsUrl+"axZm/plugins/JSON/jquery.json-2.3.min.js'%3E%3C/script%3E"));
44
  }
js/axzoom/check_jquery.js CHANGED
@@ -1,15 +1,15 @@
1
  /**
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/check_jquery.js
3
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
- * Version: 1.0.0
6
- * Date: 2015-09-08
7
- * Review: 2015-09-08
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
11
  * @author AJAX-ZOOM <support@ajax-zoom.com>
12
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
13
  * @license http://www.ajax-zoom.com/index.php?cid=download
14
  */
15
 
1
  /**
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/check_jquery.js
3
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
+ * Version: 1.2.0
6
+ * Date: 2016-05-07
7
+ * Review: 2016-05-07
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
11
  * @author AJAX-ZOOM <support@ajax-zoom.com>
12
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
13
  * @license http://www.ajax-zoom.com/index.php?cid=download
14
  */
15
 
js/axzoom/check_jquery_admin.js CHANGED
@@ -2,9 +2,9 @@
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/check_jquery_admin.php
3
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
- * Version: 1.1.1
6
- * Date: 2016-03-16
7
- * Review: 2015-03-16
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
2
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/check_jquery_admin.php
3
  * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
4
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
5
+ * Version: 1.2.0
6
+ * Date: 2016-05-07
7
+ * Review: 2016-05-07
8
  * URL: http://www.ajax-zoom.com
9
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
10
  *
js/axzoom/lic.php CHANGED
@@ -1,20 +1,21 @@
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/lic.php
4
- * Copyright: Copyright (c) 2010-2015 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
- * Version: 1.0.0
7
- * Date: 2015-09-08
8
- * Review: 2015-09-08
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
- * @copyright 2010-2015 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
17
  $obj = SimpleXML_Load_String(implode('', file(dirname(dirname(dirname(__FILE__))).'/app/etc/local.xml')));
 
18
  $mysqli = mysqli_connect(preg_replace('/:[0-9]{1,}$/', '', (string)$obj->global->resources->default_setup->connection->host), (string)$obj->global->resources->default_setup->connection->username, (string)$obj->global->resources->default_setup->connection->password, (string)$obj->global->resources->default_setup->connection->dbname);
19
 
20
  $data_query = mysqli_query($mysqli, "SELECT `value` FROM `" . (string)$obj->global->resources->db->table_prefix . "core_config_data` WHERE `path` = 'axzoom_options/license/lic'");
1
  <?php
2
  /**
3
  * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/lic.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
  * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
  * URL: http://www.ajax-zoom.com
10
  * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
  *
12
  * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
  * @license http://www.ajax-zoom.com/index.php?cid=download
15
  */
16
 
17
  $obj = SimpleXML_Load_String(implode('', file(dirname(dirname(dirname(__FILE__))).'/app/etc/local.xml')));
18
+ error_reporting(0);
19
  $mysqli = mysqli_connect(preg_replace('/:[0-9]{1,}$/', '', (string)$obj->global->resources->default_setup->connection->host), (string)$obj->global->resources->default_setup->connection->username, (string)$obj->global->resources->default_setup->connection->password, (string)$obj->global->resources->default_setup->connection->dbname);
20
 
21
  $data_query = mysqli_query($mysqli, "SELECT `value` FROM `" . (string)$obj->global->resources->db->table_prefix . "core_config_data` WHERE `path` = 'axzoom_options/license/lic'");
js/axzoom/preview/cropeditor.php ADDED
@@ -0,0 +1,1324 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Module: jQuery AJAX-ZOOM for Magento, /jss/axzoom/preview.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
+ * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
+ * URL: http://www.ajax-zoom.com
10
+ * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
+ *
12
+ * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
+ * @license http://www.ajax-zoom.com/index.php?cid=download
15
+ */
16
+
17
+ require_once('../../../app/Mage.php');
18
+ umask(0);
19
+ Mage::app();
20
+
21
+ /* Set to true to remove certain things not needed if included in shops / cms */
22
+ $axzm_cms_mode = true;
23
+ $first_load360_dir = Mage::app()->getRequest()->getParam('3dDir');
24
+ $default_thumb_size = $axzm_cms_mode ? 140 : 180;
25
+ $player_responsive = $axzm_cms_mode ? true : false;
26
+ $langugaes_array = array();
27
+
28
+ // Stores languages
29
+ $store_collection = Mage::getModel('core/store')->getCollection();
30
+ foreach($store_collection as $store){
31
+ $storelang = Mage::getStoreConfig('general/locale/code', $store->getId());
32
+ array_push($langugaes_array, substr($storelang, 0, 2));
33
+ }
34
+
35
+ $langugaes_array = array_unique($langugaes_array);
36
+ $langugaes_array = json_encode($langugaes_array);
37
+
38
+ /* If used with a CMS / Shop, the dynamically generated url for controller */
39
+ $id_360 = Mage::app()->getRequest()->getParam('group');
40
+ $id_360set = Mage::app()->getRequest()->getParam('id');
41
+ $first_load_crop_json = Mage::app()->getRequest()->getParam('url_get')."?id_360set=$id_360set&id_360=$id_360";
42
+ $save_crop_json = Mage::app()->getRequest()->getParam('url_set')."?id_360set=$id_360set&id_360=$id_360&form_key=".Mage::app()->getRequest()->getParam('form_key');
43
+ ?>
44
+
45
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
46
+ <html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/">
47
+ <head>
48
+ <title>jCrop AJAX-ZOOM zoomTo and crop on large images</title>
49
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
50
+ <meta http-equiv="imagetoolbar" content="no">
51
+
52
+ <?php
53
+ if (!$axzm_cms_mode)
54
+ {
55
+ ?>
56
+ <meta property="og:type" content="article"/>
57
+ <meta property="og:title" content="jCrop AJAX-ZOOM"/>
58
+ <meta property="og:description" content="Crop high resolution images with jCrop and AJAX-ZOOM."/>
59
+ <meta name="description" content="Crop high resolution images with jCrop and AJAX-ZOOM." />
60
+ <meta property="og:image" content="http://www.ajax-zoom.com/pic/layout/image-zoom_35.jpg"/>
61
+ <?php
62
+ }
63
+ ?>
64
+
65
+ <?php
66
+ if (strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone'))
67
+ echo '<meta name="viewport" content="width=device-width, minimum-scale=0.5, maximum-scale=0.5, user-scalable=no">';
68
+ else
69
+ echo '<meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1, user-scalable=no">';
70
+ ?>
71
+ <!-- jQuery core -->
72
+ <script type="text/javascript" src="../axZm/plugins/jquery-1.8.3.min.js"></script>
73
+
74
+ <!-- AJAX-ZOOM -->
75
+ <link rel="stylesheet" href="../axZm/axZm.css" type="text/css" media="screen">
76
+ <script type="text/javascript" src="../axZm/jquery.axZm.js"></script>
77
+
78
+ <!-- jCrop (external jQuery plugin utilized for this crop editor) -->
79
+ <link type="text/css" href="../axZm/plugins/jCrop/css/jquery.Jcrop.css" rel="stylesheet" />
80
+ <script type="text/javascript" src="../axZm/plugins/jCrop/js/jquery.Jcrop.js"></script>
81
+
82
+ <!-- Include mousewheel script -->
83
+ <script type="text/javascript" src="../axZm/extensions/axZmThumbSlider/lib/jquery.mousewheel.min.js"></script>
84
+
85
+ <!-- Only needed for the 360 hotspot example where fancybox is applied for one hotspot click event -->
86
+ <link href="../axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.zIndex.css" type="text/css" media="screen" rel="stylesheet">
87
+ <script type="text/javascript" src="../axZm/plugins/demo/jquery.fancybox/jquery.fancybox-1.3.4.js"></script>
88
+
89
+ <!-- Include thumbSlider CSS && JS. -->
90
+ <link rel="stylesheet" type="text/css" href="../axZm/extensions/axZmThumbSlider/skins/default/jquery.axZm.thumbSlider.css" />
91
+ <script type="text/javascript" src="../axZm/extensions/axZmThumbSlider/lib/jquery.axZm.thumbSlider.js"></script>
92
+
93
+ <!-- Set of functions for this image cropping tool -->
94
+ <link rel="stylesheet" type="text/css" href="../axZm/extensions/jquery.axZm.imageCropEditor.css">
95
+ <script type="text/javascript" src="../axZm/extensions/jquery.axZm.imageCropEditor.js"></script>
96
+
97
+ <!-- A small function to add title button which will expend to full description -->
98
+ <link rel="stylesheet" type="text/css" href="../axZm/extensions/jquery.axZm.expButton.css">
99
+ <script type="text/javascript" src="../axZm/extensions/jquery.axZm.expButton.js"></script>
100
+
101
+ <!-- Some other JavaScripts for the editor -->
102
+ <script type="text/javascript" src="../axZm/plugins/JSON/jquery.json-2.3.min.js"></script>
103
+ <script type="text/javascript" src="../axZm/plugins/js-beautify/beautify-all.min.js"></script>
104
+ <script type="text/javascript" src="../axZm/plugins/jquery.scrollTo.min.js"></script>
105
+
106
+ <!-- Because of "sortable" used here, only needed for the editor! -->
107
+ <link href="../axZm/plugins/jquery.ui/themes/ajax-zoom/jquery-ui.css" type="text/css" rel="stylesheet" />
108
+ <script type="text/javascript" src="../axZm/plugins/jquery.ui/js/jquery-ui-1.8.24.custom.min.js"></script>
109
+
110
+ <!-- CLEditor - WYSIWYG Editor (external jQuery plugin) -->
111
+ <link rel="stylesheet" type="text/css" href="../axZm/plugins/CLEditor/jquery.cleditor.css" />
112
+ <script type="text/javascript" src="../axZm/plugins/CLEditor/jquery.cleditor.min.js"></script>
113
+ <script type="text/javascript" src="../axZm/plugins/CLEditor/jquery.cleditor.table.min.js"></script>
114
+
115
+ <?php
116
+ if (!$axzm_cms_mode)
117
+ {
118
+ ?>
119
+ <!-- Javascript to style the syntax, not needed! -->
120
+ <link href="../axZm/plugins/demo/syntaxhighlighter/styles/shCore.css" type="text/css" rel="stylesheet" />
121
+ <link href="../axZm/plugins/demo/syntaxhighlighter/styles/shThemeCustom.css" type="text/css" rel="stylesheet" />
122
+ <style type="text/css">.syntaxhighlighter .line .number code{width: auto !important;} </style>
123
+ <script type="text/javascript" src="../axZm/plugins/demo/syntaxhighlighter/src/shCore.js"></script>
124
+ <script type="text/javascript" src="../axZm/plugins/demo/syntaxhighlighter/scripts/shBrushJScript.js"></script>
125
+ <script type="text/javascript" src="../axZm/plugins/demo/syntaxhighlighter/scripts/shBrushPhp.js"></script>
126
+ <script type="text/javascript" src="../axZm/plugins/demo/syntaxhighlighter/scripts/shBrushCss.js"></script>
127
+ <script type="text/javascript" src="../axZm/plugins/demo/syntaxhighlighter/scripts/shBrushXml.js"></script>
128
+ <script type="text/javascript">SyntaxHighlighter.all();</script>
129
+ <?php
130
+ }
131
+ ?>
132
+
133
+ <script type="text/javascript">
134
+ <?php
135
+ echo 'jQuery.aZcropEd.langugaesArray = '.$langugaes_array.'; ';
136
+ echo 'jQuery.aZcropEd.playerResponsive = '.($player_responsive ? 'true' : 'false').'; ';
137
+
138
+ if ($axzm_cms_mode)
139
+ echo 'jQuery.aZcropEd.errors = false;';
140
+ ?>
141
+ </script>
142
+
143
+ </head>
144
+ <body>
145
+
146
+ <?php
147
+ if (!$axzm_cms_mode)
148
+ include ('navi.php');
149
+ ?>
150
+
151
+ <div id="outerWrap" style="width: 821px; margin: 0 auto;">
152
+ <div id="playerWrap" style="width: 821px;">
153
+ <?php
154
+ if (!$axzm_cms_mode)
155
+ {
156
+ ?>
157
+ <h2>Crop large images or make thumbnails with AJAX-ZOOM and "jCrop".
158
+ Generate zoomTo gallery with preview thumbs for 2D/ 360°/ 3D.
159
+ </h2>
160
+ <?php
161
+ }
162
+ else
163
+ {
164
+ ?>
165
+ <div style="height: 35px;"></div>
166
+ <?php
167
+ }
168
+ ?>
169
+ <div id="playerInnerWrap" style="min-height: 538px;">
170
+ <div id="abc" style="width: 721px;<?php echo $player_responsive ? 'height: 721px' : ''; ?>">
171
+ <!-- Content inside target will be removed -->
172
+ <div style="padding: 20px">Loading, please wait...</div>
173
+ </div>
174
+ <div id='testCustomNavi' class="ui-widget-header" style="width: 720px;"></div>
175
+
176
+ <!-- Thumb slider with croped images -->
177
+ <div id="cropSliderWrap">
178
+ <div id="cropSlider">
179
+ <ul></ul>
180
+ </div>
181
+ </div>
182
+ </div>
183
+ <div id="marginAfter" style="display: none; margin-bottom: 300px;"></div>
184
+ </div>
185
+
186
+ <!-- Tabs wrapper -->
187
+ <div id="aZcR_tabs">
188
+ <!-- Tab titles -->
189
+ <ul>
190
+ <li><a href="#aZcR_tabs-about">About</a></li>
191
+ <li><a href="#aZcR_tabs-sel">Crop settings</a></li>
192
+ <li><a href="#aZcR_tabs-crops">Cropped images</a></li>
193
+ <li><a href="#aZcR_tabs-descr">Description / Settings</a></li>
194
+ <li><a href="#aZcR_tabs-import"><?php echo !$axzm_cms_mode ? 'Import' : 'Save'; ?></a></li>
195
+ <?php
196
+ if (!$axzm_cms_mode)
197
+ {
198
+ ?>
199
+ <li><a href="#aZcR_tabs-load">Load content</a></li>
200
+
201
+ <?php
202
+ }
203
+ ?>
204
+ </ul>
205
+
206
+ <!-- About -->
207
+ <div id="aZcR_tabs-about">
208
+ <?php
209
+ if (!$axzm_cms_mode)
210
+ {
211
+ ?>
212
+ <div class="legend">About AJAX-ZOOM crop editor [Last updated: 2016-04-25]</div>
213
+ <p>With this tool you can easily create several crops from 2D images / galleries,
214
+ 360 spins or 3D multirow which are loaded into AJAX-ZOOM player.
215
+ Besides other thinkable purposes the goal here is to make a "crop gallery" placed outside of the AJAX-ZOOM player.
216
+ Clicking on the cropped thumb will zoom and for 360/3D spin & zoom to specified area of the image.
217
+ This is a really nice looking effect where the user is guided to the highlights of the product
218
+ by simply clicking on the thumbs in familiar manner.
219
+ </p>
220
+ <p>In the frontend where you will show this product tour to your customers AJAX-ZOOM can be
221
+ integrated into responsive layout, shown in a lightbox, fullscreen etc.
222
+ Also the cropped thumbs do not necessarily need to be loaded into the slider used here.
223
+ The simple JSON produced by this configurator gives enough information to place these cropped thumbs wherever on the page.
224
+ The basic functionality for the onclick / click events are AJAX-ZOOM API functions
225
+ <a href="http://www.ajax-zoom.com/index.php?cid=docs#api_zoomTo">jQuery.fn.axZm.zoomTo()</a> for plain 2D and
226
+ <a href="http://www.ajax-zoom.com/index.php?cid=docs#api_spinTo">jQuery.fn.axZm.spinTo()</a>
227
+ for 360 turn able objects. You can also test and see the very basics of this editor including zoomTo in
228
+ <a href="example10.php">example10.php</a>;
229
+ </p>
230
+
231
+ <?php
232
+ if (!$axzm_cms_mode && strstr($_SERVER['HTTP_HOST'], 'www.ajax-zoom.com'))
233
+ {
234
+ ?>
235
+ <div id="demoOtherContent">
236
+ <script type="text/javascript">
237
+ var loadDemo = {
238
+ 1: {<?php echo 'pathToLoad360: "'.$first_load360_dir.'", cropFileToLoad: "'.$first_load_crop_json.'"'; ?>},
239
+ 2: {pathToLoad2D: '/pic/zoom/furniture/furniture_005.jpg', cropFileToLoad: '../pic/cropJSON/furniture_test.json'},
240
+ 3: {pathToLoad2D: '/pic/zoom/animals', cropFileToLoad: '../pic/cropJSON/animals.json'},
241
+ 4: {pathToLoad360: '/pic/zoomVR/nike', cropFileToLoad: '../pic/cropJSON/nike_3d.json'},
242
+ 5: {pathToLoad360: '/pic/hotspots/bike360',
243
+ hotspotFileToLoad: '../pic/hotspotJS/bike.js',
244
+ cropFileToLoad: '../pic/cropJSON/bike360.json'
245
+ }
246
+ };
247
+ </script>
248
+ <div class="legend">Demo other content</div>
249
+ <p>Press on the buttons below to load a different content into the player.</p>
250
+ <input type="button" value="360 example"
251
+ onclick="jQuery.aZcropEd.changeAxZmContentPHP(loadDemo[1])">
252
+ <input type="button" value="2d example (single image)"
253
+ onclick="jQuery.aZcropEd.changeAxZmContentPHP(loadDemo[2])">
254
+ <input type="button" value="2d gallery (many images)"
255
+ onclick="jQuery.aZcropEd.changeAxZmContentPHP(loadDemo[3])">
256
+ <input type="button" value="3d example (multirow)"
257
+ onclick="jQuery.aZcropEd.changeAxZmContentPHP(loadDemo[4])">
258
+ <input type="button" value="360 with hotspots"
259
+ onclick="jQuery.aZcropEd.changeAxZmContentPHP(loadDemo[5])">
260
+ </div>
261
+ <?php
262
+ }
263
+ ?>
264
+ <?php
265
+ }
266
+ ?>
267
+
268
+ <div class="legend">How to</div>
269
+ <ol>
270
+ <li style="margin-bottom: 10px">
271
+ <img src="../axZm/icons/default/button_iPad_settings.png" width="25" style="vertical-align: middle; margin: 2px 5px 2px 0px">
272
+ Optionally hit crop settings button or
273
+ <a class="linkShowTab" href="javascript: void(0)" onclick="jQuery('#aZcR_tabs').tabs('select','#aZcR_tabs-sel');">
274
+ Crop settings</a>tab to adjust crop selector e.g. set aspect ratio and output parameters for the thumbnail.
275
+ </li>
276
+ <li style="margin-bottom: 10px">
277
+ <img src="../axZm/icons/default/button_iPad_jcrop.png" width="25" style="vertical-align: middle; margin: 2px 5px 2px 0px">
278
+ Hit the crop button to toggle crop and select region to crop.
279
+ </li>
280
+ <li style="margin-bottom: 10px">
281
+ <img src="../axZm/icons/default/button_iPad_fire.png" width="25" style="vertical-align: middle; margin: 2px 5px 2px 0px">
282
+ When ready hit the red "fire crop" button.
283
+ </li>
284
+ <li style="margin-bottom: 10px">
285
+ At the <a class="linkShowTab" href="javascript: void(0)"
286
+ onclick="jQuery('#aZcR_tabs').tabs('select','#aZcR_tabs-crops');">Cropped images</a> tab
287
+ you can view the crops in real size, delete and reorder the crops.
288
+ </li>
289
+ <li style="margin-bottom: 10px">
290
+ Optionally add thumb title, title and description to the crop regions in
291
+ <a class="linkShowTab" href="javascript: void(0)"
292
+ onclick="jQuery('#aZcR_tabs').tabs('select','#aZcR_tabs-descr');">Description / Settings</a> tab.
293
+ </li>
294
+ <li>
295
+ <a class="linkShowTab" href="javascript: void(0)"
296
+ onclick="jQuery('#aZcR_tabs').tabs('select','#aZcR_tabs-import');">Save</a>
297
+ <?php
298
+ if ($axzm_cms_mode)
299
+ {
300
+ ?>
301
+ the created setup.
302
+ <?php
303
+ }
304
+ else
305
+ {
306
+ ?>
307
+ the created setup e.g. in a JSON file to reproduce the work at some other frontend.
308
+ <?php
309
+ }
310
+ ?>
311
+ </li>
312
+ </ol>
313
+
314
+ <?php
315
+ if (!$axzm_cms_mode)
316
+ {
317
+ ?>
318
+
319
+ <div class="legend">"Clean" and derived examples</div>
320
+ <p>This file (example35.php) is the actual crop editor to define the copped thumbs and optionally descriptions.
321
+ It is supposed to be in some restricted area of your page. For showing the results and
322
+ integration of the player into your frontend please use one of the following "clean" examples as the starting point.
323
+ Also please be aware of that AJAX-ZOOM is highly configurable so you can change the look and feel of nearly everything
324
+ you could think of.
325
+ </p>
326
+
327
+ <div class="azMsg clearfix">
328
+ <a href="example35_clean.php">
329
+ <img src="http://www.ajax-zoom.com/pic/layout/image-zoom_35_clean.jpg"
330
+ width="100" align="left" style="margin-right: 10px; vertical-align: top; border: 2px groove #ffffff;">
331
+ </a>
332
+ <a href="example35_clean.php">example35_clean.php</a> basically has the same setup as this editor but without the toolbar under the player.
333
+ </div>
334
+ <div class="azMsg clearfix">
335
+ <a href="example35_clean_horizontal.php">
336
+ <img src="http://www.ajax-zoom.com/pic/layout/image-zoom_35_clean_horizontal.jpg"
337
+ width="100" align="left" style="margin-right: 10px; vertical-align: top; border: 2px groove #ffffff;">
338
+ </a>
339
+ If you want to have a horizontal gallery please check out <a href="example35_clean_horizontal.php">example35_clean_horizontal.php</a>
340
+ </div>
341
+ <div class="azMsg clearfix">
342
+ <a href="example35_responsive.php">
343
+ <img src="http://www.ajax-zoom.com/pic/layout/image-zoom_35_responsive.jpg"
344
+ width="100" align="left" style="margin-right: 10px; vertical-align: top; border: 2px groove #ffffff;">
345
+ </a>
346
+ For responsive integrations please use <a href="example35_responsive.php">example35_responsive.php</a>
347
+ </div>
348
+ <div class="azMsg clearfix">
349
+ <a href="example35_gallery.php">
350
+ <img src="http://www.ajax-zoom.com/pic/layout/image-zoom_35_gallery.jpg"
351
+ width="100" align="left" style="margin-right: 10px; vertical-align: top; border: 2px groove #ffffff;">
352
+ </a>
353
+ Of course the cropped thumbnails do not need to be loaded into the thumb slider.
354
+ In <a href="example35_gallery.php">example35_gallery.php</a> they are appended to some div.
355
+ </div>
356
+ <div class="azMsg clearfix">
357
+ <a href="example32_responsive.php">
358
+ <img src="http://www.ajax-zoom.com/pic/layout/image-zoom_32_responsive.jpg"
359
+ width="100" align="left" style="margin-right: 10px; vertical-align: top; border: 2px groove #ffffff;">
360
+ </a>
361
+ <a href="example32_responsive.php">example32_responsive.php</a>
362
+ optionally loads the results of this crop editor into mouseover zoom / 360 combination
363
+ and instantly attaches the crop gallery to the player. Very convenient for e-commerce.
364
+ </div>
365
+
366
+ <div class="azMsg"><a href="http://www.ajax-zoom.com/index.php?cid=contact">On request</a>
367
+ AJAX-ZOOM team will deliver to you exactly what you need as a different example or integrated into your page layout / html.
368
+ </div>
369
+
370
+ <div class="legend">The final code example</div>
371
+ The only difference between basic AJAX-ZOOM implementation / example
372
+ is that the JSON data produced by this editor is loaded in AJAX-ZOOM onLoad callback with jQuery.axZmImageCropLoad, see below at line 044;
373
+ Also in all derivative examples except <a href="example35_gallery.php">example35_gallery.php</a> we use jQuery.axZmThumbSlider to display
374
+ the thumbsnails; all codes for implementing can be also found in the example35_*.php files.
375
+ <div class="legend">JavaScript & CSS files in Head</div>
376
+ <?php
377
+ echo "<pre class='brush: html'>";
378
+ echo htmlspecialchars ('
379
+ <!-- jQuery core -->
380
+ <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
381
+
382
+ <!-- AJAX-ZOOM -->
383
+ <link rel="stylesheet" href="../axZm/axZm.css" type="text/css">
384
+ <script type="text/javascript" src="../axZm/jquery.axZm.js"></script>
385
+
386
+ <!-- Include axZm.thumbSlider plugin -->
387
+ <link rel="stylesheet" href="../axZm/extensions/axZmThumbSlider/skins/default/jquery.axZm.thumbSlider.css" type="text/css" />
388
+ <script type="text/javascript" src="../axZm/extensions/axZmThumbSlider/lib/jquery.mousewheel.min.js"></script>
389
+ <script type="text/javascript" src="../axZm/extensions/axZmThumbSlider/lib/jquery.axZm.thumbSlider.js"></script>
390
+
391
+ <!-- Include jquery.axZm.imageCropLoad.js -->
392
+ <script type="text/javascript" src="../axZm/extensions/jquery.axZm.imageCropLoad.js"></script>
393
+
394
+ <!-- A small function to add title button which will expend to full description -->
395
+ <link rel="stylesheet" href="../axZm/extensions/jquery.axZm.expButton.css" type="text/css" />
396
+ <script type="text/javascript" src="../axZm/extensions/jquery.axZm.expButton.js"></script>
397
+ ');
398
+ echo '</pre>';
399
+ ?>
400
+
401
+ <div class="legend">CSS</div>
402
+ <?php
403
+ echo '<pre class="brush: css">';
404
+ echo htmlspecialchars ('
405
+ #playerInnerWrap{
406
+ position: relative; border-left: 1px solid #AAAAAA; border-top: 1px solid #AAAAAA; border-bottom: 1px solid #AAAAAA;
407
+ }
408
+
409
+ #cropSliderWrap{
410
+ position: absolute; background-color: #FFFFFF; z-index: 11; width: 100px; height: 100%; right: 0px; top: 0px;
411
+ }
412
+
413
+ #cropSlider{
414
+ position: absolute; width: 100px; height: 100%;
415
+ }
416
+
417
+ #axZmFsSpaceRight div{
418
+ box-sizing: border-box;
419
+ }
420
+
421
+ ');
422
+ echo '</pre>';
423
+ ?>
424
+
425
+ <div class="legend">HTML markup (taken from <a href="http://www.ajax-zoom.com/examples/example35_clean.php">example35_clean.php</a>)</div>
426
+ <?php
427
+ echo "<pre class='brush: html'>";
428
+ echo htmlspecialchars ('
429
+ <div id="playerInnerWrap" style="min-height: 480px;">
430
+ <div id="azPlayer" style="width: 721px;">
431
+ <!-- Content inside target will be removed -->
432
+ <div style="padding: 20px">Loading, please wait...</div>
433
+ </div>
434
+
435
+ <!-- Thumb slider with croped images -->
436
+ <div id="cropSliderWrap">
437
+ <div id="cropSlider">
438
+ <ul></ul>
439
+ </div>
440
+ </div>
441
+ </div>
442
+ ');
443
+ echo '</pre>';
444
+ ?>
445
+
446
+ <div class="legend">Javascript</div>
447
+ <?php
448
+ echo "<pre class='brush: js'>";
449
+ echo htmlspecialchars ('
450
+ // Init the slider
451
+ // Thumbs will be appended instantly
452
+ jQuery("#cropSlider").axZmThumbSlider({
453
+ orientation: "vertical",
454
+ btnOver: true,
455
+ btnHidden: true,
456
+ btnFwdStyle: {borderRadius: 0, height: 20, bottom: -1, lineHeight: "20px"},
457
+ btnBwdStyle: {borderRadius: 0, height: 20, top: -1, lineHeight: "20px"},
458
+
459
+ thumbLiStyle: {
460
+ height: 90,
461
+ width: 90,
462
+ lineHeight: 90,
463
+ borderRadius: 0,
464
+ margin: 3
465
+ }
466
+ });
467
+
468
+ // AJAX-ZOOM
469
+ // Create empty jQuery object (no not rename here)
470
+ var ajaxZoom = {};
471
+
472
+ // Define the path to the axZm folder, adjust the path if needed!
473
+ ajaxZoom.path = "../axZm/";
474
+
475
+ // Define your custom parameter query string
476
+ // example=spinIpad has many presets for 360 images
477
+ // 3dDir - best of all absolute path to the folder with 360/3D images
478
+ // if it is a 2D image just pass zoomData=/path/to/your/image/image1.jpg|/path/to/other/image/image2.jpg instead of 3dDir
479
+ // ajaxZoom.parameter = "example=spinIpad&3dDir=/pic/zoom3d/Uvex_Occhiali";
480
+ // Define your custom parameter query string
481
+ ajaxZoom.parameter = "example=spinIpad&3dDir=../pic/zoom3d/Canon_1100D";
482
+
483
+ // Id of element where AJAX-ZOOM will be loaded into
484
+ ajaxZoom.divID = "azPlayer";
485
+
486
+ // Define callbacks, for complete list check the docs
487
+ ajaxZoom.opt = {
488
+ onLoad: function(){
489
+ // Load crop thumbs
490
+ // You can also pass the path over query string, e.g.
491
+ // example35.php?cropJsonURL=../pic/cropJSON/eos_1100d.json
492
+ // and skip cropJsonURL key in jQuery.axZmImageCropLoad
493
+ jQuery.axZmImageCropLoad({
494
+ cropJsonURL: "../pic/cropJSON/eos_1100d.json",
495
+ sliderID: "cropSlider",
496
+ spinToSpeed: "2500", // as string to override spinDemoTime when clicked on the thumbs
497
+ spinToMotion: "easeOutQuint", // optionally pass spinToMotion to override spinToMotion set in config file, def. easeOutQuad
498
+ handleTexts: "default" // would do about the same as commented out below...
499
+ /*
500
+ handleTexts: function(title, description){
501
+ // One of the possible things to do with title and description
502
+ // e.g. display texts with jquery.axZm.expButton.js (AJAX-ZOOM additional plugin)
503
+ jQuery.axZmEb({
504
+ title: title,
505
+ descr: description,
506
+ gravity: "top", // possible values: topLeft, top, topRight, bottomLeft, bottom, bottomRight, center
507
+ marginY: 5, // vertical margin depending on gravity
508
+ zoomSpinPanRemove: "cropSlider", // removes button / layer when there is some action inside AJAX-ZOOM
509
+ autoOpen: false, // button opens instantly; if no tilte but descr is defined, autoOpen executes instantly
510
+ removeOnClose: false // removes button when extended state is closed
511
+ });
512
+ }
513
+ */
514
+ });
515
+
516
+ // This would be the code for additionally loading hotspots made e.g. with example33.php
517
+ //jQuery.aZcropEd.getJSONdataFromFile("../pic/cropJSON/eos_1100d.json");
518
+ },
519
+ onBeforeStart: function(){
520
+ if (jQuery.axZm.spinMod){
521
+ jQuery.axZm.restoreSpeed = 300;
522
+ }else{
523
+ jQuery.axZm.restoreSpeed = 0;
524
+ }
525
+
526
+ //jQuery.axZm.fullScreenCornerButton = false;
527
+ jQuery.axZm.fullScreenExitText = false;
528
+
529
+ // Chnage position of the map
530
+ //jQuery.axZm.mapPos = "bottomLeft";
531
+
532
+ // Set extra space to the right at fullscreen mode for the crop gallery
533
+ jQuery.axZm.fullScreenSpace = {
534
+ right: jQuery("#cropSlider").outerWidth(),
535
+ top: 0, bottom: 0, left: 0, layout: 1
536
+ };
537
+ },
538
+ onFullScreenSpaceAdded: function(){
539
+ jQuery("#cropSlider")
540
+ .css({bottom: 0,right: 0, height: "100%", zIndex: 555})
541
+ .appendTo("#axZmFsSpaceRight");
542
+ },
543
+ onFullScreenClose: function(){
544
+ jQuery.fn.axZm.tapShow();
545
+
546
+ jQuery("#cropSlider")
547
+ .css({bottom: "", right: "", zIndex: ""})
548
+ .appendTo("#cropSliderWrap");
549
+ },
550
+ onFullScreenCloseEndFromRel: function(){
551
+ // Restore position of the slider
552
+ jQuery("#cropSlider")
553
+ .css({bottom: "", right: "", zIndex: ""})
554
+ .appendTo("#cropSliderWrap");
555
+ }
556
+ };
557
+
558
+ // Load AJAX-ZOOM not responsive
559
+ jQuery.fn.axZm.load({
560
+ opt: ajaxZoom.opt,
561
+ path: ajaxZoom.path,
562
+ postMode: false,
563
+ apiFullscreen: false,
564
+ parameter: ajaxZoom.parameter,
565
+ divID: ajaxZoom.divID
566
+ });
567
+
568
+ // Load responsive
569
+ //window.fullScreenStartSplash = {enable: false, className: false, opacity: 0.75};
570
+ //jQuery.fn.axZm.openFullScreen(ajaxZoom.path, ajaxZoom.parameter, ajaxZoom.opt, ajaxZoom.divID, false, false);
571
+ ');
572
+ echo '</pre>';
573
+ ?>
574
+
575
+ <div class="legend">Is it free?</div>
576
+
577
+ <ul style="margin: 0;">
578
+ <li style="margin-top: 10px">
579
+ The answer is Yes and No. AJAX-ZOOM has it's own
580
+ <a href="http://www.ajax-zoom.com/index.php?cid=download#heading_4">License Agreement</a>, please read!
581
+ </li>
582
+ <li style="margin-top: 10px">
583
+ Under certain conditions You can use it totally for free!
584
+ </li>
585
+ <li style="margin-top: 10px">
586
+ In any case you can and should <a href="http://www.ajax-zoom.com/index.php?cid=download" target="_blank">download</a>
587
+ and test AJAX-ZOOM without any further obligations. If you like it and would have certain features enabled - You can buy it.
588
+ </li>
589
+ <li style="margin-top: 10px">
590
+ In case after all you have any doubts or questions please contact the
591
+ <a href="http://www.ajax-zoom.com/index.php?cid=contact" target="_blank">support</a>.
592
+ </li>
593
+ </ul>
594
+
595
+ <?php
596
+ /* This include is just for the demo, you can remove it */
597
+ include ('footer.php');
598
+ ?>
599
+ <?php
600
+ }
601
+ ?>
602
+ </div>
603
+
604
+ <!-- Crop settings -->
605
+ <div id="aZcR_tabs-sel">
606
+ <!-- Crop options for Jcrop selector and AJAX-ZOOM thumbnail generator-->
607
+ <div id="cropOptionsParent">
608
+ <div id="cropOptions">
609
+ <div class="legend">Jcrop (selector) settings</div>
610
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
611
+ <label>Selection:</label>
612
+ <select id="cropOpt_selection" onchange="jQuery.aZcropEd.jCropHandleSelection()">
613
+ <option value="">normal</option>
614
+ <option value="aspectRatio" selected="selected">Aspect ratio</option>
615
+ <option value="fixedSize">Fixed size</option>
616
+ </select>
617
+ </div>
618
+ <div id="cropOpt_ratioBox" style="clear: both; margin: 5px 0px 5px 0px;">
619
+ <label>Aspect ratio:</label>
620
+ W: <input id="cropOpt_ratio1" type="text" value="1" style="width: 50px" onchange="jQuery.aZcropEd.jCropAspectRatio()">
621
+ <input type="button" style="width: 30px;" value="&#8660;" onclick="jQuery.aZcropEd.jCropAspectFlipValues()">
622
+ H: <input id="cropOpt_ratio2" type="text" value="1" style="width: 50px" onchange="jQuery.aZcropEd.jCropAspectRatio()">
623
+ <div>
624
+ <label></label>
625
+ <input type="button" value="as thumb" style="margin-top: 3px; width: 80px;" onclick="jQuery.aZcropEd.jCropAspectAsThumb()">
626
+ <input type="button" value="as image" style="margin-top: 3px; width: 80px;" onclick="jQuery.aZcropEd.jCropAspectAsImage()">
627
+ </div>
628
+ </div>
629
+ <div id="cropOpt_sizeBox" style="clear: both; margin: 5px 0px 5px 0px; display: none;">
630
+ <label>Fixed size:</label>
631
+ W: <input id="cropOpt_sizeW" type="text" value="" style="width: 50px" onchange="jQuery.aZcropEd.jCropFixedSize()">
632
+ H: <input id="cropOpt_sizeH" type="text" value="" style="width: 50px" onchange="jQuery.aZcropEd.jCropFixedSize()"> px
633
+ </div>
634
+
635
+ <div class="legend">Thumbnail settings</div>
636
+
637
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
638
+ <label>Thumbnail size:</label>
639
+ W: <input id="cropOpt_thumbSizeW" type="text" value="<?php echo $default_thumb_size; ?>"
640
+ style="width: 50px" onchange="jQuery.aZcropEd.jCropInitSettings()">
641
+ H: <input id="cropOpt_thumbSizeH" type="text" value="<?php echo $default_thumb_size; ?>"
642
+ style="width: 50px" onchange="jQuery.aZcropEd.jCropInitSettings()"> px
643
+ </div>
644
+
645
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
646
+ <label>Thumbnail mode:</label>
647
+ <select id="cropOpt_thumbMode" onchange="jQuery.aZcropEd.jCropInitSettings()">
648
+ <option value="">-</option>
649
+ <option value="contain">contain</option>
650
+ <option value="cover">cover</option>
651
+ </select>
652
+ </div>
653
+
654
+ <div id="cropOpt_colorBox" style="clear: both; margin: 5px 0px 5px 0px; display: none;">
655
+ <label>Background color (hex):</label>
656
+ #<input id="cropOpt_backColor" type="text" value="FFFFFF" style="width: 100px" onchange="jQuery.aZcropEd.jCropInitSettings()">
657
+ </div>
658
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
659
+ <label>Jpeg quality:</label>
660
+ <input id="cropOpt_jpgQual" type="text" value="90" style="width: 40px" onchange="jQuery.aZcropEd.jCropInitSettings()">
661
+ (10 - 100)
662
+ </div>
663
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
664
+ <label>Cache (can be set later):</label>
665
+ <input id="cropOpt_cache" type="checkbox" value="1" onchange="jQuery.aZcropEd.jCropInitSettings()">
666
+ </div>
667
+ </div>
668
+ </div>
669
+
670
+ </div>
671
+
672
+ <!-- Cropped images -->
673
+ <div id="aZcR_tabs-crops">
674
+ <?php
675
+ if ($axzm_cms_mode)
676
+ {
677
+ ?>
678
+ <div class="legend">Crops, Drag & drop to reorder</div>
679
+ <?php
680
+ }
681
+ else
682
+ {
683
+ ?>
684
+ <div class="legend">Crop results (real size)</div>
685
+ <?php
686
+ }
687
+ ?>
688
+
689
+ <?php
690
+ if (!$axzm_cms_mode)
691
+ {
692
+ ?>
693
+ <div class="azMsg">Drag & drop to reorder the thumbs, click to get the paths and other information (see below),
694
+ double click to zoom.
695
+ </div>
696
+ <?php
697
+ }
698
+ ?>
699
+
700
+ <!-- Crop results real size -->
701
+ <div id="aZcR_cropResults"></div>
702
+ <input type="button" value="Reamove all crops" style="margin-top: 5px" onclick="jQuery.aZcropEd.clearAll()" />
703
+ <?php
704
+ if (!$axzm_cms_mode)
705
+ {
706
+ ?>
707
+ - crops will be not deleted physically here!
708
+
709
+ <div class="legend">Paths</div>
710
+
711
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
712
+ <label>Query string:</label>
713
+ <input id="aZcR_qString" type="text" onClick="this.select();" style="margin-bottom: 5px; width: 100%" value="">
714
+ </div>
715
+
716
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
717
+ <label>Url:</label>
718
+ (please note that full Url might differ if this editor is implemented in a backend of some CMS)
719
+ <input id="aZcR_url" type="text" onClick="this.select();" style="margin-bottom: 5px; width: 100%" value="">
720
+ </div>
721
+
722
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
723
+ <label>Cached image url:</label>
724
+ (only available if "cache" option is chacked under "crop settings" tab)
725
+ <input id="aZcR_contentLocation" type="text" onClick="this.select();" style="margin-bottom: 5px; width: 100%" value="">
726
+ </div>
727
+ <?php
728
+ }
729
+ ?>
730
+ </div>
731
+
732
+ <!-- Description -->
733
+ <div id="aZcR_tabs-descr">
734
+ <div class="legend">Crop description</div>
735
+
736
+ <div class="azMsg">
737
+ <img border="0" style="position: relative; cursor: pointer; float: right; margin-right: -5px; margin-top: -5px;"
738
+ alt="close this box" title="close this message" onclick="jQuery(this).parent().remove()" src="../axZm/icons/default/zoombutton_close.png">
739
+
740
+ <?php
741
+ if (!$axzm_cms_mode)
742
+ {
743
+ ?>
744
+ Optionally add a title || description to use them later in various ways.
745
+ In this editor and also in the derived "clean" examples like
746
+ <a href="example35_clean.php">example35_clean.php</a>
747
+ we use "axZmEb" - expandable button (AJAX-ZOOM additional plugin) to display these titles || descriptions
748
+ over the image respectively inside the player. You could however easily change the usage of title || description in your implementation,
749
+ e.g. display them under the player or whatever. Just change the "handleTexts" property of the options object
750
+ when passing it to jQuery.axZmImageCropLoad - see source code of e.g. <a href="example35_clean.php">example35_clean.php</a>;<br><hr />
751
+
752
+ Besides HTML or your text you could also load external content in iframe! The prefix for the source is "iframe:"<br><br>
753
+ e.g. to load an extennal page simply put something like this in the descripion:<br>
754
+ iframe://www.canon.co.uk/For_Home/Product_Finder/Cameras/Digital_SLR/EOS_1100D
755
+ <br><br>
756
+ To load a YouTube video you could put this (replace eLvvPr6WPdg with your video code): <br>
757
+ iframe://www.youtube.com/embed/eLvvPr6WPdg?feature=player_detailpage
758
+ <br><br>
759
+ To load some dynamic content over AJAX use "ajax:" as prefix, e.g.<br>
760
+ ajax:/test/some_content_data.php?req=123
761
+ <br><br>
762
+ If you do not define the title, then the content will be loaded instantly as soon as the spin animation finishes.
763
+
764
+ <?php
765
+ }
766
+ else
767
+ {
768
+ ?>
769
+ Optionally add a title and/or description.
770
+ Besides HTML or your text you could also load external content in iframe!
771
+ The prefix for the source is "iframe:"<br><br>
772
+ e.g. to load an extennal page simply put something like this in the descripion:<br>
773
+ iframe://www.canon.co.uk/For_Home/Product_Finder/Cameras/Digital_SLR/EOS_1100D
774
+ <br><br>
775
+ To load a YouTube video you could put this (replace eLvvPr6WPdg with your video code): <br>
776
+ iframe://www.youtube.com/embed/eLvvPr6WPdg?feature=player_detailpage
777
+ <br><br>
778
+ To load some dynamic content over AJAX use "ajax:" as prefix, e.g.<br>
779
+ ajax:/test/some_content_data.php?req=123
780
+ <br><br>
781
+ If you do not define the title, then the content will be loaded instantly as soon as the spin animation finishes.
782
+ <?php
783
+ }
784
+ ?>
785
+ </div>
786
+
787
+ <div id="aZcR_descrWrap">
788
+ <!-- Tables with title and description field will be added here -->
789
+ </div>
790
+ </div>
791
+
792
+ <!-- Import / Save -->
793
+ <div id="aZcR_tabs-import">
794
+
795
+ <?php
796
+ if (!$axzm_cms_mode)
797
+ {
798
+ ?>
799
+ <div class="legend">Import all thumbs</div>
800
+ <?php
801
+ }
802
+ else
803
+ {
804
+ ?>
805
+ <div class="legend">Save the results</div>
806
+ <?php
807
+ }
808
+ ?>
809
+
810
+ <!-- Import form, do not change order of the fields-->
811
+ <div id="aZcR_getAllThumbsForm">
812
+ <script type="text/javascript">
813
+ var handleDisplayLongLine = function(a){
814
+ jQuery(a).val() == 'CSV' ? jQuery(a).next().css('display', '') : jQuery(a).next().css('display', 'none');
815
+ jQuery.aZcropEd.getAllThumbs();
816
+ };
817
+ </script>
818
+ <?php
819
+ if (!$axzm_cms_mode)
820
+ {
821
+ ?>
822
+ <input type="button" value="Get all" onclick="jQuery.aZcropEd.getAllThumbs()">
823
+
824
+ <select onchange="jQuery.aZcropEd.getAllThumbs()" autocomplete=off>
825
+ <option value="qString">Query string</option>
826
+ <option value="url">Url</option>
827
+ <option value="contentLocation">Cached image url</option>
828
+ </select>
829
+
830
+ <select onchange="handleDisplayLongLine(this)" autocomplete=off>
831
+ <option value="JSON_data">JSON with data</option>
832
+ <option value="JSON">JSON</option>
833
+ <option value="CSV">CSV</option>
834
+ </select>
835
+
836
+ <span style="display: none;">separated with <input type="text" value="|" style="width: 20px;" onchange="jQuery.aZcropEd.getAllThumbs()"></span>
837
+ <br>and convert to be cached
838
+ <input type="checkbox" value="1" onclick="jQuery.aZcropEd.getAllThumbs()" checked="true" autocomplete=off>
839
+ and replace thumb size
840
+ <input type="checkbox" value="1" onclick="jQuery(this).next().toggle(); jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
841
+ <span style="display: none">
842
+ W: <input type="text" style="width: 50px" onchange="jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
843
+ H: <input type="text" style="width: 50px" onchange="jQuery.aZcropEd.getAllThumbs();" autocomplete=off> px
844
+ </span>
845
+ <br>and convert px coordinates to percentage
846
+ <input type="checkbox" value="1" onclick="jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
847
+ <?php
848
+ }
849
+ else
850
+ {
851
+ ?>
852
+ <input type="button" value="Refresh" onclick="jQuery.aZcropEd.getAllThumbs()">
853
+
854
+ <select style="display: none;" onchange="jQuery.aZcropEd.getAllThumbs()" autocomplete=off>
855
+ <option value="qString">Query string</option>
856
+ <option value="url">Url</option>
857
+ <option value="contentLocation">Cached image url</option>
858
+ </select>
859
+
860
+ <select style="display: none;" onchange="handleDisplayLongLine(this)" autocomplete=off>
861
+ <option value="JSON_data">JSON with data</option>
862
+ <option value="JSON">JSON</option>
863
+ <option value="CSV">CSV</option>
864
+ </select>
865
+
866
+ <span style="display: none;"> <input type="text" value="|" style="width: 20px; display: none;"
867
+ onchange="jQuery.aZcropEd.getAllThumbs()" autocomplete=off></span>
868
+ <input style="display: none;" type="checkbox" value="1" onclick="jQuery.aZcropEd.getAllThumbs()" checked="true" autocomplete=off>
869
+ and replace thumb size
870
+ <input type="checkbox" value="1" onclick="jQuery(this).next().toggle(); jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
871
+ <span style="display: none">
872
+ W: <input type="text" style="width: 50px" onchange="jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
873
+ H: <input type="text" style="width: 50px" onchange="jQuery.aZcropEd.getAllThumbs();" autocomplete=off> px
874
+ </span>
875
+ <input style="display: none;" type="checkbox" value="1" onclick="jQuery.aZcropEd.getAllThumbs();" autocomplete=off>
876
+
877
+ <?php
878
+ }
879
+ ?>
880
+ </div>
881
+
882
+ <form <?php echo !$axzm_cms_mode ? 'action="../axZm/saveCropJSON.php"' : ''; ?> id="aZcR_saveJSON">
883
+ <textarea id="aZcR_getAllThumbs" style="width: 100%; height: 350px; font-size: 10px; margin-top: 5px;" spellcheck="false"></textarea>
884
+ </form>
885
+
886
+ <?php
887
+ if ($axzm_cms_mode)
888
+ {
889
+ ?>
890
+ <input type="button" value="Save into database" id="btnSaveJSON">
891
+ <input type="button" value="Remove line breaks" style="margin-top: 5px;"
892
+ onclick="jQuery('#aZcR_getAllThumbs').val(jQuery('#aZcR_getAllThumbs').val().replace(/(\r\n|\n|\r|\t)/gm,''))">
893
+
894
+ <div id="dialog-saveJSON" title="JSON saved" style="display: none;">
895
+ <p>The 360 "Product Tour" has been saved and should be visible in Front-End now!</p>
896
+ </div>
897
+
898
+ <script type="text/javascript">
899
+ jQuery('#btnSaveJSON').click(function(e){
900
+ e.preventDefault();
901
+ jQuery.post('<?php echo $save_crop_json; ?>', {json: jQuery('#aZcR_getAllThumbs').val()}, function(ret) {
902
+ ret = jQuery.parseJSON(ret);
903
+ if (jQuery.isPlainObject(ret) && ret.status == 1){
904
+ jQuery("#dialog-saveJSON").dialog({
905
+ modal: true,
906
+ buttons: {
907
+ Ok: function(){
908
+ jQuery(this).dialog( "close" );
909
+ }
910
+ }
911
+ });
912
+ }
913
+ });
914
+ });
915
+ </script>
916
+ <?php
917
+ }
918
+ ?>
919
+
920
+ <?php
921
+ if (!$axzm_cms_mode)
922
+ {
923
+ ?>
924
+ <!-- Just a button to select text in the textarea above, can be removed -->
925
+ <input type="button" value="Select text" style="margin-top: 5px;" onclick="jQuery('#aZcR_getAllThumbs')[0].select()">
926
+ <input type="button" value="Remove line breaks" style="margin-top: 5px;"
927
+ onclick="jQuery('#aZcR_getAllThumbs').val(jQuery('#aZcR_getAllThumbs').val().replace(/(\r\n|\n|\r|\t)/gm,''))">
928
+
929
+ <!-- Save -->
930
+ <div class="legend">Save JSON to file</div>
931
+
932
+ <div style="margin-top: 10px"><label>Password for saving:</label><input type="password" id="aZcR_jsFilePass" value="">
933
+ (can be set or disabled inside '/axZm/saveCropJSON.php')</div>
934
+ <div style="margin-top: 10px"><label>Keep formated:</label><input type="checkbox" id="aZcR_jsKeepFormated" value="1"> -
935
+ keep linebreaks, tab stops etc.</div>
936
+ <div style="margin-top: 10px"><label>Create backup:</label><input type="checkbox" id="aZcR_jsBackUp" value="1" checked> -
937
+ creates backup of the current JSON file if present with a timestamp in file name</div>
938
+ <div style="margin-top: 10px"><label>Save JSON:</label>
939
+ <input style="width: 100px;" type="button" value="Save" onClick="jQuery.aZcropEd.saveJSONtoFile();">
940
+ to <input type="text" value="" id="aZcR_jsFileName">.json (a-zA-Z0-9-_)
941
+ </div>
942
+
943
+ <div style="margin-top: 10px"><label></label>
944
+ e.g. "eos_1100d"
945
+ (on default the file is saved into "pic/cropJSON" folder)
946
+ </div>
947
+
948
+ <div style="margin: 10px 0px;">
949
+ <div id="aZcR_saveToJSONresults"></div>
950
+ </div>
951
+
952
+ <div class="legend">Notes</div>
953
+ <ul>
954
+ <li>In your final frontend presentation you can compose url out of query string with js
955
+ <code>jQuery.fn.axZm.installPath()+'zoomLoad.php?'+queryString</code>
956
+ </li>
957
+ </ul>
958
+ <?php
959
+ }
960
+ ?>
961
+ </div>
962
+
963
+ <?php
964
+ if (!$axzm_cms_mode)
965
+ {
966
+ ?>
967
+ <!-- Load content -->
968
+ <div id="aZcR_tabs-load">
969
+ <div class="legend">Load a different 2D / 360 or 3D content</div>
970
+
971
+ <div class="azMsg">You do not need to edit html of this file in order to load a different 2D / 360 or 3D content into the editor.
972
+ Just enter a path into one of the fields below and press "LOAD" button.
973
+ Press "GET" button to see what is currently loaded.
974
+ </div>
975
+
976
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
977
+ <label>1. Path for 2D:</label> <input type="text" value="" id="aZcR_pathToLoad2D" style="width: 400px;"> or
978
+ </div>
979
+
980
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
981
+ <label>2. Path for 360 or 3D:</label> <input type="text" value="" id="aZcR_pathToLoad360" style="width: 400px;">
982
+ </div>
983
+
984
+ <div style="clear: both; margin: 15px 0px 5px 0px;">
985
+ <label>3. Hotspot file path:</label> <input type="text" value="" id="aZcR_hotspotFileToLoad" style="width: 350px;"> (optional)
986
+ </div>
987
+
988
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
989
+ <label>4. Crop file path:</label> <input type="text" value="" id="aZcR_cropFileToLoad" style="width: 350px;"> (optional)
990
+ </div>
991
+
992
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
993
+ <input type="button" value="LOAD" onClick="jQuery.aZcropEd.changeAxZmContentPHP();">&nbsp;&nbsp;
994
+ <input type="button" value="GET" onClick="jQuery.aZcropEd.getLoadedParameters();">
995
+ </div>
996
+
997
+ <div id="aZcR_pathToParameter"></div>
998
+
999
+ <div class="legend">How does it work:</div>
1000
+
1001
+ <div style="clear: both; margin: 5px 0px 5px 0px;">
1002
+ <ol>
1003
+ <li>
1004
+ <ul>
1005
+ <li><strong>For 2D</strong> (single image or gallery with more images)
1006
+ please enter local path(s) to the image(s), e.g. <br>
1007
+ "<code>/pic/zoom/animals/test_animals1.png</code>"<br>
1008
+ or image set with image paths separated with vertical dash e.g.<br>
1009
+ "<code>/pic/zoom/animals/test_animals1.png|/pic/zoom/animals/test_animals2.png</code>"<br>
1010
+ If you want to load all images from a folder please just enter the path to this folder e.g. <br>
1011
+ "<code>/pic/zoom/animals</code>"
1012
+ </li>
1013
+ </ul>
1014
+ </li>
1015
+ <li style="margin-top: 10px;">
1016
+ <ul>
1017
+ <li style="margin-top: 5px;"><strong>For 360</strong> (single row 360 object) please enter only the path to the folder
1018
+ where your 360 images are located e.g. <br>
1019
+ "<code>/pic/zoom3d/Uvex_Occhiali</code>";
1020
+ </li>
1021
+ <li style="margin-top: 5px;"><strong>For 3D</strong> (multi row turnable object) please enter the path to the folder
1022
+ where subfolders with each row of 3D are located.<br>
1023
+ On <a href="http://www.ajax-zoom.com/examples/example35.php" target="_blank">http://www.ajax-zoom.com/examples/example35.php</a>
1024
+ this could be <br>
1025
+ "<code>/pic/zoomVR/nike</code>" <br>
1026
+ (not provided with the download package)
1027
+ </li>
1028
+ </ul>
1029
+ </li>
1030
+ <li style="margin-top: 10px;">
1031
+ <ul>
1032
+ <li style="margin-top: 5px;">
1033
+ <strong>Hotspot file path</strong> is the path to the file with hotspot configurations and positions, e.g.<br>
1034
+ "<code>../pic/hotspotJS/eos_1100D.js</code>"<br>
1035
+ You can create such a file in <a href="example33.php">example33.php</a>
1036
+ </li>
1037
+ </ul>
1038
+ </li>
1039
+
1040
+ <li style="margin-top: 10px;">
1041
+ <ul>
1042
+ <li style="margin-top: 5px;">
1043
+ <strong>Crop file path</strong> is the path to the file with crop data which can be created with this editor, e.g.<br>
1044
+ "<code>../pic/hotspotJS/eos_1100d.json</code>"<br>
1045
+
1046
+ </li>
1047
+ </ul>
1048
+ </li>
1049
+ </ol>
1050
+ </div>
1051
+
1052
+ <div class="legend">Load only JSON data from file into editor</div>
1053
+ <div style="margin-top: 10px">
1054
+ <label>Crop JSON file path:</label>
1055
+ <input type="text" value="" id="aZcR_onlyJSONcropFile" style="width: 350px;">
1056
+ </div>
1057
+ <label></label>e.g.: "../pic/cropJSON/eos_1100d.json"
1058
+ <div style="margin-top: 10px">
1059
+ <label></label>
1060
+ <input type="button" value="Load" onclick="jQuery.aZcropEd.getJSONdataFromFile(jQuery('#aZcR_onlyJSONcropFile').val())">
1061
+ </div>
1062
+
1063
+ </div>
1064
+
1065
+ <?php
1066
+ }
1067
+ ?>
1068
+ <!-- end Tabs wrapper -->
1069
+ </div>
1070
+
1071
+ <!-- end outerWrap -->
1072
+ </div>
1073
+
1074
+ <script type="text/javascript">
1075
+ // AJAX-ZOOM
1076
+ // Create empty jQuery object (no not rename here)
1077
+ var ajaxZoom = {};
1078
+
1079
+ // Define callbacks, for complete list check the docs
1080
+ ajaxZoom.opt = {
1081
+ // First json to load
1082
+ onLoad: function(){ // onSpinPreloadEnd
1083
+ jQuery.aZcropEd.getJSONdataFromFile('<?php echo $first_load_crop_json;?>');
1084
+ },
1085
+
1086
+ onCropEnd: function(){
1087
+ jQuery.aZcropEd.jCropOnChange();
1088
+ },
1089
+
1090
+ onFullScreenResizeEnd: function(){
1091
+ // Toggle Jcrop
1092
+ if (jcrop_api){
1093
+ jQuery.aZcropEd.jCropMethod('destroy');
1094
+ }
1095
+ },
1096
+
1097
+ onBeforeStart: function(){
1098
+ // Set background color, can also be done in css file
1099
+ jQuery('.axZm_zoomContainer').css({backgroundColor: '#FFFFFF'});
1100
+
1101
+ if (jQuery.axZm.spinMod){
1102
+ jQuery.axZm.restoreSpeed = 300;
1103
+ }else{
1104
+ jQuery.axZm.restoreSpeed = 0;
1105
+ }
1106
+
1107
+ // Set extra space to the right at fullscreen mode for the crop gallery
1108
+ jQuery.axZm.fullScreenSpace = {
1109
+ top: 0,
1110
+ right: 100,
1111
+ bottom: 0,
1112
+ left: 0,
1113
+ layout: 1
1114
+ };
1115
+
1116
+ //jQuery.axZm.fullScreenApi = true;
1117
+
1118
+ //jQuery.axZm.fullScreenCornerButton = false;
1119
+ jQuery.axZm.fullScreenExitText = false;
1120
+
1121
+ // Chnage position of the map
1122
+ //jQuery.axZm.mapPos = 'bottomLeft';
1123
+
1124
+ // Set mNavi buttons here if you want, can be done in the config file too
1125
+ if (typeof jQuery.axZm.mNavi == 'object'){
1126
+ jQuery.axZm.mNavi.enabled = true; // enable AJAX-ZOOM mNavi
1127
+ jQuery.axZm.mNavi.alt.enabled = true; // enable button descriptions
1128
+ jQuery.axZm.mNavi.fullScreenShow = true; // show at fullscreen too
1129
+ jQuery.axZm.mNavi.mouseOver = true; // should be alsways visible
1130
+ jQuery.axZm.mNavi.gravity = 'bottom'; // position of AJAX-ZOOM mNavi
1131
+ jQuery.axZm.mNavi.offsetVert = 5; // vertical offset
1132
+ jQuery.axZm.mNavi.offsetVertFS = 30; // vertical offset at fullscreen
1133
+ jQuery.axZm.mNavi.parentID = 'testCustomNavi';
1134
+
1135
+ // Define order and space between the buttons
1136
+ if (jQuery.axZm.spinMod){ // if it is 360 or 3D
1137
+ jQuery.axZm.mNavi.order = {
1138
+ mSpin: 5, mPan: 20, mZoomIn: 5, mZoomOut: 20, mReset: 5, mMap: 5, mSpinPlay: 20,
1139
+ mCustomBtn4: 20, mCustomBtn1: 5, mCustomBtn2: 5, mCustomBtn3: 5
1140
+ };
1141
+ }else{
1142
+ jQuery.axZm.mNavi.order = {
1143
+ mZoomIn: 5, mZoomOut: 5, mReset: 20, mGallery: 5, mMap: 20,
1144
+ mCustomBtn4: 20, mCustomBtn1: 5, mCustomBtn2: 5, mCustomBtn3: 5
1145
+ };
1146
+ }
1147
+
1148
+ // Define images for custom button to toggle Jcrop (see below)
1149
+ jQuery.axZm.icons.mCustomBtn1 = {file: jQuery.axZm.buttonSet+'/button_iPad_jcrop', ext: 'png', w: 50, h: 50};
1150
+ jQuery.axZm.mapButTitle.customBtn1 = 'Toggle jCrop';
1151
+
1152
+ // Define image for settings button
1153
+ jQuery.axZm.icons.mCustomBtn2 = {file: jQuery.axZm.buttonSet+'/button_iPad_settings', ext: 'png', w: 50, h: 50};
1154
+ jQuery.axZm.mapButTitle.customBtn2 = 'jCrop settings';
1155
+
1156
+ // Define image for
1157
+ jQuery.axZm.icons.mCustomBtn3 = {file: jQuery.axZm.buttonSet+'/button_iPad_fire', ext: 'png', w: 50, h: 50};
1158
+ jQuery.axZm.mapButTitle.customBtn3 = 'Fire crop!';
1159
+
1160
+ // Toggle jQuery.axZm.spinReverse
1161
+ jQuery.axZm.icons.mCustomBtn4 = {file: jQuery.axZm.buttonSet+'/button_iPad_reverse', ext: 'png', w: 50, h: 50};
1162
+ jQuery.axZm.mapButTitle.customBtn4 = 'Toggle drag spin direction';
1163
+
1164
+ // function when clicked on this custom button (mCustomBtn1)
1165
+ jQuery.axZm.mNavi.mCustomBtn1 = function(){
1166
+ jQuery.aZcropEd.jCropMethod('toggle');
1167
+ return false;
1168
+ };
1169
+
1170
+ // Toggle Jcrop and AJAX-ZOOM thumbnail settings popup
1171
+ jQuery.axZm.mNavi.mCustomBtn2 = function(){
1172
+ jQuery.aZcropEd.jCropSettingsPopup();
1173
+ return false;
1174
+ };
1175
+
1176
+ // Function when clicked on the fire crop button
1177
+ jQuery.axZm.mNavi.mCustomBtn3 = function(){
1178
+ jQuery.aZcropEd.jCropFire();
1179
+ return false;
1180
+ };
1181
+
1182
+ // Toggle jQuery.axZm.spinReverse
1183
+ jQuery.axZm.mNavi.mCustomBtn4 = function(){
1184
+ if (jQuery.axZm.spinReverse){
1185
+ jQuery.axZm.spinReverse = false;
1186
+ }else{
1187
+ jQuery.axZm.spinReverse = true;
1188
+ }
1189
+ return false;
1190
+ };
1191
+ }
1192
+ },
1193
+
1194
+ onFullScreenSpaceAdded: function(){
1195
+ jQuery('#cropSlider')
1196
+ .css({
1197
+ bottom: 0,
1198
+ right: 0,
1199
+ height: '100%',
1200
+ zIndex: 555
1201
+ })
1202
+ .appendTo('#axZmFsSpaceRight');
1203
+ },
1204
+
1205
+ onFullScreenStart: function(){
1206
+ jQuery.aZcropEd.jCropMethod('destroy');
1207
+ },
1208
+
1209
+ onFullScreenClose: function(){
1210
+ jQuery.aZcropEd.jCropMethod('destroy');
1211
+ jQuery.fn.axZm.tapShow();
1212
+
1213
+ jQuery('#cropSlider')
1214
+ .css({
1215
+ bottom: '',
1216
+ right: '',
1217
+ zIndex: ''
1218
+ })
1219
+ .appendTo('#cropSliderWrap');
1220
+ },
1221
+ onFullScreenCloseEndFromRel: function(){
1222
+
1223
+ // Restore position of the slider
1224
+ jQuery('#cropSlider')
1225
+ .css({
1226
+ bottom: '',
1227
+ right: '',
1228
+ zIndex: ''
1229
+ })
1230
+ .appendTo('#cropSliderWrap');
1231
+ }
1232
+
1233
+ };
1234
+
1235
+ // Define the path to the axZm folder, adjust the path if needed!
1236
+ ajaxZoom.path = "../axZm/";
1237
+
1238
+ // Define your custom parameter query string
1239
+ // example=spinIpad has many presets for 360 images
1240
+ // 3dDir - best of all absolute path to the folder with 360/3D images
1241
+ // if it is a 2D image just pass zoomData=/path/to/your/image/image1.jpg|/path/to/other/image/image2.jpg instead of 3dDir
1242
+ // ajaxZoom.parameter = "example=spinIpad&3dDir=/pic/zoom3d/Uvex_Occhiali";
1243
+ // Define your custom parameter query string
1244
+
1245
+ /*
1246
+ ajaxZoom.parameter = "example=imageCrop&zoomData=\
1247
+ /pic/zoom/furniture/furniture_005.jpg\
1248
+ |/pic/zoom/furniture/furniture_003.jpg\
1249
+ |/pic/zoom/boutique/boutique_001.jpg\
1250
+ |/pic/zoom/boutique/boutique_002.jpg\
1251
+ ";
1252
+ */
1253
+
1254
+ ajaxZoom.parameter = "example=imageCrop&3dDir=<?php echo $first_load360_dir; ?>";
1255
+ ajaxZoom.parameter += "&cmsMode=<?php echo $axzm_cms_mode; ?>";
1256
+ //ajaxZoom.parameter = "example=imageCrop&zoomDir=animals";
1257
+
1258
+ ajaxZoom.divID = 'abc';
1259
+
1260
+ if (jQuery.aZcropEd.playerResponsive){
1261
+ window.fullScreenStartSplash = {'enable': false, 'className': false, 'opacity': 0.75};
1262
+ jQuery.fn.axZm.openFullScreen(ajaxZoom.path, ajaxZoom.parameter, ajaxZoom.opt, ajaxZoom.divID, false, false);
1263
+ } else {
1264
+ // Load not responsive
1265
+ jQuery.fn.axZm.load({
1266
+ opt: ajaxZoom.opt,
1267
+ path: ajaxZoom.path,
1268
+ postMode: false,
1269
+ apiFullscreen: false,
1270
+ parameter: ajaxZoom.parameter,
1271
+ divID: ajaxZoom.divID
1272
+ });
1273
+ }
1274
+
1275
+ // this is only for responsive editor layout
1276
+ window.thisLayoutAdjusted = false;
1277
+ var adjustThisLayout = function(){
1278
+ var winW = jQuery(window).innerWidth();
1279
+ var winH = jQuery(window).innerHeight();
1280
+
1281
+ if (jQuery.aZcropEd.playerResponsive){
1282
+ if (jQuery('#'+ajaxZoom.divID).height() + 150 > winH){
1283
+ jQuery('#playerInnerWrap').css('minHeight', winH - 150);
1284
+ jQuery('#'+ajaxZoom.divID).css('height', winH - 150)
1285
+ } else if (jQuery('#'+ajaxZoom.divID).height() < 721 && winH < 721 + 150){
1286
+ jQuery('#playerInnerWrap').css('minHeight', winH - 150);
1287
+ jQuery('#'+ajaxZoom.divID).height(winH - 150)
1288
+ } else if (721 + 150 <= winH){
1289
+ jQuery('#playerInnerWrap').css('minHeight', 721);
1290
+ jQuery('#'+ajaxZoom.divID).css('height', 721)
1291
+ }
1292
+ }
1293
+
1294
+ if (winW >= 1490){
1295
+ jQuery('#playerWrap').css({'float': 'left'});
1296
+ jQuery('#aZcR_tabs').css({'float': 'right', marginTop: 35, width: winW - jQuery('#playerWrap').outerWidth() - 50});
1297
+ jQuery('#outerWrap').css({margin: '', width: '', paddingLeft: 10, paddingRight: 10});
1298
+ jQuery('#marginAfter').css({display: 'block'});
1299
+ window.thisLayoutAdjusted = true;
1300
+ }else{
1301
+ if (window.thisLayoutAdjusted){
1302
+ jQuery('#outerWrap').css({margin: '0 auto', width: jQuery('#playerWrap').outerWidth(), paddingLeft: '', paddingRight: ''});
1303
+
1304
+ jQuery('#aZcR_tabs').css({'float': '', width: '', marginTop: 20});
1305
+ jQuery('#playerWrap').css({'float': ''});
1306
+ jQuery('#marginAfter').css({display: 'none'});
1307
+ //jQuery('#aZcomments').css({'float': 'left', width: 722})
1308
+ window.thisLayoutAdjusted = false;
1309
+ }
1310
+ }
1311
+ };
1312
+
1313
+ jQuery(document).ready(function(){
1314
+ adjustThisLayout();
1315
+ setTimeout(adjustThisLayout, 1); // repeat once
1316
+ jQuery(window).bind('resize', adjustThisLayout);
1317
+ // Tabs can change document height
1318
+ jQuery('a[href^="#aZcR_tabs-"]').bind('click', adjustThisLayout);
1319
+ });
1320
+
1321
+ </script>
1322
+
1323
+ </body>
1324
+ </html>
js/axzoom/preview/preview.php CHANGED
@@ -3,11 +3,6 @@ require_once('../../../app/Mage.php');
3
  umask(0);
4
  Mage::app();
5
 
6
-
7
- ini_set('display_errors', 1);
8
- error_reporting(E_ALL);
9
-
10
-
11
  function getIssetMod($par){
12
  return isset($par);
13
  }
3
  umask(0);
4
  Mage::app();
5
 
 
 
 
 
 
6
  function getIssetMod($par){
7
  return isset($par);
8
  }
js/axzoom/zoomConfigCustomAZ.inc.php CHANGED
@@ -1,4 +1,19 @@
1
  <?php
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  // You can also place / copy you custom parameters from /js/axzoom/axZm/zoomConfig.inc.php
3
  // or /js/axzoom/zoomConfigCustom.inc.php in this file below this message.
4
  // This way it would be possible to upgrade AJAX-ZOOM by fully overwriting /js/axzoom/axZm/ folder
1
  <?php
2
+ /**
3
+ * Module: jQuery AJAX-ZOOM for Magento, /js/axzoom/zoomConfigCustomAZ.inc.php
4
+ * Copyright: Copyright (c) 2010-2016 Vadim Jacobi
5
+ * License Agreement: http://www.ajax-zoom.com/index.php?cid=download
6
+ * Version: 1.2.0
7
+ * Date: 2016-05-07
8
+ * Review: 2016-05-07
9
+ * URL: http://www.ajax-zoom.com
10
+ * Documentation: http://www.ajax-zoom.com/index.php?cid=modules&module=magento
11
+ *
12
+ * @author AJAX-ZOOM <support@ajax-zoom.com>
13
+ * @copyright 2010-2016 AJAX-ZOOM, Vadim Jacobi
14
+ * @license http://www.ajax-zoom.com/index.php?cid=download
15
+ */
16
+
17
  // You can also place / copy you custom parameters from /js/axzoom/axZm/zoomConfig.inc.php
18
  // or /js/axzoom/zoomConfigCustom.inc.php in this file below this message.
19
  // This way it would be possible to upgrade AJAX-ZOOM by fully overwriting /js/axzoom/axZm/ folder
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>AJAX_ZOOM</name>
4
- <version>1.1.4</version>
5
  <stability>stable</stability>
6
  <license uri="http://www.ajax-zoom.com/index.php?cid=download">Commercial, demoware</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Responsive product detail view mousehover zoom extension with optional 360&#xB0; spins or multilevel 3D</summary>
10
  <description>Responsive, jQuery based mouse over zoom for viewing high resolution product images and optionally 360&#xB0; spins or multilevel 3D. Image pyramid / tiles view in responsive Fancybox or full screen on click. Upload or import 360&#xB0; images over admin interface. Optional responsive thumbnails slider integration. Instant (on-the-fly) generation of all thumbnails. Works great on touch-enabled devices. Free to download, install and test.</description>
11
- <notes>Minor improvements</notes>
12
  <authors><author><name>AJAX-ZOOM</name><user>vadus</user><email>support@ajax-zoom.com</email></author></authors>
13
- <date>2016-04-22</date>
14
- <time>20:40:00</time>
15
- <contents><target name="magelocal"><dir><dir name="Ax"><dir><dir name="Zoom"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="License.php" hash="b45fed73aec988d00ca1032656b9ae5b"/></dir></dir></dir><dir name="Tabs"><file name="Tabid.php" hash="5e1b97911f28d1dc5d5fac6e59ca9c13"/></dir><file name="Tabs.php" hash="40a78742e8b28cea4877e305211a9c6c"/></dir></dir><dir name="Helper"><file name="Data.php" hash="0aebfbfed16082f2a04697bbf085a2f9"/><file name="Head.php" hash="aac81557eb8726c7cd2b936873c52dbc"/></dir><dir name="Model"><file name="Ax360.php" hash="4f023c2c5cfeb66e5f2b63f9447f34c3"/><file name="Ax360set.php" hash="465975902e4ec60cb974f8e6cb30b2fa"/><file name="Axproducts.php" hash="0b425dcdf48578e727829112e6cacfd0"/><file name="Galleryposition.php" hash="1fe09377be47053af14d556fbb494d29"/><file name="Observer.php" hash="6f2ef3a1b7e67582d4acdc4c7ecedeb7"/><file name="Position.php" hash="576c9eccfc8e222588e0016fd8894ac7"/><dir name="Resource"><dir name="Ax360"><file name="Collection.php" hash="48d7f85f932259fdd06a62f15068a853"/></dir><file name="Ax360.php" hash="ad69211cd904f734019946ece44c07c0"/><dir name="Ax360set"><file name="Collection.php" hash="614398a735db3e8aa9de460c89c1b038"/></dir><file name="Ax360set.php" hash="e8c94cfc8d75c19e4762c3afad93b187"/><dir name="Axproducts"><file name="Collection.php" hash="15f673a08dab33c7a77f25b4c6641946"/></dir><file name="Axproducts.php" hash="93b114dd25c5e3fe501a78040ce2b36c"/></dir><file name="Words.php" hash="3c0d65a98cdaf81606f77d253c3256ae"/><file name="Yesno.php" hash="8cea5e1c9d6110c5cd54c6ffeda50382"/></dir><dir name="controllers"><file name="AxzoomController.php" hash="fdfdd7869652b47efd2c3aad987ce9ca"/></dir><dir name="etc"><file name="config.xml" hash="9e2d99cb5565e5d82f2b776a0b02faf3"/><file name="system.xml" hash="70a2823b657a74ac73a0d65683d8991e"/></dir><dir name="sql"><dir name="axzoom_setup"><file name="install-0.0.1.php" hash="ba3da6f585756889a43367811acdaf7f"/></dir></dir></dir></dir></dir></dir></target><target name="magedesign"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="axzoom.xml" hash="542d9cbf1adb9bf6f2887d9d5a124c4d"/></dir><dir name="template"><dir name="axzoom"><file name="tab.phtml" hash="eabd3c5d96d74acb4c1500432723f5fe"/><file name="tab360-sets.phtml" hash="4bfdedea0517ecda4af24ecb64be01f6"/><file name="tab360-settings.phtml" hash="4b685c21e77839dc9b08c3327dcfddbc"/><file name="tab360.phtml" hash="77f80ff3595dab89a9517ceea0234814"/><file name="uploader.phtml" hash="d08ee6e38dc788688307cb92de7c6400"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="axzoom.xml" hash="e7107f3d585d09d9b1b01f603b4a5d5e"/></dir><dir name="template"><dir name="ax_zoom"><dir><dir name="catalog"><dir name="product"><dir name="view"><file name="media.phtml" hash="882dafc4a1a3d0a6bbe6c120ae07d2e1"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir><dir name="modules"><file name="Ax_Zoom.xml" hash="33069afb3fd5c26823aa1e24f6573700"/></dir></dir></target><target name="magelocale"><dir><dir name="ru_RU"><file name="Ax_Zoom.csv" hash="ad9b1e1ad87a1187dbd076b43af97429"/></dir></dir></target><target name="mageweb"><dir><dir name="js"><dir name="axzoom"><file name="check_fallback.js" hash="e3b055d8f689d5b67f87a5d27aa4537b"/><file name="check_jquery.js" hash="2e9c357045f123583a4051f237e0b380"/><file name="check_jquery_admin.js" hash="22ea95fc18e575be50ef61ddd11409ed"/><file name="image_path.gif" hash="bf922e182e18a02613f26ca5eaa4c560"/><file name="jquery-1.11.3.min.js" hash="1c1e3d814cc7278f801463874463e504"/><file name="jquery-migrate-1.2.1.min.js" hash="eb05d8d73b5b13d8d84308a4751ece96"/><file name="jquery.fileupload-process.js" hash="0da6f8ef76956f6ce7842dcf8941d1fa"/><file name="jquery.fileupload-validate.js" hash="561d450d59e39724999629cae64cd80e"/><file name="jquery.fileupload.js" hash="d4b3a5c4f6e69185727cfe98f17f0239"/><file name="jquery.livequery.htc" hash="6fddf8d185aa26ca790c9f435fee8bad"/><file name="jquery.livequery.min.js" hash="295403b41c10cc54df7c580e269088ca"/><file name="jquery.ui.widget.min.js" hash="2425a542e6dde093dd85ac0b5adc0141"/><file name="lic.php" hash="f41e4001ab878f0abba43c749cd6f610"/><file name="no_image-100x100.jpg" hash="ebbaa789d1a5e5b1bb6fdb9ccd683aa2"/><dir><dir name="pic"><file name="readme.txt" hash="763fdb72282a84d27d9a6c93e014775a"/></dir><dir name="preview"><file name="index.php" hash="c304cfb13785e145e95d5f21cc95bd12"/><file name="preview.php" hash="0ebbc68bf74927c95587decbe2f24626"/></dir><dir name="tmp"><file name="readme.txt" hash="b17a61b9642c5d472107ab7023c5c880"/></dir><dir name="zip"><file name="readme.txt" hash="2134ad018dd3da577df745a04d22899f"/><file name=".htaccess" hash="209634bb0238704c4874c35d615ae59e"/></dir></dir><file name="zoomConfigCustomAZ.inc.php" hash="51cabd3bcb03b729b16841abd03c8382"/></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.1</min><max>5.7.99</max></php><extension><name>ionCube Loader</name><min/><max/></extension><extension><name>zip</name><min/><max/></extension></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>AJAX_ZOOM</name>
4
+ <version>1.2.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://www.ajax-zoom.com/index.php?cid=download">Commercial, demoware</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Responsive product detail view mousehover zoom extension with optional 360&#xB0; spins or multilevel 3D</summary>
10
  <description>Responsive, jQuery based mouse over zoom for viewing high resolution product images and optionally 360&#xB0; spins or multilevel 3D. Image pyramid / tiles view in responsive Fancybox or full screen on click. Upload or import 360&#xB0; images over admin interface. Optional responsive thumbnails slider integration. Instant (on-the-fly) generation of all thumbnails. Works great on touch-enabled devices. Free to download, install and test.</description>
11
+ <notes>Added 360 degree "Product Tour"</notes>
12
  <authors><author><name>AJAX-ZOOM</name><user>vadus</user><email>support@ajax-zoom.com</email></author></authors>
13
+ <date>2016-05-07</date>
14
+ <time>16:28:54</time>
15
+ <contents><target name="magelocal"><dir><dir name="Ax"><dir><dir name="Zoom"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="License.php" hash="66127902dffd0fd9a530057907733d46"/></dir></dir></dir><dir name="Tabs"><file name="Tabid.php" hash="e1c649d4992cc73a6601c129677df806"/></dir><file name="Tabs.php" hash="0239c3a73cdeb05fab451a3219bea07f"/></dir></dir><dir name="Helper"><file name="Data.php" hash="0f05da01383c450e5abb331f06bd3304"/><file name="Head.php" hash="8803a48e89902a3deec90a2145523830"/></dir><dir name="Model"><file name="Ax360.php" hash="78472a660d194da8df386ee208eff008"/><file name="Ax360set.php" hash="57c4e9979d8ae6ee709921718060d151"/><file name="Axproducts.php" hash="9e6449b0229d6c83497094bed536f5f9"/><file name="Galleryposition.php" hash="9d8812051417db9e39c4c5a1412deb81"/><file name="Observer.php" hash="bfcd571e1e0fd7f80176d733e0fa2075"/><file name="Position.php" hash="4df583defefa6a8a4302b3b06846a38c"/><file name="Position4.php" hash="d5b23c5a5cc98abd4b1ed45e0b829298"/><dir name="Resource"><dir name="Ax360"><file name="Collection.php" hash="95ab28070ce834f8176c5457b2f920e8"/></dir><file name="Ax360.php" hash="ca8ac71cf2b5dc3e5660946122c22e12"/><dir name="Ax360set"><file name="Collection.php" hash="448603fb57c42f09bd5e044214ff6bee"/></dir><file name="Ax360set.php" hash="52cd74b4bd994d6812db71f8ece455a1"/><dir name="Axproducts"><file name="Collection.php" hash="89e23ff705c2c4c8de3a2b5eb617deda"/></dir><file name="Axproducts.php" hash="7ec4b5dc2f19cc440a7dd3e440eaa8d1"/></dir><file name="Words.php" hash="a246e42282ccd636a38873ea3ca70237"/><file name="Yesno.php" hash="71b1887dcb4161688c7d9f64e245ec1c"/></dir><dir name="controllers"><file name="AxzoomController.php" hash="0bd17d075a13d9ab35320e21e6b1ae9e"/></dir><dir name="etc"><file name="config.xml" hash="0812f5e8e84ed28097781383b432e2a6"/><file name="system.xml" hash="566b6d069c0bd3ebace7222780e2d8c1"/></dir><dir name="sql"><dir name="axzoom_setup"><file name="install-0.0.1.php" hash="2b0d82512a29bce54905b9c99fe38f84"/></dir></dir></dir></dir></dir></dir></target><target name="magedesign"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="axzoom.xml" hash="9987ad3d3421b896101314e336b3fe7f"/></dir><dir name="template"><dir name="axzoom"><file name="tab.phtml" hash="5dab2ed3a1d1358f5d8acf2385bdc134"/><file name="tab360-sets.phtml" hash="1ddaad2fcf4545279290211ba12747a4"/><file name="tab360-settings.phtml" hash="4149220ce003f75f19938ac0dcc5d52e"/><file name="tab360.phtml" hash="9fd8e285234c5698d3000b6271cf5e5f"/><file name="uploader.phtml" hash="ee293453776e3d9862bd3c5cf03be13e"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="axzoom.xml" hash="46f90ee9227387c6e0df207d9e75aed7"/></dir><dir name="template"><dir name="ax_zoom"><dir><dir name="catalog"><dir name="product"><dir name="view"><file name="media.phtml" hash="cdbf8049e503797b779eab7bcee61443"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir><dir name="modules"><file name="Ax_Zoom.xml" hash="b3ca0f170cfea52154fac0d92fc8390e"/></dir></dir></target><target name="magelocale"><dir><dir name="ru_RU"><file name="Ax_Zoom.csv" hash="ad9b1e1ad87a1187dbd076b43af97429"/></dir></dir></target><target name="mageweb"><dir><dir name="js"><dir name="axzoom"><file name="check_fallback.js" hash="23a0cf74d487426d7124209136608d69"/><file name="check_jquery.js" hash="e6a9ffca4d09e86a4b795c63b8732fc3"/><file name="check_jquery_admin.js" hash="6b9d9517795bb2cf8e63bad60cea7a48"/><file name="image_path.gif" hash="bf922e182e18a02613f26ca5eaa4c560"/><file name="jquery-1.11.3.min.js" hash="1c1e3d814cc7278f801463874463e504"/><file name="jquery-migrate-1.2.1.min.js" hash="eb05d8d73b5b13d8d84308a4751ece96"/><file name="jquery.fileupload-process.js" hash="0da6f8ef76956f6ce7842dcf8941d1fa"/><file name="jquery.fileupload-validate.js" hash="561d450d59e39724999629cae64cd80e"/><file name="jquery.fileupload.js" hash="d4b3a5c4f6e69185727cfe98f17f0239"/><file name="jquery.livequery.htc" hash="6fddf8d185aa26ca790c9f435fee8bad"/><file name="jquery.livequery.min.js" hash="295403b41c10cc54df7c580e269088ca"/><file name="jquery.ui.widget.min.js" hash="2425a542e6dde093dd85ac0b5adc0141"/><file name="lic.php" hash="2dfd0c94f3d50bf36c7c7b70961c152a"/><file name="no_image-100x100.jpg" hash="ebbaa789d1a5e5b1bb6fdb9ccd683aa2"/><dir><dir name="pic"><file name="readme.txt" hash="763fdb72282a84d27d9a6c93e014775a"/></dir><dir name="preview"><file name="cropeditor.php" hash="cd0e6950d936a0ef9ceea7a3935f5d04"/><file name="index.php" hash="c304cfb13785e145e95d5f21cc95bd12"/><file name="preview.php" hash="c3e25a397b2fa733945611a9afc17d3d"/></dir><dir name="tmp"><file name="readme.txt" hash="b17a61b9642c5d472107ab7023c5c880"/></dir><dir name="zip"><file name="readme.txt" hash="2134ad018dd3da577df745a04d22899f"/><file name=".htaccess" hash="209634bb0238704c4874c35d615ae59e"/></dir></dir><file name="zoomConfigCustomAZ.inc.php" hash="b120374793d953ae1bfb49accc3e4733"/></dir></dir></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.2.1</min><max>5.7.99</max></php><extension><name>ionCube Loader</name><min/><max/></extension><extension><name>zip</name><min/><max/></extension></required></dependencies>
18
  </package>