Results 1 to 3 of 3

Thread: Attribuer des droits sur des champs

  1. #1
    consulingb is offline Sugar Community Member
    Join Date
    Mar 2008
    Posts
    36

    Default Attribuer des droits sur des champs

    Bonjour,
    est-il possible d'attribuer des droits aux utilisateur sur des champs dans sugar?

    Je m'explique: je voudrais pouvoir attribuer le droit de modifier une opportunité sans qu'il est la possibilité de modifier le montant.

    Merci

  2. #2
    ezmou's Avatar
    ezmou is offline Senior Member
    Join Date
    Feb 2009
    Posts
    179

    Default Re: Attribuer des droits sur des champs

    Bonjour

    En version Pro, vous avez la possibilité de réaliser une restriction par champs via les rôles.

    Sinon, vous pouvez réaliser un développement spécifique pour empêcher la modification de ce champs

    Cordialement
    SYNOLIA
    Oldest SugarCRM partner in the world and Gold Partner / Partenaire GOLD SugarCRM
    Official French Translator / Responsable de la traduction Française

    51 Avenue Jean Jaurès - 69007 LYON - FRANCE - Tel : +33 4 27 70 53 70
    www.synolia.com | @synolia sur Twitter
    www.crm-france.com | Forum CRM-France

  3. #3
    Captivea's Avatar
    Captivea is offline Sugar Community Member
    Join Date
    Aug 2010
    Posts
    52

    Lightbulb Re: Attribuer des droits sur des champs

    Pour aller un peu plus loin dans la réponse précédente :
    - La version CE permet de choisir les droits par paire module/action pour chaque rôle.
    - Les versions Pro et Entreprise permettent de fixer une granularité plus fine dans le choix et la sélection des droits en descendant au niveau des champs pour chaque rôle.

    Pour contourner ce problème, deux solutions :
    - Si votre champ ne doit jamais être modifié alors vous pouvez le bloquer : pour se faire dans le fichier custom/modules/votre_module/metadata/editviewdefs.php, recherchez votre champ, après les propriétés 'name' et 'label', ajoutez :

    'displayParams' => array('readOnly' => 'true'),

    Le champ sera alors affiché, mais l'utilisateur ne pourra en modifier le contenu. Ne confondez pas avec la propriété HTML 'disabled' qui empécherait le champ de prendre le focus et griserait le fond de votre champ d'entrée, mais qui aurait pour conséquence de ne plus renvoyer le champ lorsque vous postez le formulaire. La valeur de ce champ ne serait alors pas sauvegardé dans la base de donnée.

    - Si votre champ doit être modifiable sous condition : Ajoutez du javascript !
    Une fois un champ rempli vous appellez une fonction JS qui calcule et active ou non le champ montant ou qui à l'initialisation du formulaire grise le champ "montant" des opportunitées si l'utilisateur n'est pas admin.

    Le javascript peut être ajouté à plusieurs endroits : le plus simple est soit via la balise customCode du champ qui va appeller le code JS quand il est changé, ou
    si le code JS est appellé au chargement de la page, utilisez l'élément 'javascript' du fichier editviewdefs.php généralement situé juste avant la déclaration du pannel 'default' . Cet élément permet d'ajouter des fichiers JS externes, ou de déclarer de nouvelles fonctions aisémment.

    Enfin pour effectuer la vérification si l'utilisateur est admin, il vous faudra utiliser une balise SMARTY que vous aurez initialisé dans le fichier view.edit.php fonction display() (avant l'appel à parent::display() )

    Par exemple :
    global $current_user;
    this->ss->assign("CURRENT_USER_ADMIN", $current_user->is_admin);

    Puis dans le fichier editviewdefs dans la partie du javascript vous pouvez faire un test de la valeur de la variable :
    <script language="javascript>
    {literal}
    function testAdmin()
    {
    {/literal}
    {if ($CURRENT_USER_ADMIN == 1)} code si admin {else} code si non admin {/if}
    {literal}
    }
    {/literal}
    </script>

    En espérant avoir été complet dans les éléments de ma réponse,
    Cordialement
    Captivea
    Partenaire officiel SugarCRM France
    Découvrez nos solutions CRM basées sur SugarCRM
    -----
    695 av. Paul Louis Merlin - "Espace Merlin" - 73800 Montmélian
    Tél : 08 11 69 63 30 – Fax : 09 72 13 05 20

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. [Security Suite] Gestion de droits
    By agdoudou in forum Français
    Replies: 1
    Last Post: 2009-12-28, 08:25 AM
  2. [Security Suite] groupes et gestion des droits
    By david.b in forum Français
    Replies: 0
    Last Post: 2009-07-30, 09:01 PM
  3. Gestion des droits dans SUgarCRM
    By ludorious in forum Français
    Replies: 3
    Last Post: 2008-11-23, 01:47 PM
  4. Droits sur les modules créés
    By Wengu in forum Français
    Replies: 7
    Last Post: 2008-09-16, 11:21 AM
  5. Attribuer plusieurs utilisateurs à un ticket
    By holyfire in forum Français
    Replies: 1
    Last Post: 2007-06-29, 07:12 AM

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •