- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->RAFlags);
-}
-
-
-void tmplput_ROOM_FLOORID(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->floorid);
-}
-
-void tmplput_ROOM_LISTORDER(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->listorder);
-}
-void tmplput_ROOM_VIEW(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->view);
-}
-void tmplput_ROOM_DEFVIEW(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->defview);
-}
-void tmplput_ROOM_LASTCHANGE(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- StrBufAppendPrintf(Target, "%d", Folder->lastchange);
-}
-void tmplput_ROOM_FLOOR_ID(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- const floor *Floor = Folder->Floor;
-
- if (Floor == NULL)
- return;
-
- StrBufAppendPrintf(Target, "%d", Floor->ID);
-}
-
-void tmplput_ROOM_FLOOR_NAME(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- const floor *Floor = Folder->Floor;
-
- if (Floor == NULL)
- return;
-
- StrBufAppendTemplate(Target, TP, Floor->Name, 0);
-}
-
-void tmplput_ROOM_FLOOR_NROOMS(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- const floor *Floor = Folder->Floor;
-
- if (Floor == NULL)
- return;
- StrBufAppendPrintf(Target, "%d", Floor->NRooms);
-}
-
-
-
-int ConditionalRoomHas_UA_KNOWN(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_KNOWN) != 0;
-}
-
-int ConditionalRoomHas_UA_GOTOALLOWED(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_GOTOALLOWED) != 0;
-}
-
-int ConditionalRoomHas_UA_HASNEWMSGS(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_HASNEWMSGS) != 0;
-}
-
-int ConditionalRoomHas_UA_ZAPPED(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_ZAPPED) != 0;
-}
-
-int ConditionalRoomHas_UA_POSTALLOWED(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_POSTALLOWED) != 0;
-}
-
-int ConditionalRoomHas_UA_ADMINALLOWED(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_ADMINALLOWED) != 0;
-}
-
-int ConditionalRoomHas_UA_DELETEALLOWED(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return (Folder->RAFlags & UA_DELETEALLOWED) != 0;
-}
-
-
-int ConditionalRoomIsInbox(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
- return Folder->is_inbox;
-}
-
-void tmplput_ROOM_COLLECTIONTYPE(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
-
- switch(Folder->view) {
- case VIEW_CALENDAR:
- StrBufAppendBufPlain(Target, HKEY("vevent"), 0);
- break;
- case VIEW_TASKS:
- StrBufAppendBufPlain(Target, HKEY("vtodo"), 0);
- break;
- case VIEW_ADDRESSBOOK:
- StrBufAppendBufPlain(Target, HKEY("vcard"), 0);
- break;
- case VIEW_NOTES:
- StrBufAppendBufPlain(Target, HKEY("vnotes"), 0);
- break;
- case VIEW_JOURNAL:
- StrBufAppendBufPlain(Target, HKEY("vjournal"), 0);
- break;
- }
-}
-
-
-
-
-int ConditionalRoomHasGroupdavContent(StrBuf *Target, WCTemplputParams *TP)
-{
- folder *Folder = (folder *)(TP->Context);
-
- return ((Folder->view == VIEW_CALENDAR) ||
- (Folder->view == VIEW_TASKS) ||
- (Folder->view == VIEW_ADDRESSBOOK) ||
- (Folder->view == VIEW_NOTES) ||
- (Folder->view == VIEW_JOURNAL) );
-}
-
-
-
-int ConditionalFloorIsRESTSubFloor(StrBuf *Target, WCTemplputParams *TP)
-{
- wcsession *WCC = WC;
-
- /** If we have dav_depth the client just wants the _current_ room without subfloors */
- if (WCC->Hdr->HR.dav_depth == 0)
- return 0;
-
- return 1;