Frage

Ich habe einige Bedenken mit einem Ansatz, bekam ich nehme einen Kalender in MOSS zu zentralisieren. Das Szenario ist, dass es ein Kalender für das Unternehmen und Event werden gefiltert über Zielgruppen-Targeting. Es ist recht geradlinig Publikum einzuschalten Targeting in einem Kalender, meine Sorge kommt, wenn die Client-Auto will dieses Ereignis mit einem Standardwert in Zielgruppen bevölkern zu.

Zum Beispiel, wenn ein Filialleiter wird die Veranstaltung veröffentlicht die Zielgruppe würde nur der Laden sein, ebenso wenn ein Bezirksleiter Beiträge ein Ereignis nur in die Läden in seinem / ihrem Bezirk gelten würde. Die Idee ist es, eine Standardgruppe von AD zu ziehen oder sogar einem globalen Publikum, wenn nötig, auf „default“ die Zielgruppe basierend auf der die Veranstaltung erstellt.

Ich vermute, ich werde die AudienceManager Klasse und einen Ereignishandler zu bekommen dies erreicht verwenden müssen.

Kann ich die Zielgruppe über JQuery eine AD-Gruppe? Brauche ich einen Event-Handler wie ItemAdding außer Kraft zu setzen, um die Gruppe zu gehen und abrufen?

Dies scheint, wie es ein ziemlich gemeinsamer Antrag bei der Nutzung Zielgruppen mit einem Kalenderereignis sein würde, aber ich habe ziemlich von wenig Zeit damit verbracht, Beispiele zu finden und habe kurz kommen.

War es hilfreich?

Lösung

Meine beste Vermutung ist, dass man in die Tat eine ItemEventReceiver verwenden sollte, das ItemAdding und ItemUpdating Ereignis überschreibt (einhüllen das Element bearbeitet wird?), Die beide die gleiche Methode SetAudience Aufruf, in diesem Verfahren Sie das Publikum auf SPCOntext.Current Basis eingestellt. Web.CurrentUser und die Gruppen, die er in ist, oder vielleicht einige benutzerdefinierte Berechtigungsstufe Sie erstellen

Unvollständige Code:

protected override ItemAdding(properties)
{
  SetAudience(properties.ListItem)
}

protected override ItemUpdating(properties)
{
  SetAudience(properties.ListItem)
}

private void SetAudience(SPListItem item)
{
  // get current user's groups
  // check if user is a member of store managers / district managers group
  // get all audiences below this user (i.e. all stores in district or single store
  // add relevant audiences to item
}

}

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top