Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ValuesDatesOK () as Boolean id:Method_LibCal_dlgEvent_ValuesDatesOK 
 | 
{ 
 | 
  #keys: '[131094.0.1653647746]' 
 | 
  Body: 
 | 
  [* 
 | 
    feedback := FeedbackObject::LocalFeedback(); 
 | 
    timezone := this.GetCalendarTimeZone(); 
 | 
     
 | 
    if( datStartDate.Date().IsInfinite() ) 
 | 
    { 
 | 
      feedback.AddHard( Translations::Event_InvalidStartDate() ); 
 | 
    } 
 | 
     
 | 
    if( datEndDate.Date().IsInfinite() ) 
 | 
    { 
 | 
      feedback.AddHard( Translations::Event_InvalidEndDate() ); 
 | 
    } 
 | 
     
 | 
    if( feedback.IsAllowed() ) 
 | 
    { 
 | 
      start := datStartDate.Date().DateTime( timezone ).AddAsPeriod( timezone, durStartTimeOfDay.Duration() ); 
 | 
      end   := datEndDate  .Date().DateTime( timezone ).AddAsPeriod( timezone, durEndTimeOfDay  .Duration() ); 
 | 
       
 | 
      if( end <= start ) 
 | 
      { 
 | 
        feedback.AddHard( Translations::Event_EndMustBeGreaterThanStart() ); 
 | 
      } 
 | 
       
 | 
      // End must be greater than StartOfCalendar. 
 | 
      startOfCalendar := dhLeadingParticipation.Data().Calendar().Start(); 
 | 
      if( end <= startOfCalendar ) 
 | 
      { 
 | 
        convOps := ConversionOptions::ISO(); 
 | 
        feedback.AddHard( Translations::Event_EndMustBeGreaterThanStartOfCalendar( end            .Format( Translations::DateTimeFormat(), convOps ), 
 | 
                                                                                   startOfCalendar.Format( Translations::DateTimeFormat(), convOps ) ) );  
 | 
      } 
 | 
    } 
 | 
     
 | 
    return feedback.IsAllowed(); 
 | 
  *] 
 | 
} 
 |