jcmht Posted July 9, 2009 Share Posted July 9, 2009 Bonjour,Pour être bref sur mon petit soucis (que je rencontre depuis 5 jours, et la je bloque complet :-( )j'ai rajouter un champ (int) dans la table "_product" nommé "emp"ce que je souhaiterais (plutôt obligatoire) que lorsqu'un employer se logue dans le BO, qu'il ne voit que la liste des produits qui lui sont attribués en filtrant grâce au champ "emp"le résultat devra être çà :mon employer 3 ne peur voir que les produits où "emp" = 3 dans la categorie 10mon employer 5 ne peut voir que les produits où "emp" = 5 dans la categorie 10 aussipeut importe la catégorie, il faut qu'ils ne puissent voir (et modifier bien sûr) que ceux qu'ils leur sont imposés.Je n'arrive pas à trouver dans AdminProducts ou AdminCatalog, où je peux rajouter cette vérif, cette condition..j'ai bien çà dans AdminProducts : public function displayList($token = NULL) { /* Display list header (filtering, pagination and column names) */ $this->displayListHeader($token); if (!sizeof($this->_list)) echo ''.$this->l('No items found').''; /* Show the content of the table */ $this->displayListContent($token); /* Close list table and submit button */ $this->displayListFooter($token); } mais impossible de trouver la fonction "displayListContent" dans un fichierc'est pénible ....juste un flitre à l'aide du champ "emp" .....Si une âme de DEV passe par là et partager ses connaissances...;-)A+ enfin j'espère Link to comment Share on other sites More sharing options...
liandri Posted July 9, 2009 Share Posted July 9, 2009 Juste une p'tite question pour aller plus loin !Tu as ajouter ton champ "emp" dans la table "_product", hors tu dis juste après vouloir filtrer les résultats par une gestion de catégorie !tes employés doivent avoir accès à des catégories ou à des produits ? ou les deux ?car le principe hiérarchique des droits sont gérés différemment après !si tu veux gérer l'option un produit = un droit de gestion de l'employer, alors c'est bien sur la table _product qu'il faut mettre le champen revanche si tu veux gérer l'option une catégorie = un droit de gestion de l'employé sur tout ce qui appartient à cette catégorie c'est plutot sur la table _category ! Link to comment Share on other sites More sharing options...
jcmht Posted July 9, 2009 Author Share Posted July 9, 2009 merci pour ta participation !j'ai réussi il y a deux minutes ;-) ! trop content !en fait , dans AdminProduct, on a çà : $this->_join = ' LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = a.`id_product` AND i.`cover` = 1) LEFT JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_product` = a.`id_product`)'; $this->_filter = 'AND cp.`id_category` = '.intval($this->_category->id) ); $this->_select = 'cp.`position`, i.`id_image`'; parent::__construct(); j'ai modifié en : $this->_join = ' LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = a.`id_product` AND i.`cover` = 1) LEFT JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_product` = a.`id_product`)'; $this->_filter = 'AND cp.`id_category` = '.intval($this->_category->id).' AND cp.`id_emp` = '.intval($this->_emp); $this->_select = 'cp.`position`, i.`id_image`'; parent::__construct(); j'ai bien le résulat que je veux !Le problème est que :je me logue en tant qu'employer qui n'a aucun produit encore, je créer donc un produit dans X catégorie,Une fois le produit crée, le champ "emp" se rempli correctement dans la table "_product", mais ds la table "_category_product", le champ "emp" lui reste à 0je ne voit pas dans quelle ligne de AdminProduct, s'effectue l'insertion des catégories auxquelles appartient le produit, ce qui me permettrait de pouvoir rajouter l'information de l'employer dans le champ "emp" de cette table ("_category_product")quand je vais voir la table"_category_product", toutes les catégories que j'ai coché en créant le produit sont insérées mais pas le champ "emp" qui reste à 0, donc pour cet employer, aucun produit s'affichent...Qd je dit "j'ai réussi", c'est que le code est ok, mais j'ai du remplir le champ "emp" ds "_category_product" à la main pour pouvoir tester, vu le problème que j'annonce ci-dessus Link to comment Share on other sites More sharing options...
jcmht Posted July 10, 2009 Author Share Posted July 10, 2009 Fini, j'ai bien réussi à faire ce que je souhaitais, merci Liandri Link to comment Share on other sites More sharing options...
liandri Posted July 10, 2009 Share Posted July 10, 2009 De rien mais je n'ai pas fait grand chose ! A+ Link to comment Share on other sites More sharing options...
jcmht Posted July 10, 2009 Author Share Posted July 10, 2009 t'as qd même essayer de t'interresser !alors merci , lol Link to comment Share on other sites More sharing options...
macgor Posted August 7, 2009 Share Posted August 7, 2009 Juste pour savoir, meme si cela fait longtemps... qu'a tu fais comme autre modification pour faire fonctionner tout cela, car c'est exactement ce que je souhaiterais faire...Dommage d'ailleurs que l'on ne puisse pas faire cela nativement... Ou alors j'ai pas su faire !! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now