72afb3cbcd3b0a72fcbe7403b95d336f9f126bce
[platform/upstream/evolution-data-server.git] / calendar / ChangeLog
1 2007-07-30  Chenthill Palanisamy  <pchenthill@novell.com>
2
3         Fixes a memory corruption.
4         * libecal/e-cal.c: (open_calendar): Use e_source_get_duped_property.
5
6 2007-07-13  Milan Crha  <mcrha@redhat.com>
7
8         ** Fix for bug #456565
9
10         * backends/http/e-cal-backend-http-factory.c:
11         (_memos_new_backend), (_memos_get_kind),
12         (memos_backend_factory_class_init),
13         (memos_backend_factory_get_type), (http_types),
14         (eds_module_initialize), (eds_module_list_types):
15         Added support for Memos to webcal protocol, which is
16         used for memos 'On The Web'.
17
18 2007-07-25  Milan Crha  <mcrha@redhat.com>
19
20         ** Fix for bug #268162
21
22         * backends/http/e-cal-backend-http.c: (struct _ECalBackendHttpPrivate):
23         New members for username and password.
24         * backends/http/e-cal-backend-http.c: (soup_authenticate),
25         (soup_reauthenticate): Callbacks for authentication support.
26         * backends/http/e-cal-backend-http.c: (begin_retrieval_cb):
27         Connect new callbacks to soup_session.
28         * backends/http/e-cal-backend-http.c: (e_cal_backend_http_open):
29         Copy username and password when authentication is required.
30
31         * backends/http/e-cal-backend-http.c: (retrieval_done): Warnings cleanup.
32
33 2007-07-29  Srinivasa Ragavan  <sragavan@novell.com>
34
35         ** Fix for bug #460867
36
37         * libecal/e-cal-component.c: (get_attachment_list):
38
39 2007-07-09  Srinivasa Ragavan  <sragavan@novell.com>
40
41         ** Fix for bug #394572 from Jari Urpalainen
42
43         * backends/caldav/e-cal-backend-caldav.c: (caldav_ignore_host),
44         (caldav_set_session_proxy), (caldav_do_open):
45
46 2007-07-09  Milan Crha  <mcrha@redhat.com>
47
48         ** Fix for bug #311098
49         
50         * backends/contacts/e-cal-backend-contacts.c: (contacts_changed_cb):
51         Always remove old tracked data and add new if possible.
52
53 2007-06-04  Chenthill Palanisamy  <pchenthill@novell.com>
54
55         * libedata-cal/e-cal-backend-sexp.c: (resolve_tzid),
56         (func_occur_in_time_range), (func_due_in_time_range),
57         (matches_attendee), (matches_organizer), (matches_classification),
58         (matches_summary), (matches_priority),(matches_status), (func_has_attachment),
59         (func_percent_complete), (func_contains), (func_has_alarms_in_range), 
60         (func_has_recurrences): Added search expressions for matching attendee, organizer,
61         classification, priority, status, percent, attachment fields.
62                 
63         Committing on behalf of Keshav Upadhyaya <ukeshav@novell.com> and 
64         Abhishek Parwal <pabhishek@novell.com>.
65
66 2007-06-03  Srinivasa Ragavan  <sragavan@novell.com>
67
68         ** Fix for bug #442187 from John Stowers
69
70         * libecal/e-cal.c: (get_default):
71
72 2007-05-31  Matthew Barnes  <mbarnes@redhat.com>
73
74         * libecal/Makefile.am:
75         Fix some distcheck errors (#438577).
76
77 2007-05-24  Ross Burton  <ross@openedhand.com>
78
79         * backends/caldav/Makefile.am:
80         Add missing link flags to fix build with -z,defs. (#409542, Loic
81         Minier)
82
83 2007-05-22  Ross Burton  <ross@openedhand.com>
84
85         * libecal/Makefile.am:
86         * libecal/e-cal.c:
87         * libecal/e-cal-view.c:
88         * libecal/e-cal-view.h:
89         * libecal/e-cal-view-private.h:
90         * libecal/e-cal-listener.h:
91         * libecal/e-cal-view-listener.h:
92         Move e_cal_view_new to e-cal-view-private.h because it's an
93         internal function, don't install the listener headers, and
94         sanitise includes so that the installed headers don't mention
95         Bonobo (#438727).
96
97 2007-05-16  Jules Colding  <colding@omesc.com>
98
99         * backends/groupwise/e-cal-backend-groupwise.c (fetch_attachments): 
100         Do not close() if (fd == -1)
101
102         * backends/groupwise/e-cal-backend-groupwise-utils.c (set_attachments_to_cal_component): 
103         Do not close() if (fd == -1)
104
105         * backends/file/e-cal-backend-file.c (fetch_attachments): 
106         Do not close() if (fd == -1)
107
108 2007-05-15  Ross Burton  <ross@openedhand.com>
109
110         * tests/ecal/test-ecal.c:
111         * tests/ecal/test-search.c:
112         * tests/ecal/test-recur.c:
113         Remove useless Bonobo usage.
114
115 2007-05-13  Rob Bradford  <rob@openedhand.com>
116
117         * libecal/e-cal.c: (e_cal_create_object):
118         Set the uid on the icalcomponent to the uid returned by the backend
119         so that subsequent calls to e_cal_modify_object are safe. 
120         (bgo: #431135)
121
122 2007-05-07  Matthew Barnes  <mbarnes@redhat.com>
123
124         * backends/caldav/e-cal-backend-caldav.c:
125         * backends/groupwise/e-cal-backend-groupwise.c:
126         * libecal/e-cal-component.c:
127         * libecal/e-cal-recur.c:
128         * libecal/e-cal.c:
129         * libedata-cal/e-cal-backend.c:
130         * libedata-cal/e-data-cal-view.c:
131         * tests/ecal/test-ecal.c:
132         Fix warnings reported by 'sparse'.  Patch from Kjartan Maraas.
133
134 2007-04-05  Ross Burton  <ross@openedhand.com>
135
136         * backends/file/e-cal-backend-file.c:
137         Use g_mkdir_with_parents (#383686).
138
139 2007-04-04  Ross Burton  <ross@openedhand.com>
140
141         * libecal/e-cal-marshal.list:
142         * libecal/e-cal-listener.c:
143         * libecal/e-cal-view-listener.c:
144         * libecal/e-cal-view.c:
145         Remove marshallers that are in GLib (#400970).
146
147 2007-04-01  Matthew Barnes  <mbarnes@redhat.com>
148
149         * libedata-cal/e-data-cal-factory.c (get_backend_factory):
150         * backends/groupwise/e-cal-backend-groupwise-utils
151         (e_cal_backend_groupwise_set_attachments_from_comp),
152         (e_gw_connection_get_freebusy_info):
153         * backends/caldav/e-cal-backend-caldav.c (process_object):
154         * backends/contacts/e-cal-backend-contacts.c (book_record_new),
155         (contact_record_cb_new), (source_group_removed_cb),
156         (cdate_to_icaltime), (create_component):
157         * libecal/e-cal-listener.c (ECalListenerPrivate):
158         Fix some compiler warnings.  Patch from Kjartan Maraas.
159
160 2007-03-29  Matthew Barnes  <mbarnes@redhat.com>
161
162         * backends/file/e-cal-backend-file.c:
163         * backends/groupwise/e-cal-backend-groupwise.c:
164         E-D-S requires GLib 2.10 now; remove dead backward-compatibility
165         code for GLib < 2.8 (#418971).
166
167 2007-03-29  Matthew Barnes  <mbarnes@redhat.com>
168
169         * libecal-e-cal.c:
170         * libecal/e-cal-component.c:
171         * libecal/e-cal-recur.c:
172         * libecal/e-cal-util.c:
173         Fix up the documentation (#413173).  Patch from Ross Burton.
174
175 2007-03-26  Matthew Barnes  <mbarnes@redhat.com>
176
177         * backends/groupwise/e-cal-backend-groupwise.c:
178         * backends/weather/e-cal-backend-weather.c:
179         Don't mix declarations and code (#405495).
180         Patch from Jens Granseuer.
181
182 2007-03-25  Matthew Barnes  <mbarnes@redhat.com>
183
184         ** Fixes bug #420933
185
186         * libecal/e-cal.c (e_cal_generate_instances_for_object):
187         Copy the recurrence ID string so it doesn't disappear on us.
188         Patch from Patrick Ohly.
189
190 2007-03-16  Matthew Barnes  <mbarnes@redhat.com>
191
192         ** Fixes part of bug #360240
193
194         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove):
195         Remove an unused variable.
196
197 2007-02-27  Ross Burton  <ross@openedhand.com>
198
199         * libecal/e-cal.c:
200         Use consistent URIs when opening calendars by using
201         e_source_new_with_absolute_uri() in e_cal_new_from_uri (#333507).
202
203 2007-02-12  Kjartan Maraas  <kmaraas@gnome.org>
204
205         * libecal/e-cal.c: (process_detached_instances): Don't crash
206         on Outlook meeting invitations. Closes bug #404886. Patch
207         from Patrick Ohly.
208
209 2007-02-12 Patrick Ohly <patrick.ohly@gmx.de>
210
211         Fixes #363102
212         * backends/file/e-cal-backend-file.c: (save_file_when_idle),
213         (e_cal_backend_file_open),
214         (save), (e_cal_backend_file_finalize),
215         (e_cal_backend_file_get_object), (e_cal_backend_file_get_timezone),
216         (e_cal_backend_file_add_timezone),
217         (e_cal_backend_file_set_default_zone),
218         (e_cal_backend_file_get_object_list),
219         (e_cal_backend_file_start_query),
220         (e_cal_backend_file_get_free_busy),
221         (e_cal_backend_file_compute_changes),
222         (e_cal_backend_file_internal_get_timezone),
223         (e_cal_backend_file_create_object),
224         (e_cal_backend_file_modify_object),
225         (e_cal_backend_file_remove_object),
226         (e_cal_backend_file_remove), (e_cal_backend_file_init),
227         (e_cal_backend_file_set_file_name), (e_cal_backend_file_reload):
228         (e_cal_backend_file_receive_objects), (e_cal_backend_file_init): Added 
229         the idle save mutex lock.
230
231 2007-01-29  Chenthill Palanisamy  <pchenthill@novell.com>
232
233         reviewed by: <delete if not using a buddy>
234
235         * backends/groupwise/e-cal-backend-groupwise-utils.c:
236         (build_gwtz_from_icaltz), (set_properties_from_cal_component):
237         * libecal/e-cal.c: (e_cal_create_object):
238
239 2007-01-23  Chenthill Palanisamy  <pchenthill@novell.com>
240
241         reviewed by: <delete if not using a buddy>
242
243         * backends/groupwise/e-cal-backend-groupwise-utils.c:
244         (build_gwtz_from_icaltz), (set_properties_from_cal_component):
245         * libecal/e-cal.c: (e_cal_create_object):
246
247 2006-11-27  Andrew Ruthven  <andrew@etc.gen.nz>
248
249         Fixes bug #349573
250
251         * calendar/backends/caldav/e-cal-backend-caldav.c
252         (caldav_server_delete_object):
253         Make sure that deleting CalDAV entries is RFC2068 compliant by
254         changing If-None-Match to If-Match.
255
256 2006-12-03  Harish Krishnaswamy  <kharish@novell.com>
257
258         * backends/contacts/e-cal-backend-contacts.c:
259         (e_cal_backend_contacts_finalize): Do not free default_zone if
260         it is the built-in UTC timezone.
261         * backends/file/e-cal-backend-file.c
262         (e_cal_backend_file_finalize): Do not free default_zone if
263         it is the built-in UTC timezone. Fix leak of filename.
264
265 2006-12-03  Harish Krishnaswamy  <kharish@novell.com>
266
267         * backends/groupwise/e-cal-backend-groupwise.c:
268         (sanitize_component): Fix leak of str.
269
270 2006-12-03  Harish Krishnaswamy  <kharish@novell.com>
271
272         * libedata-cal/e-cal-backend.c: (e_cal_backend_finalize):
273         Fix leak of uri and source.
274
275 2006-12-03  Harish Krishnaswamy  <kharish@novell.com>
276
277         * libedata-cal/e-data-cal-view.c:
278         (e_data_cal_view_set_property): Do not dup backend. Fix this being
279         leaked.
280
281 2006-11-15  Chenthill Palanisamy  <pchenthill@novell.com>
282
283         * libecal/e-cal-listener.c: (convert_status): Map the
284         error status for 'No Such Calendar'.                                                  
285
286 2006-11-08  Sankar P  <psankar@novell.com>
287
288         * libecal/e-cal.c: (build_proxy_pass_key), (open_calendar):
289         Do not pop up a password dialog for proxy accounts.
290         Fixes #328836
291
292 2006-11-07  Chenthill Palanisamy  <pchenthill@novell.com>
293
294         * libecal/e-cal.c: (add_instance), (generate_instances),
295         (e_cal_generate_instances_for_object): Generate the recurrence
296         id picking up the right timezone from the start date.                                          
297         Fixes #215636 (bugzilla.novell.com)
298
299 2006-11-06  Harish Krishnaswamy  <kharish@novell.com>
300
301         * libecal/e-cal.c: (open_calendar): Remove an 
302         erroneous double mutex unlock. Fixes #312348
303         and its numerous duplicates.
304
305 2006-09-25  Matthew Barnes  <mbarnes@redhat.com>
306
307         Fixes #357666
308
309         * backends/groupwise/e-cal-backend-groupwise.c: (change_status)
310         Use g_ascii_strncasecmp instead of deprecated g_strncasecmp.
311
312 2006-09-22  Chenthill Palanisamy  <pchenthill@novell.com>
313
314         Fixes #351330
315         * backends/groupwise/e-cal-backend-groupwise.c: 
316         (cache_init): call the store settings in a idle thread.
317         * backends/groupwise/e-cal-backend-groupwise.h: Defined a new structure
318         to hold Gw settings and groupwise backend.
319         * backends/groupwise/e-cal-backend-groupwise-utils.c:
320         (e_cal_backend_groupwise_store_settings): 
321         * backends/groupwise/e-cal-backend-groupwise-utils.h:
322         Pass Gwsettings as an argument.
323
324 2006-09-18  Chenthill Palanisamy  <pchenthill@novell.com>
325
326         * backends/http/e-cal-backend-http.c:
327         (begin_retrieval_cb): Check the right e-source property.
328
329         Committing the patch from Mikael Nilsson <mini@nada.kth.se>.
330
331 2006-09-06  Chenthill Palanisamy  <pchenthill@novell.com>
332
333         Fixes a invalid read.
334         * backends/http/e-cal-backend-http.c: (retrieval_done):
335         clone the icalcomp before setting it in the new ECalComponent.
336         See bug #352596
337
338 2006-08-24  Chenthill Palanisamy  <pchenthill@novell.com>
339
340         Fixes the gslice crash
341         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
342         Do not free the cache_keys.
343
344 2006-08-24  Chenthill Palanisamy  <pchenthill@novell.com>
345
346         * backends/groupwise/e-cal-backend-groupwise.c: 
347         (get_deltas): assign the proper iterator to cache_keys.
348         (cache_init): Need not notify objects added signal
349         for the elements existing in cache.
350
351 2006-08-23  Srinivasa Ragavan  <sragavan@novell.com>
352
353         ** Fix for bug #349847 by Matthew Barnes  
354         
355         * tests/ecal/test-ecal.c: (test_get_object): Initialize gerror to 
356         NULL.
357
358 2006-08-22  Chenthill Palanisamy  <pchenthill@novell.com>
359
360         * backends/http/e-cal-backend-http.c: (begin_retrieval_cb):
361         check if "use_ssl" property is set in e-source.
362
363 2006-08-19  Chenthill Palanisamy  <pchenthill@novell.com>
364
365         Fixes #350887
366         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
367         replaced gslist_delete_link with remove link.
368
369 2006-08-19  Chenthill Palanisamy  <pchenthill@novell.com>
370
371         Fixes #325648
372         * libecal/e-cal-util.c: (e_cal_util_parse_ics_string):
373         Check if the component is a VCALENDAR component before
374         merging the component.
375
376 2006-08-19  Harish Krishnaswamy  <kharish@novell.com>
377
378         * backends/groupwise/e-cal-backend-groupwise-utils.c:
379         (set_default_alarms): Unref GConf client on all exit
380         paths.
381
382 2006-08-17  Kjartan Maraas  <kmaraas@gnome.org>
383
384         * libedata-cal/e-cal-backend-sync.c:
385         (_e_cal_backend_remove_object): Remove an unused variable.
386
387 2006-08-11  Chenthill Palanisamy  <pchenthill@novell.com>
388
389         * backends/groupwise/e-cal-backend-groupwise-utils.c:
390         (set_attendees_to_item): removed the g_message.
391         (e_cal_backend_groupwise_store_settings):unref the source_list.
392
393 2006-08-07  Harish Krishnaswamy  <kharish@novell.com>
394
395         * backends/groupwise/e-cal-backend-groupwise.c: 
396         (get_element_type), (populate_cache), (get_deltas),
397         (cache_init): Add local function to map icalcomponent
398         kind to GW item types. Add type checks to filters 
399         passed to createCursor calls, so that each component
400         fetches items of its own type and none other.
401
402 2006-07-31  Chenthill Palanisamy  <pchenthill@novell.com>
403
404         Fixes #310489
405         * libecal/e-cal.c: (open_calendar): get the uri from
406         ecal object.
407
408 2006-07-31  Chenthill Palanisamy  <pchenthill@novell.com>
409
410         Fixes #345646
411         * gui/dialogs/recurrence-page.c: 
412         (recurrence_page_finalize): Diconnect the signal handler
413         while destroying the page.
414
415 2006-07-29  Chenthill Palanisamy  <pchenthill@novell.com>
416
417         Fixes #338203
418         * libecal/e-cal-time-util.c: 
419         (isodate_from_time_t): We format the time string ourselves
420         without using strftime as its not thread safe.
421
422 2006-07-24  Harish Krishnaswamy  <kharish@novell.com>
423
424         Patch to split the cache into multiple files based
425         on the type of objects it stores. This substantially
426         reduces the primary memory requirements of Evolution
427         and EDS for providers like GW, Exchange that manipulate
428         event/tasks/journals together.
429
430         * backends/caldav/e-cal-backend-caldav.c: (initialize_backend):
431         * backends/groupwise/e-cal-backend-groupwise.c:
432         (connect_to_server), (e_cal_backend_groupwise_open):
433         * backends/http/e-cal-backend-http.c: (e_cal_backend_http_open):
434         * backends/weather/e-cal-backend-weather.c:
435         (e_cal_backend_weather_open):
436         Update e_cal_backend_cache_new calls with an additional source
437         type argument.
438         * libecal/e-cal.[ch]: (e_cal_source_type_enum_get_type):
439         Implement the function.
440         * libedata-cal/e-cal-backend-cache.c:
441         (get_filename_from_uri),
442         (e_cal_backend_cache_set_property),
443         (e_cal_backend_cache_get_property),
444         (e_cal_backend_cache_constructor),
445         (e_cal_backend_cache_class_init), (e_cal_backend_cache_new):
446         Compute the cache destination using the source type.
447         * libedata-cal/e-cal-backend-cache.h: Include header e-cal.h.
448
449 2006-07-22  Harish Krishnaswamy  <kharish@novell.com>
450
451         * backends/groupwise/e-cal-backend-groupwise-utils.c:
452         (set_default_alarms): Refactor code to cut down 
453         comparisons. 
454
455 2006-07-22  Chenthill Palanisamy  <pchenthill@novell.com>
456
457         Fixes #347987
458         * backends/groupwise/e-cal-backend-groupwise.c: 
459         (get_deltas): fall back to right recur_key if the 
460         start date is not returned by the server.
461
462 2006-07-22  Harish Krishnaswamy  <kharish@novell.com>
463
464         * backends/groupwise/e-cal-backend-groupwise-utils.c:
465         (set_default_alarms), (e_gw_item_to_cal_component):
466         * backends/groupwise/e-cal-backend-groupwise-utils.h:
467         Apply default alarm client preference to GW events if
468         the event does not already have one. Fixes Bug 
469         #167330 on bugzilla.novell.com.
470
471 2006-07-22  Chenthill Palanisamy  <pchenthill@novell.com>
472         
473         * libedata-cal/e-cal-backend-sexp.c: (matches_summary): If the query
474         has a empty string, return TRUE.
475         * libedata-cal/e-data-cal.c: (e_data_cal_notify_object_created):
476         If the appointment is sucessfully created and if the *icalboj
477         do not send the objects created signal to the backend as there might
478         be a delay delivery set.
479         * backends/groupwise/e-cal-backend-groupwise-factory.c:
480         (_journal_new_backend), (_journal_get_kind),
481         (journal_backend_factory_class_init),
482         (journal_backend_factory_get_type), (eds_module_initialize),
483         (eds_module_list_types):
484         * backends/groupwise/e-cal-backend-groupwise-utils.c:
485         (set_attendees_to_item), (set_properties_from_cal_component),
486         (e_gw_item_new_from_cal_component), (e_gw_item_to_cal_component),
487         (e_gw_connection_send_appointment),
488         (e_cal_backend_groupwise_store_settings):
489         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
490         (cache_init), (set_container_id_with_count), (connect_to_server),
491         (e_cal_backend_groupwise_internal_get_default_timezone),
492         (e_cal_backend_groupwise_create_object):
493         * libecal/e-cal-recur.c: (e_cal_recur_generate_instances_of_rule):
494         * libedata-cal/e-cal-backend-cache.c:
495         (e_cal_backend_cache_get_components): Added support for Gw notes
496
497 2006-07-10  Chenthill Palanisamy  <pchenthill@novell.com>
498
499         Fixes #332911
500         * backends/caldav/e-cal-backend-caldav.c:
501         (caldav_set_default_zone), (e_cal_backend_caldav_class_init):
502         * backends/contacts/e-cal-backend-contacts.c:
503         (e_cal_backend_contacts_open),
504         (e_cal_backend_contacts_set_default_zone),
505         (e_cal_backend_contacts_finalize),
506         (e_cal_backend_contacts_class_init):
507         * backends/file/e-cal-backend-file.c:
508         (e_cal_backend_file_finalize), (e_cal_backend_file_open),
509         (e_cal_backend_file_set_default_zone),
510         (e_cal_backend_file_class_init):
511         * backends/groupwise/e-cal-backend-groupwise.c:
512         (connect_to_server), (e_cal_backend_groupwise_finalize),
513         (e_cal_backend_groupwise_open),
514         (e_cal_backend_groupwise_set_default_zone),
515         (e_cal_backend_groupwise_class_init):
516         * backends/http/e-cal-backend-http.c:
517         (e_cal_backend_http_finalize), (e_cal_backend_http_open),
518         (e_cal_backend_http_set_default_zone),
519         (e_cal_backend_http_class_init):
520         * backends/weather/e-cal-backend-weather.c:
521         (e_cal_backend_weather_open),
522         (e_cal_backend_weather_set_default_zone),
523         (e_cal_backend_weather_finalize),
524         (e_cal_backend_weather_class_init):
525         * idl/Evolution-DataServer-Calendar.idl:
526         * libedata-cal/e-cal-backend-sync.c:
527         (e_cal_backend_sync_set_default_zone),
528         (_e_cal_backend_set_default_zone), (e_cal_backend_sync_class_init):
529         * libedata-cal/e-cal-backend-sync.h:
530         * libedata-cal/e-cal-backend.c: (e_cal_backend_set_default_zone):
531         * libedata-cal/e-cal-backend.h:
532         * libedata-cal/e-data-cal.c: (impl_Cal_setDefaultTimezone): Added
533         e_cal_backend_set_zone as a replacement for e_cal_backend_set_timezone.
534         Replaced the same for all backends.     
535         * backends/e-cal-backend-groupwise-utils.c (set_properties_from_cal_component):
536         check if the dtstart is date using the is_date parameter.
537         * libecal/e-cal.c: (e_cal_set_default_timezone): Pass the timezone object
538         as a string instead of the tzid.
539
540 2006-07-10  Harish Krishnaswamy  <kharish@novell.com>
541
542         * libedata-cal/e-cal-backend-cache.c:
543         (e_cal_backend_cache_get_components),
544         (e_cal_backend_cache_get_components_by_uid):
545         Prefer g_(s)list_prepend to g_(s)list_append.
546
547 2006-07-03  Harish Krishnaswamy  <kharish@novell.com>
548
549         * libical/src/libical/icalvalue.c
550         (icalvalue_decode_ical_string): If the string decoded has
551         no special characters, the length of computed string is equal
552         to the buffer length allocated. Hence, do not flag error on
553         equality .
554
555 2006-06-21  Harish Krishnaswamy  <kharish@novell.com>
556
557         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache):
558         Set appropriate cursor/seek direction for each of the
559         pre-population calls.
560
561 2006-06-19  Harish Krishnaswamy  <kharish@novell.com>
562
563         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache):
564         reset 'done' flag for each iteration of cursor reads.
565
566 2006-06-16  Tor Lillqvist  <tml@novell.com>
567
568         * backends/groupwise/e-cal-backend-groupwise.c: Add gmtime_r()
569         macro implementation for Win32.
570
571 2006-06-15  Andre Klapper  <a9016009@gmx.de>
572
573         * libecal/e-cal.c: 
574         * libecal/e-cal.c: 
575         changing "cancelled" to "canceled" in user-visible strings.
576         Fixes bug #342163.
577
578 2006-06-15  Harish Krishnaswamy  <kharish@novell.com>
579
580         * libecal/e-cal-component.c: (get_attachment_list),
581         (set_attachment_list): Handle attachment URLs with
582         special characters that are not permitted in
583         ICAL. Fixes #178706 in bugzilla.novell.com.
584         
585 2006-06-15  Wang Xin  <jedy.wang@sun.com>
586
587         Fixes #344253
588
589         * backends/file/e-cal-backend-file.c:
590         (e_cal_backend_file_compute_changes_foreach_key): Free comp.
591         * backends/groupwise/e-cal-backend-groupwise.c:
592         (e_cal_backend_groupwise_compute_changes_foreach_key): Free comp.
593
594 2006-06-13  Andre Klapper <a9016009@gmx.de>
595
596         * backends/file/e-cal-backend-file.c:
597         changing "couldn't", "can't" and "didn't" to proper
598         English. Fixes bug #342160.
599
600 2006-06-13  Chenthill Palanisamy  <pchenthill@novell.com>
601
602         Fixes #335069
603         * backends/caldav/e-cal-backend-caldav.c: 
604         (caldav_remove): Return success if the cache
605         is not loaded.
606
607 2006-06-12  Harish Krishnaswamy  <kharish@novell.com>
608
609         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
610         (get_deltas): Fetch calendar data with a bias towards present, 
611         near past and near future. Fixes bug#.
612         Also, prefer gmtime_r to gmtime.
613
614 2006-06-12  Ross Burton  <ross@openedhand.com>
615
616         * backends/contacts/Makefile.am:
617         * backends/file/Makefile.am:
618         * backends/weather/Makefile.am:
619         Don't statically link a 200K library into each backend, when it's
620         already in libecal.
621
622 2006-05-25  Wang Xin  <jedy.wang@sun.com>
623
624         Fixes #342102
625
626         * libedata-cal/e-cal-backend-sync.c:
627         (_e_cal_backend_modify_object): Free old_object and new_object.
628         (_e_cal_backend_remove_object): Free old_object.
629
630 2006-05-07  Kjartan Maraas  <kmaraas@gnome.org>
631
632         * backends/caldav/e-cal-backend-caldav.c: (process_object):
633         Fix typos. We were copying the wrong variable in a couple of
634         places. In plain english: Use the right etag on invitation updates. 
635
636 2006-04-22  Harish Krishnaswamy  <kharish@novell.com>
637
638         * backends/groupwise/e-cal-backend-groupwise.c:
639         (e_cal_backend_groupwise_modify_object): Send item_id
640         with recurence key while delegating multiple instances.
641         Fixes #165714 (bugzilla.novell.com)
642
643 2006-04-10  Tor Lillqvist  <tml@novell.com>
644
645         * libecal/e-cal-time-util.c: #define gmtime_r on Win32.
646
647 2006-04-06  Chenthill Palanisamy  <pchenthill@novell.com>
648
649         Fixes #162005
650         * backends/groupwise/e-cal-backend-groupwise.c:
651         (e_cal_backend_groupwise_modify_object): pass the 
652         rid while getting the component.
653         (e_cal_backend_groupwise_remove_object): Compare only
654         if the rid is present.
655                 
656 2006-04-05  Irene Huang <Irene.Huang@sun.com>
657
658         Fixes bug 335225
659
660         * backends/contacts/e-cal-backend-contacts.c:
661         (e_cal_backend_contacts_create_object),
662         (e_cal_backend_contacts_class_init): 
663         Add implementation of e_cal_backend_contacts_create_object.
664
665 2006-04-03  Chenthill Palanisamy  <pchenthill@novell.com>
666
667         Fixes #158107
668         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas),
669         (e_cal_backend_groupwise_internal_get_timezone),
670         (get_retract_data), (e_cal_backend_groupwise_modify_object),
671         (send_object), (e_cal_backend_groupwise_send_objects): Added the 
672         retract support.
673
674 2006-03-28  Chenthill Palanisamy  <pchenthill@novell.com>
675
676         Fixes #336086
677         * libical/src/libical/icaltime.c: (set_tz), (unset_tz),
678         (icaltime_as_timet_with_zone): Use a lock setting the 
679         tz enviromental variables.
680
681 2006-03-23  Chenthill Palanisamy  <pchenthill@novell.com>
682
683         Fixes #331146
684         * backends/file/e-cal-backend-file.c:
685         (check_dup_uid), (add_component): Check if the 
686         component has a uid before try to search it in the 
687         cache.
688
689 2006-03-23  Chenthill Palanisamy  <pchenthill@novell.com>
690
691         Fixes #323275
692         * libedata-cal/e-cal-backend-cache.c:
693         (e_cal_backend_cache_constructor): Register only
694         if the type is not register before.
695
696 2006-03-23  Chenthill Palanisamy  <pchenthill@novell.com>
697
698         Fixes #334065
699         * libecal/e-cal-time-util.c: (isodate_from_time_t):
700         * libical/src/libical/icaltime.c: (icaltime_from_timet_with_zone),
701         (icaltime_as_timet_with_zone): Make mktime and gmtime thread safe.
702
703 2006-03-22  Chenthill Palanisamy  <pchenthill@novell.com>
704
705         Fixes #334000
706         * libedata-cal/e-cal-backend.c:
707         (e_cal_backend_notify_object_removed): Check if
708         the query matches.
709
710 2006-03-04  Chenthill Palanisamy  <pchenthill@novell.com>
711
712         Fixes #330974
713         * libecal/e-cal.c: 
714         (build_pass_key): Get the uri from ECal, which is more
715         reliable.
716         (open_calendar): Pass ECal to build_pass_key.
717                          
718 2006-03-01  Chenthill Palanisamy  <pchenthill@novell.com>
719
720         * libedata-cal/e-cal-backend-sync.c:
721         (_e_cal_backend_remove_object): Do not get the object
722         backend again. Use the provided new and old object.
723         * libedata-cal/e-cal-backend.c:
724         (e_cal_backend_notify_object_removed): Need not check
725         if the query matches for removing an item.
726
727 2006-03-02  Jeff Cai  <Jeff.Cai@Sun.Com>
728
729         Fixes #332276
730         * backends/weather/e-weather-source-ccf.c:
731         (e_weather_source_ccf_parse):
732         Support getting weather data through global http proxy.
733
734 2006-02-28  Chenthill Palanisamy  <pchenthill@novell.com>
735
736         Fixes #332726
737         * backends/file/e-cal-backend-file.c:
738         (e_cal_backend_file_modify_object): Initialize and assign
739         the recurrence id properly. Set the date and times of the 
740         master object depending on what has changed.
741
742 2006-02-20  Harish Krishnaswamy  <kharish@novell.com>
743
744         * backends/caldav/Makefile.am: Add soup_flags to la.
745
746 2006-02-14  Chenthill Palanisamy  <pchenthill@novell.com>
747
748         Fixes #331127
749         * backends/weather/e-cal-backend-weather.c:
750         (e_cal_backend_weather_get_object): Use g_object_unref
751         instead of g_free while disposing a ECalComponent.
752
753 2006-02-13  Chenthill Palanisamy  <pchenthill@novell.com>
754
755         Fixes #329866
756         * libecal/e-cal.c: (process_detached_instances): Check if we have
757         valid recurrence id before comparing.
758
759 2006-02-12  Chenthill Palanisamy  <pchenthill@novell.com>
760
761         Fixes #329566, #329568
762         * backends/file/e-cal-backend-file.c:
763         (e_cal_backend_file_modify_object): Reset the instance dates of the 
764         master object if its a recurring event.
765         (remove_instance): Removed the return statement so that the exception is
766         set in the master object.
767
768 2006-02-09  Rajeev ramanathan <rajeevramanathan_2004@yahoo.co.in>
769
770         * backends/contacts/e-cal-backend-contacts.c: (contact_record_free)
771         Corrected id. Fixes #326428
772
773 2006-02-09  Harish Krishnaswamy  <kharish@novell.com>
774
775         * backends/caldav/e-cal-backend-caldav.c: (synchronize_cache):
776         return ECalComponentId instead of id during a remove notify
777         as per the changed semantics in ecal.
778
779 2006-01-23  Veerapuram Varadhan <vvaradhan@novell.com>
780  
781         ** Fixes #327427
782         * libedata-cal/e-data-cal-factory.c: (impl_CalFactory_getCal): Do
783         not ref a NULL object.
784         
785 2006-01-23  Chenthill Palanisamy  <pchenthill@novell.com>
786
787         Fixes #305656
788         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
789         Remove the deleted items from the server.
790
791 2006-01-23  Harish Krishnaswamy  <kharish@novell.com>
792
793         * backends/caldav/e-cal-backend-caldav.c:
794         (caldav_server_open_calendar), (caldav_server_list_objects),
795         (caldav_server_get_object), (caldav_server_put_object),
796         (caldav_server_delete_object): Add debug hooks to each of
797         the messages and remove some bad ones.
798         
799 2006-01-22  Harish Krishnaswamy  <kharish@novell.com>
800
801         * backends/caldav/e-cal-backend-caldav.c (print_header),
802         (debug_handler), (setup_debug), (caldav_server_open_calendar),
803         (caldav_server_list_objects): Add debug helper functions to
804         caldav backend.
805
806 2006-01-19  Chenthill Palanisamy  <pchenthill@novell.com>
807
808         Fixes #322951
809         * libedata-cal/e-cal-backend-cache.c:
810         (e_cal_backend_cache_get_type): Put a mutex lock
811         so that the Type value does not get reset.
812
813 2006-01-17  Harish Krishnaswamy  <kharish@novell.com>
814
815         * backends/caldav/Makefile.am: make distcheck
816         fixes.
817
818 2006-01-16  Harish Krishnaswamy <kharish@novell.com>
819
820         * backends/Makefile.am : Add caldav subdir.
821
822 2006-01-16  Harish Krishnaswamy <kharish@novell.com>
823
824         * backends/caldav/* : 'Import' the CalDAV back-end 
825         implementation into evolution-data-server. Please
826         refer evolution-caldav module in cvs.gnome.org for
827         prior Change history.
828         
829 2006-01-16  Tony Tsui <tsui.tony@gmail.com>
830
831         Fixes #267402
832         * backends/http/e-cal-backend-http.c: (webcal_to_http_method,
833         retrieval_done, begin_retrieval_cb): Add support for webcal access
834         via https.
835
836 2006-01-12  Harish Krishnaswamy  <kharish@novell.com>
837
838         * libecal/e-cal.c: (get_factories):
839         The Cal Factory oafid should reflect
840         the API version rather than the BASE version.
841         Fixes #323115.
842
843 2006-01-10  Simon Zheng  <simon.zheng@sun.com>
844
845         * backends/file/e-cal-backend-file.c:
846         * backends/weather/e-weather-source-ccf.c:
847         * libecal/e-cal-util.c:
848         * libedata-cal/e-cal-backend-sexp.c:
849         As file e-util.h is renamed, replace "libedataserver/e-util.h"
850         as "libedataserver/e-data-server-util.h".
851
852 2006-01-10  Chenthill Palanisamy  <pchenthill@novell.com>
853
854
855         Fixes #324518
856         * backends/http/e-cal-backend-http.c:
857         (notify_and_remove_from_cache): Remove the items from the cache.
858
859 2006-01-06  Chenthill Palanisamy  <pchenthill@novell.com>
860
861         Fixes #324741
862         * backends/http/e-cal-backend-http.c: (e_cal_backend_http_open):
863         Check if the default zone is present before adding it.
864
865 2006-01-05  Kjartan Maraas  <kmaraas@gnome.org>
866
867         * backends/http/e-cal-backend-http.c:
868         (notify_and_remove_from_cache): Use g_return_val_if_fail()
869         in a non-void function not g_return_if_fail()
870         * libecal/e-cal-component.c: (e_cal_component_get_id):
871         Same as above.
872         * libecal/e-cal-view-listener.c: (build_id_list): Fix
873         type in function parameter.
874         * tests/ecal/test-ecal.c: (all_tests): #if 0 out some
875         unused stuff.
876         * tests/ecal/test-recur.c: (main): Remove unused vars.
877
878 2006-01-04  Tor Lillqvist  <tml@novell.com>
879
880         * backends/weather/e-weather-source-ccf.c (find_station_url):
881         Modify call to e_util_replace_prefix() according to its changed
882         interface.
883
884         * backends/weather/Makefile.am: Need to pass E_DATA_SERVER_PREFIX
885         because of the above.
886
887 2006-01-02  Chenthill Palanisamy  <pchenthill@novell.com>
888
889         Fixes #325498
890         * backends/http/e-cal-backend-http.c:
891         (e_cal_backend_http_finalize): Remove the source
892         from the timeout loop. 
893
894 2005-12-21  Chenthill Palanisamy  <pchenthill@novell.com>
895
896         Fixes #305006
897         * backends/file/e-cal-backend-file.c:
898         (e_cal_backend_file_receive_objects): If the UID is not present
899         generate own uid and if the method is publish.
900
901 2005-12-16  Chenthill Palanisamy  <pchenthill@novell.com>
902
903         Fixes #267330
904         * libecal/e-cal-component.c: (e_cal_component_get_dtend),
905         (e_cal_component_get_dtstart), (e_cal_component_get_due): Initialize
906         internal elements of the datetime to avoid crashing.
907
908 2005-12-15  Chenthill Palanisamy  <pchenthill@novell.com>
909
910         Fixes #324009
911         * backends/http/e-cal-backend-http.c:
912         (e_cal_backend_http_get_object): Use g_object_unref
913         to free the component instead of g_free.
914
915 2005-12-13  Tor Lillqvist  <tml@novell.com>
916
917         * libecal/Makefile.am (INCLUDES): Drop unused EVOLUTION_LOCALEDIR.
918
919 2005-12-11  Tor Lillqvist  <tml@novell.com>
920
921         * libecal/e-cal.c (set_local_attachment_store,
922         e_cal_new_system_calendar, e_cal_new_system_tasks,
923         e_cal_new_system_memos): Use g_build_filename() and
924         g_filename_to_uri().
925
926 2005-12-09  Tor Lillqvist  <tml@novell.com>
927
928         * backends/groupwise/e-cal-backend-groupwise-utils.c: Use gstdio
929         wrappers. Use g_filename_from_uri() and g_file_get_contents().
930
931         * backends/weather/e-weather-source-ccf.c: Add localtime_r() and
932         strtok_r() implementations for Win32.
933         (find_station_url): Run-time lookup of the Locations.xml file on
934         Win32. Use e_xml_parse_file.
935         (tokenize): Remove unnecessary buffer allocation.
936
937         * libecal/e-cal-util.c: Open file in binary mode. Compare
938         localized strings using e_util_utf8_strcasecmp() instead of
939         g_strcasecmp().
940
941 2005-12-08  Tor Lillqvist  <tml@novell.com>
942
943         * backends/file/e-cal-backend-file.c
944         * backends/groupwise/e-cal-backend-groupwise.c: Use gstdio
945         wrappers for full non-ASCII filename support on Windows. Use
946         g_path_get_basename() instead of looking for '/'. Use
947         g_filename_to_uri() instead of prefixing "file://". Use
948         g_file_get_contents() or GMappedFile (if built against GLib >=
949         2.8) to read the attachment files.
950
951 2005-11-28  Chenthill Palanisamy  <pchenthill@novell.com>
952
953         Fixes #317322
954         * backends/file/e-cal-backend-file.c:
955         (get_object_string_from_fileobject),
956         (e_cal_backend_file_remove_object): Handle the case
957         of deleting a recurring event with no master object.
958
959 2005-11-28  Chenthill Palanisamy  <pchenthill@novell.com>
960
961         Fixes #318777
962         * backends/file/e-cal-backend-file.c:
963         (e_cal_backend_file_modify_object): Dont set the recurrence id
964         again if its already present. Don't emit unnecessary modified
965         signals.
966
967 2005-10-27  Chenthill Palanisamy  <pchenthill@novell.com>
968
969         Reworked the patch from Matthew Daniel <bugzilla@mdaniel.scdi.com>
970
971         Fixes #318130
972         * backends/http/e-cal-backend-http.c: Include
973         the file e-cal-time-util.h 
974
975 2005-10-26  Chenthill Palanisamy  <pchenthill@novell.com>
976
977         * backends/file/e-cal-backend-file.c:
978         (e_cal_backend_file_set_default_timezone): Removed
979         the assertion statement to check if the icalcomp is 
980         present. Its not needed as set_default_zone is called
981         before loading now.
982
983 2005-10-24  Chenthill Palanisamy  <pchenthill@novell.com>
984
985         Fixes #308802
986         * backends/contacts/e-cal-backend-contacts.c:
987         (e_cal_backend_contacts_open):
988         * backends/file/e-cal-backend-file.c: (e_cal_backend_file_open),
989         (e_cal_backend_file_set_default_timezone):
990         * backends/groupwise/e-cal-backend-groupwise.c:
991         (connect_to_server), (e_cal_backend_groupwise_open),
992         (e_cal_backend_groupwise_set_default_timezone):
993         * backends/http/e-cal-backend-http.c: (e_cal_backend_http_open),
994         (e_cal_backend_http_set_default_timezone):
995         * backends/weather/e-cal-backend-weather.c:
996         (e_cal_backend_weather_open): Default timezone is set before
997         the loading the calendar, so put in the cache once the calendar is 
998         loaded.
999         * libecal/e-cal.c: (e_cal_set_default_timezone): Ensuring if the default 
1000         timezone is present in the server is not needed now.
1001
1002 2005-10-19  Harish Krishnaswamy <kharish@novell.com>
1003         
1004         Committing for Nathan Owens <pianocomp81@yahoo.com>
1005         
1006         * libecal/e-cal.c: (e_cal_new_system_memos): added backend
1007         support for Memos component. Finished implement VJOURNAL support
1008         * libecal/e-cal.h: (e_cal_new_system_memos): added prototype
1009         * tests/ecal/test-ecal.c: (test_new_system_memos): added memos test
1010
1011 2005-10-10  Chenthill Palanisamy  <pchenthill@novell.com>
1012
1013         Fixes #266144
1014         * backends/contacts/e-cal-backend-contacts.c:
1015         (contact_record_free): 
1016         * backends/http/e-cal-backend-http.c:
1017         (notify_and_remove_from_cache):
1018         * backends/weather/e-cal-backend-weather.c:
1019         (finished_retrieval_cb):
1020         * backends/file/e-cal-backend-file.c: (notify_removals_cb),
1021         (e_cal_backend_file_receive_objects): Use ECalComponentId.
1022         * backends/groupwise/e-cal-backend-groupwise-utils.[ch]:
1023         (e_gw_item_to_cal_component): Store the recurrence id in
1024         utc.
1025         (e_gw_connection_send_appointment): Get the component while
1026         accepting/declining from mail component and pass all_instances
1027         and get the partstat.
1028         the 
1029         * backends/groupwise/e-cal-backend-groupwise.c:
1030         (e_cal_backend_groupwise_remove_object), (change_status),
1031         (receive_object): Change the status of all recurring appointments
1032         if all_instances is set true.
1033         * idl/Evolution-DataServer-Calendar.idl: Added a structure
1034         to hold the recurrence id and uid to notify the component
1035         removed.
1036         * libecal/e-cal-component.c: (e_cal_component_get_id),
1037         (e_cal_component_free_id): Added new API's for getting
1038         the recurrence id and uid of a component.
1039         * libecal/e-cal-component.h: Added a structure of holding
1040         both the recurrence id and the uid.
1041         * libecal/e-cal-view-listener.c: (build_id_list),
1042         (impl_notifyObjectsRemoved):
1043         * libecal/e-cal-view.c: (objects_removed_cb):
1044         * libedata-cal/e-cal-backend-sync.c:
1045         (_e_cal_backend_remove_object):
1046         * libedata-cal/e-cal-backend.c: (match_query_and_notify),
1047         (e_cal_backend_notify_object_removed):
1048         * libedata-cal/e-cal-backend.h:
1049         * libedata-cal/e-data-cal-view.c: (uncache_with_id_cb),
1050         (remove_object_from_cache):
1051         (e_data_cal_view_notify_objects_removed),
1052         (e_data_cal_view_notify_objects_removed_1):
1053         * libedata-cal/e-data-cal-view.h:
1054         * libedata-cal/e-data-cal.c: (e_data_cal_notify_object_removed):
1055         * libedata-cal/e-data-cal.h: Changed the API's to use the 
1056         ECalComponentId structure instead of uid.
1057         
1058 2005-10-07  Arunprakash  <arunp@novell.com>
1059
1060         * libedata-cal/e-data-cal-factory.c (backend_last_client_gone_cb) :
1061         Use the same key for insertion and lookup in the backends hash table.
1062         (impl_CalFactory_getCal ): Same.
1063         ** Fixes #317897.
1064         
1065 2005-10-04  Dinesh Layek  <ldinesh@novell.com>
1066
1067         Fixes #120071 
1068         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1069         (e_gw_item_to_cal_component): Added a null check for
1070         the acceptlevel.
1071
1072 2005-10-01  Chenthill Palanisamy  <pchenthill@novell.com>
1073
1074         Fixes #314925
1075         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1076         (get_attendee_prop), (set_attendees_to_item): Get the 
1077         delegated attendee and remove the delfrom parameter.
1078
1079 2005-10-01  Harry Lu <harry.lu@sun.com>
1080
1081         * libecal/e-cal.c: (generate_instances): use the same logic as in
1082         e_cal_recur_generate_instances_of_rule() to get the instance's
1083         start and end time.
1084
1085 2005-09-13  dinesh layek  <ldinesh@novell.com>
1086
1087         fixes #316195
1088         * backends/http/e-cal-backend-http.c: (e_cal_backend_http_get_free_busy),
1089         (create_user_free_busy), (free_busy_instance), (resolve_tzid): modified/added these
1090         functions for publishing freebusy information of a web-calendar.
1091
1092 2005-09-22  Dinesh Layek  <ldinesh@novell.com>
1093
1094         Fixes #309679
1095         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1096         (e_gw_item_to_cal_component): Check accept_level
1097
1098 2005-09-27  Sarfraaz Ahmed <asarfraaz@novell.com>
1099
1100         * libecal/e-cal.c (build_pass_key) : Do not recreate the uri. Instead
1101         strip the uri part after a ';'. The backend can now set its uri
1102         accordingly to have a consistent password key across multiple calendars
1103         * libedata-cal/e-data-cal-factory.c (impl_CalFactory_getCal) : Use the
1104         esource uri instead of the euri string to identify the calendar.
1105         Fixes #314746
1106
1107 2005-09-26  Wang Xin  <jedy.wang@sun.com>
1108
1109         Fixes #317226
1110
1111         * libecal/e-cal.c: (generate_instances): For all day events,
1112         set the timezone of start time and end time to default zone,
1113         in case that it is NULL.
1114
1115 2005-09-12  Chenthill Palanisamy  <pchenthill@novell.com>
1116
1117         Fixes #116162
1118         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1119         (e_gw_connection_send_appointment): Check status in getItemsRequest.
1120         * backends/groupwise/e-cal-backend-groupwise.c: 
1121         (receive_object): Assign the modif_comp to comp only if the getItemsRequest
1122         fails.
1123
1124 2005-09-15  Tor Lillqvist  <tml@novell.com>
1125
1126         * backends/groupwise/e-cal-backend-groupwise-utils.c
1127         (e_gw_connection_send_appointment): Use g_ascii_strncasecmp()
1128         instead of strncasecmp() for well-definedness.
1129
1130 2005-09-01  Chenthill Palanisamy  <pchenthill@novell.com>
1131
1132         Fixes #114384
1133         * backends/groupwise/e-cal-backend-groupwise.c: (compare_prefix),
1134         (get_deltas): Do not get form the calendar events for recurring
1135         appointments, just compare the prefix of the cache key to identify
1136         the presence of the item.
1137
1138 2005-08-25  Chenthill Palanisamy  <pchenthill@novell.com>
1139
1140         Fixes #312853
1141         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1142         (e_gw_item_to_cal_component): Intialize the tzid for
1143         all day events.
1144
1145 2005-08-22  Not Zed  <NotZed@Ximian.com>
1146
1147         * backends/weather/e-weather-source.c (e_weather_source_new):
1148         constify base.  Include missing string.h.
1149
1150         * backends/weather/e-cal-backend-weather.c
1151         (e_cal_backend_weather_open): constify uri.
1152
1153         * backends/contacts/e-cal-backend-contacts.c
1154         (contacts_changed_cb): constify uid.
1155
1156         * backends/http/e-cal-backend-http.c
1157         (e_cal_backend_http_get_timezone): constify zone.
1158
1159         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas):
1160         remove unused.
1161         (set_container_id_with_count): fix this logic so it doesn't use an
1162         unset container pointer.
1163         (connect_to_server): remove unused.
1164         (e_cal_backend_groupwise_get_static_capabilities): remove all the
1165         unecessary backslashes.
1166
1167         * backends/file/e-cal-backend-file.c
1168         (e_cal_backend_file_modify_object)
1169         (remove_instance, e_cal_backend_file_remove_object): cast away
1170         warnings.
1171         (e_cal_backend_file_modify_object): fix function signature.  no
1172         idea what new_object should be set to.
1173
1174         * libedata-cal/e-cal-backend-cache.c
1175         (e_cal_backend_cache_put_timezone): Cast away warnings.
1176
1177         * libecal/e-cal-component.c (ensure_alarm_properties_cb): pass a
1178         string to icalproperty_set_description.  Not sure if it's the
1179         right one.
1180         (get_attachment_list): use const char * for data.
1181         (set_alarm_description_cb): use const for old_summary.
1182         (SetAlarmDescriptionData): constify strings.
1183
1184         * libecal/e-cal.c (open_calendar): make parent_user const & remove
1185         unused.
1186         (e_cal_get_objects_for_uid): init kind_to_find always.
1187
1188 2005-08-23  Veerapuram Varadhan  <vvaradhan@novell.com>
1189
1190         Fixes #310461 (part of it)
1191         * libecal/e-cal-component.c (set_attachment_list):
1192         Do not call icalattach_unref after icalproperty_free, as the later
1193         ends up executing the former and thus we can avoid double
1194         unreffing.
1195
1196 2005-08-22  Sarfraaz Ahmed <asarfraaz@novell.com>
1197
1198         * libecal/e-cal.c (build_pass_key) : Builds the password key. Added new
1199         (get_host_from_uri) : Fetches the hostname from the esource. 
1200
1201 2005-08-21  Chenthill Palanisamy  <pchenthill@novell.com>
1202
1203         Fixes #271969
1204         * backends/file/e-cal-backend-file.c:
1205         (e_cal_backend_file_compute_changes):
1206         (e_cal_backend_file_compute_changes_foreach_key): Return
1207         boolean value as it as hash func.
1208         Committing for Armin Bauer  <armin.bauer@desscon.com>
1209         and modified by <jmubeen@novell.com> and
1210         <vvaradhan@novell.com>.
1211
1212 2005-08-17  Carsten Guenther <carsten.guenther@scalix.com>
1213
1214         Fixes http://bugzilla.gnome.org/show_bug.cgi?id=313657
1215         * libecal/e-cal-recur.c:
1216         (cal_obj_remove_duplicates_and_invalid_dates,
1217         cal_obj_bymonthday_expand):
1218         If a occurrence falls on a day that does not exist for that
1219         month then move it to the last day of the month instead of
1220         skipping it.
1221
1222 2005-08-17  Chenthill Palanisamy  <pchenthill@novell.com>
1223         
1224         Fixes #311831
1225         * libecal/e-cal.c (cal_read_only_cb): Check if
1226        the op->bool is TRUE before emiting the cond
1227        signal.
1228        (get_read_only): set the op->bool to true while
1229        making the request.
1230
1231 2005-08-17  Chenthill Palanisamy  <pchenthill@novell.com>
1232
1233         Fixes #312578
1234         * backends/groupwise/e-cal-backend-groupwise.c:
1235         (e_cal_backend_groupwise_modify_object): Check the mod
1236         type and send the appropriate parameters for delegate
1237         request.
1238
1239 2005-08-12  P. S. Chakravarthi  <pchakravarthi@novell.com>
1240
1241         Fixes #311078
1242         * backends/groupwise/e-cal-backend-groupwise.c:
1243         (populate_cache): percent is not allowed to go beyond 100
1244
1245 2005-08-11  Tor Lillqvist  <tml@novell.com>
1246
1247         * backends/contacts/Makefile.am
1248         * backends/file/Makefile.am
1249         * backends/groupwise/Makefile.am
1250         * backends/http/Makefile.am
1251         * backends/weather/Makefile.am
1252         * libecal/Makefile.am
1253         * libedata-cal/Makefile.am: Link with all used libraries. Use
1254         -no-undefined on Win32.
1255
1256         * backends/contacts/e-cal-backend-contacts-factory.c
1257         * backends/file/e-cal-backend-file-factory.c
1258         * backends/groupwise/e-cal-backend-groupwise-factory.c
1259         * backends/http/e-cal-backend-http-factory.c
1260         * backends/weather/e-cal-backend-weather-factory.c
1261         * libedata-cal/e-cal-backend-factory.c: : Drop inclusion of
1262         <pthread.h>, these files do not use any pthread API.
1263
1264         * libecal/e-cal-component.c: No getgid() or getppid() on
1265         Win32, #define as 0.
1266         (e_cal_component_gen_uid): Use g_get_host_name() on Win32.
1267
1268         * libecal/e-cal-recur.h (e_cal_recur_nth): Importing variables
1269         from DLLs can be a bit problematic, so use a functional API
1270         instead on Win32.
1271
1272         * libecal/e-cal-recur.c (e_cal_get_recur_nth): Win32-only function
1273         that returns a pointer to the e_cal_recur_nth array.
1274
1275 2005-08-06  P. S. Chakravarthi  <pchakravarthi@novell.com>
1276
1277         Fixes #309499
1278         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1279         (set_attendees_to_item): Reset the 'delfrom' parameter to 
1280         empty string and set the attendee_list back to the ECalComponent
1281         so that recipient list is build, containing current invitees 
1282         only.  
1283
1284
1285 2005-08-04  Chenthill Palanisamy  <pchenthill@novell.com>
1286
1287         Fixes #305590
1288         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1289         (e_gw_connection_get_freebusy_info): Get the FreeBusyStatus
1290         element from the response before getting the FreeBusyInfo.
1291
1292 2005-08-02  Chenthill Palanisamy  <pchenthill@novell.com>
1293
1294         Fixes #310328
1295         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1296         (e_gw_item_to_cal_component): Assign the date value alone
1297         for start and end date if its an allday event.
1298
1299 2005-07-27  Mengjie Yu  <meng-jie.yu@sun.com>
1300
1301         * backends/file/e-cal-backend-file-events.c:
1302         Add reserved field for an empty structure.
1303         * backends/file/e-cal-backend-file-journal.c:
1304         Add reserved field for an empty structure.
1305         * backends/file/e-cal-backend-file-todos.c:
1306         Add reserved field for an empty structure.
1307         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1308         (e_gw_item_to_cal_component):
1309         Convert a structure to the same type will fail under sun's compiler.
1310         * backends/weather/e-weather-source.c: (e_weather_source_parse):
1311         void function should not return value.
1312
1313         Fixes #310198
1314
1315 2005-07-25  Chenthill Palanisamy  <pchenthill@novell.com>
1316
1317         Fixes #271837
1318         * libecal/e-cal.c: 
1319         (e_cal_get_object): Fix for build break in sun
1320         compiler.
1321         Committing for bugzilla-novell@thewrittenword.com.
1322
1323 2005-07-25  Chenthill Palanisamy  <pchenthill@novell.com>
1324
1325         Fixes #303548
1326         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
1327         (get_deltas): Removed the getItems call for getting the new items,
1328         instead check for new items with all ids returned in read cursors
1329         request.
1330
1331 2005-07-23  Chenthill Palanisamy  <pchenthill@novell.com>
1332
1333         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1334         (e_gw_connection_send_appointment): Check if the container id
1335         is present in the item id before appending it.
1336
1337 2005-07-21  Chenthill Palanisamy  <pchenthill@novell.com>
1338
1339         * backends/groupwise/e-cal-backend-groupwise.c:
1340         (e_cal_backend_groupwise_get_static_capabilities):
1341         * libecal/e-cal-util.h: Added a new static capability
1342         CAL_STATIC_CAPABILITY_HAS_UNACCEPTED_MEETING to identify
1343         the backends which allow unaccepted meetings to appear in
1344         calendar.
1345
1346 2005-07-19  Chenthill Palanisamy  <pchenthill@novell.com>
1347
1348         Fixes #310767
1349         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1350         (e_gw_connection_send_appointment): Set the item_id for
1351         single instance also. Fixed typo error in X-GW-RECUR-INSTANCES-MOD-TYPE
1352         * backends/groupwise/e-cal-backend-groupwise.c:
1353         (e_cal_backend_groupwise_remove_object): Pass the recurrence
1354         key while accepting/declining all instances of a recurring
1355         appointment.
1356
1357 2005-07-13  Chenthill Palanisamy  <pchenthill@novell.com>
1358
1359         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
1360         (e_cal_backend_groupwise_create_object): Added "peek" in the view 
1361         while getting the items back from the server.
1362         (e_cal_backend_groupwise_remove_object): Intialize the list item_ids 
1363         to NULL.
1364
1365 2005-07-11  Chenthill Palanisamy  <pchenthill@novell.com>
1366
1367         * backends/groupwise/e-cal-backend-groupwise.c:
1368         (e_cal_backend_groupwise_set_mode): Notify read_only to client(s).
1369         * libecal/e-cal.c (cal_read_only_cb),(open_calendar), 
1370         (e_cal_is_read_only), (get_read_only): Get the read only state
1371        from the backend only while opening the calendar. The backend would
1372        notify us if the state changes.
1373         (e_cal_get_cal_address), (cal_cal_address_cb): Get the cal_address
1374         only once from the backend.
1375         * libedata-cal/e-cal-backend.[ch]: (e_cal_backend_notify_readonly),
1376         (e_cal_backend_notify_cal_address): Methods to notify the changes
1377         in the backend.
1378         
1379         Commiting for viren.l <viren@novell.com>
1380
1381 2005-07-11  Chenthill Palanisamy  <pchenthill@novell.com>
1382
1383         * idl/Evolution-DataServer-Calendar.idl: Interface for sending a request
1384         for an attachment and notifying the attachment list.
1385         * libecal/e-cal-listener.[ch]: (impl_notifyAttachmentListRequested),
1386         (e_cal_listener_class_init): listens to the backend and Notifies the client.
1387         * libecal/e-cal.[ch]: (cal_attachment_list_cb), (e_cal_init),
1388         (e_cal_get_attachments_for_comp): API to retrieve the attachment
1389         list for a calendar item.
1390         * libedata-cal/e-cal-backend-sync.[ch]:
1391         (e_cal_backend_sync_get_attachment_list),
1392         (_e_cal_backend_get_attachment_list),
1393         (e_cal_backend_sync_class_init): Methods to send request to corresponding
1394         backends and send notifications to the client.
1395         * libedata-cal/e-cal-backend.c:
1396         (e_cal_backend_get_attachment_list):
1397         * libedata-cal/e-cal-backend.h: Calls the sync implemention.
1398         * libedata-cal/e-data-cal.[ch]: (impl_Cal_getAttachmentList),
1399         (e_data_cal_class_init), (e_data_cal_notify_object_list),
1400         (e_data_cal_notify_attachment_list): Implements the request and the
1401         sends notification to the listener.
1402         * backends/file/e-cal-backend-file.c:
1403         (e_cal_backend_file_get_attachment_list),
1404         (e_cal_backend_file_class_init):
1405         * backends/groupwise/e-cal-backend-groupwise.c:
1406         (e_cal_backend_groupwise_get_attachment_list),
1407         (e_cal_backend_groupwise_class_init): Virtual methods to get
1408         the attachment for a calendar object.
1409
1410
1411 2005-07-10  Sankar P  <psankar@novell.com>
1412
1413         * libecal/e-cal.c: (open_calendar)
1414         Added a string which will be used for password prompt in case of a proxy account.
1415
1416         * backends/groupwise/e-cal-backend-groupwise.c: (connect_to_server)
1417         Added code to set the backend permission based on the proxy rights with which a proxy can act.
1418
1419 2005-07-09  Harish Krishnaswamy  <kharish@novell.com>
1420
1421         * libecal/e-cal.c: (e_cal_open_async), (e_cal_get_object),
1422         (e_cal_get_objects_for_uid), (e_cal_generate_instances_for_object),
1423         (e_cal_get_error_message): Fix some more compiler warnings.
1424
1425 2005-07-09  Harish Krishnaswamy  <kharish@novell.com>
1426
1427         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
1428         Fix compiler warnings.
1429
1430 2005-07-08  Chenthill Palanisamy  <pchenthill@novell.com>
1431
1432         * backends/groupwise/e-cal-backend-groupwise.c
1433         (e_cal_backend_groupwise_remove_object): Use removeItemsRequest
1434         for removing all the recurring posted appointments.
1435         (get_gw_item_id): Get the item id from the component.
1436         (get_deltas): Commented the read cursors request to get the icalids,
1437         since we need recurrece keys as we use it as the uid for recurrence items.
1438         Get the component from cache using uid and rid.
1439         * e-cal.c (e_cal_remove_object): Used CALOBJ_MOD_THIS since we are just removing
1440         one component.
1441         
1442 2005-07-08  Harish Krishnaswamy  <kharish@novell.com>
1443
1444         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1445         (set_rrule_from_comp), (set_properties_from_cal_component),
1446         (e_gw_item_to_cal_component), (e_gw_connection_send_appointment):
1447          add  support for creation of recurrence items by sending the 
1448         recurrence formula to the server instead of generating the 
1449         instances at the client end.
1450         * backends/groupwise/e-cal-backend-groupwise.c: 
1451         (e_cal_backend_groupwise_get_static_capabilities):
1452          add capability RECURRENCES_NO_MASTER.
1453         (e_cal_backend_groupwise_remove_object): add support for 
1454         removing all instances of a recurrence at one shot.
1455         * libecal/e-cal-util.h: Add a static capability 
1456         RECURRENCES_NO_MASTER. Backends that do not use master objects
1457         to represent recurrence information and store them as individual
1458         instances.
1459         * libecal/e-cal.c: (e_cal_get_recurrences_no_master)
1460         (e_cal_generate_instances_for_object): Do not expand instances for objects from 
1461         backends that do not have master object to represent recurrences.
1462         * libecal/e-cal.h:
1463         * libedata-cal/e-cal-backend-cache.[ch]
1464         (e_cal_backend_cache_get_components_by_uid):  Function to
1465         fetch all items in the cache that have the same uid. (recurrence
1466         items, detached instances etc.)
1467
1468 2005-07-08  Sankar P  <psankar@novell.com>
1469         
1470         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas)
1471         Moved from getQuickMessages to combination of getItems and readCursor, 
1472         to overcome the problems posed by getQuickMessages. 
1473         * libedata-cal/e-cal-backend-cache.[ch]: 
1474         (e_cal_backend_cache_get_key_value) 
1475         (e_cal_backend_cache_put_key_value):
1476         Added functions so as to put/get strings onto cache
1477         * libedata-cal/e-cal-backend-cache.[ch]:
1478         (e_cal_backend_cache_put_server_utc_time)
1479         Removed the unnecessary duplication of utc string.
1480
1481 2005-07-02  Chenthill Palanisamy  <pchenthill@novell.com>
1482
1483         * backends/groupwise/e-cal-backend-groupwise-utils.c
1484         (e_gw_item_to_cal_component): Removed the debug messages.
1485         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
1486         (set_container_id_with_count), (connect_to_server): Get the number
1487         of elements present in the calendar folder and use to calculate the 
1488         percent.
1489         * libecal/e-cal-view-listener.c: (e_cal_view_listener_class_init):
1490         * libecal/e-cal-view.c: (e_cal_view_class_init): Marshal the elements
1491         with string_int.
1492         * libedata-cal/e-cal-backend.[ch]:
1493         (e_cal_backend_notify_view_progress),
1494         (e_cal_backend_notify_view_done): Added new functions to notify 
1495         the view progress.
1496
1497 2005-07-02  Chenthill Palanisamy  <pchenthill@novell.com>
1498
1499         * backends/groupwise/e-cal-backend-groupwise.[ch]:
1500         Removed the function for getting container_id.
1501
1502 2005-07-02  Harish Krishnaswamy  <kharish@novell.com>
1503
1504         Fixes #309079
1505         * libecal/e-cal.c: (e_cal_create_object): Fix
1506         memory leak
1507
1508 2005-06-23  Chenthill Palanisamy  <pchenthill@novell.com>
1509
1510         * backends/http/Makefile.am: Removed unnecessary
1511         linking to file backend.
1512
1513 2005-06-22  Chenthill Palanisamy  <pchenthill@novell.com>
1514
1515         * backends/groupwise/Makefile.am: Removed unnecessary
1516         linking to file backend.
1517
1518 2005-06-21  Chenthill Palanisamy  <pchenthill@novell.com>
1519
1520         * backends/groupwise/e-cal-backend-groupwise-utils.h:
1521         * backends/groupwise/e-cal-backend-groupwise.h:
1522         Committing the changes made in the header file for delegate.
1523
1524 2005-06-20  Chenthill Palanisamy  <pchenthill@novell.com>
1525
1526         * backends/file/e-cal-backend-file.c:
1527         (e_cal_backend_file_get_static_capabilities): Added
1528         the delegate support for file backend.
1529         * backends/groupwise/e-cal-backend-groupwise.c:
1530         (e_cal_backend_groupwise_get_static_capabilities):
1531         * libecal/e-cal-util.h: Added the static capability
1532         to support delegation to multiple delegatees.
1533
1534 2005-06-06  Chenthill Palanisamy  <pchenthill@novell.com>
1535
1536         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1537         (set_attendees_to_item): Add the delegatees only while
1538         for sending delegate request.
1539         (set_properties_from_cal_component): called the function 
1540         set_attendees_to_item to set attendees to component.
1541         (e_gw_item_new_for_delegate_from_cal): Create a new item for
1542         delegation.
1543         (e_cal_backend_groupwise_utils_check_delegate): Checks if the 
1544         meeting is delegated.
1545         * backends/groupwise/e-cal-backend-groupwise.c:
1546         (e_cal_backend_groupwise_get_container_id): Gets the container
1547         id from cbgw.
1548         (e_cal_backend_groupwise_get_static_capabilities): Added
1549         the static capability for Delegate.
1550         (e_cal_backend_groupwise_modify_object): Check if the 
1551         meeting is delegated and send a delegate request.
1552         * backends/groupwise/e-cal-backend-groupwise.h: Added a function
1553         to get the container id.
1554         * libecal/e-cal-util.c: (e_cal_util_component_has_attendee):
1555         To check if the component has an attendee.
1556         * libecal/e-cal-util.h: Added the static capability for 
1557         delegate and for a supporting backends which has no organizer.
1558
1559 2005-05-18  Ross Burton  <ross@burtonini.com>
1560
1561         * backends/contacts/e-cal-backend-contacts.c:
1562         Fix various memory leaks.
1563
1564 2005-05-18  Rodrigo Moya <rodrigo@novell.com>
1565
1566         * backends/file/e-cal-backend-file-journal.[ch]: new class to implement
1567         VJOURNAL backend.
1568
1569         * backends/file/e-cal-backend-factory.c (_journal_new_backend,
1570         _journal_get_kind, journal_backend_factory_class_init,
1571         journal_backend_factory_get_type): new functions for the journal backend.
1572         (eds_module_initialize, eds_module_list_types): add the new backend.
1573
1574         * backends/file/Makefile.am: added new files.
1575
1576 2005-05-13  Rodrigo Moya <rodrigo@novell.com>
1577
1578         * libedata-cal/e-cal-backend.c (e_cal_backend_get_cal_address):
1579         fixed gtk-doc comments for functions without return value.
1580
1581 2005-05-13  The Written Word <bugzilla-novell@thewrittenword.com>
1582
1583         Fixes 271838
1584
1585         * libedata-cal/e-cal-backend.c (e_cal_backend_get_object_list):
1586         don't return value from void function.
1587
1588 2005-05-13  Shreyas Srinivasan  <sshreyas@novell.com>
1589
1590         * backends/contacts/e-cal-backend-contacts.c: Fix #256874
1591         
1592 2005-05-12  Vivek Jain <jvivek@novell.com>
1593         
1594          Fixes #271592
1595          * backends/contacts/e-cal-backend-contacts.c:
1596          (e_cal_backend_contacts_get_object):
1597          check the uid to return the object corresponding to
1598          birthday/anniversary
1599
1600 2005-05-11  Rodrigo Moya <rodrigo@novell.com>
1601
1602         * libedata-cal/e-cal-backend-sync.c:
1603         * libedata-cal/e-cal-backend-util.c:
1604         * libedata-cal/e-cal-backend.c:
1605         * libedata-cal/e-data-cal-factory.c:
1606         * libedata-cal/e-data-cal-view.c:
1607         * libedata-cal/e-data-cal.c: improved API documentation.
1608
1609 2005-05-09  Sushma Rai  <rsushma@novell.com>
1610
1611         * libedata-cal/e-cal-backend-cache.c (e_cal_backend_cache_constructor):
1612         Freeing cache file name.
1613         
1614         * calendar/backends/groupwise/e-cal-backend-groupwise.c (get_deltas):
1615         Checking for server time value, though typically this should never be NULL.
1616         (e_cal_backend_groupwise_get_object_list): Unref cbsexp.
1617
1618         * calendar/backends/file/e-cal-backend-file.c
1619         (e_cal_backend_file_get_object_list)(create_user_free_busy): Unref sexp.
1620
1621 2005-05-06  Rodrigo Moya <rodrigo@novell.com>
1622
1623         * libedata-cal/e-cal-backend-factory.c:
1624         * libedata-cal/e-cal-backend-sexp.c:
1625         * libedata-cal/e-cal-backend-cache.c: improved API documentation.
1626         (e_cal_backend_cache_put_server_utc_time): fixed leak.
1627
1628 2005-05-06  Rodrigo Moya <rodrigo@novell.com>
1629
1630         * libecal/e-cal.c:
1631         * libecal/e-cal-time-util.c:
1632         * libecal/e-cal-view.c:
1633         * libecal/e-cal-view-listener.c:
1634         * libecal/e-cal-util.[ch]: improved API documentation.
1635         (e_cal_util_expand_uri): removed unused function.
1636
1637 2005-05-06  Rodrigo Moya <rodrigo@novell.com>
1638
1639         Fixes #273264
1640
1641         * libecal/e-cal.c (add_instance): set RECURRENCE-ID correctly.
1642         (generate_instances): use detached instances' start and end times, not
1643         the RECURRENCE-ID.
1644
1645         * backends/file/e-cal-backend-file.c
1646         (e_cal_backend_file_modify_object): no need to add exceptions for
1647         detached recurrences.
1648         (e_cal_backend_file_get_static_capabilities): disable THISAND*, so that
1649         the broken GUI does not try to use them.
1650
1651 2005-05-04  Rodrigo Moya <rodrigo@novell.com>
1652
1653         Fixes #300920
1654
1655         * libecal/libecal.pc.in:
1656         * libedata-cal/libedata-cal.pc.in: fixed Name: and Description:
1657         fields.
1658
1659 2005-05-04  Rodrigo Moya <rodrigo@novell.com>
1660
1661         * libecal/e-cal-component.c:
1662         * libecal/e-cal-listener.c:
1663         * libecal/e-cal-recur.[ch]: improved API documentation.
1664
1665 2005-04-19  Philip Van Hoof  <pvanhoof@gnome.org>
1666
1667         * libecal/e-cal.c: Function prototype (compiler fix)
1668         
1669 2005-04-18  Chenthill Palanisamy  <pchenthill@novell.com>
1670
1671         Fixes #274409
1672         * backends/groupwise/e-cal-backend-groupwise.c:
1673         (get_deltas_timeout), (cache_init), (connect_to_server):
1674         Run the get_deltas in a seperate thread instead of the main
1675         loop.
1676         (get_deltas): Added a static mutex lock.
1677
1678 2005-04-11  Vivek Jain <jvivek@novell.com>
1679         
1680         * backends/groupwise/e-cal-backend-groupwise.c :
1681         (e_cal_backend_groupwise_compute_changes_foreach_key):
1682         callback function should take (key, value)pair as first two arguments
1683         and then the user data          
1684         
1685 2005-04-08  Rodrigo Moya <rodrigo@novell.com>
1686
1687         * libecal/e-cal-util.h: added new function's prototype.
1688
1689 2005-04-08  Rodrigo Moya <rodrigo@novell.com>
1690
1691         Fixes #70035
1692
1693         * libecal/e-cal-util.c (e_cal_util_parse_ics_string): new function that
1694         supports strings with multiple VCALENDAR's.
1695
1696         * backends/http/e-cal-backend-http.c (retrieval_done): use the new
1697         function instead of icalparser_parse_string.
1698
1699 2004-04-06  Rodrigo Moya <rodrigo@novell.com>
1700
1701         * libecal/e-cal.c (e_cal_open_async): check load state and if in
1702         progress or already loaded, notify caller and return.
1703
1704 2005-04-06  Chenthill Palanisamy  <pchenthill@novell.com>
1705
1706         * libecal/e-cal.c
1707         (open_calendar): Added a boolean variable in open_calendar
1708         to ensure authentication when the mode is switched.If the calendar is
1709         loaded  return TRUE. Set the load_state to not loaded if the loading
1710         fails.
1711         (open_async), (e_cal_open), (reopen_with_auth): Added additional
1712         argument for the open_calendar call.
1713
1714 2005-04-06  Christian Kellner  <gicmo@gnome.org>
1715
1716         * libecal/e-cal.c (set_local_attachment_store): 
1717         Add support for scalix provider. Also plug a 
1718         small mem leak.
1719         Patch from Carsten Guenther <Carsten.Guenther@scalix.com>
1720
1721 2005-03-24  Chenthill Palanisamy  <pchenthill@novell.com>
1722         
1723         Fixes #73336    
1724         * backends/groupwise/e-cal-backend-groupwise.c:
1725         (connect_to_server): Check for the container id
1726         before calling the cache init.
1727
1728 2005-03-24  Chenthill Palanisamy  <pchenthill@novell.com>
1729
1730         Fixes #73508
1731         * backends/groupwise/e-cal-backend-groupwise.c:
1732         (e_cal_backend_groupwise_get_static_capabilities):
1733         * libecal/e-cal-util.h: Added a new static capability 
1734         to check and set the partstat as NEEDS ACTION for the
1735         organizer.
1736         * libecal/e-cal.[ch] (e_cal_get_organizer_must_accept):
1737         Added a function to check the static capability.
1738
1739 2005-03-12  Chenthill Palanisamy  <pchenthill@novell.com>
1740
1741         * backends/groupwise/e-cal-backend-groupwise.c:
1742         (connect_to_server): Run the get deltas in a thread to
1743         avoid the inresponsiveness of the GUI when evolution
1744         changes mode from offline to online.
1745
1746 2005-03-12  Harish Krishnaswamy <kharish@novell.com>
1747         
1748         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas) :
1749         use 'peek' while downloading new items so when the calendar gets 
1750         the new item before the mailer has a chance to retrieve it, the item
1751         is not flagged read.
1752         
1753 2005-03-12  Harish Krishnaswamy <kharish@novell.com>
1754         
1755         Fixes a memory corruption issue in GW backend 
1756         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas) :
1757         strftime should be passed an array of sufficient length, not a
1758         char *. Fetch t_str from cache - so you are always sure of having 
1759         the correct value.Add some extra safety code checking empty strings.
1760
1761 2005-03-11  Sarfraaz Ahmed <asarfraaz@novell.com>
1762
1763         * libecal/e-cal.c : Set the local_attachment_store for exchange
1764         
1765 2005-03-08  Chenthill Palanisamy  <pchenthill@novell.com>
1766
1767         Fixes #73141
1768         * libecal/e-cal.c: (open_calendar): Check if the uri
1769         is not NULL before getting the password from
1770         e_passwords.
1771
1772 2005-03-06  Rodrigo Moya <rodrigo@novell.com>
1773
1774         Fixes #72454
1775
1776         * backends/http/e-cal-backend-http.c (begin_retrieval_cb): call
1777         g_object_set with correct arguments.
1778
1779 2005-02-28  Chenthill Palanisamy  <pchenthill@novell.com>
1780
1781         * backends/groupwise/e-cal-backend-groupwise.c: 
1782         (get_deltas): Check if the component type is the same
1783         as the backend kind before sending notification to the 
1784         view.   
1785
1786 2005-02-28  Chenthill Palanisamy  <pchenthill@novell.com>
1787
1788         Fixes #72958
1789         * backends/groupwise/e-cal-backend-groupwise.c:
1790         (e_cal_backend_groupwise_create_object): If the server
1791         sends the status succes without uid present, then it
1792         must be due to delay delivery set, so do not put the component
1793         in the cache since it might not be created in the server.
1794
1795 2005-02-28  Harish Krishnaswamy  <kharish@novell.com>
1796
1797         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
1798         store the time_string immediately after the 'New' call.
1799         add missing view in the second getQM call - "attachments"
1800
1801 2005-02-25  Rodrigo Moya <rodrigo@novell.com>
1802
1803         * backends/weather/e-cal-backend-weather.c
1804         (e_cal_backend_weather_get_static_capabilities): 'capabilities' is not
1805         an array, but an out char * argument.
1806
1807
1808 2005-02-25  Chenthill Palanisamy  <pchenthill@novell.com>
1809
1810         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas):
1811         Changed the getQm calls since the function has been changed.
1812         Send the time stamps received from the server.
1813         * libedata-cal/e-cal-backend-cache.c:
1814         (e_cal_backend_cache_put_server_utc_time),
1815         (e_cal_backend_cache_get_server_utc_time):
1816         * libedata-cal/e-cal-backend-cache.h:  Added functions
1817         to put the server UTC time in cache.
1818
1819 2005-02-25  Harish Krishnaswamy  <kharish@novell.com>
1820
1821         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache):
1822         Do not use position cursor calls anymore. use position field in 
1823         read cursor request.
1824
1825 2005-02-22  Rodrigo Moya <rodrigo@novell.com>
1826
1827         * backends/http/e-cal-backend-http.c (e_cal_backend_http_init):
1828         * backends/groupwise/e-cal-backend-groupwise.c
1829         (e_cal_backend_groupwise_init):
1830         * backends/weather/e-cal-backend-weather.c
1831         (e_cal_backend_weather_init): set backend's lock to TRUE.
1832
1833 2005-02-22  JP Rosevear  <jpr@novell.com>
1834
1835         * libedata-cal/e-cal-backend-sync.c: added a lock wrapper to make
1836         calls be locked if backend is set so.
1837         (e_cal_backend_sync_set_lock): new function.
1838         (e_cal_backend_sync_is_read_only, e_cal_backend_sync_get_cal_address,
1839         e_cal_backend_sync_get_alarm_email_address,
1840         e_cal_backend_sync_get_ldap_attribute,
1841         e_cal_backend_sync_get_static_capabilities, e_cal_backend_sync_open,
1842         e_cal_backend_sync_remove, e_cal_backend_sync_create_object,
1843         e_cal_backend_sync_modify_object, e_cal_backend_sync_remove_object,
1844         e_cal_backend_sync_discard_alarm, e_cal_backend_sync_receive_objects,
1845         e_cal_backend_sync_send_objects, e_cal_backend_sync_get_default_object,
1846         e_cal_backend_sync_get_object, e_cal_backend_sync_get_object_list,
1847         e_cal_backend_sync_get_timezone, e_cal_backend_sync_add_timezone,
1848         e_cal_backend_sync_set_default_timezone, e_cal_backend_sync_get_changes,
1849         e_cal_backend_sync_get_free_busy): wrap calls to backend methods in
1850         our lock wrapper.
1851
1852         * backends/contacts/e-cal-backend-contacts.c
1853         (e_cal_backend_contacts_init):
1854         * backends/file/e-cal-backend-file.c (e_cal_backend_file_init):
1855         set backend's lock to TRUE.
1856
1857 2005-02-22  Chenthill Palanisamy  <pchenthill@novell.com>
1858
1859         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1860         (e_gw_connection_send_appointment): Return the status as it is.
1861         * backends/groupwise/e-cal-backend-groupwise.c
1862         (receive_object): Removed the check for modified item and ok status.
1863         Instead checked for the status ALREADY_ACCEPTED directly.
1864
1865 2005-02-22  Chenthill Palanisamy  <pchenthill@novell.com>
1866
1867         Fixes 71490
1868         * backends/http/e-cal-backend-http.c
1869         (retrieval_done):If the vcalendar component does not
1870         have the UID property, do not add the component the
1871         component into the cache.
1872
1873 2005-02-21  Harish Krishnaswamy  <kharish@novell.com>
1874
1875         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1876         (get_attach_data_from_server), (set_attachments_to_cal_component),
1877         (e_gw_item_to_cal_component):  Download the attachments from the server
1878         only if they are not already present in the cache.
1879         
1880 2005-02-17  Chenthill Palanisamy  <pchenthill@novell.com>
1881
1882         * backends/groupwise/e-cal-backend-groupwise.c: 
1883         (populate_cache),(cache_init): Moved the get categories
1884         call from populate_cache to cache_init since it has to be
1885         called everytime.
1886         (e_cal_backend_groupwise_finalize),
1887         (e_cal_backend_groupwise_init): Hash table for categories
1888         need not be created/destroyed, connection will handle it.
1889
1890 2005-02-11  Rodrigo Moya <rodrigo@gnome-db.org>
1891
1892         Fixes #71545
1893
1894         * libecal/e-cal-view.c (objects_added_cb, objects_modified_cb,
1895         objects_removed_cb): ref/unref the view before/after emitting the
1896         signal.
1897
1898 2005-02-11  Chenthill Palanisamy  <pchenthill@novell.com>
1899
1900         Fixes #72107
1901         * backends/groupwise/e-cal-backend-groupwise.c:
1902         (e_cal_backend_groupwise_open): insert a g_mutex_unlock.
1903
1904 2005-02-10  Chenthill Palanisamy  <pchenthill@novell.com>
1905
1906         Fixes a crash
1907         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1908         (e_gw_item_to_cal_component): Check whether the creation 
1909         date is present, before converting it to icaltimetype.
1910
1911 2005-02-09  Rodrigo Moya <rodrigo@novell.com>
1912
1913         * libecal/e-cal.c (open_calendar): use e_return_error_if_fail instead
1914         of g_return_val_if_fail.
1915
1916 2005-02-08  Rodrigo Moya <rodrigo@novell.com>
1917
1918         * libecal/e-cal.c (add_instance): set correctly (again) the recurid.
1919         (generate_instances): set correctly instance times for detached
1920         occurrences.
1921
1922 2005-02-08  Rodrigo Moya <rodrigo@novell.com>
1923
1924         * libecal/e-cal.c (add_instance): recurrence-id needs to be a date
1925         only.
1926
1927         * backends/file/e-cal-backend-file.c (add_component): g_strdup the
1928         key for the hash table.
1929         (free_object_data): free the hash table key when freeing objects.
1930         (free_calendar_components, remove_component): no need to free the
1931         object's data here, this is done now automatically by the hash table.
1932         (open_cal, create_cal, reload_cal): create hash table with
1933         g_hash_table_new_full.
1934
1935 2005-02-08  Harish Krishnaswamy  <kharish@novell.com>
1936
1937         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas):
1938         add attachments to the getQuickMessages view so they can listen
1939         for changes in attachments.
1940
1941 2005-02-08  Chenthill Palanisamy  <pchenthill@novell.com>
1942
1943         * backends/groupwise/e-cal-backend-groupwise.c:
1944         (e_cal_backend_groupwise_remove_object): Assign the
1945         value for the *object as NULL and duped value to
1946         *old_object since calobj is freed later.
1947
1948 2005-02-07  JP Rosevear  <jpr@novell.com>
1949
1950         * backends/weather/e-cal-backend-weather.c (getCategory): don't
1951         translate the empty string
1952
1953 2005-02-07  Chenthill Palanisamy  <pchenthill@novell.com>
1954
1955         * backends/groupwise/e-cal-backend-groupwise.c:
1956         (ECalBackendGroupwisePrivate): Added a boolean variable
1957         to check if the mode has been changed.
1958         (get_deltas): put component replaces there is an existing 
1959         component, so removed the remove_component call. Before
1960         getting the vtype of the component, check if comp is NULL.
1961         (cache_init): Insert the timeout call for getQuickMessages
1962         only for events.
1963         (connect_to_server): Add the timeout call for getquickmessages
1964         only if the mode has been changed.
1965         (e_cal_backend_groupwise_set_mode): Set the mode_changed variable.
1966
1967 2005-02-04  Chenthill Palanisamy  <pchenthill@novell.com>
1968
1969         * backends/groupwise/e-cal-backend-groupwise-utils.c:
1970         (e_gw_item_to_cal_component): Added a string for 
1971          reply requested in send options.
1972         * backends/groupwise/e-cal-backend-groupwise.c:
1973         (e_cal_backend_groupwise_open): Removed the error
1974         notify message for Repository offline since it would
1975         be handled from frontend.
1976         Fixes #72117
1977         (e_cal_backend_groupwise_create_object): Check for
1978         the UID, if not present send an error message.
1979
1980 2005-02-04  Rodrigo Moya <rodrigo@novell.com>
1981
1982         * tests/ecal/test-recur.c: removed libgnome usage.
1983         (main): use arguments correctly.
1984
1985 2005-02-04  Rodrigo Moya <rodrigo@novell.com>
1986
1987         * libecal/e-cal.c (generate_instances): don't expand recurrences
1988         for detached instances.
1989
1990         * tests/ecal/test-recur.c:
1991         * tests/ecal/Makefile.am: added recurrence test.
1992
1993 2005-02-04  Ross Burton  <ross@burtonini.com>
1994
1995         * tests/ecal/test-search.c:
1996         Remove useless libgnome usage.
1997
1998 2005-02-03  Chenthill Palanisamy  <pchenthill@novell.com>
1999
2000         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2001         (set_categories_for_gw_item), (add_send_options_data_to_item),
2002         (set_properties_from_cal_component), (get_attach_data_from_server),
2003         (e_gw_item_to_cal_component), (e_gw_connection_send_appointment),
2004         (e_gw_connection_get_freebusy_info),
2005         (e_cal_backend_groupwise_store_settings): Fixed the compiler warnings
2006         and set the datetime value for the replywithin variable due to change
2007         in schemas.
2008
2009 2005-01-03 Vivek Jain <jvivek@novell.com>
2010
2011         * idl/Evolution-DataServer-Calendar.idl: 
2012           added InvalidServerVersion in the callstatus
2013         * libecal/e-cal-types.h: (added INVALID_SEVER_VERSION)
2014         * libecal/e-cal-listener.c (convert_status): added
2015           INVALID_SERVER_VERSION
2016         * backends/groupwise/e-cal-backend-groupwise.c
2017         (connect_to_server): return the different callstatus if server doesn't return the
2018         version
2019
2020 2005-02-02  Ross Burton  <ross@burtonini.com>
2021
2022         * backends/contacts/e-cal-backend-contacts.c:
2023         * backends/file/e-cal-backend-file.c:
2024         * backends/groupwise/e-cal-backend-groupwise.c:
2025         * backends/http/e-cal-backend-http.c:
2026         * backends/weather/e-cal-backend-weather.c:
2027         * backends/weather/e-weather-source-ccf.c:
2028         * libecal/e-cal-component.c:
2029         * libecal/e-cal-recur.c:
2030         * libecal/e-cal-util.c:
2031         * libecal/e-cal.c:
2032         * libedata-cal/e-cal-backend-sexp.c:
2033         * tests/ecal/test-ecal.c:
2034         Use glib/gi18n.h
2035
2036 2005-02-02  Chenthill Palanisamy  <pchenthill@novell.com>
2037
2038         Fixes #72004
2039         * backends/groupwise/e-cal-backend-groupwise.c: (get_deltas),
2040         (e_cal_backend_groupwise_get_free_busy),
2041         (e_cal_backend_groupwise_create_object),
2042         (e_cal_backend_groupwise_modify_object),
2043         (e_cal_backend_groupwise_remove_object), (receive_object): If
2044         Invalid connection error is returned from e-gw-connection, perform
2045         the operation again since re_authenticate method in gw-connection.c
2046         would give us a new valid session.
2047
2048 2005-01-31  Hans Petter Jansson  <hpj@novell.com>
2049
2050         * idl/Evolution-DataServer-Calendar.idl: Change the name of the
2051         multiple inclusion protection define, so it doesn't conflict with
2052         that in Evolution proper.
2053
2054 2005-01-31  Hans Petter Jansson  <hpj@novell.com>
2055
2056         * backends/file/Makefile.am:
2057         * backends/weather/Makefile.am:
2058         * backends/http/Makefile.am:
2059         * backends/groupwise/Makefile.am:
2060         * backends/contacts/Makefile.am:
2061         Build as modules.
2062
2063 2005-01-31  Chenthill Palanisamy  <pchenthill@novell.com>
2064
2065         Fixes #64682
2066         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2067         (e_gw_connection_create_appointment): IF the appointment
2068         is moved from another calendar, send the createItemsRequest 
2069         to the server, so that it does not send mails to the 
2070         recipients.
2071
2072 2005-01-31  Harish Krishnaswamy  <kharish@novell.com>
2073
2074         * backends/groupwise/e-cal-backend-groupwise.c
2075         (cache_init, connect_to_server): GW Task backend now relies
2076         on the Calendar backend to fetch changes. This reduces the
2077         load on the GW server.
2078         
2079 2005-01-29 Sivaiah Nallagatla <snallagatla@novell.com>
2080
2081         * calendar/backends/groupwise/e-cal-backend-groupwise.c 
2082         (from_uri) : Change the default port to 7191 
2083
2084 2005-01-28  Rodrigo Moya <rodrigo@novell.com>
2085
2086         * idl/Evolution-DataServer-Calendar.idl: removed
2087         notifyCategoriesChanged method on CalListener.
2088
2089         * libedata-cal/e-cal-backend.[ch] (e_cal_backend_init,
2090         e_cal_backend_finalize, e_cal_backend_add_client): no need
2091         to deal with categories now.
2092         (free_category_cb, prune_changed_categories, add_category_cb,
2093         notify_categories_changed, idle_notify_categories_changed,
2094         e_cal_backend_ref_categories, e_cal_backend_unref_categories):
2095         removed.
2096
2097         * libedata-cal/e-data-cal.[ch]
2098         (e_data_cal_notify_categories_changed): removed.
2099
2100         * backends/file/e-cal-backend-file.c (add_component,
2101         remove_recurrence_cb, remove_component, remove_instance,
2102         remove_object_instance_cb): no need to deal with categories now.
2103
2104         * libecal/e-cal-listener.[ch]: removed "categories_changed" signal.
2105         (impl_notifyCategoriesChanged): removed.
2106         (e_cal_listener_class_init): don't set removed method. Don't create
2107         "categories_changed" signal.
2108
2109         * libecal/e-cal.[ch]: removed "categories_changed" signal.
2110         (categories_changed_idle_cb, categories_changed): removed.
2111         (e_cal_init): removed connection to listener's "categories_changed"
2112         signal.
2113         (e_cal_class_init): don't create "categories_changed" signal.
2114
2115 2005-01-27  Chenthill Palanisamy  <pchenthill@novell.com>
2116
2117         partially Fixes#68541
2118         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2119         (start_freebusy_session), (close_freebusy_session),
2120         (e_gw_connection_get_freebusy_info): Return the error
2121         message as NO_RESPONSE if the server is not responding.
2122         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas):
2123         Handled the NO_RESPONSE error status.
2124
2125 2005-01-27  Rodrigo Moya <rodrigo@novell.com>
2126
2127         * backends/file/e-cal-backend-file.c: added a GMutex for the idle saving
2128         callback.
2129         (save_file_when_idle, save): lock/unlock the mutex while setting values.
2130         (e_cal_backend_file_finalize): unref the mutex.
2131         (e_cal_backend_file_init): create the mutex.
2132
2133 2005-01-26  Rodrigo Moya <rodrigo@novell.com>
2134
2135         * backends/file/e-cal-backend-file.c (add_component): save the file
2136         when we add the component to the toplevel.
2137         (remove_component): make sure we always save the file.
2138
2139 2005-01-26  JP Rosevear  <jpr@novell.com>
2140
2141         * libecal/e-cal.c (e_cal_send_objects): fix leak in the error case
2142
2143 2005-01-25  Rodrigo Moya <rodrigo@novell.com>
2144
2145         * backends/file/e-cal-backend-file.c (save_file_when_idle):
2146         uninstall idle handler when successfully saving the file.
2147
2148 2005-01-24  Harish Krishnaswamy  <kharish@novell.com>
2149
2150         * backends/groupwise/e-cal-backend-groupwise-utils.c
2151         (e_gw_connection_send_appointment) : The server now mandates
2152         "default" to be included for views in get_item calls.
2153
2154 2005-01-20  Chenthill Palanisamy  <pchenthill@novell.com>
2155
2156         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2157         (set_properties_from_cal_component): If the default zone is
2158         not set use utc, instead of returning NULL for the item.
2159
2160 2005-01-19  Rodrigo Moya <rodrigo@novell.com>
2161
2162         * backends/file/e-cal-backend-file.c (cancel_received_object): deal
2163         with instances.
2164
2165 2005-01-19  Rodrigo Moya <rodrigo@novell.com>
2166
2167         * backends/file/e-cal-backend-file.c
2168         (e_cal_backend_file_receive_objects): set the correct method on the
2169         VCALENDAR we create or it will fail in the code below. Deal correctly
2170         with detached recurrences.
2171         (remove_instance): unref the categories before removing the recurrences
2172         from the hash table.
2173
2174 2005-01-19  Harish Krishnaswamy  <kharish@novell.com>
2175
2176         * backends/groupwise/e-cal-backend-groupwise.c
2177         (e_cal_backend_groupwise_create_object) : Add 'default' to
2178         the view argument, as this is now necessary for the server
2179         to display the default values.
2180
2181 2005-01-18  Rodrigo Moya <rodrigo@novell.com>
2182
2183         Fixes #68599
2184
2185         * libedata-cal/e-cal-backend-cache.c
2186         (e_cal_backend_cache_get_component): make sure we always return a
2187         valid ECalComponent.
2188         (e_cal_backend_cache_get_components): ditto.
2189
2190 2005-01-17  Rodrigo Moya <rodrigo@novell.com>
2191
2192         * backends/file/e-cal-backend-file.c (add_component,
2193         remove_recurrence_cb, remove_component, remove_instance,
2194         remove_object_instance_cb):
2195         removed code related to the categories_changed signal.
2196
2197 2005-01-17  Rodrigo Moya <rodrigo@novell.com>
2198
2199         * backends/file/e-cal-backend-file.c (save_file_when_idle): don't
2200         save the file if it's not dirty!
2201
2202 2005-01-17  Rodrigo Moya <rodrigo@novell.com>
2203
2204         * backends/file/e-cal-backend-file.c: use guint for idle id.
2205
2206 2005-01-17  Rodrigo Moya <rodrigo@novell.com>
2207
2208         Fixes #57567
2209
2210         * backends/file/e-cal-backend-file.c (save_file_when_idle): new
2211         function, to save the file to disk at application's idle times.
2212         (save): changed to just set the idle callback the first time and then,
2213         just mark the file as dirty.
2214         (e_cal_backend_file_finalize): remove the idle callback.
2215         (e_cal_backend_file_dispose): save the file if dirty.
2216         (e_cal_backend_file_init): initialize new members.
2217
2218 2005-01-17  Rodrigo Moya <rodrigo@novell.com>
2219
2220         * libecal/e-cal-view.c (e_cal_view_set_property): make sure we clean
2221         up the old view and listener before setting the new ones.
2222
2223 2005-01-12  Rodrigo Moya <rodrigo@novell.com>
2224
2225         Fixes #67974
2226
2227         * backends/http/e-cal-backend-http.c (begin_retrieval_cb): set the
2228         HTTP proxy on the SoupSession if configuration is set to use it.
2229
2230 2005-01-12  Not Zed  <NotZed@Ximian.com>
2231
2232         * backends/http/e-cal-backend-http.c (retrieval_done): warning fix
2233         cast.
2234
2235 2005-01-12  David Trowbridge  <trowbrds@cs.colorado.edu>
2236
2237         * backends/weather/e-cal-backend-weather.c: Use a single
2238         metric/imperial setting rather than separate temperature and
2239         snowfall settings
2240
2241 2005-01-10  Harish Krishnaswamy  <kharish@novell.com>
2242
2243         * backends/groupwise/e-cal-backend-groupwise.c:
2244         (fetch_attachments), (receive_object): Function to fetch
2245         the attachments data into the file calendar store from the
2246         camel cache.
2247         
2248 2005-01-10  Harish Krishnaswamy  <kharish@novell.com>
2249
2250         * backends/file/e-cal-backend-file.c: (fetch_attachments),
2251         (e_cal_backend_file_receive_objects): Function to fetch
2252         the attachments data into the file calendar store from the
2253         camel cache.
2254
2255 2005-01-10 Chenthill Palanisamy <pchenthill@novell.com>
2256
2257         * backends/groupwise/e-cal-backends-groupwise-utils.h:
2258         Missed to commit this file before.
2259
2260 2005-01-10  David Trowbridge <trowbrds@cs.colorado.edu>
2261
2262         * backends/weather/e-cal-backend-weather.c: add the city name to the
2263         summary field
2264
2265 2005-01-10  Harish Krishnaswamy  <kharish@novell.com>
2266
2267
2268         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2269         (e_cal_backend_groupwise_set_attachments_from_comp),
2270         (set_properties_from_cal_component), (get_attach_data_from_server),
2271         (set_attachments_to_cal_component), (e_gw_item_to_cal_component):
2272         Attachment support for Groupwise calendar and task items.
2273         (e_cal_backend_groupwise_store_settings): Remove unused variable.
2274         * backends/groupwise/e-cal-backend-groupwise.[ch]: (populate_cache),
2275         (e_cal_backend_groupwise_finalize), (e_cal_backend_groupwise_open),
2276         (e_cal_backend_groupwise_notify_error_code),
2277         (e_cal_backend_groupwise_get_local_attachments_store): 
2278         set the path to the attachment store in the filesystem.
2279         * libecal/e-cal.[ch] (e_cal_init), (e_cal_finalize),
2280         (set_local_attachment_store), (e_cal_new), 
2281         (e_cal_get_local_attachment_store): Add a new member to ECal that
2282         stores the local attachment store for various backends.
2283         
2284
2285 2005-01-08  JP Rosevear  <jpr@novell.com>
2286
2287         * backends/weather/e-cal-backend-weather.c (create_weather): make
2288         sure we don't free a static string
2289
2290 2005-01-08  Harish Krishnaswamy  <kharish@novell.com>
2291
2292         * backends/contacts/e-cal-backend-contacts.c:
2293         (e_cal_backend_contacts_finalize): destroy the addressbooks
2294         hashtable. Partially fixes #68533.
2295         * libecal/e-cal-component.[ch] (free_icalcomponent),
2296         (scan_attachment), (scan_property),
2297         (get_attachment_list), (set_attachment_list),
2298         (e_cal_component_get_attachment_list),
2299         (e_cal_component_set_attachment_list),
2300         (e_cal_component_has_attachments),
2301         (e_cal_component_get_num_attachments): add support for handling
2302         attach properties in e-cal-components.
2303         * libedata-cal/e-cal-backend-sexp.c 
2304         (e_cal_backend_sexp_match_comp):remove unref on null comp.
2305         
2306 2005-01-06  David Trowbridge <trowbrds@cs.colorado.edu>
2307
2308         * backends/weather/*: Import weather calendar backend
2309
2310 2005-01-06 Chenthill Palanisamy <pchenthill@novell.com>
2311         
2312         * backends/groupwise/e-cal-backends-groupwise-utils.[ch]:
2313         Added a new function to set the send options in e sources.
2314         (add_send_options_data_to_item): Set the set_sendoptions variable
2315         if there are some X-Properties for send options.
2316         * backends/groupwise/e-cal-backend-groupwise.c:
2317         (cache_init): get the send options settings.    
2318
2319 2004-12-24  Rodrigo Moya <rodrigo@novell.com>
2320
2321         * backends/file/e-cal-backend-file.c (remove_component): made it work
2322         for objects with only detached instances.
2323         (remove_object_instance_cb): fixed warning.
2324         (e_cal_backend_file_modify_object, e_cal_backend_file_remove_object,
2325         e_cal_backend_file_receive_objects): adapted to changes in
2326         remove_component.
2327         (e_cal_backend_file_remove_object): call remove_component for the
2328         CALOBJ_MOD_ALL case, since remove_component takes care of everything
2329         now.
2330         (cancel_received_object): look for the object in the comp_uid_hash,
2331         since we need to pass the ECalBackendFileObject struct to
2332         remove_component.
2333
2334 2004-12-23  Rodrigo Moya <rodrigo@novell.com>
2335
2336         * libedata-cal/e-data-cal-view.c (impl_EDataCalView_start): removed
2337         warnings.
2338
2339         * backends/file/e-cal-backend-file.c: changed recurrence hash table
2340         to use g_hash_table_new and automatic disposal of key/value pairs.
2341         (free_recurrence): removed, not needed now.
2342         (free_object): just destroy de recurrences hash table.
2343         (add_component): create recurrences hash table with _new_full.
2344         (remove_recurrence_cb): changed to a GHRFunc.
2345         (remove_component): use g_hash_table_foreach_remove to clear the
2346         recurrences hash table.
2347         (remove_object_instance_cb, e_cal_backend_file_modify_object,
2348         remove_instance): no need to free hash table data here.
2349
2350 2004-12-22 Chenthill Palanisamy <pchenthill@novell.com>
2351
2352         Part of merge from offline branch 
2353         * backends/groupwise/e-cal-backend-groupwise.c :
2354         (e_cal_backend_groupwise_open): Check for the property 
2355         offline_sync in source and display the contents of the
2356         calendar.
2357
2358 2004-12-22 Sivaiah Nallagatla <snallagatla@novell.com>
2359
2360         Part of merge from offline branch 
2361         
2362         * idl/Evolution-DataServer-Calendar.idl : added 
2363         new error code OfflineUnavailable 
2364
2365 2004-12-22 Sivaiah Nallagatla <snallagatla@novell.com>
2366
2367         Part of merge from offline branch 
2368         
2369         * idl/Evolution-DataServer-Calendar.idl : added a new method 
2370         notifyAuthRequired to cal listener interface 
2371
2372         * libedata-cal/e-cal-backend.[ch]
2373         (e_cal_backend_notify_auth_required):
2374         
2375         * libedatacal/e-data-cal.[ch] 
2376         (e_data_cal_notify_auth_required) : methods for backend 
2377         to notify clients about auth when mode is changed to online
2378         
2379         * libecal/e-cal-listener.[ch] : implemented notifyAuthRequired
2380         interface and  add AUTH_REQUIRED signal 
2381         
2382         * libecal/e-cal.c : connect to AUTH_REQUIRED signal of cal listener
2383         and call e_cal_open in the singnal call back 
2384         (open_calendar) : don't call e_password stuff in offline mode
2385
2386         * libecal/e-cal-marshal.list : added NONE:NONE to list  
2387
2388         * backends/groupwise/e-cal-backend-groupwise.c 
2389         (e_cal_backend_groupwise_set_mode) : send auth required notification
2390         when mode changes to online
2391  
2392         
2393 2004-12-22 Sivaiah Nallagatla   <snallagatla@novell.com>
2394
2395         Part of merge from offline branch 
2396         
2397         * backends/http/e-cal-backend-http.c 
2398         (e_cal_backend_http_set_mode): When mode is switched 
2399         from offline to online start time out handler to periodically
2400         download the conetnets. Call e_cal_backend_notify only 
2401         when backend is loaded 
2402         (e_cal_backend_http_open) : cast the backend object using E_CAL_BACKEND
2403         to avoid waring while passing it to e_cal_backend_notify_error 
2404         
2405 2004-12-22 Chenthill Palanisamy <pchenthill@novell.com>
2406
2407         Part of merge from offline branch 
2408         
2409         * backends/http/e-cal-backend-http.c
2410         (e_cal_backend_http_open): Do not connect to the url in 
2411         offline, read only the contents from the cache.
2412         (e_cal_backend_http_set_mode): If the calendar moves from
2413         online to offline remove the timeout function.
2414         
2415 2004-12-22 Chenthill Palanisamy <pchenthill@novell.com>
2416
2417         Part of merge from offline branch 
2418         * backends/groupwise/e-cal-backend-groupwise.c
2419         (in_offline): If calendar is in offline remove the connection
2420         and the remove the timeout function if they are active, Mark the 
2421         calendar to be read only.
2422         (connect_to_server): This will be called through open method when 
2423         the calendar changes from offline to online. In that case invoke the 
2424         timeout functions.
2425         (e_cal_backend_groupwise_finalize): Assign zero to the timeout id.
2426         (e_cal_backend_groupwise_open): If the calendar is opened in offline 
2427         mode, show the contents from the cache and mark the calendar as offline.
2428         (e_cal_backend_groupwise_set_mode): Removed the connect_to_server function
2429         call, it should be called through the open method since password is needed to 
2430         create a new connection.
2431         (e_cal_backend_groupwise_get_freebusy):
2432         (e_cal_backend_groupwise_create_object):
2433         (e_cal_backend_groupwise_modify_object):
2434         (e_cal_backend_groupwise_remove_object):
2435         (e_cal_backend_groupwise_receive_objects):
2436         (e_cal_backend_groupwise_send_objects): If the Calendar is in Offline mode
2437         remove the timeout function and the connection and return an error message.
2438         (e_cal_backend_groupwise_init): Initialize the connection to NULL.
2439         (get_deltas): IF the calendar is in offline mode, return False.
2440         
2441 2004-12-22  Sivaiah Nallagatla  <snallagatla@novell.com>
2442
2443         Part of merge from offline branch 
2444         
2445         * libedata-cal/e-data-cal-factory.[ch] : new fucntions
2446         (e_data_cal_factory_set_backend_mode) : set online/offline mode on 
2447         all the backends it has created. 
2448         (set_backend_online_status) : function to set online/offline 
2449         mode on a backend
2450         (impl_CalFactory_getCal) : modified this function to 
2451         set online/offline mode on the backend after creatng it
2452
2453 2004-12-22  Rodrigo Moya <rodrigo@novell.com>
2454
2455         * backends/http/e-cal-backend-http.c (e_cal_backend_http_get_timezone):
2456         search timezones in the cache also.
2457         (e_cal_backend_http_add_timezone): add the timezones to the cache.
2458
2459         * libecal/e-cal-util.c (e_cal_util_construct_instance): removed
2460         FIXME comment.
2461
2462 2004-12-21  Rodrigo Moya <rodrigo@novell.com>
2463
2464         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove_object):
2465         deal correctly with objects only having detached instances and no master
2466         object.
2467
2468 2004-12-20  Anders Carlsson  <andersca@gnome.org>
2469
2470         * backends/groupwise/e-cal-backend-groupwise.c:
2471         (e_cal_backend_groupwise_modify_object), (send_object):
2472         * backends/http/e-cal-backend-http.c:
2473         (e_cal_backend_http_modify_object):
2474         * libedata-cal/e-cal-backend-sync.c:
2475         (e_cal_backend_sync_modify_object), (_e_cal_backend_modify_object):
2476         * libedata-cal/e-cal-backend-sync.h:
2477         Add support for passing a modified object from sync backends.
2478         
2479 2004-12-18  JP Rosevear  <jpr@novell.com>
2480
2481         Fixes #70127
2482         
2483         * backends/http/e-cal-backend-http.c (begin_retrieval_cb): add
2484         user agent header
2485
2486 2004-12-15  Rodrigo Moya <rodrigo@novell.com>
2487
2488         Merge from recurrences-work-branch
2489
2490         * libecal/e-cal.c (open_calendar): added missing calls to
2491         e_calendar_remove_op/e_calendar_free_op.
2492         (add_instance): enable code to set the recurrence ID on each instance.
2493
2494         * libedata-cal/e-data-cal.[ch] (e_data_cal_notify_object_removed): added
2495         new argument to have backends send both the object before and after the
2496         modification.
2497
2498         * libedata-cal/e-cal-backend.[ch] (e_cal_backend_modify_object):
2499         pass correct number of arguments to e_cal_backend_notify_object_removed.
2500         (match_query_and_notify, e_cal_backend_notify_object_modified): separated
2501         the notification logic from e_cal_backend_notify_object_modified.
2502         (e_cal_backend_notify_object_removed): added new argument to have
2503         backends send both the object before and after the modification.
2504
2505         * libedata-cal/e-cal-backend-sync.[ch] (e_cal_backend_sync_remove_object):
2506         added a new argument to send the object as it was before being removed.
2507         Also, change meaning of 'object' argument to contain the object as it
2508         is after being modified, or NULL if it was removed.
2509         (_e_cal_backend_remove_object): adapted to change in method arguments
2510         and pass correct number of arguments to e_data_cal_notify_object_removed.
2511
2512         * backends/contacts/e-cal-backend-contacts.c (contact_record_free):
2513         pass correct number of arguments to e_cal_backend_notify_object_removed.
2514         
2515         * backends/file/e-cal-backend-file.c (notify_removals_cb,
2516         e_cal_backend_file_receive_objects):
2517         pass correct number of arguments to e_cal_backend_notify_object_removed.
2518         (remove_object_instance_cb, e_cal_backend_file_modify_object): adapted to
2519         support detached recurrences and THISANDPRIOR/THISANDFUTURE.
2520         (e_cal_backend_file_remove_object): adapted to method changes.
2521
2522         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas, receive_object):
2523         pass correct number of arguments to e_cal_backend_notify_object_removed.
2524         (e_cal_backend_groupwise_remove_object): adapted to method changes.
2525
2526         * backends/http/e-cal-backend-http.c (notify_and_remove_from_cache):
2527         pass correct number of arguments to e_cal_backend_notify_object_removed.
2528         (e_cal_backend_http_remove_object): adapted to method changes.
2529
2530 2004-12-15  Chenthill Palanisamy <pchenthill@novell.com>
2531
2532         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2533         (add_send_options_data_to_item),
2534         (set_properties_from_cal_component):Added a new local function
2535         for reading the properties  for send options.
2536         * backends/groupwise/e-cal-backend-groupwise.c:
2537         (e_cal_backend_groupwise_get_static_capabilities): Checked for new 
2538         static capabilities.
2539         * libecal/e-cal-util.h: Defined two new static capabilities required for 
2540         send options.
2541
2542 2004-12-13  Harish Krishnaswamy <kharish@novell.com>
2543
2544         * libedata-cal/e-cal-backend.c 
2545         (e_cal_backend_notify_object_removed, 
2546         e_cal_backend_notify_object_modified,
2547         e_cal_backend_notify_object_added ):
2548         Remove the unrefs on queries as the get_queries
2549         does not ref anymore while returning.
2550         
2551 2004-12-09  Rodrigo Moya <rodrigo@novell.com>
2552
2553         Fixes #70267
2554
2555         * backends/groupwise/e-cal-backend-groupwise.c (get_deltas):
2556         * backends/http/e-cal-backend-groupwise.c (retrieval_done): freeze
2557         the cache when doing mass updates to do only one write to disk.
2558
2559 2004-12-09  Harish Krishnamwamy <kharish@novell.com>
2560         Fixes for various leaks causing memory build-ups in eds.
2561         
2562         * libecal/e-cal-listener.c (impl_notifyFreeBusy):
2563         l->data should be unref'd - not free'd.
2564         * libedata-cal/e-cal-backend.c (get_queries):
2565         Do not ref the queries while returning them. This is unnecessary.
2566         * libedata-cal/e-cal-backend-sexp.c (e_cal_backend_sexp_match_comp) :
2567         unref the comp and backend while returning.
2568         
2569         
2570 2004-12-06  Harish Krishnaswamy <kharish@novell.com> 
2571         * backends/groupwise/e-cal-backend-groupwise-utils.c 
2572         (e_gw_connection_send_appointment) : Add correct view arguments 
2573         specific to appointment. 'folders' is not used by appointments.
2574         
2575 2004-12-05  Sivaiah Nallagatla <snallagatla@novell.com>
2576
2577         * backends/groupwise/e-cal-backend-groupwise-utils.c
2578         (e_gw_connection_send_appointment) : Pass view argument while calling
2579         e_gw_connection_get_item.
2580
2581  
2582 2004-12-02  Chenthill Palanisamy <pchenthill@novell.com>
2583
2584         * backends/groupwise/e-cal-backend-groupwise.c:
2585         (receive_object): Freed the string variables and unref the 
2586         components.
2587         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2588         (e_gw_connection_get_freebusy_info): Need not use strdup here.
2589         
2590
2591 2004-11-18 Sivaiah Nallagatla <snallagatla@novell.com>
2592
2593         * backends/groupwise/e-cal-backend-groupwise.c 
2594         (populate_cache) (get_deltas) : added "default" to 
2595         the view wherever we want to get complete item along 
2596         with iCalId
2597         part of fix for #69624
2598          
2599 2004-10-29  Sivaiah Nallagatla <snallagatla@novell.com>
2600
2601         * backends/groupwise/e-ca-backend-groupwise.c 
2602         (cache_init) : remove the set_marker call from the begining of the 
2603         functions. accidently placed in the last commit 
2604
2605 2004-10-29  Sivaiah Nallagatla <snallagatla@novell.com>
2606
2607         * backends/groupwise/e-cal-backends-groupwise.c
2608         (cache_init) : Read the getQm poll interval
2609         from GETQM_TIME_INTERVAL. If not availbale
2610         use default value.
2611
2612 2004-10-28  Harish Krishnaswamy <kharish@novell.com>
2613         * backends/groupwise/e-cal-backend-groupwise.c:
2614         Set the CACHE_REFRESH_INTERVAL to 10 mins.
2615         
2616 2004-10-28  Rodrigo Moya <rodrigo@novell.com>
2617
2618         * libecal/e-cal.[ch] (e_cal_get_objects_for_uid): new function
2619         to retrieve objects and detached recurrences for that object.
2620         (e_cal_get_object): deal with the backend returning a VCALENDAR
2621         object. In that case, just get the first component of the same
2622         type we are using.
2623         (generate_instances): when we have an UID, use the new function
2624         e_cal_get_objects_for_uid, avoiding countless calls to
2625         e_cal_get_object_list.
2626
2627         * backends/file/e-cal-backend-file.c (e_cal_backend_file_get_object):
2628         if we have detached instances, return a VCALENDAR with the master
2629         object and any detached instance.
2630
2631 2004-10-15  Chenthill Palanisamy <pchenthill@novell.com>
2632         
2633         Fixes #67031
2634         * backends/groupwise/e-cal-backends-groupwise-utils.c
2635         (e_gw_item_to_cal_component): Set the completed date. For
2636         posted tasks set it as the current time.
2637         * backends/groupwise/e-cal-backends-groupwise.c
2638         (e_cal_backend_groupwise_modify_object): Update the item in
2639         the cache after completing the task.
2640
2641 2004-10-14  Rodney Dawes  <dobey@novell.com>
2642
2643         * backends/*/Makefile.am: Add -avoid-version to LDFLAGS for all
2644         of the backends
2645
2646 2004-10-14  Harish Krishnaswamy  <kharish@novell.com>
2647
2648         * backends/groupwise/e-cal-backend-groupwise.c:
2649         (get_deltas) : removed stray debug code that should not have
2650         been there in the first place.
2651
2652 2004-10-12  Harish Krishnaswamy  <kharish@novell.com>
2653         
2654         Fixes #64673 and added some performance boosters.
2655         
2656         * backends/groupwise/e-cal-backend-groupwise-utils.c:
2657         (e_gw_connection_get_freebusy_info): Resend free/busy requests 
2658         to server if there are outstanding users whose information is still
2659         pending from the server. Keep trying for 2 minutes (average time
2660         for obtaining the f/b information for users outside the POA).
2661         * backends/groupwise/e-cal-backend-groupwise.c: 
2662         (populate_cache):  Obtain the calendar items from server Latest First.
2663         Update evolution as soon as the items are processed, without waiting
2664         for the entire cache to be populated.
2665         (get_deltas): remove compiler warning.
2666         (cache_init): Use a marker to test the status of cache and obtain all
2667         items only for initial population.  All subsequent sessions would only 
2668         fetch the deltas from the server since the last cache modification time.
2669         (connect_to_server): Populating the cache moved to a separate thread
2670         that does not block the open calls to backend anymore.
2671         (e_cal_backend_groupwise_create_object): Fixed a leak.
2672         * libedata-cal/e-cal-backend-cache.[ch]:
2673         (e_cal_backend_cache_get_keys): Removed unused variable.
2674         (e_cal_backend_cache_set_marker),
2675         (e_cal_backend_cache_get_marker): Marker accessors to label the cache as
2676         populated or not. This helps in determining if all the items are to be 
2677         loaded from the server or if we should just fetch the deltas. 
2678
2679 2004-10-07  JP Rosevear  <jpr@novell.com>
2680   
2681         * libecal/e-cal.c (e_cal_new_system_tasks): load the correct type
2682         of events
2683         
2684 2004-10-06  JP Rosevear  <jpr@novell.com>
2685  
2686         Fixes #67513
2687         
2688         * libecal/e-cal.c (cal_objects_sent_cb): deep copy the user list
2689         data
2690         
2691 2004-10-04  Chenthill Palanisamy <pchenthill@novell.com>
2692
2693         Fixes #66484
2694          idl/Evolution-DataServer-Calendar.idl (CallStatus):
2695         Added an error message "Unknown User".
2696         * libecal/e-cal-types.h (ECalendarStatus):
2697         Added a enum variable for the same error message
2698         * libecal/e-cal-listener.c (convert_status)
2699         * libecal/e-cal-view-listener.c (convert_status):
2700         Mapped the new error message.
2701         * libecal/e-cal.c (e_cal_get_error_message):
2702         Return the proper string for the new error message.
2703
2704 2004-10-01  Chenthill Palanisamy <pchenthill@novell.com>
2705
2706         Fixes #62868
2707         * e-cal-backend-groupwise-utils.c (e_gw_connection_send_appointment):
2708         Send the Connection Status as Ok even if we get an error message from
2709         the server for accepting the appointment more than once since it does
2710         affect the functionality.
2711         * e-cal-backend-groupwise.c (receive_objects):
2712         Return the status immediately if the Item has not been modified. Now
2713         the Permission Denied error message need not be sent.
2714
2715 2004-09-30  Chris Toshok  <toshok@ximian.com>
2716
2717         * libecal/e-cal.c (get_factories): don't look for factories based
2718         on the supported_protocol property, since we can't use those
2719         anymore with dynamically loaded backends.
2720
2721         * libedata-cal/e-data-cal-factory.c (get_backend_factory): rename
2722         get_backend_type to this, and return an ECalBackendFactory*
2723         instead of a GType.
2724         (impl_CalFactory_getCal): change this code to use
2725         ECalBackendFactory.
2726         (e_data_cal_factory_register_backend): rename from
2727         e_data_cal_factory_register_method and remove all the args, just
2728         passing an ECalBackendFactory.
2729         (e_data_cal_factory_register_backends): register all extensions
2730         that subclass from E_TYPE_CAL_BACKEND_FACTORY.
2731
2732         * libedata-cal/e-data-cal-factor.h: change prototypes and function
2733         names.
2734         
2735         * libedata-cal/e-data-cal.[ch] (e_data_cal_new): remove the @uri
2736         arg, as it's unnecessary.
2737
2738         * libedata-cal/e-cal-backend-factory.[ch]: superclass the backend
2739         factories must subclass from.
2740
2741         * libedata-cal/Makefile.am (libedata_cal_la_SOURCES): add
2742         e-cal-backend-factory.c
2743         (libedata_calinclude_HEADERS): add e-cal-backend-factory.h
2744
2745         * backends/contacts/Makefile.am (extension_LTLIBRARIES): change
2746         from noinst_LTLIBRARIES.
2747         (libecalbackendcontacts_la_SOURCES): add
2748         e-cal-backend-contacts-factory.[ch].
2749
2750         * backends/contacts/e-cal-backend-contacts-factory.[ch]:
2751         ECalBackendFactory for the contacts backend.
2752
2753         * backends/file/Makefile.am (extension_LTLIBRARIES): change
2754         from noinst_LTLIBRARIES.
2755         (libecalbackendfile_la_SOURCES): add
2756         e-cal-backend-file-factory.[ch].
2757
2758         * backends/file/e-cal-backend-file-factory.[ch]:
2759         ECalBackendFactory for the file backend.
2760
2761         * backends/groupwise/Makefile.am (extension_LTLIBRARIES): change
2762         from noinst_LTLIBRARIES.
2763         (libecalbackendgroupwise_la_SOURCES): add
2764         e-cal-backend-groupwise-factory.[ch].
2765
2766         * backends/groupwise/e-cal-backend-groupwise-factory.[ch]:
2767         ECalBackendFactory for the groupwise backend.
2768
2769         * backends/http/Makefile.am (extension_LTLIBRARIES): change
2770         from noinst_LTLIBRARIES.
2771         (libecalbackendhttp_la_SOURCES): add
2772         e-cal-backend-http-factory.[ch].
2773
2774         * backends/http/e-cal-backend-http-factory.[ch]:
2775         ECalBackendFactory for the http backend.
2776         
2777 2004-09-28  Rodrigo Moya <rodrigo@novell.com>
2778
2779         Fixes #66230
2780
2781         * backends/http/e-cal-backend-http.c (retrieval_done): do a more clever
2782         update of the cache, so that we correctly notify listeners of updates,
2783         additions and removals.
2784
2785 2004-09-24  JP Rosevear  <jpr@novell.com>
2786
2787         Fixes #66383, From David Malcolm <dmalcolm@redhat.com>
2788         
2789         * libecal/e-cal.c (e_cal_get_alarms_in_range): return non void
2790         values
2791
2792         * libecal/e-cal-component.c: kill warnings about struct
2793         definitions
2794         
2795 2004-09-24  JP Rosevear  <jpr@novell.com>
2796         
2797         Fixes #64955, Vincent Noel <vnoel@cox.net>
2798         
2799         * libecal/e-cal.c (e_cal_get_alarms_in_range): fix c99-ism
2800         
2801 2004-09-23  Rodrigo Moya <rodrigo@novell.com>
2802
2803         Fixes #59904
2804
2805         * libecal/e-cal-component.[ch] (e_cal_component_new_from_string): new
2806         function to avoid repeating the same code over and over.
2807
2808         * libedata-cal/e-data-cal-view.c: changed to keep a list of listeners,
2809         not only one.
2810         (listener_died_cb): remove the listener from the list of listeners.
2811         (impl_EDataCalView_start): see if the query has already been started,
2812         and if so, just notify correctly the listeners we need to notify.
2813         (e_data_cal_view_init): create hash table for storing the objects we
2814         have matching the live query.
2815         (e_data_cal_view_set_property): add correctly the listeners to the list.
2816         (e_data_cal_view_get_property): return always the first listener.
2817         (e_data_cal_view_finalize): free all listeners and cached objects.
2818         (add_object_to_cache, remove_object_from_cache):
2819         new functions to manage the matched objects cache.
2820         (e_data_cal_view_notify_objects_added,
2821         e_data_cal_view_notify_objects_modified): add objects to our private
2822         cache, and notify all listeners, now that we might have more than one.
2823         (e_data_cal_view_notify_objects_removed,
2824         e_data_cal_view_notify_progress, e_data_cal_view_notify_done): notify
2825         all listeners.
2826         (e_data_cal_view_add_listener, e_data_cal_view_get_matched_objects,
2827         e_data_cal_view_is_started, e_data_cal_view_is_done,
2828         e_data_cal_view_get_done_status): new functions.
2829
2830         * libedata-cal/e-data-cal.c: keep a cache of all queries.
2831         (impl_Cal_getQuery): first look in the cache of queries. And when
2832         creating a new query, add it to the cache.
2833         (impl_Cal_getObjectList): use the query cache also.
2834         (e_data_cal_finalize): destroy the live queries hash table.
2835         (e_data_cal_init): create live queries hash table.
2836
2837 2004-09-23  JP Rosevear  <jpr@novell.com>
2838
2839         * libecal/Makefile.am: build a versioned lib, don't hard
2840         code the pkgconfig version
2841
2842         * libedata-cal/Makefile.am: ditto
2843         
2844         * backends/file/Makefile.am: link against the correct library version
2845         
2846         * backends/http/Makefile.am: ditto
2847
2848         * backends/groupwise/Makefile.am: ditto
2849
2850         * backends/contacts/Makefile.am: ditto
2851
2852         * tests/ecal/Makefile.am: ditto
2853         
2854 2004-09-22  Harish Krishnaswamy  <kharish@novell.com>
2855
2856         * backends/groupwise/e-cal-backend-groupwise-utils.[ch]:
2857         (e_gw_connection_send_appointment): Allow callers to get the 
2858         sent item from the server to ensure the iCalId of the component
2859         is in sync with the server - even if it had been obtained from
2860         a different client via itip.
2861         (e_gw_item_to_cal_component) : additional check to ensure icalid
2862         is not null in the item, so we would not crash against server instances
2863         that may not send this properly.
2864
2865         Fixes #61865    
2866         * backends/groupwise/e-cal-backend-groupwise.c: 
2867         (get_deltas) : Replace getDeltasRequest by getQuickMessages calls
2868         and compute deltas like adds, modify and deletes.
2869         (connect_to_server): Do not recreate cache everytime and use the 
2870         getQuickMessages to pull in the changes from server. The existing
2871         code was a work-around till this fix was in place.
2872
2873         (e_cal_backend_groupwise_create_object), (receive_object):
2874         Use the modified  e_gw_connection_send_appointment calls and
2875         update the cache and cal clients appropriately.
2876
2877         * libedata-cal/e-cal-backend-cache.[ch]:
2878         (e_cal_backend_cache_get_keys): Adding a function that allows to 
2879         retrieve a list of the keys of all components from the cache.
2880         
2881
2882 2004-09-08  Chenthill Palanisamy <pchenthill@novell.com>
2883
2884         * backends/groupwise/e-cal-backend-groupwise-utils.c
2885         (set_properties_from_cal_component), (e_gw_item_to_cal_component),
2886         (e_gw_item_set_changes): Added the support for allday events.
2887
2888 2004-09-08  Chenthill Palanisamy <pchenthill@novell.com>
2889         
2890         Fixes #65167
2891         * backends/groupwise/e-cal-backend-groupwise.c 
2892         (connect_to_server): Reload the default zone into
2893         the cache after clearing it.
2894
2895         * backends/groupwise/e-cal-backend-groupwise-utils.c
2896         (set_categories_for_gw_item), e_gw_item_to_cal_component),
2897         (set_properties_from_cal_component): replaced the assert
2898         statements with If conditions.
2899
2900 2004-09-07  Chenthill Palanisamy <pchenthill@novell.com>
2901
2902         Fixes #64685
2903         * backends/groupwise/e-cal-backends-groupwise.c
2904         (receive_object): Send the error message as 
2905         Permission Denied when the attendee tries to accept the 
2906         appointment more than once since we get the error message as
2907         bad parameter from the server.
2908
2909 2004-09-07  Chenthill Palanisamy <pchenthill@novell.com>
2910
2911         Fixes 63513
2912         * backends/groupwise/e-cal-backends-groupwise-utils.c
2913         (e_gw_connection_send_appointment): Do a case insensitive
2914         comparison between the email ids. This is a partial fix.
2915
2916 2004-09-07  Chenthill Palanisamy <pchenthill@novell.com>
2917
2918         Fixes #64398
2919         * backends/groupwise/e-cal-backend-groupwise.c
2920         (ECalBackendGroupwisePrivate): added an variable to store 
2921         the timeout ids.
2922         (e_cal_backend_groupwise_init): intialize the variable.
2923         (e_cal_backend_groupwise_finalize): remove the timeout_add
2924         function so that it will not called when backend dies.
2925         (get_deltas): It should not crash in any case if handle is
2926         NULL.
2927
2928 2004-09-05  Chenthill Palanisamy <pchenthill@novell.com>
2929
2930         Fixes 63513
2931         * backends/groupwise/e-cal-backends-groupwise-utils.c
2932         (e_gw_connection_send_appointment): Do a case insensitive
2933         comparison between the email ids.
2934         
2935 2004-09-05  Chenthill Palanisamy <pchenthill@novell.com>
2936         
2937         * libecal/e-cal-utils.h:
2938         defined two macros for the handling the static capabilities for 
2939         backends which does not support the conversion of a non-recurring
2940         appointment to a recurrence appointment and conversion of posted
2941         task to group task.
2942         * backends/groupwise/e-cal-backend-groupwise.c
2943         (e_cal_backend_groupwise_get_static_capabilities): Added the 
2944         two macros in this function.
2945
2946 2004-09-05  Chenthill Palanisamy <pchenthill@novell.com>
2947
2948         Fixes #64688
2949         * backends/groupwise/e-cal-backend-groupwise.c
2950         (connect_to_server): store the default zone in
2951         backend before populating the cache.
2952         
2953 2004-08-27  Rodrigo Moya <rodrigo@novell.com>
2954
2955         * libedata-cal/e-cal-backend-sexp.c (func_has_alarms_in_range): new
2956         function for the regular expression language.
2957         (e_cal_backend_sexp_new): added new function to the list of symbols.
2958
2959         * libecal/e-cal.c (e_cal_get_alarms_in_range): use the new
2960         'has-alarms-in-range' function.
2961
2962 2004-08-27  Chenthill Palanisamy <pchenthill@novell.com>
2963
2964         * backends/groupwise/e-cal-backend-groupwise-utils.c
2965         (set_properties_from_cal_component): set the acceptLevel
2966         for the appointment as Free if its not Busy.
2967
2968 2004-08-26  Rodrigo Moya <rodrigo@novell.com>
2969
2970         * libecal/e-cal-util.c (check_instance): match the prototype expected
2971         in icalcomponent_foreach_recurrence.
2972         (e_cal_util_remove_instances): fixed warning.
2973
2974 2004-08-25  Frederic Crozat  <fcrozat@mandrakesoft.com>
2975
2976         * libecal/e-cal.c: (e_cal_set_default_timezone):
2977         Need a return value.
2978
2979 2004-08-25  Chenthill Palanisamy <pchenthill@novell.com>
2980
2981         * backends/groupwise/e-cal-backend-groupwise.c
2982         (populate_cache): Used a static mutex to avoid the 
2983         the simulataneous calls from calendar and tasks to
2984         ReadCursorRequest which crashes the server.
2985
2986 2004-08-24  Sivaiah Nallagatla <snallagatla@novell.com>
2987
2988         * backends/groupwise/e-cal-backend-groupwise.c 
2989         (populate_cache) : use cursor methods to get items in chunks instead of 
2990         getting all at once
2991
2992 2004-08-24  Chenthill Palanisamy <pchenthill@novell.com>
2993          
2994         * backends/groupwise/e-cal-backend-groupwise.c
2995         (receive_object): update the client view when a meeting
2996         is accepted or declined.
2997
2998 2004-08-23  Chenthill Palanisamy <pchenthill@novell.com>
2999         
3000         Fixes bug #62857
3001         * backends/groupwise/e-cal-backend-groupwise.c
3002         (e_cal_backend_groupwise_create_object): return the cal object created
3003         for the first component and notify the client for the cal objects of other 
3004         components created in recurrences.
3005
3006 2004-08-17  Rodrigo Moya <rodrigo@novell.com>
3007
3008         Fixes #61782
3009
3010         * backends/file/e-cal-backend-file.c (e_cal_backend_file_create_object):
3011         allow iCalendar objects with no UID.
3012
3013 2004-08-17  JP Rosevear  <jpr@novell.com>
3014
3015         * libecal/e-cal.c (e_cal_set_default_timezone): don't set the same
3016         time to the server again, avoids a needless server hit
3017
3018 2004-08-17  Chenthill Palanisamy <pchenthill@novell.com>
3019         
3020         * backends/groupwise/e-cal-backend-groupwise.c
3021         (connect_to_server): Clear the cache before populating 
3022         it.
3023
3024 2004-08-16  Chenthill Palanisamy <pchenthill@novell.com>
3025         
3026         * backends/groupwise/e-cal-backend-groupwise.c
3027         (connect_to_server): Do not get the items from server every time 
3028         the calendar is loaded, since the cache is already populated. 
3029
3030 2004-08-13  Hans Petter Jansson  <hpj@ximian.com>
3031
3032         Fixes bug #62655.
3033
3034         * backends/contacts/e-cal-backend-contacts.c (source_group_added_cb):
3035         If source group's URI is NULL, do nothing, i.e. don't crash.
3036
3037 2004-08-13  Chenthill Palanisamy <pchenthill@novell.com>
3038
3039         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3040         (e_gw_item_to_cal_component): handle the BC recipient type
3041          with TO and CC.        
3042
3043 2004-08-12  Not Zed  <NotZed@Ximian.com>
3044
3045         * libecal/e-cal.c (async_auth_func_cb): removed.
3046         (open_async): dont override the auth callback.  It is now up to
3047         the caller to ensure they're thread-safe and serialised
3048         appropriately.
3049
3050 2004-08-12  Rodrigo Moya <rodrigo@novell.com>
3051
3052         * libecal/e-cal.c (e_cal_remove_object, e_cal_receive_objects):
3053         added missing gtk-doc comments.
3054
3055 2004-08-09  Jeffrey Stedfast  <fejj@novell.com>
3056
3057         Fixes bug #58150
3058
3059         * libecal/e-cal.c (e_cal_activate): init bonobo if it isn't
3060         already initialised.
3061         (e_cal_new): Call e_cal_activate().
3062
3063 2004-08-09  Harish Krishnaswamy  <kharish@novell.com>
3064
3065         Fixes #58643 - the gw backend assembles the xgwrecordid
3066         to be used for accept/decline requests.
3067
3068         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3069         (e_gw_connection_send_appointment): use the event and todo type
3070         markers while assembling the gwrecordid from the itip message.
3071         set flag 'remove' for decline/retract requests to indicate 
3072         these should be removed from cache.
3073         * backends/groupwise/e-cal-backend-groupwise-utils.h:
3074         Add parameter to e_gw_connection_send_appointment and define macros
3075         GW_EVENT_TYPE_ID and GW_TODO_TYPE_ID.
3076         * backends/groupwise/e-cal-backend-groupwise.c: (receive_object):
3077         update the cache based on the remove flag set by 
3078         e_gw_connection_send_appointment.
3079
3080 2004-08-04  Chenthill Palanisamy <pchenthill@novell.com>
3081
3082        Fixes #60265
3083        * backends/groupwise/e-cal-backend-groupwise.c
3084        (e_cal_backend_groupwise_open): Whenever open_method is called
3085        get the data from the server and populate the cache.
3086
3087 2004-08-03  Harish Krishnaswamy  <kharish@novell.com>
3088
3089         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3090         (e_gw_connection_send_appointment): Add ':' as a separator
3091         while appending the container id to the xgwrecordid to
3092         generate the item_id.
3093
3094 2004-08-02  Not Zed  <NotZed@Ximian.com>
3095
3096         ** See bug #58642.
3097
3098         * libedata-cal/e-data-cal-factory.c (backend_last_client_gone_cb):
3099         the table key includes the kidn for some reason.
3100         (impl_CalFactory_getCal): store the icalkind in the uri, not the
3101         calobjtype.  Fix a memory leak.
3102
3103 2004-08-02  Chenthill Palanisamy <pchenthill@novell.com>
3104         
3105         Fixes #57127
3106         * backends/groupwise/e-cal-backend-groupwise.c:
3107         (ECalBackendGroupwisePrivate): Added two hash tables
3108         for the category ids and names.
3109         (e_cal_backend_groupwise_get_connection), 
3110         (e_cal_backend_groupwise_get_default_zone), 
3111         (e_cal_backend_groupwise_get_categories_by_id),
3112         (e_cal_backend_groupwise_get_categories_by_name):
3113         Added to access the ECalBackendGroupwisePrivate structure.
3114         * backends/groupwise/e-cal-backend-groupwise-utils.c: 
3115         (e_gw_item_new_from_cal_component), (e_gw_item_to_cal_component),
3116         (e_gw_connection_create_appointment), (set_properties_from_cal_component):
3117         Changed the argument from icaltimezone to ECalBackendGroupwise to 
3118         access ECalBackendGroupwisePrivate structure for storing categories 
3119         to calendar components.
3120         (set_categories_for_gw_item): Added to store the categories in GW item.
3121         (set_categories_changes): Added to update the category changes.
3122
3123 2004-07-30  Harish Krishnaswamy  <kharish@novell.com>
3124         
3125         Fixes #59335
3126         
3127         * libecal/e-cal.c: (open_calendar): Set the status correctly
3128         on all exit points from the function.
3129
3130 2004-07-28  Chenthill Palanisamy <pchenthill@novell.com>
3131
3132         Fixes #60265
3133         * backends/groupwise/e-cal-backend-groupwise.c
3134         (connect_to_server), (e_cal_backend_groupwise_open):
3135         Creates the cache structure after connecting to server and loads 
3136         the default timezone after populating the cache.
3137
3138 2004-07-26  Harish Krishnaswamy  <kharish@novell.com>
3139
3140         Fixes #57651, #58637 and #58643
3141         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3142         (e_gw_connection_send_appointment) : Append the container id to
3143         the gwrecordid obtained via ITIP to match the representation 
3144         in the SOAP interface.
3145         (e_gw_item_set_changes): Updates to 'completed' field in the Task
3146         is not sticky in the server, when using the modifyRequest. Using a 
3147         separate completeRequest call to update the same.
3148         * backends/groupwise/e-cal-backend-groupwise-utils.h: removed the
3149         unused default_zone parameter from e_gw_connection_send_appointment.
3150         * backends/groupwise/e-cal-backend-groupwise.c: 
3151         (get_deltas): return boolean values not the connection status as the 
3152         caller is not expected to handle it anyway.
3153         (sanitize_component): renamed set_container_id function, so it
3154         correctly depicts what it does.
3155         (e_cal_backend_groupwise_create_object): Make a getItemsRequest to the 
3156         server to obtain the items while creating recurring events. The original
3157         call returns only the item ids and the client requires the icalids too
3158         to keep the cache valid.
3159         (e_cal_backend_groupwise_modify_object) : Use the completeRequest method
3160         to update task completion. 
3161         (receive_object) : The call to e_gw_connection_send_appointment updated
3162         to reflect the change in its signature. 
3163         (e_cal_backend_groupwise_receive_objects): set the method on the subcomp
3164         created before passing it over to receive_object.
3165
3166 2004-07-23  Chenthill Palanisamy <pchenthill@novell.com>
3167         
3168         Fixes #60463
3169         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3170         (e_gw_connection_get_freebusy_info):
3171         Added a timezone  argument and used it to convert the freebusy 
3172         times to default timezone. (Have added the patch again since it was inadvertently removed from 
3173         by some commit)
3174         
3175 2004-07-15  JP Rosevear  <jpr@novell.com>
3176
3177         Fixes #58748
3178         
3179         * backends/contacts/e-cal-backend-contacts.c (cdate_to_icaltime):
3180         explicitly set is_utc and set zone to NULL
3181         (create_component): use NULL instead of 0
3182         (e_cal_backend_contacts_set_default_timezone): fix logic typo so
3183         that the default zone is set correctly
3184
3185 2004-07-15  Rodrigo Moya <rodrigo@novell.com>
3186
3187         Fixes #57142
3188
3189         * libecal/e-cal-component.c (ensure_alarm_properties_cb): add the
3190         X-EVOLUTION-NEEDS-DESCRIPTION property to the alarms we create
3191         with no description, and remove the property from the alarms with
3192         a description already.
3193
3194         (e_cal_component_set_summary, set_alarm_description_cb): set the
3195         description on the alarms when the summary changes and remove the
3196         above property when we set a valid description.
3197
3198 2004-07-14  Chenthill Palanisamy <pchenthill@novell.com>
3199
3200        Fixes #60344
3201        * backends/groupwise/e-cal-backend-groupwise.c:
3202        (e_cal_backend_groupwise_internal_get_timezone):
3203        Send the timezone present in tzid instead of sending UTC timezone.
3204
3205 2004-07-12  Harish Krishnaswamy  <kharish@novell.com>
3206
3207         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3208         (e_cal_component_get_gw_id): Access method for getting the 
3209         XGWRECORDID property from the calendar component.
3210         (set_properties_from_cal_component): Range of priority value
3211         HIGH extended to include values 1 and 2.
3212         The X-EVOLUTION-GROUPWISE-ID is now referred as XGWRECORDID
3213         for consistency with the ITIP messages.
3214         (e_gw_item_to_cal_component) : Absence of due_date does not 
3215         invalidate the task component. Fixes #60926.
3216         (e_gw_connection_send_appointment),(e_gw_connection_create_appointment):
3217         Implemented.
3218         (e_gw_connection_get_freebusy_info):
3219         (e_gw_item_set_changes): Fixed compiler warnings.
3220         
3221         * backends/groupwise/e-cal-backend-groupwise-utils.h:
3222         Declarations for added functions.
3223         * backends/groupwise/e-cal-backend-groupwise.c: 
3224         (populate_cache) : Removed unused variables.
3225         (set_container_id): Extracted a function out of the code as it is
3226         used twice.
3227         (e_cal_backend_groupwise_create_object): Handle changes in the SOAP interface.
3228         The server now returns  a list of uids. This is to allow creation of recurring 
3229         calendar events.
3230         (e_cal_backend_groupwise_modify_object): Fix some leaks.
3231         (e_cal_backend_groupwise_remove_object), (receive_object),
3232         (send_object), (e_cal_backend_groupwise_send_objects): Use the newly created
3233         functions for handling group calendar items.
3234
3235 2004-07-12  Sivaiah Nallagatla   <snallagatla@novell.com>
3236
3237         * backends/groupwise/e-cal-backend-groupwise.c
3238         (form_uri) : read "use_ssl" property from the ESource
3239         and form the uri accordingly
3240         (connect_to_server) : when "use_ssl" is "when-possible"
3241         try with https first and then with http if that fails
3242
3243 2004-06-28  Chenthill Palanisamy <pchenthill@novell.com>
3244         
3245         Fixes #60463
3246         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3247         (e_gw_connection_get_freebusy_info):
3248         Added a timezone  argument and used it to convert the freebusy 
3249         times to default timezone.
3250
3251 2004-06-15  Harish Krishnaswamy  <kharish@novell.com>
3252
3253         Fixes #59352    
3254         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3255         (set_properties_from_cal_component), (e_gw_item_to_cal_component):
3256         Handle the organizer property of ecal and allow storing to and 
3257         from e-gw-item.
3258
3259 2004-06-14  Rodrigo Moya <rodrigo@novell.com>
3260
3261         Fixes #57088
3262
3263         * backends/contacts/e-cal-backend-contacts.c (source_group_added_cb):
3264         only add sources from local addressbook backends.
3265
3266 2004-06-14  Harish Krishnaswamy  <kharish@novell.com>
3267
3268
3269         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3270         (get_recur_instance), (resolve_tzid_cb) : add support for recurrences 
3271         in events.
3272         (set_properties_from_cal_component), (e_gw_item_to_cal_component),
3273         (e_gw_item_set_changes): Recipient_list handling code is now common to
3274         both events and todos.
3275         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache): Add
3276         recipientStatus to the view element.
3277         (receive_object): Send found_comp as argument to modify_object.
3278
3279 2004-06-11  Rodrigo Moya <rodrigo@novell.com>
3280
3281         * libedata-cal/e-cal-backend-sync.c (_e_cal_backend_remove_object): if
3282         the deletion is successful, check if the object still exists, in which
3283         case it means we removed an instance of a recurring event. Fixed
3284         memory leak also.
3285
3286         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove_object):
3287         return the old_object output argument in all cases.
3288
3289 2004-06-02  Rodrigo Moya <rodrigo@novell.com>
3290
3291         * libecal/e-cal.c (e_cal_generate_instances,
3292         e_cal_generate_instances_for_object, e_cal_get_alarms_in_range,
3293         e_cal_get_alarms_for_object): only allow values from 0 to time_t's
3294         maximum value.
3295
3296         * libecal/e-cal.h: added missing prototype.
3297
3298 2004-06-01  Rodrigo Moya <rodrigo@novell.com>
3299
3300         * libecal/e-cal.c (e_cal_generate_instances): moved all the logic...
3301         (generate_instances): ...here, so that we can specify a UID to
3302         generate instances only for that UID.
3303         (e_cal_generate_instances_for_object): use generate_instances
3304         function and specify the UID of the object.
3305
3306         * libedata-cal/e-cal-backend-sexp.c (e_cal_backend_sexp_match_comp):
3307         added checks for arguments.
3308
3309 2004-06-01  Rodrigo Moya <rodrigo@novell.com>
3310
3311         * libecal/e-cal.c (e_cal_generate_instances_for_object,
3312         e_cal_generate_instances): allow -1 for the start and end times.
3313         (load_static_capabilities, add_instance): fixed warnings.
3314
3315 2004-06-01  JP Rosevear  <jpr@novell.com>
3316
3317         * libecal/*: revert accidental commit
3318
3319 2004-05-28  JP Rosevear  <jpr@novell.com>
3320
3321         Fixes #55524
3322         
3323         * backends/file/e-cal-backend-file.c
3324         (e_cal_backend_file_receive_objects): don't sanitize the
3325         component, we already check for valid timezones and the zones
3326         aren't merged in yet anyhow
3327
3328 2004-05-28  Rodrigo Moya <rodrigo@novell.com>
3329
3330         * libedata-cal/e-data-cal-factory.c (backend_last_client_gone_cb):
3331         disconnect from signals on the removed backend.
3332
3333 2004-05-28  Harish Krishnaswamy  <kharish@novell.com>
3334
3335
3336         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3337         (e_gw_item_to_cal_component): Throw in null checks on 
3338         mandatory fields to bypass crashes in e-d-s while the server 
3339         gets fixed.
3340
3341
3342 2004-05-27  Rodrigo Moya <rodrigo@novell.com>
3343
3344         * backends/http/e-cal-backend-http.c (retrieval_done): make sure
3345         we clean up the cache, or old events will always be kept.
3346
3347 2004-05-27  Rodrigo Moya <rodrigo@novell.com>
3348
3349         Fixes #58197
3350
3351         * libedata-cal/e-cal-backend.c (e_cal_backend_create_object,
3352         e_cal_backend_modify_object): removed assertions on method
3353         implementations, since backends can perfectly have unimplemented
3354         methods. Instead, notify the error.
3355
3356 2004-05-25  Sivaiah Nallagatla <snallagatla@novell.com>
3357
3358         * backends/groupwise/e-cal-backends-groupwise.c (form_uri) :
3359         new function to form the uri required for e_gw_connection
3360          (connect_to_server) : use form_uri instead of convert_uri
3361
3362 2004-05-25  Harish Krishnaswamy  <kharish@novell.com>
3363
3364         Fixes GW portion of #57218 and #54280
3365
3366         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3367         (start_freebusy_session): removed FIXME comments (the code had been 
3368         fixed much earlier).
3369         (e_gw_item_set_changes):use the SET_DELTA macro to get accept_level 
3370         changes.
3371         * backends/groupwise/e-cal-backend-groupwise.c:
3372         (e_cal_backend_groupwise_modify_object),
3373         (e_cal_backend_groupwise_remove_object),
3374         (e_cal_backend_groupwise_send_objects): set return arguments correctly.
3375         and removed dead code in remove_object.
3376
3377 2004-05-25  Rodrigo Moya <rodrigo@ximian.com>
3378
3379         * backends/groupwise/e-cal-backend-groupwise.c
3380         (e_cal_backend_groupwise_modify_object): return ObjectNotFound error
3381         instead of InvalidObject when the object is not found.
3382
3383 2004-05-22  Rodrigo Moya <rodrigo@ximian.com>
3384
3385         * backends/file/e-cal-backend-file.c (add_component): make sure we
3386         process correctly the detached instances.
3387         (match_object_sexp): deal with hash table entries not containing
3388         a full_object (ie, detached recurrences).
3389
3390 2004-05-21  JP Rosevear  <jpr@novell.com>
3391
3392         * backends/file/e-cal-backend-file.c
3393         (e_cal_backend_file_receive_objects): make sure we only handle the
3394         type of objects the backend is set up for plus timezones; directly
3395         add the objects rather than using other functions
3396
3397 2004-05-19  Chris Toshok  <toshok@ximian.com>
3398
3399         * backends/contacts/e-cal-backend-contacts.c (book_record_new):
3400         use new e_book_new/e_book_open apis.
3401
3402 2004-05-19  Rodrigo Moya <rodrigo@ximian.com>
3403
3404         Removes 100s of error dialogs as reported in #54211
3405
3406         * backends/http/e-cal-backend-http.c: added a flag to know when the
3407         backend has been opened.
3408         (reload_cb): set the "opened" flag to TRUE when we reload.
3409         (retrieval_done): only notify errors when opening the backend, not
3410         on each reload, or we'll get many error message dialogs when left
3411         running for a few hours.
3412
3413 2004-05-18  Harish Krishnaswamy  <kharish@novell.com>
3414
3415         Fixes #56320 and related timezone issues.
3416         Convert datetime from the Groupwise string format between icaltime
3417         directly w/o using time_t structures.
3418         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3419         (set_properties_from_cal_component),
3420         (e_gw_item_new_from_cal_component), (e_gw_item_to_cal_component),
3421         (e_gw_connection_send_appointment), (e_gw_item_set_changes):
3422         use the default_timezone info while performing the conversions.
3423         * backends/groupwise/e-cal-backend-groupwise-utils.h:
3424         * backends/groupwise/e-cal-backend-groupwise.c: (populate_cache),
3425         (get_deltas), (connect_to_server),
3426         (e_cal_backend_groupwise_finalize), (e_cal_backend_groupwise_open),
3427         (e_cal_backend_groupwise_add_timezone):
3428         Add timezone to the cache and allow evolution to set the default timezone.
3429         (e_cal_backend_groupwise_set_default_timezone),
3430         (e_cal_backend_groupwise_create_object),
3431         (e_cal_backend_groupwise_modify_object), (receive_object),
3432         (send_object), (e_cal_backend_groupwise_init):
3433         * libedata-cal/e-cal-backend-cache.c:
3434         (e_cal_backend_cache_put_default_timezone),
3435         (e_cal_backend_cache_get_default_timezone):
3436         Store default timezone information in the cache so that eds remembers the
3437         client timezone information while populating the cache in the next session.
3438         Since the cache population happens while the calendar is still loading, evolution
3439         would not have had a chance to set the timezone yet.
3440         
3441         * libedata-cal/e-cal-backend-cache.h: Added get/put functions for
3442         default timezone.
3443
3444 2004-05-18  Rodrigo Moya <rodrigo@ximian.com>
3445
3446         * libedata-cal/e-cal-backend-sexp.c (func_occur_in_time_range): always
3447         use a valid timezone.
3448
3449         * libecal/e-cal-recur.c (cal_object_time_from_time): don't use invalid
3450         timezones.
3451
3452         * libecal/e-cal.c (e_cal_generate_instances): make sure we always have
3453         a default timezone.
3454
3455 2004-05-17  Rodney Dawes  <dobey@ximian.com>
3456
3457         * libecal/Makefile.am (libecal_la_LIBADD):
3458         * libedata-cal/Makefile.am (libedata_cal_la_LIBADD):
3459         Add $(EVOLUTION_CALENDAR_LIBS) to link to all the right dependencies
3460         so that the mono bindings will work correctly
3461
3462         Fixes #58615
3463
3464 2004-05-17  Rodrigo Moya <rodrigo@ximian.com>
3465
3466         Fixes #51412
3467
3468         * backends/file/e-cal-backend-file.c (remove_instance): re-add the
3469         modified objects to the top-level icalcomponent after removing
3470         instances.
3471         (e_cal_backend_file_remove_object): manage the CALOBJ_MOD_THIS case
3472         for an event with no RECURRENCE-ID.
3473
3474 2004-05-14  Rodrigo Moya <rodrigo@ximian.com>
3475
3476         Fixes #56870
3477
3478         * libedata-cal/e-cal-backend-sync.c (e_cal_backend_sync_create_object,
3479         e_cal_backend_sync_modify_object, e_cal_backend_sync_remove_object,
3480         e_cal_backend_sync_discard_alarm, e_cal_backend_sync_receive_objects,
3481         e_cal_backend_sync_send_objects): don't g_assert if the method is not
3482         implemented on the underlying backend, just return an UnsupportedMethod
3483         error.
3484
3485 2004-05-14  Rodrigo Moya <rodrigo@ximian.com>
3486         
3487         * libedata-cal/e-cal-backend-sexp.c (e_cal_backend_sexp_func_make_time):
3488         added extra check for function arguments.
3489
3490         * libedata-cal/e-cal-backend-cache.c (e_cal_backend_cache_put_timezone):
3491         added missing implementation from recurreces-work-branch.
3492
3493         * libecal/e-cal-recur.c (e_cal_recur_generate_instances_of_rule):
3494         use the default timezone if we can't get timezones for the start
3495         and end dates.
3496
3497 2004-05-13  Rodrigo Moya <rodrigo@ximian.com>
3498
3499         Fixes #54094
3500
3501         * backends/file/e-cal-backend-file.c (e_cal_backend_file_modify_object):
3502         deal correctly with CALOBJ_MOD_THIS for master objects.
3503
3504 2004-05-12  Rodrigo Moya <rodrigo@ximian.com>
3505
3506         * libecal/e-cal.c (e_cal_generate_instances): fixed gtk-doc comments,
3507         and process correctly detached instances.
3508         (e_cal_generate_instances_for_object): new function.
3509         (e_cal_set_default_timezone): set the internal default timezone when
3510         the call to the backend is successful.
3511         (process_detached_instances): process correctly the detached instances.
3512
3513 2004-05-12  Harish Krishnaswamy  <kharish@novell.com>
3514
3515
3516         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3517         (set_properties_from_cal_component), (e_gw_item_to_cal_component),
3518         (e_gw_connection_get_freebusy_info), (e_gw_item_set_changes):
3519         Add implementation for modification of objects.
3520         * backends/groupwise/e-cal-backend-groupwise-utils.h:
3521         Add declaration for e_gw_item_set_changes.      
3522         * backends/groupwise/e-cal-backend-groupwise.c:
3523         (e_cal_backend_groupwise_set_default_timezone):
3524         Allow evo to set the timezone in the groupwise backend.
3525         (e_cal_backend_groupwise_modify_object):
3526         Modify implementation to use modifyItemRequest rather than
3527         a sendItem.
3528
3529 2004-05-07  JP Rosevear  <jpr@ximian.com>
3530
3531         Fixes #57908
3532         
3533         * libecal/e-cal-component.c (e_cal_component_set_organizer):
3534         prevent double frees
3535         (e_cal_component_set_organizer): ditto
3536         (e_cal_component_set_summary): ditto
3537
3538 2004-05-06  Harish Krishnaswamy  <kharish@novell.com>
3539
3540         * libecal/e-cal.c: (load_static_capabilities): assign capabilities
3541         to ecal->capabilities so that it need not be computed repeatedly.
3542         * backends/groupwise/e-cal-backend-groupwise.c: 
3543         (populate_cache) : added message to view element to recieve 
3544         message bodies as plain text (default).
3545         (connect_to_server) : the Tasks folder is also Calendar and 
3546         not Checklist in GW server.
3547         (e_cal_backend_groupwise_get_static_capabilities) :
3548         Added CAL_STATIC_CAPABILITY_SAVE_SCHEDULES.
3549
3550 2004-05-04  Harish Krishnaswamy  <kharish@novell.com>
3551
3552         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3553         (set_properties_from_cal_component),
3554         (e_gw_item_new_from_cal_component), (e_gw_item_to_cal_component):
3555         Patch the FIXMEs in the code handling recipient_list and message bodies
3556         in events. This also resolves #57204 and 57883.
3557         
3558         
3559 2004-05-03  William Jon McCann  <mccann@jhu.edu>
3560
3561         * libecal/e-cal-time-util.h: Add missing G_BEGIN_DECLS and G_END_DECLS
3562
3563 2004-05-04  Harish Krishnaswamy  <kharish@novell.com>
3564
3565         Fixes #55922
3566         
3567         * libedata-cal/e-data-cal-factory.c: (impl_CalFactory_getCal):
3568         Hash the backends based on the uri 'and' the type (Both calendar
3569         and tasks for GW share the same uri but need different e-data-cal
3570         instances.
3571
3572 2004-05-03  JP Rosevear  <jpr@ximian.com>
3573
3574         Partial fix for #57218
3575         
3576         * libecal/e-cal.c (cal_objects_sent_cb): copy the object string
3577         (e_cal_get_default_object): check the status explicitly
3578         (e_cal_get_object): ditto
3579         (e_cal_get_timezone): ditto
3580         (e_cal_send_objects): parse the string here so we can handle bad
3581         parsing properly
3582
3583         * libecal/e-cal-marshal.list: replace marshaller signature
3584
3585         * libecal/e-cal-listener.h: update signal proto
3586
3587         * libecal/e-cal-listener.c (impl_notifyObjectsSent): send back
3588         just the text like other similar routines
3589         (e_cal_listener_class_init): send back a string as the third arg
3590         in the send_objects signal
3591
3592 2004-04-30  Dan Winship  <danw@ximian.com>
3593
3594         * libecal/e-cal-component.c (get_attendee_list): Fill in some
3595         default values to avoid libical assertions later. Also, fix some
3596         really awful cut+pastos
3597
3598 2004-04-28  JP Rosevear  <jpr@ximian.com>
3599
3600         * tests/ecal/test-search.c: something to run searches with for
3601         test purposes
3602
3603         * tests/ecal/Makefile.am: build test search 
3604
3605 2004-04-28  JP Rosevear  <jpr@ximian.com>
3606
3607         Fixes #57080
3608         
3609         * libedata-cal/e-cal-backend.c
3610         (e_cal_backend_notify_object_modified): make sure the item was
3611         actually in the query before so we don't send bogus removes
3612
3613 2004-04-27  Harish Krishnaswamy  <kharish@novell.com>
3614
3615         Fixes #56535
3616
3617         * backends/groupwise/e-cal-backend-groupwise-utils.c:
3618         (set_properties_from_cal_component), (e_gw_item_to_cal_component):
3619         Added support for saving Alarms in the GW server as well as 
3620         read the alarm information during retrieval.
3621
3622
3623 2004-04-23  Jeffrey Stedfast  <fejj@ximian.com>
3624
3625         * libedata-cal/e-data-cal.c (e_data_cal_notify_changes): Fixed a
3626         c/p bug. Don't call notifyDefaultTimezoneSet, we want to
3627         notifyChanges! Took me long enough to track this little bugger
3628         down.
3629
3630 2004-04-21  Jeffrey Stedfast  <fejj@ximian.com>
3631
3632         * backends/file/e-cal-backend-file.c
3633         (e_cal_backend_file_receive_objects): Pass the address of calobj
3634         to file_create_object().
3635         (e_cal_backend_file_compute_changes): "Gracefully" handle a NULL
3636         return from e_xmlhash_new().
3637
3638 2004-04-20  JP Rosevear  <jpr@ximian.com>
3639
3640         * libecal/e-cal.c (open_async): emit the open signal in an idle
3641         loop
3642         (async_signal_idle_cb): emit the signal and free the data
3643
3644 2004-04-16  Harish Krishnaswamy  <kharish@novell.com>
3645         
3646         Fixes #55802
3647         
3648         * libecal/e-cal.c: (open_calendar): Create and lock
3649         op mutex and unlock ecal before attempting to authenticate.
3650         (open_async, async_auth_idle_cb,async_auth_func_cb): implement 
3651         async authentication to calendar.
3652         
3653
3654 2004-04-15  JP Rosevear  <jpr@ximian.com>
3655
3656         * libecal/e-cal.c (e_cal_add_timezone): do a little more sanity
3657         checking on what we send
3658
3659 2004-04-12  Sarfraaz Ahmed <asarfraaz@novell.com>
3660
3661         Fixes #56517
3662                                                                                 
3663         * libecal/e-cal.c (e_cal_add_timezone): Added a check for icalcomponent
3664         structure. Return FALSE if icalcomponent is NULL.
3665
3666 2004-04-12  Harish K <kharish@novell.com>
3667
3668         Fixes #53926
3669         
3670         * backends/groupwise/e-cal-backend-groupwise-utils.c
3671         (e_gw_item_to_cal_component) : set the tzid to "UTC"
3672         while setting the dueDate.
3673                 
3674         
3675 2004-04-08  Rodrigo Moya <rodrigo@ximian.com>
3676
3677         * backends/groupwise/e-cal-backend-groupwise.c
3678         (e_cal_backend_groupwise_get_static_capabilities): add the 
3679         ONE_ALARM_ONLY static capability.
3680
3681 2004-04-06  Harish K <kharish@novell.com>
3682         
3683         Fixes #55169
3684
3685         * backends/groupwise/e-cal-backend-groupwise-utils.c
3686         (e_gw_connection_get_freebusy_info) : Use icalproperty
3687         to add free/busy data to ECalComponent.
3688         
3689 2004-04-05  Rodrigo Moya <rodrigo@ximian.com>
3690
3691         * backends/groupwise/e-cal-backend-groupwise.c
3692         (e_cal_backend_groupwise_remove_object): Use correct types for
3693         e_cal_backend_groupwise_get_object's return value.
3694
3695 2004-04-03  JP Rosevear  <jpr@ximian.com>
3696
3697         Fixes #56416
3698         
3699         * backends/contacts/e-cal-backend-contacts.c
3700         (e_cal_backend_contacts_get_timezone): implement
3701         (e_cal_backend_contacts_add_timezone): ditto
3702         (e_cal_backend_contacts_set_default_timezone): ditto
3703         (free_zone): free a timezone
3704         (e_cal_backend_contacts_finalize): destroy the zones hash table
3705         (e_cal_backend_contacts_class_init): add new method
3706         implementations
3707         (e_cal_backend_contacts_init): set up zones hash table
3708
3709 2004-04-02  Rodrigo Moya <rodrigo@ximian.com>
3710
3711         Fixes #51412
3712
3713         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove_object):
3714         support being called with CALOBJ_MOD_THIS on the top level component.
3715
3716 2004-04-02  Rodrigo Moya <rodrigo@ximian.com>
3717
3718         Fixes #55719
3719
3720         * backends/groupwise/e-cal-backend-groupwise.c (connect_to_server):
3721         use correct type for populate_cache's return value.
3722         (e_cal_backend_groupwise_set_mode): use correct type for
3723         connect_to_server's return value.
3724
3725 2004-03-30  JP Rosevear <jpr@ximian.com>
3726
3727         * backends/file/e-cal-backend-file.c: allow debugging code to be
3728         turned on and off easily
3729
3730         * backends/http/e-cal-backend-http.c: ditto
3731         
3732 2004-03-31  JP Rosevear <jpr@ximian.com>
3733
3734         Fixes #56111
3735         
3736         * backends/contacts/e-cal-backend-contacts.c (create_component):
3737         take a uid for the icalcomp
3738         (create_birthday): create a uid from the contact uid and a
3739         birthday designator
3740         (create_anniversary): ditto for anniversary
3741         (e_cal_backend_contacts_get_cal_address): set the address to NULL
3742         when returning success
3743         (e_cal_backend_contacts_get_ldap_attribute): ditto for the
3744         attribute
3745         (e_cal_backend_contacts_remove): can't remove a read only calendar
3746         (e_cal_backend_contacts_get_object): implement
3747         
3748 2004-03-31  JP Rosevear <jpr@ximian.com>
3749
3750         Fixes #54713
3751         
3752         * libecal/e-cal.c (e_cal_get_object): only try to parse the string
3753         if the status is good
3754         (e_cal_get_timezone): ditto
3755         (e_cal_get_default_object): ditto
3756         
3757 2004-03-29  Rodrigo Moya <rodrigo@ximian.com>
3758
3759         * libecal/e-cal.c (e_cal_generate_instances): added support for dealing
3760         with detached instances.
3761         (process_detached_instances): replace all generated instances with the
3762         detached ones.
3763
3764 2004-03-29 Harish K <kharish@novell.com>
3765
3766         * backends/groupwise/e-cal-backend-utils.c 
3767         (start_freebusy_session) : send UTC time to server instead of
3768         floating time. remove namespaces to elements in request messages.
3769         (e_gw_connection_get_freebusy_info) :send f/b information thro'
3770         ECalComponentAttendee structure -not ECalComponentOrganizer.
3771         
3772 2004-03-26  JP Rosevear <jpr@ximian.com>
3773
3774         * libecal/e-cal.h: add proto
3775         
3776         * libecal/e-cal.c (e_cal_get_source_type): accessor
3777
3778 2004-03-26  Rodrigo Moya <rodrigo@ximian.com>
3779
3780         * backends/groupwise/e-cal-backend-groupwise.c
3781         (e_cal_backend_groupwise_create_object): replace the inbox container ID
3782         in the ID returned by sendItemResponse with our container ID.
3783         (e_cal_backend_groupwise_remove_object): if the object does not have the
3784         GW server ID, use the iCalID property to remove it.
3785
3786 2004-03-26  Rodrigo Moya <rodrigo@ximian.com>
3787         
3788         * backends/groupwise/e-cal-backend-groupwise-utils.c
3789         (e_gw_connection_send_appointment): set the container ID on the
3790         EGwItem returned by e_gw_item_new_from_cal_component.
3791
3792 2004-03-25  William Jon McCann  <mccann@jhu.edu>
3793
3794         * backends/http/e-cal-backend-http.c (retrieval_done):
3795         (e_cal_backend_http_get_default_object): use the same component
3796         kind as the backend.
3797
3798 2004-03-25  Rodrigo Moya <rodrigo@ximian.com>
3799
3800         * backends/groupwise/e-cal-backend-groupwise.c
3801         (e_cal_backend_groupwise_create_object): add the X-EVOLUTION-GROUPWISE-ID
3802         property to the newly-created component.
3803
3804 2004-03-25  Rodrigo Moya <rodrigo@ximian.com>
3805
3806         * libedata-cal/e-cal-backend-sync.[ch]
3807         (e_cal_backend_sync_create_object): made the 'calobj' argument to
3808         be inout, so that the caller gets the modified component, not the
3809         original one sent to the backend.
3810         (_e_cal_backend_sync_create_object): ditto, and notify listeners with
3811         the modified calobj.
3812
3813         * backends/groupwise/e-cal-backend-groupwise.c
3814         (e_cal_backend_groupwise_create_object):
3815         * backends/file/e-cal-backend-file.c (e_cal_backend_file_create_object):
3816         adapted to changes in ECalBackendSync, and return the modified object
3817         to the caller.
3818
3819 2004-03-22  Rodrigo Moya <rodrigo@ximian.com>
3820
3821         * backends/groupwise/e-cal-backend-groupwise-utils.[ch]
3822         (e_gw_connection_send_appointment): added a 'id' argument, to be
3823         passed to e_gw_connection_send_item.
3824
3825         * backends/groupwise/e-cal-backend-groupwise.c
3826         (e_cal_backend_groupwise_create_object,
3827         e_cal_backend_groupwise_modify_object, send_object): added extra
3828         argument to e_gw_connection_send_appointment.
3829
3830 2004-03-19  Rodrigo Moya <rodrigo@ximian.com>
3831
3832         * backends/groupwise/e-cal-backend-groupwise.[ch]
3833         (e_cal_backend_groupwise_notify_error_code): new function.
3834         (populate_cache, get_deltas, connect_to_server,
3835         e_cal_backend_groupwise_open): notify clients of any error.
3836
3837 2004-03-19  Rodrigo Moya <rodrigo@ximian.com>
3838
3839         * backends/groupwise/e-cal-backend-groupwise-utils.c
3840         (start_freebusy_session): don't use the "types:" prefix for the
3841         <user> SOAP element.
3842
3843 2004-03-19  Rodrigo Moya <rodrigo@ximian.com>
3844
3845         * backends/groupwise/e-cal-backend-groupwise.c
3846         (e_cal_backend_groupwise_remove_object): remove the object from the
3847         cache in the remote case also.
3848
3849 2004-03-19  Rodrigo Moya <rodrigo@ximian.com>
3850
3851         * backends/groupwise/e-cal-backend-groupwise.c
3852         (e_cal_backend_groupwise_remove_object): if we don't find the
3853         X-EVOLUTION-GROUPWISE-ID property, the object didn't come from
3854         the server, so don't try to remove it.
3855
3856 2004-03-19  Rodrigo Moya <rodrigo@ximian.com>
3857
3858         * libedata-cal/e-cal-backend-cache.[ch]
3859         (e_cal_backend_cache_get_timezone, e_cal_backend_cache_put_timezone,
3860         e_cal_backend_cache_remove_timezone): new functions to support
3861         timezones in the cache.
3862         (e_cal_backend_cache_get_components): only append to the returned
3863         list the VEVENT's and VTODO's components.
3864         (e_cal_backend_cache_init): create a hash table to store all the
3865         icaltimezone objects we create in e_cal_backend_cache_get_timezone.
3866         (e_cal_backend_cache_finalize): free the timezones hash table.
3867
3868         * backends/groupwise/e-cal-backend-groupwise.c
3869         (e_cal_backend_groupwise_remove_object): remove object based on the
3870         Groupwise item ID, not the iCalendar ID.
3871
3872 2004-03-18  JP Rosevear <jpr@ximian.com>
3873
3874         * backends/groupwise/e-cal-backend-groupwise-utils.c
3875         (e_gw_connection_get_freebusy_info): send back "freeBusySessionId"
3876         rather than "session"
3877
3878 2004-03-18  JP Rosevear <jpr@ximian.com>
3879
3880         * backends/groupwise/e-cal-backend-groupwise-utils.c
3881         (start_freebusy_session): put the xml prefixes back in, they
3882         weren't the issue
3883
3884 2004-03-18  Rodrigo Moya <rodrigo@ximian.com>
3885
3886         * backends/groupwise/e-cal-backend-groupwise-utils.c
3887         (set_properties_from_cal_component): set the GW item ID based on the
3888         X-EVOLUTION-GROUPWISE-ID property.
3889         (e_gw_item_to_cal_component): add the above property to the created
3890         ECalComponent, and use our iCalendar ID to set the "iCalId" property.
3891
3892 2004-03-18  JP Rosevear <jpr@ximian.com>
3893
3894         * backends/groupwise/e-cal-backend-groupwise-utils.c
3895         (start_freebusy_session): remove xml prefixes
3896
3897 2004-03-18  JP Rosevear <jpr@ximian.com>
3898
3899         * backends/groupwise/e-cal-backend-groupwise-utils.c
3900         (start_freebusy_session): list the the addresses in the <email>
3901         attribute
3902
3903 2004-03-18  JP Rosevear <jpr@ximian.com>
3904
3905         * libecal/e-cal.c: add e_return_error macro to fail more
3906         gracefully as per ebook
3907
3908 2004-03-18  Rodrigo Moya <rodrigo@ximian.com>
3909
3910         * backends/groupwise/e-cal-backend-groupwise.c
3911         (e_cal_backend_groupwise_create_object,
3912         e_cal_backend_groupwise_modify_object): don't update the cache when we
3913         get an error from the server.
3914
3915 2004-03-17  Rodrigo Moya <rodrigo@ximian.com>
3916
3917         Fixes #55719
3918
3919         * backends/groupwise/e-cal-backend-groupwise.c
3920         (e_cal_backend_groupwise_get_cal_address): deal with online/offline
3921         modes.
3922         (e_cal_backend_groupwise_finalize): free new private field.
3923
3924 2004-03-16 Harish K <kharish@novell.com>
3925
3926         * libecal/e-cal.c : Move open_calendar call into async_idle_cb
3927         and rearrange mutex lock/unlock sequences. This fixes the calendar 
3928         authentication problems observed while using the Password Dialog.
3929
3930 2004-03-15  Rodrigo Moya <rodrigo@ximian.com>
3931
3932         * libedata-cal/e-cal-backend-sexp.c (func_occur_in_time_range): expand
3933         recurrences for the given time range to be sure that we return the
3934         correct events.
3935         (check_instance_time_range_cb): callback to check the expanded recurrences.
3936
3937 2004-03-15  Rodney Dawes  <dobey@ximian.com>
3938
3939         * libecal/libecal-1.0.pc.in:
3940         * libedata-cal/libedata-cal-1.0.pc.in: Add @LIBBONOBO_REQUIRED@ for
3941         the libbonobo dependency
3942
3943 2004-03-14  Harish K <kharish@novell.com>
3944
3945         * calendar/backends/groupwise/e-cal-backend-groupwise.c :
3946         Update calls to e_gw_connection_get_items with the new prototype.
3947
3948 2004-03-11  Rodrigo Moya <rodrigo@ximian.com>
3949
3950         * libedata-cal/e-data-cal.c (e_data_cal_notify_objects_sent): guard
3951         against sending NULL strings to CORBA.
3952
3953         * backends/contacts/e-cal-backend-contacts.c
3954         (e_cal_backend_contacts_receive_objects,
3955         e_cal_backend_contacts_send_objects): return PermissionDenied error.
3956
3957 2004-03-09  JP Rosevear <jpr@ximian.com>
3958
3959         Fixes #55389
3960         
3961         * backends/file/e-cal-backend-file.c
3962         (e_cal_backend_file_send_objects): return the calendar object
3963         properly
3964
3965 2004-03-09  Rodrigo Moya <rodrigo@ximian.com>
3966
3967         * libecal/e-cal.c (e_cal_resolve_tzid): don't default to UTC timezone,
3968         the default timezone is used by the timezone look up code.
3969
3970 2004-03-09  Thomas Mirlacher <dent@cosy.sbg.ac.at>
3971
3972         Fixes #53885
3973
3974         * backends/contacts/e-cal-backend-contacts.c:
3975         intermediate fix for recurring entries starting before 1970
3976         set the dtend for making valid whole-day entries
3977
3978 2004-03-05  Rodrigo Moya <rodrigo@ximian.com>
3979
3980         Fixes #54280
3981
3982         * backends/groupwise/e-cal-backend-groupwise.c
3983         (e_cal_backend_groupwise_send_objects): added missing implementation.
3984
3985 2004-03-05 Harish K <kharish@novell.com>
3986
3987         * backends/groupwise/e-cal-backend-groupwise-utils.c :
3988         timezone values in ECalDateComponent structures should be
3989         set to "UTC" for GW items.
3990         
3991 2004-03-01  Rodrigo Moya <rodrigo@ximian.com>
3992
3993         Fixes #33243
3994
3995         * libedata-cal/e-cal-backend-sexp.c (matches_location): new function
3996         to check if a component's location matches a string.
3997         (matches_any): call matches_location also.
3998         (func_contains): added support for searching the location also.
3999
4000 2004-03-01  Rodrigo Moya <rodrigo@ximian.com>
4001
4002         * idl/Evolution-DataServer-Calendar.idl: added new arguments to the
4003         notifyObjectsSent method for backends to return the list of users and
4004         events for which it operated.
4005
4006         * libedata-cal/e-data-cal.[ch] (e_data_cal_notify_objects_sent): added
4007         new argument and call the listener's notifyObjectsSent method with
4008         a GNOME_Evolution_Calendar_UserList.
4009
4010         * libedata-cal/e-cal-backend-sync.[ch] (e_cal_backend_sync_send_objects,
4011         _e_cal_backend_send_objects): added new arguments.
4012
4013         * backends/file/e-cal-backend-file.c (e_cal_backend_file_send_objects):
4014         * backends/http/e-cal-backend-http.c (e_cal_backend_http_send_objects):
4015         * backends/contacts/e-cal-backend-contacts.c
4016         (e_cal_backend_contacts_send_objects):
4017         * backends/groupwise/e-cal-backend-groupwise.c
4018         (e_cal_backend_groupwise_send_objects): adapted to changes in
4019         ECalBackend/ECalBackendSync API.
4020
4021         * backends/file/e-cal-backend-file.c (e_cal_backend_file_receive_objects,
4022         e_cal_backend_file_send_objects): removed wrong return statement.
4023
4024         * libecal/e-cal-marshal.list: added new marshaller.
4025
4026         * libecal/e-cal.[ch] (e_cal_send_objects): get the user list from the
4027         operation's result.
4028         (cal_objects_sent_cb): added the new arguments and copy them to the
4029         operation's result.
4030
4031         * libecal/e-cal-listener.[ch]: added new arguments to "send_objects"
4032         signal.
4033         (impl_notifyObjectsSent): added UserList argument to CORBA method, and
4034         convert the CORBA user list to a GList to be passed to the signal
4035         handlers.
4036         (e_cal_listener_class_init): added new arguments to "send_objects"
4037         signal.
4038
4039 2004-02-26  JP Rosevear <jpr@ximian.com>
4040
4041         * tests/ecal/test-ecal.c: make EXPECTED a macro so it compiles
4042
4043 2004-02-26 Harish K <kharish@novell.com>
4044
4045         * tests/ecal/test-ecal.c : Added implementation of 
4046         test cases.
4047         * (tests/ecal/test-runner.sh, tests/ecal/cleanup.sh
4048            tests/ecal/testdata.ics) : Added test scripts and test data.
4049         * tests/ecal/Makefile.am : Add scripts to EXTRA_DIST.
4050
4051 2004-02-23  JP Rosevear <jpr@ximian.com>
4052
4053         * backends/groupwise/Makefile.am: Add includes for srcdir !=
4054         builddir
4055
4056         * backends/file/Makefile.am: ditto
4057
4058         * backends/contacts/Makefile.am: ditto
4059
4060         * libedata-cal/Makefile.am: ditto
4061
4062         * libecal/Makefile.am: ditto
4063
4064         * tests/ecal/Makefile.am: ditto
4065
4066 2004-02-17 Harish K <kharish@novell.com>
4067         * libecal/e-cal.c : 
4068         (e_cal_new_system_calendar, e_cal_new_system_tasks) : arguments
4069         to g_build_filename should be NULL terminated.
4070
4071 2004-02-12  Chris Toshok  <toshok@ximian.com>
4072
4073         * backends/contacts/e-cal-backend-contacts.c (book_record_new):
4074         quiet the compiler, and free the list of requested fields after
4075         the e_book_get_book_view call.
4076         (e_cal_backend_contacts_init): use e_book_get_addressbooks instead
4077         of using gconf and hardcoding the sourcelist xml key.
4078
4079 2004-02-10  Rodrigo Moya <rodrigo@ximian.com>
4080
4081         * backends/file/e-cal-backend-file.c (e_cal_backend_file_receive_objects):
4082         switch wrongly-placed creation/modification of objects.
4083
4084 2004-02-06  Rodrigo Moya <rodrigo@ximian.com>
4085
4086         * backends/groupwise/e-cal-backend-groupwise-utils.c
4087         (set_properties_from_cal_component, e_gw_item_to_cal_component):
4088         adapted to changes in EGwItem.
4089
4090         * libecal/e-cal.c (e_cal_open_async): no need to make the thread joinable.
4091
4092 2004-02-06  Rodrigo Moya <rodrigo@ximian.com>
4093
4094         * backends/groupwise/e-cal-backend-groupwise-utils.[ch]: new files
4095         to contain all calendar-specific code from libegroupwise.
4096         (e_gw_item_new_from_cal_component, e_gw_item_to_cal_component,
4097         e_gw_connection_send_appointment): new functions.
4098
4099         * backends/groupwise/e-cal-backend-groupwise.c: include new header
4100         file.
4101
4102 2004-02-06  Rodrigo Moya <rodrigo@ximian.com>
4103
4104         * backends/groupwise/create-account.c:
4105         * backends/groupwise/soap-test.c:
4106         * backends/groupwise/e-gw-*: moved to $top_srcdir/servers/groupwise.
4107
4108         * backends/groupwise/Makefile.am: removed files and don't build test
4109         programs.
4110
4111 2004-02-06  Rodrigo Moya <rodrigo@ximian.com>
4112
4113         * backends/groupwise/e-gw-connection.c (parse_response_status):
4114         "Status" is now "status".
4115
4116 2004-02-04  JP Rosevear <jpr@ximian.com>
4117
4118         * libecal/e-cal.h: update proto
4119
4120         * libecal/e-cal.c (async_idle_cb): return FALSE to remove the idle
4121         handler
4122         (get_default): take an auth func and use it 
4123         (e_cal_open_default): ditto
4124
4125 2004-02-04  JP Rosevear <jpr@ximian.com>
4126
4127         * libecal/e-cal.h: redo protos
4128
4129         * libecal/e-cal.c (e_cal_open_default): open the default ecal
4130         based on type
4131         (e_cal_set_default): set the default based on type
4132         (e_cal_set_default_source): ditto
4133         (e_cal_get_sources): get the source list based on type
4134
4135 2004-02-04  Rodrigo Moya <rodrigo@ximian.com>
4136
4137         * libecal/e-cal.c (open_calendar): new function created from
4138         e_cal_open, without signal emissions.
4139         (e_cal_open): call open_calendar() and emit signals.
4140         (e_cal_open_async): changed to use a thread instead
4141         of an idle callback.
4142         (open_async): converted to a GThreadFunc, call open_calendar and
4143         setup idle callback to emit the "cal_opened" signal.
4144         (async_idle_cb): idle callback, notify listeners with the
4145         "cal_opened" signal and free ECalAsyncData.
4146
4147         * backends/file/e-cal-backend-file.c: store an ordered list of all
4148         detached recurrences, as well as the hash table, for each object.
4149         (free_object): free the recurrences list, and the object's data.
4150         (add_component, remove_instance): add the recurrences to the
4151         recurrences list also.
4152         (e_cal_backend_file_modify_object): remove the recurrence from the
4153         list also, and it to the list when adding it to the hash table.
4154         (remove_object_instance_cb): remove the recurrences from the list
4155         also.
4156         (e_cal_backend_file_receive_objects): remove cancelled meetings from the
4157         received toplevel component before merging it. Add/Update received
4158         objects approppriately for PUBLISH/REQUEST/REPLY.
4159
4160 2004-02-04  Rodrigo Moya <rodrigo@ximian.com>
4161
4162         * libecal/e-cal.c (open_async): g_object_unref the ECal, not the
4163         ECalAsyncData structure.
4164
4165 2004-02-03  Rodney Dawes  <dobey@ximian.com>
4166
4167         * backends/http/e-cal-backend-http.c: Don't keep a global SoupMessage
4168         (e_cal_backend_http_fianlize): Abort the session, as we may have
4169         multiple messages running
4170         (webcal_to_http_method): Return a copy if we aren't parsing a webcal:,
4171         as there is no need to return NULL, since we just check and copy the
4172         original anyway
4173         (retrieval_done): Handle redirection, and don't rely on a global
4174         SoupMessage for things, and don't try to set the SoupMessage to NULL
4175         (begin_retrieval_cb): Allow multiple messages, and disable automatic
4176         redirect handling, as we need to handle it ourselves
4177         (maybe_start_reload_timeout): We want minutes, not seconds, so we need
4178         to multiply the refresh value by 60000 instead of 1000
4179
4180 2004-02-03  Dan Winship  <danw@ximian.com>
4181
4182         * backends/http/e-cal-backend-http.c (e_cal_backend_http_finalize,
4183         retrieval_done): Don't unref the soup message; that happens
4184         automatically after the callback runs. #53645
4185
4186 2004-02-03  Harish K <kharish@novell.com>
4187
4188         * backends/groupwise/e-cal-backend-groupwise.c : 
4189         added get_deltas function as the callback to update cache.
4190         * backends/groupwise/e-gw-connection.[ch] (parse_response_status):
4191         Removed UpdateCacheHandle structure as
4192         the callback is now local to e-cal-backend-groupwise.c
4193         (e_gw_connection_get_deltas) : modified  the function to return 
4194         list of EGwItems.
4195         (set_attendee_list_from_soap_parameter) : moved to EGwItem.
4196         * backends/groupwise/e-gw-item.c : Added attendee_list to priv
4197         structure and updated e_gw_item_dispose to free it.
4198         (e_gw_item_new_from_soap_parameter) : added code to parse 'changes'
4199         element in item.
4200         
4201 2004-02-03  Chris Toshok  <toshok@ximian.com>
4202
4203         * backends/groupwise/e-gw-connection.c (parse_response_status):
4204         E_GW_CONNECTION_BAD_PARAMETER ->
4205         E_GW_CONNECTION_STATUS_BAD_PARAMETER.
4206
4207 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4208
4209         * backends/groupwise/e-gw-connection.[ch] (parse_response_status):
4210         added new error code.
4211
4212 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4213
4214         * backends/groupwise/e-cal-backend-groupwise.c (populate_cache):
4215         add all retrieved items to the cache, since calendar and tasks
4216         both use the same cache file.
4217         (e_cal_backend_groupwise_get_object,
4218         e_cal_backend_groupwise_get_object_list): only return items of the
4219         same kind as the backend.
4220         (e_cal_backend_groupwise_create_object): only allow storing of
4221         items of the same kind as the backend.
4222
4223 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4224
4225         * backends/groupwise/e-gw-item.c (e_gw_item_append_to_soap_message):
4226         fixed argument ordering in call to e_gw_message_write_string_parameter.
4227
4228 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4229
4230         * backends/groupwise/e-cal-backend-groupwise.c (populate_cache):
4231         changed to have an ECalBackendGroupwise as argument, and only add
4232         to the cache objects of the same kind as the backend.
4233         (connect_to_server): pass the ECalBackendGroupwise to populate_cache.
4234
4235         * backends/groupwise/e-gw-item.c (e_gw_item_to_calcomponent):
4236         set altrep to NULL on ECalComponentText's.
4237
4238 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4239
4240         * backends/groupwise/e-gw-item.c (e_gw_item_to_calcomponent): moved
4241         calls to e_cal_component_set_new_vtype up, so that the internal
4242         icalcomponent gets created. Added missing 'break' statement.
4243
4244 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4245
4246         * backends/groupwise/e-gw-connection.c
4247         (e_gw_connection_get_freebusy_info): fixed warning.
4248
4249         * backends/groupwise/e-cal-backend-groupwise.c
4250         (e_cal_backend_groupwise_remove_object): pass the container_id to
4251         e_gw_connection_remove_item.
4252
4253 2004-02-02  Rodrigo Moya <rodrigo@ximian.com>
4254
4255         * backends/groupwise/e-cal-backend-groupwise.c (connect_to_server):
4256         set the ESource's name to the name of the folder.
4257
4258 2004-02-01  JP Rosevear <jpr@ximian.com>
4259
4260         * libecal/e-cal.h: order the signals more sensibly
4261
4262         * libecal/e-cal.c (destroy_factories): use G_STRLOC
4263         (categories_changed_cb): set the size of the array so the length
4264         is set
4265         (e_cal_init): remove extra listener args, listen for new signals
4266
4267         * libecal/e-cal-marshal.list: add signal marshaller
4268
4269         * libecal/e-cal-listener.h: add new signals, remove function
4270         callback protos, update protos
4271
4272         * libecal/e-cal-listener.c (impl_notifyErrorOccurred): emit error
4273         signal
4274         (impl_notifyCategoriesChanged): emit categories changed signal
4275         (e_cal_listener_init): remove dead initializations
4276         (e_cal_listener_finalize): remove dead finalizations
4277         (e_cal_listener_class_init): add category and error signals
4278         (e_cal_listener_construct): remove error and category function
4279         params
4280         (e_cal_listener_new): ditto
4281
4282 2004-01-31  JP Rosevear  <jpr@ximian.com>
4283
4284         * libecal/e-cal.c (e_cal_is_read_only): return a proper GError and
4285         boolean
4286
4287         * backends/contacts/e-cal-backend-contacts.c
4288         (e_cal_backend_contacts_get_type): remove debug statements
4289         
4290 2004-01-30  Radek Doulik  <rodo@ximian.com>
4291
4292         * backends/contacts/e-cal-backend-contacts.c (contact_record_new):
4293         make sure anniversary/birthday components were created before
4294         using them
4295         (contact_record_free): ditto
4296         (contact_record_cb): ditto
4297
4298 2004-01-30  Rodrigo Moya <rodrigo@ximian.com>
4299
4300         * backends/http/Makefile.am: LOG_DOMAIN is ...http, not ...file.
4301
4302         * backends/http/e-cal-backend-http.c (reaload_cb): don't start a new
4303         updload if we're already uploading.
4304
4305 2004-01-29  Hans Petter Jansson  <hpj@ximian.com>
4306
4307         * backends/http/e-cal-backend-http.c (retrieval_done): Clear the
4308         is_loading flag.
4309         (begin_retrieval_cb): Set the is_loading flag, maybe start the reload
4310         timeout.
4311         (reload_cb): Implement.
4312         (maybe_start_reload_timeout): Implement.
4313         (e_cal_backend_http_open): Init reload timeout ID.
4314
4315 2004-01-29  Rodrigo Moya <rodrigo@ximian.com>
4316
4317         * backends/groupwise/e-gw-item.c (e_gw_item_append_to_soap_message):
4318         write all properties to the message.
4319
4320 2004-01-29  Rodrigo Moya <rodrigo@ximian.com>
4321
4322         * backends/groupwise/e-gw-item.[ch] (e_gw_item_new_from_soap_parameter,
4323         e_gw_item_to_cal_component, e_gw_item_get_id, e_gw_item_set_id,
4324         e_gw_item_get_creation_date, e_gw_item_set_creation_date,
4325         e_gw_item_get_start_date, e_gw_item_set_start_date,
4326         e_gw_item_get_classification, e_gw_item_set_classification,
4327         e_gw_item_get_accept_level, e_gw_item_set_accept_level,
4328         e_gw_item_get_subject, e_gw_item_set_subject,
4329         e_gw_item_get_priority, e_gw_item_set_priority,
4330         e_gw_item_get_message, e_gw_item_set_message,
4331         e_gw_item_get_completed, e_gw_item_set_completed,
4332         e_gw_item_get_due_date, e_gw_item_set_due_date,
4333         e_gw_item_get_end_date, e_gw_item_set_end_date,
4334         e_gw_item_get_place, e_gw_item_set_place): new functions.
4335         (e_gw_item_new_from_cal_component): renamed. Don't keep the
4336         ECalComponent, there's no need for it.
4337         (append_appointment_properties): don't use the private ECalComponent,
4338         it's not stored anymore.
4339         (e_gw_item_dispose): free all properties.
4340         (e_gw_item_append_to_soap_message): added support for tasks.
4341
4342         * backends/groupwise/e-gw-connection.c (e_gw_connection_get_items):
4343         (e_gw_connection_send_appointment): use
4344         e_gw_item_new_from_cal_component.
4345         (get_e_cal_component_from_soap_parameter, get_evo_date_from_string):
4346         removed.
4347         (e_gw_item_get_deltas, update_cache_item): disabled until migrated to
4348         use EGwItem's.
4349         (e_gw_connection_get_date_from_string): new function.
4350
4351         * backends/groupwise/e-gw-container.c (e_gw_container_finalize): fixed
4352         warnings.
4353
4354 2004-01-28  Rodrigo Moya <rodrigo@ximian.com>
4355
4356         * backends/groupwise/e-gw-item.c: added missing header.
4357
4358 2004-01-28  Rodrigo Moya <rodrigo@ximian.com>
4359
4360         Fixes #53465
4361
4362         * libecal/e-cal.c (e_cal_get_error_message): fixed typo.
4363
4364 2004-01-28  Rodrigo Moya <rodrigo@ximian.com>
4365
4366         * backends/groupwise/e-gw-item.[ch]
4367         (e_gw_item_append_to_soap_message): new function.
4368
4369         * backends/groupwise/e-gw-connection.c (e_gw_connection_send_item):
4370         finished implementation.
4371
4372 2004-01-28 Harish K <kharish@novell.com>
4373
4374         * calendar/backends/groupwise/e-cal-backend-groupwise.c :
4375         Pass the correct arguments to the callback function 
4376         * calendar/backends/groupwise/e-gw-connection.c :
4377         (e_gw_connection_get_container_id) : Initialize container_list.
4378         (e-gw-connection_get_deltas) : fixed the prototype to match
4379         the callback prototype
4380         (set_attendee_list_from_soap_param): modified 
4381         get_attendee_list_from_soap_param to update calendar component
4382         within the same function.
4383         (e-gw-connection_get_items) : check item types before creating
4384         e-cal-components.
4385         * calendar/backends/groupwise/e-gw-connection.h : added 
4386         CacheUpdateHandle structure. 
4387
4388 2004-01-28  JP Rosevear <jpr@ximian.com>
4389
4390         * libecal/e-cal.h: add protos
4391
4392         * libecal/e-cal.c (e_cal_new_system_calendar): return a pointer to
4393         the system calendar
4394         (e_cal_new_system_tasks): ditto for tasks
4395         (get_default): gets the default calendar/tasks
4396         (e_cal_get_default_calendar): gets the default calendar
4397         (e_cal_get_default_tasks): ditto for tasks
4398         (e_cal_set_default_calendar): sets the default calendar
4399         (e_cal_set_default_tasks): ditto for tasks
4400         (set_default_source): set the default calendar/tasks source
4401         (e_cal_set_default_calendar_source): set the default calendar
4402         source
4403         (e_cal_set_default_tasks_source): ditto for tasks
4404         (get_sources): get a source list given a gconf key
4405         (e_cal_get_calendars): get the calendar source list
4406         (e_cal_get_tasks): get the tasks source list
4407
4408 2004-01-28  Rodrigo Moya <rodrigo@ximian.com>
4409
4410         * backends/groupwise/e-gw-container.[ch]: new class to contain all
4411         information about containers in the server.
4412
4413         * backends/groupwise/e-gw-connection.[ch]
4414         (e_ge_connection_free_container_list): new function.
4415         (e_gw_connection_get_container_list): changed to return a list of
4416         EGwContainer's.
4417         (e_gw_connection_get_container_id): adapted to changes made in
4418         e_gw_connection_get_container_list().
4419
4420 2004-01-27  JP Rosevear <jpr@ximian.com>
4421
4422         * libecal/e-cal.h: update proto
4423
4424         * libecal/e-cal.c (e_cal_remove): rename from
4425         e_cal_remove_calendar
4426         (e_cal_get_error_message): key on new status name
4427
4428         * libecal/e-cal-types.h: rename
4429         E_CALENDAR_STATUS_CARD_ID_ALREADY_EXISTS to
4430         E_CALENDAR_STATUS_OBJECT_ID_ALREADY_EXISTS, delete duplicate enum
4431
4432         * idl/Evolution-DataServer-Calendar.idl: rename
4433         CardIdAlreadyExists to ObjectIdAlreadyExists
4434
4435         * libecal/e-cal-listener.c (convert_status): key on new name
4436         
4437         * backends/file/e-cal-backend-file.c
4438         (e_cal_backend_file_create_object): return object id already
4439         exists
4440
4441 2004-01-27  Rodrigo Moya <rodrigo@ximian.com>
4442
4443         * backends/groupwise/e-gw-connection.c
4444         (get_e_cal_component_from_soap_parameter): not having the priority
4445         or dueDate properties is not an error.
4446
4447 2004-01-27  Rodrigo Moya <rodrigo@ximian.com>
4448
4449         * backends/groupwise/e-gw-connection.c
4450         (get_attendee_list_from_soap_parameter): don't allocate memory for
4451         ECalComponentAttendee's fields, make them just point to the values
4452         contained in the SoupSoapResponse.
4453         (get_e_cal_component_from_soap_parameter): don't free
4454         ECalComponentAttendee's fields, free the structure.
4455         (e_gw_connection_send_item): fixed warnings.
4456
4457         * backends/groupwise/e-cal-backend-groupwise.c
4458         (e_cal_backend_groupwise_get_object):
4459         (e_cal_backend_groupwise_remove): lock/unlock the mutex when accessing
4460         private fields.
4461
4462 2004-01-27  JP Rosevear <jpr@ximian.com>
4463
4464         * libedata-cal/e-cal-backend-cache.c (get_filename_from_uri): take
4465         a const uri
4466         (e_cal_backend_cache_set_property): pass a const value
4467         (e_cal_backend_cache_constructor): uri is const
4468         (e_cal_backend_cache_put_component): rid is const
4469         (e_cal_backend_cache_get_components): distinguish between GList
4470         and GSList
4471
4472         * libedata-cal/e-cal-backend-sexp.c (func_uid): make sure we
4473         always set a return value
4474
4475 2004-01-27  JP Rosevear <jpr@ximian.com>
4476
4477         * backends/groupwise/e-gw-connection.c
4478         (get_e_cal_component_from_soap_parameter): description is not
4479         const
4480
4481 2004-01-27  Rodrigo Moya <rodrigo@ximian.com>
4482
4483         * backends/groupwise/e-cal-backend-groupwise.c
4484         (e_cal_backend_groupwise_start_query): fixed memory leaks and use
4485         g_list_* functions for GList's, not g_slist_*.
4486         (match_object_sexp, match_recurrence_sexp): removed unneeded functions,
4487         we match the object directly in get_object_list.
4488         (e_cal_backend_groupwise_start_query): call get_object_list to retrieve
4489         the matched objects and call e_data_cal_view_notify_* functions
4490         appropriately.
4491
4492 2004-01-26  Harish K <kharish@novell.com>
4493
4494         * calendar/backends/groupwise/e-cal-backend-groupwise.c :
4495         (e_cal_backend_groupwise_internal_get_default_timezone,
4496         e_cal_backend_groupwise_internal_get_timezone) : added and 
4497         implemented.
4498         (e_cal_backend_groupwise_get_object_list) : fixed incorrect
4499         access to the list.
4500         (e_cal_backend_groupwise_start_query) : fixed compiler warnings.
4501          
4502         * calendar/backends/groupwise/e-gw-connection.c :
4503         (e_gw_connection_get_container_id) : Modified elements 'Folders' to 
4504         the 'folders' due to change in the server implementation.
4505         Fixed compiler warnings.
4506
4507 2004-01-24  Rodrigo Moya <rodrigo@ximian.com>
4508
4509         * backends/http/e-cal-backend-http.c: make it use
4510         ECalBackendCache for its cache, and libsoup for the HTTP
4511         retrieval.
4512         (retrieval_progress_cb, uri_to_cache_dir, ensure_cache_dir): removed
4513         unneeded functions.
4514         (e_cal_backend_http_finalize): cancel Soup message here, if any, and
4515         close Soup session.
4516         (begin_retrieval_cb): use soup_session_queue_message() to send the
4517         HTTP request to the server.
4518         (retrieval_done): update the cache on success, and changed to be the
4519         callback for the Soup async message.
4520         (e_cal_backend_http_open): create a ECalBackendCache, not an
4521         ECalBackendFile.
4522         (e_cal_backend_http_remove): remove the cache.
4523         (e_cal_backend_http_is_loaded, e_cal_backend_http_get_default_object,
4524         e_cal_backend_http_get_object, e_cal_backend_http_get_timezone,
4525         e_cal_backend_http_add_timezone,
4526         e_cal_backend_http_set_default_timezone,
4527         e_cal_backend_http_get_object_list, e_cal_backend_http_start_query,
4528         e_cal_backend_http_get_default_timezone,
4529         e_cal_backend_http_get_timezone):
4530         dont proxy calls to the file backend, use the cache instead.
4531         (e_cal_backend_http_create_object, e_cal_backend_http_modify_object,
4532         e_cal_backend_http_remove_object, e_cal_backend_http_receive_objects,
4533         e_cal_backend_http_send_objects):
4534         the HTTP backend is read only, return permission denied error.
4535
4536         * backends/http/Makefile.am: added SOUP_CFLAGS|LIBS.
4537
4538         * backends/groupwise/Makefile.am: s/GROUPWISE/SOUP.
4539
4540 2004-01-23  Harish K <kharish@novell.com>
4541
4542         * calendar/backends/groupwise/e-cal-backend-groupwise.c
4543           Removed update_cache function and refactored the call-back 
4544           to use e-gw-connection_get_deltas instead of update_cache.
4545         * calendar/backends/groupwise/e-gw-connection.c
4546           use g_new0 instead of g_malloc0 and added NULL check for 
4547           validating the soap responses. 
4548           (get_e_cal_component_from_soap_parameter) added code to
4549           parse 'message' into description.
4550           
4551 2004-01-22 Harish K <kharish@novell.com>
4552
4553         * calendar/backends/groupwise/e-cal-backend-groupwise.c
4554           (populate_cache, e_cal_backend_groupwise_get_object_list,
4555           e_cal_backend_groupwise_get_free_busy ) :changed implementation
4556           to use GList instead of GSList, aligning to the rest of the
4557           backends.
4558           (e_cal_backend_groupwise_get_changes, update_cache): implemented.
4559
4560         * calendar/backends/groupwise/e-gw-connection.c
4561           (get_attendee_list_from_soap_parameter) : modified 
4562           get_attendee_list_from_string to handle recipients element.
4563           (get_e_cal_component_from_soap_parameter) -fixed memory leaks.
4564           (update_cache_item) : implemented.
4565           (e_gw_connection_get_freebusy_info, start_freebusy_session)
4566           GSList to GList changes.
4567
4568         * calendar/backends/groupwise/e-gw-connection.h : updated 
4569           declarations for the above changes.
4570
4571         * calendar/libedata-cal/e-cal-backend-cache.[ch] :
4572           (e_cal_backend_cache_get_components) : return GList instead of
4573           GSList.
4574           
4575 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4576
4577         * backends/groupwise/e-cal-backend-groupwise.c
4578         (e_cal_backend_groupwise_remove): remove the cache from disk
4579         when removing the calendar.
4580
4581         * backends/file/e-cal-backend-file.c
4582         (e_cal_backend_file_remove): added missing call to g_dir_close().
4583
4584 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4585
4586         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove):
4587         use the full path when removing files.
4588
4589 2004-01-21  JP Rosevear <jpr@ximian.com>
4590
4591         * libecal/Makefile.am: don't build client test
4592
4593 2004-01-21  JP Rosevear <jpr@ximian.com>
4594
4595         * tests/ecal/test-ecal.c: the beginnings of a test client
4596
4597         * tests/ecal/Makefile.am: build the test client
4598
4599         * tests/Makefile.am: add ecal subdir
4600
4601         * Makefile.am: add tests subdir
4602
4603 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4604
4605         * libecal/e-cal.c (e_cal_new): create the component listener
4606         here, so that backend_died_cb gets called when the backend dies.
4607
4608 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4609
4610         * backends/groupwise/e-cal-backend-groupwise.c
4611         (connect_to_server): added code for retrieving the container ID
4612         for tasks also.
4613
4614 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4615
4616         * backends/groupwise/e-cal-backend-groupwise.c
4617         (e_cal_backend_groupwise_open): added missing g_mutex_unlock
4618         call.
4619
4620 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4621
4622         * backends/groupwise/e-gw-connection.c
4623         (get_e_cal_component_from_soap_parameter): check arguments before
4624         passing them to functions to avoid warnings at runtime.
4625
4626 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4627
4628         * backends/file/e-cal-backend-file.c (create_cal): create
4629         directory tree to contain the calendar.
4630
4631 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4632
4633         * backends/groupwise/e-gw-connection.c
4634         (get_e_cal_component_from_soap_parameter): return error when
4635         the type of the component does not match the supported ones.
4636
4637 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4638
4639         Fixes #51705
4640
4641         * backends/file/e-cal-backend-file.c (e_cal_backend_file_remove):
4642         remove all files in the directory and the directory itself.
4643
4644 2004-01-21  Rodrigo Moya <rodrigo@ximian.com>
4645
4646         * backends/groupwise/e-cal-backend-groupwise.c (match_recurrence_sexp,
4647         match_object_sexp): use a GSList, which is what we are passed
4648         to e_cal_backend_groupwise_get_object_list.
4649         (e_cal_backend_groupwise_start_query): fixed warning.
4650
4651 2004-01-20  Rodrigo Moya <rodrigo@ximian.com>
4652
4653         * backends/groupwise/e-cal-backend-groupwise.c
4654         (e_cal_backend_groupwise_set_mode): split out the connection code.
4655         (connect_to_server): and moved it here.
4656         (e_cal_backend_groupwise_open): call connect_to_server, not
4657         set_mode, to avoid online/offline notifications.
4658
4659 2004-01-19  Harish K <kharish@novell.com> 
4660
4661         * backends/groupwise/e-gw-connection.c :
4662         (get_e_cal_component_from_soap_parameter):
4663         'due' property set for TODOs instead of dtend.
4664         added code for mapping all values of GW data to
4665         percent, priority, classification, transparency
4666         properties in ECalComponent.
4667         Fixed compiler warnings.
4668
4669 2004-01-18  Harish K <kharish@novell.com>
4670
4671         * backends/groupwise/e-cal-backend-groupwise.c :
4672         (e_cal_backend_groupwise_get_free_busy): Implemented.
4673         * backends/groupwise/e-gw-connection.[ch] :
4674         (e_gw_connection_get_deltas) : Implemented parsing of
4675         the response.
4676         (e_gw_connection_get_free_busy_info) : Implemented
4677         including private functions  
4678         (get_attendee_list_from_string, start_freebusy_session and
4679         close_freebusy_session).
4680         (e_gw_connection_get_container_id) : remove unused variable.
4681         (get_e_cal_component_from_soap_parameter) : added code to 
4682         set attendee_list to the e_cal_component.
4683         (get_evo_date_from_string) : fixed typo.
4684
4685 2004-01-16  JP Rosevear <jpr@ximian.com>
4686
4687         * backends/file/e-cal-backend-file.c (save): remove test bits
4688
4689 2004-01-16  JP Rosevear <jpr@ximian.com>
4690
4691         * libecal/e-cal.c (categories_changed_idle_cb): remove debug
4692         statement
4693
4694 2004-01-16  Rodrigo Moya <rodrigo@ximian.com>
4695
4696         * libecal/e-cal.c (e_cal_open): return AUTH_REQUIRED error if
4697         we don't get a password from the authentication function.
4698
4699         * backends/file/e-cal-backend-file.c
4700         (e_cal_backend_file_modify_object): store the old object before
4701         actually losing it.
4702
4703 2004-01-16  JP Rosevear <jpr@ximian.com>
4704
4705         * libecal/e-cal.c: name space the idle data structs properly
4706
4707 2004-01-16  JP Rosevear <jpr@ximian.com>
4708
4709         * libecal/e-cal.c (backend_error_idle_cb): idle handler to
4710         actually proxy the signal emission to the main thread
4711         (backend_error_cb): use above
4712         (categories_changed_idle_cb): idle handler for proxying
4713         (categories_changed_cb): use above
4714
4715         Fixes #52743
4716         
4717 2004-01-16  Christian Neumair  <chris@gnome-de.org>
4718
4719         * libedata-cal/e-cal-backend-sexp.c (func_uid):
4720         Error message string fix.
4721
4722 2004-01-16  Rodrigo Moya <rodrigo@ximian.com>
4723
4724         * libedata-cal/e-cal-backend-cache.c (get_filename_from_uri): use
4725         ~/.evolution/cache/calendar for the cache files.
4726
4727         * backends/groupwise/e-cal-backend-groupwise.c
4728         (e_cal_backend_groupwise_get_object_list): lock/unlock the
4729         private mutex.
4730
4731 2004-01-16  Rodrigo Moya <rodrigo@ximian.com>
4732
4733         * backends/groupwise/e-gw-connection.c
4734         (e_gw_connection_get_container_id): fixed duplicated variable name.
4735
4736         * backends/groupwise/e-cal-backend-groupwise.c
4737         (e_cal_backend_groupwise_open): removed check for 'only_if_exists',
4738         we'll return NoSuchCal error if we can't find the calendar to open.
4739
4740 2004-01-15  Mark McLoughlin  <mark@skynet.ie>
4741
4742         * libecal/e-cal-listener.c: (impl_notifyCalSetMode),
4743         (impl_notifyErrorOccurred), (impl_notifyCategoriesChanged):
4744         Remove debugging spew.
4745
4746 2004-01-15  Radek Doulik  <rodo@ximian.com>
4747
4748         * libecal/e-cal.c (e_cal_is_read_only): fix the return value, it
4749         was returning ECalendarStatus instead of bool, it compares status
4750         to E_CALENDAR_STATUS_OK now
4751
4752 2004-01-14  Rodrigo Moya <rodrigo@ximian.com>
4753
4754         * backends/groupwise/e-cal-backend-groupwise.c
4755         (e_cal_backend_groupwise_open): if trying to create a new calendar,
4756         return an error, since we don't support that.
4757         (e_cal_backend_groupwise_remove): return "Permission Denied".
4758
4759 2004-01-14  Harish K <kharish@novell.com>
4760
4761         * libedata-cal/e-cal-backend-cache.c
4762         (e_cal_backend_cache_get_components): return a list of e-cal-components
4763         rather than e-cal-component strings.
4764
4765 2004-01-13  JP Rosevear <jpr@ximian.com>
4766
4767         * backends/groupwise/e-gw-connection.c
4768         (get_e_cal_component_from_soap_parameter): remove C99 declaration
4769
4770 2004-01-13  Rodrigo Moya <rodrigo@ximian.com>
4771
4772         * backends/groupwise/e-gw-item.[ch] (e_gw_item_new_appointment):
4773         added a 'container' argument.
4774         (e_gw_item_dispose): free new field in the private structure.
4775
4776         * backends/groupwise/e-gw-connection.[ch]
4777         (e_gw_connection_send_appointment): added a 'container' argument.
4778
4779         * backends/groupwise/e-cal-backend-groupwise.c
4780         (e_cal_backend_groupwise_create_object,
4781         e_cal_backend_groupwise_modify_object): adapted to changes in
4782         e_gw_connection_send_appointment.
4783         (e_cal_backend_groupwise_receive_objects): implemented.
4784
4785 2004-01-13  Rodrigo Moya <rodrigo@ximian.com>
4786
4787         * backends/groupwise/e-gw-connection.[ch]
4788         (e_gw_connection_get_items): moved the folder retrieving code to...
4789         (e_gw_connection_get_container_id): ...here, new function.
4790
4791         * backends/groupwise/e-cal-backend-groupwise.c: added 'container_id'
4792         field to private structure.
4793         (e_cal_backend_groupwise_finalize): free the container_id.
4794         (populate_cache): pass the container_id to e_gw_connection_get_items.
4795         (e_cal_backend_groupwise_set_mode): retrieve the container ID after
4796         connecting to the server.
4797
4798 2004-01-13  Rodrigo Moya <rodrigo@ximian.com>
4799
4800         * backends/groupwise/e-gw-connection.[ch] (logout): unref the message
4801         if we dont get a response, not the response, which is NULL, and unref
4802         it also before exiting the function.
4803         (e_gw_connection_remove_item): new function.
4804
4805         * backends/groupwise/e-cal-backend-groupwise.c
4806         (e_cal_backend_groupwise_remove_object): implemented.
4807
4808 2004-01-13  Rodrigo Moya <rodrigo@ximian.com>
4809
4810         * libecal/e-cal-component.[ch] (e_cal_component_get_recurid_as_string):
4811         new function, moved from the file and groupwise backends.
4812
4813         * libedata-cal/e-cal-backend-cache.[ch]
4814         (e_cal_backend_cache_put_component): changed to get an ECalComponent.
4815
4816         * backends/groupwise/e-gw-item.[ch]: new class for managing items
4817         to be sent to the server.
4818
4819         * backends/groupwise/e-gw-connection.[ch] (e_gw_connection_send_item,
4820         e_gw_connection_send_appointment): new functions.
4821         (e_gw_connection_get_container_list): made it public.
4822
4823         * backends/groupwise/e-cal-backend-groupwise.c
4824         (e_cal_backend_groupwise_create_object): finished implementation.
4825         (e_cal_backend_groupwise_modify_object): implemented.
4826         (get_rid_string): removed.
4827         (populate_cache): adapted to changes in ECalBackendCache, and use
4828         e_cal_component_get_recurid_as_string instead of the local
4829         get_rid_string().
4830
4831         * backends/groupwise/Makefile.am: added new files.
4832
4833         * backends/file/e-cal-backend-file.c (get_rid_string): removed.
4834         (add_component, e_cal_backend_file_modify_object): use
4835         e_cal_component_get_recurid_as_string instead of the local
4836         get_rid_string().
4837
4838 2004-01-13 Harish K <kharish@novell.com>
4839
4840         * calendar/backends/groupwise/e-cal-backend-groupwise.c
4841           (populate_cache): fixed memory leaks.
4842           (e_cal_backend_groupwise_open): return function with success when
4843           invoked again after the cache has been created already.
4844           (e_cal_backend_groupwise_get_object_list): implemented.
4845           (e_cal_backend_groupwise_start_query): implemented.
4846
4847         * calendar/backends/groupwise/e-gw-connection.c
4848           (get_e_cal_component_from_soap_parameter): modification to strip
4849           date and time separators in argument before calling
4850           icaltime_from_string.
4851
4852         * calendar/backends/groupwise/e-gw-connection.h
4853           (e_gw_connection_get_delta): - Added declaration.
4854
4855         * calendar/libedata-cal/e-cal-backend-cache.c
4856           (e_cal_backend_cache_constructor): Added the function and updated
4857           class_init to use it.
4858           (e_cal_backend_cache_get_components): Added method to wrap 
4859           e_file_cache_get_objects for better abstraction.
4860           (e_cal_backend_cache_set_property): fixed NULL termination to argument
4861           list.
4862
4863 2004-01-12  Rodrigo Moya <rodrigo@ximian.com>
4864
4865         * backends/groupwise/e-cal-backend-groupwise.c
4866         (e_cal_backend_groupwise_open):
4867         * backends/http/e-cal-backend-http.c (e_cal_backend_http_open): made
4868         the backends start online always, until we fix the online/offline
4869         handling via the shell.
4870
4871 2004-01-12  Rodrigo Moya <rodrigo@ximian.com>
4872
4873         * backends/groupwise/e-gw-connection.[ch]
4874         (e_gw_connection_get_user_name, e_gw_connection_get_user_uuid): new
4875         functions.
4876
4877 2004-01-12  Rodrigo Moya <rodrigo@ximian.com>
4878
4879         * backends/http/e-cal-backend-http.c (uri_to_cache_dir): fixed leak.
4880
4881 2004-01-10  Rodrigo Moya <rodrigo@ximian.com>
4882
4883         * libedata-cal/e-cal-backend-sexp.c (func_occur_in_time_range):
4884         don't leak the dates retrieved with e_cal_component_get_dtstart/dtend.
4885
4886         * libedata-cal/e-cal-backend-sync.c (_e_cal_backend_get_timezone):
4887         free the 'object' string returned by the provider's get_timezone
4888         method.
4889
4890         * libedata-cal/e-data-cal-factory.c
4891         (e_data_cal_factory_register_method):
4892         g_free the string returned by g_ascii_strdown().
4893
4894 2004-01-10  Rodrigo Moya <rodrigo@ximian.com>
4895
4896         * backends/groupwise/e-cal-backend-groupwise.c
4897         (e_cal_backend_groupwise_get_timezone): fixed copy/paste typo.
4898         (e_cal_backend_groupwise_remove, e_cal_backend_groupwise_add_timezone,
4899         e_cal_backend_groupwise_set_default_timezone,
4900         e_cal_backend_groupwise_get_object_list,
4901         e_cal_backend_groupwise_get_free_busy,
4902         e_cal_backend_groupwise_get_changes,
4903         e_cal_backend_groupwise_discard_alarm,
4904         e_cal_backend_groupwise_modify_object,
4905         e_cal_backend_groupwise_remove_object,
4906         e_cal_backend_groupwise_receive_objects,
4907         e_cal_backend_groupwise_send_objects):
4908         fixed compilation warnings.
4909
4910         * backends/groupwise/Makefile.am:
4911         * backends/groupwise/groupwise-config-listener.c: removed unused file.
4912
4913 2004-01-09  Harish K <kharish@novell.com>
4914
4915         * backends/groupwise/e-cal-backend-groupwise.c
4916         (populate_cache): implemented.
4917
4918         * backends/groupwise/e-gw-connection.h:
4919         added declaration for e_gw_connection_get_items.
4920
4921         * backends/groupwise/e-gw-connection.c:
4922         (e-gw-connection-get-items) :implementation to obtain 
4923         calendar data from GW using SOAP.
4924
4925 2004-01-08  JP Rosevear <jpr@ximian.com>
4926
4927         * libecal/e-cal.c (convert_type): kill warning
4928         (e_cal_get_timezone): fix preconditions, tzid being NULL is valid,
4929         set *zone to NULL if we short circuit on a local time
4930
4931 2004-01-07  Rodrigo Moya <rodrigo@ximian.com>
4932
4933         * backends/groupwise/e-cal-backend-groupwise.c
4934         (e_cal_backend_groupwise_open): keep the username and password
4935         passed from the client, and don't open the connection here.
4936         (e_cal_backend_groupwise_set_mode): ...do it here, when we change
4937         mode to 'online'.
4938         (e_cal_backend_groupwise_get_mode): implemented.
4939         (e_cal_backend_groupwise_is_loaded): check the cache, not the
4940         connection, since we can be loaded without being online.
4941         (populate_cache): made it static.
4942
4943         * backends/http/e-cal-backend-http.c (begin_retrieval_cb): only
4944         begin the retrieval if we are online.
4945
4946         * libecal/e-cal-util.h: added cal_mode_to_corba macro from
4947         e-cal-backend-http.c.
4948
4949 2004-01-07  Rodrigo Moya <rodrigo@ximian.com>
4950
4951         * libecal/e-cal.c (convert_type): removed g_assert_not_reached.
4952
4953 2004-01-07  Rodrigo Moya <rodrigo@ximian.com>
4954
4955         * libecal/e-cal.c (e_cal_get_alarms_for_object): pass the correct
4956         callback data for e_cal_resolve_tzid_cb().
4957
4958 2004-01-07  JP Rosevear <jpr@ximian.com>
4959
4960         * libedata-cal/Makefile.am: remove DISABLE_DEPRECATED flags
4961
4962         * libecal/Makefile.am: ditto
4963
4964 2004-01-07  Rodrigo Moya <rodrigo@ximian.com>
4965
4966         * libecal/e-cal.c (build_component_alarms_list): clone the icalcomponent
4967         to avoid having a pointer to an object that is freed afterwards, in
4968         e_cal_get_alarms_in_range.
4969         (e_cal_get_alarms_in_range): use icalcomponent_free to free the objects
4970         in the list returned by e_cal_get_object_list.
4971
4972 2004-01-07  Rodrigo Moya <rodrigo@ximian.com>
4973
4974         * libecal/e-cal.c (build_component_alarms_list): pass the correct
4975         data (an ECal, not an icalcomponent) to e_cal_resolve_tzid_cb.
4976
4977 2004-01-06  JP Rosevear <jpr@ximian.com>
4978
4979         * libedata-cal/e-cal-backend-sexp.c (func_uid): implement uid
4980         checking for sexps
4981         (e_cal_backend_sexp_new): use nice glib macro to count sexp
4982         elements
4983
4984         * libedata-cal/e-cal-backend-cache.c: guard config.h include and
4985         include string.h to kill warning
4986
4987 2004-01-06  Rodrigo Moya <rodrigo@ximian.com>
4988
4989         * libecal/e-cal.c (build_component_alarms_list): the list returned
4990         by e_cal_get_object_list() contains icalcomponent's already,
4991         so no need to parse them as strings.
4992         (e_cal_open): fixed warning.
4993
4994 2004-01-05  Rodrigo Moya <rodrigo@ximian.com>
4995
4996         * backends/groupwise/e-gw-message.[ch]
4997         (e_gw_message_write_string_parameter): added 'prefix' argument, for
4998         not hard-coding all parameters to the "types" prefix.
4999
5000         * backends/groupwise/e-gw-connection.c (logout, e_gw_connection_new,
5001         e_gw_connection_get_items): pass the XML prefix to
5002         e_gw_message_write_string_parameter().
5003
5004 2004-01-05  Rodrigo Moya <rodrigo@ximian.com>
5005
5006         * libedata-cal/e-cal-backend-cache.[ch] (e_cal_backend_cache_put_object):
5007         merged _add_component and _replace_component into a single function.
5008
5009         * backends/groupwise/e-cal-backend-groupwise.c (populate_cache):
5010         use e_cal_backend_cache_put_object, and let the cache deal with
5011         additions/replacements.
5012
5013 2004-01-05  Sivaiah Nallagatla <snallagatla@novell.com>
5014
5015         * backends/groupwise/groupwise-config-listener.[ch] : new class implementing addition,
5016         removal, modification of e-sources for calender and tasks for groupwise accounts.
5017         
5018         * backends/groupwise/Makefile.am : added above two files in  Makefile.am 
5019
5020 2004-01-05  Christian Neumair  <chris@gnome-de.org>
5021
5022         * libedata-cal/e-cal-backend-sexp.c: Generalize some strings.
5023
5024 2003-12-24  Rodrigo Moya <rodrigo@ximian.com>
5025
5026         * backends/groupwise/e-gw-connection.c (e_gw_connection_get_items):
5027         fixed warning.
5028
5029 2003-12-24  Rodrigo Moya <rodrigo@ximian.com>
5030
5031         * backends/groupwise/e-gw-message.[ch] (e_gw_message_new_with_header):
5032         added 'session_id' argument, to add the <Header> SOAP part if not NULL.
5033
5034         * backends/groupwise/e-gw-connection.c (e_gw_connection_get_items): use
5035         e_gw_message_new_with_header to create the SOAP message. Also, unref
5036         the correct object if we don't get a response from
5037         e_gw_connection_send_message, or we when we can't find a parameter in
5038         the response.
5039         (logout): pass session ID to e_gw_message_new_with_header().
5040         (e_gw_connection_new): ditto.
5041
5042         * backends/groupwise/e-cal-backend-groupwise.c: removed 'icalcomp'
5043         field from the ECalBackendGroupwisePrivate structure.
5044         (e_cal_backend_groupwise_get_timezone): don't use priv->icalcomp
5045         to retrieve timezones, since that object is empty, use the libical's
5046         built-in timezones.
5047         (populate_cache): fixed C99'isms and re-enabled g_mutex_lock/_unlock
5048         calls.
5049
5050 2003-12-24  Harish Krishnaswamy <kharish@novell.com>
5051
5052         * backends/groupwise/e-gw-connection.[ch] (e_gw_connection_get_items):
5053         new function.
5054
5055         * backends/groupwise/e-cal-backend-groupwise.c (populate_cache): new
5056         function to populate the cache with all objects from the server.
5057         (e_cal_backend_groupwise_open): call populate_cache when opening the
5058         connection, to get all objects from the server.
5059         (e_cal_backend_groupwise_get_default_object): implemented.
5060         (e_cal_backend_groupwise_get_timezone): implemented.
5061
5062 2003-12-22  Rodrigo Moya <rodrigo@ximian.com>
5063
5064         * libedata-cal/e-cal-backend-sexp.c (func_has_alarms): removed useless
5065         'has_to_have_alarms' variable.
5066
5067 2003-12-22  JP Rosevear <jpr@ximian.com>
5068
5069         * backends/file/e-cal-backend-file.c
5070         (e_cal_backend_file_modify_object): check the kind with the parent
5071         (e_cal_backend_file_create_object): ditto
5072
5073 2003-12-21  JP Rosevear <jpr@ximian.com>
5074
5075         * libecal/e-cal.h: update protos
5076
5077         * libecal/e-cal.c: use ECalSourceType
5078         (convert_type): convert and ECalSourceType to a corba equivalent
5079         (fetch_corba_cal): use ECalSourceType
5080         (e_cal_new): ditto
5081         (e_cal_new_from_uri): ditto
5082         (e_cal_generate_instances): does not need a type arg
5083
5084         * libecal/e-cal-util.h: remove CalObjType
5085
5086         * libecal/client-test.c (create_client): use ECalSourceType
5087         (main): ditto
5088
5089 2003-12-21  JP Rosevear <jpr@ximian.com>
5090
5091         * backends/file/e-cal-backend-file.c (open_cal): set the uri
5092         before scanning the vcalendar because we may have to fix duplicate
5093         UIDs (and hence save the calendar)
5094
5095 2003-12-19 JP Rosevear <jpr@ximian.com>
5096
5097         * libecal/e-cal.c (e_cal_get_alarms_in_range): create a valid sexp
5098
5099 2003-12-19  Rodrigo Moya <rodrigo@ximian.com>
5100
5101         * libecal/e-cal.[ch] (e_cal_class_init):  removed 'forget_password'
5102         signal, since it's not used anywhere.
5103
5104 2003-12-19  Rodrigo Moya <rodrigo@ximian.com>
5105
5106         * idl/Evolution-DataServer-Calendar.idl: added 'username' and 'password'
5107         arguments to Cal::open method, so that we can send authentication
5108         from the clients.
5109
5110         * libedata-cal/e-cal-backend.[ch] (e_cal_backend_open):
5111         * libedata-cal/e-cal-backend-sync.[ch] (e_cal_backend_sync_open,
5112         _e_cal_backend_open):
5113         * libedata-cal/e-data-cal.c (impl_Cal_open):
5114         * backends/http/e-cal-backend-http.c (e_cal_backend_http_open):
5115         * backends/groupwise/e-cal-backend-groupwise.c
5116         (e_cal_backend_groupwise_open):
5117         * backends/file/e-cal-backend-file.c (e_cal_backend_file_open): adapted
5118         to changes in above method.
5119
5120         * libecal/e-cal.[ch]: added E_CAL_LOAD_AUTHENTICATING to LoadState enum.
5121         (e_cal_open): check with the ESource if the server needs authentication
5122         or not, and if so, ask the client's provided auth function. Call
5123         GNOME_Evolution_Calendar_Cal_Open with the new arguments.
5124
5125 2003-12-18  Rodrigo Moya <rodrigo@ximian.com>
5126
5127         * backends/groupwise/e-cal-backend-groupwise.c: use a GMutex for
5128         thread safety.
5129         (e_cal_backend_groupwise_init): create the GMutex.
5130         (e_cal_backend_groupwise_finalize): free the GMutex.
5131         (e_cal_backend_groupwise_open): use the mutex.
5132
5133 2003-12-17  JP Rosevear <jpr@ximian.com>
5134
5135         * backends/groupwise/e-gw-connection.c (e_gw_connection_init):
5136         create a synchronous session
5137
5138 2003-12-17  Hans Petter Jansson  <hpj@ximian.com>
5139
5140         * libecal/e-cal.c (e_cal_finalize): Unref source.
5141         (fetch_corba_cal): Ref and keep source.
5142         (e_cal_get_source): Implement.
5143
5144 2003-12-17  Rodrigo Moya <rodrigo@ximian.com>
5145
5146         * backends/groupwise/create-account.c: added support for specifying
5147         a password, since we need one to connect to the server.
5148
5149 2003-12-16  Rodrigo Moya <rodrigo@ximian.com>
5150
5151         * backends/groupwise/e-gw-connection.c (e_gw_connection_new): no need to
5152         set the namespace for "types:", it's already set in
5153         e_gw_message_new_with_header().
5154
5155 2003-12-16  Rodrigo Moya <rodrigo@ximian.com>
5156
5157         * backends/groupwise/e-gw-message.c (e_gw_message_new_with_header):
5158         added the namespace for the SOAP types.
5159
5160         * backends/groupwise/e-gw-connection.c (logout): fixed copy-paste typo.
5161
5162         * backends/groupwise/soap-test.c (idle_cb): unref the EGwConnection
5163         object, so that the logout message is sent to the server.
5164
5165 2003-12-16  Rodrigo Moya <rodrigo@ximian.com>
5166
5167         * backends/groupwise/e-cal-backend-groupwise.c
5168         (e_cal_backend_groupwise_open): return an AuthenticationFailed error
5169         when we can't open the connection.
5170
5171 2003-12-16  JP Rosevear <jpr@ximian.com>
5172
5173         * libecal/e-cal.c (e_cal_get_free_busy): the info is already in
5174         ECalComponent form, no need to process it again, from Gary Ekker
5175         <gekker@novell.com>
5176
5177         Fixes #52218
5178         
5179 2003-12-16  Rodrigo Moya <rodrigo@ximian.com>
5180
5181         * backends/groupwise/e-gw-connection.c (parse_response_status): map
5182         some error codes.
5183         (e_gw_connection_new): retrieve all the info returned in the UserInfo
5184         type (name, email and uuid).
5185         (e_gw_connection_disposee): free new private fields.
5186
5187 2003-12-16 Sivaiah Nallagatla <snallagatla@novell.com>
5188         
5189         * backends/groupwise/e-gw-connection.h
5190         * backends/groupwise/e-gw-connection.c (e_gw_connection_new,
5191         e_gw_connection_get_user_email)
5192         * backends/groupwise/e-cal-backend-groupwise.c (e_cal_backend_groupwise_get_ldap_attribute,
5193         e_cal_backend_groupwise_get_cal_address, e_cal_backend_groupwise_is_read_only,
5194         e_cal_backend_groupwise_get_alarm_email_address, e_cal_backend_groupwise_get_static_capabilities
5195         e_cal_backend_groupwise_open ): added implementation for all the apis listed above
5196
5197 2003-12-15  JP Rosevear <jpr@ximian.com>
5198
5199         * libecal/e-cal-listener.c (e_cal_listener_class_init): fix the
5200         number of parameters for get free busy and get_changes
5201
5202 2003-12-15  Rodrigo Moya <rodrigo@ximian.com>
5203
5204         * backends/e-cal-backend-sync.c (_e_cal_backend_sync_get_ldap_attribute,
5205         _e_cal_backend_sync_get_static_capabilities,
5206         _e_cal_backend_sync_get_alarm_email_address): call the correct
5207         e_cal_backend_sync_* functions, typo pointed out by Siva.
5208
5209 2003-12-15  Rodrigo Moya <rodrigo@ximian.com>
5210
5211         * backends/file/e-cal-backend-file.c
5212         (e_cal_backend_file_get_static_capabilities): g_strdup the
5213         'capabilities' argument, since it is expected to be freed in
5214         e-cal-backend-sync.c.
5215
5216         * backends/http/e-cal-backend-http.c
5217         (e_cal_backend_http_get_static_capabilities): ditto.
5218
5219 2003-12-14  JP Rosevear <jpr@ximian.com>        
5220
5221         * libecal/e-cal-component.c (set_datetime): don't remove and then
5222         free the param, lest we double free it
5223
5224         Fixes #51633
5225
5226 2003-12-14  JP Rosevear <jpr@ximian.com>
5227
5228         * libedata-cal/e-data-cal.c (e_data_cal_notify_free_busy): call
5229         the correct notification method
5230
5231 2003-12-13  Rodrigo Moya <rodrigo@ximian.com>
5232
5233         * backends/groupwise/Makefile.am: set the correct G_LOG_DOMAIN.
5234
5235 2003-12-12  Rodrigo Moya <rodrigo@ximian.com>
5236
5237         * backends/groupwise/e-gw-message.c (e_gw_message_new_with_header):
5238         added SOAPAction header to the request.
5239
5240 2003-12-12  Rodrigo Moya <rodrigo@ximian.com>
5241
5242         * backends/groupwise/e-gw-message.c (e_gw_message_write_footer): write
5243         the request's content here.
5244         (e_gw_message_new_with_header): add the Content-Type header.
5245
5246         * backends/groupwise/e-gw-connection.c (e_gw_connection_send_message):
5247         no need to write the request here, it's written in
5248         e_gw_message_write_footer().
5249
5250 2003-12-12  Rodrigo Moya <rodrigo@ximian.com>
5251
5252         * backends/groupwise/e-gw-message.c (setup_debug): fixed typo.
5253
5254         * backends/groupwise/Makefile.am: use $DEBUG_CFLAGS.
5255
5256 2003-12-12  Rodrigo Moya <rodrigo@ximian.com>
5257
5258         * backends/groupwise/e-gw-message.c (setup_debug, print_header,
5259         debug_handler): new functions for adding debugging of the SOAP messages.
5260         (e_gw_message_new_with_header): if G_ENABLE_DEBUG is defined, setup
5261         debugging for the message. Also, use POST to send the messages.
5262
5263         * doc/gw-soap-methods.xsd:
5264         * doc/gw-soap-types.xsd: added new versions of SOAP interfaces.
5265
5266 2003-12-11  Rodrigo Moya <rodrigo@ximian.com>
5267
5268         Fixes #52013
5269
5270         * backends/file/e-cal-backend-file.c (create_user_free_busy): pass
5271         the TIME arguments correctly.
5272
5273 2003-12-10  Rodrigo Moya <rodrigo@ximian.com>
5274
5275         * backends/groupwise/e-gw-connection.c: use a SoupSession per
5276         EGwConnection, not one for all.
5277         (e_gw_connection_dispose): unref the SoupSession here.
5278         (e_gw_connection_init): create the SoupSession here.
5279         (e_gw_connection_send_message): use the private SoupSession.
5280
5281 2003-12-10  Rodrigo Moya <rodrigo@ximian.com>
5282
5283         * backends/groupwise/soap-test.c: added support for specifying a
5284         password in the command line.
5285
5286         * backends/groupwise/e-gw-connection.c (e_gw_connection_new): dont
5287         unref the response when we havent got one.
5288
5289 2003-12-10  Rodrigo Moya <rodrigo@ximian.com>
5290
5291         * backends/groupwise/e-gw-connection.c (e_gw_connection_finalize):
5292         only try to remove the connection from the hash table if the hash
5293         table has been created.
5294
5295 2003-12-10  Rodrigo Moya <rodrigo@ximian.com>
5296
5297         * backends/groupwise/soap-test.c: new test program to test the
5298         SOAP interface to the GW server.
5299
5300         * backends/groupwise/Makefile.am: compile new test program.
5301
5302 2003-12-10  JP Rosevear <jpr@ximian.com>
5303
5304         * libecal/e-cal.c (e_cal_get_default_object): don't preload the
5305         timezones into the cache, its problematic because we don't want to
5306         have multiple operations at the same time and we don't do this for
5307         views for instance
5308         (e_cal_get_object): ditto
5309
5310         Fixes #51225
5311         
5312 2003-12-09  JP Rosevear  <jpr@ximian.com>
5313
5314         * libecal/e-cal-listener.c (impl_notifyStaticCapabilities):
5315         actually emit the capabilities string
5316
5317         Fixes #51747
5318         
5319 2003-12-09  Rodrigo Moya <rodrigo@ximian.com>
5320
5321         * backends/groupwise/e-gw-connection.[ch]: made the connections be
5322         shared.
5323         (e_gw_connection_new): get the uri, username and password here, and
5324         before trying to login again to the server, see if we have already
5325         the same connection request in the loaded connections hash table.
5326         (e_gw_connection_login): removed.
5327         (e_gw_connection_logout): just unref the connection, the logout code
5328         moved to...
5329         (logout): ...here.
5330         (e_gw_connection_dispose): free new members.
5331         (e_gw_connection_finalize): remove the connection from the hash table,
5332         and destroy the hash table when there are no more connections on it.
5333
5334         * backends/groupwise/e-cal-backend-groupwise.c
5335         (e_cal_backend_groupwise_open): use the new EGwConnection interface.
5336
5337 2003-12-08  Rodrigo Moya <rodrigo@ximian.com>
5338
5339         * libedata-cal/e-cal-backend-cache.h: the class structure derives
5340         from EFileCacheClass, not EFileCache.
5341
5342         * libedata-cal/e-cal-backend-cache.c (get_filename_from_uri): iterate
5343         correctly over the characters in the URI.
5344
5345 2003-12-08  Rodrigo Moya <rodrigo@ximian.com>
5346
5347         * libedata-cal/e-cal-backend-cache.[ch]: use EFileCache instead
5348         of ECache.
5349
5350 2003-12-08  Rodrigo Moya <rodrigo@ximian.com>
5351
5352         * backends/groupwise/e-cal-backend-groupwise.c (convert_uri):
5353         new function to convert "groupwise://" URIs to "http://".
5354         (e_cal_backend_groupwise_open): call the above function to
5355         get a GnomeVFSURI, and use it as a temporary hack to get
5356         username and password.
5357
5358 2003-12-07  JP Rosevear  <jpr@ximian.com>
5359
5360         * libedata-cal/e-data-cal-factory.c: version the oafiid
5361
5362         * libecal/e-cal.c (get_factories): update the repo id
5363         
5364 2003-12-07  JP Rosevear  <jpr@ximian.com>
5365
5366         * libecal/e-cal.c (get_factories): use the versioned repo id
5367
5368 2003-12-04  Rodrigo Moya <rodrigo@ximian.com>
5369
5370         * backends/groupwise/create-account.c (add_account): add the username
5371         in the source URI, and use e_source_list_sync, to give it time to
5372         sync the GConf changes.
5373
5374 2003-12-04  Rodrigo Moya <rodrigo@ximian.com>
5375
5376         * backends/groupwise/create-account.c: changed to use a main loop,
5377         or saving to GConf seems not to work ??
5378
5379 2003-12-04  Rodrigo Moya <rodrigo@ximian.com>
5380
5381         * backends/groupwise/create-account.c (add_account): add the source
5382         to the group.
5383
5384 2003-12-04  Rodrigo Moya <rodrigo@ximian.com>
5385
5386         * backends/groupwise/create-account.c: make it use a username also.
5387
5388 2003-12-04  Rodrigo Moya <rodrigo@ximian.com>
5389
5390         * backends/groupwise/create-account.c: added simple program to
5391         add accounts to the calendar sources until we a GUI to configure
5392         them.
5393
5394         * backends/groupwise/Makefile.am: added noinst program.
5395
5396 2003-12-03  Christian Kellnerc <gicmo@xatom.net>
5397
5398          * libedata-cal/e-cal-backend-sexp.c: added has-recurrences sexp
5399          function
5400
5401 2003-12-03  Rodrigo Moya <rodrigo@ximian.com>
5402
5403         * backends/groupwise/e-cal-backend-groupwise.c: use a cache
5404         to keep the objects from the server.
5405         (e_cal_backend_groupwise_finalize): unref the cache object.
5406         (e_cal_backend_groupwise_open): load/create the local cache.
5407         (e_cal_backend_groupwise_get_object): look for the object in
5408         the cache.
5409         (e_cal_backend_groupwise_class_init): fixed warning.
5410
5411 2003-12-01  William Jon McCann  <mccann@jhu.edu>
5412  
5413         * libecal/e-cal.c (e_cal_generate_instances): Fix query and
5414         get object list as components.
5415  
5416 2003-12-01  Rodrigo Moya <rodrigo@ximian.com>
5417
5418         * libedata-cal/e-cal-backend-cache.[ch]: changed to be based on the
5419         new ECache class.
5420         (get_filename_from_uri): new function to get a unique filename for a
5421         calendar/tasks URI.
5422         (e_cal_backend_cache_set_property): get the filename for the given URI
5423         and set the "filename" property on the cache, which will load/create
5424         the cache file.
5425         (e_cal_backend_cache_finalize): dont free removed fields.
5426         (e_cal_backend_cache_get_component, e_cal_backend_cache_add_component,
5427         e_cal_backend_cache_replace_component, e_cal_backend_cache_remove_component):
5428         new functions.
5429
5430         * backends/groupwise/e-gw-connection.c (e_gw_connection_login): retrieve
5431         the session from the response, not the username.
5432
5433 2003-11-28  Rodrigo Moya <rodrigo@ximian.com>
5434
5435         * backends/groupwise/e-gw-connection.c (parse_response_status): new
5436         function to parse the "status" field returned in the SOAP response.
5437         (e_gw_connection_login, e_gw_connection_logout): call above function
5438         to get the status, and return that to the caller.
5439         
5440         * backends/groupwise/TODO: updated with more tasks.
5441
5442 2003-11-27  Rodrigo Moya <rodrigo@ximian.com>
5443
5444         * libedata-cal/e-cal-backend-cache.[ch]: new class implementing a
5445         cache of calendar/tasks objects.
5446
5447         * libedata-cal/Makefile.am: added new files.
5448
5449 2003-11-26  Hans Petter Jansson  <hpj@ximian.com>
5450
5451         * idl/Evolution-DataServer-Calendar.idl (getCal): Take source XML
5452         instead of URI.
5453
5454         * libecal/client-test.c (create_client): Adapt to API changes.
5455         (main): Ditto.
5456
5457         * libecal/e-cal.c (fetch_corba_cal): Move to ESource.
5458         (e_cal_new): Take ESource.
5459         (e_cal_new_from_uri): Implement convenience call that takes URI.
5460
5461         * libedata-cal/e-cal-backend.c (e_cal_backend_set_property):
5462         Implement PROP_SOURCE.
5463         (e_cal_backend_get_property): Same.
5464         (e_cal_backend_class_init): Same.
5465         (e_cal_backend_get_source): Same.
5466
5467         * libedata-cal/e-data-cal-factory.c (impl_CalFactory_getCal): Take
5468         source XML and construct an ESource. Init backend with that.
5469
5470 2003-11-25  Rodrigo Moya <rodrigo@ximian.com>
5471
5472         * backends/groupwise/e-gw-message.[ch]: new files to contain utility
5473         functions for easily creating SOAP messages.
5474
5475         * backends/groupwise/e-gw-connection.[ch] (e_gw_connection_logout):
5476         new function.
5477         (e_gw_connection_finalize): if we're already connected, call
5478         e_gw_connection_logout().
5479         (e_gw_connection_login): implement response parsing.
5480         (e_gw_connection_send_message): new function.
5481
5482         * backends/groupwise/e-cal-backend-groupwise.c
5483         (e_cal_backend_groupwise_is_loaded): implemented.
5484
5485         * backends/groupwise/Makefile.am: added new files.
5486
5487 2003-11-20  Harry Lu  <harry.lu@sun.com>
5488
5489         * backends/file/e-cal-backend-file.c:
5490         (e_cal_backend_file_internal_get_default_timezone): move to the front
5491         to avoid a compile warning.
5492         (e_cal_backend_file_internal_get_timezone): ditto.
5493         (sanitize_component): new function. If the component's timezone is not
5494         included in buildin timezone list, convert it to local default timezone.
5495         (e_cal_backend_file_create_object): call sanitize_component.
5496         (e_cal_backend_file_modify_object): ditto.
5497         (e_cal_backend_file_receive_objects): ditto.
5498
5499 2003-11-18  Rodrigo Moya <rodrigo@ximian.com>
5500
5501         * backends/groupwise/e-gw-connection.h: fixed typo.
5502
5503         * backends/groupwise/e-gw-connection.c: base it on GObject, not
5504         SoupConnection.
5505         (e_gw_connection_login): new functions.
5506         (e_gw_connection_init): create the SoupSession here if it's not
5507         created, or ref it if it's already created.
5508         (e_gw_connection_finalize): unref the SoupSession here.
5509         (session_weak_ref_cb): callback to detect when the SoupSession dies.
5510
5511         * backends/groupwise/e-cal-backend-groupwise.c: make it use
5512         EGwConnection's.
5513         (e_cal_backend_groupwise_finalize): unref the EGwConnection.
5514         (e_cal_backend_groupwise_open): create the EGwConnection here.
5515
5516 2003-11-17  Rodrigo Moya <rodrigo@ximian.com>
5517
5518         * backends/groupwise/gw-connection.[ch]: new class for managing
5519         connections to Groupwise servers.
5520
5521         * backends/groupwise/Makefile.am: added new files and needed
5522         CFLAGS and LIBS.
5523
5524 2003-11-17  Dan Winship  <danw@ximian.com>
5525
5526         * libecal/e-cal-util.c (e_cal_util_new_component): New
5527         icalcomponent-based replacement for
5528         e_cal_component_new/e_cal_component_set_vtype.
5529
5530         * libedata-cal/e-data-cal.c: fix up some broken indentation
5531         (e_data_cal_notify_default_object, e_data_cal_notify_object):
5532         constify the object arg
5533
5534 2003-11-14  Rodrigo Moya <rodrigo@ximian.com>
5535
5536         * backends/Makefile.am: added groupwise backend directory to build.
5537
5538         * backends/groupwise/Makefile.am:
5539         * backends/groupwise/e-cal-backend-groupwise.[ch]: Groupwise backend
5540         skeleton.
5541
5542 2003-11-11  ChangeLog <jpr@ximian.com>
5543
5544         * libecal/e-cal.c (e_cal_class_init): emit the status
5545
5546         * libecal/e-cal.h: remove open status enums, use calendar status
5547         instead
5548
5549         * libecal/client-test.c (create_client): just directly open the
5550         calendar, no need to be async
5551
5552 2003-11-11  Dan Winship  <danw@ximian.com>
5553
5554         * libedata-cal/e-cal-backend-sexp.c: Make the time-related sexp
5555         function handlers (eg, time-now, make-time, etc) be non-static, so
5556         they can be reused by backend-specific calendar sexp parsers.
5557
5558 2003-11-10  JP Rosevear <jpr@ximian.com>
5559
5560         * libecal/e-cal.h: remove dead enums
5561
5562 2003-11-10  JP Rosevear <jpr@ximian.com>
5563
5564         * libecal/e-cal.h: mark struct as private
5565
5566         * libecal/e-cal.c: fix documentation headers
5567
5568         * libecal/e-cal-view.h: fix cast macros and typedef the structs
5569         separately
5570
5571         * libecal/e-cal-view.c: use correct type check macro, fix some
5572         documentation headers
5573
5574         * libecal/e-cal-view-listener.h: typedef the structs separately
5575         and tidy up class macros
5576
5577         * libecal/e-cal-util.c: fix a documentation header
5578
5579         * libecal/e-cal-listener.h: mark parts of the struct as private
5580
5581         * libecal/e-cal-listener.c: fix a few documentation headers
5582
5583         * libecal/e-cal-component.h: remove extraneous comma and mark
5584         parts of struct as private
5585
5586         * libecal/e-cal-component.c: fix a couple of documentation headers
5587
5588 2003-11-10  Dan Winship  <danw@ximian.com>
5589
5590         * libedata-cal/e-cal-backend-sexp.c: Remove get-vtype from the
5591         query language, since it is redundant now.
5592         (func_has_alarms): Remove the boolean arg from has-alarms. You can
5593         just say (not (has-alarms?)).
5594
5595 2003-11-10  JP Rosevear <jpr@ximian.com>
5596
5597         * libecal/e-cal.h: add proto
5598
5599         * libecal/e-cal.c (e_cal_free_change_list): this belongs here
5600
5601         * libecal/e-cal-types.h: remove proto
5602
5603         * libecal/Makefile.am: don't build dead file
5604
5605 2003-11-07  Dan Winship  <danw@ximian.com>
5606
5607         * libecal/Makefile.am (libecal_la_LDFLAGS): Remove -no-undefined
5608
5609         * libedata-cal/Makefile.am (libedata_cal_la_LDFLAGS): Likewise
5610
5611 2003-11-06    <jpr@ximian.com>
5612
5613         * libecal/e-cal-view-listener.h: match the signals better
5614
5615         * libecal/e-cal-view-listener.c (e_cal_view_listener_class_init):
5616         ditto
5617         
5618 2003-11-06  JP Rosevear  <jpr@ximian.com>
5619
5620         * libecal/e-cal.c: replace e_mutex stuff with gthread stuff
5621
5622 2003-11-06  JP Rosevear <jpr@ximian.com>
5623
5624         * Makefile.am: build new subdirs
5625
5626         * backends/*: build the http and file backends here
5627
5628         * libedata-cal/Makefile.am: no longer build them here   
5629         
5630 2003-11-05  JP Rosevear  <jpr@ximian.com>
5631
5632         * rename libedatacal to libedata-cal
5633
5634 2003-11-05  JP Rosvear <jpr@ximian.com>
5635
5636         * libecal/Makefile.am: use privincludedir
5637
5638         * libedatacal/Makefile.am: ditto
5639
5640         * libecal/libecal-1.0.pc.in: ditto
5641
5642         * libedatacal/libedatacal-1.0.pc.in: use privincludedir; remove
5643         gal
5644
5645 2003-11-05  JP Rosevear <jpr@ximian.com>
5646
5647         * libecal/Makefile.am: LIBADD all the relevant libical libs
5648
5649         * libecal/libecal-1.0.pc.in: no need to explicitly link
5650         libical-evolution
5651
5652         * libedatacal/libedatacal-1.0.pc.in: ditto; fix include dir
5653         
5654 2003-11-05  Rodrigo Moya <rodrigo@ximian.com>
5655
5656         * libedatacal/e-cal-backend-sexp.c: removed GAL dependency.
5657
5658 2003-11-04  JP Rosevear <jpr@ximian.com>
5659
5660         * libedatacal/e-data-cal-factory.c: use properly name spaced
5661         default id
5662
5663 2003-11-04  JP Rosevear <jpr@ximian.com>
5664
5665         * libecal/libecal-1.0.pc.in (prefix): include priv dir stuff for
5666         libical
5667
5668         * libedatacal/libedatacal-1.0.pc.in (prefix): ditto
5669         
5670         * libecal/e-cal-component.[hc]: properly name space alarm action
5671         enum
5672
5673         * libecal/e-cal-types.h: properly name space change types       
5674         
5675 2003-11-04  JP Rosevear <jpr@ximian.com>
5676
5677         * libedatacal/e-data-cal-factory.c: remove corba header include
5678
5679         * libedatacal/e-cal-backend-sync.h: include corba header properly
5680         
5681         * libedatacal/e-data-cal.h: ditto
5682
5683         * libedatacal/e-data-cal-view.h: ditto
5684
5685         * libedatacal/e-data-cal-factory.h: ditto
5686
5687         * libedatacal/e-cal-backend.h: ditto
5688
5689         * libedatacal/Makefile.am: reflect idl name change
5690
5691         * libecal/e-cal-listener.h: include corba header properly
5692
5693         * libecal/e-cal-view.h: ditto
5694
5695         * libecal/e-cal-view-listener.h: ditto
5696
5697         * libecal/Makefile.am: reflect idl name change
5698
5699         * idl/Makefile.am: rename the idl to Evolution-DataServer-Calendar.idl
5700
5701 2003-11-03  Hans Petter Jansson  <hpj@ximian.com>
5702
5703         * calendar/libedatacal/e-cal-backend-file.c (free_calendar_components)
5704         (free_calendar_data): Implement.
5705         (e_cal_backend_file_dispose): Use above freers.
5706         (get_uri_string_for_gnome_vfs): Implement.
5707         (open_cal): Set priv->uri to be escaped, GnomeVFS-friendly.
5708         (notify_removals_cb)
5709         (notify_adds_modifies_cb)
5710         (notify_changes)
5711         (reload_cal): Implement.
5712         (create_cal): Set priv->uri to be escaped, GnomeVFS-friendly.
5713         (get_uri_string): Implement - unescapes once.
5714         (e_cal_backend_file_compute_changes): Unescape DB URI once, don't make
5715         like it's in a subdirectory.
5716         (e_cal_backend_file_reload): Implement.
5717
5718         * calendar/libedatacal/e-cal-backend-http.c
5719         (e_cal_backend_http_finalize): Cancel potential retrieval and free
5720         slave backend.
5721         (e_cal_backend_http_is_read_only): Clean up.
5722         (webcal_to_http_method)
5723         (uri_to_cache_dir)
5724         (ensure_cache_dir)
5725         (retrieval_done)
5726         (retrieval_progress_cb)
5727         (begin_retrieval_cb): Implement.
5728         (e_cal_backend_http_open): Set up slave backend.
5729         (e_cal_backend_http_remove)
5730         (e_cal_backend_http_is_loaded)
5731         (e_cal_backend_http_get_default_object)
5732         (e_cal_backend_http_get_object)
5733         (e_cal_backend_http_get_timezone)
5734         (e_cal_backend_http_add_timezone)
5735         (e_cal_backend_http_set_default_timezone)
5736         (e_cal_backend_http_get_object_list)
5737         (e_cal_backend_http_get_free_busy)
5738         (e_cal_backend_http_get_changes)
5739         (e_cal_backend_http_discard_alarm)
5740         (e_cal_backend_http_modify_object)
5741         (e_cal_backend_http_remove_object)
5742         (e_cal_backend_http_receive_objects)
5743         (e_cal_backend_http_send_objects)
5744         (e_cal_backend_http_internal_get_default_timezone)
5745         (e_cal_backend_http_internal_get_timezone): Implement with fallthrough
5746         to slave backend.
5747         (e_cal_backend_http_init): Remove cruft.
5748
5749         * calendar/libedatacal/e-cal-backend-sync.c
5750         (e_cal_backend_sync_open): Use per-instance mutex.
5751         (e_cal_backend_sync_init): Set up per-instance mutex.
5752         (e_cal_backend_sync_dispose): Free per-instance mutex.
5753
5754         * calendar/libedatacal/e-cal-backend.c
5755         (e_cal_backend_set_notification_proxy): Implement.
5756         (e_cal_backend_notify_object_created)
5757         (e_cal_backend_notify_object_modified)
5758         (e_cal_backend_notify_object_removed)
5759         (e_cal_backend_notify_mode)
5760         (e_cal_backend_notify_error): Use notification proxy if set.