Dexxtz_Product_Zoom - Version 1.0.0

Version Notes

Started

Download this release

Release Info

Developer Magento Core Team
Extension Dexxtz_Product_Zoom
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

Files changed (29) hide show
  1. app/code/community/Dexxtz/Productzoom/Helper/Data.php +365 -0
  2. app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Description/Position.php +20 -0
  3. app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Thumbnails/Position.php +22 -0
  4. app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Thumbnails/Qty.php +28 -0
  5. app/code/community/Dexxtz/Productzoom/etc/config.xml +179 -0
  6. app/code/community/Dexxtz/Productzoom/etc/system.xml +446 -0
  7. app/code/community/Dexxtz/Productzoom/sql/dexxtz_productzoom_setup/mysql4-install-1.0.0.php +39 -0
  8. app/design/adminhtml/default/default/layout/dexxtz/productzoom.xml +33 -0
  9. app/design/frontend/base/default/layout/dexxtz/productzoom.xml +54 -0
  10. app/design/frontend/base/default/template/dexxtz/productzoom/media.phtml +37 -0
  11. app/design/frontend/base/default/template/dexxtz/productzoom/modal.phtml +27 -0
  12. app/etc/modules/Dexxtz_Productzoom.xml +18 -0
  13. app/locale/en_US/Dexxtz_Productzoom.csv +83 -0
  14. app/locale/pt_BR/Dexxtz_Productzoom.csv +83 -0
  15. package.xml +21 -0
  16. skin/adminhtml/default/default/dexxtz/productzoom/images/arrow.gif +0 -0
  17. skin/adminhtml/default/default/dexxtz/productzoom/images/cross.gif +0 -0
  18. skin/adminhtml/default/default/dexxtz/productzoom/images/hs.png +0 -0
  19. skin/adminhtml/default/default/dexxtz/productzoom/images/hv.png +0 -0
  20. skin/adminhtml/default/default/dexxtz/productzoom/js/color.js +995 -0
  21. skin/frontend/base/default/dexxtz/productzoom/css/dexxtz.css +18 -0
  22. skin/frontend/base/default/dexxtz/productzoom/css/etalage.css +113 -0
  23. skin/frontend/base/default/dexxtz/productzoom/images/close.png +0 -0
  24. skin/frontend/base/default/dexxtz/productzoom/images/loading.gif +0 -0
  25. skin/frontend/base/default/dexxtz/productzoom/images/play.jpg +0 -0
  26. skin/frontend/base/default/dexxtz/productzoom/images/zoom.png +0 -0
  27. skin/frontend/base/default/dexxtz/productzoom/js/dexxtz-modal.js +40 -0
  28. skin/frontend/base/default/dexxtz/productzoom/js/jquery-2.1.1.js +4 -0
  29. skin/frontend/base/default/dexxtz/productzoom/js/jquery.etalage.min.js +37 -0
app/code/community/Dexxtz/Productzoom/Helper/Data.php ADDED
@@ -0,0 +1,365 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ class Dexxtz_Productzoom_Helper_Data extends Mage_Core_Helper_Abstract
12
+ {
13
+ public function getActive()
14
+ {
15
+ $active = Mage::getStoreConfig('dexxtz_productzoom/general/active');
16
+
17
+ return $active;
18
+ }
19
+
20
+ private function getAutoplay()
21
+ {
22
+ $value = Mage::getStoreConfig('dexxtz_productzoom/general/autoplay');
23
+ $autoplay = ($value == true) ? 'true' : 'false';
24
+
25
+ return $autoplay;
26
+ }
27
+
28
+ private function getAutoplayInterval()
29
+ {
30
+ $value = Mage::getStoreConfig('dexxtz_productzoom/general/autoplay_interval');
31
+ $autoplayInterval = ($value) ? $value : 6000;
32
+
33
+ return $autoplayInterval;
34
+ }
35
+
36
+ private function getFadeInterval()
37
+ {
38
+ $value = Mage::getStoreConfig('dexxtz_productzoom/general/fadein_interval');
39
+ $fadeInterval = ($value) ? $value : 0;
40
+
41
+ return $fadeInterval;
42
+ }
43
+
44
+ private function getShowIcon()
45
+ {
46
+ $value = Mage::getStoreConfig('dexxtz_productzoom/general/magnifier_icon');
47
+ $magnifierIcon = ($value == true) ? 'true' : 'false';
48
+
49
+ return $magnifierIcon;
50
+ }
51
+
52
+ private function getFeaturedWidth()
53
+ {
54
+ $value = Mage::getStoreConfig('dexxtz_productzoom/featured_settings/featured_width');
55
+ $featuredWidth = ($value) ? $value : '300';
56
+
57
+ return $featuredWidth;
58
+ }
59
+
60
+ private function getFeaturedHeight()
61
+ {
62
+ $value = Mage::getStoreConfig('dexxtz_productzoom/featured_settings/featured_height');
63
+ $featuredHeight = ($value) ? $value : '300';
64
+
65
+ return $featuredHeight;
66
+ }
67
+
68
+ private function getThubnailsQty()
69
+ {
70
+ $qty = Mage::getStoreConfig('dexxtz_productzoom/thumbnails_settings/thumbnails_qty');
71
+ $qty = ($this->getVideoActive() == 1) ? $qty + 1: $qty;
72
+
73
+ return $qty;
74
+ }
75
+
76
+ private function getThubnailsPosition()
77
+ {
78
+ $position = Mage::getStoreConfig('dexxtz_productzoom/thumbnails_settings/thumbnails_position');
79
+
80
+ return $position;
81
+ }
82
+
83
+ private function getImageZoomWidth()
84
+ {
85
+ $value = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/zoom_image_width');
86
+ $zoomWidth = ($value) ? $value : 300;
87
+
88
+ return $zoomWidth;
89
+ }
90
+
91
+ private function getImageZoomHeight()
92
+ {
93
+ $value = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/zoom_image_height');
94
+ $zoomHeight = ($value) ? $value : 300;
95
+
96
+ return $zoomHeight;
97
+ }
98
+
99
+ private function getZoomAreaWidth()
100
+ {
101
+ $value = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/zoom_area_width');
102
+ $areaWidth = ($value) ? $value : 500;
103
+
104
+ return $areaWidth;
105
+ }
106
+
107
+ private function getZoomAreaHeight()
108
+ {
109
+ $value = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/zoom_area_height');
110
+ $areaHeight = ($value) ? $value : null;
111
+
112
+ return $areaHeight;
113
+ }
114
+
115
+ private function getDescriptionActive()
116
+ {
117
+ $active = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/description_active');
118
+ if ($active == 0) {
119
+ $js = ' show_descriptions: false,';
120
+ }
121
+
122
+ return $js;
123
+ }
124
+
125
+ private function getDescriptionPosition()
126
+ {
127
+ $position = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/description_position');
128
+
129
+ return $position;
130
+ }
131
+
132
+ private function getDescriptionOpacity()
133
+ {
134
+ $opacity = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/description_opacity');
135
+
136
+ return $opacity;
137
+ }
138
+
139
+ private function getOpacityInative()
140
+ {
141
+ $value = Mage::getStoreConfig('dexxtz_productzoom/css_settings/opacity_inative');
142
+ $opacityInative = ($value) ? $value : '0.3';
143
+
144
+ return $opacityInative;
145
+ }
146
+
147
+ private function getOpacityMagnifier()
148
+ {
149
+ $value = Mage::getStoreConfig('dexxtz_productzoom/css_settings/opacity_magnifier');
150
+ $opacityMagnifier = ($value) ? $value : '0.5';
151
+
152
+ return $opacityMagnifier;
153
+ }
154
+
155
+ public function getCss()
156
+ {
157
+ $border = Mage::getStoreConfig('dexxtz_productzoom/css_settings/border');
158
+ $box = Mage::getStoreConfig('dexxtz_productzoom/css_settings/box_shadow');
159
+
160
+ $css = '<style type="text/css" media="all">' . "\r";
161
+
162
+ if ($border || $box) {
163
+
164
+ $cssBorder = ($border) ? 'border: ' . $border . '; ' : '';
165
+ $cssBox = ($box) ? 'box-shadow: ' . $box . '; ' : '';
166
+
167
+ $css .= ' #etalage .etalage_magnifier, ';
168
+ $css .= "\r" . ' #etalage .etalage_thumb, ';
169
+ $css .= "\r" . ' #etalage .etalage_small_thumbs li, ';
170
+ $css .= "\r" . ' #etalage .etalage_zoom_area { ' . $cssBorder . $cssBox . '}' . "\r";
171
+ }
172
+
173
+ $css .= $this->getDescriptionCss() . "\r";
174
+ $css .= ' .dexxtz_video img { opacity: ' . $this->getOpacityMagnifier() . '; }' . "\r";
175
+ $css .= ' .product-view .product-img-box { width: ' . $this->getFeaturedWidth() . 'px; }' . "\r";
176
+ $css .= '</style>' . "\r";
177
+
178
+ echo $css;
179
+ }
180
+
181
+ public function getJs()
182
+ {
183
+ $js = '<script type="text/javascript">' . "\r";
184
+ $js .= ' var jQuery = jQuery.noConflict();' . "\r";
185
+ $js .= ' jQuery(document).ready(function(jQuery){' . "\r";
186
+ $js .= ' jQuery("#etalage").etalage({' . "\r";
187
+ $js .= ' thumb_image_width: ' . $this->getFeaturedWidth() . ',' . "\r";
188
+ $js .= ' thumb_image_height: ' . $this->getFeaturedHeight() . ',' . "\r";
189
+ $js .= ' source_image_width: ' . $this->getImageZoomWidth() . ',' . "\r";
190
+ $js .= ' source_image_height: ' . $this->getImageZoomHeight() . ',' . "\r";
191
+ $js .= ' zoom_area_width: ' . $this->getZoomAreaWidth() . ',' . "\r";
192
+ $js .= ($hz = $this->getZoomAreaHeight()) ? ' zoom_area_height: ' . $hz . ',' . "\r" : null;
193
+ $js .= $this->getDescriptionActive(). "\r";
194
+ $js .= ' description_location: \'' . $this->getDescriptionPosition() . '\',' . "\r";
195
+ $js .= ' description_opacity: ' . $this->getDescriptionOpacity() . ',' . "\r";
196
+ $js .= ' small_thumbs: ' . $this->getThubnailsQty() . ',' . "\r";
197
+ $js .= ' smallthumb_inactive_opacity: ' . $this->getOpacityInative() . ',' . "\r";
198
+ $js .= ' smallthumbs_position: "' . $this->getThubnailsPosition() . '",' . "\r";
199
+ $js .= ' magnifier_opacity: ' . $this->getOpacityMagnifier() . ',' . "\r";
200
+ $js .= ' show_icon: ' . $this->getShowIcon() . ',' . "\r";
201
+ $js .= ' speed: ' . $this->getFadeInterval() . ',' . "\r";
202
+ $js .= ' autoplay: ' . $this->getAutoplay() . ',' . "\r";
203
+ $js .= ' autoplay_interval: ' . $this->getAutoplayInterval() . ',' . "\r";
204
+ $js .= ' });' . "\r\r";
205
+
206
+ $images = count(Mage::registry('current_product')->getMediaGalleryImages());
207
+
208
+ if ($this->getVideoActive() == 1 && $images > 1) {
209
+ $js .= $this->getVideoJs();
210
+ }
211
+
212
+ $js .= ' });' . "\r";
213
+ $js .= '</script>' . "\r";
214
+
215
+ echo $js;
216
+ }
217
+
218
+ private function getVideoActive()
219
+ {
220
+ $active = Mage::getStoreConfig('dexxtz_productzoom/video/active');
221
+
222
+ return $active;
223
+ }
224
+
225
+ public function getTabName()
226
+ {
227
+ $groupCollection = Mage::getModel('eav/entity_attribute_group')->getResourceCollection();
228
+ $groups = $groupCollection->addFilter('attribute_group_name', 'Video')->addFilter('attribute_set_id', 4);
229
+
230
+ if ($groups) {
231
+ $group = current($groups->getData());
232
+ if ($id = $group['attribute_group_id'])
233
+ $groupTabName = 'group_' . $id;
234
+
235
+ if ($this->getVideoActive() == 0) {
236
+ return $groupTabName;
237
+ } else {
238
+ if ($this->getActive() == 0) {
239
+ return $groupTabName;
240
+ }
241
+ }
242
+ }
243
+ }
244
+
245
+ private function getVideoJs()
246
+ {
247
+ $video = (Mage::registry('current_product')->getDexxtzVideo()) ? true : false;
248
+ $media = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
249
+ $imgValue = Mage::getStoreConfig('dexxtz_productzoom/video/image_upload');
250
+ $imgDefault = Mage::getBaseUrl('skin') . 'frontend/base/default/dexxtz/productzoom/images/play.jpg';
251
+ $img = ($imgValue) ? $media . 'dexxtz/productzoom/images/' .$imgValue : $imgDefault;
252
+
253
+ $js .= ' var video = "' . $video . '";' . "\r";
254
+ $js .= ' var position = "' . $this->getThubnailsPosition() . '";' . "\r";
255
+ $js .= ' var styleLi = \'style="\' + jQuery(\'.etalage_small_thumbs\').attr(\'style\') + \'"\';' . "\r";
256
+ $js .= ' var styleImg = \'style="\' + jQuery(\'.etalage_small_thumb\').attr(\'style\') + \'"\';' . "\r";
257
+ $js .= ' var imgTag = \'<img class="etalage_thumb_image" onclick="DexxtzModal(this)"\' + styleImg + \'src="' . $img .'" />\'' . "\r\r";
258
+ $js .= ' if (jQuery(\'.etalage_smallthumb_active\').length && video == true){' . "\r";
259
+ $js .= ' jQuery("ul#etalage").append(\'<li class="etalage_small_thumbs dexxtz_video"\' + styleLi + \'><ul><li>\' + imgTag + \'</li></ul></li>\');' . "\r\r";
260
+ $js .= ' }' . "\r";
261
+ $js .= ' var li = jQuery(".etalage_small_thumbs");' . "\r";
262
+ $js .= ' var img = jQuery(".dexxtz_video");' . "\r\r";
263
+ $js .= ' var newWidth = li.width() - img.width();' . "\r";
264
+ $js .= ' var newHeight = li.height() - img.height();' . "\r\r";
265
+ $js .= ' if (position == "top" || position == "bottom") {' . "\r";
266
+ $js .= ' jQuery("li.etalage_small_thumbs").css("width", newWidth + "px");' . "\r";
267
+ $js .= ' jQuery(".dexxtz_video").attr("style", position + ": 0; right: 0;");' . "\r";
268
+ $js .= ' } else {' . "\r";
269
+ $js .= ' jQuery("li.etalage_small_thumbs").css("height", newHeight + "px");' . "\r";
270
+ $js .= ' jQuery(".dexxtz_video").attr("style", position + ": 0; bottom: 0;");' . "\r";
271
+ $js .= ' }' . "\r";
272
+
273
+ return $js;
274
+ }
275
+
276
+ private function getDescriptionCss()
277
+ {
278
+ $bg = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/background_color');
279
+ $color = Mage::getStoreConfig('dexxtz_productzoom/zoom_settings/description_color');
280
+
281
+ $css .= ($bg) ? ' background-color: ' . $bg . ';' : '';
282
+ $css .= ($color) ? ' color: ' . $color . ';' : '';
283
+ $css = ($bg || $color) ? ' #etalage .etalage_description { ' . $css . ' }' : '';
284
+
285
+ return $css;
286
+ }
287
+
288
+ public function getVideoCss()
289
+ {
290
+ $bg = Mage::getStoreConfig('dexxtz_productzoom/video/background_color');
291
+ $op = Mage::getStoreConfig('dexxtz_productzoom/video/background_opacity');
292
+ $border = Mage::getStoreConfig('dexxtz_productzoom/video/border');
293
+ $box = Mage::getStoreConfig('dexxtz_productzoom/video/box_shadow');
294
+ $bgContent = Mage::getStoreConfig('dexxtz_productzoom/video/background_content');
295
+
296
+ $css = '<style type="text/css" media="all">' . "\r";
297
+
298
+ if ($bg || $op) {
299
+ $cssBg = ($bg) ? 'background-color: ' . $bg . '; ' : '';
300
+ $cssOp = ($op) ? 'opacity: ' . $op . '; ' : '';
301
+ $css .= ' .dexxtz-bg-modal { ' . $cssBg . $cssOp . '}' . "\r";
302
+ }
303
+
304
+ if ($border || $box || $bgContent) {
305
+ $cssBorder = ($border) ? 'border: ' . $border . '; ' : '';
306
+ $cssBox = ($box) ? 'box-shadow: ' . $box . '; ' : '';
307
+ $cssBgContent = ($bgContent) ? 'background-color: ' . $bgContent . '; ' : '';
308
+ $css .= ' .dexxtz-modal-content div { ' . $cssBorder . $cssBox . $cssBgContent . '}' . "\r";
309
+ }
310
+
311
+ $css .= '</style>' . "\r";
312
+
313
+ echo $css;
314
+ }
315
+
316
+ private function getImageResize()
317
+ {
318
+ $resize = Mage::getStoreConfig('dexxtz_productzoom/featured_settings/resize');
319
+
320
+ return $resize;
321
+ }
322
+
323
+ private function getImageBg()
324
+ {
325
+ $bg = Mage::getStoreConfig('dexxtz_productzoom/featured_settings/background_color');
326
+
327
+ return $bg;
328
+ }
329
+
330
+ public function getImageFeatured($img, $zoom = false)
331
+ {
332
+ $w = $this->getFeaturedWidth();
333
+ $h = $this->getFeaturedHeight();
334
+ $wz = $this->getImageZoomWidth();
335
+ $hz = $this->getImageZoomHeight();
336
+ $resize = $this->getImageResize();
337
+ $bg = $this->getImageBg();
338
+ $imgFeatured = null;
339
+
340
+ if ($resize) {
341
+ if ($bg) {
342
+ $hex = str_replace("#", "", $bg);
343
+
344
+ if(strlen($hex) == 3) {
345
+ $r = hexdec(substr($hex,0,1).substr($hex,0,1));
346
+ $g = hexdec(substr($hex,1,1).substr($hex,1,1));
347
+ $b = hexdec(substr($hex,2,1).substr($hex,2,1));
348
+ } else {
349
+ $r = hexdec(substr($hex,0,2));
350
+ $g = hexdec(substr($hex,2,2));
351
+ $b = hexdec(substr($hex,4,2));
352
+ }
353
+
354
+ $image = $img->backgroundColor($r, $g, $b);
355
+ }
356
+
357
+ $imgFeatured = ($zoom == true) ? $image->resize($wz, $hz) : $image->resize($w, $h);
358
+
359
+ } else {
360
+ $imgFeatured = ($zoom == true) ? $img->keepFrame(false)->resize($wz, $hz) : $img->keepFrame(false)->resize($w, $h) ;
361
+ }
362
+
363
+ return $imgFeatured;
364
+ }
365
+ }
app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Description/Position.php ADDED
@@ -0,0 +1,20 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ class Dexxtz_Productzoom_Model_System_Config_Source_Description_Position
12
+ {
13
+ public function toOptionArray()
14
+ {
15
+ $helper = Mage::helper('productzoom');
16
+ return array(array("value" => "top" , "label" => $helper->__("Top")),
17
+ array("value" => "bottom" , "label" => $helper->__("Bottom")),
18
+ );
19
+ }
20
+ }
app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Thumbnails/Position.php ADDED
@@ -0,0 +1,22 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ class Dexxtz_Productzoom_Model_System_Config_Source_Thumbnails_Position
12
+ {
13
+ public function toOptionArray()
14
+ {
15
+ $helper = Mage::helper('productzoom');
16
+ return array(array("value" => "top" , "label" => $helper->__("Top")),
17
+ array("value" => "right" , "label" => $helper->__("Right")),
18
+ array("value" => "bottom" , "label" => $helper->__("Bottom")),
19
+ array("value" => "left" , "label" => $helper->__("Left"))
20
+ );
21
+ }
22
+ }
app/code/community/Dexxtz/Productzoom/Model/System/Config/Source/Thumbnails/Qty.php ADDED
@@ -0,0 +1,28 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ class Dexxtz_Productzoom_Model_System_Config_Source_Thumbnails_Qty
12
+ {
13
+ public function toOptionArray()
14
+ {
15
+ $helper = Mage::helper('productzoom');
16
+ return array(array("value" => "1" , "label" => $helper->__("%s fixed thumbnail", 1)),
17
+ array("value" => "2" , "label" => $helper->__("%s fixed thumbnails", 2)),
18
+ array("value" => "3" , "label" => $helper->__("%s fixed thumbnails", 3)),
19
+ array("value" => "4" , "label" => $helper->__("%s fixed thumbnails", 4)),
20
+ array("value" => "5" , "label" => $helper->__("%s fixed thumbnails", 5)),
21
+ array("value" => "6" , "label" => $helper->__("%s fixed thumbnails", 6)),
22
+ array("value" => "7" , "label" => $helper->__("%s fixed thumbnails", 7)),
23
+ array("value" => "8" , "label" => $helper->__("%s fixed thumbnails", 8)),
24
+ array("value" => "9" , "label" => $helper->__("%s fixed thumbnails", 9)),
25
+ array("value" => "10" , "label" => $helper->__("%s fixed thumbnails", 10))
26
+ );
27
+ }
28
+ }
app/code/community/Dexxtz/Productzoom/etc/config.xml ADDED
@@ -0,0 +1,179 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!--
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+ -->
11
+ <config>
12
+ <modules>
13
+ <Dexxtz_Productzoom>
14
+ <version>1.0.0</version>
15
+ </Dexxtz_Productzoom>
16
+ </modules>
17
+ <frontend>
18
+ <routers>
19
+ <productzoom>
20
+ <use>standard</use>
21
+ <args>
22
+ <module>Dexxtz_Productzoom</module>
23
+ <frontName>productzoom</frontName>
24
+ </args>
25
+ </productzoom>
26
+ </routers>
27
+ <translate>
28
+ <modules>
29
+ <Dexxtz_Productzoom>
30
+ <files>
31
+ <default>Dexxtz_Productzoom.csv</default>
32
+ </files>
33
+ </Dexxtz_Productzoom>
34
+ </modules>
35
+ </translate>
36
+ <layout>
37
+ <updates>
38
+ <productzoom>
39
+ <file>dexxtz/productzoom.xml</file>
40
+ </productzoom>
41
+ </updates>
42
+ </layout>
43
+ </frontend>
44
+ <admin>
45
+ <routers>
46
+ <productzoom>
47
+ <use>admin</use>
48
+ <args>
49
+ <module>Dexxtz_Productzoom</module>
50
+ <frontName>productzoom</frontName>
51
+ </args>
52
+ </productzoom>
53
+ <adminhtml>
54
+ <args>
55
+ <modules>
56
+ <productzoom before="Mage_Adminhtml">Dexxtz_Productzoom</productzoom>
57
+ </modules>
58
+ </args>
59
+ </adminhtml>
60
+ </routers>
61
+ </admin>
62
+ <adminhtml>
63
+ <acl>
64
+ <resources>
65
+ <admin>
66
+ <children>
67
+ <system>
68
+ <children>
69
+ <config>
70
+ <children>
71
+ <dexxtz_productzoom translate="title" module="productzoom">
72
+ <title>Config CloudZoom</title>
73
+ <sort_order>50</sort_order>
74
+ </dexxtz_productzoom>
75
+ </children>
76
+ </config>
77
+ </children>
78
+ </system>
79
+ </children>
80
+ </admin>
81
+ </resources>
82
+ </acl>
83
+ <translate>
84
+ <modules>
85
+ <Dexxtz_Productzoom>
86
+ <files>
87
+ <default>Dexxtz_Productzoom.csv</default>
88
+ </files>
89
+ </Dexxtz_Productzoom>
90
+ </modules>
91
+ </translate>
92
+ <layout>
93
+ <updates>
94
+ <productzoom>
95
+ <file>dexxtz/productzoom.xml</file>
96
+ </productzoom>
97
+ </updates>
98
+ </layout>
99
+ </adminhtml>
100
+ <global>
101
+ <resources>
102
+ <dexxtz_productzoom_setup>
103
+ <setup>
104
+ <module>Dexxtz_Productzoom</module>
105
+ </setup>
106
+ <connection>
107
+ <use>core_setup</use>
108
+ </connection>
109
+ </dexxtz_productzoom_setup>
110
+ <productzoom_write>
111
+ <connection>
112
+ <use>core_write</use>
113
+ </connection>
114
+ </productzoom_write>
115
+ <productzoom_read>
116
+ <connection>
117
+ <use>core_read</use>
118
+ </connection>
119
+ </productzoom_read>
120
+ </resources>
121
+ <blocks>
122
+ <dexxtz_productzoom>
123
+ <class>Dexxtz_Productzoom_Block</class>
124
+ </dexxtz_productzoom>
125
+ </blocks>
126
+ <models>
127
+ <dexxtz_productzoom>
128
+ <class>Dexxtz_Productzoom_Model</class>
129
+ </dexxtz_productzoom>
130
+ </models>
131
+ <helpers>
132
+ <productzoom>
133
+ <class>Dexxtz_Productzoom_Helper</class>
134
+ </productzoom>
135
+ </helpers>
136
+ </global>
137
+ <default>
138
+ <dexxtz_productzoom>
139
+ <general>
140
+ <autoplay>1</autoplay>
141
+ <autoplay_interval>6000</autoplay_interval>
142
+ <fadein_interval>600</fadein_interval>
143
+ <magnifier_icon>1</magnifier_icon>
144
+ </general>
145
+ <featured_settings>
146
+ <featured_width>300</featured_width>
147
+ <featured_height>300</featured_height>
148
+ </featured_settings>
149
+ <thumbnails_settings>
150
+ <thumbnails_qty>3</thumbnails_qty>
151
+ <thumbnails_position>bottom</thumbnails_position>
152
+ </thumbnails_settings>
153
+ <zoom_settings>
154
+ <zoom_image_width>1200</zoom_image_width>
155
+ <zoom_image_height>1200</zoom_image_height>
156
+ <zoom_area_width>500</zoom_area_width>
157
+ <zoom_area_height>500</zoom_area_height>
158
+ <description_active>1</description_active>
159
+ <description_position>bottom</description_position>
160
+ <description_opacity>0.7</description_opacity>
161
+ <background_color>#FFFFFF</background_color>
162
+ <description_color>#000000</description_color>
163
+ </zoom_settings>
164
+ <css_settings>
165
+ <border>1px solid #DDDDDD</border>
166
+ <box_shadow>0 0 10px #DDDDDD</box_shadow>
167
+ <opacity_inative>0.3</opacity_inative>
168
+ <opacity_magnifier>0.5</opacity_magnifier>
169
+ </css_settings>
170
+ <video>
171
+ <background_color>#000000</background_color>
172
+ <background_opacity>0.7</background_opacity>
173
+ <border>1px solid #DDDDDD</border>
174
+ <box_shadow>0 0 10px #DDDDDD</box_shadow>
175
+ <background_content>#FFFFFF</background_content>
176
+ </video>
177
+ </dexxtz_productzoom>
178
+ </default>
179
+ </config>
app/code/community/Dexxtz/Productzoom/etc/system.xml ADDED
@@ -0,0 +1,446 @@
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+ -->
11
+ <config>
12
+ <tabs>
13
+ <dexxtz translate="label">
14
+ <label>Dexxtz</label>
15
+ <sort_order>150</sort_order>
16
+ </dexxtz>
17
+ </tabs>
18
+ <sections>
19
+ <dexxtz_productzoom translate="label" module="productzoom">
20
+ <label>Product Image Zoom</label>
21
+ <tab>dexxtz</tab>
22
+ <frontend_type>text</frontend_type>
23
+ <sort_order>70</sort_order>
24
+ <show_in_default>1</show_in_default>
25
+ <show_in_website>1</show_in_website>
26
+ <show_in_store>1</show_in_store>
27
+ <groups>
28
+ <general translate="label">
29
+ <label>General Settings</label>
30
+ <frontend_type>text</frontend_type>
31
+ <sort_order>10</sort_order>
32
+ <show_in_default>1</show_in_default>
33
+ <show_in_website>1</show_in_website>
34
+ <show_in_store>1</show_in_store>
35
+ <fields>
36
+ <active>
37
+ <label>Active</label>
38
+ <comment>Enables or disables customization on product page.</comment>
39
+ <frontend_type>select</frontend_type>
40
+ <source_model>adminhtml/system_config_source_yesno</source_model>
41
+ <sort_order>10</sort_order>
42
+ <show_in_default>1</show_in_default>
43
+ <show_in_website>1</show_in_website>
44
+ <show_in_store>1</show_in_store>
45
+ </active>
46
+ <autoplay>
47
+ <label>Autoplay</label>
48
+ <comment>Enables or disables the automatic image change.</comment>
49
+ <frontend_type>select</frontend_type>
50
+ <source_model>adminhtml/system_config_source_yesno</source_model>
51
+ <sort_order>20</sort_order>
52
+ <show_in_default>1</show_in_default>
53
+ <show_in_website>1</show_in_website>
54
+ <show_in_store>1</show_in_store>
55
+ </autoplay>
56
+ <autoplay_interval>
57
+ <comment>Example: (6000), only integer is valid.</comment>
58
+ <tooltip>Speed of interval of Image change.</tooltip>
59
+ <label>Autoplay interval time</label>
60
+ <validate>validate-digits</validate>
61
+ <frontend_type>text</frontend_type>
62
+ <sort_order>30</sort_order>
63
+ <show_in_default>1</show_in_default>
64
+ <show_in_website>1</show_in_website>
65
+ <show_in_store>1</show_in_store>
66
+ <depends>
67
+ <autoplay>1</autoplay>
68
+ </depends>
69
+ </autoplay_interval>
70
+ <fadein_interval>
71
+ <label>Fade in interval</label>
72
+ <comment>Example: (600), only integer is valid.</comment>
73
+ <tooltip>It is the image transition effect, how much most the transition is slower.</tooltip>
74
+ <validate>validate-digits</validate>
75
+ <frontend_type>text</frontend_type>
76
+ <sort_order>40</sort_order>
77
+ <show_in_default>1</show_in_default>
78
+ <show_in_website>1</show_in_website>
79
+ <show_in_store>1</show_in_store>
80
+ </fadein_interval>
81
+ <magnifier_icon>
82
+ <label>Show magnifier icon</label>
83
+ <comment>Display magnifying glass icon on the main image.</comment>
84
+ <frontend_type>select</frontend_type>
85
+ <source_model>adminhtml/system_config_source_yesno</source_model>
86
+ <sort_order>50</sort_order>
87
+ <show_in_default>1</show_in_default>
88
+ <show_in_website>1</show_in_website>
89
+ <show_in_store>1</show_in_store>
90
+ </magnifier_icon>
91
+ </fields>
92
+ </general>
93
+ <featured_settings translate="label">
94
+ <label>Featured Picture Settings</label>
95
+ <frontend_type>text</frontend_type>
96
+ <sort_order>20</sort_order>
97
+ <show_in_default>1</show_in_default>
98
+ <show_in_website>1</show_in_website>
99
+ <show_in_store>1</show_in_store>
100
+ <fields>
101
+ <featured_width>
102
+ <label>Width</label>
103
+ <comment>Main image width, example: (260), enter only integer.</comment>
104
+ <validate>validate-digits</validate>
105
+ <frontend_type>text</frontend_type>
106
+ <sort_order>10</sort_order>
107
+ <show_in_default>1</show_in_default>
108
+ <show_in_website>1</show_in_website>
109
+ <show_in_store>1</show_in_store>
110
+ </featured_width>
111
+ <featured_height>
112
+ <label>Height</label>
113
+ <comment>Main image height, example: (260), enter only integer.</comment>
114
+ <validate>validate-digits</validate>
115
+ <frontend_type>text</frontend_type>
116
+ <sort_order>20</sort_order>
117
+ <show_in_default>1</show_in_default>
118
+ <show_in_website>1</show_in_website>
119
+ <show_in_store>1</show_in_store>
120
+ </featured_height>
121
+ <resize>
122
+ <label>Resize image in scale</label>
123
+ <comment>Keep the image in original aspect ratio.</comment>
124
+ <tooltip>If the image does not reaches minimum the in proportion size is added a frame maintaining the scale.</tooltip>
125
+ <frontend_type>select</frontend_type>
126
+ <source_model>adminhtml/system_config_source_yesno</source_model>
127
+ <sort_order>30</sort_order>
128
+ <show_in_default>1</show_in_default>
129
+ <show_in_website>1</show_in_website>
130
+ <show_in_store>1</show_in_store>
131
+ </resize>
132
+ <background_color>
133
+ <label>Background color of resize</label>
134
+ <comment>Change the background color of frame if necessary.</comment>
135
+ <tooltip>After resizing the image, is added a frame if the image does not reach minimum proportion, the color selected in the field changes the background color of this frame.</tooltip>
136
+ <validate>color-switch</validate>
137
+ <frontend_type>text</frontend_type>
138
+ <sort_order>40</sort_order>
139
+ <show_in_default>1</show_in_default>
140
+ <show_in_website>1</show_in_website>
141
+ <show_in_store>1</show_in_store>
142
+ <depends>
143
+ <resize>1</resize>
144
+ </depends>
145
+ </background_color>
146
+ </fields>
147
+ </featured_settings>
148
+ <thumbnails_settings translate="label">
149
+ <label>Thumbnails Settings</label>
150
+ <frontend_type>text</frontend_type>
151
+ <sort_order>30</sort_order>
152
+ <show_in_default>1</show_in_default>
153
+ <show_in_website>1</show_in_website>
154
+ <show_in_store>1</show_in_store>
155
+ <fields>
156
+ <thumbnails_qty>
157
+ <label>Show</label>
158
+ <comment>Fixed amount of thumbnails shown.</comment>
159
+ <frontend_type>select</frontend_type>
160
+ <source_model>dexxtz_productzoom/system_config_source_thumbnails_qty</source_model>
161
+ <sort_order>10</sort_order>
162
+ <show_in_default>1</show_in_default>
163
+ <show_in_website>1</show_in_website>
164
+ <show_in_store>1</show_in_store>
165
+ </thumbnails_qty>
166
+ <thumbnails_position>
167
+ <label>Position of thumbnails</label>
168
+ <comment>Position of where it will be displayed thumbnails.</comment>
169
+ <tooltip>The position of the thumbnails is based in the main picture, ie the thumbnails will positioned in the chosen side (top, right, bottom and left) of the main image.</tooltip>
170
+ <frontend_type>select</frontend_type>
171
+ <source_model>dexxtz_productzoom/system_config_source_thumbnails_position</source_model>
172
+ <sort_order>20</sort_order>
173
+ <show_in_default>1</show_in_default>
174
+ <show_in_website>1</show_in_website>
175
+ <show_in_store>1</show_in_store>
176
+ </thumbnails_position>
177
+ </fields>
178
+ </thumbnails_settings>
179
+ <zoom_settings translate="label">
180
+ <label>Zoom Settings</label>
181
+ <frontend_type>text</frontend_type>
182
+ <sort_order>40</sort_order>
183
+ <show_in_default>1</show_in_default>
184
+ <show_in_website>1</show_in_website>
185
+ <show_in_store>1</show_in_store>
186
+ <fields>
187
+ <zoom_image_width>
188
+ <label>Width image of zoom</label>
189
+ <comment>Example: (800), enter only integer</comment>
190
+ <validate>validate-digits</validate>
191
+ <frontend_type>text</frontend_type>
192
+ <sort_order>10</sort_order>
193
+ <show_in_default>1</show_in_default>
194
+ <show_in_website>1</show_in_website>
195
+ <show_in_store>1</show_in_store>
196
+ </zoom_image_width>
197
+ <zoom_image_height>
198
+ <label>Height image of zoom</label>
199
+ <comment>Example: (800), enter only integer</comment>
200
+ <validate>validate-digits</validate>
201
+ <frontend_type>text</frontend_type>
202
+ <sort_order>20</sort_order>
203
+ <show_in_default>1</show_in_default>
204
+ <show_in_website>1</show_in_website>
205
+ <show_in_store>1</show_in_store>
206
+ </zoom_image_height>
207
+ <zoom_area_width>
208
+ <label>Zoom area width</label>
209
+ <comment>Example: (500), enter only integer</comment>
210
+ <validate>validate-digits</validate>
211
+ <frontend_type>text</frontend_type>
212
+ <sort_order>30</sort_order>
213
+ <show_in_default>1</show_in_default>
214
+ <show_in_website>1</show_in_website>
215
+ <show_in_store>1</show_in_store>
216
+ </zoom_area_width>
217
+ <zoom_area_height>
218
+ <label>Zoom area height</label>
219
+ <comment>Example: (500) or blank = automatic, enter only integer.</comment>
220
+ <validate>validate-digits</validate>
221
+ <tooltip>If you want the height is automatic with the content of the images, leave this field blank.</tooltip>
222
+ <frontend_type>text</frontend_type>
223
+ <sort_order>40</sort_order>
224
+ <show_in_default>1</show_in_default>
225
+ <show_in_website>1</show_in_website>
226
+ <show_in_store>1</show_in_store>
227
+ </zoom_area_height>
228
+ <description_active>
229
+ <label>Show description</label>
230
+ <comment>Shown description of the image, on image of zoom.</comment>
231
+ <frontend_type>select</frontend_type>
232
+ <source_model>adminhtml/system_config_source_yesno</source_model>
233
+ <sort_order>50</sort_order>
234
+ <show_in_default>1</show_in_default>
235
+ <show_in_website>1</show_in_website>
236
+ <show_in_store>1</show_in_store>
237
+ </description_active>
238
+ <description_position>
239
+ <label>Position of description</label>
240
+ <comment>Position of description of image of zoom.</comment>
241
+ <frontend_type>select</frontend_type>
242
+ <source_model>dexxtz_productzoom/system_config_source_description_position</source_model>
243
+ <sort_order>60</sort_order>
244
+ <show_in_default>1</show_in_default>
245
+ <show_in_website>1</show_in_website>
246
+ <show_in_store>1</show_in_store>
247
+ <depends>
248
+ <description_active>1</description_active>
249
+ </depends>
250
+ </description_position>
251
+ <description_opacity>
252
+ <label>Opacity of description</label>
253
+ <comment>Example: (0.7), default of css.</comment>
254
+ <validate>validate-number-range number-range-0-1</validate>
255
+ <frontend_type>text</frontend_type>
256
+ <sort_order>70</sort_order>
257
+ <show_in_default>1</show_in_default>
258
+ <show_in_website>1</show_in_website>
259
+ <show_in_store>1</show_in_store>
260
+ <depends>
261
+ <description_active>1</description_active>
262
+ </depends>
263
+ </description_opacity>
264
+ <background_color>
265
+ <label>Background color of description</label>
266
+ <comment>Example: (#FFFFF).</comment>
267
+ <validate>color-switch</validate>
268
+ <frontend_type>text</frontend_type>
269
+ <sort_order>80</sort_order>
270
+ <show_in_default>1</show_in_default>
271
+ <show_in_website>1</show_in_website>
272
+ <show_in_store>1</show_in_store>
273
+ <depends>
274
+ <description_active>1</description_active>
275
+ </depends>
276
+ </background_color>
277
+ <description_color>
278
+ <label>Color of description</label>
279
+ <comment>Example: (#000000).</comment>
280
+ <validate>color-switch</validate>
281
+ <frontend_type>text</frontend_type>
282
+ <sort_order>90</sort_order>
283
+ <show_in_default>1</show_in_default>
284
+ <show_in_website>1</show_in_website>
285
+ <show_in_store>1</show_in_store>
286
+ <depends>
287
+ <description_active>1</description_active>
288
+ </depends>
289
+ </description_color>
290
+ </fields>
291
+ </zoom_settings>
292
+ <css_settings translate="label">
293
+ <label>Css Settings</label>
294
+ <frontend_type>text</frontend_type>
295
+ <sort_order>50</sort_order>
296
+ <show_in_default>1</show_in_default>
297
+ <show_in_website>1</show_in_website>
298
+ <show_in_store>1</show_in_store>
299
+ <fields>
300
+ <border>
301
+ <label>Border</label>
302
+ <comment>Example: (1px solid #DDDDDD), default of css.</comment>
303
+ <tooltip>Customizes the edge of images with thickness and color.</tooltip>
304
+ <frontend_type>text</frontend_type>
305
+ <sort_order>10</sort_order>
306
+ <show_in_default>1</show_in_default>
307
+ <show_in_website>1</show_in_website>
308
+ <show_in_store>1</show_in_store>
309
+ </border>
310
+ <box_shadow>
311
+ <label>Box shadow</label>
312
+ <comment>Example: (0 0 10px #DDDDDD), default of css.</comment>
313
+ <tooltip>Customize the shadows of the images, and can increase the shadow height and give color to it.</tooltip>
314
+ <frontend_type>text</frontend_type>
315
+ <sort_order>20</sort_order>
316
+ <show_in_default>1</show_in_default>
317
+ <show_in_website>1</show_in_website>
318
+ <show_in_store>1</show_in_store>
319
+ </box_shadow>
320
+ <opacity_inative>
321
+ <label>Opacity inactive thumbnails</label>
322
+ <comment>Example: (0.3), default of css.</comment>
323
+ <tooltip>Transparency of the thumbnails that were not selected.</tooltip>
324
+ <validate>validate-number-range number-range-0-1</validate>
325
+ <frontend_type>text</frontend_type>
326
+ <sort_order>30</sort_order>
327
+ <show_in_default>1</show_in_default>
328
+ <show_in_website>1</show_in_website>
329
+ <show_in_store>1</show_in_store>
330
+ </opacity_inative>
331
+ <opacity_magnifier>
332
+ <label>Opacity image in magnifier</label>
333
+ <comment>Example: (0.5), default of css.</comment>
334
+ <tooltip>Transparency of the main image when passes mouse.</tooltip>
335
+ <validate>validate-number-range number-range-0-1</validate>
336
+ <frontend_type>text</frontend_type>
337
+ <sort_order>40</sort_order>
338
+ <show_in_default>1</show_in_default>
339
+ <show_in_website>1</show_in_website>
340
+ <show_in_store>1</show_in_store>
341
+ </opacity_magnifier>
342
+ </fields>
343
+ </css_settings>
344
+ <video translate="label">
345
+ <label>Video Settings</label>
346
+ <frontend_type>text</frontend_type>
347
+ <sort_order>60</sort_order>
348
+ <show_in_default>1</show_in_default>
349
+ <show_in_website>1</show_in_website>
350
+ <show_in_store>1</show_in_store>
351
+ <fields>
352
+ <active>
353
+ <label>Active</label>
354
+ <comment>Enables or disables video display.</comment>
355
+ <tooltip>If 'Yes', enables a tab on new/edit product next to images tab, with a field to add the video embed. On the front-end displays an icon next to the thumbnails, which when clicked displays the video.</tooltip>
356
+ <frontend_type>select</frontend_type>
357
+ <source_model>adminhtml/system_config_source_yesno</source_model>
358
+ <sort_order>10</sort_order>
359
+ <show_in_default>1</show_in_default>
360
+ <show_in_website>1</show_in_website>
361
+ <show_in_store>1</show_in_store>
362
+ </active>
363
+ <image_upload translate="label comment">
364
+ <label>Video icon</label>
365
+ <tooltip>Select an image as the video icon. If you do not select any icon, a default will be displayed, after clicking on icon the video displayed.</tooltip>
366
+ <frontend_type>image</frontend_type>
367
+ <sort_order>20</sort_order>
368
+ <backend_model>adminhtml/system_config_backend_image</backend_model>
369
+ <upload_dir config="system/filesystem/media" scope_info="0">dexxtz/productzoom/images</upload_dir>
370
+ <base_url type="media" scope_info="0">dexxtz/productzoom/images</base_url>
371
+ <show_in_default>1</show_in_default>
372
+ <show_in_website>1</show_in_website>
373
+ <show_in_store>1</show_in_store>
374
+ <depends>
375
+ <active>1</active>
376
+ </depends>
377
+ </image_upload>
378
+ <background_color>
379
+ <label>Background color of modal</label>
380
+ <comment>Select a background color of modal.</comment>
381
+ <validate>color-switch</validate>
382
+ <frontend_type>text</frontend_type>
383
+ <sort_order>30</sort_order>
384
+ <show_in_default>1</show_in_default>
385
+ <show_in_website>1</show_in_website>
386
+ <show_in_store>1</show_in_store>
387
+ <depends>
388
+ <active>1</active>
389
+ </depends>
390
+ </background_color>
391
+ <background_opacity>
392
+ <label>Opacity of background</label>
393
+ <comment>Example: (0.7), default of css.</comment>
394
+ <validate>validate-number-range number-range-0-1</validate>
395
+ <frontend_type>text</frontend_type>
396
+ <sort_order>40</sort_order>
397
+ <show_in_default>1</show_in_default>
398
+ <show_in_website>1</show_in_website>
399
+ <show_in_store>1</show_in_store>
400
+ <depends>
401
+ <active>1</active>
402
+ </depends>
403
+ </background_opacity>
404
+ <border>
405
+ <label>Border of content</label>
406
+ <comment>Example: (1px solid #DDDDDD), default of css.</comment>
407
+ <frontend_type>text</frontend_type>
408
+ <sort_order>50</sort_order>
409
+ <show_in_default>1</show_in_default>
410
+ <show_in_website>1</show_in_website>
411
+ <show_in_store>1</show_in_store>
412
+ <depends>
413
+ <active>1</active>
414
+ </depends>
415
+ </border>
416
+ <box_shadow>
417
+ <label>Box shadow of content</label>
418
+ <comment>Example: (0 0 10px #DDDDDD), default of css.</comment>
419
+ <frontend_type>text</frontend_type>
420
+ <sort_order>60</sort_order>
421
+ <show_in_default>1</show_in_default>
422
+ <show_in_website>1</show_in_website>
423
+ <show_in_store>1</show_in_store>
424
+ <depends>
425
+ <active>1</active>
426
+ </depends>
427
+ </box_shadow>
428
+ <background_content>
429
+ <label>Background color of content</label>
430
+ <comment>Select a background color of content.</comment>
431
+ <validate>color-switch</validate>
432
+ <frontend_type>text</frontend_type>
433
+ <sort_order>70</sort_order>
434
+ <show_in_default>1</show_in_default>
435
+ <show_in_website>1</show_in_website>
436
+ <show_in_store>1</show_in_store>
437
+ <depends>
438
+ <active>1</active>
439
+ </depends>
440
+ </background_content>
441
+ </fields>
442
+ </video>
443
+ </groups>
444
+ </dexxtz_productzoom>
445
+ </sections>
446
+ </config>
app/code/community/Dexxtz/Productzoom/sql/dexxtz_productzoom_setup/mysql4-install-1.0.0.php ADDED
@@ -0,0 +1,39 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ $installer = $this;
12
+ $setup = new Mage_Eav_Model_Entity_Setup('core_setup');
13
+ $installer->startSetup();
14
+
15
+ $setup->addAttributeGroup('catalog_product', 'Default', 'Video', 4);
16
+
17
+ $setup->addAttribute('catalog_product', 'dexxtz_video', array(
18
+ 'group' => 'Video',
19
+ 'input' => 'textarea',
20
+ 'type' => 'text',
21
+ 'label' => 'Video (embed)',
22
+ 'default' => '',
23
+ 'class' => '',
24
+ 'backend' => '',
25
+ 'frontend' => '',
26
+ 'source' => '',
27
+ 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
28
+ 'visible' => true,
29
+ 'required' => false,
30
+ 'user_defined' => false,
31
+ 'searchable' => false,
32
+ 'filterable' => false,
33
+ 'comparable' => false,
34
+ 'visible_on_front' => true,
35
+ 'visible_in_advanced_search' => false,
36
+ 'unique' => false
37
+ ));
38
+
39
+ $installer->endSetup();
app/design/adminhtml/default/default/layout/dexxtz/productzoom.xml ADDED
@@ -0,0 +1,33 @@
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+ -->
11
+ <layout>
12
+ <default>
13
+ <reference name="head">
14
+ <action method="addItem"><type>skin_js</type><name>dexxtz/productzoom/js/color.js</name><params/><if/></action>
15
+ </reference>
16
+ </default>
17
+
18
+ <adminhtml_catalog_product_new>
19
+ <reference name="product_tabs">
20
+ <action method="removeTab">
21
+ <name helper="productzoom/getTabName" />
22
+ </action>
23
+ </reference>
24
+ </adminhtml_catalog_product_new>
25
+
26
+ <adminhtml_catalog_product_edit>
27
+ <reference name="product_tabs">
28
+ <action method="removeTab">
29
+ <name helper="productzoom/getTabName" />
30
+ </action>
31
+ </reference>
32
+ </adminhtml_catalog_product_edit>
33
+ </layout>
app/design/frontend/base/default/layout/dexxtz/productzoom.xml ADDED
@@ -0,0 +1,54 @@
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+ -->
11
+ <layout>
12
+ <catalog_product_view>
13
+ <reference name="head">
14
+ <action method="addCss"><stylesheet>dexxtz/productzoom/css/etalage.css</stylesheet></action>
15
+ <action method="addCss"><stylesheet>dexxtz/productzoom/css/dexxtz.css</stylesheet></action>
16
+ <action method="addItem"><type>skin_js</type><name>dexxtz/productzoom/js/jquery-2.1.1.js</name><params/><if/></action>
17
+ <action method="addItem"><type>skin_js</type><name>dexxtz/productzoom/js/jquery.etalage.min.js</name><params/><if/></action>
18
+ </reference>
19
+
20
+ <reference name="product.info.media">
21
+ <action method="setTemplate" ifconfig="dexxtz_productzoom/general/active"><template>dexxtz/productzoom/media.phtml</template></action>
22
+ </reference>
23
+
24
+ <reference name="before_body_end">
25
+ <block type="core/template" name="modal">
26
+ <action method="setTemplate" ifconfig="dexxtz_productzoom/video/active">
27
+ <template>dexxtz/productzoom/modal.phtml</template>
28
+ </action>
29
+ </block>
30
+ </reference>
31
+ </catalog_product_view>
32
+
33
+ <review_product_list>
34
+ <reference name="head">
35
+ <action method="addCss"><stylesheet>dexxtz/productzoom/css/etalage.css</stylesheet></action>
36
+ <action method="addCss"><stylesheet>dexxtz/productzoom/css/dexxtz.css</stylesheet></action>
37
+ <action method="addItem"><type>skin_js</type><name>dexxtz/productzoom/js/jquery-2.1.1.js</name><params/><if/></action>
38
+ <action method="addItem"><type>skin_js</type><name>dexxtz/productzoom/js/jquery.etalage.min.js</name><params/><if/></action>
39
+ </reference>
40
+
41
+ <reference name="product.info.media">
42
+ <action method="setTemplate" ifconfig="dexxtz_productzoom/general/active"><template>dexxtz/productzoom/media.phtml</template></action>
43
+ <!--<action method="setTemplate" ifconfig="dexxtz_productzoom/general/active"><template>catalog/product/gallery.phtml</template></action>-->
44
+ </reference>
45
+
46
+ <reference name="before_body_end">
47
+ <block type="core/template" name="modal">
48
+ <action method="setTemplate" ifconfig="dexxtz_productzoom/video/active">
49
+ <template>dexxtz/productzoom/modal.phtml</template>
50
+ </action>
51
+ </block>
52
+ </reference>
53
+ </review_product_list>
54
+ </layout>
app/design/frontend/base/default/template/dexxtz/productzoom/media.phtml ADDED
@@ -0,0 +1,37 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ ?>
12
+ <?php
13
+ $_product = $this->getProduct();
14
+ $_helper = $this->helper('catalog/output');
15
+ $dexxtz = Mage::helper('productzoom');
16
+
17
+ $dexxtz->getCss();
18
+ $dexxtz->getJs();
19
+ ?>
20
+
21
+ <ul id="etalage">
22
+ <li>
23
+ <img class="etalage_thumb_image" src="<?php echo $dexxtz->getImageFeatured($this->helper('catalog/image')->init($_product, 'image')); ?>" />
24
+ <img class="etalage_source_image" title="<?php echo $_product->getImageLabel(); ?>" src="<?php echo $dexxtz->getImageFeatured($this->helper('catalog/image')->init($_product, 'image'), true); ?>" />
25
+ </li>
26
+ <?php
27
+ foreach ($this->getGalleryImages() as $_image) {
28
+ if(Mage::registry('current_product')->getImage() != $_image->getFile()) { ?>
29
+ <li>
30
+ <img class="etalage_thumb_image" src="<?php echo $dexxtz->getImageFeatured($this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile())); ?>" />
31
+ <img class="etalage_source_image" title="<?php echo $_image->getLabel(); ?>" src="<?php echo $dexxtz->getImageFeatured($this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile()), true); ?>" />
32
+ </li>
33
+ <?php
34
+ }
35
+ }
36
+ ?>
37
+ </ul>
app/design/frontend/base/default/template/dexxtz/productzoom/modal.phtml ADDED
@@ -0,0 +1,27 @@
1
+ <?php
2
+
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+
11
+ ?>
12
+ <?php
13
+ $product = Mage::registry('current_product');
14
+ Mage::helper('productzoom')->getVideoCss();
15
+ $img = $this->getSkinUrl('dexxtz/productzoom/images/close.png');
16
+ $js = $this->getSkinUrl('dexxtz/productzoom/js/dexxtz-modal.js');
17
+
18
+ if ($video = $product->getDexxtzVideo()) { ?>
19
+ <div class="dexxtz-bg-modal" onclick="DexxtzModalClose(this);"></div>
20
+ <div class="dexxtz-modal-content">
21
+ <div>
22
+ <img class="dexxtz-close-modal" onclick="DexxtzModalClose(this);" src="<?php echo $img; ?>" />
23
+ <?php echo $video; ?>
24
+ </div>
25
+ </div>
26
+ <script type="text/javascript" src="<?php echo $js; ?>"></script>
27
+ <?php } ?>
app/etc/modules/Dexxtz_Productzoom.xml ADDED
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0"?>
2
+ <!--
3
+ /**
4
+ * Copyright [2015] [Dexxtz]
5
+ *
6
+ * @package Dexxtz_Productzoom
7
+ * @author Dexxtz
8
+ * @license http://www.apache.org/licenses/LICENSE-2.0
9
+ */
10
+ -->
11
+ <config>
12
+ <modules>
13
+ <Dexxtz_Productzoom>
14
+ <active>true</active>
15
+ <codePool>community</codePool>
16
+ </Dexxtz_Productzoom>
17
+ </modules>
18
+ </config>
app/locale/en_US/Dexxtz_Productzoom.csv ADDED
@@ -0,0 +1,83 @@
1
+ "Product Image Zoom","Product Image Zoom"
2
+ "General Settings","General Settings"
3
+ "Active","Active"
4
+ "No","No"
5
+ "Enables or disables customization on product page.","Enables or disables customization on product page."
6
+ "Autoplay","Autoplay"
7
+ "Enables or disables the automatic image change.","Enables or disables the automatic image change."
8
+ "Autoplay interval time","Autoplay interval time"
9
+ "Example: (6000), only integer is valid.","Example: (6000), only integer is valid."
10
+ "Speed of interval of Image change.","Speed of interval of Image change."
11
+ "Fade in interval","Fade in interval"
12
+ "Example: (600), only integer is valid.","Example: (600), only integer is valid."
13
+ "It is the image transition effect, how much most the transition is slower.","It is the image transition effect, how much most the transition is slower."
14
+ "Show magnifier icon","Show magnifier icon"
15
+ "Display magnifying glass icon on the main image.","Display magnifying glass icon on the main image."
16
+ "Featured Picture Settings","Featured Picture Settings"
17
+ "Width","Width"
18
+ "Main image width, example: (260), enter only integer.","Main image width, example: (260), enter only integer."
19
+ "Height","Height"
20
+ "Main image height, example: (260), enter only integer.","Main image height, example: (260), enter only integer."
21
+ "Resize image in scale","Resize image in scale"
22
+ "Keep the image in original aspect ratio.","Keep the image in original aspect ratio."
23
+ "If the image does not reaches minimum the in proportion size is added a frame maintaining the scale.","If the image does not reaches minimum the in proportion size is added a frame maintaining the scale."
24
+ "Background color of resize","Background color of resize"
25
+ "Change the background color of frame if necessary.","Change the background color of frame if necessary."
26
+ "After resizing the image, is added a frame if the image does not reach minimum proportion, the color selected in the field changes the background color of this frame.","After resizing the image, is added a frame if the image does not reach minimum proportion, the color selected in the field changes the background color of this frame."
27
+ "Thumbnails Settings","Thumbnails Settings"
28
+ "Show","Show"
29
+ "%s fixed thumbnail","%s fixed thumbnail"
30
+ "%s fixed thumbnails","%s fixed thumbnails"
31
+ "Fixed amount of thumbnails shown.","Fixed amount of thumbnails shown."
32
+ "Position of thumbnails","Position of thumbnails"
33
+ "Top","Top"
34
+ "Right","Right"
35
+ "Bottom","Bottom"
36
+ "Left","Left"
37
+ "Position of where it will be displayed thumbnails.","Position of where it will be displayed thumbnails."
38
+ "The position of the thumbnails is based in the main picture, ie the thumbnails will positioned in the chosen side (top, right, bottom and left) of the main image.","The position of the thumbnails is based in the main picture, ie the thumbnails will positioned in the chosen side (top, right, bottom and left) of the main image."
39
+ "Zoom Settings","Zoom Settings"
40
+ "Width image of zoom","Width image of zoom"
41
+ "Example: (800), enter only integer","Example: (800), enter only integer"
42
+ "Height image of zoom","Height image of zoom"
43
+ "Zoom area width","Zoom area width"
44
+ "Example: (500), enter only integer","Example: (500), enter only integer"
45
+ "Zoom area height","Zoom area height"
46
+ "Example: (500) or blank = automatic, enter only integer.","Example: (500) or blank = automatic, enter only integer."
47
+ "If you want the height is automatic with the content of the images, leave this field blank.","If you want the height is automatic with the content of the images, leave this field blank."
48
+ "Show description","Show description"
49
+ "Shown description of the image, on image of zoom.","Shown description of the image, on image of zoom."
50
+ "Position of description","Position of description"
51
+ "Position of description of image of zoom.","Position of description of image of zoom."
52
+ "Opacity of description","Opacity of description"
53
+ "Example: (0.7), default of css.","Example: (0.7), default of css."
54
+ "Background color of description","Background color of description"
55
+ "Example: (#FFFFF).","Example: (#FFFFF)."
56
+ "Color of description","Color of description"
57
+ "Example: (#000000).","Example: (#000000)."
58
+ "Css Settings","Css Settings"
59
+ "Border","Border"
60
+ "Example: (1px solid #DDDDDD), default of css.","Example: (1px solid #DDDDDD), default of css."
61
+ "Customizes the edge of images with thickness and color.","Customizes the edge of images with thickness and color."
62
+ "Box shadow","Box shadow"
63
+ "Example: (0 0 10px #DDDDDD), default of css.","Example: (0 0 10px #DDDDDD), default of css."
64
+ "Customize the shadows of the images, and can increase the shadow height and give color to it.","Customize the shadows of the images, and can increase the shadow height and give color to it."
65
+ "Opacity inactive thumbnails","Opacity inactive thumbnails"
66
+ "Example: (0.3), default of css.","Example: (0.3), default of css."
67
+ "Transparency of the thumbnails that were not selected.","Transparency of the thumbnails that were not selected."
68
+ "Opacity image in magnifier","Opacity image in magnifier"
69
+ "Example: (0.5), default of css.","Example: (0.5), default of css."
70
+ "Transparency of the main image when passes mouse.","Transparency of the main image when passes mouse."
71
+ "Video Settings","Video Settings"
72
+ "Enables or disables video display.","Enables or disables video display."
73
+ "If 'Yes', enables a tab on new/edit product next to images tab, with a field to add the video embed. On the front-end displays an icon next to the thumbnails, which when clicked displays the video.","If 'Yes', enables a tab on new/edit product next to images tab, with a field to add the video embed. On the front-end displays an icon next to the thumbnails, which when clicked displays the video."
74
+ "Video icon","Video icon"
75
+ "Delete Image","Delete Image"
76
+ "Select an image as the video icon. If you do not select any icon, a default will be displayed, after clicking on icon the video displayed.","Select an image as the video icon. If you do not select any icon, a default will be displayed, after clicking on icon the video displayed."
77
+ "Background color of modal","Background color of modal"
78
+ "Select a background color of modal.","Select a background color of modal."
79
+ "Opacity of background","Opacity of background"
80
+ "Border of content","Border of content"
81
+ "Box shadow of content","Box shadow of content"
82
+ "Background color of content","Background color of content"
83
+ "Select a background color of content.","Select a background color of content."
app/locale/pt_BR/Dexxtz_Productzoom.csv ADDED
@@ -0,0 +1,83 @@
1
+ "Product Image Zoom","Imagem do Produto (Zoom)"
2
+ "General Settings","Configura&ccedil;&otilde;es Gerais"
3
+ "Active","Ativar"
4
+ "No","N�o"
5
+ "Enables or disables customization on product page.","Ativa ou desativa a personalia&ccedil;&atilde;o de imagens."
6
+ "Autoplay","Mudan&ccedil;a automatica"
7
+ "Enables or disables the automatic image change.","Ativa ou desativa a mudan&ccedil;a automatica da imagem."
8
+ "Autoplay interval time","Intervalo de tempo da mudan&ccedil;a"
9
+ "Example: (6000), only integer is valid.","Exemplo (6000), permitido apenas n&uacute;meros inteiros."
10
+ "Speed of interval of Image change.","Tempo da troca de imagem, 6000 = 6 segundos."
11
+ "Fade in interval","Efeito no intervalo"
12
+ "Example: (600), only integer is valid.","Exemplo (600), permitido apenas n&uacute;meros inteiros."
13
+ "It is the image transition effect, how much most the transition is slower.","&Eacute; o efeito de transi&ccedil;&atilde;o de imagem, quanto maior, mais tempo dura o efeito."
14
+ "Show magnifier icon","Mostrar &iacute;cone de lupa"
15
+ "Display magnifying glass icon on the main image.","Exibe &iacute;cone de lupa na imagem principal."
16
+ "Featured Picture Settings","Configura&ccedil;&atilde;o da Imagem Principal"
17
+ "Width","Comprimento da imagem"
18
+ "Main image width, example: (260), enter only integer.","Exemplo: (260), permitido apenas n&uacute;meros inteiros."
19
+ "Height","Altura da imagem"
20
+ "Main image height, example: (260), enter only integer.","Exemplo: (260), permitido apenas n&uacute;meros inteiros."
21
+ "Resize image in scale","Redimensionar em escala"
22
+ "Keep the image in original aspect ratio.","Mantem a imagem na propor&ccedil;&atilde;o original."
23
+ "If the image does not reaches minimum the in proportion size is added a frame maintaining the scale.","Se a imagem n&atilde;o atingir o tamanho m&iacute;nimo em propor&ccedil;&atilde;o, &eacute; adicionado um quadro, mantendo a escala da imagem."
24
+ "Background color of resize","Cor do redimensionamento"
25
+ "Change the background color of frame if necessary.","Alterar a cor de fundo do quadro, se necess&aacute;rio."
26
+ "After resizing the image, is added a frame if the image does not reach minimum proportion, the color selected in the field changes the background color of this frame.","Ap&oacute;s redimensionar a imagem, &eacute; adicionado um quadro, se a imagem n&atilde;o obtiver propor&ccedil;&atilde;o m&iacute;nima, a cor selecionada no campo, ser&aacute; a cor desse quadro."
27
+ "Thumbnails Settings","Configura&ccedil;&atilde;o das Miniaturas"
28
+ "Show","Mostrar"
29
+ "%s fixed thumbnail","%s miniatura fixa"
30
+ "%s fixed thumbnails","%s miniaturas fixa"
31
+ "Fixed amount of thumbnails shown.","Quantia fixa de miniaturas na p&aacute;gina do produto."
32
+ "Position of thumbnails","Posi&ccedil;&atilde;o das miniaturas"
33
+ "Top","Topo"
34
+ "Right","Direita"
35
+ "Bottom","Embaixo"
36
+ "Left","Esquerda"
37
+ "Position of where it will be displayed thumbnails.","Posi&ccedil;&atilde;o de onde ser&aacute; exibidas miniaturas."
38
+ "The position of the thumbnails is based in the main picture, ie the thumbnails will positioned in the chosen side (top, right, bottom and left) of the main image.","A posi&ccedil;&atilde;o das miniaturas &eacute; baseada na imagem principal, ou seja, as miniaturas ser&aacute; posicionadas no lado escolhido (topo, direita, embaixo e esquerda) da imagem principal."
39
+ "Zoom Settings","Configura&ccedil;&atilde;o do Zoom"
40
+ "Width image of zoom","Comprimento da imagem"
41
+ "Example: (800), enter only integer","Exemplo: (800), permitido apenas n&uacute;meros inteiros."
42
+ "Height image of zoom","Altura da imagem"
43
+ "Zoom area width","Comprimento da &aacute;rea do zoom"
44
+ "Example: (500), enter only integer","Exemplo: (500), permitido apenas n&uacute;meros inteiros."
45
+ "Zoom area height","Altura da &aacute;rea do zoom"
46
+ "Example: (500) or blank = automatic, enter only integer.","Exemplo: (500) ou 'em branco' = autom&aacute;tica."
47
+ "If you want the height is automatic with the content of the images, leave this field blank.","Caso queira que a altura da &aacute;rea do zoom seja autom&aacute;tica com o conte&uacute;do das imagens, deixe este campo em branco."
48
+ "Show description","Exibir descri&ccedil;&atilde;o da imagem"
49
+ "Shown description of the image, on image of zoom.","Exibe a descri&ccedil;&atilde;o da imagem, na imagem de zoom."
50
+ "Position of description","Posi&ccedil;&atilde;o da descri&ccedil;&atilde;o"
51
+ "Position of description of image of zoom.","Posi&ccedil;&atilde;o da descri&ccedil;&atilde;o da imagem de zoom."
52
+ "Opacity of description","Opacidade da descri&ccedil;&atilde;o"
53
+ "Example: (0.7), default of css.","Exemplo: (0.7), padr&atilde;o de css."
54
+ "Background color of description","Cor de fundo da descri&ccedil;&atilde;o"
55
+ "Example: (#FFFFF).","Exemplo: (#FFFFF)."
56
+ "Color of description","Cor da fonte da descri&ccedil;&atilde;o"
57
+ "Example: (#000000).","Exemplo: (#000000)."
58
+ "Css Settings","Configura&ccedil;&atilde;o de CSS"
59
+ "Border","Borda"
60
+ "Example: (1px solid #DDDDDD), default of css.","Exemplo: (1px solid #DDDDDD), padr&atilde;o de css."
61
+ "Customizes the edge of images with thickness and color.","Personaliza a borda das imagens com espessura e cor."
62
+ "Box shadow","Box shadow"
63
+ "Example: (0 0 10px #DDDDDD), default of css.","Exemplo: (0 0 10px #DDDDDD), padr&atilde;o de css."
64
+ "Customize the shadows of the images, and can increase the shadow height and give color to it.","Personaliza as sombras das imagens, podendo aumentar a altura da sombra e dar cor a ela."
65
+ "Opacity inactive thumbnails","Opacidade das miniaturas"
66
+ "Example: (0.3), default of css.","Exemplo: (0.3), padr&atilde;o de css."
67
+ "Transparency of the thumbnails that were not selected.","Transpar&ecirc;ncia das miniaturas que n&atilde;o est&atilde;o selecionadas."
68
+ "Opacity image in magnifier","Opacidade da imagem principal"
69
+ "Example: (0.5), default of css.","Exemplo: (0.5), padr&atilde;o de css."
70
+ "Transparency of the main image when passes mouse.","Transpar&ecirc;ncia da imagem principal quando se passa o mouse."
71
+ "Video Settings","Configura&ccedil;&atilde;o de V&iacute;deo"
72
+ "Enables or disables video display.","Ativa ou desativa a exibi&ccedil;&atilde;o de v&iacute;deo."
73
+ "If 'Yes', enables a tab on new/edit product next to images tab, with a field to add the video embed. On the front-end displays an icon next to the thumbnails, which when clicked displays the video.","Se 'Sim', um nova aba estar&aacute; dispon&iacute;vel em novo/editar do produto pr&oacute;ximo a aba de imagens, com um campo para adicionar o v&iacute;deo 'embed'. No front-end exibe um &iacute;cone ao lado das miniaturas, que quando clicado exibe o v&iacute;deo."
74
+ "Video icon","Icone da chamada do v&iacute;deo"
75
+ "Delete Image","Excluir imagem"
76
+ "Select an image as the video icon. If you do not select any icon, a default will be displayed, after clicking on icon the video displayed.","Selecione uma imagem para ser o &iacute;cone da chamada do v&iacute;deo. Se n&atilde;o for selecionado qualquer &iacute;cone, um &iacute;cone padr&atilde;o ser&aacute; exibido, ap&oacute;s clicar no &iacute;cone, o v&iacute;deo ser&aacute; exibido."
77
+ "Background color of modal","Cor de fundo do modal"
78
+ "Select a background color of modal.","Selecione uma cor de fundo para o modal."
79
+ "Opacity of background","Opacidade do fundo do modal"
80
+ "Border of content","Borda do conte&uacute;do"
81
+ "Box shadow of content","Box shadow do conte&uacute;do"
82
+ "Background color of content","Cor de fundo do conte&uacute;do"
83
+ "Select a background color of content.","Selecione uma cor de fundo para o conte&uacute;do"
package.xml ADDED
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>Dexxtz_Product_Zoom</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://opensource.org/licenses/apachepl.php">Apache Software License</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Modifies the way that the image is displayed on the product page, giving several options, including adding video.</summary>
10
+ <description>Modifies display of images on the product page.&#xD;
11
+ Creates carousel with thumbnails.&#xD;
12
+ Personalization included.&#xD;
13
+ Video option included.</description>
14
+ <notes>Started</notes>
15
+ <authors><author><name>D&#xE9;cio Mattos</name><user>auto-converted</user><email>dexxtz@gmail.com</email></author></authors>
16
+ <date>2015-02-16</date>
17
+ <time>14:19:29</time>
18
+ <contents><target name="magecommunity"><dir name="Dexxtz"><dir name="Productzoom"><dir name="Helper"><file name="Data.php" hash="c2e02a069ac07385343c35a999c4895f"/></dir><dir name="Model"><dir name="System"><dir name="Config"><dir name="Source"><dir name="Description"><file name="Position.php" hash="2ad9cce70d7a77cd88b496ff3301520e"/></dir><dir name="Thumbnails"><file name="Position.php" hash="a27c34a996c97a781de3bd31eeaf1eb5"/><file name="Qty.php" hash="db63a393e145db13204ac8089374eb87"/></dir></dir></dir></dir></dir><dir name="etc"><file name="config.xml" hash="e45d92bff8149e97bfb300a5aa2baf42"/><file name="system.xml" hash="8684c17cd57c2fa8817dccdabb27faa7"/></dir><dir name="sql"><dir name="dexxtz_productzoom_setup"><file name="mysql4-install-1.0.0.php" hash="f6d7f1c0dbd01086d5cdf6481d083aaf"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Dexxtz_Productzoom.xml" hash="5d9c2ed84588353716f21fb63e3873e2"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="dexxtz"><file name="productzoom.xml" hash="752aac6e7e9a80ac2d67da51d3bfae9d"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="dexxtz"><file name="productzoom.xml" hash="df25120a4cde055a20b1be052a8b2fe9"/></dir></dir><dir name="template"><dir name="dexxtz"><dir name="productzoom"><file name="media.phtml" hash="2530345cffeb25dcda2e9741a2a86076"/><file name="modal.phtml" hash="4d8ec794b377baef70645d16779824b7"/></dir></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="pt_BR"><file name="Dexxtz_Productzoom.csv" hash="49055ba3c0b544b55be701628a4cdafa"/></dir><dir name="en_US"><file name="Dexxtz_Productzoom.csv" hash="b234f3fbeebdb5ad19f8d92b0aa135ad"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="dexxtz"><dir name="productzoom"><dir name="css"><file name="dexxtz.css" hash="807f76f8b7f31584dda61d1973f493a1"/><file name="etalage.css" hash="bf3bcb6498fe59d1db82dac182d5074f"/></dir><dir name="images"><file name="close.png" hash="6e2879a324a76e9972ebc98201aae1d8"/><file name="loading.gif" hash="8375992489b0fc8a1b3619d16fdc96d5"/><file name="play.jpg" hash="96a5a16648f502b915434bd70c250a22"/><file name="zoom.png" hash="086a93c5d63c2e3753094c0e7c83863f"/></dir><dir name="js"><file name="dexxtz-modal.js" hash="a3e2dd5044ddfb60cc81e5b8115987b3"/><file name="jquery-2.1.1.js" hash="9a094379d98c6458d480ad5a51c4aa27"/><file name="jquery.etalage.min.js" hash="a2a454981646a789f3f97052259ff1a2"/></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="dexxtz"><dir name="productzoom"><dir name="images"><file name="arrow.gif" hash="5034704a76cd55c1cbcbc58ea6bf523f"/><file name="cross.gif" hash="ba9a274b9323753cd95bc3b1eb2f4e5f"/><file name="hs.png" hash="fefa1a03d92ebad25c88dca94a0b63db"/><file name="hv.png" hash="990d71cada17da100653636cf8490884"/></dir><dir name="js"><file name="color.js" hash="1434cd958b6b0e16f4bda8ee524a1f07"/></dir></dir></dir></dir></dir></dir></target></contents>
19
+ <compatible/>
20
+ <dependencies/>
21
+ </package>
skin/adminhtml/default/default/dexxtz/productzoom/images/arrow.gif ADDED
Binary file
skin/adminhtml/default/default/dexxtz/productzoom/images/cross.gif ADDED
Binary file
skin/adminhtml/default/default/dexxtz/productzoom/images/hs.png ADDED
Binary file
skin/adminhtml/default/default/dexxtz/productzoom/images/hv.png ADDED
Binary file
skin/adminhtml/default/default/dexxtz/productzoom/js/color.js ADDED
@@ -0,0 +1,995 @@
1
+ /**
2
+ * jscolor, JavaScript Color Picker
3
+ *
4
+ * @version 1.4.3
5
+ * @license GNU Lesser General Public License, http://www.gnu.org/copyleft/lesser.html
6
+ * @author Jan Odvarko, http://odvarko.cz
7
+ * @created 2008-06-15
8
+ * @updated 2014-07-16
9
+ * @link http://jscolor.com
10
+ */
11
+
12
+ var jscolor = {
13
+
14
+ dir : SKIN_URL + 'dexxtz/productzoom/js/', // location of jscolor directory (leave empty to autodetect)
15
+ bindClass : 'color-switch', // class name
16
+ binding : true, // automatic binding via <input class="...">
17
+ preloading : true, // use image preloading?
18
+
19
+
20
+ install : function() {
21
+ jscolor.addEvent(window, 'load', jscolor.init);
22
+ },
23
+
24
+
25
+ init : function() {
26
+ if(jscolor.binding) {
27
+ jscolor.bind();
28
+ }
29
+ if(jscolor.preloading) {
30
+ jscolor.preload();
31
+ }
32
+ },
33
+
34
+
35
+ getDir : function() {
36
+ if(!jscolor.dir) {
37
+ var detected = jscolor.detectDir();
38
+ jscolor.dir = detected!==false ? detected : 'jscolor/';
39
+ }
40
+ return jscolor.dir
41
+ },
42
+
43
+
44
+ detectDir : function() {
45
+ var base = location.href;
46
+
47
+ var e = document.getElementsByTagName('base');
48
+ for(var i=0; i<e.length; i+=1) {
49
+ if(e[i].href) { base = e[i].href; }
50
+ }
51
+
52
+ var e = document.getElementsByTagName('script');
53
+ for(var i=0; i<e.length; i+=1) {
54
+ if(e[i].src && /(^|\/)jscolor\.js([?#].*)?#x2F;i.test(e[i].src)) {