

PrestaShopException {#931 #message: "Invalid date" #code: 0 #file: "/home/agtibr/public_html/classes/Tools.php" #line: 999 : { { ›if (!Validate::isDate($date) || !Validate::isBool($full)) {
›throw new PrestaShopException('Invalid date');
›}
} { ›v<?php echo htmlspecialchars($_smarty_tpl->tpl_vars['version']->value->getVersionNumber(), ENT_QUOTES, 'UTF-8');?>
›- <?php echo htmlspecialchars(Tools::displayDate($_smarty_tpl->tpl_vars['version']->value->getDateAdd()->format('Y-m-d H:i:s')), ENT_QUOTES, 'UTF-8');?>
› } { ›}
›$unifunc($_template);
›foreach ($_template->endRenderCallbacks as $callback) {
} { ›} else {
›$this->getRenderedTemplateCode($_template);
›}
} { ›}
›$this->compiled->render($this);
›}
} { ›}
›$result = $template->render(false, $function);
›$template->_cleanUp();
} { ›{
›$result = $this->_execute($template, $cache_id, $compile_id, $parent, 0);
›return $result === null ? ob_get_clean() : $result;
} { › ›$result = $this->getCurrentSubTemplate($template, $cache_id, $compile_id)->fetch();
› } { › ›return $this->display($this->_path, 'views/templates/front/product_changelog.tpl');
›} catch (Exception $e){
} { ›$content->setTitle("Changelog")
›->setContent($this->renderProductChangelog($params['product']));
› } { ›if ($hookType === self::HOOK_TYPE_MODULE) {
›$hookValue = $moduleInstance->{$hookName}($hookArgs);
› } { ›require_once _PS_MODULE_DIR_ . 'jprestaspeedpack/jprestaspeedpack.php';
›return Jprestaspeedpack::execHook(Jprestaspeedpack::HOOK_TYPE_MODULE, $module, $method, $params);
›}
} { ›if (is_callable([$module, $methodName])) {
›return static::coreCallHook($module, $methodName, $hookArgs);
›}
} { › ›$display = Hook::callHookOn($moduleInstance, $registeredHookName, $hook_args);
› } { ›try {
›return Hook::exec($hook_name, $hook_args, $id_module, $array_return, $check_exceptions, $use_push, $id_shop);
›} catch (\Exception $e) {
} { ›{
›$hookContent = (new HookManager())->exec($this->hookName, $this->params, null, true);
›if (!is_array($hookContent)) {
} { › ›return parent::find();
›}
} { ›{
›$hookContent = $this->find();
›$presentedContents = [];
} { ›$product['quantity_wanted'] = $this->getRequiredQuantity($product);
›$product['extraContent'] = $extraContentFinder->addParams(['product' => $this->product])->present();
› } { › ›$product_for_template = $this->getTemplateVarProduct();
› } { ›if ($this->viewAccess()) {
›$this->initContent();
›} else {
} { ›// Running controller
›$controller->run();
› } { ›require dirname(__FILE__).'/config/config.inc.php';
›Dispatcher::getInstance()->dispatch();
› } } }
Exibe um gráfico com o histórico de preços de seus produtos para que seus clientes possam decidir se é o melhor momento de comprá-lo, e comprovar a veracidade de suas promoções, como a black friday.
Exibe um gráfico com o histórico de preços de seus produtos para que seus clientes possam decidir se é o melhor momento de comprá-lo, e comprovar a veracidade de suas promoções, como a black friday.
Os preços de seus produtos são salvos a cada vez que uma determinada URL for acessada. Assim, você pode configurar uma tarefa CRON para que os preços sejam salvos com a frequência que desejar. Para garantir a segurança do módulo, ele gera uma chave de 32 bits que deve ser adicionada à chamada da URL para que o salvamento dos preços seja efetuado.
Você pode escolher a partir de quando deseja que os gráficos sejam exibidos nos seus produtos, para reforçar períodos de promoção ou para aguardar até o módulo colher informações o suficiente.
O módulo é compatível com multilojas. Os preços salvos são separados por país, loja e combinação dos produtos, e sempre na moeda padrão da sua loja. Caso um cliente acesse a loja utilizando uma moeda diferente da moeda padrão, os valores salvos são exibidos na moeda escolhida pelo usuário, sendo a conversão feita de acordo com a cotação atualmente confgurada em sua loja.
O gráfico pode ser visualizado em diversas escalas de tempo, sendo elas:
Ficha de dados