]> err.no Git - scalable-opengroupware.org/blobdiff - ChangeLog
git-svn-id: http://svn.opengroupware.org/SOGo/inverse/trunk@1131 d1b88da0-ebda-0310...
[scalable-opengroupware.org] / ChangeLog
index 85d34b2531591a40cc8a2e8d1e7c956cda7e3735..bad50c6cff02b9538cf51d3a4a40eafff1e9231f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,238 @@
+2007-08-01  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * UI/MailPartViewers/UIxMailPartViewer.m ([UIxMailPartViewer
+       -content]): new method returning the decoded content of the
+       corresponding attachment as an NSData instance.
+       ([UIxMailPartViewer -filename]): if the "filename" parameter of
+       the metadata parameterList is empty, try to find out the filename
+       from the "disposition" metadata returned with the BODYSTRUCTURE
+       imap4 tag.
+
+       * UI/MailerUI/UIxMailMainFrame.m ([UIxMailMainFrame
+       -composeAction]): prefix the INBOX folder with "folder".
+
+       * SoObjects/Mailer/SOGoMailFolder.m ([SOGoMailBaseObject
+       -relativeImap4Name]): return nameInContainer stripped from its
+       first 6 characters since all folder names are prefixed with
+       "folder".
+
+       * SoObjects/Mailer/SOGoMailBaseObject.m ([SOGoMailBaseObject
+       -imap4URLString]): invoke -relativeImap4Name instead of
+       "nameInContainer" since the former will return the fixed IMAP4
+       foldername and the latter the SoObject name.
+
+       * SoObjects/Mailer/SOGoMailObject.m ([SOGoMailObject
+       +initialize]): we now fetch the "BODYSTRUCTURE" key instead of "BODY".
+
+       * SoObjects/Mailer/SOGoMailAccount.m ([SOGoMailAccount -inboxFolderNameInContext:])
+       ([SOGoMailAccount -draftsFolderNameInContext:_ctx])
+       ([SOGoMailAccount -sieveFolderNameInContext:_ctx])
+       ([SOGoMailAccount -sentFolderNameInContext:])
+       ([SOGoMailAccount -trashFolderNameInContext:]): prefix the folder
+       names with "folder".
+       ([SOGoMailAccount -inboxFolderInContext:_ctx])
+       ([SOGoMailAccount -sentFolderInContext:_ctx])
+       ([SOGoMailAccount -trashFolderInContext:_ctx]): no longer prefix
+       the folder names with "folder" since they are prefixed earlier.
+
+2007-07-30  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * SoObjects/Mailer/SOGoMailAccount.m ([SOGoMailAccount -inboxFolderInContext:_ctx])
+       ([-sentFolderInContext:], [-trashFolderInContext:]): folder keys
+       all starts with "folder".
+
+       * SoObjects/SOGo/SOGoObject.m ([SOGoObject +initialize]): no
+       longer declare security info from here.
+
+       * SoObjects/Mailer/SOGoMailFolder.m
+       ([-isMessageKey:_keyinContext:_ctx]): removed useless method.
+       ([SOGoMailFolder -lookupName:_keyinContext:acquire:_acquire]):
+       folder names now always start with "folder".
+
+       * SoObjects/Mailer/SOGoMailAccount.m
+       ([-lookupName:inContext:acquire:]): folder names now always start
+       with "folder".
+
+2007-07-27  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * UI/MailerUI/UIxMailForwardAction.m ([UIxMailForwardAction
+       -forwardAction]): adapted to the new saveAttachment:withMetadata:
+       method (see below).
+
+       * UI/MailerUI/UIxMailEditor.m ([UIxMailEditor -saveAction]): added
+       code to save the attached filenames with the filename returned by
+       the web server as well as their mime types.
+
+       * UI/MailPartViewers/UIxMailPartMessageViewer.m ([UIxMailPartMessageViewer -fromAddresses])
+       ([UIxMailPartMessageViewer -toAddresses])
+       ([UIxMailPartMessageViewer -ccAddresses]): new methods returning
+       the corresponding fields separated with a ", " (if needed).
+
+       * SoObjects/Mailer/SOGoDraftObject.m ([SOGoDraftObject
+       -saveAttachment:_attachwithMetadata:metadata]): new method
+       replacing -saveAttachment:withName: and which takes a dictionary
+       as parameter with the filename and the mime type of the
+       attachment.
+       The mimetype is then saved in a hidden text file.
+       ([SOGoDraftObject -contentTypeForAttachmentWithName:]): if exists,
+       take the mime type from the hidden text file related to the
+       attachment.
+
+       * SoObjects/Contacts/SOGoContactGCSFolder.m ()
+       ([SOGoContactGCSFolder
+       -lookupContactsWithFilter:filtersortBy:sortKeyordering:sortOrdering]):
+       return records if the db records are > 0 and not just > 1...
+
+2007-07-24  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * UI/Contacts/UIxContactsListView.m ([-displayName]): removed
+       method.
+       ([UIxContactsListView -defaultSortKey]): changed to "displayName".
+
+       * SoObjects/Contacts/SOGoContactLDAPFolder.m
+       ([SOGoContactLDAPFolder
+       -lookupContactsWithFilter:filtersortBy:sortKeyordering:sortOrdering]):
+       translate the returned records to a normalized form.
+
+       * SoObjects/Contacts/SOGoContactGCSFolder.m ([SOGoContactGCSFolder
+       -lookupContactsWithFilter:filtersortBy:sortKeyordering:sortOrdering]):
+       translate the returned records to a normalized form.
+
+       * UI/Scheduler/UIxCalListingActions.m,
+       UI/Contacts/UIxContactsListView.m, SoObjects/SOGo/SOGoUser.m,
+       SoObjects/SOGo/AgenorUserDefaults.m,
+       SoObjects/Contacts/SOGoContactGCSFolder.m,
+       SoObjects/Appointments/SOGoAppointmentFolder.m,
+       OGoContentStore/OCSiCalFieldExtractor.m,
+       OGoContentStore/OCSContactFieldExtractor.m: prefixed all quick
+       table fields with "c_".
+
+2007-07-23  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * SoObjects/SOGo/LDAPSource.m ([LDAPSource +initialize]): query
+       the values for SOGoLDAPQueryLimit and SOGoLDAPQueryTimeout from
+       the application settings. If set, both limit will influence the
+       maximum size of the resultsets and the time taken to solve them.
+       ([LDAPSource -_initLDAPConnection]): initialize the limits.
+
+2007-07-22  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * SoObjects/Contacts/SOGoContactGCSFolder.m ([SOGoContactGCSFolder -davNamespaces]): added new overriden
+       method that declares the DAV namespace related to CardDAV.
+       ([SOGoContactGCSFolder -davComplianceClassesInContext:]): new
+       method that declares the "access-control" and "addressbook-access"
+       classes to the list.
+
+       * SoObjects/Appointments/SOGoAppointmentFolder.m
+       ([-lookupActionForCalDAVMethod:]): removed method.
+       ([SOGoAppointmentFolder -davNamespaces]): added new overriden
+       method that declares the DAV namespace related to CalDAV.
+
+       * SoObjects/SOGo/SOGoFolder.m ([SOGoFolder -davNamespaces]): new
+       optional method for subclasses which handle specific extensions to
+       the DAV protocol: CardDAV or CalDAV.
+       ([SOGoFolder
+       -lookupName:lookupNameinContext:localContextacquire:acquire]):
+       new overriden method that handles dav invocations for extensions
+       to DAV by returning an appropriate SoSelectorInvocation.
+
+       * SoObjects/SOGo/NSString+Utilities.m ([NSString
+       -asDavInvocation]): new method returning a dictionary with a "ns"
+       key representing the dav namespace and a "method" key representing
+       the dav method name of the request.
+
+       * UI/PreferencesUI/UIxPreferences.m ([UIxPreferences
+       +initialize]): scan the value of SOGoUIxUserCanChangePassword.
+       Default is "no".
+       ([UIxPreferences -shouldDisplayPasswordChange]): new template
+       method that returns the value of SOGoUIxUserCanChangePassword.
+
+       * UI/MainUI/SOGoUserHomePage.m ([SOGoUserHomePage +initialize]):
+       scan the value of SOGoUIxDefaultModule. If not set, the default
+       module defaults to "Calendar".
+       ([SOGoUserHomePage -defaultAction]): redirect the user to the
+       value of "SOGoUIxDefaultModule".
+
+2007-07-20  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * UI/Contacts/UIxContactsListView.m ([UIxContactsListView
+       -contactInfos]): cache the results to avoid multiple invocations.
+
+       * SoObjects/Contacts/SOGoContactLDAPFolder.m
+       ([SOGoContactLDAPFolder -toOneRelationshipKeys]): check whether we
+       really should return something or if we fake to return nil...
+
+2007-07-13  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * SoObjects/SOGo/SOGoUser.m ([SOGoUser +initialize]): set
+       acceptAnyUser to YES only when the SOGoAuthentificationMethod user
+       default is set to "bypass".
+
+       * SoObjects/SOGo/SOGoAuthenticator.m ([SOGoAuthenticator
+       -checkLogin:_loginpassword:_pwd]): accepts unverified connections
+       when authMethod is set to "bypass" from now on. This would avoid a
+       security concern with a default installation of SOGo.
+       AuthentificationMethod is now prefixed with "SOGo" for better
+       clarity.
+
+2007-07-11  Wolfgang Sourdeau  <wsourdeau@inverse.ca>
+
+       * UI/MailerUI/UIxMailFolderActions.m ([UIxMailFolderActions
+       -quotasAction]): new method that returns a json representation of
+       the mailbox quotas.
+
+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.