diff --git a/admin-dev/themes/template/payment/view.tpl b/admin-dev/themes/template/payment/view.tpl
index ab3f35274..b2ee38ed0 100644
--- a/admin-dev/themes/template/payment/view.tpl
+++ b/admin-dev/themes/template/payment/view.tpl
@@ -25,26 +25,26 @@
*}
{extends file="helper/view/view.tpl"}
-
{block name="override_tpl"}
+{if !$shop_context}
+
{l s='You have more than one shop. You need to select one to configure payment.'}
+{else}
+ {l s='Payment modules list'}
+ {if isset($url_modules)}
+
+ {/if}
- {l s='Payment modules list'}
- {if isset($url_modules)}
-
- {/if}
-
-
-
- {if $display_restrictions}
-
{l s='Payment module restrictions'}
- {foreach $lists as $list}
- {include file='payment/restrictions.tpl'}
-
- {/foreach}
- {else}
- {l s='No payment module installed'}
- {/if}
-
+
+ {if $display_restrictions}
+
{l s='Payment module restrictions'}
+ {foreach $lists as $list}
+ {include file='payment/restrictions.tpl'}
+
+ {/foreach}
+ {else}
+
+ {l s='No payment module installed'}
+ {/if}
+{/if}
{/block}
-
diff --git a/controllers/admin/AdminPaymentController.php b/controllers/admin/AdminPaymentController.php
index b141f0535..9d0243dba 100644
--- a/controllers/admin/AdminPaymentController.php
+++ b/controllers/admin/AdminPaymentController.php
@@ -46,7 +46,7 @@ class AdminPaymentControllerCore extends AdminController
$countries = DB::getInstance()->executeS('
SELECT id_country
FROM '._DB_PREFIX_.'module_country
- WHERE id_module = '.(int)$module->id.' AND `id_shop`='.$shop_id
+ WHERE id_module = '.(int)$module->id.' AND `id_shop`='.(int)$shop_id
);
foreach ($countries as $country)
$module->country[] = $country['id_country'];
@@ -56,7 +56,7 @@ class AdminPaymentControllerCore extends AdminController
$currencies = DB::getInstance()->executeS('
SELECT id_currency
FROM '._DB_PREFIX_.'module_currency
- WHERE id_module = '.(int)$module->id.' AND `id_shop`='.$shop_id
+ WHERE id_module = '.(int)$module->id.' AND `id_shop`='.(int)$shop_id
);
foreach ($currencies as $currency)
$module->currency[] = $currency['id_currency'];
@@ -66,7 +66,7 @@ class AdminPaymentControllerCore extends AdminController
$groups = DB::getInstance()->executeS('
SELECT id_group
FROM '._DB_PREFIX_.'module_group
- WHERE id_module = '.(int)$module->id.' AND `id_shop`='.$shop_id
+ WHERE id_module = '.(int)$module->id.' AND `id_shop`='.(int)$shop_id
);
foreach ($groups as $group)
$module->group[] = $group['id_group'];
@@ -86,17 +86,20 @@ class AdminPaymentControllerCore extends AdminController
public function postProcess()
{
- if (Tools::isSubmit('submitModulecountry'))
- $this->saveRestrictions('country');
- else if (Tools::isSubmit('submitModulecurrency'))
- $this->saveRestrictions('currency');
- else if (Tools::isSubmit('submitModulegroup'))
- $this->saveRestrictions('group');
+ if ($this->tabAccess['edit'] === '1')
+ {
+ if (Tools::isSubmit('submitModulecountry'))
+ $this->saveRestrictions('country');
+ else if (Tools::isSubmit('submitModulecurrency'))
+ $this->saveRestrictions('currency');
+ else if (Tools::isSubmit('submitModulegroup'))
+ $this->saveRestrictions('group');
+ }
}
private function saveRestrictions($type)
{
- Db::getInstance()->execute('DELETE FROM '._DB_PREFIX_.'module_'.$type.' WHERE id_shop = '.Context::getContext()->shop->getID(true));
+ Db::getInstance()->execute('DELETE FROM `'._DB_PREFIX_.'module_'.bqSQL($type).'` WHERE id_shop = '.Context::getContext()->shop->getID(true));
foreach ($this->payment_modules as $module)
if ($module->active && isset($_POST[$module->name.'_'.$type.'']))
foreach ($_POST[$module->name.'_'.$type.''] as $selected)
@@ -114,7 +117,7 @@ class AdminPaymentControllerCore extends AdminController
}
public function initView()
- {
+ {
// link to modules page
if (isset($this->payment_modules[0]))
$token_modules = Tools::getAdminToken('AdminModules'.(int)Tab::getIdFromClassName('AdminModules').(int)$this->context->employee->id);
@@ -176,6 +179,7 @@ class AdminPaymentControllerCore extends AdminController
$lists[$key_list] = $list;
}
+ $shop_context = (!Shop::isFeatureActive() || $this->context->shop->getContextType() == Shop::CONTEXT_SHOP);
$this->tpl_view_vars = array(
'url_modules' => isset($token_modules) ? 'index.php?tab=AdminModules&token='.$token_modules.'&&filterCategory=payments_gateways' : null,
'display_restrictions' => $display_restrictions,
@@ -183,6 +187,7 @@ class AdminPaymentControllerCore extends AdminController
'ps_base_uri' => __PS_BASE_URI__,
'payment_modules' => $this->payment_modules,
'url_submit' => self::$currentIndex.'&token='.$this->token,
+ 'shop_context' => $shop_context
);
$this->toolbar_title = $this->l('Paiement');