diff --git a/ChangeLog b/ChangeLog index cd59797a8..5e6134bd0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2009-11-07 Ludovic Marcotte + + * SoObjects/SOGo/SOGoCache.m - if we get a JSON + error when trying to convert our string coming + from memcached, we don't store it to the cache + and we log the error. + * Modified the code so we always use lower-case + headers prior to sending mails. This is to avoid + an uber-lameness in SOPE. Also added warnings + around that code so we can get rid of SOPE-mime, + we'll do things cleanly. + 2009-11-06 Wolfgang Sourdeau * UI/WebServerResources/UIxPreferences.js (_setupEvents): we check diff --git a/SoObjects/Appointments/SOGoAptMailNotification.h b/SoObjects/Appointments/SOGoAptMailNotification.h index 6fa938eda..06aa31768 100644 --- a/SoObjects/Appointments/SOGoAptMailNotification.h +++ b/SoObjects/Appointments/SOGoAptMailNotification.h @@ -1,6 +1,6 @@ /* Copyright (C) 2000-2005 SKYRIX Software AG - Copyright (C) 2006-2008 Inverse inc. + Copyright (C) 2006-2009 Inverse inc. This file is part of OpenGroupware.org. diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 08c1a9822..184aa1a65 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -673,10 +673,6 @@ static inline BOOL _occurenceHasID (iCalRepeatableEntityObject *occurence, NSStr subject = [p getSubject]; text = [p getBody]; - NSLog(@"Template: %@", pageName); - NSLog(@"Sender: %@", senderEmail); - NSLog(@"Recipient: %@", recipient); - NSLog(@"Subject: %@", subject); /* construct message */ headerMap = [NGMutableHashMap hashMapWithCapacity: 5]; @@ -686,6 +682,7 @@ static inline BOOL _occurenceHasID (iCalRepeatableEntityObject *occurence, NSStr * at all. Mail.app shows the rich content alternative _only_ * so we'll stick with multipart/mixed for the time being. */ +#warning SOPE is just plain stupid here - if you change the case of keys, it will break the encoding of fields [headerMap setObject: @"multipart/mixed" forKey: @"content-type"]; [headerMap setObject: @"1.0" forKey: @"MIME-Version"]; [headerMap setObject: senderEmail forKey: @"from"]; @@ -778,6 +775,7 @@ static inline BOOL _occurenceHasID (iCalRepeatableEntityObject *occurence, NSStr * at all. Mail.app shows the rich content alternative _only_ * so we'll stick with multipart/mixed for the time being. */ +#warning SOPE is just plain stupid here - if you change the case of keys, it will break the encoding of fields [headerMap setObject: [attendee mailAddress] forKey: @"from"]; [headerMap setObject: [recipient mailAddress] forKey: @"to"]; mailDate = [[NSCalendarDate date] rfc822DateString]; @@ -787,9 +785,6 @@ static inline BOOL _occurenceHasID (iCalRepeatableEntityObject *occurence, NSStr [headerMap setObject: @"multipart/mixed" forKey: @"content-type"]; msg = [NGMimeMessage messageWithHeader: headerMap]; - NSLog (@"sending 'REPLY' from %@ to %@", - [attendee mailAddress], [recipient mailAddress]); - /* multipart body */ body = [[NGMimeMultipartBody alloc] initWithPart: msg]; @@ -870,6 +865,7 @@ static inline BOOL _occurenceHasID (iCalRepeatableEntityObject *occurence, NSStr identity = [currentUser primaryIdentity]; /* construct message */ +#warning SOPE is just plain stupid here - if you change the case of keys, it will break the encoding of fields headerMap = [NGMutableHashMap hashMapWithCapacity: 5]; fullSenderEmail = [identity keysWithFormat: @"%{fullName} <%{email}>"]; [headerMap setObject: fullSenderEmail forKey: @"from"]; diff --git a/SoObjects/SOGo/SOGoCache.m b/SoObjects/SOGo/SOGoCache.m index c07d70758..636c5f71d 100644 --- a/SoObjects/SOGo/SOGoCache.m +++ b/SoObjects/SOGo/SOGoCache.m @@ -304,11 +304,13 @@ static NSLock *lock; v = [NSString stringWithUTF8String: s]; d = [NSDictionary dictionaryWithJSONString: v]; - //[self logWithFormat: @"read values (%@) for subtype %@ for user %@", [d description], theType, theLogin]; // Cache the value in our localCache - [localCache setObject: d forKey: k]; - + if (d) + [localCache setObject: d forKey: k]; + else + [self errorWithFormat: @"Unable to convert (%@) to a JSON string for type: %@ and login: %@", v, theType, theLogin]; + free(s); } } diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index 4b08cca77..18d667110 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -1,7 +1,7 @@ /* SOGoGCSFolder.m - this file is part of SOGo * * Copyright (C) 2004-2005 SKYRIX Software AG - * Copyright (C) 2006-2008 Inverse inc. + * Copyright (C) 2006-2009 Inverse inc. * * Author: Wolfgang Sourdeau * diff --git a/SoObjects/SOGo/SOGoMailer.m b/SoObjects/SOGo/SOGoMailer.m index 6f6264424..bc1d677f2 100644 --- a/SoObjects/SOGo/SOGoMailer.m +++ b/SoObjects/SOGo/SOGoMailer.m @@ -1,6 +1,6 @@ /* SOGoMailer.m - this file is part of SOGo * - * Copyright (C) 2007-2008 Inverse inc. + * Copyright (C) 2007-2009 Inverse inc. * * Author: Wolfgang Sourdeau * diff --git a/UI/README b/UI/README deleted file mode 100644 index aaa3b209c..000000000 --- a/UI/README +++ /dev/null @@ -1,14 +0,0 @@ -# $Id: README 297 2004-09-07 19:51:33Z znek $ - -UI -== - -The UI directory contains HTML view methods for the SOPE SoObjects. - - -Localization -============ - -Each bundle has its own set of localization files, contained in a language -project directory (i.e. English.lproj). Because of this fact it might be -possible that you have to localize a certain label more than once. \ No newline at end of file diff --git a/UI/SOGoUI/README b/UI/SOGoUI/README deleted file mode 100644 index 18dafff83..000000000 --- a/UI/SOGoUI/README +++ /dev/null @@ -1,7 +0,0 @@ -Defaults -======== - - -Name Value Synopsis ------------------------------------------------------------------------------- -SOGoUIxDebugEnabled BOOL Trigger display of debug UI. Default is NO. diff --git a/UI/SOGoUI/SOGoACLAdvisory.m b/UI/SOGoUI/SOGoACLAdvisory.m index 722fd003a..793f1bc1a 100644 --- a/UI/SOGoUI/SOGoACLAdvisory.m +++ b/UI/SOGoUI/SOGoACLAdvisory.m @@ -206,13 +206,14 @@ recipient = [[SOGoUserManager sharedUserManager] getFullEmailForUID: recipientUID]; +#warning SOPE is just plain stupid here - if you change the case of keys, it will break the encoding of fields headerMap = [NGMutableHashMap hashMapWithCapacity: 5]; [headerMap setObject: @"multipart/alternative" forKey: @"content-type"]; - [headerMap setObject: fullMail forKey: @"From"]; - [headerMap setObject: recipient forKey: @"To"]; + [headerMap setObject: fullMail forKey: @"from"]; + [headerMap setObject: recipient forKey: @"to"]; date = [[NSCalendarDate date] rfc822DateString]; - [headerMap setObject: date forKey: @"Date"]; - [headerMap setObject: [self subject] forKey: @"Subject"]; + [headerMap setObject: date forKey: @"date"]; + [headerMap setObject: [self subject] forKey: @"subject"]; message = [NGMimeMessage messageWithHeader: headerMap]; body = [[NGMimeMultipartBody alloc] initWithPart: message]; diff --git a/UI/SOGoUI/SOGoFolderAdvisory.m b/UI/SOGoUI/SOGoFolderAdvisory.m index 7e84f51fd..96e1b664b 100644 --- a/UI/SOGoUI/SOGoFolderAdvisory.m +++ b/UI/SOGoUI/SOGoFolderAdvisory.m @@ -185,13 +185,14 @@ recipient = [[SOGoUserManager sharedUserManager] getFullEmailForUID: recipientUID]; +#warning SOPE is just plain stupid here - if you change the case of keys, it will break the encoding of fields headerMap = [NGMutableHashMap hashMapWithCapacity: 5]; [headerMap setObject: @"multipart/alternative" forKey: @"content-type"]; - [headerMap setObject: fullMail forKey: @"From"]; - [headerMap setObject: recipient forKey: @"To"]; + [headerMap setObject: fullMail forKey: @"from"]; + [headerMap setObject: recipient forKey: @"to"]; date = [[NSCalendarDate date] rfc822DateString]; - [headerMap setObject: date forKey: @"Date"]; - [headerMap setObject: [self subject] forKey: @"Subject"]; + [headerMap setObject: date forKey: @"date"]; + [headerMap setObject: [self subject] forKey: @"subject"]; message = [NGMimeMessage messageWithHeader: headerMap]; body = [[NGMimeMultipartBody alloc] initWithPart: message]; diff --git a/UI/Templates/MainUI/SOGoBrowsersPanel.wox b/UI/Templates/MainUI/SOGoBrowsersPanel.wox index 369860306..cd430b8a6 100644 --- a/UI/Templates/MainUI/SOGoBrowsersPanel.wox +++ b/UI/Templates/MainUI/SOGoBrowsersPanel.wox @@ -18,12 +18,12 @@

Firefox

-

Internet Explorer 7

-

Safari 3

+

Internet Explorer 8

+

Safari 4

-

Safari 3

+

Safari 4