// Some fix + improve ergonomy + Tools::isMultiShopActived() moved in Shop class + 1.5.0.1 version in install script
This commit is contained in:
@@ -385,3 +385,38 @@ function simpleXMLToArray ($xml, $flattenValues = true, $flattenAttributes = tru
|
||||
|
||||
return $return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a sweet HTML list for shop selection
|
||||
*
|
||||
* @todo move in adminTab
|
||||
* @return string
|
||||
*/
|
||||
function generateShopList()
|
||||
{
|
||||
$tree = Shop::getTree();
|
||||
|
||||
// Get default value
|
||||
list($shopID, $shopGroupID) = Shop::getContext();
|
||||
if ($shopID)
|
||||
$value = 's-'.$shopID;
|
||||
else if ($shopGroupID)
|
||||
$value = 'g-'.$shopGroupID;
|
||||
else
|
||||
$value = '';
|
||||
|
||||
// Generate HTML
|
||||
$url = $_SERVER['REQUEST_URI'] . (($_SERVER['QUERY_STRING']) ? '&' : '?') . 'setShopContext=';
|
||||
$html = '<select class="shopList" onchange="location.href = \''.$url.'\'+$(this).val();">';
|
||||
$html .= '<option value="" class="first">'.translate('All shops').'</option>';
|
||||
foreach ($tree as $gID => $groupData)
|
||||
{
|
||||
$html .= '<option class="group" value="g-'.$gID.'" '.(($value == 'g-'.$gID) ? 'selected="selected"' : '').'>'.htmlspecialchars($groupData['name']).'</option>';
|
||||
foreach ($groupData['shops'] as $sID => $shopData)
|
||||
if ($shopData['active'])
|
||||
$html .= '<option value="s-'.$sID.'" class="shop" '.(($value == 's-'.$sID) ? 'selected="selected"' : '').'>» '.$shopData['name'].'</option>';
|
||||
}
|
||||
$html .= '</select>';
|
||||
|
||||
return $html;
|
||||
}
|
||||
@@ -117,8 +117,8 @@ foreach (QuickAccess::getQuickAccesses((int)($cookie->id_lang)) AS $quick)
|
||||
echo ' </select>
|
||||
</div>';
|
||||
|
||||
if (Tools::isMultiShopActivated())
|
||||
echo '<div id="header_shoplist">'.Shop::generateHtmlList().'</div>';
|
||||
if (Shop::isMultiShopActivated())
|
||||
echo '<div id="header_shoplist">'.translate('Select your shop:').' '.generateShopList().'</div>';
|
||||
|
||||
echo ' <div class="flatclear"> </div>
|
||||
'.Module::hookExec('backOfficeTop').'
|
||||
|
||||
+11
-13
@@ -74,21 +74,19 @@ if (empty($tab) and !sizeof($_POST))
|
||||
</div>
|
||||
<a href="?token='.Tools::getAdminToken($tab.intval(Tab::getIdFromClassName($tab)).intval($cookie->id_employee)).'">'.translate('Back Office').'</a>
|
||||
'.$bread;
|
||||
if (Tools::isMultiShopActivated())
|
||||
{
|
||||
echo '
|
||||
<span style="float:right">'.translate('You are currently view/configure your store for').' <b>';
|
||||
if (Context::getContext()->shop->getContextType() == Shop::CONTEXT_ALL)
|
||||
echo 'all shops';
|
||||
elseif (Context::getContext()->shop->getContextType() == Shop::CONTEXT_GROUP)
|
||||
echo 'all shops of group shop <b>'.Context::getContext()->shop->getGroup()->name.'</b>';
|
||||
elseif (Context::getContext()->shop->getContextType() == Shop::CONTEXT_SHOP)
|
||||
echo 'shop <b>'.Context::getContext()->shop->name.'</b>';
|
||||
echo '</b>
|
||||
</span> ';
|
||||
}
|
||||
echo '
|
||||
</div>';
|
||||
|
||||
|
||||
if (Shop::isMultiShopActivated() && Context::shop() != Shop::CONTEXT_ALL)
|
||||
{
|
||||
echo '<div class="multishop_info">';
|
||||
if (Context::shop() == Shop::CONTEXT_GROUP)
|
||||
printf(translate('You are configuring your store for group shop %s'), '<b>'.Context::getContext()->shop->getGroup()->name.'</b>');
|
||||
elseif (Context::shop() == Shop::CONTEXT_SHOP)
|
||||
printf(translate('You are configuring your store for shop %s'), '<b>'.Context::getContext()->shop->name.'</b>');
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
if (Validate::isLoadedObject($adminObj))
|
||||
{
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ if (empty($employee->bo_theme) OR !file_exists($path.$employee->bo_theme.'/admin
|
||||
}
|
||||
|
||||
// Change shop context ?
|
||||
if (Tools::isMultiShopActivated() && Tools::getValue('setShopContext') !== false)
|
||||
if (Shop::isMultiShopActivated() && Tools::getValue('setShopContext') !== false)
|
||||
{
|
||||
$cookie->shopContext = Tools::getValue('setShopContext');
|
||||
$url = parse_url($_SERVER['REQUEST_URI']);
|
||||
|
||||
@@ -84,10 +84,10 @@ class AdminAttributes extends AdminTab
|
||||
echo '
|
||||
</select><sup> *</sup>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -59,7 +59,6 @@ class AdminAttributesGroups extends AdminTab
|
||||
else
|
||||
{
|
||||
parent::display();
|
||||
$this->displayAssoGroupShop();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,10 +208,10 @@ class AdminAttributesGroups extends AdminTab
|
||||
<label class="t" for="is_color_group_off"><img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('No').'" /></label>
|
||||
<p>'.$this->l('This is a color group').'</p>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -151,10 +151,10 @@ class AdminCMS extends AdminTab
|
||||
<input type="radio" name="active" id="active_off" onclick="toggleDraftWarning(true);" value="0" '.(!$this->getFieldValue($obj, 'active') ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop('meta_title');
|
||||
$this->displayAssoShop();
|
||||
echo '</div>';
|
||||
}
|
||||
// SUBMIT
|
||||
|
||||
@@ -49,9 +49,7 @@ class AdminCarriers extends AdminTab
|
||||
'active' => array('title' => $this->l('Status'), 'align' => 'center', 'active' => 'status', 'type' => 'bool', 'orderby' => false),
|
||||
'is_free' => array('title' => $this->l('Is Free'), 'align' => 'center', 'icon' => array(0 => 'disabled.gif', 1 => 'enabled.gif', 'default' => 'disabled.gif'), 'type' => 'bool', 'orderby' => false)
|
||||
);
|
||||
|
||||
$this->_group = 'GROUP BY a.id_carrier';
|
||||
|
||||
|
||||
$this->optionTitle = $this->l('Carrier options');
|
||||
$this->_fieldsOptions = array(
|
||||
'PS_CARRIER_DEFAULT' => array('title' => $this->l('Default carrier:'), 'desc' => $this->l('The default carrier used in shop'), 'cast' => 'intval', 'type' => 'select', 'identifier' => 'id_carrier', 'list' => Carrier::getCarriers((int)(Configuration::get('PS_LANG_DEFAULT')), true , false,false, NULL, ALL_CARRIERS)),
|
||||
@@ -244,7 +242,7 @@ class AdminCarriers extends AdminTab
|
||||
echo '</div>';
|
||||
}
|
||||
echo '</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -38,10 +38,11 @@ class AdminContacts extends AdminTab
|
||||
$this->delete = true;
|
||||
|
||||
$this->fieldsDisplay = array(
|
||||
'id_contact' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
|
||||
'name' => array('title' => $this->l('Title'), 'width' => 130),
|
||||
'email' => array('title' => $this->l('E-mail address'), 'width' => 130),
|
||||
'description' => array('title' => $this->l('Description'), 'width' => 150));
|
||||
'id_contact' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
|
||||
'name' => array('title' => $this->l('Title'), 'width' => 130),
|
||||
'email' => array('title' => $this->l('E-mail address'), 'width' => 130),
|
||||
'description' => array('title' => $this->l('Description'), 'width' => 150),
|
||||
);
|
||||
|
||||
$this->optionTitle = $this->l('Contact options');
|
||||
$this->_fieldsOptions = array(
|
||||
@@ -101,7 +102,7 @@ class AdminContacts extends AdminTab
|
||||
echo '
|
||||
<p style="clear: both">'.$this->l('Additional information about this contact').'</p>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -325,7 +325,7 @@ class AdminCountries extends AdminTab
|
||||
<input type="radio" name="display_tax_label" id="display_tax_label_off" value="0" '.((!$this->getFieldValue($obj, 'display_tax_label') AND $obj->id) ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="display_tax_label_off"> <img src="../img/admin/disabled.gif" alt="" title="" />'.$this->l('No').'</label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -38,13 +38,14 @@ class AdminCurrencies extends AdminTab
|
||||
$this->delete = true;
|
||||
|
||||
$this->fieldsDisplay = array(
|
||||
'id_currency' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
|
||||
'name' => array('title' => $this->l('Currency'), 'width' => 100),
|
||||
'iso_code' => array('title' => $this->l('ISO code'), 'align' => 'center', 'width' => 35),
|
||||
'iso_code_num' => array('title' => $this->l('ISO code num'), 'align' => 'center', 'width' => 35),
|
||||
'sign' => array('title' => $this->l('Symbol'), 'width' => 20, 'align' => 'center', 'orderby' => false, 'search' => false),
|
||||
'conversion_rate' => array('title' => $this->l('Conversion rate'), 'float' => true, 'align' => 'center', 'width' => 50, 'search' => false),
|
||||
'active' => array('title' => $this->l('Enabled'), 'width' => 25, 'align' => 'center', 'active' => 'status', 'type' => 'bool', 'orderby' => false));
|
||||
'id_currency' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
|
||||
'name' => array('title' => $this->l('Currency'), 'width' => 100),
|
||||
'iso_code' => array('title' => $this->l('ISO code'), 'align' => 'center', 'width' => 35),
|
||||
'iso_code_num' => array('title' => $this->l('ISO code num'), 'align' => 'center', 'width' => 35),
|
||||
'sign' => array('title' => $this->l('Symbol'), 'width' => 20, 'align' => 'center', 'orderby' => false, 'search' => false),
|
||||
'conversion_rate' => array('title' => $this->l('Conversion rate'), 'float' => true, 'align' => 'center', 'width' => 50, 'search' => false),
|
||||
'active' => array('title' => $this->l('Enabled'), 'width' => 25, 'align' => 'center', 'active' => 'status', 'type' => 'bool', 'orderby' => false),
|
||||
);
|
||||
|
||||
$this->optionTitle = $this->l('Currencies options');
|
||||
$this->_fieldsOptions = array(
|
||||
@@ -217,7 +218,7 @@ class AdminCurrencies extends AdminTab
|
||||
<input type="radio" name="active" id="active_off" value="0" '.(!$this->getFieldValue($obj, 'active') ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -291,7 +291,7 @@ class AdminCustomers extends AdminTab
|
||||
'.$this->l('Registration date:').' '.Tools::displayDate($customer->date_add, $this->context->language->id, true).'<br />
|
||||
'.$this->l('Last visit:').' '.($customerStats['last_visit'] ? Tools::displayDate($customerStats['last_visit'], $this->context->language->id, true) : $this->l('never')).'<br />
|
||||
'.($countBetterCustomers != '-' ? $this->l('Rank: #').' '.(int)$countBetterCustomers.'<br />' : '')
|
||||
.(Tools::isMultiShopActivated() ? '<br />'.$this->l('Shop:').' '.Shop::getInstance($customer->id_shop)->name : '').'
|
||||
.(Shop::isMultiShopActivated() ? '<br />'.$this->l('Shop:').' '.Shop::getInstance($customer->id_shop)->name : '').'
|
||||
</fieldset>
|
||||
<fieldset style="width:300px;float:left;margin-left:50px">
|
||||
<div style="float: right">
|
||||
@@ -666,13 +666,13 @@ class AdminCustomers extends AdminTab
|
||||
<tr>
|
||||
<th style="width: 200px">'.$this->l('Date').'</th>
|
||||
<th style="width: 200px">'.$this->l('Name').'</th>
|
||||
'.((Tools::isMultiShopActivated())? '<th style="width: 200px">'.$this->l('Shop').'</th>' : '').'
|
||||
'.((Shop::isMultiShopActivated())? '<th style="width: 200px">'.$this->l('Shop').'</th>' : '').'
|
||||
</tr>';
|
||||
foreach ($referrers as $referrer)
|
||||
echo '<tr>
|
||||
<td>'.Tools::displayDate($referrer['date_add'], $this->context->language->id, true).'</td>
|
||||
<td>'.$referrer['name'].'</td>
|
||||
'.((Tools::isMultiShopActivated())? '<td>'.$referrer['shop_name'].'</td>' : '').'
|
||||
'.((Shop::isMultiShopActivated())? '<td>'.$referrer['shop_name'].'</td>' : '').'
|
||||
</tr>';
|
||||
echo '</table><div class="clear"> </div>';
|
||||
}
|
||||
@@ -823,7 +823,7 @@ class AdminCustomers extends AdminTab
|
||||
echo '<p>'.$this->l('No group created').'</p>';
|
||||
echo '
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
$shops = Shop::getShops();
|
||||
echo '
|
||||
|
||||
@@ -35,13 +35,12 @@ class AdminDiscounts extends AdminTab
|
||||
$this->lang = true;
|
||||
$this->edit = true;
|
||||
$this->delete = true;
|
||||
$this->_select = 'dtl.`name` AS discount_type, s.name shop_name,
|
||||
$this->_select = 'dtl.`name` AS discount_type,
|
||||
IF(a.id_discount_type = 1, CONCAT(a.value, " %"),
|
||||
IF(a.id_discount_type = 2, CONCAT(a.value, " ", c.sign),
|
||||
"--")) as strvalue';
|
||||
$this->_join = 'LEFT JOIN `'._DB_PREFIX_.'currency` c ON (c.`id_currency` = a.`id_currency`)
|
||||
LEFT JOIN `'._DB_PREFIX_.'discount_type` dt ON (dt.`id_discount_type` = a.`id_discount_type`)
|
||||
LEFT JOIN `'._DB_PREFIX_.'shop` s ON (s.`id_shop` = a.`id_shop`)
|
||||
LEFT JOIN `'._DB_PREFIX_.'discount_type_lang` dtl ON (dt.`id_discount_type` = dtl.`id_discount_type` AND dtl.`id_lang` = '.(int)$this->context->language->id.')';
|
||||
|
||||
$typesArray = array();
|
||||
@@ -446,7 +445,7 @@ class AdminDiscounts extends AdminTab
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p>'.$this->l('Enable or disable voucher').'</p>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -56,7 +56,6 @@ class AdminFeatures extends AdminTab
|
||||
else
|
||||
{
|
||||
parent::display();
|
||||
$this->displayAssoGroupShop();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -155,10 +154,10 @@ class AdminFeatures extends AdminTab
|
||||
echo '
|
||||
<div class="clear"></div>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -137,4 +137,9 @@ EOF;
|
||||
</fieldset>
|
||||
</form>';
|
||||
}
|
||||
|
||||
protected function displayAddButton()
|
||||
{
|
||||
echo '<br /><a href="'.self::$currentIndex.'&add'.$this->table.'&token='.$this->token.'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add new group shop').'</a><br /><br />';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,6 @@ class AdminGroups extends AdminTab
|
||||
WHERE jc.`deleted` != 1
|
||||
AND jcg.`id_group` = a.`id_group`) AS nb
|
||||
';
|
||||
$this->_group = 'GROUP BY a.id_group';
|
||||
$this->_listSkipDelete = array(1);
|
||||
|
||||
$this->fieldsDisplay = array(
|
||||
@@ -126,10 +125,10 @@ class AdminGroups extends AdminTab
|
||||
<div class="margin-form">
|
||||
<input type="submit" value="'.$this->l(' Save ').'" name="submitAdd'.$this->table.'" class="button" />
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -779,7 +779,7 @@ class AdminImport extends AdminTab
|
||||
else
|
||||
{
|
||||
// Associate product to shop
|
||||
if (Tools::isMultiShopActivated() && $product->shop)
|
||||
if (Shop::isMultiShopActivated() && $product->shop)
|
||||
{
|
||||
$product->shop = explode(',', $product->shop);
|
||||
$shops = array();
|
||||
@@ -1017,7 +1017,7 @@ class AdminImport extends AdminTab
|
||||
$customer->passwd = md5(_COOKIE_KEY_.$customer->passwd);
|
||||
|
||||
// Associate product to shop
|
||||
if (Tools::isMultiShopActivated() && $customer->id_shop)
|
||||
if (Shop::isMultiShopActivated() && $customer->id_shop)
|
||||
{
|
||||
if (!is_numeric($customer->id_shop))
|
||||
$customer->id_shop = Shop::getIdByName($customer->id_shop);
|
||||
@@ -1205,7 +1205,7 @@ class AdminImport extends AdminTab
|
||||
if ($res)
|
||||
{
|
||||
// Associate supplier to group shop
|
||||
if (Tools::isMultiShopActivated() && $manufacturer->shop)
|
||||
if (Shop::isMultiShopActivated() && $manufacturer->shop)
|
||||
{
|
||||
$manufacturer->shop = explode(',', $manufacturer->shop);
|
||||
$shops = array();
|
||||
@@ -1258,7 +1258,7 @@ class AdminImport extends AdminTab
|
||||
else
|
||||
{
|
||||
// Associate supplier to group shop
|
||||
if (Tools::isMultiShopActivated() && $supplier->shop)
|
||||
if (Shop::isMultiShopActivated() && $supplier->shop)
|
||||
{
|
||||
$supplier->shop = explode(',', $supplier->shop);
|
||||
$shops = array();
|
||||
|
||||
@@ -50,7 +50,6 @@ class AdminLanguages extends AdminTab
|
||||
$this->_fieldsOptions = array(
|
||||
'PS_LANG_DEFAULT' => array('title' => $this->l('Default language:'), 'desc' => $this->l('The default language used in shop'), 'cast' => 'intval', 'type' => 'select', 'identifier' => 'id_lang', 'list' => Language::getlanguages(false)),
|
||||
);
|
||||
$this->_group = 'GROUP BY a.id_lang';
|
||||
|
||||
parent::__construct();
|
||||
}
|
||||
@@ -368,7 +367,7 @@ class AdminLanguages extends AdminTab
|
||||
<p>'.$this->l('Allow or disallow this language to be selected by the customer').'</p>
|
||||
</div>
|
||||
<p id="resultCheckLangPack"><img src="'._PS_IMG_.'admin/ajax-loader.gif" alt="" /> '.$this->l('Check if a language pack is available for this ISO code...').'</p>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -65,7 +65,6 @@ class AdminManufacturers extends AdminTab
|
||||
$this->_select = 'COUNT(`id_product`) AS `products`, (SELECT COUNT(ad.`id_manufacturer`) as `addresses` FROM `'._DB_PREFIX_.'address` ad WHERE ad.`id_manufacturer` = a.`id_manufacturer` AND ad.`deleted` = 0 GROUP BY ad.`id_manufacturer`) as `addresses`';
|
||||
$this->_join = 'LEFT JOIN `'._DB_PREFIX_.'product` p ON (a.`id_manufacturer` = p.`id_manufacturer`)';
|
||||
$this->_joinCount = false;
|
||||
$this->_group = 'GROUP BY a.`id_manufacturer`';
|
||||
|
||||
$this->fieldImageSettings = array('name' => 'logo', 'dir' => 'm');
|
||||
|
||||
@@ -188,10 +187,10 @@ class AdminManufacturers extends AdminTab
|
||||
<input type="radio" name="active" id="active_off" value="0" '.(!$this->getFieldValue($manufacturer, 'active') ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -43,7 +43,6 @@ class AdminMeta extends AdminTab
|
||||
'title' => array('title' => $this->l('Title'), 'width' => 120),
|
||||
'url_rewrite' => array('title' => $this->l('Friendly URL'), 'width' => 120)
|
||||
);
|
||||
$this->_group = 'GROUP BY a.id_meta';
|
||||
|
||||
$this->optionTitle = $this->l('URLs Setup');
|
||||
$this->_fieldsOptions = array(
|
||||
|
||||
@@ -308,7 +308,7 @@ class AdminModules extends AdminTab
|
||||
</tr>';
|
||||
|
||||
// Display checkbox in toolbar if multishop
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
$activateOnclick = 'onclick="location.href = \''.$this->getCurrentUrl('enable').'&enable=\'+(($(this).attr(\'checked\')) ? 1 : 0)"';
|
||||
$toolbar .= '<tr>
|
||||
@@ -938,12 +938,12 @@ class AdminModules extends AdminTab
|
||||
urlencode($module->name).'&tab_module='.$module->tab;
|
||||
|
||||
if ($module->id)
|
||||
$return .= '<a class="action_module" '.($module->active && method_exists($module, 'onclickOption')? 'onclick="'.$module->onclickOption('desactive', $href).'"' : '').' href="'.self::$currentIndex.'&token='.$this->token.'&module_name='.urlencode($module->name).'&'.($module->active ? 'enable=0' : 'enable=1').'&tab_module='.$module->tab.'&module_name='.urlencode($module->name).'" '.((Tools::isMultiShopActivated()) ? 'title="'.htmlspecialchars($module->active ? $this->l('Disable this module') : $this->l('Enable this module for all shops')).'"' : '').'>'.($module->active ? $this->l('Disable') : $this->l('Enable')).'</a> ';
|
||||
$return .= '<a class="action_module" '.($module->active && method_exists($module, 'onclickOption')? 'onclick="'.$module->onclickOption('desactive', $href).'"' : '').' href="'.self::$currentIndex.'&token='.$this->token.'&module_name='.urlencode($module->name).'&'.($module->active ? 'enable=0' : 'enable=1').'&tab_module='.$module->tab.'&module_name='.urlencode($module->name).'" '.((Shop::isMultiShopActivated()) ? 'title="'.htmlspecialchars($module->active ? $this->l('Disable this module') : $this->l('Enable this module for all shops')).'"' : '').'>'.($module->active ? $this->l('Disable') : $this->l('Enable')).'</a> ';
|
||||
|
||||
if ($module->id AND $module->active)
|
||||
$return .= '<a class="action_module" '.(method_exists($module, 'onclickOption')? 'onclick="'.$module->onclickOption('reset', $href).'"' : '').' href="'.self::$currentIndex.'&token='.$this->token.'&module_name='.urlencode($module->name).'&reset&tab_module='.$module->tab.'&module_name='.urlencode($module->name).'">'.$this->l('Reset').'</a> ';
|
||||
|
||||
if ($module->id AND (method_exists($module, 'getContent') OR (isset($module->is_configurable) AND $module->is_configurable) OR Tools::isMultiShopActivated()))
|
||||
if ($module->id AND (method_exists($module, 'getContent') OR (isset($module->is_configurable) AND $module->is_configurable) OR Shop::isMultiShopActivated()))
|
||||
$return .= '<a class="action_module" '.(method_exists($module, 'onclickOption')? 'onclick="'.$module->onclickOption('configure', $href).'"' : '').' href="'.self::$currentIndex.'&configure='.urlencode($module->name).'&token='.$this->token.'&tab_module='.$module->tab.'&module_name='.urlencode($module->name).'">'.$this->l('Configure').'</a> ';
|
||||
|
||||
$hrefDelete = self::$currentIndex.'&deleteModule='.urlencode($module->name).'&token='.$this->token.'&tab_module='.$module->tab.'&module_name='.urlencode($module->name);
|
||||
|
||||
@@ -252,7 +252,7 @@ class AdminModulesPositions extends AdminTab
|
||||
</form>
|
||||
|
||||
<fieldset style="width:250px;float:right"><legend>'.$this->l('Live edit').'</legend>';
|
||||
if (Tools::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_SHOP)
|
||||
if (Shop::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_SHOP)
|
||||
echo '<p>'.$this->l('You have to select a shop to use live edit').'</p>';
|
||||
else
|
||||
echo '<p>'.$this->l('By clicking here you will be redirected to the front office of your shop to move and delete modules directly.').'</p>
|
||||
@@ -267,7 +267,7 @@ class AdminModulesPositions extends AdminTab
|
||||
|
||||
echo '<div id="unhook_button_position_top"><input class="button floatr" type="submit" name="unhookform" value="'.$this->l('Unhook the selection').'"/></div>';
|
||||
|
||||
$canMove = (Tools::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_SHOP) ? false : true;
|
||||
$canMove = (Shop::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_SHOP) ? false : true;
|
||||
if (!$canMove)
|
||||
echo '<br /><div><b>'.$this->l('If you want to order / move following data, please go in shop context (select a shop in shop list)').'</b></div>';
|
||||
foreach ($hooks AS $hook)
|
||||
|
||||
@@ -657,12 +657,10 @@ class AdminOrders extends AdminTab
|
||||
<br />
|
||||
<fieldset style="width: 400px">
|
||||
<legend><img src="../img/admin/details.gif" /> '.$this->l('Order details').'</legend>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
$shop = new Shop((int)$order->id_shop);
|
||||
echo '
|
||||
<label>'.$this->l('Shop:').' </label>
|
||||
<div style="margin: 2px 0 1em 190px;">'.$shop->name.'</div>';
|
||||
echo '<label>'.$this->l('Shop:').' </label>
|
||||
<div style="margin: 2px 0 1em 190px;">'.Shop::getInstance($order->id_shop)->name.'</div>';
|
||||
}
|
||||
echo '
|
||||
<label>'.$this->l('Original cart:').' </label>
|
||||
|
||||
@@ -358,7 +358,7 @@ class AdminPreferences extends AdminTab
|
||||
echo '<div class="margin-form" style="padding-top:5px;">';
|
||||
}
|
||||
|
||||
$isDisabled = (Tools::isMultiShopActivated() && isset($field['visibility']) && $field['visibility'] > $this->context->shop->getContextType()) ? true : false;
|
||||
$isDisabled = (Shop::isMultiShopActivated() && isset($field['visibility']) && $field['visibility'] > $this->context->shop->getContextType()) ? true : false;
|
||||
|
||||
/* Display the appropriate input type for each field */
|
||||
switch ($field['type'])
|
||||
|
||||
@@ -66,7 +66,6 @@ class AdminProducts extends AdminTab
|
||||
LEFT JOIN `'._DB_PREFIX_.'tax` t ON (t.`id_tax` = tr.`id_tax`)';
|
||||
$this->_filter = 'AND cp.`id_category` = '.(int)($this->_category->id);
|
||||
$this->_select = 'cp.`position`, i.`id_image`, (a.`price` * ((100 + (t.`rate`))/100)) AS price_final, SUM(stock.quantity) AS quantity';
|
||||
$this->_group = 'GROUP BY a.id_product';
|
||||
|
||||
parent::__construct();
|
||||
}
|
||||
@@ -1410,7 +1409,6 @@ class AdminProducts extends AdminTab
|
||||
echo '<a href="'.self::$currentIndex.'&id_category='.$id_category.'&add'.$this->table.'&token='.($token!=NULL ? $token : $this->token).'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add a new product').'</a>';
|
||||
echo '<div style="margin:10px;">';
|
||||
$this->displayList($token);
|
||||
$this->displayAssoShop();
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
@@ -2249,7 +2247,7 @@ class AdminProducts extends AdminTab
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="shop_association">
|
||||
<td style="vertical-align:top;text-align:right;padding-right:10px;font-weight:bold;'.(!Tools::isMultiShopActivated() ? 'display:none;' : '').'">'.$this->l('Shop association:').'</td><td style="padding-bottom:5px;">';
|
||||
<td style="vertical-align:top;text-align:right;padding-right:10px;font-weight:bold;'.(!Shop::isMultiShopActivated() ? 'display:none;' : '').'">'.$this->l('Shop association:').'</td><td style="padding-bottom:5px;">';
|
||||
$this->displayAssoShop();
|
||||
echo '</td>
|
||||
</tr>
|
||||
@@ -3041,7 +3039,7 @@ class AdminProducts extends AdminTab
|
||||
<th style="width: 100px;">'.$this->l('Image').'</th>
|
||||
<th> </th>
|
||||
<th>'.$this->l('Position').'</th>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
$shops = Shop::getShops();
|
||||
echo '<script type="text/javascript">
|
||||
@@ -3062,7 +3060,7 @@ class AdminProducts extends AdminTab
|
||||
|
||||
foreach ($images AS $k => $image)
|
||||
{
|
||||
if(Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
$imgObj = new Image((int)$image['id_image']);
|
||||
$image_obj = new Image($image['id_image']);
|
||||
$img_path = $image_obj->getExistingImgPath();
|
||||
@@ -3092,7 +3090,7 @@ class AdminProducts extends AdminTab
|
||||
<span>[ <a onclick="return hideLink();" href="'.self::$currentIndex.'&id_image='.$image['id_image'].'&imgPosition='.$image['position'].'&imgDirection=1&token='.($token ? $token : $this->token).'"><img src="../img/admin/up.gif" alt="" border="0"></a> ]</span>
|
||||
<span>[ <a onclick="return hideLink();" href="'.self::$currentIndex.'&id_image='.$image['id_image'].'&imgPosition='.$image['position'].'&imgDirection=0&token='.($token ? $token : $this->token).'"><img src="../img/admin/down.gif" alt="" border="0"></a> ]</span>';
|
||||
echo '</td>';
|
||||
if(Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
foreach ($shops AS $shop)
|
||||
echo '<td class="center"><input type="checkbox" class="image_shop" name="'.(int)$image['id_image'].'" value="'.(int)$shop['id_shop'].'" '.($imgObj->isAssociatedToShop($shop['id_shop']) ? 'checked="1"' : '').' /></td>';
|
||||
echo '
|
||||
|
||||
@@ -261,7 +261,7 @@ class AdminReferrers extends AdminTab
|
||||
<input type="text" size="8" name="percent_fee" value="'.number_format((float)($this->getFieldValue($obj, 'percent_fee')), 2).'" />
|
||||
<p>'.$this->l('Percent of the sales.').'</p>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -36,8 +36,6 @@ class AdminScenes extends AdminTab
|
||||
$this->lang = true;
|
||||
$this->edit = true;
|
||||
$this->delete = true;
|
||||
|
||||
$this->_group = 'GROUP BY a.id_scene';
|
||||
|
||||
$this->fieldImageSettings = array(
|
||||
array('name' => 'image', 'dir' => 'scenes'),
|
||||
@@ -226,17 +224,10 @@ class AdminScenes extends AdminTab
|
||||
echo '<img id="large_scene_image" style="clear:both;border:1px solid black;" alt="" src="'._THEME_SCENE_DIR_.'thumbs/'.$obj->id.'-thumb_scene.jpg" /><br />';
|
||||
echo '</div>
|
||||
';
|
||||
|
||||
if (Tools::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
echo '<label>'.$this->l('Category:').' </label>
|
||||
<div class="margin-form">
|
||||
<div style="overflow: auto; min-height: 300px; padding-top: 0.6em;" id="categoryList">
|
||||
<div style="overflow: auto; max-height: 300px; padding-top: 0.6em;" id="categoryList">
|
||||
<table cellspacing="0" cellpadding="0" class="table" style="width: 600px;">
|
||||
<tr>
|
||||
<th><input type="checkbox" name="checkme" class="noborder" onclick="checkDelBoxes(this.form, \'categories[]\', this.checked)" /></th>
|
||||
@@ -257,6 +248,12 @@ class AdminScenes extends AdminTab
|
||||
<p style="padding:0px; margin:0px 0px 10px 0px;">'.$this->l('Mark all checkbox(es) of the categories for which the image map is to appear.').'<sup> *</sup></p>
|
||||
</div>
|
||||
</div>';
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
<div id="save_scene" class="margin-form" '.(($obj->id && file_exists(_PS_SCENE_IMG_DIR_.$obj->id.'-large_scene.jpg')) ? '' : 'style="display:none;"') .'>
|
||||
<input type="submit" name="save_image_map" value="'.$this->l('Save Image Map(s)').'" class="button" />
|
||||
@@ -264,8 +261,15 @@ class AdminScenes extends AdminTab
|
||||
}
|
||||
else
|
||||
{
|
||||
echo '
|
||||
<br/><span class="bold">'.$this->l('Please add a picture to continue mapping the image...').'</span><br/><br/>';
|
||||
echo '<br/><span class="bold">'.$this->l('Please add a picture to continue mapping the image...').'</span><br/><br/>';
|
||||
echo '</div>';
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
echo '</div>';
|
||||
}
|
||||
|
||||
}
|
||||
echo '
|
||||
<div class="small"><sup>*</sup> '.$this->l('Required field').'</div>
|
||||
|
||||
@@ -40,7 +40,7 @@ class AdminShop extends AdminTab
|
||||
$this->_select = 'gs.name group_shop_name, cl.name category_name';
|
||||
$this->_join = 'LEFT JOIN `'._DB_PREFIX_.'group_shop` gs ON (a.id_group_shop = gs.id_group_shop)
|
||||
LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (a.id_category = cl.id_category AND cl.id_lang='.(int)$this->context->language->id.')';
|
||||
$this->_group = 'GROUP BY id_shop';
|
||||
$this->_group = 'GROUP BY a.id_shop';
|
||||
|
||||
$this->fieldsDisplay = array(
|
||||
'id_shop' => array('title' => $this->l('ID'), 'align' => 'center', 'width' => 25),
|
||||
@@ -189,4 +189,9 @@ class AdminShop extends AdminTab
|
||||
</fieldset>
|
||||
</form>';
|
||||
}
|
||||
|
||||
protected function displayAddButton()
|
||||
{
|
||||
echo '<br /><a href="'.self::$currentIndex.'&add'.$this->table.'&token='.$this->token.'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add new shop').'</a><br /><br />';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,14 +92,13 @@ class AdminShopUrl extends AdminTab
|
||||
var domain = $('#domain').val();
|
||||
var physical = $('#physical_uri').val();
|
||||
var virtual = $('#virtual_uri').val();
|
||||
var url = 'http://';
|
||||
url += ((domain) ? domain : '???');
|
||||
url = ((domain) ? domain : '???');
|
||||
if (physical)
|
||||
url += '/'+physical;
|
||||
if (virtual)
|
||||
url += '/'+virtual;
|
||||
url = url.replace(/\/+/g, "/");
|
||||
$('#final_url').val(url);
|
||||
$('#final_url').val('http://'+url);
|
||||
});
|
||||
});
|
||||
//]]>
|
||||
@@ -121,14 +120,17 @@ EOF;
|
||||
<label for="physical_uri">'.$this->l('Physical URI').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="text" name="physical_uri" id="physical_uri" value="'.$this->getFieldValue($obj, 'physical_uri').'" />
|
||||
<p>'.$this->l('Folder of your store ex: ipods for http://yourshopname.com/ipods/, leave empty if no folder.').'<br /><b>'.$this->l('URL Rewrite must be activated to use this feature.').'</b></p>
|
||||
</div>
|
||||
<label for="virtual_uri">'.$this->l('Virtual URI').'</label>
|
||||
<p>'.$this->l('Physical folder of your store on your server. Leave this field empty if your store is installed on root path.').'</p>
|
||||
</div>';
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label for="virtual_uri">'.$this->l('Virtual URI').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="text" name="virtual_uri" id="virtual_uri" value="'.$this->getFieldValue($obj, 'virtual_uri').'" />
|
||||
<p>'.$this->l('Folder of your store ex: ipods for http://yourshopname.com/ipods/, leave empty if no folder.').'<br /><b>'.$this->l('URL Rewrite must be activated to use this feature.').'</b></p>
|
||||
</div>
|
||||
<label>'.$this->l('Your final URL will be').'</label>
|
||||
<p>'.$this->l('This virtual folder must not exist on your server and is used to associate an URI to a shop.').'<br /><b>'.$this->l('URL rewriting must be activated on your server to use this feature.').'</b></p>
|
||||
</div>';
|
||||
}
|
||||
echo ' <label>'.$this->l('Your final URL will be').'</label>
|
||||
<div class="margin-form">
|
||||
<input type="text" readonly="readonly" id="final_url" style="width: 400px" value="'.$obj->getURL().'" />
|
||||
</div>
|
||||
@@ -168,4 +170,9 @@ EOF;
|
||||
</fieldset>
|
||||
</form>';
|
||||
}
|
||||
|
||||
protected function displayAddButton()
|
||||
{
|
||||
echo '<br /><a href="'.self::$currentIndex.'&add'.$this->table.'&token='.$this->token.'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add new shop URL').'</a><br /><br />';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,6 @@ class AdminStores extends AdminTab
|
||||
$this->_join = '
|
||||
LEFT JOIN `'._DB_PREFIX_.'country_lang` cl ON (cl.`id_country` = a.`id_country` AND cl.`id_lang` = '.(int)$this->context->language->id.')
|
||||
LEFT JOIN `'._DB_PREFIX_.'state` st ON (st.`id_state` = a.`id_state`)';
|
||||
$this->_group = 'GROUP BY a.id_store';
|
||||
|
||||
$countries = Country::getCountries($this->context->language->id);
|
||||
foreach ($countries AS $country)
|
||||
@@ -300,7 +299,7 @@ class AdminStores extends AdminTab
|
||||
</table>
|
||||
</div>
|
||||
<div class="clear"></div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoShop();
|
||||
|
||||
@@ -38,7 +38,6 @@ class AdminSuppliers extends AdminTab
|
||||
$this->delete = true;
|
||||
$this->_select = 'COUNT(p.`id_product`) AS products';
|
||||
$this->_join = 'LEFT JOIN `'._DB_PREFIX_.'product` p ON (a.`id_supplier` = p.`id_supplier`)';
|
||||
$this->_group = 'GROUP BY a.`id_supplier`';
|
||||
|
||||
$this->fieldImageSettings = array('name' => 'logo', 'dir' => 'su');
|
||||
|
||||
@@ -196,10 +195,10 @@ class AdminSuppliers extends AdminTab
|
||||
<input type="radio" name="active" id="active_off" value="0" '.(!$this->getFieldValue($supplier, 'active') ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
@@ -97,10 +97,10 @@ class AdminTaxRulesGroup extends AdminTab
|
||||
<input type="radio" name="active" id="active_off" value="0" '.(!$this->getFieldValue($obj, 'active') ? 'checked="checked" ' : '').'/>
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('Shop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
@@ -503,9 +503,7 @@ class AdminTaxRulesGroup extends AdminTab
|
||||
$result = $object->update();
|
||||
$this->afterUpdate($object);
|
||||
}
|
||||
|
||||
if ($object->id)
|
||||
$this->updateAssoGroupShop($object->id);
|
||||
|
||||
if (!$result)
|
||||
$this->_errors[] = Tools::displayError('An error occurred while updating object.').' <b>'.$this->table.'</b> ('.Db::getInstance()->getMsgError().')';
|
||||
elseif ($this->postImage($object->id) AND !sizeof($this->_errors))
|
||||
@@ -548,7 +546,6 @@ class AdminTaxRulesGroup extends AdminTab
|
||||
if (Tools::isSubmit('submitAdd'.$this->table.'AndStay'))
|
||||
Tools::redirectAdmin(self::$currentIndex.'&'.$this->identifier.'='.$object->id.'&conf=3&update'.$this->table.'&token='.$token);
|
||||
|
||||
$this->updateAssoGroupShop($object->id);
|
||||
$id_product = (int)Tools::getValue('id_product');
|
||||
if ($id_product)
|
||||
Tools::redirectAdmin('?tab=AdminCatalog&id_product='.$id_product.'&updateproduct&token='.Tools::getAdminToken('AdminCatalog'.(int)(Tab::getIdFromClassName('AdminCatalog')).(int)$this->context->employee->id));
|
||||
|
||||
@@ -274,12 +274,9 @@ echo '
|
||||
$this->includeSubTab('display');
|
||||
$assos_shop = Shop::getAssoTables();
|
||||
if (isset($assos_shop[$this->table]) AND $assos_shop[$this->table]['type'] == 'shop')
|
||||
{
|
||||
echo '<br/>';
|
||||
$this->displayAssoShop('key');
|
||||
}
|
||||
$this->displayAssoShop();
|
||||
elseif (isset($assos_shop[$this->table]) AND $assos_shop[$this->table]['type'] == 'group_shop')
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
$this->displayOptionsList();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,10 +70,10 @@ class AdminZones extends AdminTab
|
||||
<label class="t" for="active_off"> <img src="../img/admin/disabled.gif" alt="'.$this->l('Disabled').'" title="'.$this->l('Disabled').'" /></label>
|
||||
<p>'.$this->l('Allow or disallow shipping to this zone').'</p>
|
||||
</div>';
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
{
|
||||
echo '<label>'.$this->l('GroupShop association:').'</label><div class="margin-form">';
|
||||
$this->displayAssoGroupShop();
|
||||
$this->displayAssoShop('group_shop');
|
||||
echo '</div>';
|
||||
}
|
||||
echo '
|
||||
|
||||
+129
-149
@@ -98,8 +98,6 @@ abstract class AdminTabCore
|
||||
|
||||
/** @var bool */
|
||||
public $shopShareDatas = false;
|
||||
|
||||
public $shopAssoName = 'name';
|
||||
|
||||
/** @var array Cache for query results */
|
||||
protected $_list = array();
|
||||
@@ -200,7 +198,7 @@ abstract class AdminTabCore
|
||||
$className = 'AdminCatalog';
|
||||
$this->token = Tools::getAdminToken($className.(int)$this->id.(int)$this->context->employee->id);
|
||||
|
||||
if (!Tools::isMultiShopActivated())
|
||||
if (!Shop::isMultiShopActivated())
|
||||
$this->shopLinkType = '';
|
||||
}
|
||||
|
||||
@@ -283,11 +281,6 @@ abstract class AdminTabCore
|
||||
$this->displayOptionsList();
|
||||
$this->displayRequiredFields();
|
||||
$this->includeSubTab('display');
|
||||
$assos_shop = Shop::getAssoTables();
|
||||
if (isset($assos_shop[$this->table]) AND $assos_shop[$this->table]['type'] == 'shop')
|
||||
$this->displayAssoShop($this->shopAssoName);
|
||||
elseif (isset($assos_shop[$this->table]) AND $assos_shop[$this->table]['type'] == 'group_shop')
|
||||
$this->displayAssoGroupShop($this->shopAssoName);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -697,11 +690,10 @@ abstract class AdminTabCore
|
||||
$result = $object->update();
|
||||
$this->afterUpdate($object);
|
||||
}
|
||||
|
||||
if ($object->id)
|
||||
{
|
||||
$this->updateAssoShop((int)$object->id);
|
||||
$this->updateAssoGroupShop((int)$object->id);
|
||||
}
|
||||
$this->updateAssoShop($object->id);
|
||||
|
||||
if (!$result)
|
||||
$this->_errors[] = Tools::displayError('An error occurred while updating object.').' <b>'.$this->table.'</b> ('.Db::getInstance()->getMsgError().')';
|
||||
elseif ($this->postImage($object->id) AND !sizeof($this->_errors))
|
||||
@@ -862,54 +854,32 @@ abstract class AdminTabCore
|
||||
else
|
||||
Tools::redirectAdmin(self::$currentIndex.'&conf=4&token='.$token);
|
||||
}
|
||||
elseif (Tools::isSubmit('submitAssoShop') AND $this->tabAccess['add'] === '1' AND Tools::getValue('assoShopClass') == $this->className)
|
||||
{
|
||||
$this->updateAssoShop();
|
||||
Tools::redirectAdmin(self::$currentIndex.'&conf=4&token='.$token);
|
||||
}
|
||||
|
||||
elseif (Tools::isSubmit('submitAssoGroupShop') AND $this->tabAccess['add'] === '1' AND Tools::getValue('assoGroupShopClass') == $this->className)
|
||||
{
|
||||
$this->updateAssoGroupShop();
|
||||
Tools::redirectAdmin(self::$currentIndex.'&conf=4&token='.$token);
|
||||
}
|
||||
}
|
||||
|
||||
protected function updateAssoGroupShop($id_object = false)
|
||||
{
|
||||
$assos = array();
|
||||
foreach ($_POST AS $k => $row)
|
||||
{
|
||||
if (!preg_match('/^checkBoxGroupShopAsso_'.$this->table.'_([0-9]+)?_([0-9]+)$/Ui', $k, $res))
|
||||
continue;
|
||||
$id_asso_object = (!empty($res[1]) ? $res[1] : $id_object);
|
||||
$assos[] = array('id_object' => (int)$id_asso_object, 'id_group_shop' => (int)$res[2]);
|
||||
}
|
||||
if (!sizeof($assos))
|
||||
return;
|
||||
Db::getInstance()->Execute('DELETE FROM '._DB_PREFIX_.$this->table.'_group_shop'.($id_object ? ' WHERE `'.$this->identifier.'`='.(int)$id_object : ''));
|
||||
foreach ($assos AS $asso)
|
||||
Db::getInstance()->Execute('INSERT INTO '._DB_PREFIX_.$this->table.'_group_shop(`'.pSQL($this->identifier).'`, id_group_shop)
|
||||
VALUES('.(int)$asso['id_object'].', '.(int)$asso['id_group_shop'].')');
|
||||
}
|
||||
|
||||
|
||||
protected function updateAssoShop($id_object = false)
|
||||
{
|
||||
$shopAsso = Shop::getAssoTables();
|
||||
$groupShopAsso = GroupShop::getAssoTables();
|
||||
if (isset($shopAsso[$this->table]) && $shopAsso[$this->table]['type'] == 'shop')
|
||||
$type = 'shop';
|
||||
else if (isset($groupShopAsso[$this->table]) && $groupShopAsso[$this->table]['type'] == 'group_shop')
|
||||
$type = 'group_shop';
|
||||
else
|
||||
return ;
|
||||
|
||||
$assos = array();
|
||||
foreach ($_POST AS $k => $row)
|
||||
{
|
||||
if (!preg_match('/^checkBoxShopAsso_'.$this->table.'_([0-9]+)?_([0-9]+)$/Ui', $k, $res))
|
||||
if (!preg_match('/^checkBox'.Tools::toCamelCase($type, true).'Asso_'.$this->table.'_([0-9]+)?_([0-9]+)$/Ui', $k, $res))
|
||||
continue;
|
||||
$id_asso_object = (!empty($res[1]) ? $res[1] : $id_object);
|
||||
$assos[] = array('id_object' => (int)$id_asso_object, 'id_shop' => (int)$res[2]);
|
||||
$assos[] = array('id_object' => (int)$id_asso_object, 'id_'.$type => (int)$res[2]);
|
||||
}
|
||||
|
||||
if (!sizeof($assos))
|
||||
return;
|
||||
Db::getInstance()->Execute('DELETE FROM '._DB_PREFIX_.$this->table.'_shop'.($id_object ? ' WHERE `'.$this->identifier.'`='.(int)$id_object : ''));
|
||||
Db::getInstance()->Execute('DELETE FROM '._DB_PREFIX_.$this->table.'_'.$type.($id_object ? ' WHERE `'.$this->identifier.'`='.(int)$id_object : ''));
|
||||
foreach ($assos AS $asso)
|
||||
Db::getInstance()->Execute('INSERT INTO '._DB_PREFIX_.$this->table.'_shop(`'.pSQL($this->identifier).'`, id_shop)
|
||||
VALUES('.(int)$asso['id_object'].', '.(int)$asso['id_shop'].')');
|
||||
Db::getInstance()->Execute('INSERT INTO '._DB_PREFIX_.$this->table.'_'.$type.' (`'.pSQL($this->identifier).'`, id_'.$type.')
|
||||
VALUES('.(int)$asso['id_object'].', '.(int)$asso['id_'.$type].')');
|
||||
}
|
||||
|
||||
protected function updateOptions($token)
|
||||
@@ -1215,7 +1185,13 @@ abstract class AdminTabCore
|
||||
|
||||
$filterShop = '';
|
||||
if (isset($filterKey))
|
||||
{
|
||||
if (!$this->_group)
|
||||
$this->_group = 'GROUP BY a.'.pSQL($this->identifier);
|
||||
else if (!preg_match('#(\s|,)\s*a\.`?'.pSQL($this->identifier).'`?(\s|,|$)#', $this->_group))
|
||||
$this->_group .= ', a.'.pSQL($this->identifier);
|
||||
$filterShop = 'JOIN `'._DB_PREFIX_.$this->table.'_'.$filterKey.'` sa ON (sa.'.$this->identifier.' = a.'.$this->identifier.' AND sa.id_'.$filterKey.' IN ('.implode(', ', $idenfierShop).'))';
|
||||
}
|
||||
|
||||
/* Query in order to get results with all fields */
|
||||
$sql = 'SELECT SQL_CALC_FOUND_ROWS
|
||||
@@ -1463,7 +1439,8 @@ abstract class AdminTabCore
|
||||
$this->displayTop();
|
||||
|
||||
if ($this->edit AND (!isset($this->noAdd) OR !$this->noAdd))
|
||||
echo '<br /><a href="'.self::$currentIndex.'&add'.$this->table.'&token='.$this->token.'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add new').'</a><br /><br />';
|
||||
$this->displayAddButton();
|
||||
|
||||
/* Append when we get a syntax error in SQL query */
|
||||
if ($this->_list === false)
|
||||
{
|
||||
@@ -1614,6 +1591,11 @@ abstract class AdminTabCore
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
protected function displayAddButton()
|
||||
{
|
||||
echo '<br /><a href="'.self::$currentIndex.'&add'.$this->table.'&token='.$this->token.'"><img src="../img/admin/add.gif" border="0" /> '.$this->l('Add new').'</a><br /><br />';
|
||||
}
|
||||
|
||||
protected function _displayEnableLink($token, $id, $value, $active, $id_category = NULL, $id_product = NULL)
|
||||
{
|
||||
@@ -1712,7 +1694,7 @@ abstract class AdminTabCore
|
||||
if (!Validate::isCleanHtml($val))
|
||||
$val = Configuration::get($key);
|
||||
|
||||
$isDisabled = (Tools::isMultiShopActivated() && isset($field['visibility']) && $field['visibility'] > $this->context->shop->getContextType()) ? true : false;
|
||||
$isDisabled = (Shop::isMultiShopActivated() && isset($field['visibility']) && $field['visibility'] > $this->context->shop->getContextType()) ? true : false;
|
||||
|
||||
echo $this->getHtmlDefaultConfigurationValue($key, $this->_languages);
|
||||
echo '<label>'.$field['title'].' </label>
|
||||
@@ -1988,119 +1970,117 @@ abstract class AdminTabCore
|
||||
$this->l('Click here if you want to modify the main shop domain name').'</a>');
|
||||
}
|
||||
|
||||
protected function displayAssoShop($field_name = 'name', $selectName = null)
|
||||
protected function displayAssoShop($type = 'shop')
|
||||
{
|
||||
if (!Tools::isMultiShopActivated() || (!$this->_object && $this->context->shop->getContextType() != Shop::CONTEXT_ALL))
|
||||
if (!Shop::isMultiShopActivated() || (!$this->_object && $this->context->shop->getContextType() != Shop::CONTEXT_ALL))
|
||||
return;
|
||||
|
||||
$shops = Shop::getShops();
|
||||
$sql = 'SELECT DISTINCT a.`'.pSQL($this->identifier).'`, '.(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? 'b' : 'a').'.`'.pSQL($field_name).'`
|
||||
FROM `'._DB_PREFIX_.pSQL($this->table).'`a '.
|
||||
(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? ' LEFT JOIN `'._DB_PREFIX_.pSQL($this->table).'_lang` b ON (a.`'.pSQL($this->identifier).'`=b.`'.pSQL($this->identifier).'`)' : '').
|
||||
' WHERE 1'.(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? ' AND b.id_lang='.(int)$this->context->language->id : '').($this->_object ? ' AND a.`'.pSQL($this->identifier).'`='.(int)$this->_object->id : '');
|
||||
$objects = Db::getInstance()->ExecuteS($sql);
|
||||
$assos = array();
|
||||
$res = Db::getInstance()->ExecuteS('SELECT id_shop, `'.pSQL($this->identifier).'`
|
||||
FROM `'._DB_PREFIX_.pSQL($this->table).'_shop`');
|
||||
foreach ($res AS $row)
|
||||
$assos[$row['id_shop']][] = $row[$this->identifier];
|
||||
|
||||
if (!$this->_object)
|
||||
{
|
||||
$html = '
|
||||
<table cellpadding="0" cellspacing="0" class="table">
|
||||
<form name="updateAssoShop" action="'.self::$currentIndex.'&submitFields'.$this->table.'=1&token='.$this->token.'" method="post">
|
||||
<input type="hidden" name="assoShopClass" value="'.$this->className.'" />
|
||||
<tr>
|
||||
<th style="width: 200px">'.$this->l('Shop association').'</th>';
|
||||
foreach ($shops as $shop)
|
||||
$html .= '<th>'.$shop['name'].'</th>';
|
||||
if ($type != 'shop' && $type != 'group_shop')
|
||||
$type = 'shop';
|
||||
|
||||
$html .= '
|
||||
</tr>';
|
||||
|
||||
foreach ($objects AS $row)
|
||||
$assos = array();
|
||||
$sql = 'SELECT id_'.$type.', `'.pSQL($this->identifier).'`
|
||||
FROM `'._DB_PREFIX_.pSQL($this->table).'_'.$type.'`';
|
||||
foreach (Db::getInstance()->ExecuteS($sql) AS $row)
|
||||
$assos[$row['id_'.$type]][] = $row[$this->identifier];
|
||||
|
||||
$html = <<<EOF
|
||||
<script type="text/javascript">
|
||||
$().ready(function()
|
||||
{
|
||||
$html .= '<tr><td>'.$row[$field_name].'</td>';
|
||||
foreach ($shops AS $shop)
|
||||
$html .= '<td><input type="checkbox" name="checkBoxShopAsso_'.$this->table.'_'.$row[$this->identifier].'_'.$shop['id_shop'].'" id="checkedBox_'.$shop['id_shop'].'" '.((isset($assos[$shop['id_shop']]) AND in_array($row[$this->identifier], $assos[$shop['id_shop']])) ? 'checked="checked"' : '').'></td>';
|
||||
$html .= '</tr>';
|
||||
// Click on "all shop"
|
||||
$('.input_all_shop').click(function()
|
||||
{
|
||||
var checked = $(this).attr('checked');
|
||||
$('.input_group_shop').attr('checked', checked);
|
||||
$('.input_shop').attr('checked', checked);
|
||||
});
|
||||
|
||||
// Click on a group shop
|
||||
$('.input_group_shop').click(function()
|
||||
{
|
||||
$('.input_shop[value='+$(this).val()+']').attr('checked', $(this).attr('checked'));
|
||||
check_all_shop();
|
||||
});
|
||||
|
||||
// Click on a shop
|
||||
$('.input_shop').click(function()
|
||||
{
|
||||
check_group_shop_status($(this).val());
|
||||
check_all_shop();
|
||||
});
|
||||
|
||||
// Initialize checkbox
|
||||
$('.input_shop').each(function(k, v)
|
||||
{
|
||||
check_group_shop_status($(v).val());
|
||||
check_all_shop();
|
||||
});
|
||||
});
|
||||
|
||||
function check_group_shop_status(id_group)
|
||||
{
|
||||
var groupChecked = true;
|
||||
$('.input_shop[value='+id_group+']').each(function(k, v)
|
||||
{
|
||||
if (!$(v).attr('checked'))
|
||||
groupChecked = false;
|
||||
});
|
||||
$('.input_group_shop[value='+id_group+']').attr('checked', groupChecked);
|
||||
}
|
||||
|
||||
$html .= '<tr><td colspan="'.(sizeof($shops)+1).'"><center><input class="button" type="submit" value="'.$this->l('Submit').'" name="submitAssoShop" /></center></td></tr></table>
|
||||
</form>';
|
||||
}
|
||||
else
|
||||
|
||||
function check_all_shop()
|
||||
{
|
||||
var allChecked = true;
|
||||
$('.input_group_shop').each(function(k, v)
|
||||
{
|
||||
if (!$(v).attr('checked'))
|
||||
allChecked = false;
|
||||
});
|
||||
$('.input_all_shop').attr('checked', allChecked);
|
||||
}
|
||||
</script>
|
||||
EOF;
|
||||
|
||||
$html .= '<div class="assoShop">';
|
||||
$html .= '<table class="table" cellpadding="0" cellspacing="0" width="100%">
|
||||
<tr><th>'.$this->l('Shop').'</th></tr>';
|
||||
$html .= '<tr'.(($type == 'group_shop') ? ' class="alt_row"' : '').'><td><label class="t"><input class="input_all_shop" type="checkbox" /> '.$this->l('All shops').'</label></td></tr>';
|
||||
foreach (Shop::getTree() as $groupID => $groupData)
|
||||
{
|
||||
$html = '<table class="table" cellpadding="0" cellspacing="0">
|
||||
<tr><th>'.$this->l('Shop').'</th><th>'.$this->l('Association').'</th></tr>';
|
||||
foreach ($shops AS $shop)
|
||||
$html .= '<tr><td>'.$shop['name'].'</td><td><input type="checkbox" name="checkBoxShopAsso_'.$this->table.'_'.$this->_object->id.'_'.$shop['id_shop'].'" id="checkedBox_'.$shop['id_shop'].'" '.(((isset($assos[$shop['id_shop']]) AND in_array($this->_object->id, $assos[$shop['id_shop']])) || !$this->_object->id) ? 'checked="checked"' : '').'></td></tr>';
|
||||
$html .= '</table>';
|
||||
$groupChecked = ($type == 'group_shop' && ((isset($assos[$groupID]) && in_array($this->_object->id, $assos[$groupID])) || !$this->_object->id));
|
||||
$html .= '<tr'.(($type == 'shop') ? ' class="alt_row"' : '').'>';
|
||||
$html .= '<td><img style="vertical-align: middle;" alt="" src="../img/admin/lv2_b.gif" /><label class="t"><input class="input_group_shop" type="checkbox" name="checkBoxGroupShopAsso_'.$this->table.'_'.$this->_object->id.'_'.$groupID.'" value="'.$groupID.'" '.($groupChecked ? 'checked="checked"' : '').' /> '.$groupData['name'].'</label></td>';
|
||||
$html .= '</tr>';
|
||||
|
||||
if ($type == 'shop')
|
||||
{
|
||||
$total = count($groupData['shops']);
|
||||
$j = 0;
|
||||
foreach ($groupData['shops'] as $shopID => $shopData)
|
||||
{
|
||||
$checked = ((isset($assos[$shopID]) && in_array($this->_object->id, $assos[$shopID])) || !$this->_object->id);
|
||||
$html .= '<tr>';
|
||||
$html .= '<td><img style="vertical-align: middle;" alt="" src="../img/admin/lv3_'.(($j < $total - 1) ? 'b' : 'f').'.png" /><label class="child">';
|
||||
$html .= '<input class="input_shop" type="checkbox" value="'.$groupID.'" name="checkBoxShopAsso_'.$this->table.'_'.$this->_object->id.'_'.$shopID.'" id="checkedBox_'.$shopID.'" '.($checked ? 'checked="checked"' : '').' /> ';
|
||||
$html .= $shopData['name'].'</label></td>';
|
||||
$html .= '</tr>';
|
||||
$j++;
|
||||
}
|
||||
}
|
||||
}
|
||||
$html .= '</table></div>';
|
||||
echo $html;
|
||||
}
|
||||
|
||||
|
||||
protected function youEditFieldFor()
|
||||
{
|
||||
if (!Tools::isMultiShopActivated())
|
||||
if (!Shop::isMultiShopActivated())
|
||||
return;
|
||||
|
||||
return $this->l('This field will be changed for the shop:').' '.Context::getContext()->shop->name;
|
||||
}
|
||||
|
||||
protected function displayAssoGroupShop($field_name = 'name')
|
||||
{
|
||||
if (!Tools::isMultiShopActivated() || (!$this->_object && $this->context->shop->getContextType() != Shop::CONTEXT_ALL))
|
||||
return;
|
||||
|
||||
$objects = Db::getInstance()->ExecuteS('SELECT DISTINCT a.`'.pSQL($this->identifier).'`, '.(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? 'b' : 'a').'.`'.pSQL($field_name).'`
|
||||
FROM `'._DB_PREFIX_.pSQL($this->table).'` a'.
|
||||
(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? ' LEFT JOIN `'._DB_PREFIX_.pSQL($this->table).'_lang` b ON (a.`'.pSQL($this->identifier).'`=b.`'.pSQL($this->identifier).'`)' : '').
|
||||
' WHERE 1'.(($this->lang AND isset($this->fieldsDisplay[$field_name]['filter_key']) AND $this->fieldsDisplay[$field_name]['filter_key'] == 'b!'.$field_name) ? ' AND b.id_lang='.(int)$this->context->language->id : '').($this->_object ? ' AND a.`'.pSQL($this->identifier).'`='.(int)$this->_object->id : ''));
|
||||
$groups_shop = GroupShop::getGroupShops();
|
||||
$assos = array();
|
||||
$res = Db::getInstance()->ExecuteS('SELECT id_group_shop, `'.pSQL($this->identifier).'`
|
||||
FROM `'._DB_PREFIX_.pSQL($this->table).'_group_shop`');
|
||||
foreach ($res AS $row)
|
||||
$assos[$row['id_group_shop']][] = $row[$this->identifier];
|
||||
if (!$this->_object)
|
||||
{
|
||||
$html = '<form name="updateAssoGroupShop" action="'.self::$currentIndex.'&submitFields'.$this->table.'=1&token='.$this->token.'" method="post">
|
||||
<input type="hidden" name="assoGroupShopClass" value="'.$this->className.'" />
|
||||
<table cellpadding="0" cellspacing="0" class="table">
|
||||
<tr>
|
||||
<th style="width: 200px">'.$this->l('GroupShop association').'</th>';
|
||||
foreach ($groups_shop as $group_shop)
|
||||
$html .= '<th>'.$group_shop['name'].'</th>';
|
||||
|
||||
$html .= '
|
||||
</tr>';
|
||||
|
||||
foreach ($objects as $row)
|
||||
{
|
||||
$html .= '<tr><td>'.$row['name'].'</td>';
|
||||
foreach ($groups_shop AS $group_shop)
|
||||
$html .= '<td><input type="checkbox" name="checkBoxGroupShopAsso_'.$this->table.'_'.$row[$this->identifier].'_'.$group_shop['id_group_shop'].'" id="checkedBox_'.$group_shop['id_group_shop'].'" '.((isset($assos[$group_shop['id_group_shop']]) AND in_array($row[$this->identifier], $assos[$group_shop['id_group_shop']])) ? 'checked="checked"' : '').'></td>';
|
||||
$html .= '</tr>';
|
||||
}
|
||||
|
||||
$html .= '<td colspan="'.(sizeof($groups_shop)+1).'"><center><input style="margin-left:15px;" class="button" type="submit" value="'.$this->l('Submit').'" name="submitAssoGroupShop" /></center></td>
|
||||
</table>
|
||||
</form>';
|
||||
}
|
||||
else
|
||||
{
|
||||
$html = '<table class="table" cellpadding="0" cellspacing="0">
|
||||
<tr><th>'.$this->l('Shop').'</th><th>'.$this->l('Association').'</th></tr>';
|
||||
foreach ($groups_shop as $group_shop)
|
||||
$html .= '<tr><td>'.$group_shop['name'].'</td><td><input type="checkbox" name="checkBoxGroupShopAsso_'.$this->table.'_'.$this->_object->id.'_'.$group_shop['id_group_shop'].'" id="checkedBox_'.$group_shop['id_group_shop'].'" '.(((isset($assos[$group_shop['id_group_shop']]) AND in_array($this->_object->id, $assos[$group_shop['id_group_shop']])) || !$this->_object->id) ? 'checked="checked"' : '').'></td></tr>';
|
||||
$html .= '</table>';
|
||||
}
|
||||
echo $html;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Get current URL
|
||||
*
|
||||
@@ -2146,7 +2126,7 @@ abstract class AdminTabCore
|
||||
|| ($this->context->shop->getContextType() == Shop::CONTEXT_GROUP && Configuration::hasContext($key, null, Shop::CONTEXT_GROUP))) ? true : false;
|
||||
}
|
||||
|
||||
if (Tools::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_ALL && $testContext)
|
||||
if (Shop::isMultiShopActivated() && $this->context->shop->getContextType() != Shop::CONTEXT_ALL && $testContext)
|
||||
{
|
||||
echo '<div class="multishop_config">';
|
||||
echo '<a href="#" title="'.$this->l('Click here to use default value for this field').'"><img src="../img/admin/multishop_config.png" /></a>';
|
||||
@@ -2170,7 +2150,7 @@ abstract class AdminTabCore
|
||||
if (isset($options['visibility']) && $options['visibility'] > Context::getContext()->shop->getContextType())
|
||||
continue;
|
||||
|
||||
if (Tools::isMultiShopActivated() && isset($_POST['configUseDefault'][$key]))
|
||||
if (Shop::isMultiShopActivated() && isset($_POST['configUseDefault'][$key]))
|
||||
{
|
||||
Configuration::deleteFromContext($key);
|
||||
continue;
|
||||
|
||||
@@ -479,8 +479,7 @@ class CMSCategoryCore extends ObjectModel
|
||||
|
||||
public function getName($id_lang = NULL)
|
||||
{
|
||||
if (!$context)
|
||||
$context = Context::getContext();
|
||||
$context = Context::getContext();
|
||||
|
||||
if (!$id_lang)
|
||||
{
|
||||
|
||||
+1
-1
@@ -138,7 +138,7 @@ class CountryCore extends ObjectModel
|
||||
LEFT JOIN `'._DB_PREFIX_.'zone` z ON z.`id_zone` = c.`id_zone`
|
||||
WHERE 1'
|
||||
.($active ? ' AND c.active = 1' : '')
|
||||
.(!is_null($containStates) ? 'AND c.`contains_states` = '.(int)($containStates) : '').'
|
||||
.(!is_null($containStates) ? ' AND c.`contains_states` = '.(int)($containStates) : '').'
|
||||
ORDER BY cl.name ASC';
|
||||
$result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS($sql);
|
||||
$countries = array();
|
||||
|
||||
@@ -249,7 +249,7 @@ abstract class ObjectModelCore
|
||||
}
|
||||
}
|
||||
|
||||
if (!Tools::isMultishopActivated())
|
||||
if (!Shop::isMultishopActivated())
|
||||
{
|
||||
if (isset($assos[$this->table]) && $assos[$this->table]['type'] == 'shop')
|
||||
$result &= $this->associateTo(Context::getContext()->shop->getID(), 'shop');
|
||||
|
||||
+6
-28
@@ -691,37 +691,15 @@ class ShopCore extends ObjectModel
|
||||
}
|
||||
|
||||
/**
|
||||
* Generate a sweet HTML list for shop selection
|
||||
*
|
||||
* @return string
|
||||
* @return bool Return true if there is more than one shop
|
||||
*/
|
||||
public static function generateHtmlList()
|
||||
public static function isMultiShopActivated()
|
||||
{
|
||||
$tree = Shop::getTree();
|
||||
|
||||
// Get default value
|
||||
list($shopID, $shopGroupID) = Shop::getContext();
|
||||
if ($shopID)
|
||||
$value = 's-'.$shopID;
|
||||
else if ($shopGroupID)
|
||||
$value = 'g-'.$shopGroupID;
|
||||
else
|
||||
$value = '';
|
||||
static $total = null;
|
||||
|
||||
// Generate HTML
|
||||
$url = $_SERVER['REQUEST_URI'] . (($_SERVER['QUERY_STRING']) ? '&' : '?') . 'setShopContext=';
|
||||
$html = '<select class="shopList" onchange="location.href = \''.$url.'\'+$(this).val();">';
|
||||
$html .= '<option value="" class="first">' . translate('All shops') . '</option>';
|
||||
foreach ($tree as $gID => $groupData)
|
||||
{
|
||||
$html .= '<option class="group" value="g-'.$gID.'" '.(($value == 'g-'.$gID) ? 'selected="selected"' : '').'>'.htmlspecialchars($groupData['name']).'</option>';
|
||||
foreach ($groupData['shops'] as $sID => $shopData)
|
||||
if ($shopData['active'])
|
||||
$html .= '<option value="s-'.$sID.'" class="shop" '.(($value == 's-'.$sID) ? 'selected="selected"' : '').'>» '.$shopData['name'].'</option>';
|
||||
}
|
||||
$html .= '</select>';
|
||||
|
||||
return $html;
|
||||
if (is_null($total))
|
||||
$total = Shop::getTotalShops(true);
|
||||
return ($total > 1) ? true : false;
|
||||
}
|
||||
|
||||
public function copyShopData($old_id, $tables_import = false, $deleted = false)
|
||||
|
||||
@@ -1923,18 +1923,6 @@ FileETag INode MTime Size
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool Return true if there is more than one shop
|
||||
*/
|
||||
public static function isMultiShopActivated()
|
||||
{
|
||||
static $total = null;
|
||||
|
||||
if (is_null($total))
|
||||
$total = Shop::getTotalShops(true);
|
||||
return ($total > 1) ? true : false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert a shorthand byte value from a PHP configuration directive to an integer value
|
||||
|
||||
+52
-14
@@ -234,6 +234,14 @@ label.t {
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
}
|
||||
label.child {
|
||||
float: none;
|
||||
clear: none;
|
||||
padding: 0px;
|
||||
margin: 0px;
|
||||
font-weight: normal;
|
||||
font-size: 12px;
|
||||
}
|
||||
label.std {
|
||||
float: none;
|
||||
margin: 0px;
|
||||
@@ -914,26 +922,56 @@ table.permissions td {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList{
|
||||
#header_shoplist{
|
||||
background-image: url("../img/t/AdminShop.gif");
|
||||
background-position: 1px 50%;
|
||||
background-position: 0 3px;
|
||||
background-repeat: no-repeat;
|
||||
padding: 1px 1px 1px 14px;
|
||||
padding-left: 17px;
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList .first{
|
||||
font-weight: bold;
|
||||
#header_shoplist select.shopList option{
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList .group{
|
||||
font-weight: bold;
|
||||
font-style: italic;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList .shop{
|
||||
padding-left: 20px;
|
||||
}
|
||||
#header_shoplist select.shopList .first{
|
||||
font-weight: bold;
|
||||
background-color: #408BD5;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList .group{
|
||||
font-weight: bold;
|
||||
font-style: italic;
|
||||
padding-left: 10px;
|
||||
background-color: #C6DEFC;
|
||||
}
|
||||
|
||||
#header_shoplist select.shopList .shop{
|
||||
padding-left: 20px;
|
||||
background-color: #EAF2FC;
|
||||
}
|
||||
|
||||
.multishop_info{
|
||||
background-image: url(../img/admin/info_multishop.png);
|
||||
background-repeat: no-repeat;
|
||||
background-position: 2px 2px;
|
||||
background-color: #C6DEFC;
|
||||
border: 1px solid #669BDB;
|
||||
clear: both;
|
||||
display: block;
|
||||
font-size: 14px;
|
||||
padding: 10px;
|
||||
padding-left: 40px;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
.assoShop{
|
||||
width: 100%;
|
||||
max-width: 600px;
|
||||
max-height: 300px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.clearfix:after {
|
||||
content: ".";
|
||||
|
||||
@@ -37,7 +37,7 @@ if (!isset($_SERVER['REQUEST_URI']) || $_SERVER['REQUEST_URI'] == '')
|
||||
if ($tmp = strpos($_SERVER['REQUEST_URI'], '?'))
|
||||
$_SERVER['REQUEST_URI'] = substr($_SERVER['REQUEST_URI'], 0, $tmp);
|
||||
|
||||
define('INSTALL_VERSION', '1.5.0.0');
|
||||
define('INSTALL_VERSION', '1.5.0.1');
|
||||
define('MINIMUM_VERSION_TO_UPDATE', '0.8.5');
|
||||
define('INSTALL_PATH', dirname(__FILE__));
|
||||
if (version_compare(phpversion(), '5.0.0', '<'))
|
||||
|
||||
@@ -62,7 +62,7 @@ if ($tmp = strpos($_SERVER['REQUEST_URI'], '?'))
|
||||
$_SERVER['REQUEST_URI'] = substr($_SERVER['REQUEST_URI'], 0, $tmp);
|
||||
$_SERVER['REQUEST_URI'] = str_replace('//', '/', $_SERVER['REQUEST_URI']);
|
||||
|
||||
define('INSTALL_VERSION', '1.5.0.0');
|
||||
define('INSTALL_VERSION', '1.5.0.1');
|
||||
|
||||
define('PS_INSTALLATION_IN_PROGRESS', true);
|
||||
include_once(INSTALL_PATH.'/classes/ToolsInstall.php');
|
||||
|
||||
@@ -79,7 +79,7 @@ class Gsitemap extends Module
|
||||
Configuration::updateValue('GSITEMAP_ALL_CMS', (int)Tools::getValue('GSITEMAP_ALL_CMS'));
|
||||
Configuration::updateValue('GSITEMAP_ALL_PRODUCTS', (int)Tools::getValue('GSITEMAP_ALL_PRODUCTS'));
|
||||
|
||||
if (Tools::isMultiShopActivated())
|
||||
if (Shop::isMultiShopActivated())
|
||||
$res = $this->generateSitemapIndex();
|
||||
else
|
||||
$res = $this->generateSitemap(Configuration::get('PS_SHOP_DEFAULT'), GSITEMAP_FILE);
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<module>
|
||||
<name>prestafraud</name>
|
||||
<displayName><![CDATA[PrestaShop Security]]></displayName>
|
||||
<version><![CDATA[1.0]]></version>
|
||||
<version><![CDATA[0.99]]></version>
|
||||
<description><![CDATA[Protect your store from fraudulent payments]]></description>
|
||||
<author><![CDATA[PrestaShop]]></author>
|
||||
<tab><![CDATA[payment_security]]></tab>
|
||||
|
||||
+19
-24
@@ -632,7 +632,6 @@ $_LANGADM['AdminCustomers24a23d787190f2c4812ff9ab11847a72'] = 'Statut :';
|
||||
$_LANGADM['AdminCustomers125cf762f473a17738b97ee3fabe4e8b'] = 'Ce client est enregistré en tant';
|
||||
$_LANGADM['AdminCustomers084e0343a0486ff05530df6c705c8bb4'] = 'qu\'invité';
|
||||
$_LANGADM['AdminCustomers80e915c39ca9254655d2802979aa698b'] = 'Transformer en compte client';
|
||||
$_LANGADM['AdminCustomers450a7392b73a4b434634f8fe0e3f13c8'] = 'Cette fonctionnalité génère un mot de passe aléatoire et envoie un e-mail au client.';
|
||||
$_LANGADM['AdminCustomers81fe7d0c685ca9f1829f5ff52370d06e'] = 'Un compte client existe déjà avec la même adresse email';
|
||||
$_LANGADM['AdminCustomersa7136d956fbff49c3912e44722dbf000'] = 'Ajoutez une note privée';
|
||||
$_LANGADM['AdminCustomersac7ba2fb36727fd3fcbf967c27cd9dc0'] = 'Cette note sera affichée pour tous les employés mais pas au client.';
|
||||
@@ -966,15 +965,14 @@ $_LANGADM['AdminGroupShop00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Activé';
|
||||
$_LANGADM['AdminGroupShop791a9f4aec774fbe5591d239f3cf0113'] = 'Groupe de boutiques';
|
||||
$_LANGADM['AdminGroupShopfa2428e247e092ba7b8380481f5d2c23'] = 'Vous ne pouvez pas éditer ce groupe de boutiques lorque que vous avez plus d\'une boutique';
|
||||
$_LANGADM['AdminGroupShop677c9a43ef87f39833e514afc74569be'] = 'Nom du groupe de boutiques';
|
||||
$_LANGADM['AdminGroupShopac61fc878200b9a3b81bb559ee06ebe8'] = 'Données partagées';
|
||||
$_LANGADM['AdminGroupShopb9f5c797ebbf55adccdd8539a65a0241'] = 'Désactivé';
|
||||
$_LANGADM['AdminGroupShop888b1d51d058241df2517906a3be897b'] = 'Partager les clients, les commandes et les paniers entre les magasins de ce groupe';
|
||||
$_LANGADM['AdminGroupShop97dd1ad98c5cdd8fae3bbe74174979f0'] = 'Stock partagé';
|
||||
$_LANGADM['AdminGroupShop468c3f9dcd67b3f768d2161908d820eb'] = 'Stock partagé entre les magasins de ce groupe';
|
||||
$_LANGADM['AdminGroupShop24a23d787190f2c4812ff9ab11847a72'] = 'Statut:';
|
||||
$_LANGADM['AdminGroupShop37c0e2b9736bc4cc2005f7be3fd66fe5'] = 'Activer ou désactiver la boutique';
|
||||
$_LANGADM['AdminGroupShop38fb7d24e0d60a048f540ecb18e13376'] = 'Enregistrer';
|
||||
$_LANGADM['AdminGroupShop19f823c6453c2b1ffd09cb715214813d'] = 'Champ obligatoire';
|
||||
$_LANGADM['AdminGroupShop817b32b9fa482c23e9413b150b5e6d47'] = 'Ajouter un nouveau groupe de boutiques';
|
||||
$_LANGADM['AdminGroupsb718adec73e04ce3ec720dd11a06a308'] = 'ID';
|
||||
$_LANGADM['AdminGroups49ee3087348e8d44e1feda1917443987'] = 'Nom';
|
||||
$_LANGADM['AdminGroups104d9898c04874d0fbac36e125fa1369'] = 'Réduction';
|
||||
@@ -1577,11 +1575,11 @@ $_LANGADM['AdminModules48a963c9173e950ace0c801509eb8ef2'] = 'Module installé ma
|
||||
$_LANGADM['AdminModulesbacc7d9b8003258a090961660729a9b5'] = 'Aucun module ';
|
||||
$_LANGADM['AdminModulesb2f31ef3065bf40b2da9fa8525c6adb9'] = 'Désactiver ce module';
|
||||
$_LANGADM['AdminModules668c99c1164d5348f99c0878770b53a8'] = 'Activer ce module pour toutes les boutiques';
|
||||
$_LANGADM['AdminModules9ce81cf948b7325d53c64aa610851552'] = 'Cette action supprime définitivement le module sur votre serveur. Êtes-vous vraiment sûr ?';
|
||||
$_LANGADM['AdminModulesf2a6c498fb90ee345d997f888fce3b18'] = 'Supprimer';
|
||||
$_LANGADM['AdminModulesbcfaccebf745acfd5e75351095a5394a'] = 'Desactiver';
|
||||
$_LANGADM['AdminModules2faec1f9f8cc7f8f40d521c4dd574f49'] = 'Activer';
|
||||
$_LANGADM['AdminModulesf1206f9fadc5ce41694f69129aecac26'] = 'Configurer';
|
||||
$_LANGADM['AdminModules9ce81cf948b7325d53c64aa610851552'] = 'Cette action supprime définitivement le module sur votre serveur. Êtes-vous vraiment sûr ?';
|
||||
$_LANGADM['AdminModulesf2a6c498fb90ee345d997f888fce3b18'] = 'Supprimer';
|
||||
$_LANGADM['AdminModules3488a51eb7f723d65daeff912e69b177'] = 'Filtres sélectionnés';
|
||||
$_LANGADM['AdminModulesPositions51a8b3a61ad63d4e5df2ce86870e39b8'] = 'Greffer un module';
|
||||
$_LANGADM['AdminModulesPositions498f79c4c5bbde77f1bceb6c86fd0f6d'] = 'Montrer';
|
||||
@@ -1605,8 +1603,6 @@ $_LANGADM['AdminModulesPositionse55f75a29310d7b60f7ac1d390c8ae42'] = 'Module';
|
||||
$_LANGADM['AdminModulesPositions98a11cd6082576d0b5c84f37bde0b380'] = 'Greffer le module sur';
|
||||
$_LANGADM['AdminModulesPositionsd5f1381c5f97f928df4ef8d18c2a27c0'] = 'Exceptions';
|
||||
$_LANGADM['AdminModulesPositions9ee91b01130064edd60d330a3888d17e'] = 'Fichiers pour lesquels le module ne sera pas affiché';
|
||||
$_LANGADM['AdminModulesPositions4343bf7ca200e246f3bd9f451a707a77'] = 'Ces fichiers se trouvent dans votre répertoire de base';
|
||||
$_LANGADM['AdminModulesPositions8399e2c9acea28c205621d4ecd4d8bcb'] = 'ex. ';
|
||||
$_LANGADM['AdminModulesPositions8a6617dfa35ce54642fc61fd53935a91'] = 'Merci de taper chaque nom de fichier séparé par une virgule';
|
||||
$_LANGADM['AdminModulesPositionsc9cc8cce247e49bae79f15173ce97354'] = 'Enregistrer';
|
||||
$_LANGADM['AdminModulesPositions19f823c6453c2b1ffd09cb715214813d'] = 'Champs requis';
|
||||
@@ -1803,8 +1799,6 @@ $_LANGADM['AdminPPreferences048a517fd1781ed314402df592f2ea68'] = 'Largeur :';
|
||||
$_LANGADM['AdminPPreferencesc9c4e9c1a92d9b15e0cdefc7ddb1bbd5'] = 'La largeur maximum des images envoyées par les clients';
|
||||
$_LANGADM['AdminPPreferences9a61f5ce3180789a8455f536681cabc1'] = 'Hauteur :';
|
||||
$_LANGADM['AdminPPreferencesdde6c96bcb0af50f18f37572267d904a'] = 'La hauteur maximum des images envoyées par les clients';
|
||||
$_LANGADM['AdminPPreferences044a77653804fe33652d68098d98121e'] = 'Activer la compatibilité avec les anciennes images';
|
||||
$_LANGADM['AdminPPreferencese7ed00268dc16aecaac5a60aeb6f4c73'] = 'Ce réglage doit rester sur \"Oui\" à moins que vous n’ayez déplacé avec succès les images dans l\'onglet Préférences > Image';
|
||||
$_LANGADM['AdminPPreferences068f80c7519d0528fb08e82137a72131'] = 'Produits';
|
||||
$_LANGADM['AdminPaymenta75b01d1ff66cd0a327bda1effa71dec'] = 'Liste de modules de paiement';
|
||||
$_LANGADM['AdminPayment1f3a05f7b45df8e5c5cafaf0485eedd5'] = 'Cliquez pour voir la liste des modules de paiement.';
|
||||
@@ -1892,13 +1886,13 @@ $_LANGADM['AdminPreferences1656072e927c8d3acd24359cbb648bb5'] = 'Activer le SSL'
|
||||
$_LANGADM['AdminPreferences8de64d6b49cebd2306af6ddbcd268700'] = 'Si votre hébergeur propose le protocole SSL, vous pouvez activer le cryptage SSL (https://) pour l\'identification des clients et le processus de commande';
|
||||
$_LANGADM['AdminPreferencesed5454727fb14b9800ead242d0972184'] = 'Vérifier l\'IP dans le cookie';
|
||||
$_LANGADM['AdminPreferences9cfc2e28ebe44b3e14f9d780d2150650'] = 'Vérifiez l\'adresse IP du cookie afin d\'éviter que votre cookie soit volé';
|
||||
$_LANGADM['AdminPreferencesc87330f475e4384552c0077927d26e1a'] = 'Durée de vie du cookie Front Office';
|
||||
$_LANGADM['AdminPreferences6d964e25aa6aa88c8353880e00202cf4'] = 'Indiquez le nombre d\'heures';
|
||||
$_LANGADM['AdminPreferencese673b146824251548feecf1f3929aceb'] = 'Durée de vie du cookie Back Office';
|
||||
$_LANGADM['AdminPreferencese12874163bcb256726ddfe643aa53a63'] = 'Améliore la sécurité du Front Office';
|
||||
$_LANGADM['AdminPreferencescce43372fe8624c0edf870f417557b84'] = 'Active ou désactive les tokens en front-office afin d\'améliorer la sécurité de PrestaShop';
|
||||
$_LANGADM['AdminPreferences16c390c0fd1efc4f493a6a861aa22d2f'] = 'Bulles d\'aide Back-office';
|
||||
$_LANGADM['AdminPreferencesdc58d598b2b22e50c5af01134305a4fb'] = 'Active l\'aide contextuelle en dessous des champs de saisie';
|
||||
$_LANGADM['AdminPreferencesc87330f475e4384552c0077927d26e1a'] = 'Durée de vie du cookie Front Office';
|
||||
$_LANGADM['AdminPreferences6d964e25aa6aa88c8353880e00202cf4'] = 'Indiquez le nombre d\'heures';
|
||||
$_LANGADM['AdminPreferencese673b146824251548feecf1f3929aceb'] = 'Durée de vie du cookie Back Office';
|
||||
$_LANGADM['AdminPreferences59aad85b376259844b471a758908a3c1'] = 'Type de processus de commande';
|
||||
$_LANGADM['AdminPreferences6c9f73b6b5d16baa641cf8343348eb8d'] = 'Vous pouvez choisir le type de processus de commande, standard (5 étapes, 5 pages) ou \"One Page Checkout\" (5 étapes au sein d\'une même page)';
|
||||
$_LANGADM['AdminPreferences403e42a4b26e379cb13563c98ab63067'] = 'Activer la commande express (Guest checkout)';
|
||||
@@ -2620,6 +2614,7 @@ $_LANGADM['AdminShop746e1cf754a476e8c249b306a8caf162'] = 'Dupliquer les données
|
||||
$_LANGADM['AdminShopff8be7dc0dfd076e494b88721b257237'] = 'Utilisez cette option pour associer les données (produits, modules etc) de la même façon que la boutique sélectionnée';
|
||||
$_LANGADM['AdminShop38fb7d24e0d60a048f540ecb18e13376'] = 'Enregistrer';
|
||||
$_LANGADM['AdminShop19f823c6453c2b1ffd09cb715214813d'] = 'Champ obligatoire';
|
||||
$_LANGADM['AdminShop652342e19bf26f8d1b350e60aad3e3bf'] = 'Ajouter une nouvelle boutique';
|
||||
$_LANGADM['AdminShopUrlb718adec73e04ce3ec720dd11a06a308'] = 'ID';
|
||||
$_LANGADM['AdminShopUrleae639a70006feff484a39363c977e24'] = 'Domaine';
|
||||
$_LANGADM['AdminShopUrl7e01d4a0c1fa89814ea68649a506eeee'] = 'Domaine SSL';
|
||||
@@ -2627,12 +2622,13 @@ $_LANGADM['AdminShopUrl3840cd8f73026713059f0ed0562c5493'] = 'Uri';
|
||||
$_LANGADM['AdminShopUrle93c33bd1341ab74195430daeb63db13'] = 'Nom de la boutique';
|
||||
$_LANGADM['AdminShopUrl676e457154510d142765d535fbf11df0'] = 'URL principale';
|
||||
$_LANGADM['AdminShopUrl00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Activé';
|
||||
$_LANGADM['AdminShopUrl47d910fcb9af855348659f4648891203'] = 'Répertoire de PrestaShop';
|
||||
$_LANGADM['AdminShopUrl3e4548e11c844387433cba376b4f8433'] = 'Nom du répertoire PrestaShop sur votre serveur Web, encadrée par des slashes (par exemple, / shop /)';
|
||||
$_LANGADM['AdminShopUrl809ba9a802624b3958a53090a72d9c7a'] = 'URL de la boutique';
|
||||
$_LANGADM['AdminShopUrl8447306210a0972ac94b7d774799df1a'] = 'URI';
|
||||
$_LANGADM['AdminShopUrl735831f3e9a8ebab393c13ae548e0a30'] = 'Dossier de votre boutique ex: ipods for http://yourshopname.com/ipods/, laisser vide si aucun dossier.';
|
||||
$_LANGADM['AdminShopUrl450501eb70b32a0f0a4ce5dec1cec578'] = 'La réécriture d\'URL doit être activé pour utiliser cette fonctionnalité.';
|
||||
$_LANGADM['AdminShopUrl102c89334ecf0958f2065978d05748fd'] = 'URI physique';
|
||||
$_LANGADM['AdminShopUrl5a70b8f93f7c6992c283ee62cdfb78ab'] = 'Dossier du magasin sur votre serveur. Laissez ce champ vide si votre magasin n\'est pas installé dans un sous dossier.';
|
||||
$_LANGADM['AdminShopUrl8ba460441234cdf94377a0818485f414'] = 'URI virtuelle';
|
||||
$_LANGADM['AdminShopUrlb483b64288977921afe330ac8e387e9b'] = 'Ce dossier virtuel ne doit pas exister sur votre serveur, et sera utilisé pour associer une URL à votre magasin.';
|
||||
$_LANGADM['AdminShopUrlf6e7829277b67d5a8805d6728a810362'] = 'L\'URL rewriting doit être activé sur votre serveur pour utiliser cette fonctionalité.';
|
||||
$_LANGADM['AdminShopUrl6c2f1301971c801a2d1390c39680116f'] = 'L\'URL de votre magasin sera';
|
||||
$_LANGADM['AdminShopUrl9f82518d468b9fee614fcc92f76bb163'] = 'Boutique';
|
||||
$_LANGADM['AdminShopUrl9efaaad2d5b51cd643529cd6872e169a'] = 'URL principale:';
|
||||
$_LANGADM['AdminShopUrlb9f5c797ebbf55adccdd8539a65a0241'] = 'Désactivé';
|
||||
@@ -2641,6 +2637,7 @@ $_LANGADM['AdminShopUrl24a23d787190f2c4812ff9ab11847a72'] = 'Statut:';
|
||||
$_LANGADM['AdminShopUrlad02fa652079de031f48cc5cf9396598'] = 'Activer ou désactiver l\'URL';
|
||||
$_LANGADM['AdminShopUrl38fb7d24e0d60a048f540ecb18e13376'] = 'Enregistrer';
|
||||
$_LANGADM['AdminShopUrl19f823c6453c2b1ffd09cb715214813d'] = 'Champ obligatoire';
|
||||
$_LANGADM['AdminShopUrl241da03b3b26160119804f9067f45a1c'] = 'Ajouter une nouvelle URL de magasin';
|
||||
$_LANGADM['AdminSlipb718adec73e04ce3ec720dd11a06a308'] = 'ID';
|
||||
$_LANGADM['AdminSlip6fde42aa0857eb92fc0d0c3fb1c6c8b7'] = 'ID Commande';
|
||||
$_LANGADM['AdminSlip446faa7da2d42ba4ffeda73cb119dd91'] = 'Date d\'émission';
|
||||
@@ -3059,7 +3056,6 @@ $_LANGADM['AdminUpgrade36be1130454bc8c4e0a41d36fa062a8b'] = 'Impossible de crée
|
||||
$_LANGADM['AdminUpgrade6824d57b7af37f605bd97d34defc3761'] = 'Exportation svn terminée. Suppression des fichiers exemples...';
|
||||
$_LANGADM['AdminUpgradef70307d8297e48a8783d41e6f3313d51'] = 'Erreur lors de l\'export SVN';
|
||||
$_LANGADM['AdminUpgrade4eecd9c195e46c054ef7da6d9d1a738b'] = 'Extraction terminée. Suppression des fichiers exemples...';
|
||||
$_LANGADM['AdminUpgrade0929f38eaac3ca38801f08b7269574e0'] = 'Impossible d\'extraire %1$s dans %2$s ...';
|
||||
$_LANGADM['AdminUpgrade6b2d0404b7faba0e791e15a52586a149'] = 'Basculer vers svn checkout (useSvn activé)';
|
||||
$_LANGADM['AdminUpgradef0e38ac0c558a7f216ae98382b9e58f5'] = 'Site désactivé. Téléchargement en cours (peut prendre ';
|
||||
$_LANGADM['AdminUpgrade4f7c02592a962e40a920f32f3a24f2df'] = 'filesToUpgrade n\'est pas un tableau';
|
||||
@@ -3296,13 +3292,13 @@ $_LANGADM['AdminTab93cba07454f06a4a960172bbd6e2a435'] = 'Oui';
|
||||
$_LANGADM['AdminTabbafd7322c6e97d25b6299b5d6fe8920b'] = 'Non';
|
||||
$_LANGADM['AdminTab5da618e8e4b89c66fe86e32cdafde142'] = 'De';
|
||||
$_LANGADM['AdminTabe12167aa0a7698e6ebc92b4ce3909b53'] = 'A';
|
||||
$_LANGADM['AdminTabef61fb324d729c341ea8ab9901e23566'] = 'Nouveau';
|
||||
$_LANGADM['AdminTabee77ea46b0c548ed60eadf31bdd68613'] = 'Requête SQL invalide';
|
||||
$_LANGADM['AdminTab5ece607071fe59ddc4c88dc6abfe2310'] = 'Aucun élément trouvé';
|
||||
$_LANGADM['AdminTab00d23a76e43b46dae9ec7aa9dcbebb32'] = 'Activé';
|
||||
$_LANGADM['AdminTabb9f5c797ebbf55adccdd8539a65a0241'] = 'Désactivé';
|
||||
$_LANGADM['AdminTab08a38277b0309070706f6652eeae9a53'] = 'Bas';
|
||||
$_LANGADM['AdminTab258f49887ef8d14ac268c92b02503aaa'] = 'Haut';
|
||||
$_LANGADM['AdminTabef61fb324d729c341ea8ab9901e23566'] = 'Nouveau';
|
||||
$_LANGADM['AdminTabed75712b0eb1913c28a3872731ffd48d'] = 'Dupliquer';
|
||||
$_LANGADM['AdminTabbfc18def58cfa50029d149e9b932e974'] = 'Copier également l\'image ?';
|
||||
$_LANGADM['AdminTab4351cfebe4b61d8aa5efa1d020710005'] = 'Voir';
|
||||
@@ -3315,12 +3311,8 @@ $_LANGADM['AdminTabcc3787ca78f445f481069a4c047f7e7a'] = 'Choisissez une langue :
|
||||
$_LANGADM['AdminTabb51d77dc443d4051900f1bad9fe885aa'] = 'Vous êtes actuellement connecté avec le nom de domaine suivant :';
|
||||
$_LANGADM['AdminTab6aa5c0d2cbc4a0f53206777be432056a'] = 'Celui-ci est différent du nom de domaine principal de la boutique présent dans l\'onglet \"Préférences > SEO & URLs\".';
|
||||
$_LANGADM['AdminTab7e4b7faf0fc36dc296e66f6ea3096dcd'] = 'Cliquez ici si vous souhaitez modifier le nom de domaine principal de la boutique';
|
||||
$_LANGADM['AdminTab9d55fc80bbb875322aa67fd22fc98469'] = 'Boutique associée';
|
||||
$_LANGADM['AdminTaba4d3b161ce1309df1c4e25df28694b7b'] = 'Envoyer';
|
||||
$_LANGADM['AdminTab9f82518d468b9fee614fcc92f76bb163'] = 'Boutique';
|
||||
$_LANGADM['AdminTab61d458d8946b919c7c2590e9d6cc0a57'] = 'Association';
|
||||
$_LANGADM['AdminTab4483a6be5e4574762e7dbcf4879918e8'] = 'Ce champs sera changé pour la boutique';
|
||||
$_LANGADM['AdminTab84e87d0eb37d86ff67b558515bcf686c'] = 'Groupe de boutiques associé';
|
||||
$_LANGADM['AdminTabf7bfb20490b4b0850ff5b3f2f726c7a0'] = 'Cliquez ici pour utiliser la valeur par défaut pour ce champ';
|
||||
$_LANGADM['AdminTabf2f552caf8d0321d77fbe4dd7c400073'] = 'Utiliser la valeur par défaut';
|
||||
$_LANGADM['index86bbc77fd75ac02c21b84a37b260eadd'] = 'Panneau d\'administration';
|
||||
@@ -3335,6 +3327,7 @@ $_LANGADM['index56deca22a707214865f7ea3ae6391d67'] = 'factures';
|
||||
$_LANGADM['index8642a2f37a5d42b54ce53b1fbdd1583f'] = 'paniers';
|
||||
$_LANGADM['index13348442cc6a27032d2b4aa28b75a5d3'] = 'Recherche';
|
||||
$_LANGADM['index4f32a32dea642737580dd71cdfd8d3c0'] = 'Accès rapide';
|
||||
$_LANGADM['index891cea3363eb13a9ed383ae32f0b48d8'] = 'Selectionnez votre boutique :';
|
||||
$_LANGADM['index53cd939ae14e33855274e17a3c411fdd'] = 'Pour des raisons de sécurité, vous devez :';
|
||||
$_LANGADM['index362b56674d07160fab60725a927bbf13'] = 'supprimer le dossier /install';
|
||||
$_LANGADM['index7286baef44d09300636a4b99c533523c'] = 'Temps de chargement :';
|
||||
@@ -3342,7 +3335,8 @@ $_LANGADM['indexbbaff12800505b22a853e8b7f4eb6a22'] = 'Contact';
|
||||
$_LANGADM['index3e937d04c1c83492260a33d926ca587c'] = 'Bug Tracker';
|
||||
$_LANGADM['indexe6a7f8a2f42cc35979973da8dfb10720'] = 'Forum';
|
||||
$_LANGADM['indexeed2839c1e3e5f7069ed03b2f6d4c6dd'] = 'Panneau d\'administration';
|
||||
$_LANGADM['indexb3e73ea1eb958c338f5e395dc55d2865'] = 'Vous visualiez / configurez actuellement votre boutique pour';
|
||||
$_LANGADM['indexe67615d6c998f1a013f1d27bbc555cff'] = 'Vous configurez votre site pour le groupe de magasins %s';
|
||||
$_LANGADM['index1165ec47ce359708f4a608d4decd04f6'] = 'Vous configurez votre site pour le magasin %s';
|
||||
$_LANGADM['indexdb26e10564e958809d798e8048fcbc0a'] = 'Clé de sécurité invalide';
|
||||
$_LANGADM['indexa4da6f31ab268a5310bc475e63ab92db'] = 'Je comprends les risques et je veux afficher la page';
|
||||
$_LANGADM['index5196611ad1bf27e9cef5375b038c04db'] = 'Sortez-moi d\'ici !';
|
||||
@@ -3367,5 +3361,6 @@ $_LANGADM['indexfb080b51680e721b19b6af4293264b6c'] = 'retour à la page d\'ident
|
||||
$_LANGADM['index1928895508822da82ce5c4932a114044'] = 'Indiquez votre adresse e-mail';
|
||||
$_LANGADM['index449d3718fc3a9e9bf3f3fc0254bb5625'] = '(celle que vous avez indiquée durant l\'installation) afin de recevoir vos nouveaux codes d\'accès par e-mail';
|
||||
$_LANGADM['index94966d90747b97d1f0f206c98a8b1ac3'] = 'Envoyer';
|
||||
$_LANGADM['index804ccd6219996d12eda865d1c0707423'] = 'Toutes les boutiques';
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user