* @copyright 2007-2012 PrestaShop SA * @version Release: $Revision: 14011 $ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA */ if (!defined('_PS_VERSION_')) exit; class BlockFeatured extends Module { private $_html = ''; private $_postErrors = array(); function __construct() { $this->name = 'blockfeatured'; $this->tab = 'front_office_features'; $this->version = '0.9'; $this->author = 'Klape'; $this->need_instance = 0; parent::__construct(); $this->displayName = $this->l('Featured Products on right column'); $this->description = $this->l('Displays Featured Products in right column.'); } function install() { if (!Configuration::updateValue('RIGHT_FEATURED_NBR', 1) OR !parent::install() OR !$this->registerHook('right_column')) return false; return true; } public function getContent() { $output = '

'.$this->displayName.'

'; if (Tools::isSubmit('submitRightFeatured')) { $nbr = (int)(Tools::getValue('nbr')); if (!$nbr OR $nbr <= 0 OR !Validate::isInt($nbr)) $errors[] = $this->l('Invalid number of products'); else Configuration::updateValue('RIGHT_FEATURED_NBR', (int)($nbr)); if (isset($errors) AND sizeof($errors)) $output .= $this->displayError(implode('
', $errors)); else $output .= $this->displayConfirmation($this->l('Settings updated')); } return $output.$this->displayForm(); } public function displayForm() { $output = '
'.$this->l('Settings').'

'.$this->l('In order to add products to right column.').'


'.$this->l('The number of products displayed in right column (default: 1).').'

'; return $output; } function hookRightColumn($params) { global $smarty; $category = new Category(1, Configuration::get('PS_LANG_DEFAULT')); $nb = (int)(Configuration::get('RIGHT_FEATURED_NBR')); $products = $category->getProducts((int)($params['cookie']->id_lang), 1, ($nb ? $nb : 1)); $smarty->assign(array( 'products' => $products, 'add_prod_display' => Configuration::get('PS_ATTRIBUTE_CATEGORY_DISPLAY'))); return $this->display(__FILE__, 'blockfeatured.tpl'); } }