--- a/mcabber/src/jab_iq.c Wed Nov 28 22:42:48 2007 +0100
+++ b/mcabber/src/jab_iq.c Thu Nov 29 20:54:38 2007 +0100
@@ -739,6 +739,7 @@
static void storage_bookmarks_parse_conference(xmlnode xmldata)
{
const char *fjid, *name, *autojoin;
+ const char *pstatus, *awhois;
char *bjid;
GSList *room_elt;
@@ -747,6 +748,8 @@
return;
name = xmlnode_get_attrib(xmldata, "name");
autojoin = xmlnode_get_attrib(xmldata, "autojoin");
+ awhois = xmlnode_get_attrib(xmldata, "autowhois");
+ pstatus = xmlnode_get_tag_data(xmldata, "print_status");
bjid = jidtodisp(fjid); // Bare jid
@@ -766,6 +769,25 @@
*/
}
+ // Set the print_status and auto_whois values
+ if (pstatus) {
+ enum room_printstatus i;
+ for (i = status_none; i <= status_all; i++)
+ if (!strcasecmp(pstatus, strprintstatus[i]))
+ break;
+ if (i <= status_all)
+ buddy_setprintstatus(room_elt->data, i);
+ }
+ if (awhois) {
+ enum room_autowhois i = autowhois_default;
+ if (!strcmp(awhois, "1"))
+ i = autowhois_on;
+ else if (!strcmp(awhois, "0"))
+ i = autowhois_off;
+ if (i != autowhois_default)
+ buddy_setautowhois(room_elt->data, i);
+ }
+
// Is autojoin set?
// If it is, we'll look up for more information (nick? password?) and
// try to join the room.