Pour des raisons de maintenance du site, un arrêt du site aura lieu lundi 16 décembre 2019 à partir de 18H00, pour une durée estimée de 30 minutes.

Veuillez nous excuser pour les désagréments que cette opération pourrait causer.

Bloquer l'enregistrement d'une activité

Thomas LEGAT · le 16/04/14 à 09:46

Bonjour,

Sur un JCMS 8.0.2 avec l'ESN en 4.2, les espaces collaboratifs en 5.3, est il possible dans JCMS de bloquer l'enregistrement d'une activité lors de la création, mise à jour, suppression d'un certain type de contenu?
En effet afin d'étendre les besoin de l'ESN nous avons créé des contenus utilisateurs qui sont rattachés au membre (comme le fait nativement pour les contenus ESNProfil). Malheureusement dans notre cas, lors de la création, mise à jour de ces contenus, nous voyons apparaître l'activité correspondante dans le mur d'activité des membres. Cela n'a aucun intéret pour ces types de contenus.
Est il possible alors de bloquer l'enregistrement des activités comme cela est possible avec le store avec le DO_NOT_STORE?

Merci d'avance,

15 pts
Kevin Bransard - le 16/04/14 à 11:26
Meilleure réponse

Bonjour, 

Il faut ajouter un DataController sur les types définis dans votre plugin.xml.

Dans ce DataController, vous ajouterez alors dans la map de contexte le String suivant : "jcmsplugin.esn.activity.skip" défini à TRUE.

Vous pouvez aussi directement utiliser la constante du MemberActivityManager : MemberActivityManager.CTX_SKIP_ACTIVITY

Le code du DataController : 

 

public class CustomDataController extends BasicDataController implements
PluginComponent{

  @Override
  public void beforeWrite(Data data, int op, Member mbr, Map context) {
    context.put(CTX_SKIP_ACTIVITY, true);
  }
}
9 pts
Thomas LEGAT · le 16/04/14 à 11:45

Tout fonctionne bien!
Pour info la constante est aussi accessible à partir de la classe Member. Du coup j'ai basculé sur la classe MemberActivityManager.

0 pt