Add new conditional that finds whether a room name ends with \edit
authorWilfried Goesgens <willi@arangodb.com>
Sat, 2 Jan 2016 14:11:03 +0000 (15:11 +0100)
committerWilfried Goesgens <willi@arangodb.com>
Sat, 2 Jan 2016 14:11:03 +0000 (15:11 +0100)
webcit/roomtokens.c

index 72daf67406eaaa54cff87805b732f46252539a32..199cc3c1edd14466d650a9aad99d4541550a805d 100644 (file)
@@ -494,6 +494,15 @@ int ConditionalThisRoomXHavePic(StrBuf *Target, WCTemplputParams *TP)
        return WCC->CurRoom.XHaveRoomPic == 1;
 }
 
+int ConditionalThisRoomIsEdit(StrBuf *Target, WCTemplputParams *TP)
+{
+       wcsession *WCC = WC;
+
+       if (WCC == NULL)
+               return 0;
+       return ((WCC->CurRoom.nRoomNameParts > 1) && 
+               (strcmp(ChrPtr(WCC->CurRoom.RoomNameParts[WCC->CurRoom.nRoomNameParts]), "edit") == 0));
+}
 
 int ConditionalThisRoomXHaveInfoText(StrBuf *Target, WCTemplputParams *TP)
 {
@@ -663,6 +672,7 @@ InitModule_ROOMTOKENS
        RegisterConditional("COND:ROOM:EDITACCESS", 0, ConditionalHaveRoomeditRights, CTX_NONE);
 
        RegisterConditional("COND:THISROOM:HAVE_PIC", 0, ConditionalThisRoomXHavePic, CTX_NONE);
+       RegisterConditional("COND:THISROOM:IS_EDIT", 0, ConditionalThisRoomIsEdit, CTX_NONE);
 
        RegisterNamespace("THISROOM:INFOTEXT", 1, 2, tmplput_ThisRoomInfoText, NULL, CTX_NONE);
        RegisterConditional("COND:THISROOM:HAVE_INFOTEXT", 0, ConditionalThisRoomXHaveInfoText, CTX_NONE);