@@ -51,7 +51,7 @@ public async Task<string> GetIcalSchedule()
5151        calendar . Events . AddRange ( result . AllItems . Select ( BuildIcalEvent ) ) ; 
5252
5353        var  serializer  =  new  CalendarSerializer ( ) ; 
54-         return  serializer . SerializeToString ( calendar ) ;  //TODO stream 
54+         return  serializer . SerializeToString ( calendar )   ??   "" ;  //TODO stream 
5555    } 
5656
5757    private  CalendarEvent  BuildIcalEvent ( ProgramItemPlaced  evt ) 
@@ -61,9 +61,8 @@ private CalendarEvent BuildIcalEvent(ProgramItemPlaced evt)
6161            Start  =  new  CalDateTime ( evt . StartTime . LocalDateTime ) , 
6262            End  =  new  CalDateTime ( evt . EndTime . LocalDateTime ) , 
6363            Summary  =  evt . ProgramItem . Name , 
64-             IsAllDay  =  false , 
6564            Location  =  string . Join ( ", " ,  evt . Rooms . Select ( r =>  r . Name ) ) , 
66-             Description  =  evt . ProgramItem . Description . ToPlainText ( ) , 
65+             Description  =  evt . ProgramItem . Description . ToPlainTextWithoutHtmlEscape ( ) , 
6766        } ; 
6867    } 
6968
@@ -121,15 +120,13 @@ private void BuildAppointments(Project project, SchedulePageViewModel viewModel)
121120                    ProjectId  =  slot . ProjectId , 
122121                    CharacterId  =  slot . Id , 
123122                    Users  =  slot . Users , 
123+                     Rooms  =  [ .. viewModel . Columns 
124+                         . SkipWhile ( ( v ,  index )  =>  index  <  colIndex ) 
125+                         . Take ( slot . ColSpan ) ] , 
126+                     Slots  =  [ .. viewModel . Rows 
127+                         . SkipWhile ( ( v ,  index )  =>  index  <  rowIndex ) 
128+                         . Take ( slot . RowSpan ) ] 
124129                } ; 
125-                 appointment . Rooms  =  viewModel . Columns 
126-                     . SkipWhile ( ( v ,  index )  =>  index  <  colIndex ) 
127-                     . Take ( slot . ColSpan ) 
128-                     . ToArray ( ) ; 
129-                 appointment . Slots  =  viewModel . Rows 
130-                     . SkipWhile ( ( v ,  index )  =>  index  <  rowIndex ) 
131-                     . Take ( slot . RowSpan ) 
132-                     . ToArray ( ) ; 
133130                result . Add ( appointment ) ; 
134131            } 
135132        } 
0 commit comments