Pregunta

Tengo algunas preocupaciones con un enfoque que estoy tomando para centralizar un calendario en MOSS. El escenario es que hay 1 calendario para la Empresa y Eventos se filtran a través de la orientación por público. Es bastante sencillo para convertir la audiencia objetivo en un calendario, mi preocupación viene cuando el cliente quiere automática poblar ese evento con un valor predeterminado en audiencias objetivo.

Por ejemplo, si un administrador de la tienda es publicar el evento el público objetivo serían solamente ser la tienda, del mismo modo si un distrito puestos de director de un evento que sólo se aplicaría a las tiendas en su / su distrito. La idea es tirar de un grupo predeterminado de AD o incluso audiencias globales si es necesario, en “default” al público objetivo en función de quién está creando el evento.

supongo que voy a necesitar usar la clase AudienceManager y un controlador de eventos para conseguir este consumado.

¿Puedo definir al público objetivo a través de jQuery a un grupo de anuncios? ¿Es necesario para anular un controlador de eventos como ItemAdding ir y recuperar el grupo?

Esto parece que sería una petición bastante común cuando se utiliza Audiencias de destino con un evento del calendario, pero he pasado bastante de poco de tiempo tratando de encontrar ejemplos y he quedado corto.

¿Fue útil?

Solución

Mi mejor conjetura es que usted debe utilizar un hecho ItemEventReceiver, anulando el caso ItemAdding y ItemUpdating (en caso que el elemento se edita?), Tanto a llamar al mismo método SetAudience, en ese método que programó la audiencia basado en SPCOntext.Current. Web.CurrentUser y los grupos que se encuentra, o quizás algún nivel de permisos personalizado se crea

código incompleto:

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
}

}

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top