Mentioner un User dans le SocialPost

Bonjour,
Je rencontre un probléme au niveau des mention dans les SocialPost, l’outil ne me suggére pas les Users quand je tape @.
J’ai attribué les droit CRUD sur l’objet User, et SocialPost et SocialFollow mais toujours pas de suggestion.
Avez vous une idée svp d’ou ça peux venir ? et est ce possible de modifier le service pour qu’il liste uniquement des utilisateur d’un groupe précis
Merci

Il faut taper quelques caractères afin de lancer la recherche du @login. Le popup s’affiche sous le textarea.

L’objet utilisé est User par défaut, sinon c’est l’objet défini par le paramètre

OBJECT_MANAGEMENT_USER

A savoir celui qui s’ouvre quand on clique sur son profil dans le header.

L’instance de recherche est follow_User (ou follow_<MyUser> si ce paramètre est défini).
On peut donc y lister qui on veut via le serach-spec de MyUser l’objet hérité du User ou de SimpleUser. Sinon ça lira parmi tous les utilisateurs actifs.

Enfin pas besoin d’habiliter cette complétion, Simplicité donne automatiquement un droit de lecture sur cette instance.

Merci pour votre retour,
Mes utilisateurs sont sont des ChefProjet qui hérite du BO SimpleUser, J’ai essayé de changer le OBJECT_MANAGEMENT_USER vers SimpleUser mais pareil toujours pas de suggestion, je remets donc par défaut à User

Je n’ai pas compris ce que vous vouliez dire par l’instance follow_User, je dois récuperer une instance par nom et appliquer le search-spec ? si oui ou dois-je placer ce code svp ?

PS: La fonctionnalité marche bien quand je suis avec le compte designer
Merci d’avance

  • Créez un héritier de SimpleUser, disons MyUser.
  • OBJECT_MANAGEMENT_USER = MyUser
  • puis dans le postLoad de MyUser, filtrez par SQL les users que vous souhaitez limiter à un groupe, par exemple :
public class MyUser extends com.simplicite.objects.System.SimpleUser {
  @Override
  public void postLoad() {
    super.postLoad();
    // Instance dédiée à la recherche de followers / mention
    if (getInstanceName().equals("follow_MyUser"))
        setDefaultSearchSpec(getDefaultSearchSpec() +
        " and t.row_id in (select r.rsp_login_id from m_resp r, m_group g where r.rsp_group_id=g.row_id and g.grp_name='MYGROUP')");
  }
}