recette + ekomi
347
www/modules/ekomi/backward_compatibility/Context.php
Normal file
@ -0,0 +1,347 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
if ((bool)Configuration::get('PS_MOBILE_DEVICE'))
|
||||
require_once(_PS_MODULE_DIR_ . '/mobile_theme/Mobile_Detect.php');
|
||||
|
||||
// Retro 1.3, 'class_exists' cause problem with autoload...
|
||||
if (version_compare(_PS_VERSION_, '1.4', '<'))
|
||||
{
|
||||
// Not exist for 1.3
|
||||
class Shop extends ObjectModel
|
||||
{
|
||||
public $id = 1;
|
||||
public $id_shop_group = 1;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public static function getShops()
|
||||
{
|
||||
return array(
|
||||
array('id_shop' => 1, 'name' => 'Default shop')
|
||||
);
|
||||
}
|
||||
|
||||
public static function getCurrentShop()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
class Logger
|
||||
{
|
||||
public static function AddLog($message, $severity = 2)
|
||||
{
|
||||
$fp = fopen(dirname(__FILE__).'/../logs.txt', 'a+');
|
||||
fwrite($fp, '['.(int)$severity.'] '.Tools::safeOutput($message));
|
||||
fclose($fp);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Not exist for 1.3 and 1.4
|
||||
class Context
|
||||
{
|
||||
/**
|
||||
* @var Context
|
||||
*/
|
||||
protected static $instance;
|
||||
|
||||
/**
|
||||
* @var Cart
|
||||
*/
|
||||
public $cart;
|
||||
|
||||
/**
|
||||
* @var Customer
|
||||
*/
|
||||
public $customer;
|
||||
|
||||
/**
|
||||
* @var Cookie
|
||||
*/
|
||||
public $cookie;
|
||||
|
||||
/**
|
||||
* @var Link
|
||||
*/
|
||||
public $link;
|
||||
|
||||
/**
|
||||
* @var Country
|
||||
*/
|
||||
public $country;
|
||||
|
||||
/**
|
||||
* @var Employee
|
||||
*/
|
||||
public $employee;
|
||||
|
||||
/**
|
||||
* @var Controller
|
||||
*/
|
||||
public $controller;
|
||||
|
||||
/**
|
||||
* @var Language
|
||||
*/
|
||||
public $language;
|
||||
|
||||
/**
|
||||
* @var Currency
|
||||
*/
|
||||
public $currency;
|
||||
|
||||
/**
|
||||
* @var AdminTab
|
||||
*/
|
||||
public $tab;
|
||||
|
||||
/**
|
||||
* @var Shop
|
||||
*/
|
||||
public $shop;
|
||||
|
||||
/**
|
||||
* @var Smarty
|
||||
*/
|
||||
public $smarty;
|
||||
|
||||
/**
|
||||
* @ var Mobile Detect
|
||||
*/
|
||||
public $mobile_detect;
|
||||
|
||||
/**
|
||||
* @var boolean|string mobile device of the customer
|
||||
*/
|
||||
protected $mobile_device;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
global $cookie, $cart, $smarty, $link;
|
||||
|
||||
$this->tab = null;
|
||||
|
||||
$this->cookie = $cookie;
|
||||
$this->cart = $cart;
|
||||
$this->smarty = $smarty;
|
||||
$this->link = $link;
|
||||
|
||||
$this->controller = new ControllerBackwardModule();
|
||||
if (is_object($cookie))
|
||||
{
|
||||
$this->currency = new Currency((int)$cookie->id_currency);
|
||||
$this->language = new Language((int)$cookie->id_lang);
|
||||
$this->country = new Country((int)$cookie->id_country);
|
||||
$this->customer = new CustomerBackwardModule((int)$cookie->id_customer);
|
||||
$this->employee = new Employee((int)$cookie->id_employee);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->currency = null;
|
||||
$this->language = null;
|
||||
$this->country = null;
|
||||
$this->customer = null;
|
||||
$this->employee = null;
|
||||
}
|
||||
|
||||
$this->shop = new ShopBackwardModule();
|
||||
|
||||
if ((bool)Configuration::get('PS_MOBILE_DEVICE'))
|
||||
$this->mobile_detect = new Mobile_Detect();
|
||||
}
|
||||
|
||||
public function getMobileDevice()
|
||||
{
|
||||
if (is_null($this->mobile_device))
|
||||
{
|
||||
$this->mobile_device = false;
|
||||
if ($this->checkMobileContext())
|
||||
{
|
||||
switch ((int)Configuration::get('PS_MOBILE_DEVICE'))
|
||||
{
|
||||
case 0: // Only for mobile device
|
||||
if ($this->mobile_detect->isMobile() && !$this->mobile_detect->isTablet())
|
||||
$this->mobile_device = true;
|
||||
break;
|
||||
case 1: // Only for touchpads
|
||||
if ($this->mobile_detect->isTablet() && !$this->mobile_detect->isMobile())
|
||||
$this->mobile_device = true;
|
||||
break;
|
||||
case 2: // For touchpad or mobile devices
|
||||
if ($this->mobile_detect->isMobile() || $this->mobile_detect->isTablet())
|
||||
$this->mobile_device = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $this->mobile_device;
|
||||
}
|
||||
|
||||
protected function checkMobileContext()
|
||||
{
|
||||
return isset($_SERVER['HTTP_USER_AGENT'])
|
||||
&& (bool)Configuration::get('PS_MOBILE_DEVICE')
|
||||
&& !Context::getContext()->cookie->no_mobile;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a singleton context
|
||||
*
|
||||
* @return Context
|
||||
*/
|
||||
public static function getContext()
|
||||
{
|
||||
if (!isset(self::$instance))
|
||||
self::$instance = new Context();
|
||||
return self::$instance;
|
||||
}
|
||||
|
||||
/**
|
||||
* Clone current context
|
||||
*
|
||||
* @return Context
|
||||
*/
|
||||
public function cloneContext()
|
||||
{
|
||||
return clone($this);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return int Shop context type (Shop::CONTEXT_ALL, etc.)
|
||||
*/
|
||||
public static function shop()
|
||||
{
|
||||
if (!self::$instance->shop->getContextType())
|
||||
return ShopBackwardModule::CONTEXT_ALL;
|
||||
return self::$instance->shop->getContextType();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Class Shop for Backward compatibility
|
||||
*/
|
||||
class ShopBackwardModule extends Shop
|
||||
{
|
||||
const CONTEXT_ALL = 1;
|
||||
|
||||
public $id = 1;
|
||||
public $id_shop_group = 1;
|
||||
|
||||
|
||||
public function getContextType()
|
||||
{
|
||||
return ShopBackwardModule::CONTEXT_ALL;
|
||||
}
|
||||
|
||||
// Simulate shop for 1.3 / 1.4
|
||||
public function getID()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get shop theme name
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function getTheme()
|
||||
{
|
||||
return _THEME_NAME_;
|
||||
}
|
||||
|
||||
public function isFeatureActive()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Class Controller for a Backward compatibility
|
||||
* Allow to use method declared in 1.5
|
||||
*/
|
||||
class ControllerBackwardModule
|
||||
{
|
||||
/**
|
||||
* @param $js_uri
|
||||
* @return void
|
||||
*/
|
||||
public function addJS($js_uri)
|
||||
{
|
||||
Tools::addJS($js_uri);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $css_uri
|
||||
* @param string $css_media_type
|
||||
* @return void
|
||||
*/
|
||||
public function addCSS($css_uri, $css_media_type = 'all')
|
||||
{
|
||||
Tools::addCSS($css_uri, $css_media_type);
|
||||
}
|
||||
|
||||
public function addJquery()
|
||||
{
|
||||
if (_PS_VERSION_ < '1.5')
|
||||
$this->addJS(_PS_JS_DIR_.'jquery/jquery-1.4.4.min.js');
|
||||
elseif (_PS_VERSION_ >= '1.5')
|
||||
$this->addJS(_PS_JS_DIR_.'jquery/jquery-1.7.2.min.js');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Class Customer for a Backward compatibility
|
||||
* Allow to use method declared in 1.5
|
||||
*/
|
||||
class CustomerBackwardModule extends Customer
|
||||
{
|
||||
public $logged = false;
|
||||
/**
|
||||
* Check customer informations and return customer validity
|
||||
*
|
||||
* @since 1.5.0
|
||||
* @param boolean $with_guest
|
||||
* @return boolean customer validity
|
||||
*/
|
||||
public function isLogged($with_guest = false)
|
||||
{
|
||||
if (!$with_guest && $this->is_guest == 1)
|
||||
return false;
|
||||
|
||||
/* Customer is valid only if it can be load and if object password is the same as database one */
|
||||
if ($this->logged == 1 && $this->id && Validate::isUnsignedId($this->id) && Customer::checkPassword($this->id, $this->passwd))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
}
|
48
www/modules/ekomi/backward_compatibility/Display.php
Normal file
@ -0,0 +1,48 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
/**
|
||||
* Class allow to display tpl on the FO
|
||||
*/
|
||||
class BWDisplay extends FrontController
|
||||
{
|
||||
// Assign template, on 1.4 create it else assign for 1.5
|
||||
public function setTemplate($template)
|
||||
{
|
||||
if (_PS_VERSION_ >= '1.5')
|
||||
parent::setTemplate($template);
|
||||
else
|
||||
$this->template = $template;
|
||||
}
|
||||
|
||||
// Overload displayContent for 1.4
|
||||
public function displayContent()
|
||||
{
|
||||
parent::displayContent();
|
||||
|
||||
echo Context::getContext()->smarty->fetch($this->template);
|
||||
}
|
||||
}
|
1
www/modules/ekomi/backward_compatibility/backward.ini
Normal file
@ -0,0 +1 @@
|
||||
version = 0.4
|
55
www/modules/ekomi/backward_compatibility/backward.php
Normal file
@ -0,0 +1,55 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
/**
|
||||
* Backward function compatibility
|
||||
* Need to be called for each module in 1.4
|
||||
*/
|
||||
|
||||
// Get out if the context is already defined
|
||||
if (!in_array('Context', get_declared_classes()))
|
||||
require_once(dirname(__FILE__).'/Context.php');
|
||||
|
||||
// Get out if the Display (BWDisplay to avoid any conflict)) is already defined
|
||||
if (!in_array('BWDisplay', get_declared_classes()))
|
||||
require_once(dirname(__FILE__).'/Display.php');
|
||||
|
||||
// If not under an object we don't have to set the context
|
||||
if (!isset($this))
|
||||
return;
|
||||
else if (isset($this->context))
|
||||
{
|
||||
// If we are under an 1.5 version and backoffice, we have to set some backward variable
|
||||
if (_PS_VERSION_ >= '1.5' && isset($this->context->employee->id) && $this->context->employee->id && isset(AdminController::$currentIndex) && !empty(AdminController::$currentIndex))
|
||||
{
|
||||
global $currentIndex;
|
||||
$currentIndex = AdminController::$currentIndex;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
$this->context = Context::getContext();
|
||||
$this->smarty = $this->context->smarty;
|
35
www/modules/ekomi/backward_compatibility/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
35
www/modules/ekomi/controllers/front/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
78
www/modules/ekomi/controllers/front/unsubscribe.php
Normal file
@ -0,0 +1,78 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
||||
* International Registered Trademark & Property of PrestaShop SA
|
||||
*/
|
||||
|
||||
/**
|
||||
* @since 1.5.0
|
||||
*/
|
||||
class EkomiUnsubscribeModuleFrontController extends ModuleFrontController
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if (class_exists('Context'))
|
||||
{
|
||||
$this->context = Context::getContext();
|
||||
}
|
||||
|
||||
include_once($this->module->getLocalPath().'ekomi.php');
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @see FrontController::postProcess()
|
||||
*/
|
||||
public function postProcess()
|
||||
{
|
||||
if(Tools::getValue('id_customer'))
|
||||
{
|
||||
//We retrieve customer id
|
||||
$id_customer = Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue('SELECT `id_customer` FROM `'._DB_PREFIX_.'wic_ekomi_order_email` WHERE MD5( `id_customer` ) = \''.Tools::getValue('id_customer').'\';');
|
||||
|
||||
if($id_customer)
|
||||
{
|
||||
//We verify if customer is unsubscribe to ekomi email
|
||||
$id_customer_unsubscribe = Db::getInstance(_PS_USE_SQL_SLAVE_)->getValue('SELECT `id_customer` FROM `'._DB_PREFIX_.'ekomi_unsubscribe` WHERE `id_customer` = '.(int)$id_customer.';');
|
||||
|
||||
if(!$id_customer_unsubscribe)
|
||||
Db::getInstance()->insert('ekomi_unsubscribe',array('id_customer' => (int)$id_customer));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public function initContent()
|
||||
{
|
||||
parent::initContent();
|
||||
|
||||
if(_PS_VERSION_ >= 1.5)
|
||||
$this->context->controller->addCSS(_THEME_CSS_DIR_.'module.css');
|
||||
else
|
||||
Tools::addCSS(_THEME_CSS_DIR_.'module.css');
|
||||
|
||||
$this->setTemplate('ekomi_unsubscribe.tpl');
|
||||
}
|
||||
|
||||
}
|
35
www/modules/ekomi/controllers/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
73
www/modules/ekomi/css/admin.css
Normal file
@ -0,0 +1,73 @@
|
||||
.readme {
|
||||
float: right;
|
||||
margin-right: 20px;
|
||||
margin-top: -60px;
|
||||
}
|
||||
.readme a {color:#ce1919;}
|
||||
.readme a:hover {text-decoration:underline;}
|
||||
.technical_support{line-height: 15px;display: inline-block;margin-left: 15px;}
|
||||
.technical_support i{color:#96c11f;}
|
||||
.technical_support a{color:#1073ba;}
|
||||
|
||||
#ekomi-wrapper center.submit {
|
||||
background: none repeat scroll 0 0 #DFDFDF;
|
||||
border: 5px solid #EFEFEF;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
font-size:1.0em;
|
||||
}
|
||||
|
||||
div#content.nobootstrap .toolbar-placeholder {
|
||||
background-color: #F8F8F8;
|
||||
border: 1px solid #CCCCCC;
|
||||
margin-bottom: 10px;
|
||||
padding: 10px 0;
|
||||
border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
position:relative;
|
||||
}
|
||||
|
||||
div#content.nobootstrap .toolbar-placeholder .pageTitle h3 {
|
||||
font-size: 2em;
|
||||
line-height: 48px;
|
||||
text-shadow: 0 1px 0 #fff;
|
||||
}
|
||||
|
||||
div#content.nobootstrap .toolbar-placeholder .pageTitle h3 img {
|
||||
float:left;
|
||||
margin-top:-10px;
|
||||
margin-right:10px;
|
||||
}
|
||||
|
||||
.tab-row .tab {
|
||||
float:none!important;
|
||||
}
|
||||
|
||||
.tab-page {z-index:0;}
|
||||
|
||||
.toolbarBox {z-index:10!important;}
|
||||
|
||||
iframe {
|
||||
margin-top: 20px;
|
||||
margin-bottom: 30px;
|
||||
padding:10px;
|
||||
|
||||
-moz-border-radius: 12px;
|
||||
-webkit-border-radius: 12px;
|
||||
border-radius: 12px;
|
||||
|
||||
-moz-box-shadow: 2px 2px 8px #000;
|
||||
-webkit-box-shadow: 2px 2px 8px #000;
|
||||
box-shadow: 2px 2px 8px #000;
|
||||
border:1px;
|
||||
margin: 20px auto;
|
||||
display:block;
|
||||
}
|
||||
|
||||
.nobootstrap {
|
||||
width: 78%!important;
|
||||
min-width: 78%;
|
||||
}
|
34
www/modules/ekomi/css/admin_backward.css
Normal file
@ -0,0 +1,34 @@
|
||||
.readme {
|
||||
float: right;
|
||||
margin-right: 20px;
|
||||
margin-top: -60px;
|
||||
}
|
||||
.readme a {color:#ce1919;}
|
||||
.readme a:hover {text-decoration:underline;}
|
||||
.technical_support{line-height: 15px;display: inline-block;margin-left: 15px;}
|
||||
.technical_support i{color:#96c11f;}
|
||||
.technical_support a{color:#1073ba;}
|
||||
|
||||
.toolbarBox {
|
||||
background-color: #F8F8F8;
|
||||
border: 1px solid #CCCCCC;
|
||||
margin-bottom: 10px;
|
||||
padding: 10px 0;
|
||||
border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
}
|
||||
|
||||
div.fix-toolbar {
|
||||
border-bottom: 1px solid #E0E0E0;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
opacity: 0.9;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
#ekomi-wrapper center.submit {
|
||||
background: none repeat scroll 0 0 #DFDFDF;
|
||||
border: 5px solid #EFEFEF;
|
||||
padding: 10px;
|
||||
}
|
10
www/modules/ekomi/css/jquery.star-rating.css
Normal file
@ -0,0 +1,10 @@
|
||||
/* jQuery.Rating Plugin CSS - http://www.fyneworks.com/jquery/star-rating/ */
|
||||
div.rating-cancel,div.star-rating{float:left;width:17px;height:16px;text-indent:-999em;cursor:pointer;display:block;background:transparent;overflow:hidden}
|
||||
div.rating-cancel a,div.star-rating a{display:block;width:16px;height:100%;background-position:0 0px;border:0}
|
||||
div.star-rating-on a{background-position:0 -33px!important}
|
||||
div.star-rating-hover a{background-position:0 -16px!important}
|
||||
/*Read Only CSS*/
|
||||
div.star-rating-readonly a{cursor:default !important}
|
||||
/*Partial Star CSS*/
|
||||
div.star-rating{background:transparent!important;overflow:hidden!important}
|
||||
/* END jQuery.Rating Plugin CSS */
|
52
www/modules/ekomi/css/module.css
Normal file
@ -0,0 +1,52 @@
|
||||
div.ekomiReviewLineRating {
|
||||
margin: 5px 0 5px 10px;
|
||||
}
|
||||
|
||||
p.ekomiReviewLineComment {
|
||||
clear:both;
|
||||
margin: 15px 0 5px 10px;
|
||||
border-bottom: 1px solid #CCC;
|
||||
}
|
||||
|
||||
div.ekomiReviewLineName {
|
||||
padding-top: 2px;
|
||||
padding-left: 110px;
|
||||
}
|
||||
|
||||
div.ekomiLogo {
|
||||
margin: 5px 0 5px 10px;
|
||||
border-bottom: 1px solid #CCC;
|
||||
padding-bottom: 10px;
|
||||
}
|
||||
|
||||
span.ekomiBadgeRateElement {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
float: left;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
span.ekomiBadgeRateBg {
|
||||
width: 80px;
|
||||
height: 16px;
|
||||
display: inline-block;
|
||||
margin-top: 5px;
|
||||
}
|
||||
|
||||
#eKomiWidget_default {text-align:center;}
|
||||
|
||||
.reviewsAgregate {
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
background: #fbfbef;
|
||||
border: 1px solid #dfc9b4;
|
||||
border-radius: 5px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
div.unsubscribe-ekomi {
|
||||
padding:10px;
|
||||
background: #f3f3f3;
|
||||
border: 1px solid #ddd;
|
||||
border-radius: 5px;
|
||||
}
|
56
www/modules/ekomi/de.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Fügt einen eKomi Block hinzu, Ekomi Produktbewertungen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Sind Sie sich sicher, dass Sie die Deinstallation fortführen möchten?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'Verzeichnis';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Professioneller E-Commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Benötigen Sie Hilfe? Haben Sie einen speziellen Wunsch?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Kontaktieren Sie unseren technischen Support';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'per E-Mail: addon@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'per Telefon: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Dokumentation downloaden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Einstellungen aktualisiert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Ekomi Einstellungen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Bitte füllen Sie das Formular mit den Daten, die Sie von eKomi erhalten, aus.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'eKomi Skript';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Bitte vergessen Sie nicht sich in den eKomi Kundenbereich einzuloggen, um Ihre E-Mail Vorlage und die Versandverzögerung anzupassen.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Block anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Aktiviert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Deaktiviert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Block anzeigen oder verbergen (Bestellungen werden an eKomi übermittelt, egal ob anzeigen oder verbergen ausgewählt wurde)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Rich Snippet auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Zeige Rich Snippet Block auf der Produktseite';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Bewertungen auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Produktbewertungen auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Bewertungen auf einen bestimmten Zeitraum begrenzen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Alle';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 Monat';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 Monate';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 Monate';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 Jahr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Anzeigezeitraum der Bewertungen auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Bitten Sie Ihre Kunden, Ihren Shop und Ihre Produkte zu bewerten';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Wenn Sie diese Option deaktivieren, ist nur die Bewertung Ihres Shops erforderlich.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Piktogramm für Bewertungen auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Status auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Wählen Sie den Status aus, auf dem wir die Bewertungsanfrage an den Kunden senden sollen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Wo soll der Block erscheinen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'Im Footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Linke Spalte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Rechte Spalte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Bitte konfigurieren Sie den Cron auf alle 6 Stunden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Sollten Sie ein Problem haben, kontaktieren Sie bitte Ihren Netzwerk Administrator.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Wenn Sie keinen Netzwerk Administrator haben, eKomi wird Ihnen helfen Ihren Cronjob zu erstellen. Bitte kontaktieren Sie den technischen Support von eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Speichern';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Sie wurden erfolgreich abgemeldet.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Datum';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Kommentar';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Der Kunde hat das Produkt bewertet, aber keine Bewertung hinterlassen, oder die Bewertung befindet sich noch in der Überprüfung';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Es gibt keine neuen Kundenkommentare.';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Ekomi Kommentare';
|
44
www/modules/ekomi/ekomi-unsubscribe-backward.php
Normal file
@ -0,0 +1,44 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Ekomi
|
||||
*
|
||||
* @category Advertising and Marketing
|
||||
* @author Web in Color <addons@webincolor.fr>
|
||||
* @copyright 2013 WebInColor
|
||||
* @version 1.0
|
||||
* @link http://www.webincolor.fr/
|
||||
* @since File available since Release 1.0
|
||||
*/
|
||||
|
||||
|
||||
require_once(dirname(__FILE__).'/../../config/config.inc.php');
|
||||
|
||||
// init front controller in order to use Tools::redirect
|
||||
$controller = new FrontController();
|
||||
$controller->init();
|
||||
|
||||
if(Tools::getValue('id_customer'))
|
||||
{
|
||||
//We retrieve customer id
|
||||
$id_customer = Db::getInstance()->ExecuteS('SELECT `id_customer` FROM `'._DB_PREFIX_.'wic_ekomi_order_email` WHERE MD5( `id_customer` ) = \''.Tools::getValue('id_customer').'\';');
|
||||
|
||||
if(isset($id_customer[0]['id_customer']))
|
||||
{
|
||||
//We verify if customer is unsubscribe to ekomi email
|
||||
$id_customer_unsubscribe = Db::getInstance()->ExecuteS('SELECT `id_customer` FROM `'._DB_PREFIX_.'ekomi_unsubscribe` WHERE `id_customer` = '.(int)$id_customer.';');
|
||||
|
||||
if(!isset($id_customer_unsubscribe[0]['id_customer']))
|
||||
{
|
||||
$sql = 'INSERT INTO `'._DB_PREFIX_.'ekomi_unsubscribe` (`id_ekomi_unsubscribe`,`id_customer`) VALUES (\'\','.(int)$id_customer[0]['id_customer'].');';
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
include(dirname(__FILE__).'/../../header.php');
|
||||
|
||||
echo Module::display(dirname(__FILE__).'/ekomi.php', 'views/templates/front/ekomi_unsubscribe.tpl');
|
||||
|
||||
include(dirname(__FILE__).'/../../footer.php');
|
||||
|
||||
?>
|
22
www/modules/ekomi/ekomi-unsubscribe.php
Normal file
@ -0,0 +1,22 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Ekomi
|
||||
*
|
||||
* @category Advertising and Marketing
|
||||
* @author Web in Color <addons@webincolor.fr>
|
||||
* @copyright 2013 WebInColor
|
||||
* @version 1.0
|
||||
* @link http://www.webincolor.fr/
|
||||
* @since File available since Release 1.0
|
||||
*/
|
||||
|
||||
|
||||
require_once(dirname(__FILE__).'/../../config/config.inc.php');
|
||||
|
||||
// init front controller in order to use Tools::redirect
|
||||
$controller = new FrontController();
|
||||
$controller->init();
|
||||
|
||||
Tools::redirect(Context::getContext()->link->getModuleLink('ekomi', 'unsubscribe'));
|
||||
|
||||
?>
|
609
www/modules/ekomi/ekomi.php
Normal file
@ -0,0 +1,609 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Ekomi - Main file
|
||||
*
|
||||
* @category Advertising and Marketing
|
||||
* @author Web in Color <addons@webincolor.fr>
|
||||
* @copyright 2013 WebInColor
|
||||
* @version 2.8
|
||||
* @link http://www.webincolor.fr/
|
||||
* @since File available since Release 1.0
|
||||
*/
|
||||
|
||||
|
||||
if (!defined('_PS_VERSION_'))
|
||||
exit;
|
||||
|
||||
class Ekomi extends Module
|
||||
{
|
||||
private $_html = '';
|
||||
private $_postErrors = array();
|
||||
public $_ekomi_object;
|
||||
|
||||
public $id_lang;
|
||||
public $iso_lang;
|
||||
|
||||
function __construct()
|
||||
{
|
||||
$this->name = 'ekomi';
|
||||
$this->tab = 'advertising_marketing';
|
||||
$this->author = 'Web In Color';
|
||||
$this->version = '2.8';
|
||||
$this->need_instance = 0;
|
||||
$this->module_key = '0fbd74e72a982dfbb3ee49f3ccec117a';
|
||||
|
||||
parent::__construct();
|
||||
|
||||
$this->displayName = $this->l('eKomi');
|
||||
$this->description = $this->l('Adds an eKomi block, Ekomi product reviews');
|
||||
$this->confirmUninstall = $this->l('Are you sure you want to uninstall?');
|
||||
|
||||
if (self::isInstalled($this->name))
|
||||
{
|
||||
$this->id_lang = (int)Configuration::get('PS_LANG_DEFAULT');
|
||||
$this->iso_lang = pSQL(Language::getIsoById($this->id_lang));
|
||||
|
||||
/* Check Mail Directory */
|
||||
if (!is_dir('../modules/'.$this->name.'/mails/'.$this->iso_lang.'/'))
|
||||
$this->warning .= $this->l('directory').' "'.$this->iso_lang.'" does not exist '.'../modules/'.$this->name.'/mails/'.$this->iso_lang.'/';
|
||||
}
|
||||
|
||||
if($this->getVersion() > 1.4)
|
||||
$this->default_hook = 'displayFooter';
|
||||
else
|
||||
$this->default_hook = 'footer';
|
||||
|
||||
//including Ekomi Class
|
||||
$path = dirname(__FILE__);
|
||||
if (strpos(__FILE__, 'Module.php') !== false)
|
||||
$path .= '/../modules/'.$this->name;
|
||||
if($this->getVersion() > 1.4)
|
||||
include_once($path.'/lib/ekomi_class.php');
|
||||
else
|
||||
include_once($path.'/lib/ekomi_class_backward.php');
|
||||
|
||||
/* Backward compatibility */
|
||||
if (_PS_VERSION_ < '1.5' AND _PS_VERSION_ >= '1.4')
|
||||
require(_PS_MODULE_DIR_.$this->name.'/backward_compatibility/backward.php');
|
||||
|
||||
// Retrocompatibility
|
||||
$this->initContext();
|
||||
}
|
||||
|
||||
// Retrocompatibility 1.4/1.5
|
||||
private function initContext()
|
||||
{
|
||||
if(!$this->context->shop->id)
|
||||
$this->context->shop->id = 1;
|
||||
}
|
||||
|
||||
public function install()
|
||||
{
|
||||
include(dirname(__FILE__).'/sql/install.php');
|
||||
foreach ($sql as $s)
|
||||
if (!Db::getInstance()->execute($s))
|
||||
return false;
|
||||
|
||||
if($this->getVersion() > 1.4)
|
||||
return (parent::install() AND $this->registerHook('displayFooter') AND $this->registerHook('displayHeader') AND $this->registerHook('actionOrderStatusUpdate') AND $this->registerHook('displayProductTab') AND $this->registerHook('displayProductTabContent'));
|
||||
else
|
||||
return (parent::install() AND $this->registerHook('footer') AND $this->registerHook('header') AND $this->registerHook('updateOrderStatus') AND $this->registerHook('productTab') AND $this->registerHook('productTabContent'));
|
||||
}
|
||||
|
||||
public function uninstall()
|
||||
{
|
||||
include(dirname(__FILE__).'/sql/uninstall.php');
|
||||
foreach ($sql as $s)
|
||||
if (!Db::getInstance()->execute($s))
|
||||
return false;
|
||||
|
||||
if (!parent::uninstall())
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getVersion(){
|
||||
if(_PS_VERSION_ > 1.3 AND _PS_VERSION_ <= 1.4) return 1.4;
|
||||
if(_PS_VERSION_ > 1.4 AND _PS_VERSION_ >= 1.6) return 1.5;
|
||||
return 1.3;
|
||||
}
|
||||
|
||||
public function fetchTemplate($path, $name, $extension = false)
|
||||
{
|
||||
return $this->display(__FILE__,$path.$name.'.'.($extension ? $extension : 'tpl'));
|
||||
}
|
||||
|
||||
public function getContent()
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
if(!Validate::isLoadedObject($ekomiObj))
|
||||
Db::getInstance()->Execute('INSERT INTO `'._DB_PREFIX_.'ekomi`(`id_ekomi`,`id_shop`,`display_block`,`display_reviews`,`picto`,`sending`,`range`,`hook`,`id_state`) VALUES (\'\','.$this->context->shop->id.',0,0,\'1-star-yellow\',0,0,\''.$this->default_hook.'\',5);');
|
||||
|
||||
if($this->getVersion() > 1.4)
|
||||
$this->_html = '<link type="text/css" rel="stylesheet" href="' . $this->_path . 'css/admin.css" />';
|
||||
else
|
||||
$this->_html = '<link type="text/css" rel="stylesheet" href="' . $this->_path . 'css/admin_backward.css" />';
|
||||
|
||||
$this->_html .= '<div class="toolbar-placeholder"><div class="toolbarBox toolbarHead"><div class="pageTitle"><h3> <span id="current_obj" style="font-weight: normal;"> <span class="breadcrumb item-0 "><img src="' . $this->_path . 'img/logo_webincolor_L260.png" width="260" height="70"/>'.$this->l('Expertise e-commerce Prestashop').'</span> </span></h3><span class="readme"><img src="' . $this->_path . 'img/PDF.png" width="32" height="32"/><a href="http://www.webincolor.fr/addons_prestashop/' . $this->l('ekomi_en.pdf').'" target="_blank">'.$this->l('Download the documentation').'</a></span></div></div><div class="leadin"></div></div>';
|
||||
|
||||
if($this->getVersion() <= 1.4)
|
||||
$this->_html .= '<script type="text/javascript" src="' . $this->_path .'js/toolbar.js"></script>';
|
||||
|
||||
if(!extension_loaded('soap'))
|
||||
$this->_html .= $this->displayError($this->l('php-soap extension is not loaded. Thank you to contact your network administrator.'));
|
||||
|
||||
if (Tools::isSubmit('submitEkomi'))
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
$ekomiObj->copyFromPost();
|
||||
$ekomiObj->update();
|
||||
|
||||
if($this->getVersion() > 1.4)
|
||||
{
|
||||
if ($this->isRegisteredInHook('displayFooter'))
|
||||
$this->unregisterHook('displayFooter');
|
||||
if ($this->isRegisteredInHook('displayLeftColumn'))
|
||||
$this->unregisterHook('displayLeftColumn');
|
||||
if ($this->isRegisteredInHook('displayRightColumn'))
|
||||
$this->unregisterHook('displayRightColumn');
|
||||
}
|
||||
else
|
||||
{
|
||||
if ($this->isRegisteredInHook('footer'))
|
||||
$this->unregisterHook('footer');
|
||||
if ($this->isRegisteredInHook('leftColumn'))
|
||||
$this->unregisterHook('leftColumn');
|
||||
if ($this->isRegisteredInHook('rightColumn'))
|
||||
$this->unregisterHook('rightColumn');
|
||||
}
|
||||
|
||||
$this->registerHook(Tools::getValue('hook'));
|
||||
|
||||
$this->_html .= '<div class="conf confirm">'.$this->l('Settings updated').'</div>';
|
||||
}
|
||||
|
||||
return $this->_html.$this->displayForm();
|
||||
}
|
||||
|
||||
public function displayForm()
|
||||
{
|
||||
$states = OrderState::getOrderStates($this->context->language->id);
|
||||
|
||||
$languages = Language::getLanguages(false);
|
||||
$divLangName = 'apiId¤apiKey¤apiScript';
|
||||
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
$this->_html = '
|
||||
<script type="text/javascript">id_language = Number('.$this->id_lang.');</script>
|
||||
<form action="'.htmlentities($_SERVER['REQUEST_URI']).'" method="post" id="ekomi-wrapper">
|
||||
<fieldset>
|
||||
<legend><img src="'.$this->_path.'logo.gif" alt="" title="" />'.$this->l('Ekomi settings').'</legend>
|
||||
<div class="warn">'.$this->l('Please fill the form with the data that eKomi gives you.').'</div>
|
||||
<label for="api_id">'.$this->l('API ID').' </label>
|
||||
<div class="margin-form">';
|
||||
foreach ($languages as $language)
|
||||
{
|
||||
$this->_html .='<div id="apiId_'.$language['id_lang'].'" style="display: '.($language['id_lang'] == $this->id_lang ? 'block' : 'none').';float: left;">
|
||||
<input id="api_id_'.$language['id_lang'].'" type="text" name="api_id_'.$language['id_lang'].'" value="'.(isset($ekomiObj->api_id[$language['id_lang']]) ? $ekomiObj->api_id[$language['id_lang']] : '').'" />
|
||||
</div>';
|
||||
}
|
||||
$this->_html .= $this->displayFlags($languages, $this->id_lang, $divLangName, 'apiId', true);
|
||||
$this->_html .= '</div><p class="clear"></p>
|
||||
<label for="api_key">'.$this->l('API KEY').'</label>
|
||||
<div class="margin-form">';
|
||||
foreach ($languages as $language)
|
||||
{
|
||||
$this->_html .= '<div id="apiKey_'.$language['id_lang'].'" style="display: '.($language['id_lang'] == $this->id_lang ? 'block' : 'none').';float: left;">
|
||||
<input id="api_key_'.$language['id_lang'].'" type="text" name="api_key_'.$language['id_lang'].'" value="'.(isset($ekomiObj->api_key[$language['id_lang']]) ? $ekomiObj->api_key[$language['id_lang']] : '').'" />
|
||||
</div>';
|
||||
}
|
||||
$this->_html .= $this->displayFlags($languages, $this->id_lang, $divLangName, 'apiKey', true);
|
||||
$this->_html .= '</div><p class="clear"></p>
|
||||
<label for="ekomi_script">'.$this->l('eKomi script').'</label>
|
||||
<div class="margin-form">';
|
||||
foreach ($languages as $language)
|
||||
{
|
||||
$this->_html .= '<div id="apiScript_'.$language['id_lang'].'" style="display: '.($language['id_lang'] == $this->id_lang ? 'block' : 'none').';float: left;">
|
||||
<textarea id="api_script_'.$language['id_lang'].'" name="api_script_'.$language['id_lang'].'" cols="100" rows="10">'.stripslashes(html_entity_decode((isset($ekomiObj->api_script[$language['id_lang']]) ? $ekomiObj->api_script[$language['id_lang']] : ''))).'</textarea>
|
||||
</div>';
|
||||
}
|
||||
$this->_html .= $this->displayFlags($languages, $this->id_lang, $divLangName, 'apiScript', true);
|
||||
$this->_html .= '</div><p class="clear"></p>
|
||||
<div class="warn" style="position: absolute;left: 700px;margin-top: 100px; width:300px;">'.$this->l('Do not forget to log in to your eKomi interface to configure your email type as well as the time of sending of this email.').'</div>
|
||||
<label>'.$this->l('Display block').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="radio" name="display_block" id="display_block_on" value="1" '.($ekomiObj->display_block ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_block_on"> <img src="../img/admin/enabled.gif" alt="'.$this->l('Enabled').'" title="'.$this->l('Enabled').'" /></label>
|
||||
<input type="radio" name="display_block" id="display_block_off" value="0" '.(!$ekomiObj->display_block ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_block_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p class="clear">'.$this->l('Show or don\'t show the block (orders will be sent to eKomi whether you choose to hide or display the block).').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Display rich snippet on product page').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="radio" name="display_richsnippet" id="display_richsnippet_on" value="1" '.($ekomiObj->display_richsnippet ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_richsnippet_on"> <img src="../img/admin/enabled.gif" alt="'.$this->l('Enabled').'" title="'.$this->l('Enabled').'" /></label>
|
||||
<input type="radio" name="display_richsnippet" id="display_richsnippet_off" value="0" '.(!$ekomiObj->display_richsnippet ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_richsnippet_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p class="clear">'.$this->l('Show rich snippet block on product page.').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Display reviews on product page').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="radio" name="display_reviews" id="display_reviews_on" value="1" '.($ekomiObj->display_reviews ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_reviews_on"> <img src="../img/admin/enabled.gif" alt="'.$this->l('Enabled').'" title="'.$this->l('Enabled').'" /></label>
|
||||
<input type="radio" name="display_reviews" id="ekomi_display_reviews_off" value="0" '.(!$ekomiObj->display_reviews ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="display_reviews_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p class="clear">'.$this->l('Show product reviews on product page.').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Limit reviews by period').'</label>
|
||||
<div class="margin-form">
|
||||
<select name="range">
|
||||
<option value="" '.(!$ekomiObj->range ? 'selected=selected' : '').'>'.$this->l('All').'</option>
|
||||
<option value="1m" '.($ekomiObj->range == '1m' ? 'selected=selected' : '').'>'.$this->l('1 month').'</option>
|
||||
<option value="3m" '.($ekomiObj->range == '3m' ? 'selected=selected' : '').'>'.$this->l('3 months').'</option>
|
||||
<option value="6m" '.($ekomiObj->range == '6m' ? 'selected=selected' : '').'>'.$this->l('6 months').'</option>
|
||||
<option value="1y" '.($ekomiObj->range == '1y' ? 'selected=selected' : '').'>'.$this->l('1 year').'</option>
|
||||
</select>
|
||||
<p class="clear">'.$this->l('Select the display period of the reviews').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Ask your customers to note the store and products').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="radio" name="sending" id="sending_on" value="1" '.($ekomiObj->sending ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="sending_on"> <img src="../img/admin/enabled.gif" alt="'.$this->l('Enabled').'" title="'.$this->l('Enabled').'" /></label>
|
||||
<input type="radio" name="sending" id="sending_off" value="0" '.(!$ekomiObj->sending ? 'checked="checked"' : '').' />
|
||||
<label class="t" for="sending_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p class="clear">'.$this->l('If you disable this option, only the rating of the store will be required.').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Pictogram to chose for rating').'</label>
|
||||
<div class="margin-form">
|
||||
<select style="float: left;" id="ekomiPicto" name="picto">
|
||||
<option value="1-star-yellow" '.($ekomiObj->picto == '1-star-yellow' ? 'selected="selected"' : '').'>1-star-yellow</option>
|
||||
<option value="2-star-green" '.($ekomiObj->picto == '2-star-green' ? 'selected="selected"' : '').'>2-star-green</option>
|
||||
<option value="3-star-blue" '.($ekomiObj->picto == '3-star-blue' ? 'selected="selected"' : '').'>3-star-blue</option>
|
||||
<option value="4-thumbs-yellow" '.($ekomiObj->picto == '4-thumbs-yellow' ? 'selected="selected"' : '').'>4-thumbs-yellow</option>
|
||||
<option value="5-thumbs-green" '.($ekomiObj->picto == '5-thumbs-green' ? 'selected="selected"' : '').'>5-thumbs-green</option>
|
||||
<option value="6-thumbs-blue" '.($ekomiObj->picto == '6-thumbs-blue' ? 'selected="selected"' : '').'>6-thumbs-blue</option>
|
||||
</select>
|
||||
<span id="ekomiPicto1-star-yellow" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.((!$ekomiObj->picto OR $ekomiObj->picto == '1-star-yellow') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/1-star-yellow/picto.gif" alt="1-star-yellow" title="1-star-yellow" />
|
||||
</span>
|
||||
<span id="ekomiPicto2-star-green" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.(($ekomiObj->picto AND $ekomiObj->picto == '2-star-green') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/2-star-green/picto.gif" alt="2-star-green" title="2-star-green" />
|
||||
</span>
|
||||
<span id="ekomiPicto3-star-blue" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.(($ekomiObj->picto AND $ekomiObj->picto == '3-star-blue') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/3-star-blue/picto.gif" alt="3-star-blue" title="3-star-blue" />
|
||||
</span>
|
||||
<span id="ekomiPicto4-thumbs-yellow" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.(($ekomiObj->picto AND $ekomiObj->picto == '4-thumbs-yellow') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/4-thumbs-yellow/picto.gif" alt="4-thumbs-yellow" title="4-thumbs-yellow" />
|
||||
</span>
|
||||
<span id="ekomiPicto5-thumbs-green" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.(($ekomiObj->picto AND $ekomiObj->picto == '5-thumbs-green') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/5-thumbs-green/picto.gif" alt="5-thumbs-green" title="5-thumbs-green" />
|
||||
</span>
|
||||
<span id="ekomiPicto6-thumbs-blue" style="float: left; margin-left: 15px; margin-bottom: 10px; display: '.(($ekomiObj->picto AND $ekomiObj->picto == '6-thumbs-blue') ? 'inline' : 'none').'">
|
||||
<img src="'.$this->_path.'img/picto/6-thumbs-blue/picto.gif" alt="6-thumbs-blue" title="6-thumbs-blue" />
|
||||
</span>
|
||||
<br class="clear" />
|
||||
</div>
|
||||
<label>'.$this->l('Select the status ').'</label>
|
||||
<div class="margin-form">
|
||||
<select name="id_state">';
|
||||
foreach ($states AS $state)
|
||||
$this->_html .= '<option value="'.$state['id_order_state'].'" '.(($ekomiObj->id_state == $state['id_order_state'] OR (!$ekomiObj->id_state AND $state['id_order_state'] == 5))?'selected=selected':'').'>'.$state['name'].'</option>';
|
||||
$this->_html .= '</select>
|
||||
<p class="clear">'.$this->l('Select the status to which we send the ratting request to the customer').'</p>
|
||||
</div>
|
||||
<label>'.$this->l('Where would you appear this block?').'</label>
|
||||
<div class="margin-form">
|
||||
<select name="hook">
|
||||
<option value="'.(($this->getVersion() > 1.4) ? 'displayFooter' : 'footer').'" '.(($ekomiObj->hook == 'footer' OR $ekomiObj->hook == 'displayFooter') ? 'selected=selected' : '').'>'.$this->l('In footer').'</option>
|
||||
<option value="'.(($this->getVersion() > 1.4) ? 'displayLeftColumn' : 'leftColumn').'" '.(($ekomiObj->hook == 'leftColumn' OR $ekomiObj->hook == 'displayLeftColumn') ? 'selected=selected' : '').'>'.$this->l('Left Column').'</option>
|
||||
<option value="'.(($this->getVersion() > 1.4) ? 'displayRightColumn' : 'rightColumn').'" '.(($ekomiObj->hook == 'rightColumn' OR $ekomiObj->hook == 'displayRightColumn') ? 'selected=selected' : '').'>'.$this->l('Right Column').'</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="hint" style="display:block;margin-bottom:20px;">'.$this->l('You must configure the following cron every 6 hours:').'<ul><li>';
|
||||
if (_PS_VERSION_ >= 1.4)
|
||||
$this->_html .= '<a href="'.Tools::getShopDomain(true).str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_order_email.php?token='.Tools::getAdminToken('eKomi').'">'.Tools::getShopDomain(true).str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_order_email.php?token='.Tools::getAdminToken('eKomi').'</a></li><li><a href="'.Tools::getShopDomain(true).str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_product_feedback.php?token='.Tools::getAdminToken('eKomi').'">'.Tools::getShopDomain(true).str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_product_feedback.php?token='.Tools::getAdminToken('eKomi').'</a>';
|
||||
else
|
||||
$this->_html .= '<a href="'.$_SERVER['HTTP_REFERER'].str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_order_email.php?token='.Tools::getAdminToken('eKomi').'">'.$_SERVER['HTTP_REFERER'].str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_order_email.php?token='.Tools::getAdminToken('eKomi').'</a></li><li><a href="'.$_SERVER['HTTP_REFERER'].str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_product_feedback.php?token='.Tools::getAdminToken('eKomi').'">'.$_SERVER['HTTP_REFERER'].str_replace(_PS_ROOT_DIR_.'/', __PS_BASE_URI__, $this->_path).'tools/ekomi_product_feedback.php?token='.Tools::getAdminToken('eKomi').'</a>';
|
||||
$this->_html .= '</li></ul>
|
||||
'.$this->l('If you have a problem thank you to contact your network administrator.').'
|
||||
<br/><b>'.$this->l('You haven\'t network administrator, eKomi team helps you set up your Cron Job. Thank you contact the technical team eKomi.').'</b>
|
||||
</div>
|
||||
<center class="submit"><input type="submit" name="submitEkomi" value="'.$this->l('Save').'" class="button" /></center>
|
||||
</fieldset>
|
||||
</form>';
|
||||
|
||||
$this->_html .= '<script type="text/javascript">
|
||||
$("#ekomiPicto").bind($.browser.msie ? \'click\' : \'change\', function (event)
|
||||
{
|
||||
$("#ekomiPicto option").each(function (i)
|
||||
{
|
||||
if ($(this).attr(\'selected\')) {
|
||||
$("#ekomiPicto" + $(this).val()).css(\'display\', \'inline\');
|
||||
}
|
||||
else {
|
||||
$("#ekomiPicto" + $(this).val()).css(\'display\', \'none\');
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>';
|
||||
|
||||
$this->_html .= '<iframe src="http://www.webincolor.fr/addons_prestashop.html" width="670" height="430" border="0"></iframe>';
|
||||
|
||||
return $this->_html;
|
||||
}
|
||||
|
||||
public function hookHeader($params)
|
||||
{
|
||||
if (version_compare(_PS_VERSION_,'1.5','<'))
|
||||
{
|
||||
Tools::addCSS(($this->_path).'css/jquery.star-rating.css', 'all');
|
||||
Tools::addCSS(($this->_path).'css/module.css', 'all');
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->context->controller->addCSS(($this->_path).'css/jquery.star-rating.css', 'all');
|
||||
$this->context->controller->addCSS(($this->_path).'css/module.css', 'all');
|
||||
}
|
||||
|
||||
$this->context->smarty->assign(array(
|
||||
'version' => version_compare(_PS_VERSION_, '1.4.1'),
|
||||
'pathJS' => $this->_path.'js/',
|
||||
));
|
||||
|
||||
return $this->fetchTemplate('/views/templates/hooks/', 'header');
|
||||
}
|
||||
|
||||
public function hookDisplayHeader($params)
|
||||
{
|
||||
return $this->hookHeader($params);
|
||||
}
|
||||
|
||||
public function hookFooter($params)
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
if(Validate::isLoadedObject($ekomiObj))
|
||||
{
|
||||
if($ekomiObj->display_richsnippet)
|
||||
{
|
||||
if(Tools::getValue('id_product'))
|
||||
{
|
||||
$product = new Product(Tools::getValue('id_product'),true,$this->context->language->id);
|
||||
|
||||
if(Validate::isLoadedObject($product))
|
||||
{
|
||||
//We retrieve rating
|
||||
$this->context->smarty->assign(array(
|
||||
'product' => $product,
|
||||
'rating' => $ekomiObj->getRating($product->id,$this->context->language->id),
|
||||
'count' => $ekomiObj->getCount(Tools::getValue('id_product'),$this->context->language->id),
|
||||
'currencySign' => $this->context->currency->sign,
|
||||
'currencyIso' => $this->context->currency->iso_code,
|
||||
'pathStar' => $this->_path.'img/picto/'.$ekomiObj->picto.'/picto.gif',
|
||||
));
|
||||
}
|
||||
}
|
||||
else
|
||||
$this->context->smarty->assign(array(
|
||||
'display_reviews' => false,
|
||||
));
|
||||
}
|
||||
else
|
||||
$this->context->smarty->assign(array(
|
||||
'display_reviews' => false,
|
||||
));
|
||||
|
||||
|
||||
if ($ekomiObj->display_block AND $ekomiObj->api_script[$this->context->language->id])
|
||||
{
|
||||
$this->context->smarty->assign(array(
|
||||
'badge' => stripslashes(html_entity_decode($ekomiObj->api_script[$this->context->language->id])).'<br clear="left" /><br />',
|
||||
));
|
||||
}
|
||||
|
||||
return $this->fetchTemplate('/views/templates/hooks/', 'badge');
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public function hookDisplayFooter($params)
|
||||
{
|
||||
return $this->hookFooter($params);
|
||||
}
|
||||
|
||||
public function hookLeftColumn($params)
|
||||
{
|
||||
return $this->hookFooter($params);
|
||||
}
|
||||
|
||||
public function hookDisplayLeftColumn($params)
|
||||
{
|
||||
return $this->hookFooter($params);
|
||||
}
|
||||
|
||||
public function hookRightColumn($params)
|
||||
{
|
||||
return $this->hookFooter($params);
|
||||
}
|
||||
|
||||
public function hookDisplayRightColumn($params)
|
||||
{
|
||||
return $this->hookFooter($params);
|
||||
}
|
||||
|
||||
public function hookUpdateOrderStatus($params)
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
$orderState = $params['newOrderStatus'];
|
||||
if($ekomiObj->id_state)
|
||||
{
|
||||
if($ekomiObj->id_state == $orderState->id)
|
||||
{
|
||||
/* We send Product to update database Ekomi product*/
|
||||
$order = new Order($params['id_order']);
|
||||
$products = $order->getProducts();
|
||||
|
||||
foreach ($products as $product)
|
||||
$ekomiObj->send_product($product,$order->id_lang, $this->context->link);
|
||||
|
||||
$ekomiData = $ekomiObj->send_order($params['id_order'],$order->id_lang);
|
||||
|
||||
if(isset($ekomiData['link']))
|
||||
{
|
||||
//We insert order data to sending email via cronjob
|
||||
$ekomiObj->putEmailData($order->id,$order->id_customer,$ekomiData['link'],$order->id_lang);
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function hookActionOrderStatusUpdate($params)
|
||||
{
|
||||
return $this->hookUpdateOrderStatus($params);
|
||||
}
|
||||
|
||||
public function hookProductTab($params)
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
if($ekomiObj->display_reviews)
|
||||
{
|
||||
$this->context->smarty->assign(array(
|
||||
'count' => $ekomiObj->getCount(Tools::getValue('id_product'),$this->context->language->id),
|
||||
));
|
||||
return $this->fetchTemplate('/views/templates/hooks/', 'tab');
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public function hookDisplayProductTab($params)
|
||||
{
|
||||
return $this->hookProductTab($params);
|
||||
}
|
||||
|
||||
public function hookProductTabContent($params)
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
if($ekomiObj->display_reviews)
|
||||
{
|
||||
/* Get product reviews*/
|
||||
$reviews = $ekomiObj->getReviews(Tools::getValue('id_product'),$this->context->language->id);
|
||||
$rating = $ekomiObj->getRating(Tools::getValue('id_product'),$this->context->language->id);
|
||||
|
||||
$this->context->smarty->assign(array(
|
||||
'pathEkomi' => $this->_path,
|
||||
));
|
||||
|
||||
if($reviews)
|
||||
{
|
||||
$this->context->smarty->assign(array(
|
||||
'eReviews' => $reviews,
|
||||
'rating' => $rating,
|
||||
'pathStar' => $this->_path.'img/picto/'.$ekomiObj->picto.'/picto.gif',
|
||||
));
|
||||
}
|
||||
|
||||
return $this->fetchTemplate('/views/templates/hooks/', 'productcomment');
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public function hookDisplayProductTabContent($params)
|
||||
{
|
||||
return $this->hookProductTabContent($params);
|
||||
}
|
||||
|
||||
public function cronSendEmail()
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
foreach($ekomiObj->api_id as $key=>$value)
|
||||
{
|
||||
if (!file_exists(dirname(__FILE__.'/'.Language::getIsoById((int)$key).'/')))
|
||||
di('error sending email, template does not exist');
|
||||
|
||||
$ekomiSettings = $ekomiObj->send_settings_request($key);
|
||||
|
||||
if($ekomiSettings['done'])
|
||||
{
|
||||
$subject = utf8_encode($ekomiSettings['mail_subject']);
|
||||
|
||||
/* We retrieve all order to send an ekomi email */
|
||||
$orders = $ekomiObj->getOrders($ekomiSettings['mail_delay'], $key);
|
||||
if($orders)
|
||||
{
|
||||
foreach($orders as $order)
|
||||
{
|
||||
$customer = new Customer((int)$order['id_customer']);
|
||||
$notSending = Db::getInstance()->ExecuteS('SELECT `id_customer` FROM `'._DB_PREFIX_.'ekomi_unsubscribe` WHERE `id_customer` = '.(int)$customer->id.';');
|
||||
if (!preg_match("/amazon/i", $customer->email) AND !preg_match("/ebay/i", $customer->email) AND !isset($notSending[0]['id_customer']))
|
||||
{
|
||||
/* HTML email */
|
||||
$htmlContent = str_replace('{nachname}', $customer->lastname, utf8_encode($ekomiSettings['mail_html']));
|
||||
$htmlContent = str_replace('{vorname}', $customer->firstname.' ', $htmlContent);
|
||||
$htmlContent = str_replace('{ekomilink}', '<a href="'.$order['ekomi_link'].'">'.$order['ekomi_link'].'</a>', $htmlContent);
|
||||
|
||||
/* TXT email */
|
||||
$plainContent = str_replace('{nachname}', $customer->lastname, utf8_encode($ekomiSettings['mail_plain']));
|
||||
$plainContent = str_replace('{vorname}', $customer->firstname.' ', $htmlContent);
|
||||
$plainContent = str_replace('{ekomilink}', $order['ekomi_link'], $htmlContent);
|
||||
|
||||
if($order['ekomi_link'])
|
||||
{
|
||||
/* Email generation */
|
||||
if (version_compare(_PS_VERSION_,'1.5','<'))
|
||||
{
|
||||
$templateVars = array(
|
||||
'{htmlContent}' => $htmlContent,
|
||||
'{plainContent}' => $plainContent,
|
||||
'{idcustomer}' => md5($customer->id),
|
||||
'{url}' => 'http://'.$_SERVER['HTTP_HOST'].'/modules/ekomi/ekomi-unsubscribe-backward.php',
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
$templateVars = array(
|
||||
'{htmlContent}' => $htmlContent,
|
||||
'{plainContent}' => $plainContent,
|
||||
'{idcustomer}' => md5($customer->id),
|
||||
'{url}' => 'http://'.$_SERVER['HTTP_HOST'].'/module/ekomi/unsubscribe',
|
||||
);
|
||||
}
|
||||
|
||||
/* Email sending */
|
||||
if (!Mail::Send((int)$key, 'ekomi', $subject, $templateVars, $customer->email, NULL, Configuration::get('PS_SHOP_EMAIL'), Configuration::get('PS_SHOP_NAME'), NULL, NULL, dirname(__FILE__).'/mails/'))
|
||||
die('error to sending email');
|
||||
|
||||
/* We update database ekomi order send email field */
|
||||
$orders = $ekomiObj->updateSendEmailOrder($order['id_order'],$order['id']);
|
||||
|
||||
echo 'Email sent to order '.$order['id'].'<br/>';
|
||||
}
|
||||
}
|
||||
else
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function cronProductFeedBack()
|
||||
{
|
||||
$ekomiObj = EkomiObject::getByIdShop($this->context->shop->id);
|
||||
|
||||
$ekomiObj->check_product_feedback();
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
56
www/modules/ekomi/es.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Integra el servicio de valoraciones de eKomi para su tienda y para productos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = '¿Está seguro de que desea desinstalar?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'Directorio';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Experiencia en e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = '¿Necesita ayuda? ¿Tiene una necesidad específica?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Por favor contacte nuestro soporte técnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'por email:addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'por teléfono:+33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Descargar la documentación';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configuración actualizada';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configuración de eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Por favor complete el formulario con los datos proporcionados por eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'Script de eKomi ';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'No olvide configurar el Email con la encuesta y el retraso del mismo en el área de cliente de eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostrar bloque';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Habilitado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Deshabilitado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostrar u ocultar el bloque (información de pedido será enviada a eKomi si usted elige ocultar o mostrar el bloque).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Mostrar Rich Snippets de Google en la página de producto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Rich Snippets majora el posicionamiento de la página en los motores de búsqueda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Ver valoración en la página del producto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Ver valoración del producto en la página del producto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limite de valoración por periodo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Todo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 Mes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 Meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 Meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 Año';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Seleccione el período de las valoraciónes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Pedir a los clientes valorar la tienda y los productos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Si desactiva esta opción, sólo se pedirá la valoración de la tienda.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Pictograma escogido para la valoración';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleccione el estado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Seleccione el estado del pedido para el cuál se debe enviar la encuesta';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = '¿Dónde aparecerá este bloque?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'En el pie de página';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Columna Izquierda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Columna Derecha';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Debe configurar los siguientes cron cada 6 horas:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Si tiene un problema por favor contacte con su administrador de red.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Si no dispone de un administrador de red, contacte al equipo de eKomi para que le ayuden a configurar los Cron Jobs';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Guardar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'No recibirá mas Emails';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Fecha';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Comentario';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'El cliente ha evaluado el producto, pero no se ha publicado una valoración o la valoración está pendiente de ser aprobada';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Todavía no hay opiniones';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Comentarios eKomi';
|
69
www/modules/ekomi/fr.php
Normal file
@ -0,0 +1,69 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Ajouter les avis boutique eKomi, et les avis produits eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Etes-vous certain de vouloir désinstaller ce module ?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'répertoire';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'L\'expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Besoin d\'aide ? Vous avez un besoin spécifique ?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Contacter notre support technique';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'pa email : addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'par téléphone : +33.184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5e33a6721e6cfafe32f5c60d8e04120b'] = 'ekomi_fr.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Télécharger la documentation';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configuration mise à jour';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configuration eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Veuillez remplir le formulaire avec les informations fournies par eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API clé secrète';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'Script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'N\'oubliez pas de vous connecter à votre interface eKomi afin de configurer votre email type ainsi que le délai d\'envoi de cet email.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Afficher le bloc';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Afficher';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Cacher';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Afficher ou cacher le bloc (les commandes seront envoyés à eKomi que vous choississiez d\'afficher ou de cacher le bloc).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Afficher les rich snippet Google sur votre page produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Affiche un bloc rich snippet pour optimiser le référencement.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Afficher les avis produits sur la page produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Montrer à vos clients les avis produits de chaque produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limite des avis par période';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Tous';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 an';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Choisissez la période d\'affichage des anciens avis';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Demander à vos clients de laisser un avis sur votre boutique et sur les produits commandés';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Si vous désactivez cette option, seul l\'avis sur la boutique sera demandé.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Picto à afficher pour les notes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Sélectionner un statut';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Sélectionner le statut de commande à partir duquel un email sera envoyé au client. (Le délais d\'envoie après passage dans ce statut est configuré dans votre interface eKomi).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Où souhaitez-vous que le bloc apparaisse ?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'En pied de page';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Colonne de gauche';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Colonne de droite';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Vous devez configurer ces Cron Job toutes les 6 heures :';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Si vous avez un problème merci de contacter votre administrateur réseau.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Vous n\'avez d\'administrateur réseau, l\'équipe eKomi vous aide à configurer vos Cron Job. Merci de contacter l\'équipe technique eKomi.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Sauvegarder';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Vous avez été désinscrit avec succès.';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3adbdb3ac060038aa0e6e6c138ef9873'] = 'Catégorie';
|
||||
$_MODULE['<{ekomi}prestashop>badge_0b4fe4555e40761bd9cec80f158dd351'] = 'GTIN produit';
|
||||
$_MODULE['<{ekomi}prestashop>badge_a9342085fce8b27841fa4beff37d1158'] = 'Ref. produit';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3601146c4e948c32b6424d2c0a7f0118'] = 'Prix';
|
||||
$_MODULE['<{ekomi}prestashop>badge_11bca5941cb439cd23c93140a0959114'] = 'Stock :';
|
||||
$_MODULE['<{ekomi}prestashop>badge_69d08bd5f8cf4e228930935c3f13e42f'] = 'En stock';
|
||||
$_MODULE['<{ekomi}prestashop>badge_e990b6285ed2a575c561235378a5e691'] = 'hors stock';
|
||||
$_MODULE['<{ekomi}prestashop>badge_975a5e2536227d465c380b436ef6cee8'] = 'Note(s) et commentaire(s)';
|
||||
$_MODULE['<{ekomi}prestashop>badge_213653c8a5ddcc1351796e0ab610af93'] = 'Moyenne :';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3e61afd38fcb5eca62efcfe46fc6a3c9'] = 'Basé sur';
|
||||
$_MODULE['<{ekomi}prestashop>badge_8f1b2335e60c5e570169352d353aee66'] = 'note(s)';
|
||||
$_MODULE['<{ekomi}prestashop>badge_be5d5d37542d75f93a87094459f76678'] = 'et';
|
||||
$_MODULE['<{ekomi}prestashop>badge_1c991fdc72deb81c3a3025f23a43af0c'] = 'commentaire(s)';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Date';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Commentaire';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Un client à noter ce produit mais n\'a pas laissé de commentaire, ou le commentaire est en attente de modération.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Aucun avis client actuellement';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Avis eKomi';
|
BIN
www/modules/ekomi/img/PDF.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
BIN
www/modules/ekomi/img/ekomi_logo.png
Normal file
After Width: | Height: | Size: 9.6 KiB |
BIN
www/modules/ekomi/img/ekomi_small.png
Normal file
After Width: | Height: | Size: 1006 B |
11
www/modules/ekomi/img/index.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
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;
|
BIN
www/modules/ekomi/img/logo_webincolor_L260.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
www/modules/ekomi/img/page_white_text.png
Normal file
After Width: | Height: | Size: 342 B |
BIN
www/modules/ekomi/img/picto/1-star-yellow/picto.gif
Normal file
After Width: | Height: | Size: 815 B |
BIN
www/modules/ekomi/img/picto/2-star-green/picto.gif
Normal file
After Width: | Height: | Size: 814 B |
BIN
www/modules/ekomi/img/picto/3-star-blue/picto.gif
Normal file
After Width: | Height: | Size: 814 B |
BIN
www/modules/ekomi/img/picto/4-thumbs-yellow/picto.gif
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
www/modules/ekomi/img/picto/5-thumbs-green/picto.gif
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
www/modules/ekomi/img/picto/6-thumbs-blue/picto.gif
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
www/modules/ekomi/img/sitemap_color.png
Normal file
After Width: | Height: | Size: 406 B |
35
www/modules/ekomi/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
56
www/modules/ekomi/it.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Aggiunge un modulo eKomi, Recensioni prodotto eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Sicuro di voler disinstallare?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Competenza in e-commerce Prestashop ';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Ti serve aiuto? Hai bisogno di informazioni nello specifico?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Contatta il nostro supporto tecnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'via email: addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'via telefono:+33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Scarica la documentazione';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Impostazioni aggiornate con successo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Impostazioni eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Ti invitiamo a compilare i campi con i dati forniti da eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Non dimenticate di effettuare il log in nel pannello di controllo eKomi per configurare il modello email e l\'intervallo di giorni oltre cui mandare la richiesta feedback.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostra il modulo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Attivato';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Disattivato';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostra nascondi il modulo (gli ordini saranno trasmessi a eKomi in entrambi i casi)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Visualizza i Rich Snippets sulla pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Mostra il modulo Rich Snippets nella pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Mostra le recensioni sulla pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Mostra le recensioni sul prodotto nella pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limita le recensioni per periodo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Tutte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mese';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 mesi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 mesi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 anno';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Seleziona il periodo entro cui mostrare le recensioni';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Chiedi ai tuoi clienti di recensire il negozio e i prodotti';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Se disattivi questa opzione, sarà richiesto unicamente il rating dello negozio.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Immagine da scegliere per recensire';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleziona lo status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Seleziona lo status a cui dovrà corrispondere l\'invio di richiesta feedback';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Dove vuoi che appaia il modulo?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'Piè di pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Colonna sinistra';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Colonna destra';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Devi configurare i seguenti cronjobs ogni 6 ore:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Se hai un problema contatta il tuo amministratore di rete';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Qualora non abbiate un amministratore di rete, eKomi può supportarvi con l\'impostazione del Cron Job. Potete contattare il Supporto Tecnico eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Salva';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Il tuo indirizzo è stato disinscritto correttamente';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Data';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Commento';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Il cliente ha valutato il prodotto ma non ha lasciato una recensione, o questa è in attesa di mediazione';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Nessun commento';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Valutazioni eKomi';
|
11
www/modules/ekomi/js/index.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
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;
|
378
www/modules/ekomi/js/jquery.star-rating.js
Normal file
@ -0,0 +1,378 @@
|
||||
/*
|
||||
* jQuery Star Rating Plugin v3.14 - 2012-01-26 ###
|
||||
* Home: http://www.fyneworks.com/jquery/star-rating/
|
||||
* Code: http://code.google.com/p/jquery-star-rating-plugin/
|
||||
*
|
||||
* Dual licensed under the MIT and GPL licenses:
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
* http://www.gnu.org/licenses/gpl.html
|
||||
*/
|
||||
|
||||
/*# AVOID COLLISIONS #*/
|
||||
;if(window.jQuery) (function($)
|
||||
{
|
||||
/*# AVOID COLLISIONS #*/
|
||||
// IE6 Background Image Fix
|
||||
if ($.browser.msie) try { document.execCommand("BackgroundImageCache", false, true)} catch(e) { };
|
||||
// Thanks to http://www.visualjquery.com/rating/rating_redux.html
|
||||
|
||||
// plugin initialization
|
||||
jQuery144.fn.rating = function(options)
|
||||
{
|
||||
/*
|
||||
* Default Settings ###
|
||||
* eg.: You can override default control like this:
|
||||
* $.fn.rating.options.cancel = 'Clear';
|
||||
*/
|
||||
var defaults =
|
||||
{
|
||||
ratingField : null,
|
||||
starGif : 'star.gif', // split the star into how many parts
|
||||
split: 0, // split the star into how many parts
|
||||
|
||||
// Width of star image in case the plugin can't work it out. This can happen if
|
||||
// the jQuery.dimensions plugin is not available OR the image is hidden at installation
|
||||
starWidth: 5,
|
||||
|
||||
//NB.: These don't need to be pre-defined (can be undefined/null) so let's save some code!
|
||||
half: false, // just a shortcut to control.split = 2
|
||||
readOnly: false // disable rating plugin interaction/ values cannot be changed
|
||||
};
|
||||
|
||||
if(this.length==0) return this; // quick fail
|
||||
|
||||
// Handle API methods
|
||||
if(typeof arguments[0]=='string') {
|
||||
// Perform API methods on individual elements
|
||||
if(this.length>1) {
|
||||
var args = arguments;
|
||||
return this.each(function()
|
||||
{
|
||||
$.fn.rating.apply($(this), args);
|
||||
}
|
||||
);
|
||||
};
|
||||
// Invoke API method handler
|
||||
jQuery144.fn.rating[arguments[0]].apply(this, $.makeArray(arguments).slice(1) || []);
|
||||
// Quick exit...
|
||||
return this;
|
||||
};
|
||||
|
||||
// Initialize options for this call
|
||||
jQuery144.fn.rating.opts = $.extend(
|
||||
defaults,
|
||||
options
|
||||
);
|
||||
|
||||
// Allow multiple controls with the same name by making each call unique
|
||||
jQuery144.fn.rating.calls++;
|
||||
|
||||
// loop through each matched element
|
||||
this.not('.star-rating-applied').addClass('star-rating-applied').each(function()
|
||||
{
|
||||
// Load control parameters / find context / etc
|
||||
var control, input = jQuery144(this);
|
||||
var eid = (this.name || 'unnamed-rating').replace(/\[|\]/g, '_').replace(/^\_+|\_+$/g,'');
|
||||
var context = jQuery144(this.form || document.body);
|
||||
|
||||
// FIX: http://code.google.com/p/jquery-star-rating-plugin/issues/detail?id=23
|
||||
var raters = context.data('rating');
|
||||
if(!raters || raters.call!=jQuery144.fn.rating.calls) raters = { count:0, call:jQuery144.fn.rating.calls };
|
||||
var rater = raters[eid];
|
||||
|
||||
// if rater is available, verify that the control still exists
|
||||
if (rater) control = rater.data('rating');
|
||||
|
||||
if (rater && control) {// save a byte!
|
||||
// add star to control if rater is available and the same control still exists
|
||||
control.count++;
|
||||
}// save a byte!
|
||||
else {
|
||||
// create new control if first star or control element was removed/replaced
|
||||
|
||||
// Initialize options for this rater
|
||||
control = $.extend(
|
||||
jQuery144.fn.rating.opts,
|
||||
(jQuery144.metadata? input.metadata(): (jQuery144.meta?input.data():null)) || {},
|
||||
{ count:0, stars: [], inputs: [] }
|
||||
);
|
||||
|
||||
// increment number of rating controls
|
||||
control.serial = raters.count++;
|
||||
|
||||
// create rating element
|
||||
rater = jQuery144('<span class="star-rating-control"/>');
|
||||
input.before(rater);
|
||||
|
||||
// Mark element for initialization (once all stars are ready)
|
||||
rater.addClass('rating-to-be-drawn');
|
||||
|
||||
// Accept readOnly setting from 'disabled' property
|
||||
if(input.attr('disabled') || input.hasClass('disabled')) control.readOnly = true;
|
||||
|
||||
// Accept required setting from class property (class='required')
|
||||
if(input.hasClass('required')) control.required = true;
|
||||
|
||||
// Create 'cancel' button
|
||||
rater.append(
|
||||
control.cancel = jQuery144('')
|
||||
.mouseover(function(){
|
||||
jQuery144(this).rating('drain');
|
||||
jQuery144(this).addClass('star-rating-hover');
|
||||
//$(this).rating('focus');
|
||||
})
|
||||
.mouseout(function(){
|
||||
jQuery144(this).rating('draw');
|
||||
jQuery144(this).removeClass('star-rating-hover');
|
||||
//$(this).rating('blur');
|
||||
})
|
||||
.click(function(){
|
||||
jQuery144(this).rating('select');
|
||||
})
|
||||
.data('rating', control)
|
||||
);
|
||||
}; // first element of group
|
||||
|
||||
// insert rating star
|
||||
var star = jQuery144('<div class="star-rating rater-'+ control.serial +'"><a title="' + (this.title || this.value) + '">' + this.value + '</a></div>');
|
||||
rater.append(star);
|
||||
|
||||
jQuery144('.star-rating a').css({'background-image' : 'url(' + jQuery144.fn.rating.opts.starGif + ')', 'background-repeat' : 'no-repeat', 'background-position' : '0 0px'});
|
||||
|
||||
// inherit attributes from input element
|
||||
if (this.id) star.attr('id', this.id);
|
||||
if (this.className) star.addClass(this.className);
|
||||
|
||||
// Half-stars?
|
||||
if (control.half) control.split = 2;
|
||||
|
||||
// Prepare division control
|
||||
if (typeof control.split=='number' && control.split>0){
|
||||
var stw = (jQuery144.fn.width ? star.width() : 0) || control.starWidth;
|
||||
var spi = (control.count % control.split), spw = Math.floor(stw/control.split);
|
||||
// restrict star's width and hide overflow (already in CSS)
|
||||
// move the star left by using a negative margin
|
||||
// this is work-around to IE's stupid box model (position:relative doesn't work)
|
||||
star.width(spw).find('a').css({ 'margin-left':'-'+ (spi*spw) +'px' });
|
||||
}
|
||||
|
||||
// readOnly?
|
||||
if (control.readOnly) { //save a byte!
|
||||
// Mark star as readOnly so user can customize display
|
||||
star.addClass('star-rating-readonly');
|
||||
} //save a byte!
|
||||
else { //save a byte!
|
||||
// Enable hover css effects
|
||||
star.addClass('star-rating-live')
|
||||
// Attach mouse events
|
||||
.mouseover(function(){
|
||||
jQuery144(this).rating('fill');
|
||||
jQuery144(this).rating('focus');
|
||||
})
|
||||
.mouseout(function(){
|
||||
jQuery144(this).rating('draw');
|
||||
jQuery144(this).rating('blur');
|
||||
})
|
||||
.click(function(){
|
||||
jQuery144(this).rating('select');
|
||||
});
|
||||
} //save a byte!
|
||||
|
||||
// set current selection
|
||||
if (this.checked) control.current = star;
|
||||
|
||||
// set current select for links
|
||||
if (this.nodeName=="A"){
|
||||
if(jQuery144(this).hasClass('selected'))
|
||||
control.current = star;
|
||||
};
|
||||
|
||||
// hide input element
|
||||
input.hide();
|
||||
|
||||
// backward compatibility, form element to plugin
|
||||
input.change(function(){
|
||||
jQuery144(this).rating('select');
|
||||
});
|
||||
|
||||
// attach reference to star to input element and vice-versa
|
||||
star.data('rating.input', input.data('rating.star', star));
|
||||
|
||||
// store control information in form (or body when form not available)
|
||||
control.stars[control.stars.length] = star[0];
|
||||
control.inputs[control.inputs.length] = input[0];
|
||||
control.rater = raters[eid] = rater;
|
||||
control.context = context;
|
||||
|
||||
input.data('rating', control);
|
||||
rater.data('rating', control);
|
||||
star.data('rating', control);
|
||||
context.data('rating', raters);
|
||||
});
|
||||
// each element
|
||||
// Initialize ratings (first draw)
|
||||
jQuery144('.rating-to-be-drawn').rating('draw').removeClass('rating-to-be-drawn');
|
||||
|
||||
return this; // don't break the chain...
|
||||
};
|
||||
// fn.rating
|
||||
|
||||
/*
|
||||
* Core functionality and API ###
|
||||
*/
|
||||
jQuery144.extend(jQuery144.fn.rating,
|
||||
{
|
||||
// Used to append a unique serial number to internal control ID
|
||||
// each time the plugin is invoked so same name controls can co-exist
|
||||
calls: 0,
|
||||
|
||||
focus: function()
|
||||
{
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
if(!control.focus) return this; // quick fail if not required
|
||||
// find data for event
|
||||
var input = jQuery144(this).data('rating.input') || jQuery144( this.tagName=='INPUT' ? this : null );
|
||||
// focus handler, as requested by focusdigital.co.uk
|
||||
if(control.focus) control.focus.apply(input[0], [input.val(), jQuery144('a', input.data('rating.star'))[0]]);
|
||||
}, // $.fn.rating.focus
|
||||
|
||||
blur: function()
|
||||
{
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
if(!control.blur) return this; // quick fail if not required
|
||||
// find data for event
|
||||
var input = jQuery144(this).data('rating.input') || jQuery144( this.tagName=='INPUT' ? this : null );
|
||||
// blur handler, as requested by focusdigital.co.uk
|
||||
if(control.blur) control.blur.apply(input[0], [input.val(), jQuery144('a', input.data('rating.star'))[0]]);
|
||||
}, // $.fn.rating.blur
|
||||
|
||||
fill: function()
|
||||
{
|
||||
// fill to the current mouse position.
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
// do not execute when control is in read-only mode
|
||||
if(control.readOnly) return;
|
||||
// Reset all stars and highlight them up to this element
|
||||
this.rating('drain');
|
||||
this.prevAll().andSelf().filter('.rater-'+ control.serial).addClass('star-rating-hover');
|
||||
},// $.fn.rating.fill
|
||||
|
||||
drain: function()
|
||||
{
|
||||
// drain all the stars.
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
// do not execute when control is in read-only mode
|
||||
if(control.readOnly) return;
|
||||
// Reset all stars
|
||||
control.rater.children().filter('.rater-'+ control.serial).removeClass('star-rating-on').removeClass('star-rating-hover');
|
||||
},// $.fn.rating.drain
|
||||
|
||||
draw: function()
|
||||
{
|
||||
// set value and stars to reflect current selection
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
// Clear all stars
|
||||
this.rating('drain');
|
||||
// Set control value
|
||||
if(control.current){
|
||||
control.current.data('rating.input').attr('checked','checked');
|
||||
control.current.prevAll().andSelf().filter('.rater-'+ control.serial).addClass('star-rating-on');
|
||||
}
|
||||
else
|
||||
$(control.inputs).removeAttr('checked');
|
||||
// Show/hide 'cancel' button
|
||||
// control.cancel[control.readOnly || control.required?'hide':'show']();
|
||||
// Add/remove read-only classes to remove hand pointer
|
||||
this.siblings()[control.readOnly?'addClass':'removeClass']('star-rating-readonly');
|
||||
},// $.fn.rating.draw
|
||||
|
||||
select: function(value,wantCallBack)
|
||||
{
|
||||
// select a value
|
||||
// ***** MODIFICATION *****
|
||||
// Thanks to faivre.thomas - http://code.google.com/p/jquery-star-rating-plugin/issues/detail?id=27
|
||||
//
|
||||
// ***** LIST OF MODIFICATION *****
|
||||
// ***** added Parameter wantCallBack : false if you don't want a callback. true or undefined if you want postback to be performed at the end of this method'
|
||||
// ***** recursive calls to this method were like : ... .rating('select') it's now like .rating('select',undefined,wantCallBack); (parameters are set.)
|
||||
// ***** line which is calling callback
|
||||
// ***** /LIST OF MODIFICATION *****
|
||||
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
// do not execute when control is in read-only mode
|
||||
if(control.readOnly) return;
|
||||
// clear selection
|
||||
control.current = null;
|
||||
// programmatically (based on user input)
|
||||
if (typeof value!='undefined'){
|
||||
// select by index (0 based)
|
||||
if (typeof value=='number')
|
||||
return jQuery144(control.stars[value]).rating('select',undefined,wantCallBack);
|
||||
// select by literal value (must be passed as a string
|
||||
if (typeof value=='string')
|
||||
//return
|
||||
$.each(control.stars, function(){
|
||||
if(jQuery144(this).data('rating.input').val()==value) jQuery144(this).rating('select',undefined,wantCallBack);
|
||||
});
|
||||
}
|
||||
else {
|
||||
control.current = this[0].tagName=='INPUT' ? this.data('rating.star') : (this.is('.rater-'+ control.serial) ? this : null);
|
||||
}
|
||||
// Update rating control state
|
||||
this.data('rating', control);
|
||||
// Update display
|
||||
this.rating('draw');
|
||||
// find data for event
|
||||
var input = jQuery144( control.current ? control.current.data('rating.input') : null );
|
||||
// set note inf hidden field
|
||||
if (jQuery144.fn.rating.opts.ratingField != null) {
|
||||
jQuery144('#' + jQuery144.fn.rating.opts.ratingField).val(input.val());
|
||||
}
|
||||
// click callback, as requested here: http://plugins.jquery.com/node/1655
|
||||
if((wantCallBack ||wantCallBack == undefined) && control.callback) control.callback.apply(input[0], [input.val(), jQuery144('a', control.current)[0]]);// callback event
|
||||
//to ensure retro-compatibility, wantCallBack must be considered as true by default
|
||||
// **** /MODIFICATION *****
|
||||
},// $.fn.rating.select
|
||||
|
||||
readOnly: function(toggle, disable)
|
||||
{
|
||||
// make the control read-only (still submits value)
|
||||
var control = this.data('rating'); if(!control) return this;
|
||||
// setread-only status
|
||||
control.readOnly = toggle || toggle==undefined ? true : false;
|
||||
// enable/disable control value submission
|
||||
if(disable) jQuery144(control.inputs).attr("disabled", "disabled");
|
||||
else jQuery144(control.inputs).removeAttr("disabled");
|
||||
// Update rating control state
|
||||
this.data('rating', control);
|
||||
// Update display
|
||||
this.rating('draw');
|
||||
},// $.fn.rating.readOnly
|
||||
|
||||
disable: function()
|
||||
{
|
||||
// make read-only and never submit value
|
||||
this.rating('readOnly', true, true);
|
||||
},// $.fn.rating.disable
|
||||
|
||||
enable: function()
|
||||
{
|
||||
// make read/write and submit value
|
||||
this.rating('readOnly', false, false);
|
||||
}// $.fn.rating.select
|
||||
|
||||
});
|
||||
//fn.extends.rating
|
||||
|
||||
/*
|
||||
* Default implementation ###
|
||||
* The plugin will attach itself to file inputs
|
||||
* with the class 'multi' when the page loads
|
||||
*/
|
||||
$(function()
|
||||
{
|
||||
// $('input[type=radio].star').rating();
|
||||
});
|
||||
/*# AVOID COLLISIONS #*/
|
||||
})(jQuery);
|
||||
/*# AVOID COLLISIONS #*/
|
70
www/modules/ekomi/js/toolbar.js
Normal file
@ -0,0 +1,70 @@
|
||||
$(document).ready(function(){
|
||||
var message = $('.toolbarHead');
|
||||
var view = $(window);
|
||||
|
||||
// bind only if message exists. placeholder will be its parent
|
||||
view.bind("scroll resize", function(e)
|
||||
{
|
||||
message.each(function(el){
|
||||
if (message.length)
|
||||
{
|
||||
placeholder = $(this).parent();
|
||||
if(e.type == 'resize')
|
||||
$(this).css('width', $(this).parent().width());
|
||||
|
||||
placeholderTop = placeholder.offset().top;
|
||||
var viewTop = view.scrollTop() + 15;
|
||||
// here we force the toolbar to be "not fixed" when
|
||||
// the height of the window is really small (toolbar hiding the page is not cool)
|
||||
window_is_more_than_twice_the_toolbar = view.height() > message.parent().height() * 2;
|
||||
if (!$(this).hasClass("fix-toolbar") && (window_is_more_than_twice_the_toolbar && (viewTop > placeholderTop)))
|
||||
{
|
||||
$(this).css('width', $(this).width());
|
||||
// fixing parent height will prevent that annoying "pagequake" thing
|
||||
// the order is important : this has to be set before adding class fix-toolbar
|
||||
$(this).parent().css('height', $(this).parent().height());
|
||||
$(this).addClass("fix-toolbar");
|
||||
}
|
||||
else if ($(this).hasClass("fix-toolbar") && (!window_is_more_than_twice_the_toolbar || (viewTop <= placeholderTop)) )
|
||||
{
|
||||
$(this).removeClass("fix-toolbar");
|
||||
$(this).removeAttr('style');
|
||||
$(this).parent().removeAttr('style');
|
||||
}
|
||||
}
|
||||
});
|
||||
}); // end bind
|
||||
|
||||
// if count errors
|
||||
$('#hideError').live('click', function(e)
|
||||
{
|
||||
e.preventDefault();
|
||||
$('.error').hide('slow', function (){
|
||||
$('.error').remove();
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
// if count warnings
|
||||
$('#linkSeeMore').live('click', function(e){
|
||||
e.preventDefault();
|
||||
$('.warn #seeMore').show();
|
||||
$(this).hide();
|
||||
$('.warn #linkHide').show();
|
||||
return false;
|
||||
});
|
||||
$('#linkHide').live('click', function(e){
|
||||
e.preventDefault();
|
||||
$('.warn #seeMore').hide();
|
||||
$(this).hide();
|
||||
$('.warn #linkSeeMore').show();
|
||||
return false;
|
||||
});
|
||||
$('#hideWarn').live('click', function(e){
|
||||
e.preventDefault();
|
||||
$('.warn').hide('slow', function (){
|
||||
$('.warn').remove();
|
||||
});
|
||||
return false;
|
||||
});
|
||||
});
|
304
www/modules/ekomi/lib/ekomi_class.php
Normal file
@ -0,0 +1,304 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Ekomi - Main file
|
||||
*
|
||||
* @category Advertising and Marketing
|
||||
* @author Web in Color <addons@webincolor.fr>
|
||||
* @copyright 2013 WebInColor
|
||||
* @version 1.0
|
||||
* @link http://www.webincolor.fr/
|
||||
* @since File available since Release 1.0
|
||||
*/
|
||||
|
||||
// eKomi Version // Please start with "cust-" followed by you own version number. max 10 chars.
|
||||
define( 'EKOMI_VERSION', 'cust-1.0.0');
|
||||
define( 'EKOMI_API', 'http://api.ekomi.de/v2/wsdl');
|
||||
|
||||
class EkomiObject extends ObjectModel{
|
||||
|
||||
/** @var integer ekomi id*/
|
||||
public $id;
|
||||
|
||||
/** @var integer id shop*/
|
||||
public $id_shop;
|
||||
|
||||
/** @var string api_id*/
|
||||
public $api_id;
|
||||
|
||||
/** @var string api_key*/
|
||||
public $api_key;
|
||||
|
||||
/** @var string api_script*/
|
||||
public $api_script;
|
||||
|
||||
/** @var integer display block*/
|
||||
public $display_block;
|
||||
|
||||
/** @var integer display reviews*/
|
||||
public $display_reviews;
|
||||
|
||||
/** @var integer display rich snippet*/
|
||||
public $display_richsnippet;
|
||||
|
||||
/** @var string picto*/
|
||||
public $picto;
|
||||
|
||||
/** @var integer sending*/
|
||||
public $sending;
|
||||
|
||||
/** @var string range*/
|
||||
public $range;
|
||||
|
||||
/** @var string hook*/
|
||||
public $hook;
|
||||
|
||||
/** @var integer sending*/
|
||||
public $id_state;
|
||||
|
||||
/**
|
||||
* @see ObjectModel::$definition
|
||||
*/
|
||||
public static $definition = array(
|
||||
'table' => 'ekomi',
|
||||
'primary' => 'id_ekomi',
|
||||
'multilang' => true,
|
||||
'fields' => array(
|
||||
'id_shop' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt', 'required' => true),
|
||||
'display_block' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt'),
|
||||
'display_reviews' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt'),
|
||||
'display_richsnippet' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt'),
|
||||
'picto' => array('type' => self::TYPE_STRING, 'validate' => 'isString'),
|
||||
'sending' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt'),
|
||||
'range' => array('type' => self::TYPE_STRING, 'validate' => 'isString'),
|
||||
'hook' => array('type' => self::TYPE_STRING, 'validate' => 'isString', 'required' => true),
|
||||
'id_state' => array('type' => self::TYPE_INT, 'validate' => 'isunsignedInt', 'required' => true),
|
||||
|
||||
// Lang fields
|
||||
'api_id' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isString'),
|
||||
'api_key' => array('type' => self::TYPE_STRING, 'lang' => true, 'validate' => 'isString'),
|
||||
'api_script' => array('type' => self::TYPE_HTML, 'lang' => true, 'validate' => 'isString'),
|
||||
)
|
||||
);
|
||||
|
||||
static public function getByIdShop($id_shop)
|
||||
{
|
||||
$id = Db::getInstance()->getValue('SELECT `id_ekomi` FROM `'._DB_PREFIX_.'ekomi` WHERE `id_shop` ='.(int)$id_shop);
|
||||
if ($id)
|
||||
return new EkomiObject((int)$id);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getConfigurationByIdLand()
|
||||
{
|
||||
$result = Db::getInstance()->ExecuteS('SELECT `api_id`,`api_key` FROM `'._DB_PREFIX_.'ekomi_lang` WHERE `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.$this->context->language->id);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public function copyFromPost()
|
||||
{
|
||||
/* Classical fields */
|
||||
foreach ($_POST AS $key => $value)
|
||||
if (key_exists($key, $this) AND $key != 'id_'.$this->table)
|
||||
$this->{$key} = $value;
|
||||
|
||||
/* Multilingual fields */
|
||||
if (sizeof($this->fieldsValidateLang))
|
||||
{
|
||||
$languages = Language::getLanguages(false);
|
||||
foreach ($languages AS $language)
|
||||
foreach ($this->fieldsValidateLang AS $field => $validation)
|
||||
if (isset($_POST[$field.'_'.(int)($language['id_lang'])]))
|
||||
$this->{$field}[(int)($language['id_lang'])] = $_POST[$field.'_'.(int)($language['id_lang'])];
|
||||
}
|
||||
}
|
||||
|
||||
public function getVersion(){
|
||||
if(_PS_VERSION_ > 1.3 AND _PS_VERSION_ <= 1.4) return 1.4;
|
||||
if(_PS_VERSION_ > 1.4 AND _PS_VERSION_ <= 1.5) return 1.5;
|
||||
return 1.3;
|
||||
}
|
||||
|
||||
public function send_product( $product, $id_lang, $link ) {
|
||||
|
||||
$productObj = new Product(intval($product['product_id']), true);
|
||||
$imageObj = new Image($product['image']->id_image);
|
||||
|
||||
if (Validate::isLoadedObject($productObj))
|
||||
{
|
||||
$productData = array(
|
||||
'product_id' => $productObj->id,
|
||||
'product_name' => $productObj->name[(int)Configuration::get('PS_LANG_DEFAULT')],
|
||||
'product_other' => array(
|
||||
'image_url'=> (Configuration::get('PS_SSL_ENABLED') ? 'https://'.$_SERVER['HTTP_HOST']._THEME_PROD_DIR_.$imageObj->getExistingImgPath().'-'.($this->getVersion() > 1.4 ? 'thickbox_default':'thickbox').'.jpg' : ''), // HTTPS(!!!), max. 150x150px (for ekomi review page)
|
||||
'brand_name'=>$productObj->manufacturer_name, // Brand name (for google products)
|
||||
'product_ids'=>array( // (for google products)
|
||||
'mpn'=>'', // Manufacturer's Part Number
|
||||
'upc'=>$productObj->upc, // Universal Product Code
|
||||
'ean'=>$productObj->ean13, // European Article Number
|
||||
'isbn'=>'', // International Standard Book Number
|
||||
'gbase'=>'' // Google BaseID
|
||||
), // Product IDs
|
||||
'links'=>array(
|
||||
array('rel'=>'canonical', 'type'=>'text/html', 'href'=>$link->getProductLink(intval($productObj->id), $productObj->link_rewrite[(int)Configuration::get('PS_LANG_DEFAULT')], $productObj->ean13)), // Link to product (for google products)
|
||||
array('rel'=>'related', 'type'=>'image/(gif|jpg)', 'href'=>Tools::getProtocol().$_SERVER['HTTP_HOST']._THEME_PROD_DIR_.$imageObj->getExistingImgPath().'-'.($this->getVersion() > 1.4 ? 'thickbox_default':'thickbox').'.jpg') // Product image, can occur several times (for google products) // PLEASE MAKE SURE TO SET CORRECT FILE TYPE (image/gif, image/jpg etc.)
|
||||
), // ProductLinks
|
||||
),
|
||||
);
|
||||
}
|
||||
else
|
||||
return false;
|
||||
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_product = $wsdl->putProduct($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION, utf8_encode($productData['product_id']), utf8_encode($productData['product_name']), utf8_encode(serialize($productData['product_other'])));
|
||||
$ret = unserialize( utf8_decode( $send_product ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function send_order( $order_id, $id_lang ) {
|
||||
|
||||
$order = new Order((int)$order_id);
|
||||
if($this->sending)
|
||||
{
|
||||
if (Validate::isLoadedObject($order))
|
||||
$products = $order->getProducts();
|
||||
else
|
||||
return false;
|
||||
|
||||
if(isset($products))
|
||||
{
|
||||
$product_ids = '';
|
||||
foreach($products as $product)
|
||||
{
|
||||
$product_ids .= $product['product_id'].',';
|
||||
}
|
||||
$product_ids = substr($product_ids, 0, -1);
|
||||
}
|
||||
}
|
||||
else
|
||||
$product_ids = '';
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_order = $wsdl->putOrder($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION, $order_id, $product_ids);
|
||||
$ret = unserialize( utf8_decode( $send_order ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function putEmailData ( $order_id, $customer_id, $link, $id_lang)
|
||||
{
|
||||
$customer = new Customer((int)$customer_id);
|
||||
|
||||
//We insert data in cron tab Job
|
||||
if (Validate::isLoadedObject($customer))
|
||||
{
|
||||
$sql = 'INSERT INTO `'._DB_PREFIX_.'wic_ekomi_order_email` (`id_order`, `id_customer`, `ekomi_link`, `date_add`, `id`, `id_shop`, `id_lang`) VALUES ('.(int)$order_id.', '.(int)$customer->id.', \''.$link.'\', NOW(), NULL, '.$this->id_shop.', '.(int)$id_lang.');';
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
}
|
||||
|
||||
public function send_settings_request($id_lang)
|
||||
{
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_settings_request = $wsdl->getSettings($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION);
|
||||
$ret = unserialize( utf8_decode( $send_settings_request ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function getOrders($delay, $id_lang)
|
||||
{
|
||||
$sql = 'SELECT * FROM `'._DB_PREFIX_.'wic_ekomi_order_email` WHERE DATE_SUB(NOW(),INTERVAL '.(int)$delay.' DAY) >= `date_add` AND `date_send` IS NULL AND `id_lang` = '.(int)$id_lang.' AND `id_shop` = '.$this->id_shop;
|
||||
$ret = Db::getInstance()->Executes($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public function updateSendEmailOrder ( $order_id, $ekomi_send_order_id)
|
||||
{
|
||||
$sql = 'UPDATE `'._DB_PREFIX_.'wic_ekomi_order_email` SET `date_send` = NOW() WHERE `id` = '.$ekomi_send_order_id.' AND `id_order` = '.$order_id.';';
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
|
||||
/*
|
||||
* Access the eKomi API to check for new feedback
|
||||
*
|
||||
* You can find your eKomi API inteface ID and interface password in your
|
||||
* eKomi customer area on the right hand side.
|
||||
*/
|
||||
public function check_product_feedback()
|
||||
{
|
||||
Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `id_shop` = '.$this->id_shop);
|
||||
|
||||
foreach($this->api_id as $key=>$value)
|
||||
{
|
||||
$url = 'http://api.ekomi.de/get_productfeedback.php?interface_id='.$value.'&interface_pw='.$this->api_key[$key].'&version='.EKOMI_VERSION.'&type=csv'.($this->range ? '&range='.$this->range : '').'&charset=utf-8';
|
||||
|
||||
if (($handle = fopen($url, "r")) !== FALSE)
|
||||
{
|
||||
while (($data = fgetcsv($handle, 2048, ",")) !== FALSE)
|
||||
{
|
||||
if(isset($data[0]))
|
||||
{
|
||||
$sql = 'INSERT INTO `'._DB_PREFIX_.'wic_ekomi_product_reviews`
|
||||
(`date_add`,`order_id`,`product_id`,`stars`,`review`,`id_shop`,`id_lang` )
|
||||
VALUES
|
||||
(\'' . date('Y-m-d H:i:s',$data[0]) .'\',
|
||||
\'' . pSql($data[1]) . '\',
|
||||
\'' . pSql($data[2]) . '\',
|
||||
\'' . pSql($data[3]) . '\',
|
||||
\'' . pSql($data[4]) . '\',
|
||||
\'' . $this->id_shop . '\',
|
||||
\'' . (int)$key . '\'
|
||||
);';
|
||||
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
}
|
||||
fclose($handle);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getReviews($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT * FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->ExecuteS($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getRating($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT AVG( `stars` ) AS `avg` FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->getValue($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getCount($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT COUNT( `id` ) FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->getValue($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
332
www/modules/ekomi/lib/ekomi_class_backward.php
Normal file
@ -0,0 +1,332 @@
|
||||
<?php
|
||||
/**
|
||||
* Module Ekomi - Main file
|
||||
*
|
||||
* @category Advertising and Marketing
|
||||
* @author Web in Color <addons@webincolor.fr>
|
||||
* @copyright 2013 WebInColor
|
||||
* @version 1.0
|
||||
* @link http://www.webincolor.fr/
|
||||
* @since File available since Release 1.0
|
||||
*/
|
||||
|
||||
// eKomi Version // Please start with "cust-" followed by you own version number. max 10 chars.
|
||||
define( 'EKOMI_VERSION', 'cust-1.0.0');
|
||||
define( 'EKOMI_API', 'http://api.ekomi.de/v2/wsdl');
|
||||
|
||||
class EkomiObject extends ObjectModel{
|
||||
|
||||
/** @var integer ekomi id*/
|
||||
public $id = 1;
|
||||
|
||||
/** @var integer id shop*/
|
||||
public $id_shop = 1;
|
||||
|
||||
/** @var string api_id*/
|
||||
public $api_id;
|
||||
|
||||
/** @var string api_key*/
|
||||
public $api_key;
|
||||
|
||||
/** @var string api_script*/
|
||||
public $api_script;
|
||||
|
||||
/** @var integer display block*/
|
||||
public $display_block;
|
||||
|
||||
/** @var integer display reviews*/
|
||||
public $display_reviews;
|
||||
|
||||
/** @var integer display rich snippet*/
|
||||
public $display_richsnippet;
|
||||
|
||||
/** @var string picto*/
|
||||
public $picto;
|
||||
|
||||
/** @var integer sending*/
|
||||
public $sending;
|
||||
|
||||
/** @var string range*/
|
||||
public $range;
|
||||
|
||||
/** @var string hook*/
|
||||
public $hook;
|
||||
|
||||
/** @var integer sending*/
|
||||
public $id_state;
|
||||
|
||||
/**
|
||||
* @see ObjectModel::$definition
|
||||
*/
|
||||
protected $fieldsValidate = array('id_shop' => 'isUnsignedInt','display_block' => 'isUnsignedInt', 'display_reviews' => 'isUnsignedInt', 'display_richsnippet' => 'isUnsignedInt', 'picto' => 'isString', 'sending' => 'isUnsignedInt', 'range' => 'isString', 'hook' => 'isString', 'id_state' => 'isUnsignedInt' );
|
||||
protected $fieldsRequiredLang = array('api_id', 'api_key', 'api_script');
|
||||
protected $fieldsSizeLang = array('api_id' => 10, 'api_key' => 255, 'api_script' => 10000);
|
||||
protected $fieldsValidateLang = array('api_id' => 'isString', 'api_key' => 'isString', 'api_script' => 'isString');
|
||||
|
||||
protected $table = 'ekomi';
|
||||
protected $identifier = 'id_ekomi';
|
||||
|
||||
public function getFields()
|
||||
{
|
||||
parent::validateFields();
|
||||
$fields['id_shop'] = (int)$this->id_shop;
|
||||
$fields['display_block'] = (int)$this->display_block;
|
||||
$fields['display_reviews'] = (int)$this->display_reviews;
|
||||
$fields['display_richsnippet'] = (int)$this->display_richsnippet;
|
||||
$fields['picto'] = $this->picto;
|
||||
$fields['sending'] = (int)$this->sending;
|
||||
$fields['range'] = $this->range;
|
||||
$fields['hook'] = $this->hook;
|
||||
$fields['id_state'] = (int)$this->id_state;
|
||||
return $fields;
|
||||
}
|
||||
|
||||
public function getTranslationsFieldsChild()
|
||||
{
|
||||
parent::validateFieldsLang();
|
||||
|
||||
$fieldsArray = array('api_id', 'api_key', 'api_script');
|
||||
$fields = array();
|
||||
$languages = Language::getLanguages(false);
|
||||
$defaultLanguage = (int)(Configuration::get('PS_LANG_DEFAULT'));
|
||||
foreach ($languages as $language)
|
||||
{
|
||||
$fields[$language['id_lang']]['id_lang'] = (int)($language['id_lang']);
|
||||
$fields[$language['id_lang']][$this->identifier] = (int)($this->id);
|
||||
foreach ($fieldsArray as $field)
|
||||
{
|
||||
if (!Validate::isTableOrIdentifier($field))
|
||||
die(Tools::displayError());
|
||||
if (isset($this->{$field}[$language['id_lang']]) AND !empty($this->{$field}[$language['id_lang']]))
|
||||
$fields[$language['id_lang']][$field] = pSQL($this->{$field}[$language['id_lang']], true);
|
||||
elseif (in_array($field, $this->fieldsRequiredLang))
|
||||
$fields[$language['id_lang']][$field] = pSQL($this->{$field}[$defaultLanguage], true);
|
||||
else
|
||||
$fields[$language['id_lang']][$field] = '';
|
||||
}
|
||||
}
|
||||
return $fields;
|
||||
}
|
||||
|
||||
static public function getByIdShop($id_shop)
|
||||
{
|
||||
$id = Db::getInstance()->getValue('SELECT `id_ekomi` FROM `'._DB_PREFIX_.'ekomi` WHERE `id_shop` ='.(int)$id_shop);
|
||||
if ($id)
|
||||
return new EkomiObject((int)$id);
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getConfigurationByIdLand()
|
||||
{
|
||||
$result = Db::getInstance()->ExecuteS('SELECT `api_id`,`api_key` FROM `'._DB_PREFIX_.'ekomi_lang` WHERE `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.$this->context->language->id);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public function copyFromPost()
|
||||
{
|
||||
/* Classical fields */
|
||||
foreach ($_POST AS $key => $value)
|
||||
if (key_exists($key, $this) AND $key != 'id_'.$this->table)
|
||||
$this->{$key} = $value;
|
||||
|
||||
/* Multilingual fields */
|
||||
if (sizeof($this->fieldsValidateLang))
|
||||
{
|
||||
$languages = Language::getLanguages(false);
|
||||
foreach ($languages AS $language)
|
||||
foreach ($this->fieldsValidateLang AS $field => $validation)
|
||||
if (isset($_POST[$field.'_'.(int)($language['id_lang'])]))
|
||||
$this->{$field}[(int)($language['id_lang'])] = $_POST[$field.'_'.(int)($language['id_lang'])];
|
||||
}
|
||||
}
|
||||
|
||||
public function getVersion(){
|
||||
if(_PS_VERSION_ > 1.3 AND _PS_VERSION_ <= 1.4) return 1.4;
|
||||
if(_PS_VERSION_ > 1.4 AND _PS_VERSION_ <= 1.5) return 1.5;
|
||||
return 1.3;
|
||||
}
|
||||
|
||||
public function send_product( $product, $id_lang, $link ) {
|
||||
|
||||
$productObj = new Product(intval($product['product_id']), true);
|
||||
$imageObj = new Image($product['image']->id_image);
|
||||
|
||||
if (Validate::isLoadedObject($productObj))
|
||||
{
|
||||
$productData = array(
|
||||
'product_id' => $productObj->id,
|
||||
'product_name' => $productObj->name[(int)Configuration::get('PS_LANG_DEFAULT')],
|
||||
'product_other' => array(
|
||||
'image_url'=> (Configuration::get('PS_SSL_ENABLED') ? 'https://'.$_SERVER['HTTP_HOST']._THEME_PROD_DIR_.$imageObj->getExistingImgPath().'-'.($this->getVersion() > 1.4 ? 'thickbox_default':'thickbox').'.jpg' : ''), // HTTPS(!!!), max. 150x150px (for ekomi review page)
|
||||
'brand_name'=>$productObj->manufacturer_name, // Brand name (for google products)
|
||||
'product_ids'=>array( // (for google products)
|
||||
'mpn'=>'', // Manufacturer's Part Number
|
||||
'upc'=>$productObj->upc, // Universal Product Code
|
||||
'ean'=>$productObj->ean13, // European Article Number
|
||||
'isbn'=>'', // International Standard Book Number
|
||||
'gbase'=>'' // Google BaseID
|
||||
), // Product IDs
|
||||
'links'=>array(
|
||||
array('rel'=>'canonical', 'type'=>'text/html', 'href'=>$link->getProductLink(intval($productObj->id), $productObj->link_rewrite[(int)Configuration::get('PS_LANG_DEFAULT')], $product->ean13)), // Link to product (for google products)
|
||||
array('rel'=>'related', 'type'=>'image/(gif|jpg)', 'href'=>Tools::getProtocol().$_SERVER['HTTP_HOST']._THEME_PROD_DIR_.$imageObj->getExistingImgPath().'-'.($this->getVersion() > 1.4 ? 'thickbox_default':'thickbox').'.jpg') // Product image, can occur several times (for google products) // PLEASE MAKE SURE TO SET CORRECT FILE TYPE (image/gif, image/jpg etc.)
|
||||
), // ProductLinks
|
||||
),
|
||||
);
|
||||
}
|
||||
else
|
||||
return false;
|
||||
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_product = $wsdl->putProduct($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION, utf8_encode($productData['product_id']), utf8_encode($productData['product_name']), utf8_encode(serialize($productData['product_other'])));
|
||||
$ret = unserialize( utf8_decode( $send_product ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function send_order( $order_id, $id_lang ) {
|
||||
|
||||
$order = new Order((int)$order_id);
|
||||
if($this->sending)
|
||||
{
|
||||
if (Validate::isLoadedObject($order))
|
||||
$products = $order->getProducts();
|
||||
else
|
||||
return false;
|
||||
|
||||
if(isset($products))
|
||||
{
|
||||
$product_ids = '';
|
||||
foreach($products as $product)
|
||||
{
|
||||
$product_ids .= $product['product_id'].',';
|
||||
}
|
||||
$product_ids = substr($product_ids, 0, -1);
|
||||
}
|
||||
}
|
||||
else
|
||||
$product_ids = '';
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_order = $wsdl->putOrder($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION, $order_id, $product_ids);
|
||||
$ret = unserialize( utf8_decode( $send_order ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function putEmailData ( $order_id, $customer_id, $link, $id_lang)
|
||||
{
|
||||
$customer = new Customer((int)$customer_id);
|
||||
|
||||
//We insert data in cron tab Job
|
||||
if (Validate::isLoadedObject($customer))
|
||||
{
|
||||
$sql = 'INSERT INTO `'._DB_PREFIX_.'wic_ekomi_order_email` (`id_order`, `id_customer`, `ekomi_link`, `date_add`, `id`, `id_shop`, `id_lang`) VALUES ('.(int)$order_id.', '.(int)$customer->id.', \''.$link.'\', NOW(), NULL, '.$this->id_shop.', '.(int)$id_lang.');';
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
}
|
||||
|
||||
public function send_settings_request($id_lang)
|
||||
{
|
||||
$wsdl = new SoapClient(EKOMI_API, array('exceptions' => 0));
|
||||
$send_settings_request = $wsdl->getSettings($this->api_id[$id_lang].'|'.$this->api_key[$id_lang], EKOMI_VERSION);
|
||||
$ret = unserialize( utf8_decode( $send_settings_request ) );
|
||||
|
||||
return $ret;
|
||||
}
|
||||
|
||||
public function getOrders($delay, $id_lang)
|
||||
{
|
||||
$sql = 'SELECT * FROM `'._DB_PREFIX_.'wic_ekomi_order_email` WHERE DATE_SUB(NOW(),INTERVAL '.(int)$delay.' DAY) >= `date_add` AND `date_send` IS NULL AND `id_lang` = '.(int)$id_lang.' AND `id_shop` = '.$this->id_shop;
|
||||
$ret = Db::getInstance()->Executes($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
public function updateSendEmailOrder ( $order_id, $ekomi_send_order_id)
|
||||
{
|
||||
$sql = 'UPDATE `'._DB_PREFIX_.'wic_ekomi_order_email` SET `date_send` = NOW() WHERE `id` = '.$ekomi_send_order_id.' AND `id_order` = '.$order_id.';';
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
|
||||
/*
|
||||
* Access the eKomi API to check for new feedback
|
||||
*
|
||||
* You can find your eKomi API inteface ID and interface password in your
|
||||
* eKomi customer area on the right hand side.
|
||||
*/
|
||||
public function check_product_feedback()
|
||||
{
|
||||
Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `id_shop` = '.$this->id_shop);
|
||||
|
||||
foreach($this->api_id as $key=>$value)
|
||||
{
|
||||
$url = 'http://api.ekomi.de/get_productfeedback.php?interface_id='.$value.'&interface_pw='.$this->api_key[$key].'&version='.EKOMI_VERSION.'&type=csv'.($this->range ? '&range='.$this->range : '').'&charset=utf-8';
|
||||
|
||||
if (($handle = fopen($url, "r")) !== FALSE)
|
||||
{
|
||||
while (($data = fgetcsv($handle, 2048, ",")) !== FALSE)
|
||||
{
|
||||
if(isset($data[0]))
|
||||
{
|
||||
$sql = 'INSERT INTO `'._DB_PREFIX_.'wic_ekomi_product_reviews`
|
||||
(`date_add`,`order_id`,`product_id`,`stars`,`review`,`id_shop`,`id_lang` )
|
||||
VALUES
|
||||
(\'' . date('Y-m-d H:i:s',$data[0]) .'\',
|
||||
\'' . pSql($data[1]) . '\',
|
||||
\'' . pSql($data[2]) . '\',
|
||||
\'' . pSql($data[3]) . '\',
|
||||
\'' . pSql($data[4]) . '\',
|
||||
\'' . $this->id_shop . '\',
|
||||
\'' . (int)$key . '\'
|
||||
);';
|
||||
|
||||
Db::getInstance()->Execute($sql);
|
||||
}
|
||||
}
|
||||
fclose($handle);
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public function getReviews($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT * FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->ExecuteS($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getRating($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT AVG( `stars` ) AS `avg` FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->getValue($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getCount($id_product,$id_lang)
|
||||
{
|
||||
$sql= 'SELECT COUNT( `id` ) FROM `'._DB_PREFIX_.'wic_ekomi_product_reviews` WHERE `product_id` = '.(int)$id_product.' AND `id_shop` ='.(int)$this->id_shop.' AND `id_lang` = '.(int)$id_lang;
|
||||
$ret = Db::getInstance()->getValue($sql);
|
||||
|
||||
if($ret)
|
||||
return $ret;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
?>
|
11
www/modules/ekomi/lib/index.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
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;
|
BIN
www/modules/ekomi/logo.gif
Normal file
After Width: | Height: | Size: 259 B |
BIN
www/modules/ekomi/logo.png
Normal file
After Width: | Height: | Size: 3.9 KiB |
19
www/modules/ekomi/mails/en/ekomi.html
Normal file
@ -0,0 +1,19 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>Message of {shop_name}</title>
|
||||
</head>
|
||||
<body>
|
||||
<table style="font-family:Verdana,sans-serif; font-size:11px; color:#374953; width: 550px;">
|
||||
<tr>
|
||||
<td align="left">
|
||||
{htmlContent}
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>To stop receiving this email thank you to click here: <a href="{url}?id_customer={idcustomer}">unsubscribe</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
5
www/modules/ekomi/mails/en/ekomi.txt
Normal file
@ -0,0 +1,5 @@
|
||||
** Message from the store {shop_name} **
|
||||
|
||||
{plainContent}
|
||||
|
||||
To stop receiving this email thank you to click here: {url}?id_customer={idcustomer}
|
35
www/modules/ekomi/mails/en/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
56
www/modules/ekomi/nl.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'voeg een eKomi widget toe, eKomi product beoordelingen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Ben je zeker dat je het programma wil verwijderen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Hulp nodig?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Neem contact op met onze technische dienst';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'per e-mail: addons@webincolor.nl';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'per telefoon: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'gebruiksaanwijzing downloaden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'instellingen bijgewerkt';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'instellingen eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Voeg alsjeblieft de gegevens die eKomi je gegeven heeft';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API sleutel';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Vergeet a.u.b. niet om in uw eKomi klantenportaal in te loggen om de feedback uitnodigingse-mail en verzendtijd in te stellen.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'toon Widget';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'geactiveerd';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'desactiveerd';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'toon of verberg Widget (de bestellingen zullen aan eKomi doorgestuurd worden, ook als je de Widget desactiveert)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Toon rich snippet op productpagina.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Toon rich snippet block op productpagina.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Toon de beoordelingen op de product pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Toon de product beoordelingen op de product pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Begrenzing beoordelingen per periode';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Alle';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 maand';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 maanden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 maanden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 jaar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'selecteer de tijd van de beoordelingen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'vraag je klanten om de website en de producten te evalueren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Als je deze functie desactiveert zullen alleen de website beoordelingen gevraagd worden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'kies een pictogram voor de beoordeling';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'selecteer de status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'selecteer de status waarmee we de vraag sturen naar de klant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Waar zal de Widget verschijnen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'in de footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'aan de linke kant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'aan de rechte kant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Je moet de cronjob elke 6 uren laten uitvoeren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Als je een probleem hebt, bedankt om je netwerk administrator te contacteren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Mocht u technisch niet staat zijn om de Cronjob in te stellen, neem dan contact met ons technisch team op.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'opslaan';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'U heeft zich succesvol afgemeld.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'datum';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'comentaar';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'de beoordeling moet nog door eKomi gelezen worden';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'geen klantbeoordeling op dit moment';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Commentaar eKomi';
|
51
www/modules/ekomi/pt.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Adiciona um bloco eKomi, Ekomi produtos avaliados';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Tem certeza de que deseja desinstalar?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Precisa de ajuda? Você tem uma necessidade específica?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Contacte o nosso apoio técnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'por e-mail: addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'por telefone: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Baixe a documentação';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configurações atualizadas';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configurações Ekomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Por favor, preencha o formulário com os dados que eKomi lhe dá.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'eKomi script';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Não se esqueça de entrar em sua interface de eKomi para configurar o tipo de e-mail, assim como o momento do envio deste e-mail.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostrar bloco';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Enabled';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Disabled';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostrar ou não mostrar o bloco (os pedidos serão enviados para eKomi se você optar por ocultar ou exibir o bloco).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Mostrar rich snippet na página do produto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Mostrar bloco rich snippet na página do produto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Mostrar comentários na página do produto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Mostrar produtos avaliados na página do produto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limitar avaliações por período';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'tudo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mês';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 ano';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Selecione o período de exibição dos comentários';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Pergunte aos seus clientes para observar a loja e os produtos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Se você desativar essa opção, será exigido somente o rating da loja.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Pictograma para escolher rating';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleccione o status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Selecione o estado ao qual enviamos o pedido de ratting ao cliente';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Onde você mostraria este bloco?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'In footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Coluna Esquerda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Coluna Direita';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Você deve configurar o seguinte cron a cada 6 horas:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Se você tem um problema obrigado a contactar o seu administrador de rede.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Você não tem administrador de rede,a equipe eKomi ajuda você a configurar o Cron Job. Obrigado contatar a equipe técnica eKomi.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Salvar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Você foi retirado com sucesso.';
|
64
www/modules/ekomi/sql/install.php
Normal file
@ -0,0 +1,64 @@
|
||||
<?php
|
||||
$sql = array(
|
||||
'ekomi_product_reviews' =>
|
||||
'CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'wic_ekomi_product_reviews` (
|
||||
`date_add` datetime NOT NULL,
|
||||
`order_id` varchar(64) character set latin1 NOT NULL,
|
||||
`product_id` varchar(64) character set latin1 NOT NULL,
|
||||
`stars` int(1) unsigned NOT NULL,
|
||||
`review` text character set latin1 NOT NULL,
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`id_shop` int(11) unsigned NOT NULL,
|
||||
`id_lang` int(11) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;',
|
||||
|
||||
'ekomi_order_email' =>
|
||||
'CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'wic_ekomi_order_email` (
|
||||
`id_order` int(10) NOT NULL,
|
||||
`id_customer` int(10) NOT NULL,
|
||||
`ekomi_link` varchar(250) NOT NULL,
|
||||
`date_add` datetime NOT NULL,
|
||||
`date_send` datetime NOT NULL,
|
||||
`id` int(11) unsigned NOT NULL auto_increment,
|
||||
`id_shop` int(11) unsigned NOT NULL,
|
||||
`id_lang` int(11) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;',
|
||||
|
||||
'ekomi' =>
|
||||
'CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'ekomi` (
|
||||
`id_ekomi` int(11) unsigned NOT NULL auto_increment,
|
||||
`id_shop` int(10) unsigned NOT NULL,
|
||||
`display_block` int(1) unsigned NULL,
|
||||
`display_reviews` int(1) unsigned NULL,
|
||||
`display_richsnippet` int(1) unsigned NULL,
|
||||
`picto` varchar(250) NOT NULL,
|
||||
`sending` int(1) unsigned NULL,
|
||||
`range` varchar(3) NULL,
|
||||
`hook` varchar(250) NOT NULL,
|
||||
`id_state` int(1) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id_ekomi`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;',
|
||||
|
||||
'ekomi_unsubscribe' =>
|
||||
'CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'ekomi_unsubscribe` (
|
||||
`id_ekomi_unsubscribe` int(11) unsigned NOT NULL auto_increment,
|
||||
`id_customer` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`id_ekomi_unsubscribe`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;',
|
||||
|
||||
'ekomi_lang' =>
|
||||
'CREATE TABLE IF NOT EXISTS `'._DB_PREFIX_.'ekomi_lang` (
|
||||
`id_ekomi` int(11) unsigned NOT NULL auto_increment,
|
||||
`id_lang` int(10) unsigned NOT NULL,
|
||||
`api_id` varchar(250) NOT NULL,
|
||||
`api_key` varchar(250) NOT NULL,
|
||||
`api_script` text character set utf8 NOT NULL,
|
||||
PRIMARY KEY (`id_ekomi`,`id_lang`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;',
|
||||
|
||||
'ekomi_insert' =>
|
||||
'INSERT INTO `'._DB_PREFIX_.'ekomi`(`id_ekomi`,`id_shop`,`display_block`,`display_reviews`,`picto`,`sending`,`range`,`hook`,`id_state`) VALUES (\'\','.$this->context->shop->id.',0,0,\'1-star-yellow\',0,0,\''.$this->default_hook.'\',5);'
|
||||
);
|
||||
?>
|
12
www/modules/ekomi/sql/uninstall.php
Normal file
@ -0,0 +1,12 @@
|
||||
<?php
|
||||
$sql = array(
|
||||
'ekomi_product_reviews' =>
|
||||
'DROP TABLE '._DB_PREFIX_.'wic_ekomi_product_reviews',
|
||||
'ekomi_order_email' =>
|
||||
'DROP TABLE '._DB_PREFIX_.'wic_ekomi_order_email',
|
||||
'ekomi' =>
|
||||
'DROP TABLE '._DB_PREFIX_.'ekomi',
|
||||
'ekomi_lang' =>
|
||||
'DROP TABLE '._DB_PREFIX_.'ekomi_lang'
|
||||
);
|
||||
?>
|
21
www/modules/ekomi/tools/ekomi_order_email.php
Normal file
@ -0,0 +1,21 @@
|
||||
<?php
|
||||
/**
|
||||
* @author Web In Color - addons@webincolor.fr
|
||||
* @version 1.0
|
||||
* @uses Prestashop modules
|
||||
* @since 1.0 - 10 août 2013
|
||||
* @package ekomi
|
||||
* @copyright Copyright © 2013, Web In Color
|
||||
*/
|
||||
|
||||
include_once(dirname(__FILE__).'/../../../config/config.inc.php');
|
||||
include_once(dirname(__FILE__).'/../../../init.php');
|
||||
include_once(dirname(__FILE__).'/../ekomi.php');
|
||||
|
||||
if(!Tools::getValue('token') || Tools::getValue('token') != Tools::getAdminToken('eKomi'))
|
||||
die('error');
|
||||
|
||||
$ekomi = new Ekomi();
|
||||
$ekomi->cronSendEmail();
|
||||
|
||||
?>
|
24
www/modules/ekomi/tools/ekomi_product_feedback.php
Normal file
@ -0,0 +1,24 @@
|
||||
<?php
|
||||
/**
|
||||
* @author Web In Color - addons@webincolor.fr
|
||||
* @version 1.0
|
||||
* @uses Prestashop modules
|
||||
* @since 1.0 - 10 août 2013
|
||||
* @package ekomi
|
||||
* @copyright Copyright © 2013, Web In Color
|
||||
*/
|
||||
|
||||
include_once(dirname(__FILE__).'/../../../config/config.inc.php');
|
||||
include_once(dirname(__FILE__).'/../../../init.php');
|
||||
include_once(dirname(__FILE__).'/../ekomi.php');
|
||||
|
||||
set_time_limit(0);
|
||||
|
||||
if(!Tools::getValue('token') || Tools::getValue('token') != Tools::getAdminToken('eKomi'))
|
||||
die('error');
|
||||
|
||||
$ekomi = new Ekomi();
|
||||
$ekomi->cronProductFeedBack();
|
||||
|
||||
|
||||
?>
|
56
www/modules/ekomi/translations/de.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Fügt einen eKomi Block hinzu, Ekomi Produktbewertungen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Sind Sie sich sicher, dass Sie die Deinstallation fortführen möchten?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'Verzeichnis';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Professioneller E-Commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Benötigen Sie Hilfe? Haben Sie einen speziellen Wunsch?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Kontaktieren Sie unseren technischen Support';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'per E-Mail: addon@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'per Telefon: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Dokumentation downloaden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Einstellungen aktualisiert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Ekomi Einstellungen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Bitte füllen Sie das Formular mit den Daten, die Sie von eKomi erhalten, aus.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'eKomi Skript';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Bitte vergessen Sie nicht sich in den eKomi Kundenbereich einzuloggen, um Ihre E-Mail Vorlage und die Versandverzögerung anzupassen.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Block anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Aktiviert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Deaktiviert';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Block anzeigen oder verbergen (Bestellungen werden an eKomi übermittelt, egal ob anzeigen oder verbergen ausgewählt wurde)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Rich Snippet auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Zeige Rich Snippet Block auf der Produktseite';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Bewertungen auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Produktbewertungen auf der Produktseite anzeigen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Bewertungen auf einen bestimmten Zeitraum begrenzen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Alle';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 Monat';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 Monate';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 Monate';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 Jahr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Anzeigezeitraum der Bewertungen auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Bitten Sie Ihre Kunden, Ihren Shop und Ihre Produkte zu bewerten';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Wenn Sie diese Option deaktivieren, ist nur die Bewertung Ihres Shops erforderlich.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Piktogramm für Bewertungen auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Status auswählen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Wählen Sie den Status aus, auf dem wir die Bewertungsanfrage an den Kunden senden sollen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Wo soll der Block erscheinen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'Im Footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Linke Spalte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Rechte Spalte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Bitte konfigurieren Sie den Cron auf alle 6 Stunden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Sollten Sie ein Problem haben, kontaktieren Sie bitte Ihren Netzwerk Administrator.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Wenn Sie keinen Netzwerk Administrator haben, eKomi wird Ihnen helfen Ihren Cronjob zu erstellen. Bitte kontaktieren Sie den technischen Support von eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Speichern';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Sie wurden erfolgreich abgemeldet.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Datum';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Kommentar';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Der Kunde hat das Produkt bewertet, aber keine Bewertung hinterlassen, oder die Bewertung befindet sich noch in der Überprüfung';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Es gibt keine neuen Kundenkommentare.';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Ekomi Kommentare';
|
56
www/modules/ekomi/translations/es.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Integra el servicio de valoraciones de eKomi para su tienda y para productos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = '¿Está seguro de que desea desinstalar?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'Directorio';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Experiencia en e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = '¿Necesita ayuda? ¿Tiene una necesidad específica?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Por favor contacte nuestro soporte técnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'por email:addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'por teléfono:+33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Descargar la documentación';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configuración actualizada';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configuración de eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Por favor complete el formulario con los datos proporcionados por eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'Script de eKomi ';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'No olvide configurar el Email con la encuesta y el retraso del mismo en el área de cliente de eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostrar bloque';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Habilitado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Deshabilitado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostrar u ocultar el bloque (información de pedido será enviada a eKomi si usted elige ocultar o mostrar el bloque).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Mostrar Rich Snippets de Google en la página de producto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Rich Snippets majora el posicionamiento de la página en los motores de búsqueda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Ver valoración en la página del producto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Ver valoración del producto en la página del producto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limite de valoración por periodo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Todo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 Mes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 Meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 Meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 Año';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Seleccione el período de las valoraciónes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Pedir a los clientes valorar la tienda y los productos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Si desactiva esta opción, sólo se pedirá la valoración de la tienda.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Pictograma escogido para la valoración';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleccione el estado';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Seleccione el estado del pedido para el cuál se debe enviar la encuesta';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = '¿Dónde aparecerá este bloque?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'En el pie de página';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Columna Izquierda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Columna Derecha';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Debe configurar los siguientes cron cada 6 horas:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Si tiene un problema por favor contacte con su administrador de red.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Si no dispone de un administrador de red, contacte al equipo de eKomi para que le ayuden a configurar los Cron Jobs';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Guardar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'No recibirá mas Emails';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Fecha';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Comentario';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'El cliente ha evaluado el producto, pero no se ha publicado una valoración o la valoración está pendiente de ser aprobada';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Todavía no hay opiniones';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Comentarios eKomi';
|
65
www/modules/ekomi/translations/fr.php
Normal file
@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Ajouter les avis boutique eKomi, et les avis produits eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Etes-vous certain de vouloir désinstaller ce module ?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'répertoire';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'L\'expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5e33a6721e6cfafe32f5c60d8e04120b'] = 'ekomi_fr.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Télécharger la documentation';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configuration mise à jour';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configuration eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Veuillez remplir le formulaire avec les informations fournies par eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API clé secrète';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'Script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'N\'oubliez pas de vous connecter à votre interface eKomi afin de configurer votre email type ainsi que le délai d\'envoi de cet email.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Afficher le bloc';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Afficher';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Cacher';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Afficher ou cacher le bloc (les commandes seront envoyés à eKomi que vous choississiez d\'afficher ou de cacher le bloc).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Afficher les rich snippet Google sur votre page produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Affiche un bloc rich snippet pour optimiser le référencement.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Afficher les avis produits sur la page produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Montrer à vos clients les avis produits de chaque produit';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limite des avis par période';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Tous';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 mois';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 an';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Choisissez la période d\'affichage des anciens avis';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Demander à vos clients de laisser un avis sur votre boutique et sur les produits commandés';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Si vous désactivez cette option, seul l\'avis sur la boutique sera demandé.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Picto à afficher pour les notes';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Sélectionner un statut';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Sélectionner le statut de commande à partir duquel un email sera envoyé au client. (Le délais d\'envoie après passage dans ce statut est configuré dans votre interface eKomi).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Où souhaitez-vous que le bloc apparaisse ?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'En pied de page';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Colonne de gauche';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Colonne de droite';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Vous devez configurer ces Cron Job toutes les 6 heures :';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Si vous avez un problème merci de contacter votre administrateur réseau.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Vous n\'avez d\'administrateur réseau, l\'équipe eKomi vous aide à configurer vos Cron Job. Merci de contacter l\'équipe technique eKomi.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Sauvegarder';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Vous avez été désinscrit avec succès.';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3adbdb3ac060038aa0e6e6c138ef9873'] = 'Catégorie';
|
||||
$_MODULE['<{ekomi}prestashop>badge_0b4fe4555e40761bd9cec80f158dd351'] = 'GTIN produit';
|
||||
$_MODULE['<{ekomi}prestashop>badge_a9342085fce8b27841fa4beff37d1158'] = 'Ref. produit';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3601146c4e948c32b6424d2c0a7f0118'] = 'Prix';
|
||||
$_MODULE['<{ekomi}prestashop>badge_11bca5941cb439cd23c93140a0959114'] = 'Stock :';
|
||||
$_MODULE['<{ekomi}prestashop>badge_69d08bd5f8cf4e228930935c3f13e42f'] = 'En stock';
|
||||
$_MODULE['<{ekomi}prestashop>badge_e990b6285ed2a575c561235378a5e691'] = 'hors stock';
|
||||
$_MODULE['<{ekomi}prestashop>badge_975a5e2536227d465c380b436ef6cee8'] = 'Note(s) et commentaire(s)';
|
||||
$_MODULE['<{ekomi}prestashop>badge_213653c8a5ddcc1351796e0ab610af93'] = 'Moyenne :';
|
||||
$_MODULE['<{ekomi}prestashop>badge_3e61afd38fcb5eca62efcfe46fc6a3c9'] = 'Basé sur';
|
||||
$_MODULE['<{ekomi}prestashop>badge_8f1b2335e60c5e570169352d353aee66'] = 'note(s)';
|
||||
$_MODULE['<{ekomi}prestashop>badge_be5d5d37542d75f93a87094459f76678'] = 'et';
|
||||
$_MODULE['<{ekomi}prestashop>badge_1c991fdc72deb81c3a3025f23a43af0c'] = 'commentaire(s)';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Date';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Commentaire';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Un client à noter ce produit mais n\'a pas laissé de commentaire, ou le commentaire est en attente de modération.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Aucun avis client actuellement';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Avis eKomi';
|
56
www/modules/ekomi/translations/it.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Aggiunge un modulo eKomi, Recensioni prodotto eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Sicuro di voler disinstallare?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Competenza in e-commerce Prestashop ';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Ti serve aiuto? Hai bisogno di informazioni nello specifico?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Contatta il nostro supporto tecnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'via email: addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'via telefono:+33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Scarica la documentazione';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Impostazioni aggiornate con successo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Impostazioni eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Ti invitiamo a compilare i campi con i dati forniti da eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Non dimenticate di effettuare il log in nel pannello di controllo eKomi per configurare il modello email e l\'intervallo di giorni oltre cui mandare la richiesta feedback.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostra il modulo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Attivato';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Disattivato';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostra nascondi il modulo (gli ordini saranno trasmessi a eKomi in entrambi i casi)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Visualizza i Rich Snippets sulla pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Mostra il modulo Rich Snippets nella pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Mostra le recensioni sulla pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Mostra le recensioni sul prodotto nella pagina del prodotto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limita le recensioni per periodo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Tutte';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mese';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 mesi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 mesi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 anno';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Seleziona il periodo entro cui mostrare le recensioni';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Chiedi ai tuoi clienti di recensire il negozio e i prodotti';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Se disattivi questa opzione, sarà richiesto unicamente il rating dello negozio.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Immagine da scegliere per recensire';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleziona lo status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Seleziona lo status a cui dovrà corrispondere l\'invio di richiesta feedback';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Dove vuoi che appaia il modulo?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'Piè di pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Colonna sinistra';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Colonna destra';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Devi configurare i seguenti cronjobs ogni 6 ore:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Se hai un problema contatta il tuo amministratore di rete';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Qualora non abbiate un amministratore di rete, eKomi può supportarvi con l\'impostazione del Cron Job. Potete contattare il Supporto Tecnico eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Salva';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Il tuo indirizzo è stato disinscritto correttamente';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'Data';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'Commento';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'Il cliente ha valutato il prodotto ma non ha lasciato una recensione, o questa è in attesa di mediazione';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'Nessun commento';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Valutazioni eKomi';
|
56
www/modules/ekomi/translations/nl.php
Normal file
@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'voeg een eKomi widget toe, eKomi product beoordelingen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Ben je zeker dat je het programma wil verwijderen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Hulp nodig?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Neem contact op met onze technische dienst';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'per e-mail: addons@webincolor.nl';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'per telefoon: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'gebruiksaanwijzing downloaden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'instellingen bijgewerkt';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'instellingen eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Voeg alsjeblieft de gegevens die eKomi je gegeven heeft';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API sleutel';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'script eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Vergeet a.u.b. niet om in uw eKomi klantenportaal in te loggen om de feedback uitnodigingse-mail en verzendtijd in te stellen.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'toon Widget';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'geactiveerd';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'desactiveerd';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'toon of verberg Widget (de bestellingen zullen aan eKomi doorgestuurd worden, ook als je de Widget desactiveert)';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Toon rich snippet op productpagina.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Toon rich snippet block op productpagina.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Toon de beoordelingen op de product pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Toon de product beoordelingen op de product pagina';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Begrenzing beoordelingen per periode';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'Alle';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 maand';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 maanden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 maanden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 jaar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'selecteer de tijd van de beoordelingen';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'vraag je klanten om de website en de producten te evalueren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Als je deze functie desactiveert zullen alleen de website beoordelingen gevraagd worden';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'kies een pictogram voor de beoordeling';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'selecteer de status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'selecteer de status waarmee we de vraag sturen naar de klant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Waar zal de Widget verschijnen?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'in de footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'aan de linke kant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'aan de rechte kant';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Je moet de cronjob elke 6 uren laten uitvoeren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Als je een probleem hebt, bedankt om je netwerk administrator te contacteren';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Mocht u technisch niet staat zijn om de Cronjob in te stellen, neem dan contact met ons technisch team op.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'opslaan';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'U heeft zich succesvol afgemeld.';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_44749712dbec183e983dcd78a7736c41'] = 'datum';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_0be8406951cdfda82f00f79328cf4efc'] = 'comentaar';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_e2e9255c8e561c48b72e31127d576d4a'] = 'de beoordeling moet nog door eKomi gelezen worden';
|
||||
$_MODULE['<{ekomi}prestashop>productcomment_08621d00a3a801b9159a11b8bbd69f89'] = 'geen klantbeoordeling op dit moment';
|
||||
$_MODULE['<{ekomi}prestashop>tab_fe27f57eb8626fe67f3acee5a0b2fc84'] = 'Commentaar eKomi';
|
51
www/modules/ekomi/translations/pt.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
|
||||
global $_MODULE;
|
||||
$_MODULE = array();
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c0858307dfd3d91768c79ec116820b60'] = 'eKomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_7debf9c1da31195374b655684e345181'] = 'Adiciona um bloco eKomi, Ekomi produtos avaliados';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_876f23178c29dc2552c0b48bf23cd9bd'] = 'Tem certeza de que deseja desinstalar?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_5f8f22b8cdbaeee8cf857673a9b6ba20'] = 'directory';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba0f1c34f839f38d571c357a57cd7b09'] = 'Expertise e-commerce Prestashop';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78d5b5d346779d083f096a51fca65275'] = 'Precisa de ajuda? Você tem uma necessidade específica?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_56d22c91f2838214164c233e7d4659a3'] = 'Contacte o nosso apoio técnico';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_654a5a8f6e0cf0260e03ad9b88cc8d46'] = 'por e-mail: addons@webincolor.fr';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d09eb2b6f2843c31e21e63122a32a3f7'] = 'por telefone: +33184171540';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_43ee11babb004a38a4865b972dc42bae'] = 'ekomi_en.pdf';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_78913420d3ede25b0463d047daa5913d'] = 'Baixe a documentação';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c888438d14855d7d96a2724ee9c306bd'] = 'Configurações atualizadas';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_081ebf41ed9445d8321ea84d6f139cf1'] = 'Configurações Ekomi';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_6a794dc942b2e8b4716dbc654e83d094'] = 'Por favor, preencha o formulário com os dados que eKomi lhe dá.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_17d66f1bab1a43720d5218b577342cb2'] = 'API ID';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d8ae4cd2f4418811eec5b9bed6d4512b'] = 'API KEY';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c48c140af813696592daafbabe6d8b9f'] = 'eKomi script';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_2f2289617c2ed5da8ab7a4740d6c4f48'] = 'Não se esqueça de entrar em sua interface de eKomi para configurar o tipo de e-mail, assim como o momento do envio deste e-mail.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00499580335bb81d749ef714325f94e8'] = 'Mostrar bloco';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Enabled';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b9f5c797ebbf55adccdd8539a65a0241'] = 'Disabled';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ced21fe73878a0139d427ab2927f6772'] = 'Mostrar ou não mostrar o bloco (os pedidos serão enviados para eKomi se você optar por ocultar ou exibir o bloco).';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b49714daf9e85a48ba47483ab9289c5d'] = 'Mostrar rich snippet na página do produto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_97fd35cbfc829cda3b250b110ed3618d'] = 'Mostrar bloco rich snippet na página do produto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_d7ce5bba30075e775fed96756c0a3880'] = 'Mostrar comentários na página do produto';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_8fa6d4c09783f4f5f48e362773ab3c46'] = 'Mostrar produtos avaliados na página do produto.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ba84a48bea183decd75d25ead37e21d3'] = 'Limitar avaliações por período';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b1c94ca2fbc3e78fc30069c8d0f01680'] = 'tudo';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1634e66b522edaa910370cc5581a47f1'] = '1 mês';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_de0353cab16c9faa68162dffe7b3ec08'] = '3 meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_9f7aa8ce719604f269027cacec634cf1'] = '6 meses';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_ca4c73c1f333c437a47c58afd0623530'] = '1 ano';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_1bdb29fd80b6192d0f81df9d571d67f3'] = 'Selecione o período de exibição dos comentários';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a6d18dbf14adbcc4f8d62808a3680926'] = 'Pergunte aos seus clientes para observar a loja e os produtos';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_86ba684bf9d4c502f317e2d2aa64ffff'] = 'Se você desativar essa opção, será exigido somente o rating da loja.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_be539e94f0906731ac48febdf52da454'] = 'Pictograma para escolher rating';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_71d6e53853bfedef15afdc50b6c86c39'] = 'Seleccione o status';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_bf9d2c2fd5f0274b1600b10fcbcd39f6'] = 'Selecione o estado ao qual enviamos o pedido de ratting ao cliente';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b923b078ea9a2c9f711530209a65bb2c'] = 'Onde você mostraria este bloco?';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_a0d5094115a52fd422df03cc6a24b093'] = 'In footer';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_e4abb55720e3790fe55982fec858d213'] = 'Coluna Esquerda';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_f16072c370ef52db2e329a87b5e7177a'] = 'Coluna Direita';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_55b81d42f2b053db3c8bf82a4feb01e4'] = 'Você deve configurar o seguinte cron a cada 6 horas:';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_b925cc115065689180f9fd7379fb6f48'] = 'Se você tem um problema obrigado a contactar o seu administrador de rede.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_87702337dd73f69c367e1449f7e89438'] = 'Você não tem administrador de rede,a equipe eKomi ajuda você a configurar o Cron Job. Obrigado contatar a equipe técnica eKomi.';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_c9cc8cce247e49bae79f15173ce97354'] = 'Salvar';
|
||||
$_MODULE['<{ekomi}prestashop>ekomi_unsubscribe_1118ff4cf5fbc197ebe02587566f537c'] = 'Você foi retirado com sucesso.';
|
35
www/modules/ekomi/views/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
@ -0,0 +1,6 @@
|
||||
<div class="block-center">
|
||||
<div class="unsubscribe-ekomi">
|
||||
<img src="/modules/ekomi/img/ekomi_logo.png" width="131" height="35" border="0" /><br/>
|
||||
{l s='You\'ve been successfully unsubscribed.' mod='ekomi'}
|
||||
</div>
|
||||
</div>
|
35
www/modules/ekomi/views/templates/front/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2011 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2011 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
54
www/modules/ekomi/views/templates/hooks/badge.tpl
Normal file
@ -0,0 +1,54 @@
|
||||
{if isset($badge)}
|
||||
{$badge}
|
||||
{/if}
|
||||
|
||||
{if !isset($display_reviews)}
|
||||
{if !isset($priceDisplayPrecision)}
|
||||
{assign var='priceDisplayPrecision' value=2}
|
||||
{/if}
|
||||
<div itemscope itemtype="http://data-vocabulary.org/Product" class="reviewsAgregate">
|
||||
<strong><span itemprop="name">{$product->name|escape:'htmlall'}</span></strong><br/>
|
||||
{if !empty($product->manufacturer_name)}<span itemprop="brand">{$product->manufacturer_name|escape:'htmlall'}</span><br/>{/if}
|
||||
{if !empty($product->meta_description)}<span itemprop="description">{$product->meta_description|escape:'htmlall'|truncate:60:"..."}</span><br/>{/if}
|
||||
{if !empty($product->category)}{l s='Category' mod='ekomi'} : <span itemprop="category" content="{$product->category|escape:'htmlall'}">{$product->category}</span><br/>{/if}
|
||||
{if (!empty($product->ean13) || !empty($product->upc))}
|
||||
{l s='Product GTIN' mod='ekomi'} :
|
||||
{if !empty($product->ean13)}
|
||||
<span itemprop="identifier" content="upc:{$product->ean13}">{$product->ean13}</span><br/>
|
||||
{elseif !empty($product->upc)}
|
||||
<span itemprop="identifier" content="upc:{$product->upc}">{$product->upc}</span><br/>
|
||||
{/if}
|
||||
{if !empty($product->reference)}
|
||||
{l s='Product Ref' mod='ekomi'} : <span itemprop="identifier" content="sku:{$product->reference}">{$product->reference}</span><br/>
|
||||
{/if}
|
||||
{/if}
|
||||
|
||||
<span itemprop="offerDetails" itemscope itemtype="http://data-vocabulary.org/Offer">
|
||||
<meta itemprop="currency" content="{$currencyIso}">
|
||||
{l s='Price' mod='ekomi'} : <span itemprop="price">{$product->getPrice(true, $smarty.const.NULL, $priceDisplayPrecision)} {$currencySign|html_entity_decode:2:"UTF-8"}</span><br/>
|
||||
{l s='Stock:' mod='ekomi'}
|
||||
{if $product->quantity > 0 || $product->stockManagement == 1}
|
||||
<span itemprop="availability" content="in_stock">{l s='In Stock' mod='ekomi'}</span><br/>
|
||||
{else}
|
||||
<span itemprop="availability" content="out_of_stock">{l s='Out of Stock' mod='ekomi'}</span>
|
||||
{/if}
|
||||
</span>
|
||||
<br />
|
||||
{if $count}
|
||||
<strong>{l s='Rating(s) and review(s)' mod='ekomi'} :</strong>
|
||||
<span itemscope itemtype="http://data-vocabulary.org/Review-aggregate">
|
||||
<span itemprop="rating" itemscope itemtype="http://data-vocabulary.org/Rating">
|
||||
<span class="ekomiBadgeRateBg" style="background: url({$pathStar}) repeat-x;">
|
||||
{section name="stars" loop=$rating}
|
||||
<span class="ekomiBadgeRateElement" style="background: url({$pathStar}) no-repeat 0px -32px;"></span>
|
||||
{/section}
|
||||
</span>
|
||||
<br/>
|
||||
{l s='Average:' mod='ekomi'} <span itemprop="average">{$rating|round:"1"}</span> / <span itemprop="best">5</span>
|
||||
</span>
|
||||
{if !empty($count)}{l s='Based on' mod='ekomi'} <span itemprop="votes">{$count}</span> {l s='rating(s)' mod='ekomi'}{/if}
|
||||
{if !empty($count)}{l s='and' mod='ekomi'}{else}{l s='Based on' mod='ekomi'} {/if} <span itemprop="count">{$count}</span> {l s='user review(s)' mod='ekomi'}.
|
||||
</span>
|
||||
{/if}
|
||||
</div>
|
||||
{/if}
|
12
www/modules/ekomi/views/templates/hooks/header.tpl
Normal file
@ -0,0 +1,12 @@
|
||||
{if isset($version) && $version == -1}
|
||||
<script type="text/javascript" src="{$smarty.const._GSR_URL_JS}jquery-1.4.4.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
var jQuery144 = $.noConflict(true);
|
||||
</script>
|
||||
{else}
|
||||
<script type="text/javascript">
|
||||
var jQuery144 = $;
|
||||
</script>
|
||||
{/if}
|
||||
|
||||
<script type="text/javascript" src="{$pathJS}jquery.star-rating.js"></script>
|
35
www/modules/ekomi/views/templates/hooks/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
47
www/modules/ekomi/views/templates/hooks/productcomment.tpl
Normal file
@ -0,0 +1,47 @@
|
||||
<div id="idTab15">
|
||||
<div class="ekomiLogo">
|
||||
<img src="{$pathEkomi}img/ekomi_logo.png" width="131" height="35" border="0" />
|
||||
</div>
|
||||
{if isset($eReviews) AND $eReviews}
|
||||
{foreach from=$eReviews name=review key=iKey item=eReview}
|
||||
<div class="newReview">
|
||||
<div id="ekomiReview{$iKey}" class="ekomiReviewLine">
|
||||
<div class="ekomiReviewLineRating" id="ekomiDisplayRating{$smarty.foreach.review.iteration}">
|
||||
{section loop=$eReview.stars name=note}<input class="star" type="radio" id="ekomiRating{$smarty.foreach.review.iteration}" name="ekomiRating{$smarty.foreach.review.iteration}" value="{$smarty.section.note.iteration}" {if $eReview.stars == $smarty.section.note.iteration}checked="checked"{/if}/>{/section}
|
||||
</div>
|
||||
<div class="ekomiReviewLineName"><b>{l s='Date' mod='ekomi'} : </b>{dateFormat date=$eReview.date_add|escape:'html':'UTF-8' full=0}</div>
|
||||
<p class="ekomiReviewLineComment" style="margin-bottom: 10px !important;">
|
||||
{if !empty($eReview.review)}
|
||||
<b>{l s='Comment' mod='ekomi'} : </b>{$eReview.review}
|
||||
<br/>
|
||||
{else}
|
||||
{l s='The customer has rated the product but has not posted a review, or the review is pending moderation' mod='ekomi'}
|
||||
{/if}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{/foreach}
|
||||
|
||||
{literal}
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
{/literal}
|
||||
{foreach from=$eReviews name=review key=iKey item=eReview}
|
||||
{literal}
|
||||
jQuery144('#ekomiDisplayRating{/literal}{$smarty.foreach.review.iteration}{literal} :radio.star').rating(
|
||||
{
|
||||
ratingField : "iRating",
|
||||
readOnly : {/literal}{if !empty($eReview.stars)}true{else}false{/if}{literal},
|
||||
starGif : "{/literal}{$pathStar}{literal}",
|
||||
starWidth : "5"
|
||||
});
|
||||
{/literal}
|
||||
{/foreach}
|
||||
{literal}
|
||||
});
|
||||
</script>
|
||||
{/literal}
|
||||
{else}
|
||||
<p class="align_center">{l s='No customer comments for the moment.' mod='ekomi'}</p>
|
||||
{/if}
|
||||
</div>
|
1
www/modules/ekomi/views/templates/hooks/tab.tpl
Normal file
@ -0,0 +1 @@
|
||||
<li><a href="#idTab15" class="idTabHrefShort">{l s='Ekomi Comments' mod='ekomi'} ({$count})</a></li>
|
35
www/modules/ekomi/views/templates/index.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
/*
|
||||
* 2007-2013 PrestaShop
|
||||
*
|
||||
* NOTICE OF LICENSE
|
||||
*
|
||||
* This source file is subject to the Open Software License (OSL 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/osl-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 <contact@prestashop.com>
|
||||
* @copyright 2007-2013 PrestaShop SA
|
||||
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 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;
|
@ -1405,12 +1405,16 @@ body.content_only { margin: 0; }
|
||||
font-size: 16px;
|
||||
color: #4f3528;
|
||||
max-width: 50%;
|
||||
min-height: 50px;
|
||||
}
|
||||
.envie-de .btn {
|
||||
color: #f3b3d3;
|
||||
border-color: #f3b3d3;
|
||||
}
|
||||
|
||||
.envie-de .btn:hover {
|
||||
color: #fff;
|
||||
}
|
||||
.envie-de .footerconstructor-block:nth-child(2) .inner { background-position: right 53px; }
|
||||
|
||||
@media (max-width: 1349px) {
|
||||
.envie-de .footerconstructor-block .inner { background-size: 38% auto; }
|
||||
@ -1475,7 +1479,7 @@ body.content_only { margin: 0; }
|
||||
.footer-middle .customize-block:before {
|
||||
content: '';
|
||||
display: block;
|
||||
right: -2000px;
|
||||
right: 0;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
@ -2171,7 +2175,7 @@ body.content_only { margin: 0; }
|
||||
}
|
||||
.aboutus .slider2 {
|
||||
text-align: center;
|
||||
margin-top: 50px;
|
||||
margin-top: 125px;
|
||||
}
|
||||
.aboutus .homeslider-title {
|
||||
font-family: 'Lato';
|
||||
@ -2206,6 +2210,7 @@ body.content_only { margin: 0; }
|
||||
@media (max-width: 991px) {
|
||||
.aboutus-pictures .img { width: 187px; }
|
||||
.aboutus .slider2 { margin-top: 0; }
|
||||
.aboutus-pictures { padding-bottom: 60px; }
|
||||
}
|
||||
@media (max-width: 767px) {
|
||||
|
||||
@ -2218,7 +2223,7 @@ body.content_only { margin: 0; }
|
||||
line-height: 27px;
|
||||
}
|
||||
.aboutus .flex-direction-nav a { display: none; }
|
||||
.aboutus-pictures .img { width: 25%; }
|
||||
.aboutus-pictures .img { width: 23%; }
|
||||
.aboutus-pictures .img:nth-child(even) { top: 35px; }
|
||||
.aboutus .homeslider-ctn p { padding: 0; }
|
||||
.aboutus .homeslider-ctn p { padding: 0; }
|
||||
@ -2385,6 +2390,14 @@ body.content_only { margin: 0; }
|
||||
-webkit-transition: 0.5s opacity;
|
||||
}
|
||||
|
||||
@media (max-width: 1299px) {
|
||||
.best-chocolate .desc { font-size: 14px; line-height: 18px; }
|
||||
.best-chocolate .title span { font-size: 25px; line-height: 27px; }
|
||||
.best-chocolate .title img { width: 75px; }
|
||||
}
|
||||
@media (max-width: 1099px) {
|
||||
.best-chocolate .title img { width: 55px; }
|
||||
}
|
||||
@media (max-width: 990px) {
|
||||
.best-chocolate .desc { line-height: 20px; }
|
||||
.best-chocolate .title img { width: 60px; }
|
||||
@ -2434,7 +2447,7 @@ body.content_only { margin: 0; }
|
||||
bottom: 0;
|
||||
right: 5px;
|
||||
left: -1500px;
|
||||
background-color: #834b39;
|
||||
background-color: #452014;
|
||||
}
|
||||
.news-block:nth-child(even) > div:before {
|
||||
left: 5px;
|
||||
|