Groupes d'utilisateurs personnalisés Joomla! + Community Builder

Plus d'informations
09 Avr 2009 18:15 #7 par lotfi_universal
Ouvrez le fichier [VOTRE SITE]/administrator/components/com_comprofiler/comprofiler.class.php

Cherchez cette ligne de code (ligne 3036) :
Code:
"\n AND t.useraccessgroupid IN (".implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))).")"

Remplacez-là par ceci :
Code:
// . "\n AND t.useraccessgroupid IN (".implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))).")" . "\n AND (t.useraccessgroupid = ".$user->gid." OR t.useraccessgroupid = -2) AND t.enabled = 1"


Cherchez cette ligne de code (ligne 3493) :

Code:
$sql .= "\n AND t.useraccessgroupid IN (" . implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))) . ")";


Remplacez-là par ceci :
Code:
// $sql .= "\n AND t.useraccessgroupid IN (" . implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))) . ")"; $sql .= "\n AND (t.useraccessgroupid = ".$user->gid." OR t.useraccessgroupid = -2) AND t.enabled = 1";


Cherchez cette ligne de code (ligne 3550) :
Code:
$where[] = 't.useraccessgroupid IN (' . implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))) . ')';


Remplacez-là par ceci :

Code:
//$where[] = 't.useraccessgroupid IN (' . implode(',',getChildGIDS(userGID( $_CB_framework->myId() ))) . ')'; $where[] = '(t.useraccessgroupid = ' . $user->gid . ' OR t.useraccessgroupid = -2)';


Ça y'est, votre fichier est correctement patché!

Donc si vous faites un test en créant un utilisateur pour chaque groupe d'utilisateurs, chaque compte utilisateur devrait normalement avoir son onglet personnalisé dans son profil.

Veuillez vous connecter ou vous enregistrer pour rejoindre la conversation.

Plus d'informations
09 Avr 2009 18:22 #8 par lotfi_universal
Comment répartir les différents utilisateurs dans les bons groupes?

Maintenant que l'affichage de champs personnalisés pour des groupes d'utilisateurs personnalisés fonctionne, il faut s'attaquer à un autre problème : comment faire pour distribuer automatiquement les bons groupes aux bons utilisateurs?

En les laissant choisir!

Fort heureusement pour nous, il existe un plugin pour ça : CB JLS Group Selection, créé par Jorge Luis Savoini. Attention, ce plugin fonctionne uniquement pour Community Builder 1.2 RC3 !

Après avoir téléchargé le plugin, installez-le (au bas de la page Plugin Management du composant Community Builder).

Dans Field Management, créez un nouveau champs appelé précisément « cb_usertype », de type « Drop Down (Single Select) »). Entrez deux valeurs, soit les noms exacts de vos deux groupes, dans notre exemple « employe » et « employeur ».

Cliquez sur le plugin (JLSGroupSelector) dans la liste de la page Plugin Management pour le configurer.

Maintenant qu'il est possible pour tout le monde d'accéder à la configuration du plugin JLS Group Selection, assurez-vous que le plugin est bien publié ET activé (enabled).

Il vous suffit de demander obligatoirement à l'utilisateur de répondre au champ « cb_usertype » à l'enregistrement pour le forcer à choisir son groupe!

Voilà, c'est tout! C'est bien complexe pour quelque chose qui devrait pourtant être très simple...

Pour tout autre developpement c'est simple il faut suivre le même principe
N'oublier surtout pas que ce travail est hack!
Lorsqu'on ait confronté au exigences d'un client on apprend a tout faire
bonne chance
Les utilisateur(s) suivant ont remercié: jdumas

Veuillez vous connecter ou vous enregistrer pour rejoindre la conversation.

Plus d'informations
09 Avr 2009 18:56 #9 par Imprecio
Bonsoir,

J'ai bien suivi la procédure en début du post et j'ai donc mon nouveau groupe de créer que je retrouve bien fans le backend de Joomla.

Or quand je vais dan la gestion des utilisateurs et que j'attribue un utilisateur à ce groupe personnalisé. En frontend, pas de souci il a du coup bien les acces spécifique, petit bémol, je ne le vois plus du coup dans le backend au niveau de lagestion des utilisateurs.

Donc plus aucune action possible sur cet utilisateur depuis le panneau admin de Joomla:S

Est ce normal ?

Veuillez vous connecter ou vous enregistrer pour rejoindre la conversation.

Modérateurs: lavstephtramber91failrOnScottuxdede17serge
Temps de génération de la page : 0.743 secondes
Propulsé par Kunena