* Create a "Contacts" room for personal address book use
authorArt Cancro <ajc@citadel.org>
Wed, 20 Aug 2003 03:36:13 +0000 (03:36 +0000)
committerArt Cancro <ajc@citadel.org>
Wed, 20 Aug 2003 03:36:13 +0000 (03:36 +0000)
citadel/ChangeLog
citadel/serv_vcard.c
citadel/sysconfig.h

index 89b6d0a89def1b82e371c3e582daa71d266b43b8..edf6156e8eec1d49e624c480ca2830c8eb5ccf21 100644 (file)
@@ -1,4 +1,7 @@
  $Log$
+ Revision 610.1  2003/08/20 03:36:13  ajc
+ * Create a "Contacts" room for personal address book use
+
  Revision 610.0  2003/08/17 03:00:37  ajc
  * THIS IS 6.10
 
@@ -4970,3 +4973,4 @@ Sat Jul 11 00:20:48 EDT 1998 Nathan Bryant <bryant@cs.usm.maine.edu>
 
 Fri Jul 10 1998 Art Cancro <ajc@uncensored.citadel.org>
        * Initial CVS import
+
index 08d1280168a008585afa39217245e8dc2d66e685..443783172a31781ffeb00da5022a9802a9373a32 100644 (file)
@@ -757,6 +757,35 @@ void cmd_qdir(char *argbuf) {
 }
 
 
+/*
+ * We don't know if the Contacts room exists so we just create it at login
+ */
+void vcard_create_room(void)
+{
+       struct ctdlroom qr;
+       struct visit vbuf;
+
+       /* Create the calendar room if it doesn't already exist */
+       create_room(USERCONTACTSROOM, 4, "", 0, 1, 0);
+
+       /* Set expiration policy to manual; otherwise objects will be lost! */
+       if (lgetroom(&qr, USERCONTACTSROOM)) {
+               lprintf(3, "Couldn't get the user CONTACTS room!\n");
+               return;
+       }
+       qr.QRep.expire_mode = EXPIRE_MANUAL;
+       qr.QRdefaultview = 2;   /* 2 = address book view */
+       lputroom(&qr);
+
+       /* Set the view to a calendar view */
+       CtdlGetRelationship(&vbuf, &CC->user, &qr);
+       vbuf.v_view = 2;        /* 2 = address book view */
+       CtdlSetRelationship(&vbuf, &CC->user, &qr);
+
+       return;
+}
+
+
 
 
 /*
@@ -777,6 +806,8 @@ void vcard_session_login_hook(void) {
        vcard_populate_cs_inet_email(v);
 
        vcard_free(v);
+
+       vcard_create_room();
 }
 
 
index 9c6d6610a12ff3b7e4143bac3985fa779ac9d7d2..9f683c68b8007229c44758694b23aae47d201274 100644 (file)
 #define USERCONFIGROOM         "My Citadel Config"
 #define USERCALENDARROOM       "Calendar"
 #define USERTASKSROOM          "Tasks"
+#define USERCONTACTSROOM       "Contacts"
 #define PAGELOGROOM            "Sent/Received Pages"
 #define SYSCONFIGROOM          "Local System Configuration"
 #define SMTP_SPOOLOUT_ROOM     "__CitadelSMTPspoolout__"