diff --git a/config/xml/themes/default.xml b/config/xml/themes/default.xml index 318c1ed00..5efb289ff 100644 --- a/config/xml/themes/default.xml +++ b/config/xml/themes/default.xml @@ -61,7 +61,6 @@ - diff --git a/controllers/admin/AdminThemesController.php b/controllers/admin/AdminThemesController.php index 95f30adc7..a606145e0 100644 --- a/controllers/admin/AdminThemesController.php +++ b/controllers/admin/AdminThemesController.php @@ -2086,7 +2086,6 @@ class AdminThemesControllerCore extends AdminController 'addsharethis', 'bankwire', 'blockcart', - 'blockcmsinfo', 'blockcurrencies', 'blocklanguages', 'blocklayered', diff --git a/modules/blockcmsinfo/CHANGELOG.txt b/modules/blockcmsinfo/CHANGELOG.txt deleted file mode 100644 index 3e2b74c56..000000000 --- a/modules/blockcmsinfo/CHANGELOG.txt +++ /dev/null @@ -1,10 +0,0 @@ -2014-04-22 18:57:01 +0200 // Changelog updated -2014-04-07 10:12:29 +0200 [-] MO : blockcmsinfo - Encoding restitution issue #PSCSX-1554 fixed -2014-03-31 17:59:54 +0200 [-] MO : blockcmsinfo : now only show current shop custom block -2014-03-24 17:23:58 +0100 // backquotes -2014-03-24 17:05:05 +0100 // blockcmsinfo : displa & secu fix -2014-03-24 12:30:34 +0100 Merge branch 'master' of https://github.com/PrestaShop/blockcmsinfo -2014-03-24 12:28:49 +0100 // blockcmsinfo : missing buttons -2014-03-24 11:43:28 +0100 / MO blockcmsinfo : ps_versions_compliancy modified (1.5.6.1 => 1.6) -2014-03-24 11:01:40 +0100 / MO blockcmsinfo : ps_versions_compliancy added -2014-03-20 14:21:06 +0100 Initial commit diff --git a/modules/blockcmsinfo/blockcmsinfo.php b/modules/blockcmsinfo/blockcmsinfo.php deleted file mode 100644 index 421e58cad..000000000 --- a/modules/blockcmsinfo/blockcmsinfo.php +++ /dev/null @@ -1,413 +0,0 @@ - -* @copyright 2007-2016 PrestaShop SA - -* @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; - -require_once _PS_MODULE_DIR_.'blockcmsinfo/classes/InfoBlock.php'; - -class Blockcmsinfo extends Module -{ - public $html = ''; - - public function __construct() - { - $this->name = 'blockcmsinfo'; - $this->tab = 'front_office_features'; - $this->version = '1.6.1'; - $this->author = 'PrestaShop'; - $this->bootstrap = true; - $this->need_instance = 0; - - parent::__construct(); - - $this->displayName = $this->l('Custom CMS information block'); - $this->description = $this->l('Adds custom information blocks in your store.'); - $this->ps_versions_compliancy = array('min' => '1.6', 'max' => '1.6.99.99'); - } - - public function install() - { - return parent::install() && - $this->installDB() && - $this->registerHook('home') && - $this->installFixtures() && - $this->disableDevice(Context::DEVICE_TABLET | Context::DEVICE_MOBILE); - } - - public function installDB() - { - $return = true; - $return &= Db::getInstance()->execute(' - CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'info` ( - `id_info` INT UNSIGNED NOT NULL AUTO_INCREMENT, - `id_shop` int(10) unsigned DEFAULT NULL, - PRIMARY KEY (`id_info`) - ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8 ;' - ); - - $return &= Db::getInstance()->execute(' - CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'info_lang` ( - `id_info` INT UNSIGNED NOT NULL, - `id_lang` int(10) unsigned NOT NULL , - `text` text NOT NULL, - PRIMARY KEY (`id_info`, `id_lang`) - ) ENGINE='._MYSQL_ENGINE_.' DEFAULT CHARSET=utf8 ;' - ); - - return $return; - } - - public function uninstall() - { - return parent::uninstall() && $this->uninstallDB(); - } - - public function uninstallDB($drop_table = true) - { - $ret = true; - if($drop_table) - $ret &= Db::getInstance()->execute('DROP TABLE IF EXISTS `'._DB_PREFIX_.'info`') && Db::getInstance()->execute('DROP TABLE IF EXISTS `'._DB_PREFIX_.'info_lang`'); - - return $ret; - } - - public function getContent() - { - $id_info = (int)Tools::getValue('id_info'); - - if (Tools::isSubmit('saveblockcmsinfo')) - { - if (!Tools::getValue('text_'.(int)Configuration::get('PS_LANG_DEFAULT'), false)) - return $this->html . $this->displayError($this->l('You must fill in all fields.')) . $this->renderForm(); - elseif ($this->processSaveCmsInfo()) - return $this->html . $this->renderList(); - else - return $this->html . $this->renderForm(); - } - elseif (Tools::isSubmit('updateblockcmsinfo') || Tools::isSubmit('addblockcmsinfo')) - { - $this->html .= $this->renderForm(); - return $this->html; - } - else if (Tools::isSubmit('deleteblockcmsinfo')) - { - $info = new InfoBlock((int)$id_info); - $info->delete(); - $this->_clearCache('blockcmsinfo.tpl'); - Tools::redirectAdmin(AdminController::$currentIndex.'&configure='.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules')); - } - else - { - $this->html .= $this->renderList(); - return $this->html; - } - - } - - public function processSaveCmsInfo() - { - if ($id_info = Tools::getValue('id_info')) - $info = new InfoBlock((int)$id_info); - else - { - $info = new InfoBlock(); - if (Shop::isFeatureActive()) - { - $shop_ids = Tools::getValue('checkBoxShopAsso_configuration'); - if (!$shop_ids) - { - $this->html .= '
'.$this->l('You have to select at least one shop.').'
'; - return false; - } - } - else - $info->id_shop = Shop::getContextShopID(); - } - - $languages = Language::getLanguages(false); - $text = array(); - foreach ($languages AS $lang) - $text[$lang['id_lang']] = Tools::getValue('text_'.$lang['id_lang']); - $info->text = $text; - - if (Shop::isFeatureActive() && !$info->id_shop) - { - $saved = true; - foreach ($shop_ids as $id_shop) - { - $info->id_shop = $id_shop; - $saved &= $info->add(); - } - } - else - $saved = $info->save(); - - if ($saved) - $this->_clearCache('blockcmsinfo.tpl'); - else - $this->html .= '
'.$this->l('An error occurred while attempting to save.').'
'; - - return $saved; - } - - - protected function renderForm() - { - $default_lang = (int)Configuration::get('PS_LANG_DEFAULT'); - - $fields_form = array( - 'tinymce' => true, - 'legend' => array( - 'title' => $this->l('New custom CMS block'), - ), - 'input' => array( - 'id_info' => array( - 'type' => 'hidden', - 'name' => 'id_info' - ), - 'content' => array( - 'type' => 'textarea', - 'label' => $this->l('Text'), - 'lang' => true, - 'name' => 'text', - 'cols' => 40, - 'rows' => 10, - 'class' => 'rte', - 'autoload_rte' => true, - ), - ), - 'submit' => array( - 'title' => $this->l('Save'), - ), - 'buttons' => array( - array( - 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules'), - 'title' => $this->l('Back to list'), - 'icon' => 'process-icon-back' - ) - ) - ); - - if (Shop::isFeatureActive() && Tools::getValue('id_info') == false) - { - $fields_form['input'][] = array( - 'type' => 'shop', - 'label' => $this->l('Shop association'), - 'name' => 'checkBoxShopAsso_theme' - ); - } - - - $helper = new HelperForm(); - $helper->module = $this; - $helper->name_controller = 'blockcmsinfo'; - $helper->identifier = $this->identifier; - $helper->token = Tools::getAdminTokenLite('AdminModules'); - foreach (Language::getLanguages(false) as $lang) - $helper->languages[] = array( - 'id_lang' => $lang['id_lang'], - 'iso_code' => $lang['iso_code'], - 'name' => $lang['name'], - 'is_default' => ($default_lang == $lang['id_lang'] ? 1 : 0) - ); - - $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name; - $helper->default_form_language = $default_lang; - $helper->allow_employee_form_lang = $default_lang; - $helper->toolbar_scroll = true; - $helper->title = $this->displayName; - $helper->submit_action = 'saveblockcmsinfo'; - - $helper->fields_value = $this->getFormValues(); - - return $helper->generateForm(array(array('form' => $fields_form))); - } - - protected function renderList() - { - $this->fields_list = array(); - $this->fields_list['id_info'] = array( - 'title' => $this->l('Block ID'), - 'type' => 'text', - 'search' => false, - 'orderby' => false, - ); - - if (Shop::isFeatureActive() && Shop::getContext() != Shop::CONTEXT_SHOP) - $this->fields_list['shop_name'] = array( - 'title' => $this->l('Shop'), - 'type' => 'text', - 'search' => false, - 'orderby' => false, - ); - - $this->fields_list['text'] = array( - 'title' => $this->l('Block text'), - 'type' => 'text', - 'search' => false, - 'orderby' => false, - ); - - $helper = new HelperList(); - $helper->shopLinkType = ''; - $helper->simple_header = false; - $helper->identifier = 'id_info'; - $helper->actions = array('edit', 'delete'); - $helper->show_toolbar = true; - $helper->imageType = 'jpg'; - $helper->toolbar_btn['new'] = array( - 'href' => AdminController::$currentIndex.'&configure='.$this->name.'&add'.$this->name.'&token='.Tools::getAdminTokenLite('AdminModules'), - 'desc' => $this->l('Add new') - ); - - $helper->title = $this->displayName; - $helper->table = $this->name; - $helper->token = Tools::getAdminTokenLite('AdminModules'); - $helper->currentIndex = AdminController::$currentIndex.'&configure='.$this->name; - - $content = $this->getListContent($this->context->language->id); - - return $helper->generateList($content, $this->fields_list); - } - - protected function getListContent($id_lang = null) - { - if (is_null($id_lang)) - $id_lang = (int)Configuration::get('PS_LANG_DEFAULT'); - - $sql = 'SELECT r.`id_info`, rl.`text`, s.`name` as shop_name - FROM `'._DB_PREFIX_.'info` r - LEFT JOIN `'._DB_PREFIX_.'info_lang` rl ON (r.`id_info` = rl.`id_info`) - LEFT JOIN `'._DB_PREFIX_.'shop` s ON (r.`id_shop` = s.`id_shop`) - WHERE `id_lang` = '.(int)$id_lang.' AND ('; - - if ($shop_ids = Shop::getContextListShopID()) - foreach ($shop_ids as $id_shop) - $sql .= ' r.`id_shop` = '.(int)$id_shop.' OR '; - - $sql .= ' r.`id_shop` = 0 )'; - - $content = Db::getInstance()->executeS($sql); - - foreach ($content as $key => $value) - $content[$key]['text'] = substr(strip_tags($value['text']), 0, 200); - - return $content; - } - - public function getFormValues() - { - $fields_value = array(); - $id_info = (int)Tools::getValue('id_info'); - - foreach (Language::getLanguages(false) as $lang) - if ($id_info) - { - $info = new InfoBlock((int)$id_info); - $fields_value['text'][(int)$lang['id_lang']] = $info->text[(int)$lang['id_lang']]; - } - else - $fields_value['text'][(int)$lang['id_lang']] = Tools::getValue('text_'.(int)$lang['id_lang'], ''); - - $fields_value['id_info'] = $id_info; - - return $fields_value; - } - - public function hookHome($params) - { - $this->context->controller->addCSS($this->_path.'style.css', 'all'); - if (!$this->isCached('blockcmsinfo.tpl', $this->getCacheId())) - { - $infos = $this->getInfos($this->context->language->id, $this->context->shop->id); - $this->context->smarty->assign(array('infos' => $infos, 'nbblocks' => count($infos))); - } - - return $this->display(__FILE__, 'blockcmsinfo.tpl', $this->getCacheId()); - } - - public function getInfos($id_lang, $id_shop) - { - $sql = 'SELECT r.`id_info`, r.`id_shop`, rl.`text` - FROM `'._DB_PREFIX_.'info` r - LEFT JOIN `'._DB_PREFIX_.'info_lang` rl ON (r.`id_info` = rl.`id_info`) - WHERE `id_lang` = '.(int)$id_lang.' AND `id_shop` = '.(int)$id_shop; - - return Db::getInstance()->executeS($sql); - } - - public function installFixtures() - { - $return = true; - $tab_texts = array( - array( - 'text' => '
    -
  • -
    -

    Lorem Ipsum

    -

    Lorem ipsum dolor sit amet conse ctetur voluptate velit esse cillum dolore eu

    -
    -
  • -
  • -
    -

    Dolor Sit Amet

    -

    Lorem ipsum dolor sit amet conse ctetur voluptate velit esse cillum dolore eu

    -
    -
  • -
  • -
    -

    Ctetur Voluptate

    -

    Lorem ipsum dolor sit amet conse ctetur voluptate velit esse cillum dolore eu

    -
    -
  • -
' - ), - array( - 'text' => '

Custom Block

-

Lorem ipsum dolor sit amet conse ctetu

-

Sit amet conse ctetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.

' - ), - ); - - $shops_ids = Shop::getShops(true, null, true); - $return = true; - foreach ($tab_texts as $tab) - { - $info = new InfoBlock(); - foreach (Language::getLanguages(false) as $lang) - $info->text[$lang['id_lang']] = $tab['text']; - foreach ($shops_ids as $id_shop) - { - $info->id_shop = $id_shop; - $return &= $info->add(); - } - } - - return $return; - } -} diff --git a/modules/blockcmsinfo/blockcmsinfo.tpl b/modules/blockcmsinfo/blockcmsinfo.tpl deleted file mode 100644 index 13b8d4fc6..000000000 --- a/modules/blockcmsinfo/blockcmsinfo.tpl +++ /dev/null @@ -1,33 +0,0 @@ -{* -* 2007-2016 PrestaShop -* -* NOTICE OF LICENSE -* -* This source file is subject to the Academic Free License (AFL 3.0) -* that is bundled with this package in the file LICENSE.txt. -* It is also available through the world-wide-web at this URL: -* http://opensource.org/licenses/afl-3.0.php -* If you did not receive a copy of the license and are unable to -* obtain it through the world-wide-web, please send an email -* to license@prestashop.com so we can send you a copy immediately. -* -* DISCLAIMER -* -* Do not edit or add to this file if you wish to upgrade PrestaShop to newer -* versions in the future. If you wish to customize PrestaShop for your -* needs please refer to http://www.prestashop.com for more information. -* -* @author PrestaShop SA -* @copyright 2007-2016 PrestaShop SA -* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) -* International Registered Trademark & Property of PrestaShop SA -*} -{if $infos|@count > 0} - -
- {foreach from=$infos item=info} -
{$info.text}
- {/foreach} -
- -{/if} \ No newline at end of file diff --git a/modules/blockcmsinfo/classes/InfoBlock.php b/modules/blockcmsinfo/classes/InfoBlock.php deleted file mode 100644 index cc5a25de1..000000000 --- a/modules/blockcmsinfo/classes/InfoBlock.php +++ /dev/null @@ -1,49 +0,0 @@ - -* @copyright 2007-2016 PrestaShop SA -* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) -* International Registered Trademark & Property of PrestaShop SA -*/ - -class InfoBlock extends ObjectModel -{ - public $id; - - public $id_shop; - - public $text; - - /** - * @see ObjectModel::$definition - */ - public static $definition = array( - 'table' => 'info', - 'primary' => 'id_info', - 'multilang' => true, - 'fields' => array( - 'id_shop' => array('type' => self::TYPE_NOTHING, 'validate' => 'isUnsignedId'), - // Lang fields - 'text' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => 'isCleanHtml', 'required' => true), - ) - ); - -} diff --git a/modules/blockcmsinfo/index.php b/modules/blockcmsinfo/index.php deleted file mode 100644 index da793c6b5..000000000 --- a/modules/blockcmsinfo/index.php +++ /dev/null @@ -1,35 +0,0 @@ - -* @copyright 2007-2016 PrestaShop SA -* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) -* International Registered Trademark & Property of PrestaShop SA -*/ - -header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); -header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); - -header('Cache-Control: no-store, no-cache, must-revalidate'); -header('Cache-Control: post-check=0, pre-check=0', false); -header('Pragma: no-cache'); - -header('Location: ../../'); -exit; \ No newline at end of file diff --git a/modules/blockcmsinfo/logo.gif b/modules/blockcmsinfo/logo.gif deleted file mode 100644 index b29d6badd..000000000 Binary files a/modules/blockcmsinfo/logo.gif and /dev/null differ diff --git a/modules/blockcmsinfo/logo.png b/modules/blockcmsinfo/logo.png deleted file mode 100644 index 326506faf..000000000 Binary files a/modules/blockcmsinfo/logo.png and /dev/null differ diff --git a/modules/blockcmsinfo/style.css b/modules/blockcmsinfo/style.css deleted file mode 100644 index e69de29bb..000000000 diff --git a/modules/blockcmsinfo/translations/index.php b/modules/blockcmsinfo/translations/index.php deleted file mode 100644 index e5064df41..000000000 --- a/modules/blockcmsinfo/translations/index.php +++ /dev/null @@ -1,35 +0,0 @@ - -* @copyright 2007-2016 PrestaShop SA -* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) -* International Registered Trademark & Property of PrestaShop SA -*/ - -header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); -header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT"); - -header("Cache-Control: no-store, no-cache, must-revalidate"); -header("Cache-Control: post-check=0, pre-check=0", false); -header("Pragma: no-cache"); - -header("Location: ../"); -exit; \ No newline at end of file