+2007-07-10 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * SoObjects/Mailer/SOGoMailBaseObject.m ([SOGoMailBaseObject
+ -imap4URL]): rewrote method to support accented mailbox names.
+ ([SOGoMailBaseObject imap4Password]): rewrote to simply use
+ SOGoAuthenticator's passwordInContext:.
+
+ * UI/Scheduler/UIxTaskEditor.m ([UIxTaskEditor
+ -takeValuesFromRequest:_rqinContext:_ctx]): explicitly set the
+ start and due dates to nil if hasStartDate and hasDueDate are
+ false.
+
+ * SoObjects/SOGo/SOGoAuthenticator.m ([SOGoAuthenticator
+ -passwordInContext:context]): made method public.
+
+ * OGoContentStore/OCSiCalFieldExtractor.m ([OCSiCalFieldExtractor
+ -extractQuickFieldsFromTodo:_task]): set "isallday" and "isopaque"
+ to false to avoid a null violation.
+
+2007-07-04 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * SoObjects/Mailer/SOGoMailObject.m ([SOGoMailObject
+ -contentAsString]): returns the message encoded in ISO Latin 1
+ again.
+
+ * SoObjects/SOGo/SOGoUser.m ([SOGoUser +initialize]): read the
+ SOGoSuperUsername user defaults.
+ ([SOGoUser -initWithLogin:newLoginroles:newRoles]): simplified
+ method.
+ ([SOGoUser -rolesForObject:objectinContext:context]): if the
+ current user is the superuser, grant him/her the "owner" role.
+
+ * SoObjects/SOGo/SOGoFolder.m ([SOGoFolder -ocsFolder]): create
+ the folder only if the current user is the owner of the future
+ folder.
+
+ * SoObjects/Appointments/SOGoCalendarComponent.m
+ ([SOGoCalendarComponent -contentAsString]): we return the content
+ based on the permissions returned by the security manager instead
+ of by looking at the user roles.
+
+ * SoObjects/Appointments/SOGoAppointmentFolder.m
+ ([SOGoAppointmentFolder -calendarFolders]): read the calendar
+ folders of the user to whom this folder belongs instead of the
+ active user. This way, a delegate user will be able to have the
+ same view that the original user has if he connects from his user
+ directory.
+
+ * Main/SOGo.m ([SOGo -lookupUser:_keyinContext:]): check if the
+ user exists before creating the SOGoUserFolder instance. If not,
+ returns nil.
+
+ * UI/MailerUI/UIxMailSourceView.[hm]: new class module designed to
+ return the message source code in plain text.
+
+ * SoObjects/Mailer/SOGoMailObject.m ([SOGoMailObject
+ -contentAsString]): returns the message encoded in UTF8.
+
+2007-07-03 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * OGoContentStore/iCalRepeatableEntityObject+OCS.m
+ ([iCalRepeatableEntityObject -cycleInfo]): no longer take the
+ leading tagname into account when serializing the element values.
+
+ * Main/SOGoProductLoader.m: only load bundle directories ending
+ with the "SOGo" extension.
+
+ * Main/SOGo.m ([SOGo
+ -_checkTableWithCM:cmtableURL:urlandType:tableType]): empty the
+ result set if the query has caused no exception. Otherwise we get
+ an "evaluation is in progress exception".
+
+2007-06-29 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * SoObjects/SOGo/AgenorUserDefaults.m ([AgenorUserDefaults
+ -generateSQLForInsert]): initialize error to nil before the
+ serialization. Otherwise the method can get confused if it ever is
+ initialized to something else.
+
+ * SoObjects/SOGo/SOGoUserFolder.m ([SOGoUserFolder
+ -folderIsMandatory]): returns NO unconditionnally.
+
+ * SoObjects/Contacts/SOGoContactFolders.m ([SOGoContactFolders
+ -appendPersonalSources]): add the "personal" folder to the list of
+ user folders even if it doesn't exist, so that it is created when
+ the user accesses it.
+
+ * SoObjects/Contacts/SOGoContactGCSFolder.m ([SOGoContactGCSFolder
+ -folderIsMandatory]): returns YES if nameInContainer is set to
+ "personal", which is the default address book.
+
+ * SoObjects/Appointments/SOGoAppointmentFolder.m
+ ([SOGoAppointmentFolder -folderIsMandatory]): returns YES since
+ users must have one Calendar folder (one and only one).
+ ([SOGoAppointmentFolder -_privacySqlString]): unescape the
+ escaping '\' so make the carriage return a real one. This way,
+ PgSQL 8 won't complain about escaping the string.
+
+ * SoObjects/SOGo/SOGoFolder.m ([SOGoFolder -ocsFolder]): new
+ method that create the folder if considered mandatory.
+ ([SOGoFolder -folderIsMandatory]): new method that determines
+ whether the folder should be created automatically or not. To be
+ overriden by subclasses.
+
+ * Main/SOGo.m ([SOGo -run]): override method and create the
+ missing system tables if needed.
+
+2007-06-28 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * UI/MailerUI/WOContext+UIxMailer.m ([WOContext
+ -mailDateFormatter]): returns the user's date formatter.
+
+ * SoObjects/Mailer/SOGoMailObject.m ([SOGoMailObject -date]):
+ applies the user timezone to the date object before returning it.
+
+ * UI/Common/UIxSortButton.m: removed useless class module.
+
+ * UI/Common/UIxSortableTableHeader.m: removed useless class
+ module.
+
+ * UI/Contacts/UIxContactsListView.m ([UIxContactsListView
+ -contactInfos]): use the "asc" url parameter instead of "desc" to
+ determine the ordering.
+ ([-sortOrdering]): removed method.
+ ([UIxContactsListView -init]): removed the "searchText" ivar.
+ (general): the template no longer use the UIxSortableTableHeader
+ components.
+
+ * UI/MailerUI/UIxMailListView.m ([UIxMailListView
+ -defaultSortKey]): default sort following the messages arrival
+ instead of their date.
+ ([-isSortedDescending]): removed method.
+ ([-imap4SortOrdering]): use the "asc" url parameter instead of
+ "desc" to determine the ordering.
+ (general): the template no longer use the UIxSortableTableHeader
+ components.
+
+2007-06-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * UI/MailerUI/UIxMailListView.m ([UIxMailListView -sleep]):
+ removed method.
+ ([-setQualifier:_msg], [-qualifier]): removed methods.
+ ([UIxMailListView -defaultAction]): added code to handle the
+ search criteria and value passed as url parameters. Also, we now
+ handle the same search criterias as Thunderbird/Icedove.
+
+2007-06-22 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * UI/PreferencesUI/UIxJSONPreferences.m ([UIxJSONPreferences
+ -jsonDefaultsAction]): bug fix: returns a WOResponse instance with
+ the string instead of the string itself.
+ ([UIxJSONPreferences -jsonSettingsAction]): same as above.
+
+ * SoObjects/SOGo/SOGoUser.m ([SOGoUser +initialize]): new module
+ bool var "acceptAnyUser" that is set when the AuthenticationMethod
+ user default is nil.
+ ([SOGoUser -initWithLogin:newLoginroles:newRoles]):
+ unconditionnally returns an instance whenever acceptAnyUser is set.
+
+2007-06-21 Wolfgang Sourdeau <wsourdeau@inverse.ca>
+
+ * Main/sogod.m (main): prevent SOGo from running as root.
+
2007-06-19 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/SOGo/SOGoUser.m ([SOGoUser