* @copyright 2007-2019 Apollotheme * @license http://apollotheme.com - prestashop template provider */ if (!defined('_PS_VERSION_')) { # module validation exit; } class ApCountdown extends ApShortCodeBase { public $name = 'ApCountdown'; public $for_module = 'manage'; public function getInfo() { return array( 'label' => $this->l('Countdown'), 'position' => 3, 'desc' => $this->l('Show a __________________'), 'icon_class' => 'icon-picture', 'tag' => 'content slider' ); } public function getConfigList() { $html_content = " "; $input = array( array( 'type' => 'text', 'name' => 'title', 'label' => $this->l('Title'), 'desc' => $this->l('Auto hide if leave it blank'), 'lang' => 'true', 'default' => '' ), array( 'type' => 'textarea', 'name' => 'sub_title', 'label' => $this->l('Sub Title'), 'lang' => true, 'values' => '', 'autoload_rte' => false, 'default' => '', ), array( 'type' => 'text', 'name' => 'class', 'label' => $this->l('CSS Class'), 'default' => 'container' ), array( 'type' => 'text', 'label' => $this->l('Time From'), 'name' => 'time_from', 'class' => 'datepicker', 'default' => '' ), array( 'type' => 'text', 'label' => $this->l('Time To'), 'name' => 'time_to', 'default' => '', 'class' => 'datepicker', ), array( 'type' => 'switch', 'label' => $this->l('Open new tab'), 'desc' => $this->l('Open new tab when click to link in slider'), 'name' => 'new_tab', 'values' => ApPageSetting::returnYesNo(), 'default' => '1', ), array( 'type' => 'text', 'name' => 'link_label', 'label' => $this->l('Link Label'), 'lang' => 'true', 'default' => '' ), array( 'type' => 'text', 'name' => 'link', 'label' => $this->l('Link'), 'lang' => 'true', 'default' => '', 'class' => 'item-add-slide ignore-lang', 'form_group_class' => 'apfullslider-row link-slide', ), array( 'type' => 'html', 'name' => 'default_html', 'html_content' => $html_content, ), array( 'type' => 'textarea', 'label' => $this->l('Widget Description'), 'name' => 'description', 'cols' => 40, 'rows' => 10, 'value' => true, 'lang' => true, 'default' => '', 'class' => 'item-add-slide ignore-lang', 'form_group_class' => 'apfullslider-row description-slide', ), ); return $input; } public function getListGroup($list) { $result = array(); foreach ($list as $item) { $status = ' ('.($item['active'] ? $this->l('Active') : $this->l('Deactive')).')'; $result[] = array('id' => $item['id_leoslideshow_groups'], 'name' => $item['title'].$status); } return $result; } public function prepareFontContent($assign, $module = null) { // validate module unset($module); $productCdown = Configuration::get('APPAGEBUILDER_LOAD_COUNT'); if (!$productCdown) { $assign['formAtts']['lib_has_error'] = true; $assign['formAtts']['lib_error'] = 'Can not show Countdown Widget via Appagebuilder. Please enable AJAX Show Count Down Product.'; return $assign; } $from = strtotime($assign['formAtts']['time_from']); $now = time(); $end = strtotime($assign['formAtts']['time_to']); if (($from <= $now) && ($now < $end)) { $start = true; } else { $start = false; } if ($start) { # RUNNING $assign['formAtts']['time_to'] = str_replace('-', '/', $assign['formAtts']['time_to']); $assign['formAtts']['active'] = 1; } else { $assign['formAtts']['active'] = 0; } return $assign; } }