}
/* get a pointer to the floor we're on: */
+ if (WCC->Floors == NULL)
+ GetFloorListHash(NULL, NULL);
+
GetHash(WCC->Floors, IKEY(room->floorid), &vFloor);
room->Floor = (const Floor*) vFloor;
}
}
FreeStrBuf (&Buf);
}
+void tmplput_CurrentRoomFloorName(StrBuf *Target, WCTemplputParams *TP)
+{
+ wcsession *WCC = WC;
+ folder *Folder = &WCC->CurRoom;
+ const Floor *pFloor = Folder->Floor;
+
+ if (pFloor == NULL)
+ return;
+
+ StrBufAppendTemplate(Target, TP, pFloor->Name, 0);
+}
void tmplput_CurrentRoomAide(StrBuf *Target, WCTemplputParams *TP)
{
RegisterConditional(HKEY("COND:ROOM:FLAG:UA"), 0, ConditionalRoomHas_UAFlag, CTX_ROOMS);
RegisterIterator("ITERATE:THISROOM:WHO_KNOWS", 0, NULL, GetWhoKnowsHash, NULL, DeleteHash, CTX_STRBUF, CTX_NONE, IT_NOFLAG);
+ RegisterNamespace("THISROOM:FLOOR:NAME", 0, 1, tmplput_CurrentRoomFloorName, NULL, CTX_NONE);
RegisterNamespace("THISROOM:AIDE", 0, 1, tmplput_CurrentRoomAide, NULL, CTX_NONE);
RegisterNamespace("THISROOM:PASS", 0, 1, tmplput_CurrentRoomPass, NULL, CTX_NONE);
RegisterNamespace("THISROOM:DIRECTORY", 0, 1, tmplput_CurrentRoomDirectory, NULL, CTX_NONE);
free_march_list(sess);
DeleteHash(&sess->Floors);
+ DeleteHash(&sess->Rooms);
+ DeleteHash(&sess->FloorsByName);
}
+
+
/*@}*/
<td>
<?_("Message expire policy for this floor")>
<br />
- <?ROOM:INFO:FLOOR:NAME("X")>
+ <?THISROOM:FLOOR:NAME("X")>
</td>
<td>
- <input type="radio" name="floorpolicy" value="0" <?%("COND:EXPIRE:MODE", 1, #"floorpolicy", #"EXPIRE_NEXTLEVEL" , 'checked="checked"',"")>>nbsp;
+ <input type="radio" name="floorpolicy" value="0" <?%("COND:EXPIRE:MODE", 1, #"floorpolicy", #"EXPIRE_NEXTLEVEL" , 'checked="checked"',"")>>
<?_("Use the system default")>
<br />
<input type="radio" name="floorpolicy" value="1" <?%("COND:EXPIRE:MODE", 1, #"floorpolicy", #"EXPIRE_MANUAL", 'checked="checked"',"")> />