On Mon, 2008-02-18 at 17:18 +0000, Gary Rigg wrote: > Fetching the appointment works fine. The only difference I can see is > that on his other items there are entries such as: > > Timezone: (GMT) Greenwich Mean Time : Dublin, Edinburgh, > Lisbon, London
We indeed don't modify the Timezone tag in openchangeclient. IIRC, evo-mapi does. Can you double-check whether the appointment would not be in the calendar the previous/next day? If you find it, this may be a timezone related issue. > And, on any items I add via the open change client the Status is: > Status: Completed > > On the other items... > Status: Not Started You're talking about tasks correct? > I also notice items have a... > Private: False > ....I wonder, is it possible to set this to True using the open change > client? Well openchangeclient was more designed as a POC cmdline tool rather than a full console Outlook replacement ... so it has some limitations ;-) Anyway, you'll find in attachment a patch which adds "--private" parameter to openchangeclient and makes the appointment private when used. I'll apply the patch to the trunk tonight. Cheers, Julien. -- Julien Kerihuel [EMAIL PROTECTED] OpenChange Project Manager GPG Fingerprint: 0B55 783D A781 6329 108A B609 7EF6 FE11 A35F 1F79
Index: utils/openchangeclient.c
===================================================================
--- utils/openchangeclient.c (revision 343)
+++ utils/openchangeclient.c (working copy)
@@ -51,6 +51,7 @@
oclient->dtend = NULL;
oclient->busystatus = 0;
oclient->label = 0;
+ oclient->private = false;
/* contact related parameters */
oclient->email = "";
@@ -962,6 +963,7 @@
mapi_nameid_OOM_add(nameid, "CommonEnd", PSETID_Common);
mapi_nameid_OOM_add(nameid, "Label", PSETID_Appointment);
mapi_nameid_OOM_add(nameid, "ReminderMinutesBeforeStart", PSETID_Common);
+ mapi_nameid_OOM_add(nameid, "Private", PSETID_Common);
/* GetIDsFromNames and map property types */
SPropTagArray = talloc_zero(mem_ctx, struct SPropTagArray);
@@ -1002,13 +1004,17 @@
set_SPropValue_proptag(&props[7], SPropTagArray->aulPropTag[1], (const void *) &oclient->busystatus);
flag= MEETING_STATUS_NONMEETING;
set_SPropValue_proptag(&props[8], SPropTagArray->aulPropTag[2], (const void *) &flag);
- flag2 = true;
set_SPropValue_proptag(&props[9], SPropTagArray->aulPropTag[3], (const void *) start_date);
set_SPropValue_proptag(&props[10], SPropTagArray->aulPropTag[4], (const void *) end_date);
set_SPropValue_proptag(&props[11], SPropTagArray->aulPropTag[5], (const void *)&oclient->label);
flag = 30;
set_SPropValue_proptag(&props[12], SPropTagArray->aulPropTag[6], (const void *)&flag);
set_SPropValue_proptag(&props[13], PR_BODY, (const void *)(oclient->pr_body?oclient->pr_body:""));
+ flag2 = oclient->private;
+ set_SPropValue_proptag(&props[14], SPropTagArray->aulPropTag[7], (const void *)&flag2);
+ flag = (oclient->private == true) ? 2 : 0;
+ set_SPropValue_proptag(&props[15], PR_SENSITIVITY, (const void *)&flag);
+
retval = SetProps(&obj_message, props, CAL_CNPROPS);
MAPIFreeBuffer(SPropTagArray);
if (retval != MAPI_E_SUCCESS) return false;
@@ -1889,7 +1895,7 @@
OPT_MAPI_EMAIL, OPT_MAPI_FULLNAME, OPT_MAPI_CARDNAME, OPT_MAPI_PRIORITY,
OPT_MAPI_TASKSTATUS, OPT_MAPI_IMPORTANCE, OPT_MAPI_LABEL, OPT_PF,
OPT_FOLDER, OPT_MAPI_COLOR, OPT_SENDNOTE, OPT_MKDIR, OPT_RMDIR,
- OPT_FOLDER_NAME, OPT_FOLDER_COMMENT, OPT_USERLIST};
+ OPT_FOLDER_NAME, OPT_FOLDER_COMMENT, OPT_USERLIST, OPT_MAPI_PRIVATE};
struct poptOption long_options[] = {
POPT_AUTOHELP
@@ -1936,6 +1942,7 @@
{"folder-comment", 0, POPT_ARG_STRING, NULL, OPT_FOLDER_COMMENT, "set the folder comment"},
{"debuglevel", 0, POPT_ARG_STRING, NULL, OPT_DEBUG, "Set Debug Level"},
{"dump-data", 0, POPT_ARG_NONE, NULL, OPT_DUMPDATA, "dump the hex data"},
+ {"private", 0, POPT_ARG_NONE, NULL, OPT_MAPI_PRIVATE, "Set the private flag on messages"},
{ NULL }
};
@@ -2088,6 +2095,9 @@
case OPT_MAPI_CARDNAME:
oclient.card_name = poptGetOptArg(pc);
break;
+ case OPT_MAPI_PRIVATE:
+ oclient.private = true;
+ break;
}
}
Index: utils/openchangeclient.h
===================================================================
--- utils/openchangeclient.h (revision 343)
+++ utils/openchangeclient.h (working copy)
@@ -47,6 +47,7 @@
uint32_t taskstatus;
uint32_t label;
uint32_t priority;
+ bool private;
uint32_t importance;
uint32_t color;
uint32_t width;
@@ -136,7 +137,7 @@
};
#define DATE_FORMAT "%Y-%m-%d %H:%M:%S"
-#define CAL_CNPROPS 14
+#define CAL_CNPROPS 16
#define CONTACT_CNPROPS 7
#define TASK_CNPROPS 8
#define NOTE_CNPROPS 10
signature.asc
Description: This is a digitally signed message part
_______________________________________________ devel mailing list [email protected] http://mailman.openchange.org/listinfo/devel
