// fix admin / superadmin rights

This commit is contained in:
mMarinetti
2011-12-22 22:05:08 +00:00
parent a7ead2a29b
commit 38ed741476
2 changed files with 22 additions and 2 deletions
+17 -1
View File
@@ -110,6 +110,14 @@ class AdminEmployeesControllerCore extends AdminController
if (!($obj = $this->loadObject(true)))
return;
$available_profiles = Profile::getProfiles($this->context->language->id);
if ($obj->id_profile == _PS_ADMIN_PROFILE_ && $this->context->employee->id_profile != _PS_ADMIN_PROFILE_)
$this->_errors[] = Tools::displayError('You cannot edit SuperAdmin profile.');
return parent::renderForm();
$path = _PS_ADMIN_DIR_.'/themes/';
foreach (scandir($path) as $theme)
if (file_exists($path.$theme.'/admin.css'))
@@ -227,13 +235,21 @@ class AdminEmployeesControllerCore extends AdminController
'desc' => $this->l('Allow or disallow this employee to log into this Back Office')
);
// if employee is not SuperAdmin (id_profile = 1), don't make it possible to select the admin profile
if ($this->context->employee->id_profile != _PS_ADMIN_PROFILE_)
foreach ($available_profiles as $i => $profile)
if ($available_profile['id_profile'] == _PS_ADMIN_PROFILE_)
{
unset($available_profiles[$i]);
break;
}
$this->fields_form['input'][] = array(
'type' => 'select',
'label' => $this->l('Profile:'),
'name' => 'id_profile',
'required' => true,
'options' => array(
'query' => Profile::getProfiles($this->context->language->id),
'query' => $available_profiles,
'id' => 'id_profile',
'name' => 'name',
'default' => array(
+5 -1
View File
@@ -24,6 +24,7 @@ $_ERRORS['472266472e3353d32d8a8ffa25c60154'] = 'une erreur s\'est produite penda
$_ERRORS['b1367942aa02ea8c9d4aa07cdf5e473c'] = 'vous devez garder au moins un objet';
$_ERRORS['ec5f6f7f65190788d12ef16ab6135009'] = 'vous ne pouvez pas tous les supprimer';
$_ERRORS['9476b0a23e72aed97f3551779d987674'] = 'Vous ne pouvez pas supprimer ces objets.';
$_ERRORS['f8a12963c3dc4b4904584daa232d0e08'] = 'Impossible de supprimer les images associées.';
$_ERRORS['bc33aa1314e7dcd3472db72472b909b2'] = 'une erreur s\'est produite pendant la suppression';
$_ERRORS['f90676e0d2061813a868bc9d86c4d982'] = 'une erreur s\'est produite pendant la suppression de l\'objet';
$_ERRORS['77ae44aa6c998166fcf1a87496278ad5'] = 'impossible de charger l\'objet';
@@ -301,6 +302,7 @@ $_ERRORS['ff9e9791ff17e1ca431449bb2fe992c0'] = 'Date de fin invalide';
$_ERRORS['c569149bbb8ca2ea337fa0a4c6c98409'] = 'Aucun bon de livraison trouvé pour cette période';
$_ERRORS['577c8acd6847e0a8fc64911123f2ec1f'] = 'Vous devez au minimum spécifier un serveur et un port SMTP. Si vous n\'êtes pas sûrs, utilisez la fonction mail() de PHP à la place.';
$_ERRORS['b7d99b30df0aade1e4d459fab8c7078f'] = 'Aucun profil';
$_ERRORS['38a0d8212c5e89f483426776fcb7d5ed'] = 'Vous ne pouvez pas éditer le profil SuperAdmin.';
$_ERRORS['eaa0d1591e6369a298dcd6cb1a8eba8a'] = 'Email invalide';
$_ERRORS['f5d44b60e38b28d19549bb7a107654ca'] = 'Vous ne pouvez pas supprimer votre propre compte.';
$_ERRORS['052800f7397d4c12924faa83534c62f0'] = 'Vous ne pouvez pas désactiver ou supprimer le dernier compte administrateur';
@@ -338,6 +340,7 @@ $_ERRORS['f783b48ba9193ecd51ea751e5a660d05'] = 'ne peux être enregistré';
$_ERRORS['9d0af39694637f8184020a6193a3943c'] = 'La ré-écriture d\'URL automatique n\'est pas parvenue à générer une valeur par défaut pour :';
$_ERRORS['83d41d7e6f25cd9be1e48204697fe0c9'] = 'Le lien re-écrit pour';
$_ERRORS['db5bf82f326c6332a2c3dc1b0dd4598e'] = 'a été re-écrit comme';
$_ERRORS['b2c396eff6cd6aae23e4da0218c7cc93'] = 'La catégorie racine ne peut pas être modifiée';
$_ERRORS['cf325676512d19d8150c0244327926df'] = 'ne peux être copié';
$_ERRORS['a328aae6eaecda76cb31c7347cb926f6'] = 'ID du groupe invalide pour cette règle de taxe';
$_ERRORS['3ed308de66927376b1d3c19fdcaa0edc'] = 'Erreur lors de la copie de l\'image:';
@@ -461,7 +464,7 @@ $_ERRORS['aadb27e7677e4c4c85e4aa747ef7626e'] = 'Pour utiliser Xcache, vous devez
$_ERRORS['3d064d5efb6cf2ed52cf72bfef7c7db2'] = 'Pour utiliser CacheFS, le dossier';
$_ERRORS['a9b036d3e91d53892d6a67c31327e456'] = 'doit avoir les droits d\'écriture';
$_ERRORS['8e4b5b9003a1e89146ecd623f76f4179'] = 'Merci de définir une profondeur répertoire ';
$_ERRORS['77cdfaefb21a2a1187a097ade3ab89c8'] = 'La limite choisie est superieure à celle du serveur. Vous devez augmenter la limite d\\\'envoi de votre serveur';
$_ERRORS['77cdfaefb21a2a1187a097ade3ab89c8'] = 'La limite choisie est superieure à celle du serveur. Vous devez augmenter la limite d\'envoi de votre serveur';
$_ERRORS['db7a282fcab155c89c9324ff799d8140'] = 'Assignez une page cms de conditions générales de vente si vous voulez qu\'elle soit lue';
$_ERRORS['bfd99559857dfcfc40cb0d0e6c8aee1b'] = 'Nom invalide';
$_ERRORS['931b7343428529d2673554b2cfb06211'] = 'Nom trop long';
@@ -497,6 +500,7 @@ $_ERRORS['fe22b7cb2de47c8eafec2ad82fada9dd'] = 'le produit doit être créé ava
$_ERRORS['e389fb6a0b1d8aba957ef5bd33929e86'] = 'le nom des champs sont invalides';
$_ERRORS['8dc03df823f55c2581dc111036d8f176'] = 'Une erreur s\'est produite lors de l\'association de l\'image avec la boutique';
$_ERRORS['12367e1504dd72592be0743614c6dd7c'] = 'Une erreur s\'est produite lors du déplacement de l\'image';
$_ERRORS['e482c77a047f3ac75b89ef2d1e69eaea'] = 'Erreur à la suppression de l\'image produit';
$_ERRORS['17b47060583191452b3d4455820673c9'] = 'Mauvais identifiants !';
$_ERRORS['aa57ac2e1a1fb514ef0b002ed63fd079'] = 'Prix/réduction invalide';
$_ERRORS['3a65f932fe23b8ca8eb70bffe2b215bf'] = 'Merci de séelectionner un type de réduction (montant fixe ou pourcentage)';