Futurenext_Zakeke - Version 1.0.0.4

Version Notes

Bug fixing release

Download this release

Release Info

Developer Futurenext
Extension Futurenext_Zakeke
Version 1.0.0.4
Comparing to
See all releases


Code changes from version 1.0.0.3 to 1.0.0.4

app/code/community/Futurenext/Zakeke/Block/Adminhtml/Sales/Items/Column/Zakeke/Name.php CHANGED
@@ -85,14 +85,15 @@ class Futurenext_Zakeke_Block_Adminhtml_Sales_Items_Column_Zakeke_Name extends M
85
  */
86
  public function getZakekePreviews()
87
  {
 
 
 
88
  try {
89
  $zakekeDesignId = $this->getZakekeDesignId();
90
  if (!$zakekeDesignId) {
91
  return false;
92
  }
93
 
94
- /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
95
- $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
96
  $previews = $zakekeApi->getPreview($zakekeDesignId);
97
  if (!$previews) {
98
  $zakekeOption = $this->getZakekeOption();
@@ -116,14 +117,14 @@ class Futurenext_Zakeke_Block_Adminhtml_Sales_Items_Column_Zakeke_Name extends M
116
  */
117
  public function getZakekeOutputZip()
118
  {
 
 
 
119
  try {
120
  $zakekeDesignId = $this->getZakekeDesignId();
121
  if (!$zakekeDesignId) {
122
  return false;
123
  }
124
-
125
- /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
126
- $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
127
  $zipUrl = $zakekeApi->getZakekeOutputZip($zakekeDesignId);
128
  return $zipUrl;
129
  } catch (Exception $e) {
85
  */
86
  public function getZakekePreviews()
87
  {
88
+ /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
89
+ $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
90
+
91
  try {
92
  $zakekeDesignId = $this->getZakekeDesignId();
93
  if (!$zakekeDesignId) {
94
  return false;
95
  }
96
 
 
 
97
  $previews = $zakekeApi->getPreview($zakekeDesignId);
98
  if (!$previews) {
99
  $zakekeOption = $this->getZakekeOption();
117
  */
118
  public function getZakekeOutputZip()
119
  {
120
+ /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
121
+ $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
122
+
123
  try {
124
  $zakekeDesignId = $this->getZakekeDesignId();
125
  if (!$zakekeDesignId) {
126
  return false;
127
  }
 
 
 
128
  $zipUrl = $zakekeApi->getZakekeOutputZip($zakekeDesignId);
129
  return $zipUrl;
130
  } catch (Exception $e) {
app/code/community/Futurenext/Zakeke/Block/CartItemRenderer.php CHANGED
@@ -88,7 +88,7 @@ class Futurenext_Zakeke_Block_CartItemRenderer extends Mage_Checkout_Block_Cart_
88
  }
89
 
90
  /**
91
- * Get list of all otions for product
92
  *
93
  * @return array
94
  */
@@ -110,6 +110,7 @@ class Futurenext_Zakeke_Block_CartItemRenderer extends Mage_Checkout_Block_Cart_
110
  $buyRequestParams['id'] = $item->getId();
111
  unset($buyRequestParams['zakeke-token']);
112
  unset($buyRequestParams['zakeke-pricing']);
 
113
 
114
  return $this->getUrl('zakeke/Customize/Configure') . '?' . http_build_query($buyRequestParams);
115
  }
88
  }
89
 
90
  /**
91
+ * Get list of all options for product
92
  *
93
  * @return array
94
  */
110
  $buyRequestParams['id'] = $item->getId();
111
  unset($buyRequestParams['zakeke-token']);
112
  unset($buyRequestParams['zakeke-pricing']);
113
+ unset($buyRequestParams['form_key']);
114
 
115
  return $this->getUrl('zakeke/Customize/Configure') . '?' . http_build_query($buyRequestParams);
116
  }
app/code/community/Futurenext/Zakeke/Block/Customize.php CHANGED
@@ -149,7 +149,7 @@ class Futurenext_Zakeke_Block_Customize extends Futurenext_Zakeke_Block_View
149
  Futurenext_Zakeke_Helper_Data::ZAKEKE_DESIGN_PARAM
150
  );
151
  if ($zakekeOption) {
152
- $data['design'] = $zakekeOption;
153
  }
154
 
155
  $path = '/Customizer/index.html';
149
  Futurenext_Zakeke_Helper_Data::ZAKEKE_DESIGN_PARAM
150
  );
151
  if ($zakekeOption) {
152
+ $data['designdocid'] = $zakekeOption;
153
  }
154
 
155
  $path = '/Customizer/index.html';
app/code/community/Futurenext/Zakeke/Helper/Data.php CHANGED
@@ -29,6 +29,7 @@ class Futurenext_Zakeke_Helper_Data extends Mage_Core_Helper_Abstract
29
  const ZAKEKE_MODULE_LIST_REGISTRY = 'zakeke-module-list';
30
  const ZAKEKE_CART_INFO_REGISTRY = 'zakeke-cart-info';
31
  const ZAKEKE_PRODUCT_TYPE = 'zakeke';
 
32
 
33
  /**
34
  * Return whether the product is customizable with Zakeke
29
  const ZAKEKE_MODULE_LIST_REGISTRY = 'zakeke-module-list';
30
  const ZAKEKE_CART_INFO_REGISTRY = 'zakeke-cart-info';
31
  const ZAKEKE_PRODUCT_TYPE = 'zakeke';
32
+ const ZAKEKE_LOG_FILE = 'zakeke.log';
33
 
34
  /**
35
  * Return whether the product is customizable with Zakeke
app/code/community/Futurenext/Zakeke/Helper/ZakekeApi.php CHANGED
@@ -15,440 +15,461 @@
15
  * @category Futurenext
16
  * @package Futurenext_Zakeke
17
  */
18
- class Futurenext_Zakeke_Helper_ZakekeApi extends Mage_Core_Helper_Abstract
19
- {
20
- private $options = array(
21
- CURLOPT_RETURNTRANSFER => true, // return web page
22
- CURLOPT_HEADER => false, // don't return headers
23
- CURLOPT_FOLLOWLOCATION => true, // follow redirects
24
- CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
25
- CURLOPT_ENCODING => '', // handle compressed
26
- CURLOPT_AUTOREFERER => true, // set referrer on redirect
27
- CURLOPT_CONNECTTIMEOUT => 120, // time-out on connect
28
- CURLOPT_TIMEOUT => 120, // time-out on response
29
- );
30
-
31
- /**
32
- * Get the needed data for adding a product to the cart
33
- *
34
- * @param int $designId
35
- * @return object|false
36
- */
37
- public function getCartInfo($designId)
38
- {
39
- $data = $this->getMinimalData();
40
-
41
- $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL
42
- . '/api/designdocs/' . $designId . '/cartinfo'
43
- . '?' . http_build_query($data);
44
-
45
- $ch = curl_init();
46
- curl_setopt_array($ch, $this->options);
47
- curl_setopt($ch, CURLOPT_URL, $url);
48
- $res = curl_exec($ch);
49
-
50
- if ($res === false) {
51
- Mage::log(
52
- 'Zakeke: failed to get ' . $url . ' ' . curl_error($ch) . ' ' . $res,
53
- Zend_Log::ERR
54
- );
55
- return false;
56
- }
57
-
58
- $json = json_decode($res);
59
- if ($json === null) {
60
- Mage::log(
61
- 'Zakeke: failed to parse ' . $url . ' ' . $res,
62
- Zend_Log::ERR
63
- );
64
- return false;
65
- }
66
-
67
- $res = new stdClass();
68
- $res->pricing = $json->pricing;
69
-
70
- $principalAvailable = false;
71
- $previews = [];
72
- foreach ($json->previewFiles as $preview) {
73
- if ($preview->format == 'SVG' || $preview->isOutput) {
74
- continue;
75
- }
76
-
77
- $previewObj = new stdClass();
78
- $previewObj->url = $preview->url;
79
- $previewObj->label = $preview->sideName;
80
-
81
- if ($preview->sideIsDefault) {
82
- $principalAvailable = true;
83
- if ($previews) {
84
- $previews[] = $previews[0];
85
- $previews[0] = $previewObj;
86
- } else {
87
- $previews[] = $previewObj;
88
- }
89
- }
90
-
91
- $previews[] = $previewObj;
92
- }
93
-
94
- if (!$principalAvailable) {
95
- $previewObj = new stdClass();
96
- $previewObj->url = $json->tempPreviewUrl;
97
- $previewObj->label = '';
98
-
99
- if ($previews) {
100
- $previews[] = $previews[0];
101
- $previews[0] = $previewObj;
102
- } else {
103
- $previews[] = $previewObj;
104
- }
105
- }
106
-
107
- $res->previews = $previews;
108
-
109
- return $res;
110
- }
111
-
112
- /**
113
- * Get the Zakeke authentication token
114
- *
115
- * @param array $data - Data to pass as query string.
116
- * @return string|false
117
- */
118
- public function getToken($data)
119
- {
120
- $registryKey = Futurenext_Zakeke_Helper_Data::ZAKEKE_REGISTRY_TOKEN . http_build_query($data);
121
- $token = Mage::registry($registryKey);
122
- if (!is_null($token)) {
123
- return $token;
124
- }
125
-
126
- $data = array_merge($data, $this->getMinimalData());
127
-
128
- $query = http_build_query($data);
129
- $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/Login?' . $query;
130
-
131
- $ch = curl_init($url);
132
- curl_setopt_array($ch, $this->options);
133
- $res = curl_exec($ch);
134
-
135
- if ($res === false) {
136
- Mage::log(
137
- 'Zakeke: failed to get ' . $url . ' ' . curl_error($ch) . ' ' . $res,
138
- Zend_Log::ERR
139
- );
140
- return false;
141
- }
142
-
143
- $json = json_decode($res);
144
- if ($json === null) {
145
- Mage::log(
146
- 'Zakeke: failed to parse ' . $url . ' ' . $res,
147
- Zend_Log::ERR
148
- );
149
- return false;
150
- }
151
-
152
- if (!isset($json->token)) {
153
- Mage::log(
154
- 'Zakeke: failed to get token ' . $url . ' ' . $res,
155
- Zend_Log::ERR
156
- );
157
- return false;
158
- }
159
-
160
- $token = $json->token;
161
- Mage::register($registryKey, $token);
162
- return $token;
163
- }
164
-
165
- /**
166
- * Get the minimal data required to get an authentication token
167
- *
168
- * @return array
169
- */
170
- protected function getMinimalData()
171
- {
172
- $zakekeUsername = Mage::getStoreConfig('futurenext_zakeke/settings/zakekeUsername');
173
- $zakekePassword = Mage::helper('core')->decrypt(
174
- Mage::getStoreConfig('futurenext_zakeke/settings/zakekePassword')
175
- );
176
-
177
- $data = array(
178
- 'user' => $zakekeUsername,
179
- 'pwd' => $zakekePassword
180
- );
181
- return $data;
182
- }
183
-
184
- /**
185
- * Get the raw response from a Zakeke api
186
- *
187
- * @param string $url
188
- * @return \stdClass|\stdClass[]|false
189
- */
190
- protected function getRawRequest($url)
191
- {
192
- $token = $this->getToken(
193
- $this->getMinimalData()
194
- );
195
- if ($token === false) {
196
- return false;
197
- }
198
-
199
- $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . $url;
200
-
201
- $ch = curl_init($url);
202
- curl_setopt_array($ch, $this->options);
203
- curl_setopt($ch, CURLOPT_HTTPHEADER, [
204
- 'X-Auth-Token: ' . $token,
205
- ]);
206
- $res = curl_exec($ch);
207
- if ($res === false) {
208
- Mage::log(
209
- 'Zakeke: failed to get ' . $url . ' ' . curl_error($ch) . ' ' . $res,
210
- Zend_Log::ERR
211
- );
212
- return false;
213
- }
214
-
215
- $json = json_decode($res);
216
- if ($json === null) {
217
- Mage::log(
218
- 'Zakeke: failed to parse ' . $url . ' ' . $res,
219
- Zend_Log::ERR
220
- );
221
- return false;
222
- }
223
-
224
- return $res;
225
- }
226
-
227
- /**
228
- * Get the Zakeke design price
229
- *
230
- * @param string $designId - Zakeke design identifier
231
- * @return array|false
232
- */
233
- public function getDesignPricing($designId)
234
- {
235
- return $this->getRawRequest('/api/designs/' . $designId . '/pricing');
236
- }
237
-
238
- /**
239
- * Get the Zakeke design preview files
240
- *
241
- * @param string $designId - Zakeke design identifier
242
- * @return array|false
243
- */
244
- public function getPreview($designId)
245
- {
246
- $data = array(
247
- 'docid' => $designId
248
- );
249
- $json = $this->getRawRequest('/api/designs/0/previewfiles?' . http_build_query($data));
250
- if ($json === false) {
251
- return false;
252
- }
253
-
254
- $previews = array();
255
- foreach ($json as $preview) {
256
- if ($preview->format == 'SVG') {
257
- continue;
258
- }
259
-
260
- $previewObj = new stdClass();
261
- $previewObj->url = $preview->url;
262
- $previewObj->label = $preview->sideName;
263
- $previews[] = $previewObj;
264
- }
265
- return $previews;
266
- }
267
-
268
- /**
269
- * Get the Zakeke design output zip
270
- *
271
- * @param string $designId - Zakeke design identifier
272
- * @return string|false
273
- */
274
- public function getZakekeOutputZip($designId)
275
- {
276
- $data = array(
277
- 'docid' => $designId
278
- );
279
- $json = $this->getRawRequest('/api/designs/0/outputfiles/zip?' . http_build_query($data));
280
- if ($json === false) {
281
- return false;
282
- }
283
-
284
- return $json->url;
285
- }
286
-
287
- /**
288
- * Associate the guest with a customer
289
- *
290
- * @param string $guestCode - Guest identifier
291
- * @param string $customerId - Customer identifier
292
- * @return void
293
- */
294
- public function associateGuest($guestCode, $customerId)
295
- {
296
- $data = $this->getMinimalData();
297
- $data['vc'] = $guestCode;
298
- $data['cc'] = $customerId;
299
-
300
- $this->getToken($data);
301
- }
302
-
303
- /**
304
- * Order containing Zakeke customized products placed
305
- *
306
- * @param array $data - data of the order
307
- * @return bool
308
- */
309
- public function placeOrder($data)
310
- {
311
- Mage::log('Zakeke placed order such info ' . json_encode($data));
312
-
313
- $ch = curl_init();
314
- curl_setopt_array($ch, $this->options);
315
-
316
- $tokenData = $this->getMinimalData();
317
- if (isset($data['customerID'])) {
318
- $tokenData['cc'] = $data['customerID'];
319
- } elseif (isset($data['visitorID'])) {
320
- $tokenData['vc'] = $data['visitorID'];
321
- }
322
-
323
- $query = http_build_query($tokenData);
324
- $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/Login?' . $query;
325
- curl_setopt($ch, CURLOPT_URL, $url);
326
- $res = curl_exec($ch);
327
-
328
- if ($res === false) {
329
- Mage::log(
330
- 'Zakeke: failed to get ' . $url . ' ' . curl_error($ch) . ' ' . $res,
331
- Zend_Log::ERR
332
- );
333
- return false;
334
- }
335
-
336
- $json = json_decode($res);
337
- if ($json === null) {
338
- Mage::log(
339
- 'Zakeke: failed to parse ' . $url . ' ' . $res,
340
- Zend_Log::ERR
341
- );
342
- return false;
343
- }
344
-
345
- $token = $json->token;
346
- curl_setopt($ch, CURLOPT_HTTPHEADER, array(
347
- 'X-Auth-Token: ' . $token,
348
- 'Connection: Keep-Alive',
349
- 'Keep-Alive: 300'
350
- ));
351
-
352
- $placeOrderData = array(
353
- 'orderCode' => $data['orderCode'],
354
- 'sessionID' => $data['sessionID'],
355
- 'total' => $data['total'],
356
- 'orderStatusID' => $data['orderStatusID'],
357
- 'details' => $data['details'],
358
- 'marketplaceID' => '2'
359
- );
360
- $encodedData = http_build_query($placeOrderData);
361
-
362
- $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/orderdocs';
363
- curl_setopt($ch, CURLOPT_URL, $url);
364
- curl_setopt($ch, CURLOPT_POST, 1);
365
- curl_setopt($ch, CURLOPT_POSTFIELDS, $encodedData);
366
- $res = curl_exec($ch);
367
-
368
- if ($res === false) {
369
- Mage::log(
370
- 'Zakeke: failed to get ' . $url . ' ' . curl_error($ch) . ' ' . $res,
371
- Zend_Log::ERR
372
- );
373
- return false;
374
- }
375
-
376
- return true;
377
- }
378
-
379
- /**
380
- * Cancel an order containing Zakeke customized products placed.
381
- *
382
- * @param string $orderId
383
- * @return void
384
- */
385
- public function cancelOrder($orderId)
386
- {
387
- }
388
-
389
- /**
390
- * Return an array of incompatible modules with hints how to solve the problem
391
- *
392
- * @param array $moduleList
393
- * @return array|false
394
- */
395
- public function moduleChecker($moduleList)
396
- {
397
- $incompatibleModules = array();
398
-
399
- $json = $this->getRawRequest('/api/IncompatiblePlugins');
400
- if ($json === false) {
401
- return false;
402
- }
403
-
404
- foreach ($moduleList as $module) {
405
- foreach ($json as $incompatibleModule) {
406
- if ($module['name'] !== $incompatibleModule->name) {
407
- continue;
408
- }
409
-
410
- if ($module['setup_version'] >= $incompatibleModule->fromVersion
411
- || $module['setup_version'] <= $incompatibleModule->toVersion
412
- ) {
413
- $moduleInfo = new Varien_Object();
414
- $moduleInfo->setName($module['name']);
415
- $moduleInfo->setSetupVersion($module['setup_version']);
416
- $moduleInfo->setHowToFixHtml($incompatibleModule->fix);
417
-
418
- $incompatibleModules[] = $moduleInfo;
419
- }
420
- }
421
- }
422
-
423
- return $incompatibleModules;
424
- }
425
-
426
- /**
427
- * Check if Zakeke is reachable from the shop server
428
- *
429
- * @return bool
430
- */
431
- public function isReachable()
432
- {
433
- $ch = curl_init(Futurenext_Zakeke_Helper_Data::ZAKEKE_BASE_URL);
434
- curl_setopt($ch, CURLOPT_NOBODY, true);
435
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
436
- curl_setopt($ch, CURLOPT_TIMEOUT, 5);
437
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
438
- curl_setopt($ch, CURLOPT_VERBOSE, false);
439
- curl_exec($ch);
440
- $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
441
- curl_close($ch);
442
- return $httpCode >= 200 && $httpCode < 300;
443
- }
444
-
445
- /**
446
- * Log event to Zakeke server
447
- *
448
- * @param string $message
449
- * @return void
450
- */
451
- public function log($message)
452
- {
453
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
454
  }
15
  * @category Futurenext
16
  * @package Futurenext_Zakeke
17
  */
18
+ class Futurenext_Zakeke_Helper_ZakekeApi extends Mage_Core_Helper_Abstract {
19
+ private $options = array(
20
+ CURLOPT_RETURNTRANSFER => true, // return web page
21
+ CURLOPT_HEADER => false, // don't return headers
22
+ CURLOPT_FOLLOWLOCATION => true, // follow redirects
23
+ CURLOPT_MAXREDIRS => 10, // stop after 10 redirects
24
+ CURLOPT_ENCODING => '', // handle compressed
25
+ CURLOPT_AUTOREFERER => true, // set referrer on redirect
26
+ CURLOPT_CONNECTTIMEOUT => 120, // time-out on connect
27
+ CURLOPT_TIMEOUT => 120, // time-out on response
28
+ );
29
+
30
+ /**
31
+ * Get the needed data for adding a product to the cart
32
+ *
33
+ * @param int $designId
34
+ *
35
+ * @return object|false
36
+ */
37
+ public function getCartInfo( $designId ) {
38
+ $data = $this->getMinimalData();
39
+
40
+ $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL
41
+ . '/api/designdocs/' . $designId . '/cartinfo'
42
+ . '?' . http_build_query( $data );
43
+
44
+ $ch = curl_init();
45
+ curl_setopt_array( $ch, $this->options );
46
+ curl_setopt( $ch, CURLOPT_URL, $url );
47
+ $res = curl_exec( $ch );
48
+
49
+ if ( $res === false ) {
50
+ Mage::log(
51
+ 'Zakeke: failed to get ' . $url . ' ' . curl_error( $ch ) . ' ' . $res,
52
+ Zend_Log::ERR
53
+ );
54
+
55
+ return false;
56
+ }
57
+
58
+ $json = json_decode( $res );
59
+ if ( $json === null ) {
60
+ Mage::log(
61
+ 'Zakeke: failed to parse ' . $url . ' ' . $res,
62
+ Zend_Log::ERR
63
+ );
64
+
65
+ return false;
66
+ }
67
+
68
+ $res = new stdClass();
69
+ $res->pricing = $json->pricing;
70
+
71
+ $principalAvailable = false;
72
+ $previews = [];
73
+ foreach ( $json->previewFiles as $preview ) {
74
+ if ( $preview->format == 'SVG' || $preview->isOutput ) {
75
+ continue;
76
+ }
77
+
78
+ $previewObj = new stdClass();
79
+ $previewObj->url = $preview->url;
80
+ $previewObj->label = $preview->sideName;
81
+
82
+ if ( $preview->sideIsDefault ) {
83
+ $principalAvailable = true;
84
+ if ( $previews ) {
85
+ $previews[] = $previews[0];
86
+ $previews[0] = $previewObj;
87
+ } else {
88
+ $previews[] = $previewObj;
89
+ }
90
+ }
91
+
92
+ $previews[] = $previewObj;
93
+ }
94
+
95
+ if ( ! $principalAvailable ) {
96
+ $previewObj = new stdClass();
97
+ $previewObj->url = $json->tempPreviewUrl;
98
+ $previewObj->label = '';
99
+
100
+ if ( $previews ) {
101
+ $previews[] = $previews[0];
102
+ $previews[0] = $previewObj;
103
+ } else {
104
+ $previews[] = $previewObj;
105
+ }
106
+ }
107
+
108
+ $res->previews = $previews;
109
+
110
+ return $res;
111
+ }
112
+
113
+ /**
114
+ * Get the Zakeke authentication token
115
+ *
116
+ * @param array $data - Data to pass as query string.
117
+ *
118
+ * @return string|false
119
+ */
120
+ public function getToken( $data ) {
121
+ $registryKey = Futurenext_Zakeke_Helper_Data::ZAKEKE_REGISTRY_TOKEN . http_build_query( $data );
122
+ $token = Mage::registry( $registryKey );
123
+ if ( ! is_null( $token ) ) {
124
+ return $token;
125
+ }
126
+
127
+ $data = array_merge( $data, $this->getMinimalData() );
128
+
129
+ $query = http_build_query( $data );
130
+ $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/Login?' . $query;
131
+
132
+ $ch = curl_init( $url );
133
+ curl_setopt_array( $ch, $this->options );
134
+ $res = curl_exec( $ch );
135
+
136
+ if ( $res === false ) {
137
+ $this->log(
138
+ 'Api getToken error for ' . $url . ' ' . curl_error( $ch ) . ' ' . $res,
139
+ Zend_Log::ERR
140
+ );
141
+
142
+ return false;
143
+ }
144
+
145
+ $json = json_decode( $res );
146
+ if ( $json === null ) {
147
+ $this->log(
148
+ 'Api getToken invalid json ' . $url . ' ' . $res,
149
+ Zend_Log::ERR
150
+ );
151
+
152
+ return false;
153
+ }
154
+
155
+ if ( ! isset( $json->token ) ) {
156
+ Mage::log(
157
+ 'Zakeke: failed to get token ' . $url . ' ' . $res,
158
+ Zend_Log::ERR
159
+ );
160
+
161
+ return false;
162
+ }
163
+
164
+ $token = $json->token;
165
+ Mage::register( $registryKey, $token );
166
+
167
+ return $token;
168
+ }
169
+
170
+ /**
171
+ * Get the minimal data required to get an authentication token
172
+ *
173
+ * @return array
174
+ */
175
+ protected function getMinimalData() {
176
+ $zakekeUsername = Mage::getStoreConfig( 'futurenext_zakeke/settings/zakekeUsername' );
177
+ $zakekePassword = Mage::helper( 'core' )->decrypt(
178
+ Mage::getStoreConfig( 'futurenext_zakeke/settings/zakekePassword' )
179
+ );
180
+
181
+ return array(
182
+ 'user' => $zakekeUsername,
183
+ 'pwd' => $zakekePassword
184
+ );
185
+ }
186
+
187
+ /**
188
+ * Get the raw response from a Zakeke api
189
+ *
190
+ * @param string $url
191
+ *
192
+ * @return \stdClass|\stdClass[]|false
193
+ */
194
+ protected function getRawRequest( $url ) {
195
+ $token = $this->getToken( $this->getMinimalData() );
196
+ if ( $token === false ) {
197
+ return false;
198
+ }
199
+
200
+ $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . $url;
201
+
202
+ $ch = curl_init( $url );
203
+ curl_setopt_array( $ch, $this->options );
204
+ curl_setopt( $ch, CURLOPT_HTTPHEADER, [
205
+ 'X-Auth-Token: ' . $token,
206
+ ] );
207
+ $res = curl_exec( $ch );
208
+ if ( $res === false ) {
209
+ $this->log(
210
+ 'Api getRawRequest error for ' . $url . ' ' . curl_error( $ch ) . ' ' . $res,
211
+ Zend_Log::ERR
212
+ );
213
+
214
+ return false;
215
+ }
216
+
217
+ $this->log( 'Api getRawRequest for ' . $url . ' response ' . $res );
218
+
219
+ $json = json_decode( $res );
220
+ if ( $json === null ) {
221
+ $this->log(
222
+ 'Api getRawRequest invalid json ' . $url . ' ' . $res,
223
+ Zend_Log::ERR
224
+ );
225
+
226
+ return false;
227
+ }
228
+
229
+ return $json;
230
+ }
231
+
232
+ /**
233
+ * Get the Zakeke design price
234
+ *
235
+ * @param string $designId - Zakeke design identifier
236
+ *
237
+ * @return array|false
238
+ */
239
+ public function getDesignPricing( $designId ) {
240
+ return $this->getRawRequest( '/api/designs/' . $designId . '/pricing' );
241
+ }
242
+
243
+ /**
244
+ * Get the Zakeke design preview files
245
+ *
246
+ * @param string $designId - Zakeke design identifier
247
+ *
248
+ * @return array|false
249
+ */
250
+ public function getPreview( $designId ) {
251
+ $data = array(
252
+ 'docid' => $designId
253
+ );
254
+ $json = $this->getRawRequest( '/api/designs/0/previewfiles?' . http_build_query( $data ) );
255
+ if ( $json === false ) {
256
+ return false;
257
+ }
258
+
259
+ $previews = array();
260
+ foreach ( $json as $preview ) {
261
+ if ( $preview->format == 'SVG' ) {
262
+ continue;
263
+ }
264
+
265
+ $previewObj = new stdClass();
266
+ $previewObj->url = $preview->url;
267
+ $previewObj->label = $preview->sideName;
268
+ $previews[] = $previewObj;
269
+ }
270
+
271
+ return $previews;
272
+ }
273
+
274
+ /**
275
+ * Get the Zakeke design output zip
276
+ *
277
+ * @param string $designId - Zakeke design identifier
278
+ *
279
+ * @return string|false
280
+ */
281
+ public function getZakekeOutputZip( $designId ) {
282
+ $data = array(
283
+ 'docid' => $designId
284
+ );
285
+ $json = $this->getRawRequest( '/api/designs/0/outputfiles/zip?' . http_build_query( $data ) );
286
+
287
+ if ( $json === false ) {
288
+ return false;
289
+ }
290
+
291
+ return $json->url;
292
+ }
293
+
294
+ /**
295
+ * Associate the guest with a customer
296
+ *
297
+ * @param string $guestCode - Guest identifier
298
+ * @param string $customerId - Customer identifier
299
+ *
300
+ * @return void
301
+ */
302
+ public function associateGuest( $guestCode, $customerId ) {
303
+ $data = $this->getMinimalData();
304
+ $data['vc'] = $guestCode;
305
+ $data['cc'] = $customerId;
306
+
307
+ $this->getToken( $data );
308
+ }
309
+
310
+ /**
311
+ * Order containing Zakeke customized products placed
312
+ *
313
+ * @param array $data - data of the order
314
+ *
315
+ * @return bool
316
+ */
317
+ public function placeOrder( $data ) {
318
+ $this->log( 'Api placeOrder called with ' . json_encode( $data ) );
319
+
320
+ $ch = curl_init();
321
+ curl_setopt_array( $ch, $this->options );
322
+
323
+ $tokenData = $this->getMinimalData();
324
+ if ( isset( $data['customerID'] ) ) {
325
+ $tokenData['cc'] = $data['customerID'];
326
+ } elseif ( isset( $data['visitorID'] ) ) {
327
+ $tokenData['vc'] = $data['visitorID'];
328
+ }
329
+
330
+ $query = http_build_query( $tokenData );
331
+ $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/Login?' . $query;
332
+ $this->log( $url );
333
+ curl_setopt( $ch, CURLOPT_URL, $url );
334
+ $res = curl_exec( $ch );
335
+
336
+ if ( $res === false ) {
337
+ Mage::log(
338
+ 'Zakeke: failed to get ' . $url . ' ' . curl_error( $ch ) . ' ' . $res,
339
+ Zend_Log::ERR
340
+ );
341
+
342
+ return false;
343
+ }
344
+
345
+ $json = json_decode( $res );
346
+ if ( $json === null ) {
347
+ Mage::log(
348
+ 'Zakeke: failed to parse ' . $url . ' ' . $res,
349
+ Zend_Log::ERR
350
+ );
351
+
352
+ return false;
353
+ }
354
+
355
+ $token = $json->token;
356
+ $this->log( $token );
357
+ curl_setopt( $ch, CURLOPT_HTTPHEADER, array(
358
+ 'X-Auth-Token: ' . $token,
359
+ 'Connection: Keep-Alive',
360
+ 'Keep-Alive: 300'
361
+ ) );
362
+
363
+ $placeOrderData = array(
364
+ 'orderCode' => $data['orderCode'],
365
+ 'sessionID' => $data['sessionID'],
366
+ 'total' => $data['total'],
367
+ 'orderStatusID' => $data['orderStatusID'],
368
+ 'details' => $data['details'],
369
+ 'marketplaceID' => '1'
370
+ );
371
+ $encodedData = http_build_query( $placeOrderData );
372
+
373
+ $url = Futurenext_Zakeke_Helper_Data::ZAKEKE_API_URL . '/api/orderdocs';
374
+ curl_setopt( $ch, CURLOPT_URL, $url );
375
+ curl_setopt( $ch, CURLOPT_POST, 1 );
376
+ curl_setopt( $ch, CURLOPT_POSTFIELDS, $encodedData );
377
+ $res = curl_exec( $ch );
378
+
379
+ if ( $res === false ) {
380
+ Mage::log(
381
+ 'Zakeke: failed to get ' . $url . ' ' . curl_error( $ch ) . ' ' . $res,
382
+ Zend_Log::ERR
383
+ );
384
+
385
+ return false;
386
+ }
387
+
388
+ return true;
389
+ }
390
+
391
+ /**
392
+ * Cancel an order containing Zakeke customized products placed.
393
+ *
394
+ * @param string $orderId
395
+ *
396
+ * @return void
397
+ */
398
+ public function cancelOrder( $orderId ) {
399
+ }
400
+
401
+ /**
402
+ * Return an array of incompatible modules with hints how to solve the problem
403
+ *
404
+ * @param array $moduleList
405
+ *
406
+ * @return array|false
407
+ */
408
+ public function moduleChecker( $moduleList ) {
409
+ $incompatibleModules = array();
410
+
411
+ $json = $this->getRawRequest( '/api/IncompatiblePlugins' );
412
+ if ( $json === false ) {
413
+ return false;
414
+ }
415
+
416
+ foreach ( $moduleList as $module ) {
417
+ foreach ( $json as $incompatibleModule ) {
418
+ if ( $module['name'] !== $incompatibleModule->name ) {
419
+ continue;
420
+ }
421
+
422
+ if ( $module['setup_version'] >= $incompatibleModule->fromVersion
423
+ || $module['setup_version'] <= $incompatibleModule->toVersion
424
+ ) {
425
+ $moduleInfo = new Varien_Object();
426
+ $moduleInfo->setName( $module['name'] );
427
+ $moduleInfo->setSetupVersion( $module['setup_version'] );
428
+ $moduleInfo->setHowToFixHtml( $incompatibleModule->fix );
429
+
430
+ $incompatibleModules[] = $moduleInfo;
431
+ }
432
+ }
433
+ }
434
+
435
+ return $incompatibleModules;
436
+ }
437
+
438
+ /**
439
+ * Check if Zakeke is reachable from the shop server
440
+ *
441
+ * @return bool
442
+ */
443
+ public function isReachable() {
444
+ $ch = curl_init( Futurenext_Zakeke_Helper_Data::ZAKEKE_BASE_URL );
445
+ curl_setopt( $ch, CURLOPT_NOBODY, true );
446
+ curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, true );
447
+ curl_setopt( $ch, CURLOPT_TIMEOUT, 5 );
448
+ curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
449
+ curl_setopt( $ch, CURLOPT_VERBOSE, false );
450
+ curl_exec( $ch );
451
+ $httpCode = curl_getinfo( $ch, CURLINFO_HTTP_CODE );
452
+ curl_close( $ch );
453
+
454
+ return $httpCode >= 200 && $httpCode < 300;
455
+ }
456
+
457
+ /**
458
+ * Log event to Zakeke server
459
+ *
460
+ * @param string $message
461
+ * @param int $level
462
+ *
463
+ * @return void
464
+ */
465
+ public function log( $message, $level = null ) {
466
+ $level = is_null( $level ) ? Zend_Log::DEBUG : $level;
467
+
468
+ Mage::log(
469
+ $message,
470
+ $level,
471
+ Futurenext_Zakeke_Helper_Data::ZAKEKE_LOG_FILE,
472
+ true
473
+ );
474
+ }
475
  }
app/code/community/Futurenext/Zakeke/Model/Observer.php CHANGED
@@ -301,7 +301,12 @@ class Futurenext_Zakeke_Model_Observer
301
  */
302
  public function cartAdd($observer)
303
  {
 
 
 
304
  try {
 
 
305
  /** @var Mage_Catalog_Model_Product $product */
306
  $product = $observer->getProduct();
307
 
@@ -368,6 +373,7 @@ class Futurenext_Zakeke_Model_Observer
368
  $product->setIsSuperMode(true);
369
  } catch (Exception $e) {
370
  Mage::logException($e);
 
371
  throw $e;
372
  }
373
  return $this;
@@ -382,11 +388,17 @@ class Futurenext_Zakeke_Model_Observer
382
  */
383
  public function orderSave($observer)
384
  {
 
 
 
385
  try {
 
 
386
  /** @var Mage_Sales_Model_Order $order */
387
  $order = $observer->getOrder();
388
 
389
- if (!$order->isObjectNew()) {
 
390
  return $this;
391
  }
392
 
@@ -487,13 +499,14 @@ class Futurenext_Zakeke_Model_Observer
487
  }
488
  }
489
 
 
 
490
  if (count($data['details']) > 0) {
491
- /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
492
- $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
493
  $zakekeApi->placeOrder($data);
494
  }
495
  } catch (Exception $e) {
496
  Mage::logException($e);
 
497
  throw $e;
498
  }
499
  return $this;
301
  */
302
  public function cartAdd($observer)
303
  {
304
+ /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
305
+ $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
306
+
307
  try {
308
+ $zakekeApi->log('Observer cartAdd called');
309
+
310
  /** @var Mage_Catalog_Model_Product $product */
311
  $product = $observer->getProduct();
312
 
373
  $product->setIsSuperMode(true);
374
  } catch (Exception $e) {
375
  Mage::logException($e);
376
+ $zakekeApi->log('Observer orderSave exception ' . $e);
377
  throw $e;
378
  }
379
  return $this;
388
  */
389
  public function orderSave($observer)
390
  {
391
+ /** @var Futurenext_Zakeke_Helper_ZakekeApi $zakekeApi */
392
+ $zakekeApi = Mage::helper('futurenext_zakeke/zakekeApi');
393
+
394
  try {
395
+ $zakekeApi->log('Observer orderSave called');
396
+
397
  /** @var Mage_Sales_Model_Order $order */
398
  $order = $observer->getOrder();
399
 
400
+ if ($order->getId() === null) {
401
+ $zakekeApi->log('Observer orderSave order ' . $order->getId() . ' already managed');
402
  return $this;
403
  }
404
 
499
  }
500
  }
501
 
502
+ $zakekeApi->log('Observer orderSave order data ' . json_encode($data));
503
+
504
  if (count($data['details']) > 0) {
 
 
505
  $zakekeApi->placeOrder($data);
506
  }
507
  } catch (Exception $e) {
508
  Mage::logException($e);
509
+ $zakekeApi->log('Observer orderSave exception ' . $e);
510
  throw $e;
511
  }
512
  return $this;
app/code/community/Futurenext/Zakeke/controllers/CustomizeController.php CHANGED
@@ -265,7 +265,7 @@ class Futurenext_Zakeke_CustomizeController extends Mage_Core_Controller_Front_A
265
  );
266
 
267
  $this->loadLayout();
268
- $title = $product->getName() . ' ' . $this->__('customization');
269
  $this->getLayout()->getBlock('head')->setTitle($title);
270
  $this->renderLayout();
271
  } catch (Exception $e) {
265
  );
266
 
267
  $this->loadLayout();
268
+ $title = $product->getName();
269
  $this->getLayout()->getBlock('head')->setTitle($title);
270
  $this->renderLayout();
271
  } catch (Exception $e) {
app/code/community/Futurenext/Zakeke/etc/config.xml CHANGED
@@ -12,7 +12,7 @@
12
  <config>
13
  <modules>
14
  <Futurenext_Zakeke>
15
- <version>1.0.0.3</version>
16
  </Futurenext_Zakeke>
17
  </modules>
18
 
12
  <config>
13
  <modules>
14
  <Futurenext_Zakeke>
15
+ <version>1.0.0.4</version>
16
  </Futurenext_Zakeke>
17
  </modules>
18
 
app/design/frontend/base/default/template/zakeke/cart/item/default.phtml CHANGED
@@ -1,274 +1,274 @@
1
- <?php
2
- /*******************************************************
3
- * Copyright (C) 2016 FutureNext SRL
4
- *
5
- * This file is part of Zakeke.
6
- *
7
- * Zakeke can not be copied and/or distributed without the express
8
- * permission of FutureNext SRL
9
- *******************************************************/
10
-
11
- /** @var Futurenext_Zakeke_Block_CartItemRenderer $this */
12
- ?>
13
- <?php
14
- $_item = $this->getItem();
15
- $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
16
- $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
17
- $zakekePreviews = $this->getZakekePreviews();
18
- if ($zakekePreviews) {
19
- $principalImagePreviewUrl = $zakekePreviews[0]->url;
20
- } else {
21
- $principalImagePreviewUrl = '';
22
- }
23
- ?>
24
- <tr>
25
- <td><?php if ($this->hasProductUrl()):?><a href="<?php echo $this->getProductUrl() ?>" title="<?php echo $this->escapeHtml($this->getProductName()) ?>" class="product-image"><?php endif;?><img src="<?php echo $this->quoteEscape($principalImagePreviewUrl); ?>" width="75" height="75" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /><?php if ($this->hasProductUrl()):?></a><?php endif;?></td>
26
- <td>
27
- <h2 class="product-name">
28
- <?php if ($this->hasProductUrl()):?>
29
- <a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->escapeHtml($this->getProductName()) ?></a>
30
- <?php else: ?>
31
- <?php echo $this->escapeHtml($this->getProductName()) ?>
32
- <?php endif; ?>
33
- </h2>
34
- <?php if ($_options = $this->getOptionList()):?>
35
- <dl class="item-options">
36
- <?php foreach ($_options as $_option) : ?>
37
- <?php if (isset($_option['is_zakeke'])) continue; ?>
38
- <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>
39
- <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
40
- <dd<?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>><?php echo $_formatedOptionValue['value'] ?>
41
- <?php if (isset($_formatedOptionValue['full_view'])): ?>
42
- <div class="truncated_full_value">
43
- <dl class="item-options">
44
- <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
45
- <dd><?php echo $_formatedOptionValue['full_view'] ?></dd>
46
- </dl>
47
- </div>
48
- <?php endif; ?>
49
- </dd>
50
- <?php endforeach; ?>
51
- </dl>
52
- <?php endif;?>
53
- <?php if ($messages = $this->getMessages()): ?>
54
- <?php foreach ($messages as $message): ?>
55
- <p class="item-msg <?php echo $message['type'] ?>">* <?php echo $this->escapeHtml($message['text']) ?></p>
56
- <?php endforeach; ?>
57
- <?php endif; ?>
58
- <?php $addInfoBlock = $this->getProductAdditionalInformationBlock(); ?>
59
- <?php if ($addInfoBlock): ?>
60
- <?php echo $addInfoBlock->setItem($_item)->toHtml() ?>
61
- <?php endif;?>
62
- </td>
63
- <td class="a-center">
64
- <?php if ($isVisibleProduct): ?>
65
- <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Edit item parameters')) ?>"><?php echo $this->__('Edit') ?></a>
66
- <?php endif ?>
67
- </td>
68
- <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
69
- <td class="a-center">
70
- <?php if ($isVisibleProduct): ?>
71
- <a href="<?php echo $this->helper('wishlist')->getMoveFromCartUrl($_item->getId()); ?>" class="link-wishlist use-ajax"><?php echo $this->__('Move'); ?></a>
72
- <?php endif ?>
73
- </td>
74
- <?php endif ?>
75
-
76
- <?php if ($canApplyMsrp): ?>
77
- <td class="a-right"<?php if ($this->helper('tax')->displayCartBothPrices()): ?> colspan="2"<?php endif; ?>>
78
- <span class="cart-price">
79
- <span class="cart-msrp-unit"><?php echo $this->__('See price before order confirmation.'); ?></span>
80
- <?php $helpLinkId = 'cart-msrp-help-' . $_item->getId(); ?>
81
- <a id="<?php echo $helpLinkId ?>" href="#" class="map-help-link"><?php echo $this->__("What's this?"); ?></a>
82
- <script type="text/javascript">
83
- Catalog.Map.addHelpLink($('<?php echo $helpLinkId ?>'), "<?php echo $this->__("What's this?") ?>");
84
- </script>
85
- </span>
86
- </td>
87
- <?php else: ?>
88
-
89
- <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
90
- <td class="a-right">
91
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
92
- <span class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
93
- <?php else: ?>
94
- <span class="cart-price">
95
- <?php endif; ?>
96
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
97
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
98
- <?php else: ?>
99
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
100
- <?php endif; ?>
101
-
102
- </span>
103
-
104
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
105
-
106
- <div class="cart-tax-info" id="eunit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
107
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
108
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
109
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
110
- <?php endforeach; ?>
111
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
112
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
113
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
114
- <?php endforeach; ?>
115
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
116
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
117
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
118
- <?php endforeach; ?>
119
- <?php endif; ?>
120
- </div>
121
-
122
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
123
- <div class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
124
- <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
125
- </div>
126
- <?php endif; ?>
127
- <?php endif; ?>
128
- </td>
129
- <?php endif; ?><!-- inclusive price starts here -->
130
- <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
131
- <td>
132
- <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
133
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
134
- <span class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
135
- <?php else: ?>
136
- <span class="cart-price">
137
- <?php endif; ?>
138
-
139
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
140
- <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
141
- <?php else: ?>
142
- <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
143
- <?php endif; ?>
144
-
145
- </span>
146
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
147
-
148
- <div class="cart-tax-info" id="unit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
149
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
150
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
151
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
152
- <?php endforeach; ?>
153
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
154
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
155
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
156
- <?php endforeach; ?>
157
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
158
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
159
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
160
- <?php endforeach; ?>
161
- <?php endif; ?>
162
- </div>
163
-
164
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
165
- <div class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
166
- <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
167
- </div>
168
- <?php endif; ?>
169
- <?php endif; ?>
170
- </td>
171
- <?php endif; ?>
172
- <?php endif; ?>
173
- <td class="a-center">
174
- <input name="cart[<?php echo $_item->getId() ?>][qty]"
175
- data-cart-item-id="<?php echo $this->jsQuoteEscape($_item->getSku()) ?>"
176
- value="<?php echo $this->getQty() ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" />
177
- </td>
178
-
179
- <!--Sub total starts here -->
180
- <?php if (($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
181
- <td class="a-right">
182
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
183
- <span class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
184
- <?php else: ?>
185
- <span class="cart-price">
186
- <?php endif; ?>
187
-
188
- <?php if ($canApplyMsrp): ?>
189
- <span class="cart-msrp-subtotal">--</span>
190
- <?php else: ?>
191
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
192
- <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
193
- <?php else: ?>
194
- <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()) ?>
195
- <?php endif; ?>
196
- <?php endif; ?>
197
-
198
- </span>
199
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
200
-
201
- <div class="cart-tax-info" id="esubtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
202
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
203
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
204
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
205
- <?php endforeach; ?>
206
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
207
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
208
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
209
- <?php endforeach; ?>
210
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
211
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
212
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
213
- <?php endforeach; ?>
214
- <?php endif; ?>
215
- </div>
216
-
217
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
218
- <div class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
219
- <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
220
- </div>
221
- <?php endif; ?>
222
- <?php endif; ?>
223
- </td>
224
- <?php endif; ?>
225
- <?php if (($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
226
- <td>
227
- <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
228
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
229
- <span class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
230
- <?php else: ?>
231
- <span class="cart-price">
232
- <?php endif; ?>
233
-
234
- <?php if ($canApplyMsrp): ?>
235
- <span class="cart-msrp-subtotal">--</span>
236
- <?php else: ?>
237
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
238
- <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?>
239
- <?php else: ?>
240
- <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
241
- <?php endif; ?>
242
- <?php endif; ?>
243
-
244
- </span>
245
-
246
-
247
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
248
-
249
- <div class="cart-tax-info" id="subtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
250
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
251
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
252
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
253
- <?php endforeach; ?>
254
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
255
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
256
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
257
- <?php endforeach; ?>
258
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
259
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
260
- <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
261
- <?php endforeach; ?>
262
- <?php endif; ?>
263
- </div>
264
-
265
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
266
- <div class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
267
- <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?></span>
268
- </div>
269
- <?php endif; ?>
270
- <?php endif; ?>
271
- </td>
272
- <?php endif; ?>
273
- <td class="a-center"><a href="<?php echo $this->getDeleteUrl()?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Remove item')) ?>" class="btn-remove btn-remove2"><?php echo $this->__('Remove item')?></a></td>
274
- </tr>
1
+ <?php
2
+ /*******************************************************
3
+ * Copyright (C) 2016 FutureNext SRL
4
+ *
5
+ * This file is part of Zakeke.
6
+ *
7
+ * Zakeke can not be copied and/or distributed without the express
8
+ * permission of FutureNext SRL
9
+ *******************************************************/
10
+
11
+ /** @var Futurenext_Zakeke_Block_CartItemRenderer $this */
12
+ ?>
13
+ <?php
14
+ $_item = $this->getItem();
15
+ $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
16
+ $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
17
+ $zakekePreviews = $this->getZakekePreviews();
18
+ if ($zakekePreviews) {
19
+ $principalImagePreviewUrl = $zakekePreviews[0]->url;
20
+ } else {
21
+ $principalImagePreviewUrl = '';
22
+ }
23
+ ?>
24
+ <tr>
25
+ <td><?php if ($this->hasProductUrl()):?><a href="<?php echo $this->getProductUrl() ?>" title="<?php echo $this->escapeHtml($this->getProductName()) ?>" class="product-image"><?php endif;?><img src="<?php echo $this->quoteEscape($principalImagePreviewUrl); ?>" width="75" height="75" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /><?php if ($this->hasProductUrl()):?></a><?php endif;?></td>
26
+ <td>
27
+ <h2 class="product-name">
28
+ <?php if ($this->hasProductUrl()):?>
29
+ <a href="<?php echo $this->getProductUrl() ?>"><?php echo $this->escapeHtml($this->getProductName()) ?></a>
30
+ <?php else: ?>
31
+ <?php echo $this->escapeHtml($this->getProductName()) ?>
32
+ <?php endif; ?>
33
+ </h2>
34
+ <?php if ($_options = $this->getOptionList()):?>
35
+ <dl class="item-options">
36
+ <?php foreach ($_options as $_option) : ?>
37
+ <?php if (isset($_option['is_zakeke'])) continue; ?>
38
+ <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>
39
+ <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
40
+ <dd<?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>><?php echo $_formatedOptionValue['value'] ?>
41
+ <?php if (isset($_formatedOptionValue['full_view'])): ?>
42
+ <div class="truncated_full_value">
43
+ <dl class="item-options">
44
+ <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
45
+ <dd><?php echo $_formatedOptionValue['full_view'] ?></dd>
46
+ </dl>
47
+ </div>
48
+ <?php endif; ?>
49
+ </dd>
50
+ <?php endforeach; ?>
51
+ </dl>
52
+ <?php endif;?>
53
+ <?php if ($messages = $this->getMessages()): ?>
54
+ <?php foreach ($messages as $message): ?>
55
+ <p class="item-msg <?php echo $message['type'] ?>">* <?php echo $this->escapeHtml($message['text']) ?></p>
56
+ <?php endforeach; ?>
57
+ <?php endif; ?>
58
+ <?php $addInfoBlock = $this->getProductAdditionalInformationBlock(); ?>
59
+ <?php if ($addInfoBlock): ?>
60
+ <?php echo $addInfoBlock->setItem($_item)->toHtml() ?>
61
+ <?php endif;?>
62
+ </td>
63
+ <td class="a-center">
64
+ <?php if ($isVisibleProduct): ?>
65
+ <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Edit item parameters')) ?>"><?php echo $this->__('Edit') ?></a>
66
+ <?php endif ?>
67
+ </td>
68
+ <?php if ($this->helper('wishlist')->isAllowInCart()) : ?>
69
+ <td class="a-center">
70
+ <?php if ($isVisibleProduct): ?>
71
+ <a href="<?php echo $this->helper('wishlist')->getMoveFromCartUrl($_item->getId()); ?>" class="link-wishlist use-ajax"><?php echo $this->__('Move'); ?></a>
72
+ <?php endif ?>
73
+ </td>
74
+ <?php endif ?>
75
+
76
+ <?php if ($canApplyMsrp): ?>
77
+ <td class="a-right"<?php if ($this->helper('tax')->displayCartBothPrices()): ?> colspan="2"<?php endif; ?>>
78
+ <span class="cart-price">
79
+ <span class="cart-msrp-unit"><?php echo $this->__('See price before order confirmation.'); ?></span>
80
+ <?php $helpLinkId = 'cart-msrp-help-' . $_item->getId(); ?>
81
+ <a id="<?php echo $helpLinkId ?>" href="#" class="map-help-link"><?php echo $this->__("What's this?"); ?></a>
82
+ <script type="text/javascript">
83
+ Catalog.Map.addHelpLink($('<?php echo $helpLinkId ?>'), "<?php echo $this->__("What's this?") ?>");
84
+ </script>
85
+ </span>
86
+ </td>
87
+ <?php else: ?>
88
+
89
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
90
+ <td class="a-right">
91
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
92
+ <span class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
93
+ <?php else: ?>
94
+ <span class="cart-price">
95
+ <?php endif; ?>
96
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
97
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
98
+ <?php else: ?>
99
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
100
+ <?php endif; ?>
101
+
102
+ </span>
103
+
104
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
105
+
106
+ <div class="cart-tax-info" id="eunit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
107
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
108
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
109
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
110
+ <?php endforeach; ?>
111
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
112
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
113
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
114
+ <?php endforeach; ?>
115
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
116
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
117
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
118
+ <?php endforeach; ?>
119
+ <?php endif; ?>
120
+ </div>
121
+
122
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
123
+ <div class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
124
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
125
+ </div>
126
+ <?php endif; ?>
127
+ <?php endif; ?>
128
+ </td>
129
+ <?php endif; ?><!-- inclusive price starts here -->
130
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
131
+ <td>
132
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
133
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
134
+ <span class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
135
+ <?php else: ?>
136
+ <span class="cart-price">
137
+ <?php endif; ?>
138
+
139
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
140
+ <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
141
+ <?php else: ?>
142
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
143
+ <?php endif; ?>
144
+
145
+ </span>
146
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
147
+
148
+ <div class="cart-tax-info" id="unit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
149
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
150
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
151
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
152
+ <?php endforeach; ?>
153
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
154
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
155
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
156
+ <?php endforeach; ?>
157
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
158
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
159
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span>
160
+ <?php endforeach; ?>
161
+ <?php endif; ?>
162
+ </div>
163
+
164
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
165
+ <div class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
166
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
167
+ </div>
168
+ <?php endif; ?>
169
+ <?php endif; ?>
170
+ </td>
171
+ <?php endif; ?>
172
+ <?php endif; ?>
173
+ <td class="a-center">
174
+ <input name="cart[<?php echo $_item->getId() ?>][qty]"
175
+ data-cart-item-id="<?php echo $this->jsQuoteEscape($_item->getSku()) ?>"
176
+ value="<?php echo $this->getQty() ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" />
177
+ </td>
178
+
179
+ <!--Sub total starts here -->
180
+ <?php if (($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
181
+ <td class="a-right">
182
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
183
+ <span class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
184
+ <?php else: ?>
185
+ <span class="cart-price">
186
+ <?php endif; ?>
187
+
188
+ <?php if ($canApplyMsrp): ?>
189
+ <span class="cart-msrp-subtotal">--</span>
190
+ <?php else: ?>
191
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
192
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
193
+ <?php else: ?>
194
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()) ?>
195
+ <?php endif; ?>
196
+ <?php endif; ?>
197
+
198
+ </span>
199
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
200
+
201
+ <div class="cart-tax-info" id="esubtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
202
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
203
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
204
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
205
+ <?php endforeach; ?>
206
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
207
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
208
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
209
+ <?php endforeach; ?>
210
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
211
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
212
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span>
213
+ <?php endforeach; ?>
214
+ <?php endif; ?>
215
+ </div>
216
+
217
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
218
+ <div class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
219
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total'); ?>: <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
220
+ </div>
221
+ <?php endif; ?>
222
+ <?php endif; ?>
223
+ </td>
224
+ <?php endif; ?>
225
+ <?php if (($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()) && !$_item->getNoSubtotal()): ?>
226
+ <td>
227
+ <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
228
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
229
+ <span class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
230
+ <?php else: ?>
231
+ <span class="cart-price">
232
+ <?php endif; ?>
233
+
234
+ <?php if ($canApplyMsrp): ?>
235
+ <span class="cart-msrp-subtotal">--</span>
236
+ <?php else: ?>
237
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
238
+ <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?>
239
+ <?php else: ?>
240
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
241
+ <?php endif; ?>
242
+ <?php endif; ?>
243
+
244
+ </span>
245
+
246
+
247
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
248
+
249
+ <div class="cart-tax-info" id="subtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
250
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
251
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
252
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
253
+ <?php endforeach; ?>
254
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
255
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
256
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
257
+ <?php endforeach; ?>
258
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
259
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
260
+ <span class="weee"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span>
261
+ <?php endforeach; ?>
262
+ <?php endif; ?>
263
+ </div>
264
+
265
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
266
+ <div class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
267
+ <span class="weee"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>: <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?></span>
268
+ </div>
269
+ <?php endif; ?>
270
+ <?php endif; ?>
271
+ </td>
272
+ <?php endif; ?>
273
+ <td class="a-center"><a href="<?php echo $this->getDeleteUrl()?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Remove item')) ?>" class="btn-remove btn-remove2"><?php echo $this->__('Remove item')?></a></td>
274
+ </tr>
app/design/frontend/base/default/template/zakeke/cart/minicart.phtml CHANGED
@@ -1,184 +1,184 @@
1
- <?php
2
- /*******************************************************
3
- * Copyright (C) 2016 FutureNext SRL
4
- *
5
- * This file is part of Zakeke.
6
- *
7
- * Zakeke can not be copied and/or distributed without the express
8
- * permission of FutureNext SRL
9
- *******************************************************/
10
-
11
- /** @var Futurenext_Zakeke_Block_CartItemRenderer $this */
12
- ?>
13
-
14
- <?php
15
- $_item = $this->getItem();
16
- $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
17
- $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
18
- $zakekePreviews = $this->getZakekePreviews();
19
- if ($zakekePreviews) {
20
- $principalImagePreviewUrl = $zakekePreviews[0]->url;
21
- } else {
22
- $principalImagePreviewUrl = '';
23
- }
24
- ?>
25
- <li class="item" xmlns="http://www.w3.org/1999/html">
26
- <?php if ($this->hasProductUrl()): ?>
27
- <a href="<?php echo $this->getProductUrl()?>" title="<?php echo $this->escapeHtml($this->getProductName()) ?>" class="product-image"><img src="<?php echo $this->quoteEscape($principalImagePreview->url); ?>" width="50" height="50" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /></a>
28
- <?php else: ?>
29
- <span class="product-image"><img src="<?php echo $this->quoteEscape($principalImagePreviewUrl); ?>" width="50" height="50" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /></span>
30
- <?php endif; ?>
31
- <div class="product-details">
32
- <p class="product-name"><?php if ($this->hasProductUrl()): ?><a href="<?php echo $this->getProductUrl() ?>"><?php endif; ?><?php echo $this->escapeHtml($this->getProductName()) ?><?php if ($this->hasProductUrl()): ?></a><?php endif; ?></p>
33
-
34
- <table class="info-wrapper">
35
- <tbody>
36
- <tr>
37
- <th><?php echo $this->__('Price'); ?></th>
38
- <td>
39
- <?php if ($canApplyMsrp): ?>
40
-
41
- <span class="map-cart-sidebar-item"><?php echo $this->__('See price before order confirmation.'); ?></span>
42
-
43
- <?php else: ?>
44
-
45
- <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
46
- <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
47
- <?php echo $this->__('Excl. Tax'); ?>:
48
- <?php endif; ?>
49
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
50
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
51
- <?php else: ?>
52
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
53
- <?php endif; ?>
54
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
55
- <br />
56
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
57
- <small>
58
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
59
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
60
- <?php endforeach; ?>
61
- </small>
62
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
63
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
64
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
65
- <?php endforeach; ?>
66
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
67
- <small>
68
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
69
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
70
- <?php endforeach; ?>
71
- </small>
72
- <?php endif; ?>
73
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
74
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
75
- <?php endif; ?>
76
- <?php endif; ?>
77
- <?php endif; ?>
78
-
79
-
80
-
81
- <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
82
- <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
83
- <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
84
- <br /><?php echo $this->__('Incl. Tax'); ?>:
85
- <?php endif; ?>
86
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
87
- <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
88
- <?php else: ?>
89
- <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
90
- <?php endif; ?>
91
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
92
- <br />
93
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
94
- <small>
95
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
96
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
97
- <?php endforeach; ?>
98
- </small>
99
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
100
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
101
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span>
102
- <?php endforeach; ?>
103
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
104
- <small>
105
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
106
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
107
- <?php endforeach; ?>
108
- </small>
109
- <?php endif; ?>
110
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
111
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
112
- <?php endif; ?>
113
- <?php endif; ?>
114
- <?php endif; ?>
115
-
116
- <?php endif; //Can apply MSRP ?>
117
- </td>
118
- </tr>
119
- <tr class="qty-wrapper">
120
- <th><?php echo $this->__('Qty'); ?></th>
121
- <td>
122
- <input
123
- id="qinput-<?php echo $_item->getId(); ?>"
124
- data-link="<?php echo $this->getAjaxUpdateUrl() ?>"
125
- data-item-id="<?php echo $_item->getId(); ?>"
126
- data-cart-item-id="<?php echo $_item->getSku(); ?>"
127
- class="qty cart-item-quantity input-text" name=""
128
- value="<?php echo $this->getQty()?>"
129
- <?php if ($this->isOnCheckoutPage()) echo 'disabled'; ?>
130
- />
131
-
132
- <button id="qbutton-<?php echo $_item->getId(); ?>"
133
- data-item-id="<?php echo $_item->getId(); ?>"
134
- disabled="disabled"
135
- data-update
136
- data-cart-item-update
137
- class="button quantity-button">
138
- <?php echo $this->__('ok'); ?>
139
- </button>
140
- </td>
141
- </tr>
142
- </tbody>
143
- </table>
144
-
145
- <?php if ($isVisibleProduct): ?>
146
- <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Edit item')) ?>" class="btn-edit">
147
- <?php echo $this->__('Edit item')?>
148
- </a>
149
- |
150
- <?php if (!$this->isOnCheckoutPage()): ?>
151
- <a href="<?php echo $this->getAjaxDeleteUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Remove This Item')) ?>"
152
- data-confirm="<?php echo $this->__('Are you sure you would like to remove this item from the shopping cart?') ?>"
153
- class="remove">
154
- <?php echo $this->__('Remove Item') ?>
155
- </a>
156
- <?php else: ?>
157
- <span><?php echo $this->__('Remove Item') ?></span>
158
- <?php endif; ?>
159
- <?php endif ?>
160
-
161
-
162
-
163
- <?php if ($_options = $this->getOptionList()):?>
164
- <div class="truncated">
165
- <div class="truncated_full_value">
166
- <dl class="item-options">
167
- <?php foreach ($_options as $_option) : ?>
168
- <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
169
- <dd>
170
- <?php if (is_array($_option['value'])): ?>
171
- <?php echo nl2br(implode("\n", $_option['value'])) ?>
172
- <?php else: ?>
173
- <?php echo $_option['value'] ?>
174
- <?php endif; ?>
175
- </dd>
176
- <?php endforeach; ?>
177
- </dl>
178
- </div>
179
- <a href="#" onclick="return false;" class="details"><?php echo $this->__('Details') ?></a>
180
- </div>
181
- <?php endif; ?>
182
-
183
- </div>
184
- </li>
1
+ <?php
2
+ /*******************************************************
3
+ * Copyright (C) 2016 FutureNext SRL
4
+ *
5
+ * This file is part of Zakeke.
6
+ *
7
+ * Zakeke can not be copied and/or distributed without the express
8
+ * permission of FutureNext SRL
9
+ *******************************************************/
10
+
11
+ /** @var Futurenext_Zakeke_Block_CartItemRenderer $this */
12
+ ?>
13
+
14
+ <?php
15
+ $_item = $this->getItem();
16
+ $isVisibleProduct = $_item->getProduct()->isVisibleInSiteVisibility();
17
+ $canApplyMsrp = Mage::helper('catalog')->canApplyMsrp($_item->getProduct(), Mage_Catalog_Model_Product_Attribute_Source_Msrp_Type::TYPE_BEFORE_ORDER_CONFIRM);
18
+ $zakekePreviews = $this->getZakekePreviews();
19
+ if ($zakekePreviews) {
20
+ $principalImagePreviewUrl = $zakekePreviews[0]->url;
21
+ } else {
22
+ $principalImagePreviewUrl = '';
23
+ }
24
+ ?>
25
+ <li class="item" xmlns="http://www.w3.org/1999/html">
26
+ <?php if ($this->hasProductUrl()): ?>
27
+ <a href="<?php echo $this->getProductUrl()?>" title="<?php echo $this->escapeHtml($this->getProductName()) ?>" class="product-image"><img src="<?php echo $this->quoteEscape($principalImagePreview->url); ?>" width="50" height="50" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /></a>
28
+ <?php else: ?>
29
+ <span class="product-image"><img src="<?php echo $this->quoteEscape($principalImagePreviewUrl); ?>" width="50" height="50" alt="<?php echo $this->escapeHtml($this->getProductName()) ?>" /></span>
30
+ <?php endif; ?>
31
+ <div class="product-details">
32
+ <p class="product-name"><?php if ($this->hasProductUrl()): ?><a href="<?php echo $this->getProductUrl() ?>"><?php endif; ?><?php echo $this->escapeHtml($this->getProductName()) ?><?php if ($this->hasProductUrl()): ?></a><?php endif; ?></p>
33
+
34
+ <table class="info-wrapper">
35
+ <tbody>
36
+ <tr>
37
+ <th><?php echo $this->__('Price'); ?></th>
38
+ <td>
39
+ <?php if ($canApplyMsrp): ?>
40
+
41
+ <span class="map-cart-sidebar-item"><?php echo $this->__('See price before order confirmation.'); ?></span>
42
+
43
+ <?php else: ?>
44
+
45
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
46
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
47
+ <?php echo $this->__('Excl. Tax'); ?>:
48
+ <?php endif; ?>
49
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
50
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
51
+ <?php else: ?>
52
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
53
+ <?php endif; ?>
54
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
55
+ <br />
56
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
57
+ <small>
58
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
59
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span>
60
+ <?php endforeach; ?>
61
+ </small>
62
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
63
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
64
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
65
+ <?php endforeach; ?>
66
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
67
+ <small>
68
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
69
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
70
+ <?php endforeach; ?>
71
+ </small>
72
+ <?php endif; ?>
73
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
74
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
75
+ <?php endif; ?>
76
+ <?php endif; ?>
77
+ <?php endif; ?>
78
+
79
+
80
+
81
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
82
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
83
+ <?php if ($this->helper('tax')->displayCartBothPrices()): ?>
84
+ <br /><?php echo $this->__('Incl. Tax'); ?>:
85
+ <?php endif; ?>
86
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales')): ?>
87
+ <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
88
+ <?php else: ?>
89
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
90
+ <?php endif; ?>
91
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
92
+ <br />
93
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales')): ?>
94
+ <small>
95
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
96
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
97
+ <?php endforeach; ?>
98
+ </small>
99
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
100
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
101
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span>
102
+ <?php endforeach; ?>
103
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales')): ?>
104
+ <small>
105
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
106
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
107
+ <?php endforeach; ?>
108
+ </small>
109
+ <?php endif; ?>
110
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales')): ?>
111
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
112
+ <?php endif; ?>
113
+ <?php endif; ?>
114
+ <?php endif; ?>
115
+
116
+ <?php endif; //Can apply MSRP ?>
117
+ </td>
118
+ </tr>
119
+ <tr class="qty-wrapper">
120
+ <th><?php echo $this->__('Qty'); ?></th>
121
+ <td>
122
+ <input
123
+ id="qinput-<?php echo $_item->getId(); ?>"
124
+ data-link="<?php echo $this->getAjaxUpdateUrl() ?>"
125
+ data-item-id="<?php echo $_item->getId(); ?>"
126
+ data-cart-item-id="<?php echo $_item->getSku(); ?>"
127
+ class="qty cart-item-quantity input-text" name=""
128
+ value="<?php echo $this->getQty()?>"
129
+ <?php if ($this->isOnCheckoutPage()) echo 'disabled'; ?>
130
+ />
131
+
132
+ <button id="qbutton-<?php echo $_item->getId(); ?>"
133
+ data-item-id="<?php echo $_item->getId(); ?>"
134
+ disabled="disabled"
135
+ data-update
136
+ data-cart-item-update
137
+ class="button quantity-button">
138
+ <?php echo $this->__('ok'); ?>
139
+ </button>
140
+ </td>
141
+ </tr>
142
+ </tbody>
143
+ </table>
144
+
145
+ <?php if ($isVisibleProduct): ?>
146
+ <a href="<?php echo $this->getConfigureUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Edit item')) ?>" class="btn-edit">
147
+ <?php echo $this->__('Edit item')?>
148
+ </a>
149
+ |
150
+ <?php if (!$this->isOnCheckoutPage()): ?>
151
+ <a href="<?php echo $this->getAjaxDeleteUrl() ?>" title="<?php echo Mage::helper('core')->quoteEscape($this->__('Remove This Item')) ?>"
152
+ data-confirm="<?php echo $this->__('Are you sure you would like to remove this item from the shopping cart?') ?>"
153
+ class="remove">
154
+ <?php echo $this->__('Remove Item') ?>
155
+ </a>
156
+ <?php else: ?>
157
+ <span><?php echo $this->__('Remove Item') ?></span>
158
+ <?php endif; ?>
159
+ <?php endif ?>
160
+
161
+
162
+
163
+ <?php if ($_options = $this->getOptionList()):?>
164
+ <div class="truncated">
165
+ <div class="truncated_full_value">
166
+ <dl class="item-options">
167
+ <?php foreach ($_options as $_option) : ?>
168
+ <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
169
+ <dd>
170
+ <?php if (is_array($_option['value'])): ?>
171
+ <?php echo nl2br(implode("\n", $_option['value'])) ?>
172
+ <?php else: ?>
173
+ <?php echo $_option['value'] ?>
174
+ <?php endif; ?>
175
+ </dd>
176
+ <?php endforeach; ?>
177
+ </dl>
178
+ </div>
179
+ <a href="#" onclick="return false;" class="details"><?php echo $this->__('Details') ?></a>
180
+ </div>
181
+ <?php endif; ?>
182
+
183
+ </div>
184
+ </li>
app/design/frontend/base/default/template/zakeke/checkout/onepage/review/item.phtml CHANGED
@@ -1,237 +1,237 @@
1
- <?php
2
- /*******************************************************
3
- * Copyright (C) 2016 FutureNext SRL
4
- *
5
- * This file is part of Zakeke.
6
- *
7
- * Zakeke can not be copied and/or distributed without the express
8
- * permission of FutureNext SRL
9
- *******************************************************/
10
-
11
- $_item = $this->getItem();
12
- $_zakekePreviews = $this->getZakekePreviews();
13
- ?>
14
- <tr>
15
- <td><h3 class="product-name"><?php echo $this->escapeHtml($this->getProductName()) ?></h3>
16
- <div class="zakeke-preview">
17
- <div style="display: flex">
18
- <?php foreach ($_zakekePreviews as $preview): ?>
19
- <div data-zakeke-label="<?php echo $this->quoteEscape($preview->label) ?>" style="position: relative; width: 180px; height: 180px; overflow: hidden; cursor: pointer; margin: 0px;"
20
- onclick="zakekeShowPreview(this); return false;">
21
- <img src="<?php echo $this->quoteEscape($preview->url) ?>" style="width: 180px">
22
- </div>
23
- <?php endforeach; ?>
24
- </div>
25
- </div>
26
- <?php if ($_options = $this->getOptionList()):?>
27
- <dl class="item-options">
28
- <?php foreach ($_options as $_option) : ?>
29
- <?php if (isset($_option['is_zakeke'])) continue; ?>
30
- <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>
31
- <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
32
- <dd<?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>><?php echo $_formatedOptionValue['value'] ?>
33
- <?php if (isset($_formatedOptionValue['full_view'])): ?>
34
- <div class="truncated_full_value">
35
- <dl class="item-options">
36
- <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
37
- <dd><?php echo $_formatedOptionValue['full_view'] ?></dd>
38
- </dl>
39
- </div>
40
- <?php endif; ?>
41
- </dd>
42
- <?php endforeach; ?>
43
- </dl>
44
- <?php endif;?>
45
- <?php if ($addtInfoBlock = $this->getProductAdditionalInformationBlock()):?>
46
- <?php echo $addtInfoBlock->setItem($_item)->toHtml() ?>
47
- <?php endif;?>
48
- </td>
49
- <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
50
- <td class="a-right">
51
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
52
- <span class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
53
- <?php else: ?>
54
- <span class="cart-price">
55
- <?php endif; ?>
56
-
57
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
58
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
59
- <?php else: ?>
60
- <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
61
- <?php endif; ?>
62
-
63
- </span>
64
-
65
-
66
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
67
-
68
- <div class="cart-tax-info" id="eunit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
69
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
70
- <small>
71
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
72
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
73
- <?php endforeach; ?>
74
- </small>
75
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
76
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
77
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></small></span><br />
78
- <?php endforeach; ?>
79
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
80
- <small>
81
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
82
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
83
- <?php endforeach; ?>
84
- </small>
85
- <?php endif; ?>
86
- </div>
87
-
88
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
89
- <div class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
90
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
91
- </div>
92
- <?php endif; ?>
93
- <?php endif; ?>
94
- </td>
95
- <?php endif; ?>
96
- <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
97
- <td>
98
- <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
99
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
100
- <span class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
101
- <?php else: ?>
102
- <span class="cart-price">
103
- <?php endif; ?>
104
-
105
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
106
- <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
107
- <?php else: ?>
108
- <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
109
- <?php endif; ?>
110
-
111
- </span>
112
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
113
-
114
- <div class="cart-tax-info" id="unit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
115
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
116
- <small>
117
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
118
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
119
- <?php endforeach; ?>
120
- </small>
121
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
122
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
123
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
124
- <?php endforeach; ?>
125
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
126
- <small>
127
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
128
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
129
- <?php endforeach; ?>
130
- </small>
131
- <?php endif; ?>
132
- </div>
133
-
134
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
135
- <div class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
136
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
137
- </div>
138
- <?php endif; ?>
139
- <?php endif; ?>
140
- </td>
141
- <?php endif; ?>
142
- <td class="a-center"><?php echo $_item->getQty() ?></td>
143
- <!-- sub total starts here -->
144
- <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
145
- <td class="a-right">
146
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
147
- <span class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
148
- <?php else: ?>
149
- <span class="cart-price">
150
- <?php endif; ?>
151
-
152
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
153
- <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
154
- <?php else: ?>
155
- <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()) ?>
156
- <?php endif; ?>
157
-
158
- </span>
159
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
160
-
161
- <div class="cart-tax-info" id="esubtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
162
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
163
- <small>
164
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
165
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span><br />
166
- <?php endforeach; ?>
167
- </small>
168
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
169
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
170
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></small></span><br />
171
- <?php endforeach; ?>
172
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
173
- <small>
174
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
175
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span><br />
176
- <?php endforeach; ?>
177
- </small>
178
- <?php endif; ?>
179
- </div>
180
-
181
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
182
- <div class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
183
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
184
- </div>
185
- <?php endif; ?>
186
- <?php endif; ?>
187
- </td>
188
- <?php endif; ?>
189
- <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
190
- <td>
191
- <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
192
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
193
- <span class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
194
- <?php else: ?>
195
- <span class="cart-price">
196
- <?php endif; ?>
197
-
198
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
199
- <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?>
200
- <?php else: ?>
201
- <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
202
- <?php endif; ?>
203
-
204
- </span>
205
-
206
-
207
- <?php if (Mage::helper('weee')->getApplied($_item)): ?>
208
-
209
- <div class="cart-tax-info" id="subtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
210
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
211
- <small>
212
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
213
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
214
- <?php endforeach; ?>
215
- </small>
216
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
217
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
218
- <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
219
- <?php endforeach; ?>
220
- <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
221
- <small>
222
- <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
223
- <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
224
- <?php endforeach; ?>
225
- </small>
226
- <?php endif; ?>
227
- </div>
228
-
229
- <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
230
- <div class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
231
- <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?></span>
232
- </div>
233
- <?php endif; ?>
234
- <?php endif; ?>
235
- </td>
236
- <?php endif; ?>
237
- </tr>
1
+ <?php
2
+ /*******************************************************
3
+ * Copyright (C) 2016 FutureNext SRL
4
+ *
5
+ * This file is part of Zakeke.
6
+ *
7
+ * Zakeke can not be copied and/or distributed without the express
8
+ * permission of FutureNext SRL
9
+ *******************************************************/
10
+
11
+ $_item = $this->getItem();
12
+ $_zakekePreviews = $this->getZakekePreviews();
13
+ ?>
14
+ <tr>
15
+ <td><h3 class="product-name"><?php echo $this->escapeHtml($this->getProductName()) ?></h3>
16
+ <div class="zakeke-preview">
17
+ <div style="display: flex">
18
+ <?php foreach ($_zakekePreviews as $preview): ?>
19
+ <div data-zakeke-label="<?php echo $this->quoteEscape($preview->label) ?>" style="position: relative; width: 180px; height: 180px; overflow: hidden; cursor: pointer; margin: 0px;"
20
+ onclick="zakekeShowPreview(this); return false;">
21
+ <img src="<?php echo $this->quoteEscape($preview->url) ?>" style="width: 180px">
22
+ </div>
23
+ <?php endforeach; ?>
24
+ </div>
25
+ </div>
26
+ <?php if ($_options = $this->getOptionList()):?>
27
+ <dl class="item-options">
28
+ <?php foreach ($_options as $_option) : ?>
29
+ <?php if (isset($_option['is_zakeke'])) continue; ?>
30
+ <?php $_formatedOptionValue = $this->getFormatedOptionValue($_option) ?>
31
+ <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
32
+ <dd<?php if (isset($_formatedOptionValue['full_view'])): ?> class="truncated"<?php endif; ?>><?php echo $_formatedOptionValue['value'] ?>
33
+ <?php if (isset($_formatedOptionValue['full_view'])): ?>
34
+ <div class="truncated_full_value">
35
+ <dl class="item-options">
36
+ <dt><?php echo $this->escapeHtml($_option['label']) ?></dt>
37
+ <dd><?php echo $_formatedOptionValue['full_view'] ?></dd>
38
+ </dl>
39
+ </div>
40
+ <?php endif; ?>
41
+ </dd>
42
+ <?php endforeach; ?>
43
+ </dl>
44
+ <?php endif;?>
45
+ <?php if ($addtInfoBlock = $this->getProductAdditionalInformationBlock()):?>
46
+ <?php echo $addtInfoBlock->setItem($_item)->toHtml() ?>
47
+ <?php endif;?>
48
+ </td>
49
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
50
+ <td class="a-right">
51
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
52
+ <span class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
53
+ <?php else: ?>
54
+ <span class="cart-price">
55
+ <?php endif; ?>
56
+
57
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
58
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?>
59
+ <?php else: ?>
60
+ <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()) ?>
61
+ <?php endif; ?>
62
+
63
+ </span>
64
+
65
+
66
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
67
+
68
+ <div class="cart-tax-info" id="eunit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
69
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
70
+ <small>
71
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
72
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
73
+ <?php endforeach; ?>
74
+ </small>
75
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
76
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
77
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></small></span><br />
78
+ <?php endforeach; ?>
79
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
80
+ <small>
81
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
82
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount'],true,true); ?></span><br />
83
+ <?php endforeach; ?>
84
+ </small>
85
+ <?php endif; ?>
86
+ </div>
87
+
88
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
89
+ <div class="cart-tax-total" onclick="taxToggle('eunit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
90
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getCalculationPrice()+$_item->getWeeeTaxAppliedAmount()+$_item->getWeeeTaxDisposition()); ?></span>
91
+ </div>
92
+ <?php endif; ?>
93
+ <?php endif; ?>
94
+ </td>
95
+ <?php endif; ?>
96
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
97
+ <td>
98
+ <?php $_incl = $this->helper('checkout')->getPriceInclTax($_item); ?>
99
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
100
+ <span class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
101
+ <?php else: ?>
102
+ <span class="cart-price">
103
+ <?php endif; ?>
104
+
105
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
106
+ <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?>
107
+ <?php else: ?>
108
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxDisposition()) ?>
109
+ <?php endif; ?>
110
+
111
+ </span>
112
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
113
+
114
+ <div class="cart-tax-info" id="unit-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
115
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
116
+ <small>
117
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
118
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
119
+ <?php endforeach; ?>
120
+ </small>
121
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
122
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
123
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></small></span><br />
124
+ <?php endforeach; ?>
125
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
126
+ <small>
127
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
128
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['amount_incl_tax'],true,true); ?></span><br />
129
+ <?php endforeach; ?>
130
+ </small>
131
+ <?php endif; ?>
132
+ </div>
133
+
134
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
135
+ <div class="cart-tax-total" onclick="taxToggle('unit-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
136
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getWeeeTaxInclTax($_item)); ?></span>
137
+ </div>
138
+ <?php endif; ?>
139
+ <?php endif; ?>
140
+ </td>
141
+ <?php endif; ?>
142
+ <td class="a-center"><?php echo $_item->getQty() ?></td>
143
+ <!-- sub total starts here -->
144
+ <?php if ($this->helper('tax')->displayCartPriceExclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
145
+ <td class="a-right">
146
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
147
+ <span class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
148
+ <?php else: ?>
149
+ <span class="cart-price">
150
+ <?php endif; ?>
151
+
152
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
153
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?>
154
+ <?php else: ?>
155
+ <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()) ?>
156
+ <?php endif; ?>
157
+
158
+ </span>
159
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
160
+
161
+ <div class="cart-tax-info" id="esubtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
162
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
163
+ <small>
164
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
165
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span><br />
166
+ <?php endforeach; ?>
167
+ </small>
168
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
169
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
170
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></small></span><br />
171
+ <?php endforeach; ?>
172
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
173
+ <small>
174
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
175
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount'],true,true); ?></span><br />
176
+ <?php endforeach; ?>
177
+ </small>
178
+ <?php endif; ?>
179
+ </div>
180
+
181
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
182
+ <div class="cart-tax-total" onclick="taxToggle('esubtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
183
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_item->getRowTotal()+$_item->getWeeeTaxAppliedRowAmount()+$_item->getWeeeTaxRowDisposition()); ?></span>
184
+ </div>
185
+ <?php endif; ?>
186
+ <?php endif; ?>
187
+ </td>
188
+ <?php endif; ?>
189
+ <?php if ($this->helper('tax')->displayCartPriceInclTax() || $this->helper('tax')->displayCartBothPrices()): ?>
190
+ <td>
191
+ <?php $_incl = $this->helper('checkout')->getSubtotalInclTax($_item); ?>
192
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
193
+ <span class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
194
+ <?php else: ?>
195
+ <span class="cart-price">
196
+ <?php endif; ?>
197
+
198
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, array(0, 1, 4), 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
199
+ <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?>
200
+ <?php else: ?>
201
+ <?php echo $this->helper('checkout')->formatPrice($_incl-$_item->getWeeeTaxRowDisposition()) ?>
202
+ <?php endif; ?>
203
+
204
+ </span>
205
+
206
+
207
+ <?php if (Mage::helper('weee')->getApplied($_item)): ?>
208
+
209
+ <div class="cart-tax-info" id="subtotal-item-tax-details<?php echo $_item->getId(); ?>" style="display:none;">
210
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 1, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
211
+ <small>
212
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
213
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
214
+ <?php endforeach; ?>
215
+ </small>
216
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
217
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
218
+ <span class="nobr"><small><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></small></span><br />
219
+ <?php endforeach; ?>
220
+ <?php elseif (Mage::helper('weee')->typeOfDisplay($_item, 4, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
221
+ <small>
222
+ <?php foreach (Mage::helper('weee')->getApplied($_item) as $tax): ?>
223
+ <span class="nobr"><?php echo $tax['title']; ?>: <?php echo Mage::helper('checkout')->formatPrice($tax['row_amount_incl_tax'],true,true); ?></span><br />
224
+ <?php endforeach; ?>
225
+ </small>
226
+ <?php endif; ?>
227
+ </div>
228
+
229
+ <?php if (Mage::helper('weee')->typeOfDisplay($_item, 2, 'sales') && $_item->getWeeeTaxAppliedAmount()): ?>
230
+ <div class="cart-tax-total" onclick="taxToggle('subtotal-item-tax-details<?php echo $_item->getId(); ?>', this, 'cart-tax-total-expanded');">
231
+ <span class="nobr"><?php echo Mage::helper('weee')->__('Total incl. tax'); ?>:<br /> <?php echo $this->helper('checkout')->formatPrice($_incl + Mage::helper('weee')->getRowWeeeTaxInclTax($_item)); ?></span>
232
+ </div>
233
+ <?php endif; ?>
234
+ <?php endif; ?>
235
+ </td>
236
+ <?php endif; ?>
237
+ </tr>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Futurenext_Zakeke</name>
4
- <version>1.0.0.3</version>
5
  <stability>stable</stability>
6
  <license uri="https://www.zakeke.com/Contracts/GeneralConditions">Zakeke license</license>
7
  <channel>community</channel>
@@ -10,9 +10,9 @@
10
  <description>Zakeke is an innovative cloud platform that allows any Magento store to integrate into the system a 2D and 3D complete customizer of products, giving the possibility to customize "live" products for sale to the end customer.</description>
11
  <notes>Bug fixing release</notes>
12
  <authors><author><name>Futurenext</name><user>futurenext</user><email>info@zakeke.com</email></author></authors>
13
- <date>2017-03-28</date>
14
- <time>11:46:17</time>
15
- <contents><target name="magecommunity"><dir name="Futurenext"><dir name="Zakeke"><dir name="Block"><dir name="Adminhtml"><dir name="Catalog"><dir name="Product"><dir name="Composite"><dir name="Fieldset"><file name="Downloadable.php" hash="2d8fb733bc0ba91d9f6663f36489fbd3"/></dir></dir><dir name="Edit"><dir name="Tab"><dir name="Downloadable"><file name="Links.php" hash="346b6dfd7dd8607b67c280350ac9975e"/><file name="Samples.php" hash="93c481ebd2ef25927bd836829d943fae"/></dir><file name="Downloadable.php" hash="f8b9ba9f21da82fdc42aca57b2342440"/></dir></dir></dir></dir><dir name="Sales"><dir name="Items"><dir name="Column"><dir name="Zakeke"><file name="Name.php" hash="6cc64337a5364971f76d56415696cd70"/></dir></dir></dir></dir></dir><file name="CartItemRenderer.php" hash="9ccdff59acc42ada9288e0788dd7860d"/><file name="CheckoutItemRenderer.php" hash="efc02e5ff750861fe849c83e7df24da1"/><dir name="Customize"><file name="Add.php" hash="6d206e080ed91ed1ffbdd7528d89be2f"/><file name="Configure.php" hash="e815ed877af5727bd20289429122107b"/></dir><file name="Customize.php" hash="5a93ac3b227b4693e4a92ac3409f6f4b"/><file name="CustomizeButton.php" hash="0289e8754309ed5ba622a4e0ce643d25"/><file name="ModuleChecker.php" hash="8df2615bc87c4e656584ee80a51a9b31"/><dir name="Sales"><dir name="Order"><dir name="Email"><dir name="Items"><dir name="Order"><file name="Default.php" hash="f053f33c788884284d983f9340b8a104"/></dir></dir></dir></dir></dir><file name="SalesItemRenderer.php" hash="e5033cf0e41f399d27d8a4f6e9cad82f"/><file name="View.php" hash="f4f780e2c0e48bc0280bc6980d420da2"/></dir><dir name="Helper"><file name="Data.php" hash="4f4d0e717a12106f094a8ca18612f6e3"/><file name="ZakekeApi.php" hash="e078e28965e9159aa85603f3bb7abd14"/></dir><dir name="Model"><dir name="Api2"><dir name="Colors"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="0b1ad3d9656fd5b729d1f7a626359e19"/></dir></dir></dir><file name="Colors.php" hash="f9f004c13ef5357bb3d5e798208e7902"/><dir name="ProductAttribute"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="40a6a5def798a5d0e8bcee1ac8c8a4d8"/></dir></dir></dir><file name="ProductAttribute.php" hash="97ea0f12646d9f1f1ab6916ed41f04dc"/><dir name="ProductOptions"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="6c6dd2079f58a654b60c465cc1fbc357"/></dir></dir></dir><file name="ProductOptions.php" hash="5e1234a158723dc5a8e2c3ccf6e152cf"/><dir name="Settings"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="e982e900acb2a4ac267cdda95c87cd35"/></dir></dir></dir><file name="Settings.php" hash="2f7fa711c00e75d3c4afabb007145c49"/><dir name="ZakekeEnabled"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="b107fafe0fa69827bebadfd66c6274d9"/></dir></dir></dir><file name="ZakekeEnabled.php" hash="0f5c210fa296b30283aa41f500c3e3b9"/></dir><file name="ModuleList.php" hash="929479d45eb4252daaff6e4a40733b09"/><file name="Observer.php" hash="37a1bb6c4e610051c7990bd6f77e42b9"/><dir name="Resource"><file name="Setup.php" hash="42a7681d56fcd5ad06f75a223ef420f1"/><dir name="ZakekeEnabled"><file name="Collection.php" hash="fdadf3c788c4b5e175e4a20501116027"/></dir><file name="ZakekeEnabled.php" hash="f32fb4b25f1f78287a38c3bd170bdbaa"/></dir><file name="ZakekeEnabled.php" hash="9b31e4606dcf8622092f638ca9f3920c"/></dir><dir name="controllers"><file name="CustomizeController.php" hash="9231d14c59e7ba4bb3ea5bbd7236c66f"/><dir name="Zakeke"><file name="ModuleCheckerController.php" hash="b92d1f5b155479a85f358f1356ccdd29"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="22cdf40e6e83327b58f9e97fa17e8f68"/><file name="api2.xml" hash="9af2352582ae62a261d07f58e64d5e77"/><file name="config.xml" hash="8c085df4e4e865282820e45c771017ed"/><file name="system.xml" hash="cd8127a7b4db087065bc856bb5b5ca60"/></dir><dir name="sql"><dir name="zakeke_setup"><file name="install-1.0.0.0.php" hash="64a3954b20b3142886446ac432a04b21"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Futurenext_Zakeke.xml" hash="f309795ee4b758943868cb1f7459fb9c"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="zakeke"><file name="preview.js" hash="a22a32209982d2dda7561cff723b49bb"/></dir></dir><dir name="css"><dir name="zakeke"><file name="productview.css" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="zakeke"><file name="modulechecker.css" hash="e7fd6efc953f7e2aae234607a0a379a8"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash="d296777d398f6af473adfb8a15477b47"/></dir><dir name="template"><dir name="zakeke"><file name="modulechecker.phtml" hash="7855639fdc8b9511798a30adb60d33d3"/><dir name="sales"><dir name="items"><dir name="column"><dir name="zakeke"><file name="name.phtml" hash="e441a8f732c2d378df0deb88b7f7f5e7"/></dir></dir></dir><dir name="order"><dir name="creditmemo"><dir name="create"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="6294158a08ad56639c3a57a4d88c2f81"/></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="4421194ecc884d934f099a256062cfcb"/></dir></dir></dir></dir><dir name="invoice"><dir name="create"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="74c7b3f6230f25b48dc3eb762eed7b2f"/></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="01cd2347f60718c6238a7e19274d83bb"/></dir></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="867a37a7072be0cba7dc9f7c03cec0d4"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash="d5e2ce6707c4e307857469097caeebda"/></dir><dir name="template"><dir name="zakeke"><dir name="cart"><dir name="item"><file name="default.phtml" hash="76a04053b4e70fcaece89f3b71e594d7"/></dir><file name="minicart.phtml" hash="514c94db61f9cee5503d22ac54df9522"/></dir><dir name="checkout"><dir name="onepage"><dir name="review"><file name="item.phtml" hash="718b4a5f5e765377e0cbbb9a74ebea35"/></dir></dir></dir><dir name="customization"><file name="add.phtml" hash="c647328e435fbe6dbe61e325e7a90f89"/></dir><file name="customize.phtml" hash="5b16967774ef9109760873480f2f23c2"/><file name="customizeButton.phtml" hash="78c81b67f8bb3e63c27d36054edaeb35"/><dir name="sales"><dir name="order"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="9590846363b6dc7ca0cd7eaaa0c86949"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash=""/></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="zakeke"><file name="customize.js" hash="efab393e72ffeedae64002dc1b8c002c"/><file name="jquery.js" hash="105112a8a757f683234e01dec3799022"/><file name="preview.js" hash="a22a32209982d2dda7561cff723b49bb"/></dir></dir></target><target name="magelocale"><dir name="it_IT"><file name="Futurenext_Zakeke.csv" hash="0a8b269e780aa6b01790451945e7e25a"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php><package><name/><channel>connect.magentocommerce.com/core</channel><min/><max/></package><extension><name>curl</name><min/><max/></extension></required></dependencies>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Futurenext_Zakeke</name>
4
+ <version>1.0.0.4</version>
5
  <stability>stable</stability>
6
  <license uri="https://www.zakeke.com/Contracts/GeneralConditions">Zakeke license</license>
7
  <channel>community</channel>
10
  <description>Zakeke is an innovative cloud platform that allows any Magento store to integrate into the system a 2D and 3D complete customizer of products, giving the possibility to customize "live" products for sale to the end customer.</description>
11
  <notes>Bug fixing release</notes>
12
  <authors><author><name>Futurenext</name><user>futurenext</user><email>info@zakeke.com</email></author></authors>
13
+ <date>2017-03-29</date>
14
+ <time>13:46:12</time>
15
+ <contents><target name="magecommunity"><dir name="Futurenext"><dir name="Zakeke"><dir name="Block"><dir name="Adminhtml"><dir name="Catalog"><dir name="Product"><dir name="Composite"><dir name="Fieldset"><file name="Downloadable.php" hash="2d8fb733bc0ba91d9f6663f36489fbd3"/></dir></dir><dir name="Edit"><dir name="Tab"><dir name="Downloadable"><file name="Links.php" hash="346b6dfd7dd8607b67c280350ac9975e"/><file name="Samples.php" hash="93c481ebd2ef25927bd836829d943fae"/></dir><file name="Downloadable.php" hash="f8b9ba9f21da82fdc42aca57b2342440"/></dir></dir></dir></dir><dir name="Sales"><dir name="Items"><dir name="Column"><dir name="Zakeke"><file name="Name.php" hash="663d3f51347773fb7db4737641171ffd"/></dir></dir></dir></dir></dir><file name="CartItemRenderer.php" hash="24dd771900f341285fcb6625648bdafb"/><file name="CheckoutItemRenderer.php" hash="efc02e5ff750861fe849c83e7df24da1"/><dir name="Customize"><file name="Add.php" hash="6d206e080ed91ed1ffbdd7528d89be2f"/><file name="Configure.php" hash="e815ed877af5727bd20289429122107b"/></dir><file name="Customize.php" hash="dcae150aafaa72013f83c0e51746f56d"/><file name="CustomizeButton.php" hash="0289e8754309ed5ba622a4e0ce643d25"/><file name="ModuleChecker.php" hash="8df2615bc87c4e656584ee80a51a9b31"/><dir name="Sales"><dir name="Order"><dir name="Email"><dir name="Items"><dir name="Order"><file name="Default.php" hash="f053f33c788884284d983f9340b8a104"/></dir></dir></dir></dir></dir><file name="SalesItemRenderer.php" hash="e5033cf0e41f399d27d8a4f6e9cad82f"/><file name="View.php" hash="f4f780e2c0e48bc0280bc6980d420da2"/></dir><dir name="Helper"><file name="Data.php" hash="45761a858ac8700b299d8a30a04c1d74"/><file name="ZakekeApi.php" hash="33570062b20d80a2222b3bfa6e0766a9"/></dir><dir name="Model"><dir name="Api2"><dir name="Colors"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="0b1ad3d9656fd5b729d1f7a626359e19"/></dir></dir></dir><file name="Colors.php" hash="f9f004c13ef5357bb3d5e798208e7902"/><dir name="ProductAttribute"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="40a6a5def798a5d0e8bcee1ac8c8a4d8"/></dir></dir></dir><file name="ProductAttribute.php" hash="97ea0f12646d9f1f1ab6916ed41f04dc"/><dir name="ProductOptions"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="6c6dd2079f58a654b60c465cc1fbc357"/></dir></dir></dir><file name="ProductOptions.php" hash="5e1234a158723dc5a8e2c3ccf6e152cf"/><dir name="Settings"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="e982e900acb2a4ac267cdda95c87cd35"/></dir></dir></dir><file name="Settings.php" hash="2f7fa711c00e75d3c4afabb007145c49"/><dir name="ZakekeEnabled"><dir name="Rest"><dir name="Admin"><file name="V1.php" hash="b107fafe0fa69827bebadfd66c6274d9"/></dir></dir></dir><file name="ZakekeEnabled.php" hash="0f5c210fa296b30283aa41f500c3e3b9"/></dir><file name="ModuleList.php" hash="929479d45eb4252daaff6e4a40733b09"/><file name="Observer.php" hash="3c0f1183bae6401e463a1ffc33f4a501"/><dir name="Resource"><file name="Setup.php" hash="42a7681d56fcd5ad06f75a223ef420f1"/><dir name="ZakekeEnabled"><file name="Collection.php" hash="fdadf3c788c4b5e175e4a20501116027"/></dir><file name="ZakekeEnabled.php" hash="f32fb4b25f1f78287a38c3bd170bdbaa"/></dir><file name="ZakekeEnabled.php" hash="9b31e4606dcf8622092f638ca9f3920c"/></dir><dir name="controllers"><file name="CustomizeController.php" hash="c11203f7292404560d0d23a9ebf6d85a"/><dir name="Zakeke"><file name="ModuleCheckerController.php" hash="b92d1f5b155479a85f358f1356ccdd29"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="22cdf40e6e83327b58f9e97fa17e8f68"/><file name="api2.xml" hash="9af2352582ae62a261d07f58e64d5e77"/><file name="config.xml" hash="55d04320117f3b472d5c425073c27d49"/><file name="system.xml" hash="cd8127a7b4db087065bc856bb5b5ca60"/></dir><dir name="sql"><dir name="zakeke_setup"><file name="install-1.0.0.0.php" hash="64a3954b20b3142886446ac432a04b21"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Futurenext_Zakeke.xml" hash="f309795ee4b758943868cb1f7459fb9c"/></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="zakeke"><file name="preview.js" hash="a22a32209982d2dda7561cff723b49bb"/></dir></dir><dir name="css"><dir name="zakeke"><file name="productview.css" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="zakeke"><file name="modulechecker.css" hash="e7fd6efc953f7e2aae234607a0a379a8"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash="d296777d398f6af473adfb8a15477b47"/></dir><dir name="template"><dir name="zakeke"><file name="modulechecker.phtml" hash="7855639fdc8b9511798a30adb60d33d3"/><dir name="sales"><dir name="items"><dir name="column"><dir name="zakeke"><file name="name.phtml" hash="e441a8f732c2d378df0deb88b7f7f5e7"/></dir></dir></dir><dir name="order"><dir name="creditmemo"><dir name="create"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="6294158a08ad56639c3a57a4d88c2f81"/></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="4421194ecc884d934f099a256062cfcb"/></dir></dir></dir></dir><dir name="invoice"><dir name="create"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="74c7b3f6230f25b48dc3eb762eed7b2f"/></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="01cd2347f60718c6238a7e19274d83bb"/></dir></dir></dir></dir><dir name="view"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="867a37a7072be0cba7dc9f7c03cec0d4"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash="d5e2ce6707c4e307857469097caeebda"/></dir><dir name="template"><dir name="zakeke"><dir name="cart"><dir name="item"><file name="default.phtml" hash="bfb6e4a50c69ccfdfe66ad8c8711afdd"/></dir><file name="minicart.phtml" hash="1e7398e848e024bbeae11ed1550de3c8"/></dir><dir name="checkout"><dir name="onepage"><dir name="review"><file name="item.phtml" hash="2255b8b6fd8d9df3af96fc3c6c06b320"/></dir></dir></dir><dir name="customization"><file name="add.phtml" hash="c647328e435fbe6dbe61e325e7a90f89"/></dir><file name="customize.phtml" hash="5b16967774ef9109760873480f2f23c2"/><file name="customizeButton.phtml" hash="78c81b67f8bb3e63c27d36054edaeb35"/><dir name="sales"><dir name="order"><dir name="items"><dir name="renderer"><file name="zakeke.phtml" hash="9590846363b6dc7ca0cd7eaaa0c86949"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="layout"><file name="zakeke.xml" hash=""/></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="zakeke"><file name="customize.js" hash="efab393e72ffeedae64002dc1b8c002c"/><file name="jquery.js" hash="105112a8a757f683234e01dec3799022"/><file name="preview.js" hash="a22a32209982d2dda7561cff723b49bb"/></dir></dir></target><target name="magelocale"><dir name="it_IT"><file name="Futurenext_Zakeke.csv" hash="0a8b269e780aa6b01790451945e7e25a"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php><package><name/><channel>connect.magentocommerce.com/core</channel><min/><max/></package><extension><name>curl</name><min/><max/></extension></required></dependencies>
18
  </package>