Quintiq file version 2.0
#parent: #root
Method InitializeSubscribers () id:Method_FormCalendarUnavailableEvent_InitializeSubscribers
{
  #keys: '[415136.0.666291565]'
  Body:
  [*
    owner_i := LibCal_GlobalState.dhGlobalCalendarRegistry().Data().CommonCalendar();
    category_i := selectobject( owner_i,CalendarRegistry.EventCategory, category, category.Name() = 'Unavaliable' );
    info( '-------------------------------', isnull( owner_i ), isnull( category_i ) );
    sEvent := owner_i.Event( relshadow,
                             EventID        := [String]Key::NextPersistentKey(),
    //                         StartTimeOfDay := start_i.TimeOfDay( timezone ),
    //                         EndTimeOfDay   := end_i  .TimeOfDay( timezone ),
                             EventCategory  := category_i,
                             IsDefault      := false );
    
    sLeadPart := owner_i.Participation( relshadow, LibCal_LeadingParticipation,
                                        ParticipationID := [String]Key::NextPersistentKey()
    //                                    ,StartDate       := start_i.Date( timezone ),
    //                                    EndDate         := end_i  .Date( timezone ) 
                                        );
    
    calendar             := sLeadPart.Calendar();
    potentialSubscribers := calendar.GetPotentialSubscribers();
    
    // Remove the calendar of the initiator (cannot subscribe to self).
    initiator := sEvent.Calendar();
    if( potentialSubscribers.Find( initiator ) >= 0 )
    {
      potentialSubscribers.Remove( initiator );
    }
    
    dhPotentialSubscribers.Data( &potentialSubscribers );
  *]
}
