#if($r.isNotEmpty($topics))
#foreach($topic in $topics) #set ($mod = $foreach.index % 2) #if($foreach.index > 1 && $mod == 0)
#end

$topic.title #if($r.isNotEmpty($topic.organizerNames)) $r.translate("organizer.with") #foreach($organizer in $topic.organizerNames) $organizer#if($foreach.index < $topic.organizerNames.size() - 1)$r.translate("organizer.separator")#end #end $r.render($topic.getEmailLinkName()) #end

#if($r.isNotNull($topic.getFuture()))
#if($topic.getFuture())$r.translate("appointment.next")#else$r.translate("appointment.last")#end
#end #if($topic.getDayName())
$r.render($topic.getDayName())
#if($topic.getDate() && $topic.getDate() != "")
  $topic.getDate()  $topic.getTranslatedStatus()
#end #if($topic.getDate2() && $topic.getDate2() != "")
  $topic.getDate2()
#end #if($topic.getTime() && $topic.getTime() != "")
  $topic.getTime() #if($r.isNull($topic.getDate()))  $topic.getTranslatedStatus() #end
#end #if($topic.getLocation() && $topic.getLocation() != "")
  $r.escapeHtml($topic.getLocation())
#end #if($topic.getDetails() && $topic.getDetails() != "")
  $r.escapeHtml($topic.getDetails())
#end #if($r.isNotNull($topic.getRecordingLinkNames()))
#foreach($recordingLinkName in $topic.getRecordingLinkNames()) $r.render($recordingLinkName) #end
#end #if($r.isNotEmpty($topic.participants))
#foreach($participant in $topic.participants)  $participant   #end
#end
#end #if($r.isNotNull($topic.getMessage()))
$topic.getMessage()
#end #if($r.isNotNull($topic.getServerWarning()))
$topic.getServerWarning()
#end #if($r.isNotNull($topic.getJoinLinkName()))
$r.render($topic.getJoinLinkName())
#end #if($r.isNotNull($topic.getOpenLinkName()))
$r.render($topic.getOpenLinkName())
#end
#end
#else
$r.translate("no.topics")
#end