recette + ekomi

This commit is contained in:
Nolwenn 2017-08-29 10:46:12 +02:00
parent bd7e625a5e
commit 936adcc6c3
66 changed files with 3772 additions and 5 deletions

View 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;
}
}

View 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);
}
}

View File

@ -0,0 +1 @@
version = 0.4

View 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;

View 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;

View 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;

View 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');
}
}

View 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;

View 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%;
}

View 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;
}

View 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 */

View 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
View 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';

View 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');
?>

View 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
View 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').'&nbsp;&nbsp;</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
View 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
View 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';

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1006 B

View 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;

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 815 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

View 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
View 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';

View 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;

View 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 #*/

View 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;
});
});

View 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;
}
}
?>

View 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;
}
}
?>

View 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

Binary file not shown.

After

Width:  |  Height:  |  Size: 259 B

BIN
www/modules/ekomi/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View 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>

View 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}

View 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
View 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
View 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.';

View 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);'
);
?>

View 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'
);
?>

View 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 &copy; 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();
?>

View 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 &copy; 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();
?>

View 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';

View 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';

View 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';

View 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';

View 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';

View 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.';

View 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;

View File

@ -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>

View 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;

View 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}

View 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>

View 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;

View 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>

View File

@ -0,0 +1 @@
<li><a href="#idTab15" class="idTabHrefShort">{l s='Ekomi Comments' mod='ekomi'} ({$count})</a></li>

View 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;

View File

@ -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;