Invalid product vars
at line 106 in file classes/Link.php
101. if (is_array($product) && isset($product['id_product'])) {
102. $product = new Product($product['id_product'], false, $id_lang, $id_shop);
103. } elseif ((int)$product) {
104. $product = new Product((int)$product, false, $id_lang, $id_shop);
105. } else {
106. throw new PrestaShopException('Invalid product vars');
107. }
108. }
109.
110. // Set available keywords
111. $params = array();
50. $_from = $_smarty_tpl->tpl_vars['languages']->value; if (!is_array($_from) && !is_object($_from)) { settype($_from, 'array');}
51. foreach ($_from as $_smarty_tpl->tpl_vars['lang']->key => $_smarty_tpl->tpl_vars['lang']->value) {
52. $_smarty_tpl->tpl_vars['lang']->_loop = true;
53. ?>
54. <link rel="alternate" hreflang="<?php echo $_smarty_tpl->tpl_vars['lang']->value['language_code'];?>
55. " href="<?php echo $_smarty_tpl->tpl_vars['link']->value->getProductLink($_GET['id_product'],null,null,null,$_smarty_tpl->tpl_vars['lang']->value['id_lang'],null,0,false);?>
56. " />
57. <?php } ?>
58. <?php }?>
59.
60. <?php if ($_smarty_tpl->tpl_vars['page_name']->value=='cms') {?>
Argument [0] Argument [1] Argument [2] Argument [3] Argument [4] 1 Argument [5] Argument [6] 0 Argument [7]
183. }
184. array_unshift($_template->_capture_stack, array());
185. //
186. // render compiled template
187. //
188. $_template->properties['unifunc']($_template);
189. // any unclosed {capture} tags ?
190. if (isset($_template->_capture_stack[0][0])) {
191. $_template->capture_error();
192. }
193. array_shift($_template->_capture_stack);
Argument [0]
312. $this->smarty->update_filepath($filepath, $this->template_resource, $this->cache_id, $this->compile_id);
313. }
314. }
315. return $tpl;
316. } else {
317. return parent::fetch($template, $cache_id, $compile_id, $parent, $display, $merge_tpl_vars, $no_output_filter);
318. }
319. }
320. }
Argument [0] Argument [1] Argument [2] Argument [3] Argument [4] Argument [5] 1 Argument [6]
2304.
2305. if ($cache_id !== null) {
2306. Tools::enableCache();
2307. }
2308.
2309. $result = $this->getCurrentSubTemplate($template, $cache_id, $compile_id)->fetch();
2310.
2311. if ($cache_id !== null) {
2312. Tools::restoreCacheSettings();
2313. }
2314.
56. array(
57. 'hreflang_on_pages_name' => Configuration::get('HREFLANG_ON_PAGES_NAME'),
58. 'hreflang_on_pages_link' => $this->context->link->getModuleLink('hreflang_on_pages', 'display')
59. )
60. );
61. return $this->display(__FILE__, 'hreflang_on_pages.tpl');
62.
63. }
64.
65.
66. }
Argument [0] /home/modalevia/www/modules/hreflang_on_pages/hreflang_on_pages.php Argument [1] hreflang_on_pages.tpl
586. }
587. }
588.
589. // Immediately return the result if we do not log performances
590. if (!Module::$_log_modules_perfs) {
591. return $module->{$method}($params);
592. }
593.
594. // Store time and memory before and after hook call and save the result in the database
595. $time_start = microtime(true);
596. $memory_start = memory_get_usage(true);
Argument [0]
541. Tools::waitUntilFileIsModified($moduleInstance->push_filename, $moduleInstance->push_time_limit);
542. }
543.
544. // Call hook method
545. if ($hook_callable) {
546. $display = Hook::coreCallHook($moduleInstance, 'hook'.$hook_name, $hook_args);
547. } elseif ($hook_retro_callable) {
548. $display = Hook::coreCallHook($moduleInstance, 'hook'.$retro_hook_name, $hook_args);
549. }
550.
551. // Live edit
Argument [0] Argument [1] hookdisplayHeader Argument [2]
574.
575. if (!$this->useMobileTheme()) {
576. // These hooks aren't used for the mobile theme.
577. // Needed hooks are called in the tpl files.
578. $this->context->smarty->assign(array(
579. 'HOOK_HEADER' => Hook::exec('displayHeader'),
580. 'HOOK_TOP' => Hook::exec('displayTop'),
581. 'HOOK_LEFT_COLUMN' => ($this->display_column_left ? Hook::exec('displayLeftColumn') : ''),
582. 'HOOK_RIGHT_COLUMN' => ($this->display_column_right ? Hook::exec('displayRightColumn', array('cart' => $this->context->cart)) : ''),
583. ));
584. } else {
Argument [0] displayHeader
167. * Assign template vars related to page content
168. * @see FrontController::initContent()
169. */
170. public function initContent()
171. {
172. parent::initContent();
173.
174. if (!$this->errors) {
175. if (Pack::isPack((int)$this->product->id) && !Pack::isInStock((int)$this->product->id)) {
176. $this->product->quantity = 0;
177. }
184. if (!$this->content_only && ($this->display_header || (isset($this->className) && $this->className))) {
185. $this->initHeader();
186. }
187.
188. if ($this->viewAccess()) {
189. $this->initContent();
190. } else {
191. $this->errors[] = Tools::displayError('Access denied.');
192. }
193.
194. if (!$this->content_only && ($this->display_footer || (isset($this->className) && $this->className))) {
362. if (isset($params_hook_action_dispatcher)) {
363. Hook::exec('actionDispatcher', $params_hook_action_dispatcher);
364. }
365.
366. // Running controller
367. $controller->run();
368. } catch (PrestaShopException $e) {
369. $e->displayMessage();
370. }
371. }
372.
23. * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
24. * International Registered Trademark & Property of PrestaShop SA
25. */
26.
27. require(dirname(__FILE__).'/config/config.inc.php');
28. Dispatcher::getInstance()->dispatch();