typedef struct _floor {
- long ID;
+ int ID;
StrBuf *Name;
long NRooms;
long AlphaN;
-} floor;
+} Floor;
/**
* \brief Data structure for roomlist-to-folderlist conversion
typedef struct _folder {
/* Data citserver tells us about the room */
StrBuf *name; /* the full name of the room we're talking about */
- int QRFlags; /* roomflags */
+ long QRFlags; /* roomflags */
int floorid; /* which floor is it on */
- int listorder; /* todo */
- int QRFlags2; /* Bitbucket NO2 */
+ long listorder; /* todo */
+ long QRFlags2; /* Bitbucket NO2 */
long RAFlags;
-/// StrBuf *ACL; /* access Control list... */
int view; /* whats its default view? inbox/calendar.... */
- int defview;
- int lastchange; /* todo... */
+ long defview;
+ long lastchange; /* todo... */
/* later evaluated data from the serverdata */
long nRoomNameParts;
StrBuf **RoomNameParts;
- const floor *Floor; /* pint to the floor we're on.. */
- StrBuf *room; /* which roomname ??? */
-
+ const Floor *Floor; /* pint to the floor we're on.. */
int hasnewmsgs; /* are there unread messages inside */
- int is_mailbox; /* is it a mailbox? */
+ int is_inbox; /* is it a mailbox? */
+
+
+
int selectable; /* can we select it ??? */
- int num_rooms; /* If this is a floor, how many rooms does it have */
+ long num_rooms; /* If this is a floor, how many rooms does it have */
+
+
+/* Only available from the GOTO context... */
+ long nNewMessages;
+ long nTotalMessages;
+ long LastMessageRead;
+ long HighestRead;
+ int ShowInfo;
+ int UsersNewMAilboxMessages; /* should we notify the user about new messages? */
+ int IsTrash;
}folder;
+HashList *GetFloorListHash(StrBuf *Target, WCTemplputParams *TP);
+void vDeleteFolder(void *vFolder);
+void FlushFolder(folder *room);
+void ParseGoto(folder *proom, StrBuf *Line);
+
+#define REST_TOPLEVEL 0
+#define REST_IN_NAMESPACE (1<<0)
+#define REST_IN_FLOOR (1<<1)
+#define REST_IN_ROOM (1<<2)
+#define REST_GOT_EUID (1<<3)
+#define REST_GOT_ID (1<<4)
+#define REST_GOT_FILENAME (1<<5)