From e4aedbac080d85ac4f927acb9e015b9e8839891b Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 20 Nov 2013 08:56:29 -0500 Subject: [PATCH 001/214] conversion to file attachments + CIDs. --- NEWS | 13 ++ SoObjects/Mailer/NSString+Mail.h | 4 + SoObjects/Mailer/NSString+Mail.m | 206 ++++++++++++++++++--- SoObjects/Mailer/SOGoDraftObject.m | 127 ++++++++++--- SoObjects/Mailer/SOGoMailObject+Draft.m | 33 ++++ UI/MailPartViewers/UIxMailPartHTMLViewer.h | 4 +- UI/MailPartViewers/UIxMailPartHTMLViewer.m | 6 +- 7 files changed, 336 insertions(+), 57 deletions(-) diff --git a/NEWS b/NEWS index c5184cf7c6..0fb0aada6a 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,16 @@ +2.1.2 (2013-11-XX) +------------------ + +New features + - + +Enhancements + - we now automatically convert into file attachments + using CIDs. This prevents Outlook issues. + +Bug fixes + - + 2.1.1 (2013-11-19) ------------------ diff --git a/SoObjects/Mailer/NSString+Mail.h b/SoObjects/Mailer/NSString+Mail.h index e967622b51..5d04fc01b9 100644 --- a/SoObjects/Mailer/NSString+Mail.h +++ b/SoObjects/Mailer/NSString+Mail.h @@ -21,12 +21,16 @@ #ifndef NSSTRING_MAIL_H #define NSSTRING_MAIL_H +#import #import @interface NSString (SOGoExtension) - (NSString *) htmlToText; +- (NSString *) htmlByExtractingImages: (NSMutableArray *) theImages; - (NSString *) stringByConvertingCRLNToHTML; +- (int) indexOf: (unichar) _c + fromIndex: (int) start; - (int) indexOf: (unichar) _c; - (NSString *) decodedHeader; diff --git a/SoObjects/Mailer/NSString+Mail.m b/SoObjects/Mailer/NSString+Mail.m index 94f8e9b4fb..b9fa535df6 100644 --- a/SoObjects/Mailer/NSString+Mail.m +++ b/SoObjects/Mailer/NSString+Mail.m @@ -22,19 +22,25 @@ #import #import #import +#import + #import #import #import #import #import +#import #import #import #import +#import +#import #include #import "NSString+Mail.h" #import "NSData+Mail.h" +#import "../SOGo/SOGoObject.h" #if 0 #define showWhoWeAre() \ @@ -43,11 +49,15 @@ #define showWhoWeAre() {} #endif -@interface _SOGoHTMLToTextContentHandler : NSObject +#define paddingBuffer 8192 + +@interface _SOGoHTMLContentHandler : NSObject { + NSMutableArray *images; + NSArray *ignoreContentTags; NSArray *specialTreatmentTags; - + BOOL ignoreContent; BOOL orderedList; BOOL unorderedList; @@ -57,32 +67,26 @@ @interface _SOGoHTMLToTextContentHandler : NSObject ][;charset=][;base64], + // + if ([value length] > 5 && [[value substringToIndex: 5] caseInsensitiveCompare: @"data:"] == NSOrderedSame) + { + NSString *uniqueId, *mimeType, *encoding, *charset; + NGMimeBodyPart *bodyPart; + NGMutableHashMap *map; + NSData *data; + id body; + + int i, j, k; + + i = [value indexOf: ';']; + j = [value indexOf: ';' fromIndex: i+1]; + k = [value indexOf: ',']; + + // We try to get the MIME type + mimeType = nil; + + if (i > 5 && i < k) + { + mimeType = [value substringWithRange: NSMakeRange(5, i-5)]; + } + else + i = 5; + + // We might get a stupid value. We discard anything that doesn't have a / in it + if ([mimeType indexOf: '/'] < 0) + mimeType = @"image/jpeg"; + + // We check and skip the charset + if (j > i) + charset = [value substringWithRange: NSMakeRange(i+1, j-i-1)]; + else + j = i; + + // We check the encoding and we completely ignore it + encoding = [value substringWithRange: NSMakeRange(j+1, k-j-1)]; + + if (![encoding length]) + encoding = @"base64"; + + data = [[value substringFromIndex: k+1] dataUsingEncoding: NSASCIIStringEncoding]; + + uniqueId = [SOGoObject globallyUniqueObjectId]; + + map = [[[NGMutableHashMap alloc] initWithCapacity:5] autorelease]; + [map setObject: encoding forKey: @"content-transfer-encoding"]; + [map setObject:[NSNumber numberWithInt:[data length]] forKey: @"content-length"]; + [map setObject: [NSString stringWithFormat: @"inline; filename=\"%@\"", uniqueId] forKey: @"content-disposition"]; + [map setObject: [NSString stringWithFormat: @"%@; name=\"%@\"", mimeType, uniqueId] forKey: @"content-type"]; + [map setObject: [NSString stringWithFormat: @"<%@>", uniqueId] forKey: @"content-id"]; + + + body = [[NGMimeFileData alloc] initWithBytes: [data bytes] length: [data length]]; + + bodyPart = [[[NGMimeBodyPart alloc] initWithHeader:map] autorelease]; + [bodyPart setBody: body]; + [body release]; + + [images addObject: bodyPart]; + + [result appendFormat: @"", uniqueId, mimeType]; + } + } } - (void) endElement: (NSString *) element @@ -228,7 +352,7 @@ - (void) endElement: (NSString *) element showWhoWeAre(); - if (ignoreContent) + if (ignoreContent && ignoreContentTags && specialTreatmentTags) { tagName = [rawName lowercaseString]; if ([ignoreContentTags containsObject: tagName]) @@ -345,13 +469,13 @@ @implementation NSString (SOGoExtension) - (NSString *) htmlToText { - _SOGoHTMLToTextContentHandler *handler; + _SOGoHTMLContentHandler *handler; id parser; NSData *d; parser = [[SaxXMLReaderFactory standardXMLReaderFactory] createXMLReaderForMimeType: @"text/html"]; - handler = [_SOGoHTMLToTextContentHandler htmlToTextContentHandler]; + handler = [_SOGoHTMLContentHandler htmlToTextContentHandler]; [parser setContentHandler: handler]; d = [self dataUsingEncoding: NSUTF8StringEncoding]; @@ -360,7 +484,24 @@ - (NSString *) htmlToText return [handler result]; } -#define paddingBuffer 8192 +- (NSString *) htmlByExtractingImages: (NSMutableArray *) theImages +{ + _SOGoHTMLContentHandler *handler; + id parser; + NSData *d; + + parser = [[SaxXMLReaderFactory standardXMLReaderFactory] + createXMLReaderForMimeType: @"text/html"]; + handler = [_SOGoHTMLContentHandler sanitizerContentHandler]; + [handler setImages: theImages]; + + [parser setContentHandler: handler]; + + d = [self dataUsingEncoding: NSUTF8StringEncoding]; + [parser parseFromSource: d]; + + return [handler result]; +} static inline char * convertChars (const char *oldString, unsigned int oldLength, @@ -434,18 +575,29 @@ - (NSString *) stringByConvertingCRLNToHTML return convertedString; } + - (int) indexOf: (unichar) _c + fromIndex: (int) start { int i, len; - + len = [self length]; - - for (i = 0; i < len; i++) + + if (start < 0 || start >= len) + start = 0; + + for (i = start; i < len; i++) { if ([self characterAtIndex: i] == _c) return i; } return -1; + +} + +- (int) indexOf: (unichar) _c +{ + return [self indexOf: _c fromIndex: 0]; } - (NSString *) decodedHeader diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index 9ce6b4136e..4a9ea4ece4 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -1,5 +1,5 @@ /* - Copyright (C) 2007-2012 Inverse inc. + Copyright (C) 2007-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. @@ -395,11 +395,17 @@ - (void) setSourceFolderWithMailObject: (SOGoMailObject *) sourceMail [self setSourceFolder: [paths componentsJoinedByString: @"/"]]; } +// +// +// - (NSString *) sourceFolder { return sourceFolder; } +// +// +// - (NSException *) storeInfo { NSMutableDictionary *infos; @@ -446,6 +452,9 @@ - (NSException *) storeInfo return error; } +// +// +// - (void) _loadInfosFromDictionary: (NSDictionary *) infoDict { id value; @@ -478,11 +487,17 @@ - (void) _loadInfosFromDictionary: (NSDictionary *) infoDict [self setInReplyTo: value]; } +// +// +// - (NSString *) relativeImap4Name { return [NSString stringWithFormat: @"%d", IMAP4ID]; } +// +// +// - (void) fetchInfo { NSString *p; @@ -504,16 +519,25 @@ - (void) fetchInfo [self debugWithFormat: @"Note: info object does not yet exist: %@", p]; } +// +// +// - (void) setIMAP4ID: (int) newIMAP4ID { IMAP4ID = newIMAP4ID; } +// +// +// - (int) IMAP4ID { return IMAP4ID; } +// +// +// - (NSException *) save { NGImap4Client *client; @@ -552,6 +576,9 @@ - (NSException *) save return error; } +// +// +// - (void) _addEMailsOfAddresses: (NSArray *) _addrs toArray: (NSMutableArray *) _ma { @@ -564,6 +591,9 @@ - (void) _addEMailsOfAddresses: (NSArray *) _addrs [_ma addObject: [currentAddress email]]; } +// +// +// - (void) _addRecipients: (NSArray *) recipients toArray: (NSMutableArray *) array { @@ -576,6 +606,9 @@ - (void) _addRecipients: (NSArray *) recipients [array addObject: [currentAddress baseEMail]]; } +// +// +// - (void) _purgeRecipients: (NSArray *) recipients fromAddresses: (NSMutableArray *) addresses { @@ -602,6 +635,9 @@ - (void) _purgeRecipients: (NSArray *) recipients } } +// +// +// - (void) _fillInReplyAddresses: (NSMutableDictionary *) _info replyToAll: (BOOL) _replyToAll envelope: (NGImap4Envelope *) _envelope @@ -711,6 +747,9 @@ - (void) _fillInReplyAddresses: (NSMutableDictionary *) _info } } +// +// +// - (NSArray *) _attachmentBodiesFromPaths: (NSArray *) paths fromResponseFetch: (NSDictionary *) fetch; { @@ -731,6 +770,9 @@ - (NSArray *) _attachmentBodiesFromPaths: (NSArray *) paths return bodies; } +// +// +// - (void) _fetchAttachments: (NSArray *) parts fromMail: (SOGoMailObject *) sourceMail { @@ -758,6 +800,9 @@ - (void) _fetchAttachments: (NSArray *) parts } } +// +// +// - (void) fetchMailForEditing: (SOGoMailObject *) sourceMail { NSString *subject, *msgid; @@ -804,6 +849,9 @@ - (void) fetchMailForEditing: (SOGoMailObject *) sourceMail [self storeInfo]; } +// +// +// - (void) fetchMailForReplying: (SOGoMailObject *) sourceMail toAll: (BOOL) toAll { @@ -1255,6 +1303,9 @@ - (NGMimeBodyPart *) bodyPartForAttachmentWithName: (NSString *) _name return bodyPart; } +// +// +// - (NSArray *) bodyPartsForAllAttachments { /* returns nil on error */ @@ -1276,6 +1327,9 @@ - (NSArray *) bodyPartsForAllAttachments return bodyParts; } +// +// +// - (NGMimeBodyPart *) mimeMultipartAlternative { NGMimeMultipartBody *textParts; @@ -1301,6 +1355,9 @@ - (NGMimeBodyPart *) mimeMultipartAlternative return part; } +// +// +// - (NGMimeMessage *) mimeMultiPartMessageWithHeaderMap: (NGMutableHashMap *) map andBodyParts: (NSArray *) _bodyParts { @@ -1340,6 +1397,9 @@ - (NGMimeMessage *) mimeMultiPartMessageWithHeaderMap: (NGMutableHashMap *) map return message; } +// +// +// - (void) _addHeaders: (NSDictionary *) _h toHeaderMap: (NGMutableHashMap *) _map { @@ -1511,48 +1571,59 @@ - (NGMutableHashMap *) mimeHeaderMapWithHeaders: (NSDictionary *) _headers return map; } +// +// +// - (NGMimeMessage *) mimeMessageWithHeaders: (NSDictionary *) _headers excluding: (NSArray *) _exclude { - NGMutableHashMap *map; - NSArray *bodyParts; - NGMimeMessage *message; + NSMutableArray *bodyParts; + NGMimeMessage *message; + NGMutableHashMap *map; + NSString *newText; message = nil; + bodyParts = [NSMutableArray array]; + newText = [text htmlByExtractingImages: bodyParts]; + + if ([bodyParts count]) + [self setText: newText]; + map = [self mimeHeaderMapWithHeaders: _headers excluding: _exclude]; if (map) { //[self debugWithFormat: @"MIME Envelope: %@", map]; - - bodyParts = [self bodyPartsForAllAttachments]; - if (bodyParts) - { - //[self debugWithFormat: @"attachments: %@", bodyParts]; - - if ([bodyParts count] == 0) - /* no attachments */ - message = [self mimeMessageForContentWithHeaderMap: map]; - else - /* attachments, create multipart/mixed */ - message = [self mimeMultiPartMessageWithHeaderMap: map - andBodyParts: bodyParts]; - //[self debugWithFormat: @"message: %@", message]; - } + + [bodyParts addObjectsFromArray: [self bodyPartsForAllAttachments]]; + + //[self debugWithFormat: @"attachments: %@", bodyParts]; + + if ([bodyParts count] == 0) + /* no attachments */ + message = [self mimeMessageForContentWithHeaderMap: map]; else - [self errorWithFormat: - @"could not create body parts for attachments!"]; + /* attachments, create multipart/mixed */ + message = [self mimeMultiPartMessageWithHeaderMap: map + andBodyParts: bodyParts]; + //[self debugWithFormat: @"message: %@", message]; } - + return message; } +// +// +// - (NGMimeMessage *) mimeMessage { return [self mimeMessageWithHeaders: nil excluding: nil]; } +// +// +// - (NSData *) mimeMessageAsData { NGMimeMessageGenerator *generator; @@ -1565,6 +1636,9 @@ - (NSData *) mimeMessageAsData return message; } +// +// +// - (NSArray *) allRecipients { NSMutableArray *allRecipients; @@ -1584,6 +1658,9 @@ - (NSArray *) allRecipients return allRecipients; } +// +// +// - (NSArray *) allBareRecipients { NSMutableArray *bareRecipients; @@ -1599,11 +1676,17 @@ - (NSArray *) allBareRecipients return bareRecipients; } +// +// +// - (NSException *) sendMail { return [self sendMailAndCopyToSent: YES]; } +// +// +// - (NSException *) sendMailAndCopyToSent: (BOOL) copyToSent { NSMutableData *cleaned_message; diff --git a/SoObjects/Mailer/SOGoMailObject+Draft.m b/SoObjects/Mailer/SOGoMailObject+Draft.m index 00f34be501..121983c8ac 100644 --- a/SoObjects/Mailer/SOGoMailObject+Draft.m +++ b/SoObjects/Mailer/SOGoMailObject+Draft.m @@ -42,6 +42,9 @@ #define maxFilenameLength 64 +// +// +// @implementation SOGoMailObject (SOGoDraftObjectExtensions) - (NSString *) subjectForReply @@ -77,6 +80,9 @@ - (NSString *) subjectForReply return newSubject; } +// +// +// - (NSString *) _convertRawContentForEditing: (NSString *) raw rawHtml: (BOOL) html { @@ -96,6 +102,9 @@ - (NSString *) _convertRawContentForEditing: (NSString *) raw return rc; } +// +// +// - (NSString *) _contentForEditingFromKeys: (NSArray *) keys { NSArray *types; @@ -151,6 +160,9 @@ - (NSString *) _contentForEditingFromKeys: (NSArray *) keys return content; } +// +// +// - (NSString *) contentForEditing { NSMutableArray *keys; @@ -166,6 +178,9 @@ - (NSString *) contentForEditing return [self _contentForEditingFromKeys: keys]; } +// +// +// - (NSString *) contentForReply { NSString *pageName; @@ -185,6 +200,9 @@ - (NSString *) contentForReply return [[page generateResponse] contentAsString]; } +// +// +// - (NSString *) filenameForForward { NSString *subject; @@ -218,6 +236,9 @@ - (NSString *) filenameForForward return newSubject; } +// +// +// - (NSString *) subjectForForward { NSString *subject, *newSubject; @@ -231,6 +252,9 @@ - (NSString *) subjectForForward return newSubject; } +// +// +// - (NSString *) contentForInlineForward { SOGoUserDefaults *ud; @@ -247,6 +271,9 @@ - (NSString *) contentForInlineForward return [[page generateResponse] contentAsString]; } +// +// +// - (void) _fetchFileAttachmentKey: (NSDictionary *) part intoArray: (NSMutableArray *) keys withPath: (NSString *) path @@ -291,6 +318,9 @@ - (void) _fetchFileAttachmentKey: (NSDictionary *) part } } +// +// +// - (void) _fetchFileAttachmentKeysInPart: (NSDictionary *) part intoArray: (NSMutableArray *) keys withPath: (NSString *) path @@ -325,6 +355,9 @@ - (void) _fetchFileAttachmentKeysInPart: (NSDictionary *) part } } +// +// +// #warning we might need to handle parts with a "name" attribute - (NSArray *) fetchFileAttachmentKeys { diff --git a/UI/MailPartViewers/UIxMailPartHTMLViewer.h b/UI/MailPartViewers/UIxMailPartHTMLViewer.h index bbfb0e0499..5ba673c31e 100644 --- a/UI/MailPartViewers/UIxMailPartHTMLViewer.h +++ b/UI/MailPartViewers/UIxMailPartHTMLViewer.h @@ -1,8 +1,6 @@ /* UIxMailPartHTMLViewer.h - this file is part of SOGo * - * Copyright (C) 2007, 2008 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/UI/MailPartViewers/UIxMailPartHTMLViewer.m b/UI/MailPartViewers/UIxMailPartHTMLViewer.m index 99d43abdd6..e60f97d0f9 100644 --- a/UI/MailPartViewers/UIxMailPartHTMLViewer.m +++ b/UI/MailPartViewers/UIxMailPartHTMLViewer.m @@ -1,10 +1,6 @@ /* UIxMailPartHTMLViewer.m - this file is part of SOGo * - * Copyright (C) 2007-2012 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Ludovic Marcotte - * Francis Lachapelle + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From f167475c91d9481914e7ccfb930ae05963db2bd3 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 20 Nov 2013 11:17:42 -0500 Subject: [PATCH 002/214] Update CKEditor to version 4.3.0 --- NEWS | 1 + UI/WebServerResources/UIxMailEditor.js | 7 +- .../ckeditor/build-config.js | 3 +- UI/WebServerResources/ckeditor/ckeditor.js | 1378 +++++++++-------- UI/WebServerResources/ckeditor/config.js | 1 + UI/WebServerResources/ckeditor/contents.css | 12 +- .../ckeditor/plugins/image/dialogs/image.js | 42 +- .../ckeditor/plugins/link/dialogs/link.js | 13 +- .../ckeditor/plugins/table/dialogs/table.js | 6 +- .../ckeditor/skins/moono/dialog.css | 2 +- .../ckeditor/skins/moono/dialog_ie.css | 2 +- .../ckeditor/skins/moono/dialog_ie7.css | 2 +- .../ckeditor/skins/moono/dialog_ie8.css | 2 +- .../ckeditor/skins/moono/dialog_iequirks.css | 2 +- .../ckeditor/skins/moono/dialog_opera.css | 2 +- .../ckeditor/skins/moono/editor.css | 2 +- .../ckeditor/skins/moono/editor_gecko.css | 2 +- .../ckeditor/skins/moono/editor_ie.css | 2 +- .../ckeditor/skins/moono/editor_ie7.css | 2 +- .../ckeditor/skins/moono/editor_ie8.css | 2 +- .../ckeditor/skins/moono/editor_iequirks.css | 2 +- 21 files changed, 766 insertions(+), 721 deletions(-) diff --git a/NEWS b/NEWS index 0fb0aada6a..28e9bde5bf 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,7 @@ New features Enhancements - we now automatically convert into file attachments using CIDs. This prevents Outlook issues. + - updated CKEditor to version 4.3.0 and added tab module Bug fixes - diff --git a/UI/WebServerResources/UIxMailEditor.js b/UI/WebServerResources/UIxMailEditor.js index cd9b918c3b..a41448fcac 100644 --- a/UI/WebServerResources/UIxMailEditor.js +++ b/UI/WebServerResources/UIxMailEditor.js @@ -318,6 +318,7 @@ function onTextKeyDown(event) { } else { if (!(event.shiftKey || event.metaKey || event.ctrlKey)) { + // Convert a tab to 4 spaces if (typeof(this.selectionStart) != "undefined") { // For Mozilla and Safari var cursor = this.selectionStart; @@ -325,13 +326,13 @@ function onTextKeyDown(event) { ? this.value.substr(0, cursor) : ""); var endText = this.value.substr(cursor); - var newText = startText + " " + endText; + var newText = startText + " " + endText; this.value = newText; - cursor += 3; + cursor += 4; this.setSelectionRange(cursor, cursor); } else if (this.selectionRange) // IE - this.selectionRange.text = " "; + this.selectionRange.text = " "; else { // others ? } preventDefault(event); diff --git a/UI/WebServerResources/ckeditor/build-config.js b/UI/WebServerResources/ckeditor/build-config.js index f188cd5a74..55ea1f1508 100644 --- a/UI/WebServerResources/ckeditor/build-config.js +++ b/UI/WebServerResources/ckeditor/build-config.js @@ -61,7 +61,8 @@ var CKBUILDER_CONFIG = { 'indentlist' : 1, 'table' : 1, 'tabletools' : 1, - 'tableresize' : 1 + 'tableresize' : 1, + 'tab' : 1 }, languages : { 'ar' : 1, diff --git a/UI/WebServerResources/ckeditor/ckeditor.js b/UI/WebServerResources/ckeditor/ckeditor.js index 115a8c67c5..4d006dbc2b 100644 --- a/UI/WebServerResources/ckeditor/ckeditor.js +++ b/UI/WebServerResources/ckeditor/ckeditor.js @@ -2,419 +2,450 @@ Copyright (c) 2003-2013, CKSource - Frederico Knabben. All rights reserved. For licensing, see LICENSE.html or http://ckeditor.com/license */ -(function(){if(window.CKEDITOR&&window.CKEDITOR.dom)return;window.CKEDITOR||(window.CKEDITOR=function(){var b={timestamp:"D9EF",version:"4.2.2",revision:"f98db6d8",rnd:Math.floor(900*Math.random())+100,_:{pending:[]},status:"unloaded",basePath:function(){var a=window.CKEDITOR_BASEPATH||"";if(!a)for(var b=document.getElementsByTagName("script"),e=0;e=0;w--)if(m[w].priority<=j){m.splice(w+1,0,i);return{removeListener:l}}m.unshift(i)}return{removeListener:l}}, -once:function(){var a=arguments[1];arguments[1]=function(b){b.removeListener();return a.apply(this,arguments)};return this.on.apply(this,arguments)},capture:function(){CKEDITOR.event.useCapture=1;var a=this.on.apply(this,arguments);CKEDITOR.event.useCapture=0;return a},fire:function(){var a=0,b=function(){a=1},e=0,h=function(){e=1};return function(j,i,l){var m=c(this)[j],j=a,q=e;a=e=0;if(m){var w=m.listeners;if(w.length)for(var w=w.slice(0),k,g=0;g=0&&e.listeners.splice(h,1)}},removeAllListeners:function(){var a=c(this),b;for(b in a)delete a[b]},hasListeners:function(a){return(a=c(this)[a])&&a.listeners.length>0}}}()); -CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]);CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(b,c){b in{instanceReady:1,loaded:1}&&(this[b]=true);return CKEDITOR.event.prototype.fire.call(this,b,c,this)},CKEDITOR.editor.prototype.fireOnce=function(b,c){b in{instanceReady:1,loaded:1}&&(this[b]=true);return CKEDITOR.event.prototype.fireOnce.call(this,b,c,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype)); -CKEDITOR.env||(CKEDITOR.env=function(){var b=navigator.userAgent.toLowerCase(),c=window.opera,a={ie:eval("/*@cc_on!@*/false"),opera:!!c&&c.version,webkit:b.indexOf(" applewebkit/")>-1,air:b.indexOf(" adobeair/")>-1,mac:b.indexOf("macintosh")>-1,quirks:document.compatMode=="BackCompat",mobile:b.indexOf("mobile")>-1,iOS:/(ipad|iphone|ipod)/.test(b),isCustomDomain:function(){if(!this.ie)return false;var a=document.domain,f=window.location.hostname;return a!=f&&a!="["+f+"]"},secure:location.protocol== -"https:"};a.gecko=navigator.product=="Gecko"&&!a.webkit&&!a.opera;if(a.webkit)b.indexOf("chrome")>-1?a.chrome=true:a.safari=true;var f=0;if(a.ie){f=a.quirks||!document.documentMode?parseFloat(b.match(/msie (\d+)/)[1]):document.documentMode;a.ie9Compat=f==9;a.ie8Compat=f==8;a.ie7Compat=f==7;a.ie6Compat=f<7||a.quirks&&f<10}if(a.gecko){var d=b.match(/rv:([\d\.]+)/);if(d){d=d[1].split(".");f=d[0]*1E4+(d[1]||0)*100+(d[2]||0)*1}}a.opera&&(f=parseFloat(c.version()));a.air&&(f=parseFloat(b.match(/ adobeair\/(\d+)/)[1])); -a.webkit&&(f=parseFloat(b.match(/ applewebkit\/(\d+)/)[1]));a.version=f;a.isCompatible=a.iOS&&f>=534||!a.mobile&&(a.ie&&f>6||a.gecko&&f>=10801||a.opera&&f>=9.5||a.air&&f>=1||a.webkit&&f>=522||false);a.hidpi=window.devicePixelRatio>=2;a.cssClass="cke_browser_"+(a.ie?"ie":a.gecko?"gecko":a.opera?"opera":a.webkit?"webkit":"unknown");if(a.quirks)a.cssClass=a.cssClass+" cke_browser_quirks";if(a.ie){a.cssClass=a.cssClass+(" cke_browser_ie"+(a.quirks||a.version<7?"6":a.version));if(a.quirks)a.cssClass=a.cssClass+ -" cke_browser_iequirks"}if(a.gecko)if(f<10900)a.cssClass=a.cssClass+" cke_browser_gecko18";else if(f<=11E3)a.cssClass=a.cssClass+" cke_browser_gecko19";if(a.air)a.cssClass=a.cssClass+" cke_browser_air";if(a.iOS)a.cssClass=a.cssClass+" cke_browser_ios";if(a.hidpi)a.cssClass=a.cssClass+" cke_hidpi";return a}()); -"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR);CKEDITOR.loadFullCore=function(){if(CKEDITOR.status!="basic_ready")CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var b=document.createElement("script");b.type="text/javascript";b.src=CKEDITOR.basePath+"ckeditor.js";document.getElementsByTagName("head")[0].appendChild(b)}};CKEDITOR.loadFullCoreTimeout=0;CKEDITOR.add=function(b){(this._.pending||(this._.pending=[])).push(b)};(function(){CKEDITOR.domReady(function(){var b= -CKEDITOR.loadFullCore,c=CKEDITOR.loadFullCoreTimeout;if(b){CKEDITOR.status="basic_ready";b&&b._load?b():c&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},c*1E3)}})})();CKEDITOR.status="basic_loaded"}();CKEDITOR.dom={}; -(function(){var b=[],c=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.opera?"-o-":CKEDITOR.env.ie?"-ms-":"";CKEDITOR.on("reset",function(){b=[]});CKEDITOR.tools={arrayCompare:function(a,f){if(!a&&!f)return true;if(!a||!f||a.length!=f.length)return false;for(var b=0;b"+b+""):d.push('');return d.join("")},htmlEncode:function(a){return(""+a).replace(/&/g,"&").replace(/>/g,">").replace(//g,">")},getNextNumber:function(){var a=0;return function(){return++a}}(),getNextId:function(){return"cke_"+this.getNextNumber()},override:function(a,b){var d=b(a);d.prototype=a.prototype;return d},setTimeout:function(a,b,d,c,h){h||(h=window);d||(d=h);return h.setTimeout(function(){c?a.apply(d,[].concat(c)):a.apply(d)},b||0)},trim:function(){var a=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(b){return b.replace(a, -"")}}(),ltrim:function(){var a=/^[ \t\n\r]+/g;return function(b){return b.replace(a,"")}}(),rtrim:function(){var a=/[ \t\n\r]+$/g;return function(b){return b.replace(a,"")}}(),indexOf:function(a,b){if(typeof b=="function")for(var d=0,c=a.length;d=0?a[d]:null},bind:function(a,b){return function(){return a.apply(b, -arguments)}},createClass:function(a){var b=a.$,d=a.base,c=a.privates||a._,h=a.proto,a=a.statics;!b&&(b=function(){d&&this.base.apply(this,arguments)});if(c)var j=b,b=function(){var a=this._||(this._={}),b;for(b in c){var f=c[b];a[b]=typeof f=="function"?CKEDITOR.tools.bind(f,this):f}j.apply(this,arguments)};if(d){b.prototype=this.prototypedCopy(d.prototype);b.prototype.constructor=b;b.base=d;b.baseProto=d.prototype;b.prototype.base=function(){this.base=d.prototype.base;d.apply(this,arguments);this.base= -arguments.callee}}h&&this.extend(b.prototype,h,true);a&&this.extend(b,a,true);return b},addFunction:function(a,f){return b.push(function(){return a.apply(f||this,arguments)})-1},removeFunction:function(a){b[a]=null},callFunction:function(a){var f=b[a];return f&&f.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a=/^-?\d+\.?\d*px$/,b;return function(d){b=CKEDITOR.tools.trim(d+"")+"px";return a.test(b)?b:d||""}}(),convertToPx:function(){var a;return function(b){if(!a){a= -CKEDITOR.dom.element.createFromHtml('
',CKEDITOR.document);CKEDITOR.document.getBody().append(a)}if(!/%$/.test(b)){a.setStyle("width",b);return a.$.clientWidth}return b}}(),repeat:function(a,b){return Array(b+1).join(a)},tryThese:function(){for(var a,b=0,d=arguments.length;b=0;s--)if(l[s].priority<=n){l.splice(s+1,0,j);return{removeListener:k}}l.unshift(j)}return{removeListener:k}}, +once:function(){var b=arguments[1];arguments[1]=function(e){e.removeListener();return b.apply(this,arguments)};return this.on.apply(this,arguments)},capture:function(){CKEDITOR.event.useCapture=1;var b=this.on.apply(this,arguments);CKEDITOR.event.useCapture=0;return b},fire:function(){var b=0,e=function(){b=1},a=0,h=function(){a=1};return function(n,j,k){var l=d(this)[n],n=b,u=a;b=a=0;if(l){var s=l.listeners;if(s.length)for(var s=s.slice(0),t,g=0;g=0&&a.listeners.splice(h,1)}},removeAllListeners:function(){var b=d(this),e;for(e in b)delete b[e]},hasListeners:function(b){return(b=d(this)[b])&&b.listeners.length>0}}}()); +CKEDITOR.editor||(CKEDITOR.editor=function(){CKEDITOR._.pending.push([this,arguments]);CKEDITOR.event.call(this)},CKEDITOR.editor.prototype.fire=function(a,d){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fire.call(this,a,d,this)},CKEDITOR.editor.prototype.fireOnce=function(a,d){a in{instanceReady:1,loaded:1}&&(this[a]=true);return CKEDITOR.event.prototype.fireOnce.call(this,a,d,this)},CKEDITOR.event.implementOn(CKEDITOR.editor.prototype)); +CKEDITOR.env||(CKEDITOR.env=function(){var a=navigator.userAgent.toLowerCase(),d=window.opera,b={ie:a.indexOf("trident/")>-1,opera:!!d&&d.version,webkit:a.indexOf(" applewebkit/")>-1,air:a.indexOf(" adobeair/")>-1,mac:a.indexOf("macintosh")>-1,quirks:document.compatMode=="BackCompat",mobile:a.indexOf("mobile")>-1,iOS:/(ipad|iphone|ipod)/.test(a),isCustomDomain:function(){if(!this.ie)return false;var e=document.domain,b=window.location.hostname;return e!=b&&e!="["+b+"]"},secure:location.protocol== +"https:"};b.gecko=navigator.product=="Gecko"&&!b.webkit&&!b.opera&&!b.ie;if(b.webkit)a.indexOf("chrome")>-1?b.chrome=true:b.safari=true;var c=0;if(b.ie){c=b.quirks||!document.documentMode?parseFloat(a.match(/msie (\d+)/)[1]):document.documentMode;b.ie9Compat=c==9;b.ie8Compat=c==8;b.ie7Compat=c==7;b.ie6Compat=c<7||b.quirks&&c<10}if(b.gecko){var e=a.match(/rv:([\d\.]+)/);if(e){e=e[1].split(".");c=e[0]*1E4+(e[1]||0)*100+(e[2]||0)*1}}b.opera&&(c=parseFloat(d.version()));b.air&&(c=parseFloat(a.match(/ adobeair\/(\d+)/)[1])); +b.webkit&&(c=parseFloat(a.match(/ applewebkit\/(\d+)/)[1]));b.version=c;b.isCompatible=b.iOS&&c>=534||!b.mobile&&(b.ie&&c>6||b.gecko&&c>=10801||b.opera&&c>=9.5||b.air&&c>=1||b.webkit&&c>=522||false);b.hidpi=window.devicePixelRatio>=2;b.needsBrFiller=b.gecko||b.webkit||b.ie&&c>10;b.needsNbspFiller=b.ie&&c<11;b.cssClass="cke_browser_"+(b.ie?"ie":b.gecko?"gecko":b.opera?"opera":b.webkit?"webkit":"unknown");if(b.quirks)b.cssClass=b.cssClass+" cke_browser_quirks";if(b.ie){b.cssClass=b.cssClass+(" cke_browser_ie"+ +(b.quirks||b.version<7?"6":b.version));if(b.quirks)b.cssClass=b.cssClass+" cke_browser_iequirks"}if(b.gecko)if(c<10900)b.cssClass=b.cssClass+" cke_browser_gecko18";else if(c<=11E3)b.cssClass=b.cssClass+" cke_browser_gecko19";if(b.air)b.cssClass=b.cssClass+" cke_browser_air";if(b.iOS)b.cssClass=b.cssClass+" cke_browser_ios";if(b.hidpi)b.cssClass=b.cssClass+" cke_hidpi";return b}()); +"unloaded"==CKEDITOR.status&&function(){CKEDITOR.event.implementOn(CKEDITOR);CKEDITOR.loadFullCore=function(){if(CKEDITOR.status!="basic_ready")CKEDITOR.loadFullCore._load=1;else{delete CKEDITOR.loadFullCore;var a=document.createElement("script");a.type="text/javascript";a.src=CKEDITOR.basePath+"ckeditor.js";document.getElementsByTagName("head")[0].appendChild(a)}};CKEDITOR.loadFullCoreTimeout=0;CKEDITOR.add=function(a){(this._.pending||(this._.pending=[])).push(a)};(function(){CKEDITOR.domReady(function(){var a= +CKEDITOR.loadFullCore,d=CKEDITOR.loadFullCoreTimeout;if(a){CKEDITOR.status="basic_ready";a&&a._load?a():d&&setTimeout(function(){CKEDITOR.loadFullCore&&CKEDITOR.loadFullCore()},d*1E3)}})})();CKEDITOR.status="basic_loaded"}();CKEDITOR.dom={}; +(function(){var a=[],d=CKEDITOR.env.gecko?"-moz-":CKEDITOR.env.webkit?"-webkit-":CKEDITOR.env.opera?"-o-":CKEDITOR.env.ie?"-ms-":"";CKEDITOR.on("reset",function(){a=[]});CKEDITOR.tools={arrayCompare:function(b,a){if(!b&&!a)return true;if(!b||!a||b.length!=a.length)return false;for(var e=0;e"+a+""):e.push('');return e.join("")},htmlEncode:function(b){return(""+b).replace(/&/g,"&").replace(/>/g,">").replace(//g,">")},htmlDecodeAttr:function(b){return b.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">")},getNextNumber:function(){var b=0;return function(){return++b}}(),getNextId:function(){return"cke_"+this.getNextNumber()},override:function(b,a){var e=a(b);e.prototype=b.prototype;return e},setTimeout:function(b,a,e,f,d){d||(d=window);e||(e=d);return d.setTimeout(function(){f?b.apply(e,[].concat(f)): +b.apply(e)},a||0)},trim:function(){var b=/(?:^[ \t\n\r]+)|(?:[ \t\n\r]+$)/g;return function(a){return a.replace(b,"")}}(),ltrim:function(){var b=/^[ \t\n\r]+/g;return function(a){return a.replace(b,"")}}(),rtrim:function(){var b=/[ \t\n\r]+$/g;return function(a){return a.replace(b,"")}}(),indexOf:function(b,a){if(typeof a=="function")for(var e=0,f=b.length;e=0?b[e]:null},bind:function(b,a){return function(){return b.apply(a,arguments)}},createClass:function(b){var a=b.$,e=b.base,f=b.privates||b._,d=b.proto,b=b.statics;!a&&(a=function(){e&&this.base.apply(this,arguments)});if(f)var n=a,a=function(){var e=this._||(this._={}),a;for(a in f){var b=f[a];e[a]=typeof b=="function"?CKEDITOR.tools.bind(b,this):b}n.apply(this,arguments)};if(e){a.prototype=this.prototypedCopy(e.prototype);a.prototype.constructor=a;a.base= +e;a.baseProto=e.prototype;a.prototype.base=function(){this.base=e.prototype.base;e.apply(this,arguments);this.base=arguments.callee}}d&&this.extend(a.prototype,d,true);b&&this.extend(a,b,true);return a},addFunction:function(b,c){return a.push(function(){return b.apply(c||this,arguments)})-1},removeFunction:function(b){a[b]=null},callFunction:function(b){var c=a[b];return c&&c.apply(window,Array.prototype.slice.call(arguments,1))},cssLength:function(){var a=/^-?\d+\.?\d*px$/,c;return function(e){c= +CKEDITOR.tools.trim(e+"")+"px";return a.test(c)?c:e||""}}(),convertToPx:function(){var a;return function(c){if(!a){a=CKEDITOR.dom.element.createFromHtml('
',CKEDITOR.document);CKEDITOR.document.getBody().append(a)}if(!/%$/.test(c)){a.setStyle("width",c);return a.$.clientWidth}return c}}(),repeat:function(a,c){return Array(c+1).join(a)},tryThese:function(){for(var a,c=0,e=arguments.length;c8)&&c)b=c+":"+b;return new CKEDITOR.dom.nodeList(this.$.getElementsByTagName(b))},getHead:function(){var b=this.$.getElementsByTagName("head")[0];return b= -b?new CKEDITOR.dom.element(b):this.getDocumentElement().append(new CKEDITOR.dom.element("head"),true)},getBody:function(){return new CKEDITOR.dom.element(this.$.body)},getDocumentElement:function(){return new CKEDITOR.dom.element(this.$.documentElement)},getWindow:function(){return new CKEDITOR.dom.window(this.$.parentWindow||this.$.defaultView)},write:function(b){this.$.open("text/html","replace");CKEDITOR.env.ie&&(b=b.replace(/(?:^\s*]*?>)|^/i,'$&\n
From 682ed767d956f0650de36e352ff3285856fdc0b3 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 21 Nov 2013 08:50:24 -0500 Subject: [PATCH 005/214] Fix the Sieve filters editor with new mail flags --- UI/Templates/PreferencesUI/UIxFilterEditor.wox | 2 +- UI/WebServerResources/UIxFilterEditor.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/UI/Templates/PreferencesUI/UIxFilterEditor.wox b/UI/Templates/PreferencesUI/UIxFilterEditor.wox index 11342add16..c5f434e615 100644 --- a/UI/Templates/PreferencesUI/UIxFilterEditor.wox +++ b/UI/Templates/PreferencesUI/UIxFilterEditor.wox @@ -13,7 +13,7 @@ >
diff --git a/UI/WebServerResources/UIxFilterEditor.js b/UI/WebServerResources/UIxFilterEditor.js index c56d4660bb..cfa8c3b386 100644 --- a/UI/WebServerResources/UIxFilterEditor.js +++ b/UI/WebServerResources/UIxFilterEditor.js @@ -92,8 +92,8 @@ function setupConstants() { "not_junk": _("Not Junk") }; - for (var name in labels) { - flagLabels[name] = _( labels[name][0] ); + for (var name in mailTags) { + flagLabels[name] = _( mailTags[name][0] ); } } From 32ba01315f13631ff40d00081f4e481c3614af72 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 22 Nov 2013 11:29:24 -0500 Subject: [PATCH 006/214] Init local variable to avoid potential crasher. --- OpenChange/MAPIStoreGCSBaseContext.m | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OpenChange/MAPIStoreGCSBaseContext.m b/OpenChange/MAPIStoreGCSBaseContext.m index 4da73b3499..cc09a41fe0 100644 --- a/OpenChange/MAPIStoreGCSBaseContext.m +++ b/OpenChange/MAPIStoreGCSBaseContext.m @@ -122,6 +122,8 @@ + (struct mapistore_contexts_list *) listContextsForUser: (NSString *) userName [MAPIApp setUserContext: userContext]; moduleName = [self MAPIModuleName]; parentFolder = [[userContext rootFolders] objectForKey: moduleName]; + nameInContainer = nil; + if (![parentFolder newFolderWithName: folderName nameInContainer: &nameInContainer]) mapistoreURI = [NSString stringWithFormat: @"sogo://%@@%@/%@/", From 2211f6d168e84cc9d0157e400276cfdaae242647 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 22 Nov 2013 14:39:24 -0500 Subject: [PATCH 007/214] Move mail tags strings to UI/Common --- SoObjects/Mailer/SOGoMailLabel.m | 3 +-- UI/Common/Arabic.lproj/Localizable.strings | 8 +++++++ .../Localizable.strings | 8 +++++++ UI/Common/Catalan.lproj/Localizable.strings | 8 +++++++ UI/Common/Czech.lproj/Localizable.strings | 8 +++++++ UI/Common/Danish.lproj/Localizable.strings | 8 +++++++ UI/Common/Dutch.lproj/Localizable.strings | 8 +++++++ UI/Common/English.lproj/Localizable.strings | 9 +++++++ UI/Common/Finnish.lproj/Localizable.strings | 8 +++++++ UI/Common/French.lproj/Localizable.strings | 8 +++++++ UI/Common/German.lproj/Localizable.strings | 8 +++++++ UI/Common/Hungarian.lproj/Localizable.strings | 8 +++++++ UI/Common/Icelandic.lproj/Localizable.strings | 8 +++++++ UI/Common/Italian.lproj/Localizable.strings | 8 +++++++ .../NorwegianBokmal.lproj/Localizable.strings | 8 +++++++ .../Localizable.strings | 8 +++++++ UI/Common/Polish.lproj/Localizable.strings | 8 +++++++ UI/Common/Russian.lproj/Localizable.strings | 8 +++++++ UI/Common/Slovak.lproj/Localizable.strings | 8 +++++++ .../Localizable.strings | 8 +++++++ .../SpanishSpain.lproj/Localizable.strings | 8 +++++++ UI/Common/Swedish.lproj/Localizable.strings | 8 +++++++ UI/Common/Ukrainian.lproj/Localizable.strings | 8 +++++++ UI/Common/Welsh.lproj/Localizable.strings | 8 +++++++ UI/MailerUI/Arabic.lproj/Localizable.strings | 5 ---- .../Localizable.strings | 5 ---- UI/MailerUI/Catalan.lproj/Localizable.strings | 5 ---- UI/MailerUI/Czech.lproj/Localizable.strings | 5 ---- UI/MailerUI/Danish.lproj/Localizable.strings | 5 ---- UI/MailerUI/Dutch.lproj/Localizable.strings | 5 ---- UI/MailerUI/English.lproj/Localizable.strings | 5 ---- UI/MailerUI/Finnish.lproj/Localizable.strings | 5 ---- UI/MailerUI/French.lproj/Localizable.strings | 5 ---- UI/MailerUI/German.lproj/Localizable.strings | 5 ---- .../Hungarian.lproj/Localizable.strings | 5 ---- .../Icelandic.lproj/Localizable.strings | 5 ---- UI/MailerUI/Italian.lproj/Localizable.strings | 5 ---- .../NorwegianBokmal.lproj/Localizable.strings | 5 ---- .../Localizable.strings | 5 ---- UI/MailerUI/Polish.lproj/Localizable.strings | 5 ---- UI/MailerUI/Russian.lproj/Localizable.strings | 5 ---- UI/MailerUI/Slovak.lproj/Localizable.strings | 5 ---- .../Localizable.strings | 5 ---- .../SpanishSpain.lproj/Localizable.strings | 5 ---- UI/MailerUI/Swedish.lproj/Localizable.strings | 5 ---- .../Ukrainian.lproj/Localizable.strings | 5 ---- UI/MailerUI/Welsh.lproj/Localizable.strings | 5 ---- .../Arabic.lproj/Localizable.strings | 23 +++++++++--------- .../Localizable.strings | 23 +++++++++--------- .../Catalan.lproj/Localizable.strings | 23 +++++++++--------- .../Czech.lproj/Localizable.strings | 23 +++++++++--------- .../Danish.lproj/Localizable.strings | 23 +++++++++--------- .../Dutch.lproj/Localizable.strings | 23 +++++++++--------- .../English.lproj/Localizable.strings | 7 ++---- .../Finnish.lproj/Localizable.strings | 23 +++++++++--------- .../French.lproj/Localizable.strings | 24 +++++++++---------- .../German.lproj/Localizable.strings | 23 +++++++++--------- .../Hungarian.lproj/Localizable.strings | 23 +++++++++--------- .../Icelandic.lproj/Localizable.strings | 23 +++++++++--------- .../Italian.lproj/Localizable.strings | 23 +++++++++--------- .../NorwegianBokmal.lproj/Localizable.strings | 23 +++++++++--------- .../Localizable.strings | 23 +++++++++--------- .../Polish.lproj/Localizable.strings | 23 +++++++++--------- .../Russian.lproj/Localizable.strings | 23 +++++++++--------- .../Slovak.lproj/Localizable.strings | 23 +++++++++--------- .../Localizable.strings | 23 +++++++++--------- .../SpanishSpain.lproj/Localizable.strings | 23 +++++++++--------- .../Swedish.lproj/Localizable.strings | 23 +++++++++--------- .../Ukrainian.lproj/Localizable.strings | 23 +++++++++--------- .../Welsh.lproj/Localizable.strings | 23 +++++++++--------- UI/WebServerResources/MailerUI.js | 5 ---- 71 files changed, 431 insertions(+), 391 deletions(-) diff --git a/SoObjects/Mailer/SOGoMailLabel.m b/SoObjects/Mailer/SOGoMailLabel.m index 413684985b..1d822e90b3 100644 --- a/SoObjects/Mailer/SOGoMailLabel.m +++ b/SoObjects/Mailer/SOGoMailLabel.m @@ -68,7 +68,6 @@ + (NSArray *) labelsFromDefaults: (NSDictionary *) theDefaults component: (UIxComponent *) theComponent { NSMutableArray *allLabels, *allKeys; - NSDictionary *mailLabelsColors; NSString *key, *name; SOGoMailLabel *label; NSArray *values; @@ -81,7 +80,7 @@ + (NSArray *) labelsFromDefaults: (NSDictionary *) theDefaults { key = [allKeys objectAtIndex: i]; values = [theDefaults objectForKey: key]; - name = [theComponent labelForKey: [values objectAtIndex: 0]]; + name = [theComponent commonLabelForKey: [values objectAtIndex: 0]]; label = [[self alloc] initWithName: key label: name diff --git a/UI/Common/Arabic.lproj/Localizable.strings b/UI/Common/Arabic.lproj/Localizable.strings index 2f3b62db7c..56679e57d9 100644 --- a/UI/Common/Arabic.lproj/Localizable.strings +++ b/UI/Common/Arabic.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "تاريخ الاستحقاق:"; "Location:" = "الموقع:"; +/* Mail labels */ +"Important" = "مهم"; +"Work" = "عمل"; +"Work" = "عمل"; +"Personal" = "شخصي"; +"To Do" = "تفعل"; +"Later" = "لاحقا"; + "a2_Sunday" = "ح"; "a2_Monday" = "ن"; "a2_Tuesday" = "ث"; diff --git a/UI/Common/BrazilianPortuguese.lproj/Localizable.strings b/UI/Common/BrazilianPortuguese.lproj/Localizable.strings index 47c6c9901a..6065945350 100644 --- a/UI/Common/BrazilianPortuguese.lproj/Localizable.strings +++ b/UI/Common/BrazilianPortuguese.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Data:"; "Location:" = "Localização:"; +/* Mail labels */ +"Important" = "Importante"; +"Work" = "Trabalho"; +"Work" = "Trabalho"; +"Personal" = "Pessoal"; +"To Do" = "Tarefa"; +"Later" = "Adiar"; + "a2_Sunday" = "Do"; "a2_Monday" = "Se"; "a2_Tuesday" = "Te"; diff --git a/UI/Common/Catalan.lproj/Localizable.strings b/UI/Common/Catalan.lproj/Localizable.strings index 0f01693695..a29d35ddd4 100644 --- a/UI/Common/Catalan.lproj/Localizable.strings +++ b/UI/Common/Catalan.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Data límit:"; "Location:" = "Lloc:"; +/* Mail labels */ +"Important" = "Important"; +"Work" = "Feina"; +"Work" = "Feina"; +"Personal" = "Personal"; +"To Do" = "Per fer"; +"Later" = "Més tard"; + "a2_Sunday" = "dg"; "a2_Monday" = "dl"; "a2_Tuesday" = "dm"; diff --git a/UI/Common/Czech.lproj/Localizable.strings b/UI/Common/Czech.lproj/Localizable.strings index c38243cde5..011219d31d 100644 --- a/UI/Common/Czech.lproj/Localizable.strings +++ b/UI/Common/Czech.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Do dne:"; "Location:" = "Místo:"; +/* Mail labels */ +"Important" = "Důležitý"; +"Work" = "Pracovní"; +"Work" = "Pracovní"; +"Personal" = "Osobní"; +"To Do" = "Třeba udělat"; +"Later" = "Později"; + "a2_Sunday" = "Ne"; "a2_Monday" = "Po"; "a2_Tuesday" = "Út"; diff --git a/UI/Common/Danish.lproj/Localizable.strings b/UI/Common/Danish.lproj/Localizable.strings index 1c4f4456af..11edd76d4c 100644 --- a/UI/Common/Danish.lproj/Localizable.strings +++ b/UI/Common/Danish.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Forfaldsdato:"; "Location:" = "Sted:"; +/* Mail labels */ +"Important" = "Vigtigt"; +"Work" = "Arbejde"; +"Work" = "Arbejde"; +"Personal" = "Privat"; +"To Do" = "To Do"; +"Later" = "Senere"; + "a2_Sunday" = "Sø"; "a2_Monday" = "Ma"; "a2_Tuesday" = "Ti"; diff --git a/UI/Common/Dutch.lproj/Localizable.strings b/UI/Common/Dutch.lproj/Localizable.strings index a7f5900618..7b69510c03 100644 --- a/UI/Common/Dutch.lproj/Localizable.strings +++ b/UI/Common/Dutch.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Verloopdatum:"; "Location:" = "Plaats:"; +/* Mail labels */ +"Important" = "Belangrijk"; +"Work" = "Werk"; +"Work" = "Werk"; +"Personal" = "Persoonlijk"; +"To Do" = "Te doen"; +"Later" = "Later"; + "a2_Sunday" = "Zo"; "a2_Monday" = "Ma"; "a2_Tuesday" = "Di"; diff --git a/UI/Common/English.lproj/Localizable.strings b/UI/Common/English.lproj/Localizable.strings index 9956719407..bfbc4b9685 100644 --- a/UI/Common/English.lproj/Localizable.strings +++ b/UI/Common/English.lproj/Localizable.strings @@ -101,6 +101,15 @@ "Due Date:" = "Due Date:"; "Location:" = "Location:"; +/* mail labels */ +/* Mail labels */ +"Important" = "Important"; +"Work" = "Work"; +"Work" = "Work"; +"Personal" = "Personal"; +"To Do" = "To Do"; +"Later" = "Later"; + "a2_Sunday" = "Su"; "a2_Monday" = "Mo"; "a2_Tuesday" = "Tu"; diff --git a/UI/Common/Finnish.lproj/Localizable.strings b/UI/Common/Finnish.lproj/Localizable.strings index 5eff8d8259..0b527b0d2d 100644 --- a/UI/Common/Finnish.lproj/Localizable.strings +++ b/UI/Common/Finnish.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Päättyy:"; "Location:" = "Sijainti:"; +/* Mail labels */ +"Important" = "Tärkeä"; +"Work" = "Työ"; +"Work" = "Työ"; +"Personal" = "Henkilökohtainen"; +"To Do" = "Tehtävä"; +"Later" = "Myöhemmin"; + "a2_Sunday" = "Su"; "a2_Monday" = "Ma"; "a2_Tuesday" = "Ti"; diff --git a/UI/Common/French.lproj/Localizable.strings b/UI/Common/French.lproj/Localizable.strings index 8797794e1e..5e1c362523 100644 --- a/UI/Common/French.lproj/Localizable.strings +++ b/UI/Common/French.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Échéance :"; "Location:" = "Lieu :"; +/* Mail labels */ +"Important" = "Important"; +"Work" = "Travail"; +"Work" = "Travail"; +"Personal" = "Personnel"; +"To Do" = "À faire"; +"Later" = "Peut attendre"; + "a2_Sunday" = "Di"; "a2_Monday" = "Lu"; "a2_Tuesday" = "Ma"; diff --git a/UI/Common/German.lproj/Localizable.strings b/UI/Common/German.lproj/Localizable.strings index 223d166af6..68195a15e5 100644 --- a/UI/Common/German.lproj/Localizable.strings +++ b/UI/Common/German.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Fällig:"; "Location:" = "Ort:"; +/* Mail labels */ +"Important" = "Wichtig"; +"Work" = "Geschäftlich"; +"Work" = "Geschäftlich"; +"Personal" = "Persönlich"; +"To Do" = "To-Do"; +"Later" = "Später"; + "a2_Sunday" = "So"; "a2_Monday" = "Mo"; "a2_Tuesday" = "Di"; diff --git a/UI/Common/Hungarian.lproj/Localizable.strings b/UI/Common/Hungarian.lproj/Localizable.strings index 7a9a91cfa6..2d2940263f 100644 --- a/UI/Common/Hungarian.lproj/Localizable.strings +++ b/UI/Common/Hungarian.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Lejárat dátuma:"; "Location:" = "Hely:"; +/* Mail labels */ +"Important" = "Fontos"; +"Work" = "Hivatalos"; +"Work" = "Hivatalos"; +"Personal" = "Személyes"; +"To Do" = "Teendő"; +"Later" = "Később"; + "a2_Sunday" = "Va"; "a2_Monday" = "Hé"; "a2_Tuesday" = "Ke"; diff --git a/UI/Common/Icelandic.lproj/Localizable.strings b/UI/Common/Icelandic.lproj/Localizable.strings index 5ff8138584..3825f20b66 100644 --- a/UI/Common/Icelandic.lproj/Localizable.strings +++ b/UI/Common/Icelandic.lproj/Localizable.strings @@ -78,6 +78,14 @@ "Due Date:" = "Lokadagur:"; "Location:" = "Staðsetning:"; +/* Mail labels */ +"Important" = "Mikilvægt"; +"Work" = "Vinna"; +"Work" = "Vinna"; +"Personal" = "Persónulegt"; +"To Do" = "Verkþáttur"; +"Later" = "Seinna"; + "a2_Sunday" = "Su"; "a2_Monday" = "Má"; "a2_Tuesday" = "Þr"; diff --git a/UI/Common/Italian.lproj/Localizable.strings b/UI/Common/Italian.lproj/Localizable.strings index 65844b3668..56ee932513 100644 --- a/UI/Common/Italian.lproj/Localizable.strings +++ b/UI/Common/Italian.lproj/Localizable.strings @@ -100,6 +100,14 @@ "Due Date:" = "Scadenza:"; "Location:" = "Luogo:"; +/* Mail labels */ +"Important" = "Importante"; +"Work" = "Lavoro"; +"Work" = "Lavoro"; +"Personal" = "Personale"; +"To Do" = "Da fare"; +"Later" = "Posponi"; + "a2_Sunday" = "Do"; "a2_Monday" = "Lu"; "a2_Tuesday" = "Ma"; diff --git a/UI/Common/NorwegianBokmal.lproj/Localizable.strings b/UI/Common/NorwegianBokmal.lproj/Localizable.strings index ffbb7e8337..d73850120d 100644 --- a/UI/Common/NorwegianBokmal.lproj/Localizable.strings +++ b/UI/Common/NorwegianBokmal.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Forfallsdato:"; "Location:" = "Lokasjon:"; +/* Mail labels */ +"Important" = "Viktig"; +"Work" = "Arbeid"; +"Work" = "Arbeid"; +"Personal" = "Personlig"; +"To Do" = "Gjøremål"; +"Later" = "Senere"; + "a2_Sunday" = "Sø"; "a2_Monday" = "Ma"; "a2_Tuesday" = "Ti"; diff --git a/UI/Common/NorwegianNynorsk.lproj/Localizable.strings b/UI/Common/NorwegianNynorsk.lproj/Localizable.strings index 57d63bc743..314a2c6fcd 100644 --- a/UI/Common/NorwegianNynorsk.lproj/Localizable.strings +++ b/UI/Common/NorwegianNynorsk.lproj/Localizable.strings @@ -78,6 +78,14 @@ "Due Date:" = "Forfallsdato:"; "Location:" = "Lokasjon:"; +/* Mail labels */ +"Important" = "Viktig"; +"Work" = "Arbeid"; +"Work" = "Arbeid"; +"Personal" = "Personlig"; +"To Do" = "Gjøremål"; +"Later" = "Senere"; + "a2_Sunday" = "Sø"; "a2_Monday" = "Ma"; "a2_Tuesday" = "Ti"; diff --git a/UI/Common/Polish.lproj/Localizable.strings b/UI/Common/Polish.lproj/Localizable.strings index 1ff72f385d..cb43b8fa8e 100644 --- a/UI/Common/Polish.lproj/Localizable.strings +++ b/UI/Common/Polish.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Termin:"; "Location:" = "Miejsce:"; +/* Mail labels */ +"Important" = "Ważne"; +"Work" = "Praca"; +"Work" = "Praca"; +"Personal" = "Osobiste"; +"To Do" = "Do zrobienia"; +"Later" = "Później"; + "a2_Sunday" = "Ni"; "a2_Monday" = "Pn"; "a2_Tuesday" = "Wt"; diff --git a/UI/Common/Russian.lproj/Localizable.strings b/UI/Common/Russian.lproj/Localizable.strings index aca037cee9..6442926e6c 100644 --- a/UI/Common/Russian.lproj/Localizable.strings +++ b/UI/Common/Russian.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Дата начала:"; "Location:" = "Место:"; +/* Mail labels */ +"Important" = "Важно"; +"Work" = "Работа"; +"Work" = "Работа"; +"Personal" = "Личное"; +"To Do" = "К исполнению"; +"Later" = "Позже"; + "a2_Sunday" = "Вс"; "a2_Monday" = "Пн"; "a2_Tuesday" = "Вт"; diff --git a/UI/Common/Slovak.lproj/Localizable.strings b/UI/Common/Slovak.lproj/Localizable.strings index 526b443712..a03d6f0d88 100644 --- a/UI/Common/Slovak.lproj/Localizable.strings +++ b/UI/Common/Slovak.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Splatnosť:"; "Location:" = "Umiestnenie:"; +/* Mail labels */ +"Important" = "Dôležité"; +"Work" = "Pracovné"; +"Work" = "Pracovné"; +"Personal" = "Osobné"; +"To Do" = "Treba urobiť"; +"Later" = "Neskôr"; + "a2_Sunday" = "Ne"; "a2_Monday" = "Po"; "a2_Tuesday" = "Ut"; diff --git a/UI/Common/SpanishArgentina.lproj/Localizable.strings b/UI/Common/SpanishArgentina.lproj/Localizable.strings index 5976df052d..2f655bd7e9 100644 --- a/UI/Common/SpanishArgentina.lproj/Localizable.strings +++ b/UI/Common/SpanishArgentina.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Vencimiento:"; "Location:" = "Lugar:"; +/* Mail labels */ +"Important" = "Importante"; +"Work" = "Trabajo"; +"Work" = "Trabajo"; +"Personal" = "Personal"; +"To Do" = "Por hacer"; +"Later" = "Más tarde"; + "a2_Sunday" = "Do"; "a2_Monday" = "Lu"; "a2_Tuesday" = "Ma"; diff --git a/UI/Common/SpanishSpain.lproj/Localizable.strings b/UI/Common/SpanishSpain.lproj/Localizable.strings index f5a2b883ae..1be5756591 100644 --- a/UI/Common/SpanishSpain.lproj/Localizable.strings +++ b/UI/Common/SpanishSpain.lproj/Localizable.strings @@ -101,6 +101,14 @@ "Due Date:" = "Vencimiento:"; "Location:" = "Lugar:"; +/* Mail labels */ +"Important" = "Importante"; +"Work" = "Trabajo"; +"Work" = "Trabajo"; +"Personal" = "Personal"; +"To Do" = "Por hacer"; +"Later" = "Más tarde"; + "a2_Sunday" = "Do"; "a2_Monday" = "Lu"; "a2_Tuesday" = "Ma"; diff --git a/UI/Common/Swedish.lproj/Localizable.strings b/UI/Common/Swedish.lproj/Localizable.strings index 8afdd9fc27..c0ad4df921 100644 --- a/UI/Common/Swedish.lproj/Localizable.strings +++ b/UI/Common/Swedish.lproj/Localizable.strings @@ -78,6 +78,14 @@ "Due Date:" = "Förfallodag:"; "Location:" = "Plats:"; +/* Mail labels */ +"Important" = "Viktigt"; +"Work" = "Arbete"; +"Work" = "Arbete"; +"Personal" = "Personligt"; +"To Do" = "Att göra"; +"Later" = "Senare"; + "a2_Sunday" = "Sö"; "a2_Monday" = "Må"; "a2_Tuesday" = "Ti"; diff --git a/UI/Common/Ukrainian.lproj/Localizable.strings b/UI/Common/Ukrainian.lproj/Localizable.strings index 3b3d596a16..b86c35d795 100644 --- a/UI/Common/Ukrainian.lproj/Localizable.strings +++ b/UI/Common/Ukrainian.lproj/Localizable.strings @@ -100,6 +100,14 @@ "Due Date:" = "Дата початку:"; "Location:" = "Місце:"; +/* Mail labels */ +"Important" = "Важливе"; +"Work" = "Робоче"; +"Work" = "Робоче"; +"Personal" = "Особисте"; +"To Do" = "До виконання"; +"Later" = "Відсунуте"; + "a2_Sunday" = "Нд"; "a2_Monday" = "Пн"; "a2_Tuesday" = "Вт"; diff --git a/UI/Common/Welsh.lproj/Localizable.strings b/UI/Common/Welsh.lproj/Localizable.strings index 0933a7918d..b493374dae 100644 --- a/UI/Common/Welsh.lproj/Localizable.strings +++ b/UI/Common/Welsh.lproj/Localizable.strings @@ -78,6 +78,14 @@ "Due Date:" = "Dyddiad dyledus:"; "Location:" = "Lleoliad:"; +/* Mail labels */ +"Important" = "Pwysig"; +"Work" = "gwaith"; +"Work" = "gwaith"; +"Personal" = "Personol"; +"To Do" = "I'w wneud"; +"Later" = "Hwyrach"; + "a2_Sunday" = "Su"; "a2_Monday" = "Ll"; "a2_Tuesday" = "Ma"; diff --git a/UI/MailerUI/Arabic.lproj/Localizable.strings b/UI/MailerUI/Arabic.lproj/Localizable.strings index ed074efcaf..1de5b21dbe 100644 --- a/UI/MailerUI/Arabic.lproj/Localizable.strings +++ b/UI/MailerUI/Arabic.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "لا شيء"; -"Important" = "مهم"; -"Work" = "عمل"; -"Personal" = "شخصي"; -"To Do" = "تفعل"; -"Later" = "لاحقا"; /* Mark popup menu */ "As Read" = "مقروء"; diff --git a/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings b/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings index 4cccf3143c..9e03c615d5 100644 --- a/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings +++ b/UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Nenhum"; -"Important" = "Importante"; -"Work" = "Trabalho"; -"Personal" = "Pessoal"; -"To Do" = "Tarefa"; -"Later" = "Adiar"; /* Mark popup menu */ "As Read" = "Como Lido"; diff --git a/UI/MailerUI/Catalan.lproj/Localizable.strings b/UI/MailerUI/Catalan.lproj/Localizable.strings index 401299ece8..b79834487f 100644 --- a/UI/MailerUI/Catalan.lproj/Localizable.strings +++ b/UI/MailerUI/Catalan.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Cap"; -"Important" = "Important"; -"Work" = "Feina"; -"Personal" = "Personal"; -"To Do" = "Per fer"; -"Later" = "Més tard"; /* Mark popup menu */ "As Read" = "Com a llegits"; diff --git a/UI/MailerUI/Czech.lproj/Localizable.strings b/UI/MailerUI/Czech.lproj/Localizable.strings index 212baea30b..5f6d0fa28a 100644 --- a/UI/MailerUI/Czech.lproj/Localizable.strings +++ b/UI/MailerUI/Czech.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Žádný"; -"Important" = "Důležitý"; -"Work" = "Pracovní"; -"Personal" = "Osobní"; -"To Do" = "Třeba udělat"; -"Later" = "Později"; /* Mark popup menu */ "As Read" = "Jako přečtené"; diff --git a/UI/MailerUI/Danish.lproj/Localizable.strings b/UI/MailerUI/Danish.lproj/Localizable.strings index 8e55923958..a73b7a3be0 100644 --- a/UI/MailerUI/Danish.lproj/Localizable.strings +++ b/UI/MailerUI/Danish.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Ingen"; -"Important" = "Vigtigt"; -"Work" = "Arbejde"; -"Personal" = "Privat"; -"To Do" = "To Do"; -"Later" = "Senere"; /* Mark popup menu */ "As Read" = "Som læst"; diff --git a/UI/MailerUI/Dutch.lproj/Localizable.strings b/UI/MailerUI/Dutch.lproj/Localizable.strings index 87f98b0b49..8509233626 100644 --- a/UI/MailerUI/Dutch.lproj/Localizable.strings +++ b/UI/MailerUI/Dutch.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Geen label"; -"Important" = "Belangrijk"; -"Work" = "Werk"; -"Personal" = "Persoonlijk"; -"To Do" = "Te doen"; -"Later" = "Later"; /* Mark popup menu */ "As Read" = "Als gelezen"; diff --git a/UI/MailerUI/English.lproj/Localizable.strings b/UI/MailerUI/English.lproj/Localizable.strings index 92d7f6f5fb..ed65e4dda9 100644 --- a/UI/MailerUI/English.lproj/Localizable.strings +++ b/UI/MailerUI/English.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "None"; -"Important" = "Important"; -"Work" = "Work"; -"Personal" = "Personal"; -"To Do" = "To Do"; -"Later" = "Later"; /* Mark popup menu */ "As Read" = "As Read"; diff --git a/UI/MailerUI/Finnish.lproj/Localizable.strings b/UI/MailerUI/Finnish.lproj/Localizable.strings index e5de5d9d90..26b1e08af7 100644 --- a/UI/MailerUI/Finnish.lproj/Localizable.strings +++ b/UI/MailerUI/Finnish.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Ei mitään"; -"Important" = "Tärkeä"; -"Work" = "Työ"; -"Personal" = "Henkilökohtainen"; -"To Do" = "Tehtävä"; -"Later" = "Myöhemmin"; /* Mark popup menu */ "As Read" = "Luetuksi"; diff --git a/UI/MailerUI/French.lproj/Localizable.strings b/UI/MailerUI/French.lproj/Localizable.strings index f54cc94bea..82a4ed3713 100644 --- a/UI/MailerUI/French.lproj/Localizable.strings +++ b/UI/MailerUI/French.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Aucune"; -"Important" = "Important"; -"Work" = "Travail"; -"Personal" = "Personnel"; -"To Do" = "À faire"; -"Later" = "Peut attendre"; /* Mark popup menu */ "As Read" = "Comme lu"; diff --git a/UI/MailerUI/German.lproj/Localizable.strings b/UI/MailerUI/German.lproj/Localizable.strings index 18accabf76..9096d6c682 100644 --- a/UI/MailerUI/German.lproj/Localizable.strings +++ b/UI/MailerUI/German.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Kein"; -"Important" = "Wichtig"; -"Work" = "Geschäftlich"; -"Personal" = "Persönlich"; -"To Do" = "To-Do"; -"Later" = "Später"; /* Mark popup menu */ "As Read" = "Gelesen"; diff --git a/UI/MailerUI/Hungarian.lproj/Localizable.strings b/UI/MailerUI/Hungarian.lproj/Localizable.strings index 9bd0d51c45..593335b05e 100644 --- a/UI/MailerUI/Hungarian.lproj/Localizable.strings +++ b/UI/MailerUI/Hungarian.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Nincs cimke"; -"Important" = "Fontos"; -"Work" = "Hivatalos"; -"Personal" = "Személyes"; -"To Do" = "Teendő"; -"Later" = "Később"; /* Mark popup menu */ "As Read" = "Olvasottként"; diff --git a/UI/MailerUI/Icelandic.lproj/Localizable.strings b/UI/MailerUI/Icelandic.lproj/Localizable.strings index f8a6cf239b..345af9765e 100644 --- a/UI/MailerUI/Icelandic.lproj/Localizable.strings +++ b/UI/MailerUI/Icelandic.lproj/Localizable.strings @@ -225,11 +225,6 @@ /* Label popup menu */ "None" = "Engin"; -"Important" = "Mikilvægt"; -"Work" = "Vinna"; -"Personal" = "Persónulegt"; -"To Do" = "Verkþáttur"; -"Later" = "Seinna"; /* Mark popup menu */ "As Read" = "Sem lesið"; diff --git a/UI/MailerUI/Italian.lproj/Localizable.strings b/UI/MailerUI/Italian.lproj/Localizable.strings index 5d5b840718..7adcab42fc 100644 --- a/UI/MailerUI/Italian.lproj/Localizable.strings +++ b/UI/MailerUI/Italian.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Nessuno"; -"Important" = "Importante"; -"Work" = "Lavoro"; -"Personal" = "Personale"; -"To Do" = "Da fare"; -"Later" = "Posponi"; /* Mark popup menu */ "As Read" = "Già letto"; diff --git a/UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings b/UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings index 1b384df680..8d55d640b7 100644 --- a/UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings +++ b/UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Ingen"; -"Important" = "Viktig"; -"Work" = "Arbeid"; -"Personal" = "Personlig"; -"To Do" = "Gjøremål"; -"Later" = "Senere"; /* Mark popup menu */ "As Read" = "Som lest"; diff --git a/UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings b/UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings index 27bb80b5bf..db7bdaa9fb 100644 --- a/UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings +++ b/UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings @@ -225,11 +225,6 @@ /* Label popup menu */ "None" = "Ingen"; -"Important" = "Viktig"; -"Work" = "Arbeid"; -"Personal" = "Personlig"; -"To Do" = "Gjøremål"; -"Later" = "Senere"; /* Mark popup menu */ "As Read" = "Som lest"; diff --git a/UI/MailerUI/Polish.lproj/Localizable.strings b/UI/MailerUI/Polish.lproj/Localizable.strings index 973baee499..0c6894604f 100644 --- a/UI/MailerUI/Polish.lproj/Localizable.strings +++ b/UI/MailerUI/Polish.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Brak"; -"Important" = "Ważne"; -"Work" = "Praca"; -"Personal" = "Osobiste"; -"To Do" = "Do zrobienia"; -"Later" = "Później"; /* Mark popup menu */ "As Read" = "Jako przeczytane"; diff --git a/UI/MailerUI/Russian.lproj/Localizable.strings b/UI/MailerUI/Russian.lproj/Localizable.strings index 935200461f..8557abe5ec 100644 --- a/UI/MailerUI/Russian.lproj/Localizable.strings +++ b/UI/MailerUI/Russian.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Удалить все метки"; -"Important" = "Важно"; -"Work" = "Работа"; -"Personal" = "Личное"; -"To Do" = "К исполнению"; -"Later" = "Позже"; /* Mark popup menu */ "As Read" = "как прочтанное"; diff --git a/UI/MailerUI/Slovak.lproj/Localizable.strings b/UI/MailerUI/Slovak.lproj/Localizable.strings index 7bae452d51..71b21f48e3 100644 --- a/UI/MailerUI/Slovak.lproj/Localizable.strings +++ b/UI/MailerUI/Slovak.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Žiaden"; -"Important" = "Dôležité"; -"Work" = "Pracovné"; -"Personal" = "Osobné"; -"To Do" = "Treba urobiť"; -"Later" = "Neskôr"; /* Mark popup menu */ "As Read" = "Prečítané"; diff --git a/UI/MailerUI/SpanishArgentina.lproj/Localizable.strings b/UI/MailerUI/SpanishArgentina.lproj/Localizable.strings index f8e9c707a6..357fdb6aba 100644 --- a/UI/MailerUI/SpanishArgentina.lproj/Localizable.strings +++ b/UI/MailerUI/SpanishArgentina.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Ninguna"; -"Important" = "Importante"; -"Work" = "Trabajo"; -"Personal" = "Personal"; -"To Do" = "Por hacer"; -"Later" = "Más tarde"; /* Mark popup menu */ "As Read" = "Como leídos"; diff --git a/UI/MailerUI/SpanishSpain.lproj/Localizable.strings b/UI/MailerUI/SpanishSpain.lproj/Localizable.strings index a70f714127..f2bb7d7032 100644 --- a/UI/MailerUI/SpanishSpain.lproj/Localizable.strings +++ b/UI/MailerUI/SpanishSpain.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Ninguna"; -"Important" = "Importante"; -"Work" = "Trabajo"; -"Personal" = "Personal"; -"To Do" = "Por hacer"; -"Later" = "Más tarde"; /* Mark popup menu */ "As Read" = "Como leídos"; diff --git a/UI/MailerUI/Swedish.lproj/Localizable.strings b/UI/MailerUI/Swedish.lproj/Localizable.strings index 3ac0c88cdf..d7151af2f5 100644 --- a/UI/MailerUI/Swedish.lproj/Localizable.strings +++ b/UI/MailerUI/Swedish.lproj/Localizable.strings @@ -225,11 +225,6 @@ /* Label popup menu */ "None" = "Inget"; -"Important" = "Viktigt"; -"Work" = "Arbete"; -"Personal" = "Personligt"; -"To Do" = "Att göra"; -"Later" = "Senare"; /* Mark popup menu */ "As Read" = "Som läst"; diff --git a/UI/MailerUI/Ukrainian.lproj/Localizable.strings b/UI/MailerUI/Ukrainian.lproj/Localizable.strings index 8a7f7b7295..4e0555af30 100644 --- a/UI/MailerUI/Ukrainian.lproj/Localizable.strings +++ b/UI/MailerUI/Ukrainian.lproj/Localizable.strings @@ -227,11 +227,6 @@ /* Label popup menu */ "None" = "Вилучити всі позначки"; -"Important" = "Важливе"; -"Work" = "Робоче"; -"Personal" = "Особисте"; -"To Do" = "До виконання"; -"Later" = "Відсунуте"; /* Mark popup menu */ "As Read" = "Прочитаним"; diff --git a/UI/MailerUI/Welsh.lproj/Localizable.strings b/UI/MailerUI/Welsh.lproj/Localizable.strings index 61ad37797f..1da56be42a 100644 --- a/UI/MailerUI/Welsh.lproj/Localizable.strings +++ b/UI/MailerUI/Welsh.lproj/Localizable.strings @@ -225,11 +225,6 @@ /* Label popup menu */ "None" = "Dim"; -"Important" = "Pwysig"; -"Work" = "gwaith"; -"Personal" = "Personol"; -"To Do" = "I'w wneud"; -"Later" = "Hwyrach"; /* Mark popup menu */ "As Read" = "Darllenwyd"; diff --git a/UI/PreferencesUI/Arabic.lproj/Localizable.strings b/UI/PreferencesUI/Arabic.lproj/Localizable.strings index 5b27b560ad..3b526b5975 100644 --- a/UI/PreferencesUI/Arabic.lproj/Localizable.strings +++ b/UI/PreferencesUI/Arabic.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "التقويم الشخصي"; "firstCalendar" = "أول تقويم ممكن"; -"reminderTime_0000" = "0 دقيقة"; -"reminderTime_0005" = "5 دقائق"; -"reminderTime_0010" = "10 دقائق"; -"reminderTime_0015" = "15 دقيقة"; -"reminderTime_0030" = "30 دقيقة"; -"reminderTime_0100" = "1 ساعة"; -"reminderTime_0200" = "2 ساعة"; -"reminderTime_0400" = "4 ساعات"; -"reminderTime_0800" = "8 ساعات"; -"reminderTime_1200" = "1/2 يوم"; -"reminderTime_2400" = "1 يوم"; -"reminderTime_4800" = "2 يوم"; +"reminder_5_MINUTES_BEFORE" = "5 دقائق"; +"reminder_10_MINUTES_BEFORE" = "10 دقائق"; +"reminder_15_MINUTES_BEFORE" = "15 دقيقة"; +"reminder_30_MINUTES_BEFORE" = "30 دقيقة"; +"reminder_1_HOUR_BEFORE" = "1 ساعة"; +"reminder_2_HOURS_BEFORE" = "2 ساعة"; +"reminder_5_HOURS_BEFORE"= "5 ساعات"; +"reminder_15_HOURS_BEFORE"= "15 ساعات"; +"reminder_1_DAY_BEFORE" = "1 يوم"; +"reminder_2_DAYS_BEFORE" = "2 يوم"; /* Mailer */ +"Label" = "ملصق"; "Show subscribed mailboxes only" = "عرض صناديق البريد المشترك بها فقط"; "Sort messages by threads" = "رتب الرسائل حسب المواضيع"; "Check for new mail:" = "تحقق من وجود بريد جديد:"; diff --git a/UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings b/UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings index d5eaccafbf..933d6250fb 100644 --- a/UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings +++ b/UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Calendário pessoal"; "firstCalendar" = "Calendário habilizado pela primeira vez"; -"reminderTime_0000" = "0 minutos"; -"reminderTime_0005" = "5 minutos"; -"reminderTime_0010" = "10 minutos"; -"reminderTime_0015" = "15 minutos"; -"reminderTime_0030" = "30 minutos"; -"reminderTime_0100" = "1 hora"; -"reminderTime_0200" = "2 horas"; -"reminderTime_0400" = "4 horas"; -"reminderTime_0800" = "8 horas"; -"reminderTime_1200" = "1/2 dia"; -"reminderTime_2400" = "1 dia"; -"reminderTime_4800" = "2 dias"; +"reminder_5_MINUTES_BEFORE" = "5 minutos"; +"reminder_10_MINUTES_BEFORE" = "10 minutos"; +"reminder_15_MINUTES_BEFORE" = "15 minutos"; +"reminder_30_MINUTES_BEFORE" = "30 minutos"; +"reminder_1_HOUR_BEFORE" = "1 hora"; +"reminder_2_HOURS_BEFORE" = "2 horas"; +"reminder_5_HOURS_BEFORE"= "5 horas"; +"reminder_15_HOURS_BEFORE"= "15 horas"; +"reminder_1_DAY_BEFORE" = "1 dia"; +"reminder_2_DAYS_BEFORE" = "2 dias"; /* Mailer */ +"Label" = "Etiqueta"; "Show subscribed mailboxes only" = "Exibir somente caixas de correio inscritas"; "Sort messages by threads" = "Ordenar mensagens por tópicos"; "Check for new mail:" = "Checar novos emails:"; diff --git a/UI/PreferencesUI/Catalan.lproj/Localizable.strings b/UI/PreferencesUI/Catalan.lproj/Localizable.strings index 784b5b41c6..2668c029bb 100644 --- a/UI/PreferencesUI/Catalan.lproj/Localizable.strings +++ b/UI/PreferencesUI/Catalan.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Calendari personal"; "firstCalendar" = "Primer calendari habilitat"; -"reminderTime_0000" = "0 minuts"; -"reminderTime_0005" = "5 minuts"; -"reminderTime_0010" = "10 minuts"; -"reminderTime_0015" = "15 minuts"; -"reminderTime_0030" = "30 minuts"; -"reminderTime_0100" = "1 hora"; -"reminderTime_0200" = "2 hores"; -"reminderTime_0400" = "4 hores"; -"reminderTime_0800" = "8 hores"; -"reminderTime_1200" = "1/2 dia"; -"reminderTime_2400" = "1 dia"; -"reminderTime_4800" = "2 dies"; +"reminder_5_MINUTES_BEFORE" = "5 minuts"; +"reminder_10_MINUTES_BEFORE" = "10 minuts"; +"reminder_15_MINUTES_BEFORE" = "15 minuts"; +"reminder_30_MINUTES_BEFORE" = "30 minuts"; +"reminder_1_HOUR_BEFORE" = "1 hora"; +"reminder_2_HOURS_BEFORE" = "2 hores"; +"reminder_5_HOURS_BEFORE"= "5 hores"; +"reminder_15_HOURS_BEFORE"= "15 hores"; +"reminder_1_DAY_BEFORE" = "1 dia"; +"reminder_2_DAYS_BEFORE" = "2 dies"; /* Mailer */ +"Label" = "Etiquetar"; "Show subscribed mailboxes only" = "Mostrar només les bústies subscrites"; "Sort messages by threads" = "Ordenar els missatges per temes"; "Check for new mail:" = "Comprovar nou correu: "; diff --git a/UI/PreferencesUI/Czech.lproj/Localizable.strings b/UI/PreferencesUI/Czech.lproj/Localizable.strings index a0d3e9c2b1..792dcab928 100644 --- a/UI/PreferencesUI/Czech.lproj/Localizable.strings +++ b/UI/PreferencesUI/Czech.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Osobní kalendář"; "firstCalendar" = "První kalendář"; -"reminderTime_0000" = "0 minut"; -"reminderTime_0005" = "5 minut"; -"reminderTime_0010" = "10 minut"; -"reminderTime_0015" = "15 minut"; -"reminderTime_0030" = "30 minut"; -"reminderTime_0100" = "1 hodina"; -"reminderTime_0200" = "2 hodiny"; -"reminderTime_0400" = "4 hodiny"; -"reminderTime_0800" = "8 hodin"; -"reminderTime_1200" = "1/2 dne"; -"reminderTime_2400" = "1 den"; -"reminderTime_4800" = "2 dny"; +"reminder_5_MINUTES_BEFORE" = "5 minut"; +"reminder_10_MINUTES_BEFORE" = "10 minut"; +"reminder_15_MINUTES_BEFORE" = "15 minut"; +"reminder_30_MINUTES_BEFORE" = "30 minut"; +"reminder_1_HOUR_BEFORE" = "1 hodina"; +"reminder_2_HOURS_BEFORE" = "2 hodiny"; +"reminder_5_HOURS_BEFORE"= "5 hodiny"; +"reminder_15_HOURS_BEFORE"= "15 hodin"; +"reminder_1_DAY_BEFORE" = "1 den"; +"reminder_2_DAYS_BEFORE" = "2 dny"; /* Mailer */ +"Label" = "Označkovat"; "Show subscribed mailboxes only" = "Ukázat pouze odebírané mailové schránky"; "Sort messages by threads" = "Třídit zprávy podle souvislostí"; "Check for new mail:" = "Zkontrolovat novou poštu:"; diff --git a/UI/PreferencesUI/Danish.lproj/Localizable.strings b/UI/PreferencesUI/Danish.lproj/Localizable.strings index 90d420a716..ad2b8b98c0 100644 --- a/UI/PreferencesUI/Danish.lproj/Localizable.strings +++ b/UI/PreferencesUI/Danish.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Personlig kalender"; "firstCalendar" = "Første aktiveret kalender"; -"reminderTime_0000" = "0 minutter"; -"reminderTime_0005" = "5 minutter"; -"reminderTime_0010" = "10 minutter"; -"reminderTime_0015" = "15 minutter"; -"reminderTime_0030" = "30 minutter"; -"reminderTime_0100" = "1 time"; -"reminderTime_0200" = "2 timer"; -"reminderTime_0400" = "4 timer"; -"reminderTime_0800" = "8 timer"; -"reminderTime_1200" = "1/2 dag"; -"reminderTime_2400" = "1 dag"; -"reminderTime_4800" = "2 dage"; +"reminder_5_MINUTES_BEFORE" = "5 minutter"; +"reminder_10_MINUTES_BEFORE" = "10 minutter"; +"reminder_15_MINUTES_BEFORE" = "15 minutter"; +"reminder_30_MINUTES_BEFORE" = "30 minutter"; +"reminder_1_HOUR_BEFORE" = "1 time"; +"reminder_2_HOURS_BEFORE" = "2 timer"; +"reminder_5_HOURS_BEFORE"= "5 timer"; +"reminder_15_HOURS_BEFORE"= "15 timer"; +"reminder_1_DAY_BEFORE" = "1 dag"; +"reminder_2_DAYS_BEFORE" = "2 dage"; /* Mailer */ +"Label" = "Mærke"; "Show subscribed mailboxes only" = "Vis kun abonnerede postkasser"; "Sort messages by threads" = "Sortér beskeder efter tråd"; "Check for new mail:" = "Tjek for ny post:"; diff --git a/UI/PreferencesUI/Dutch.lproj/Localizable.strings b/UI/PreferencesUI/Dutch.lproj/Localizable.strings index 45c3455162..e74ce41f53 100644 --- a/UI/PreferencesUI/Dutch.lproj/Localizable.strings +++ b/UI/PreferencesUI/Dutch.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Persoonlijke agenda"; "firstCalendar" = "Eerste ingeschakelde agenda"; -"reminderTime_0000" = "0 minuten"; -"reminderTime_0005" = "5 minuten"; -"reminderTime_0010" = "10 minuten"; -"reminderTime_0015" = "15 minuten"; -"reminderTime_0030" = "30 minuten"; -"reminderTime_0100" = "1 uur"; -"reminderTime_0200" = "2 uren"; -"reminderTime_0400" = "4 uren"; -"reminderTime_0800" = "8 uren"; -"reminderTime_1200" = "1/2 dag"; -"reminderTime_2400" = "1 dag"; -"reminderTime_4800" = "2 dagen"; +"reminder_5_MINUTES_BEFORE" = "5 minuten"; +"reminder_10_MINUTES_BEFORE" = "10 minuten"; +"reminder_15_MINUTES_BEFORE" = "15 minuten"; +"reminder_30_MINUTES_BEFORE" = "30 minuten"; +"reminder_1_HOUR_BEFORE" = "1 uur"; +"reminder_2_HOURS_BEFORE" = "2 uren"; +"reminder_5_HOURS_BEFORE"= "5 uren"; +"reminder_15_HOURS_BEFORE"= "15 uren"; +"reminder_1_DAY_BEFORE" = "1 dag"; +"reminder_2_DAYS_BEFORE" = "2 dagen"; /* Mailer */ +"Label" = "Labelen"; "Show subscribed mailboxes only" = "Toon alleen geabonneerde postvakken"; "Sort messages by threads" = "Berichten sorteren op threads"; "Check for new mail:" = "Controleren op nieuwe mail:"; diff --git a/UI/PreferencesUI/English.lproj/Localizable.strings b/UI/PreferencesUI/English.lproj/Localizable.strings index f4509c1eb2..58cc3d0790 100644 --- a/UI/PreferencesUI/English.lproj/Localizable.strings +++ b/UI/PreferencesUI/English.lproj/Localizable.strings @@ -126,6 +126,8 @@ "reminder_1_WEEK_BEFORE" = "1 week before"; /* Mailer */ +"Labels" = "Labels"; +"Label" = "Label"; "Show subscribed mailboxes only" = "Show subscribed mailboxes only"; "Sort messages by threads" = "Sort messages by threads"; "Check for new mail:" = "Check for new mail:"; @@ -289,11 +291,6 @@ "Flagged" = "Flagged"; "Junk" = "Junk"; "Not Junk" = "Not Junk"; -"Important" = "Important"; -"Work" = "Work"; -"Personal" = "Personal"; -"To Do" = "To Do"; -"Later" = "Later"; /* Password policy */ "The password was changed successfully." = "The password was changed successfully."; diff --git a/UI/PreferencesUI/Finnish.lproj/Localizable.strings b/UI/PreferencesUI/Finnish.lproj/Localizable.strings index b4a9a72616..a55a2ec209 100644 --- a/UI/PreferencesUI/Finnish.lproj/Localizable.strings +++ b/UI/PreferencesUI/Finnish.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Henkilökohtainen kalenteri"; "firstCalendar" = "Ensimmäinen käyttöönotettu kalenteri"; -"reminderTime_0000" = "0 minuuttia"; -"reminderTime_0005" = "5 minuuttia"; -"reminderTime_0010" = "10 minuuttia"; -"reminderTime_0015" = "15 minuuttia"; -"reminderTime_0030" = "30 minuuttia"; -"reminderTime_0100" = "1 tunti"; -"reminderTime_0200" = "2 tuntia"; -"reminderTime_0400" = "4 tuntia"; -"reminderTime_0800" = "8 tuntia"; -"reminderTime_1200" = "puoli päivää"; -"reminderTime_2400" = "1 päivä"; -"reminderTime_4800" = "2 päivää"; +"reminder_5_MINUTES_BEFORE" = "5 minuuttia"; +"reminder_10_MINUTES_BEFORE" = "10 minuuttia"; +"reminder_15_MINUTES_BEFORE" = "15 minuuttia"; +"reminder_30_MINUTES_BEFORE" = "30 minuuttia"; +"reminder_1_HOUR_BEFORE" = "1 tunti"; +"reminder_2_HOURS_BEFORE" = "2 tuntia"; +"reminder_5_HOURS_BEFORE"= "5 tuntia"; +"reminder_15_HOURS_BEFORE"= "15 tuntia"; +"reminder_1_DAY_BEFORE" = "1 päivä"; +"reminder_2_DAYS_BEFORE" = "2 päivää"; /* Mailer */ +"Label" = "Otsikoi"; "Show subscribed mailboxes only" = "Näytä vain tilatut sähköpostikansiot"; "Sort messages by threads" = "Järjestä viestit ketjuiksi"; "Check for new mail:" = "Hae uudet sähköpostit"; diff --git a/UI/PreferencesUI/French.lproj/Localizable.strings b/UI/PreferencesUI/French.lproj/Localizable.strings index 73c301fea4..d45e035e57 100644 --- a/UI/PreferencesUI/French.lproj/Localizable.strings +++ b/UI/PreferencesUI/French.lproj/Localizable.strings @@ -111,20 +111,20 @@ "personalCalendar" = "le calendrier personnel"; "firstCalendar" = "le premier calendrier actif"; -"reminderTime_0000" = "0 minutes"; -"reminderTime_0005" = "5 minutes"; -"reminderTime_0010" = "10 minutes"; -"reminderTime_0015" = "15 minutes"; -"reminderTime_0030" = "30 minutes"; -"reminderTime_0100" = "1 heure"; -"reminderTime_0200" = "2 heures"; -"reminderTime_0400" = "4 heures"; -"reminderTime_0800" = "8 heures"; -"reminderTime_1200" = "1/2 journée"; -"reminderTime_2400" = "1 journée"; -"reminderTime_4800" = "2 journées"; +"reminder_5_MINUTES_BEFORE" = "5 minutes"; +"reminder_10_MINUTES_BEFORE" = "10 minutes"; +"reminder_15_MINUTES_BEFORE" = "15 minutes"; +"reminder_30_MINUTES_BEFORE" = "30 minutes"; +"reminder_1_HOUR_BEFORE" = "1 heure"; +"reminder_2_HOURS_BEFORE" = "2 heures"; +"reminder_5_HOURS_BEFORE"= "5 heures"; +"reminder_15_HOURS_BEFORE"= "15 heures"; +"reminder_1_DAY_BEFORE" = "1 journée"; +"reminder_2_DAYS_BEFORE" = "2 journées"; /* Mailer */ +"Labels" = "Étiquettes"; +"Label" = "Étiquette"; "Show subscribed mailboxes only" = "Afficher seulement les abonnements"; "Sort messages by threads" = "Grouper les discussions"; "Check for new mail:" = "Vérifier l'arrivée de messages :"; diff --git a/UI/PreferencesUI/German.lproj/Localizable.strings b/UI/PreferencesUI/German.lproj/Localizable.strings index ce5de69cea..3f167aa808 100644 --- a/UI/PreferencesUI/German.lproj/Localizable.strings +++ b/UI/PreferencesUI/German.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Persönlicher Kalender"; "firstCalendar" = "Erster eingeschalteter Kalender"; -"reminderTime_0000" = "0 Minuten"; -"reminderTime_0005" = "5 Minuten"; -"reminderTime_0010" = "10 Minuten"; -"reminderTime_0015" = "15 Minuten"; -"reminderTime_0030" = "30 Minuten"; -"reminderTime_0100" = "1 Stunde"; -"reminderTime_0200" = "2 Stunden"; -"reminderTime_0400" = "4 Stunden"; -"reminderTime_0800" = "8 Stunden"; -"reminderTime_1200" = "1/2 Tag"; -"reminderTime_2400" = "1 Tag"; -"reminderTime_4800" = "2 Tage"; +"reminder_5_MINUTES_BEFORE" = "5 Minuten"; +"reminder_10_MINUTES_BEFORE" = "10 Minuten"; +"reminder_15_MINUTES_BEFORE" = "15 Minuten"; +"reminder_30_MINUTES_BEFORE" = "30 Minuten"; +"reminder_1_HOUR_BEFORE" = "1 Stunde"; +"reminder_2_HOURS_BEFORE" = "2 Stunden"; +"reminder_5_HOURS_BEFORE"= "5 Stunden"; +"reminder_15_HOURS_BEFORE"= "15 Stunden"; +"reminder_1_DAY_BEFORE" = "1 Tag"; +"reminder_2_DAYS_BEFORE" = "2 Tage"; /* Mailer */ +"Label" = "Schlagwörter"; "Show subscribed mailboxes only" = "Nur abonnierte Ordner anzeigen"; "Sort messages by threads" = "Nachrichten nach Thema sortieren"; "Check for new mail:" = "Auf neue Nachrichten prüfen:"; diff --git a/UI/PreferencesUI/Hungarian.lproj/Localizable.strings b/UI/PreferencesUI/Hungarian.lproj/Localizable.strings index 26af9a2778..a5fb508263 100644 --- a/UI/PreferencesUI/Hungarian.lproj/Localizable.strings +++ b/UI/PreferencesUI/Hungarian.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Személyes naptár"; "firstCalendar" = "Első engedélyezett naptár"; -"reminderTime_0000" = "0 perc"; -"reminderTime_0005" = "5 perc"; -"reminderTime_0010" = "10 perc"; -"reminderTime_0015" = "15 perc"; -"reminderTime_0030" = "30 perc"; -"reminderTime_0100" = "1 óra"; -"reminderTime_0200" = "2 óra"; -"reminderTime_0400" = "4 óra"; -"reminderTime_0800" = "8 óra"; -"reminderTime_1200" = "1/2 nap"; -"reminderTime_2400" = "1 nap"; -"reminderTime_4800" = "2 nap"; +"reminder_5_MINUTES_BEFORE" = "5 perc"; +"reminder_10_MINUTES_BEFORE" = "10 perc"; +"reminder_15_MINUTES_BEFORE" = "15 perc"; +"reminder_30_MINUTES_BEFORE" = "30 perc"; +"reminder_1_HOUR_BEFORE" = "1 óra"; +"reminder_2_HOURS_BEFORE" = "2 óra"; +"reminder_5_HOURS_BEFORE"= "5 óra"; +"reminder_15_HOURS_BEFORE"= "15 óra"; +"reminder_1_DAY_BEFORE" = "1 nap"; +"reminder_2_DAYS_BEFORE" = "2 nap"; /* Mailer */ +"Label" = "Cimke"; "Show subscribed mailboxes only" = "Csak azok a fiókok mutatása, amelyre feliratkozott"; "Sort messages by threads" = "Üzenetek beszélgetések szerinti rendezése "; "Check for new mail:" = "Új üzenetek letöltése:"; diff --git a/UI/PreferencesUI/Icelandic.lproj/Localizable.strings b/UI/PreferencesUI/Icelandic.lproj/Localizable.strings index 31e569cb9d..c4b496ecd1 100644 --- a/UI/PreferencesUI/Icelandic.lproj/Localizable.strings +++ b/UI/PreferencesUI/Icelandic.lproj/Localizable.strings @@ -92,20 +92,19 @@ "firstWeekOfYear_First4DayWeek" = "Fyrstu 4 dagar viku"; "firstWeekOfYear_FirstFullWeek" = "Fyrsta heila vika"; -"reminderTime_0000" = "0 mínútur"; -"reminderTime_0005" = "5 mínútur"; -"reminderTime_0010" = "10 mínútur"; -"reminderTime_0015" = "15 mínútur"; -"reminderTime_0030" = "30 mínútur"; -"reminderTime_0100" = "1 klst."; -"reminderTime_0200" = "2 klst."; -"reminderTime_0400" = "4 klst."; -"reminderTime_0800" = "8 klst."; -"reminderTime_1200" = "1/2 dagur"; -"reminderTime_2400" = "1 dagur"; -"reminderTime_4800" = "2 dagar"; +"reminder_5_MINUTES_BEFORE" = "5 mínútur"; +"reminder_10_MINUTES_BEFORE" = "10 mínútur"; +"reminder_15_MINUTES_BEFORE" = "15 mínútur"; +"reminder_30_MINUTES_BEFORE" = "30 mínútur"; +"reminder_1_HOUR_BEFORE" = "1 klst."; +"reminder_2_HOURS_BEFORE" = "2 klst."; +"reminder_5_HOURS_BEFORE"= "5 klst."; +"reminder_15_HOURS_BEFORE"= "15 klst."; +"reminder_1_DAY_BEFORE" = "1 dagur"; +"reminder_2_DAYS_BEFORE" = "2 dagar"; /* Mailer */ +"Label" = "Merki"; "Show subscribed mailboxes only" = "Sýna aðeins pósthólf sem eru í áskrift"; "Check for new mail:" = "Sækja nýjan póst:"; "messagecheck_manually" = "Handvirkt"; diff --git a/UI/PreferencesUI/Italian.lproj/Localizable.strings b/UI/PreferencesUI/Italian.lproj/Localizable.strings index d6daf9208e..546109f36c 100644 --- a/UI/PreferencesUI/Italian.lproj/Localizable.strings +++ b/UI/PreferencesUI/Italian.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Calendario personale"; "firstCalendar" = "Primo calendario abilitato"; -"reminderTime_0000" = "0 minuti"; -"reminderTime_0005" = "5 minuti"; -"reminderTime_0010" = "10 minuti"; -"reminderTime_0015" = "15 minuti"; -"reminderTime_0030" = "30 minuti"; -"reminderTime_0100" = "1 ora"; -"reminderTime_0200" = "2 ore"; -"reminderTime_0400" = "4 ore"; -"reminderTime_0800" = "8 ore"; -"reminderTime_1200" = "1/2 giornata"; -"reminderTime_2400" = "1 giorno"; -"reminderTime_4800" = "2 giorni"; +"reminder_5_MINUTES_BEFORE" = "5 minuti"; +"reminder_10_MINUTES_BEFORE" = "10 minuti"; +"reminder_15_MINUTES_BEFORE" = "15 minuti"; +"reminder_30_MINUTES_BEFORE" = "30 minuti"; +"reminder_1_HOUR_BEFORE" = "1 ora"; +"reminder_2_HOURS_BEFORE" = "2 ore"; +"reminder_5_HOURS_BEFORE"= "5 ore"; +"reminder_15_HOURS_BEFORE"= "15 ore"; +"reminder_1_DAY_BEFORE" = "1 giorno"; +"reminder_2_DAYS_BEFORE" = "2 giorni"; /* Mailer */ +"Label" = "Etichetta"; "Show subscribed mailboxes only" = "Mostra solo le cartelle sottoscritte"; "Sort messages by threads" = "Ordina i messaggi per conversazione"; "Check for new mail:" = "Controlla la posta in arrivo:"; diff --git a/UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings b/UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings index 08a03d1f21..221db266c9 100644 --- a/UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings +++ b/UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Personlig kalender"; "firstCalendar" = "Første aktiverte kalender"; -"reminderTime_0000" = "0 minutter"; -"reminderTime_0005" = "5 minutter"; -"reminderTime_0010" = "10 minutter"; -"reminderTime_0015" = "15 minutter"; -"reminderTime_0030" = "30 minutter"; -"reminderTime_0100" = "1 time"; -"reminderTime_0200" = "2 timer"; -"reminderTime_0400" = "4 timer"; -"reminderTime_0800" = "8 timer"; -"reminderTime_1200" = "1/2 dag"; -"reminderTime_2400" = "1 dag"; -"reminderTime_4800" = "2 dager"; +"reminder_5_MINUTES_BEFORE" = "5 minutter"; +"reminder_10_MINUTES_BEFORE" = "10 minutter"; +"reminder_15_MINUTES_BEFORE" = "15 minutter"; +"reminder_30_MINUTES_BEFORE" = "30 minutter"; +"reminder_1_HOUR_BEFORE" = "1 time"; +"reminder_2_HOURS_BEFORE" = "2 timer"; +"reminder_5_HOURS_BEFORE"= "5 timer"; +"reminder_15_HOURS_BEFORE"= "15 timer"; +"reminder_1_DAY_BEFORE" = "1 dag"; +"reminder_2_DAYS_BEFORE" = "2 dager"; /* Mailer */ +"Label" = "Etikett"; "Show subscribed mailboxes only" = "Vis bare abonnerte postbokser"; "Sort messages by threads" = "Sorter meldinger etter tråder"; "Check for new mail:" = "Hent ny post:"; diff --git a/UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings b/UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings index 8e97a7694b..718b758bc0 100644 --- a/UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings +++ b/UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings @@ -98,20 +98,19 @@ "personalCalendar" = "Personal calendar"; "firstCalendar" = "First enabled calendar"; -"reminderTime_0000" = "0 minutter"; -"reminderTime_0005" = "5 minutter"; -"reminderTime_0010" = "10 minutter"; -"reminderTime_0015" = "15 minutter"; -"reminderTime_0030" = "30 minutter"; -"reminderTime_0100" = "1 time"; -"reminderTime_0200" = "2 timer"; -"reminderTime_0400" = "4 timer"; -"reminderTime_0800" = "8 timer"; -"reminderTime_1200" = "1/2 dag"; -"reminderTime_2400" = "1 dag"; -"reminderTime_4800" = "2 dager"; +"reminder_5_MINUTES_BEFORE" = "5 minutter"; +"reminder_10_MINUTES_BEFORE" = "10 minutter"; +"reminder_15_MINUTES_BEFORE" = "15 minutter"; +"reminder_30_MINUTES_BEFORE" = "30 minutter"; +"reminder_1_HOUR_BEFORE" = "1 time"; +"reminder_2_HOURS_BEFORE" = "2 timer"; +"reminder_5_HOURS_BEFORE"= "5 timer"; +"reminder_15_HOURS_BEFORE"= "15 timer"; +"reminder_1_DAY_BEFORE" = "1 dag"; +"reminder_2_DAYS_BEFORE" = "2 dager"; /* Mailer */ +"Label" = "Etikett"; "Show subscribed mailboxes only" = "Vis bare abonnerte postbokser"; "Sort messages by threads" = "Sort messages by threads"; "Check for new mail:" = "Hent ny post:"; diff --git a/UI/PreferencesUI/Polish.lproj/Localizable.strings b/UI/PreferencesUI/Polish.lproj/Localizable.strings index 0a6a8433f4..65b5c14efa 100644 --- a/UI/PreferencesUI/Polish.lproj/Localizable.strings +++ b/UI/PreferencesUI/Polish.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Kalendarz osobisty"; "firstCalendar" = "Pierwszy kalendarz"; -"reminderTime_0000" = "0 minut"; -"reminderTime_0005" = "5 minut"; -"reminderTime_0010" = "10 minut"; -"reminderTime_0015" = "15 minut"; -"reminderTime_0030" = "30 minut"; -"reminderTime_0100" = "1 godzina"; -"reminderTime_0200" = "2 godziny"; -"reminderTime_0400" = "4 godziny"; -"reminderTime_0800" = "8 godzin"; -"reminderTime_1200" = "1/2 dnia"; -"reminderTime_2400" = "1 dzień"; -"reminderTime_4800" = "2 dni"; +"reminder_5_MINUTES_BEFORE" = "5 minut"; +"reminder_10_MINUTES_BEFORE" = "10 minut"; +"reminder_15_MINUTES_BEFORE" = "15 minut"; +"reminder_30_MINUTES_BEFORE" = "30 minut"; +"reminder_1_HOUR_BEFORE" = "1 godzina"; +"reminder_2_HOURS_BEFORE" = "2 godziny"; +"reminder_5_HOURS_BEFORE"= "5 godziny"; +"reminder_15_HOURS_BEFORE"= "15 godzin"; +"reminder_1_DAY_BEFORE" = "1 dzień"; +"reminder_2_DAYS_BEFORE" = "2 dni"; /* Mailer */ +"Label" = "Etykieta"; "Show subscribed mailboxes only" = "Pokaż tylko subskrybowane konta pocztowe"; "Sort messages by threads" = "Sortuj wiadomości według wątków"; "Check for new mail:" = "Sprawdzaj nowe wiadomości:"; diff --git a/UI/PreferencesUI/Russian.lproj/Localizable.strings b/UI/PreferencesUI/Russian.lproj/Localizable.strings index 2b64bb9e9a..980cb70075 100644 --- a/UI/PreferencesUI/Russian.lproj/Localizable.strings +++ b/UI/PreferencesUI/Russian.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Персональный календарь"; "firstCalendar" = "Первый разрешенный календарь"; -"reminderTime_0000" = "0 минут"; -"reminderTime_0005" = "5 минут"; -"reminderTime_0010" = "10 минут"; -"reminderTime_0015" = "15 минут"; -"reminderTime_0030" = "30 минут"; -"reminderTime_0100" = "1 час"; -"reminderTime_0200" = "2 часа"; -"reminderTime_0400" = "4 часа"; -"reminderTime_0800" = "8 часов"; -"reminderTime_1200" = "1/2дня"; -"reminderTime_2400" = "1 день"; -"reminderTime_4800" = "2 дня"; +"reminder_5_MINUTES_BEFORE" = "5 минут"; +"reminder_10_MINUTES_BEFORE" = "10 минут"; +"reminder_15_MINUTES_BEFORE" = "15 минут"; +"reminder_30_MINUTES_BEFORE" = "30 минут"; +"reminder_1_HOUR_BEFORE" = "1 час"; +"reminder_2_HOURS_BEFORE" = "2 часа"; +"reminder_5_HOURS_BEFORE"= "5 часа"; +"reminder_15_HOURS_BEFORE"= "15 часов"; +"reminder_1_DAY_BEFORE" = "1 день"; +"reminder_2_DAYS_BEFORE" = "2 дня"; /* Mailer */ +"Label" = "Метка"; "Show subscribed mailboxes only" = "Показывать только почтовые ящики, на которые подписан"; "Sort messages by threads" = "Сортировать сообщения по нитям"; "Check for new mail:" = "Проверять новую почту:"; diff --git a/UI/PreferencesUI/Slovak.lproj/Localizable.strings b/UI/PreferencesUI/Slovak.lproj/Localizable.strings index 65726f2df8..0f4cd14d57 100644 --- a/UI/PreferencesUI/Slovak.lproj/Localizable.strings +++ b/UI/PreferencesUI/Slovak.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Osobný kalendár"; "firstCalendar" = "Prvý zapnutý kalendár"; -"reminderTime_0000" = "0 minút"; -"reminderTime_0005" = "5 minút"; -"reminderTime_0010" = "10 minút"; -"reminderTime_0015" = "15 minút"; -"reminderTime_0030" = "30 minút"; -"reminderTime_0100" = "1 hodina"; -"reminderTime_0200" = "2 hodiny"; -"reminderTime_0400" = "4 hodiny"; -"reminderTime_0800" = "8 hodín"; -"reminderTime_1200" = "1/2 dňa"; -"reminderTime_2400" = "1 deň"; -"reminderTime_4800" = "2 dni"; +"reminder_5_MINUTES_BEFORE" = "5 minút"; +"reminder_10_MINUTES_BEFORE" = "10 minút"; +"reminder_15_MINUTES_BEFORE" = "15 minút"; +"reminder_30_MINUTES_BEFORE" = "30 minút"; +"reminder_1_HOUR_BEFORE" = "1 hodina"; +"reminder_2_HOURS_BEFORE" = "2 hodiny"; +"reminder_5_HOURS_BEFORE"= "5 hodiny"; +"reminder_15_HOURS_BEFORE"= "15 hodín"; +"reminder_1_DAY_BEFORE" = "1 deň"; +"reminder_2_DAYS_BEFORE" = "2 dni"; /* Mailer */ +"Label" = "Štítok"; "Show subscribed mailboxes only" = "Ukazuj iba odoberané účty"; "Sort messages by threads" = "Zoraď správy do konverzácií"; "Check for new mail:" = "Kontrola nových mailov:"; diff --git a/UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings b/UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings index b287a970a3..703c33c31a 100644 --- a/UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings +++ b/UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Calendario personal"; "firstCalendar" = "Primer calendario habilitado"; -"reminderTime_0000" = "0 minutos"; -"reminderTime_0005" = "5 minutos"; -"reminderTime_0010" = "10 minutos"; -"reminderTime_0015" = "15 minutos"; -"reminderTime_0030" = "30 minutos"; -"reminderTime_0100" = "1 hora"; -"reminderTime_0200" = "2 horas"; -"reminderTime_0400" = "4 horas"; -"reminderTime_0800" = "8 horas"; -"reminderTime_1200" = "1/2 día"; -"reminderTime_2400" = "1 día"; -"reminderTime_4800" = "2 días"; +"reminder_5_MINUTES_BEFORE" = "5 minutos"; +"reminder_10_MINUTES_BEFORE" = "10 minutos"; +"reminder_15_MINUTES_BEFORE" = "15 minutos"; +"reminder_30_MINUTES_BEFORE" = "30 minutos"; +"reminder_1_HOUR_BEFORE" = "1 hora"; +"reminder_2_HOURS_BEFORE" = "2 horas"; +"reminder_5_HOURS_BEFORE"= "5 horas"; +"reminder_15_HOURS_BEFORE"= "15 horas"; +"reminder_1_DAY_BEFORE" = "1 día"; +"reminder_2_DAYS_BEFORE" = "2 días"; /* Mailer */ +"Label" = "Etiquetar"; "Show subscribed mailboxes only" = "Mostrar sólo buzones suscritos"; "Sort messages by threads" = "Ordenar mensajes por conversaciones"; "Check for new mail:" = "Comprobar si hay nuevos correos: "; diff --git a/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings b/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings index 1f42bb17c9..60b8197941 100644 --- a/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings +++ b/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings @@ -111,20 +111,19 @@ "personalCalendar" = "Calendario personal"; "firstCalendar" = "Primer calendario disponible"; -"reminderTime_0000" = "0 minutos"; -"reminderTime_0005" = "5 minutos"; -"reminderTime_0010" = "10 minutos"; -"reminderTime_0015" = "15 minutos"; -"reminderTime_0030" = "30 minutos"; -"reminderTime_0100" = "1 hora"; -"reminderTime_0200" = "2 horas"; -"reminderTime_0400" = "4 horas"; -"reminderTime_0800" = "8 horas"; -"reminderTime_1200" = "1/2 día"; -"reminderTime_2400" = "1 día"; -"reminderTime_4800" = "2 días"; +"reminder_5_MINUTES_BEFORE" = "5 minutos"; +"reminder_10_MINUTES_BEFORE" = "10 minutos"; +"reminder_15_MINUTES_BEFORE" = "15 minutos"; +"reminder_30_MINUTES_BEFORE" = "30 minutos"; +"reminder_1_HOUR_BEFORE" = "1 hora"; +"reminder_2_HOURS_BEFORE" = "2 horas"; +"reminder_5_HOURS_BEFORE"= "5 horas"; +"reminder_15_HOURS_BEFORE"= "15 horas"; +"reminder_1_DAY_BEFORE" = "1 día"; +"reminder_2_DAYS_BEFORE" = "2 días"; /* Mailer */ +"Label" = "Etiquetar"; "Show subscribed mailboxes only" = "Mostrar sólo buzones suscritos"; "Sort messages by threads" = "Ordenar mensajes por temas"; "Check for new mail:" = "Comprobar correo nuevo: "; diff --git a/UI/PreferencesUI/Swedish.lproj/Localizable.strings b/UI/PreferencesUI/Swedish.lproj/Localizable.strings index c1e981dbe1..73e4b02829 100644 --- a/UI/PreferencesUI/Swedish.lproj/Localizable.strings +++ b/UI/PreferencesUI/Swedish.lproj/Localizable.strings @@ -98,20 +98,19 @@ "personalCalendar" = "Personal calendar"; "firstCalendar" = "First enabled calendar"; -"reminderTime_0000" = "0 minuter"; -"reminderTime_0005" = "5 minuter"; -"reminderTime_0010" = "10 minuter"; -"reminderTime_0015" = "15 minuter"; -"reminderTime_0030" = "30 minuter"; -"reminderTime_0100" = "1 timme"; -"reminderTime_0200" = "2 timmar"; -"reminderTime_0400" = "4 timmar"; -"reminderTime_0800" = "8 timmar"; -"reminderTime_1200" = "1/2 dag"; -"reminderTime_2400" = "1 dag"; -"reminderTime_4800" = "2 dagar"; +"reminder_5_MINUTES_BEFORE" = "5 minuter"; +"reminder_10_MINUTES_BEFORE" = "10 minuter"; +"reminder_15_MINUTES_BEFORE" = "15 minuter"; +"reminder_30_MINUTES_BEFORE" = "30 minuter"; +"reminder_1_HOUR_BEFORE" = "1 timme"; +"reminder_2_HOURS_BEFORE" = "2 timmar"; +"reminder_5_HOURS_BEFORE"= "5 timmar"; +"reminder_15_HOURS_BEFORE"= "15 timmar"; +"reminder_1_DAY_BEFORE" = "1 dag"; +"reminder_2_DAYS_BEFORE" = "2 dagar"; /* Mailer */ +"Label" = "Etikett"; "Show subscribed mailboxes only" = "Visa endast prenumrerade postlådor"; "Sort messages by threads" = "Sort messages by threads"; "Check for new mail:" = "Hämta ny post:"; diff --git a/UI/PreferencesUI/Ukrainian.lproj/Localizable.strings b/UI/PreferencesUI/Ukrainian.lproj/Localizable.strings index 8a8ba55e5c..ead74f31c0 100644 --- a/UI/PreferencesUI/Ukrainian.lproj/Localizable.strings +++ b/UI/PreferencesUI/Ukrainian.lproj/Localizable.strings @@ -110,20 +110,19 @@ "personalCalendar" = "Особистий календар"; "firstCalendar" = "Перший активний календар"; -"reminderTime_0000" = "0 хвилин"; -"reminderTime_0005" = "5 хвилин"; -"reminderTime_0010" = "10 хвилин"; -"reminderTime_0015" = "15 хвилин"; -"reminderTime_0030" = "30 хвилин"; -"reminderTime_0100" = "1 година"; -"reminderTime_0200" = "2 години"; -"reminderTime_0400" = "4 години"; -"reminderTime_0800" = "8 годин"; -"reminderTime_1200" = "пів дня"; -"reminderTime_2400" = "1 день"; -"reminderTime_4800" = "2 дні"; +"reminder_5_MINUTES_BEFORE" = "5 хвилин"; +"reminder_10_MINUTES_BEFORE" = "10 хвилин"; +"reminder_15_MINUTES_BEFORE" = "15 хвилин"; +"reminder_30_MINUTES_BEFORE" = "30 хвилин"; +"reminder_1_HOUR_BEFORE" = "1 година"; +"reminder_2_HOURS_BEFORE" = "2 години"; +"reminder_5_HOURS_BEFORE"= "5 години"; +"reminder_15_HOURS_BEFORE"= "15 годин"; +"reminder_1_DAY_BEFORE" = "1 день"; +"reminder_2_DAYS_BEFORE" = "2 дні"; /* Mailer */ +"Label" = "Позначка"; "Show subscribed mailboxes only" = "Показувати лише поштові скриньки, на які я підписаний"; "Sort messages by threads" = "Сортувати повідомлення за гілками"; "Check for new mail:" = "Перевіряти нову пошту:"; diff --git a/UI/PreferencesUI/Welsh.lproj/Localizable.strings b/UI/PreferencesUI/Welsh.lproj/Localizable.strings index 425195c15d..fd7dc78a17 100644 --- a/UI/PreferencesUI/Welsh.lproj/Localizable.strings +++ b/UI/PreferencesUI/Welsh.lproj/Localizable.strings @@ -98,20 +98,19 @@ "personalCalendar" = "Personal calendar"; "firstCalendar" = "First enabled calendar"; -"reminderTime_0000" = "0 munud"; -"reminderTime_0005" = "5 munud"; -"reminderTime_0010" = "10 munud"; -"reminderTime_0015" = "15 munud"; -"reminderTime_0030" = "30 munud"; -"reminderTime_0100" = "1 awr"; -"reminderTime_0200" = "2 awr"; -"reminderTime_0400" = "4 awr"; -"reminderTime_0800" = "8 awr"; -"reminderTime_1200" = "1/2 diwrnod"; -"reminderTime_2400" = "1 diwrnod"; -"reminderTime_4800" = "2 ddiwrnod"; +"reminder_5_MINUTES_BEFORE" = "5 munud"; +"reminder_10_MINUTES_BEFORE" = "10 munud"; +"reminder_15_MINUTES_BEFORE" = "15 munud"; +"reminder_30_MINUTES_BEFORE" = "30 munud"; +"reminder_1_HOUR_BEFORE" = "1 awr"; +"reminder_2_HOURS_BEFORE" = "2 awr"; +"reminder_5_HOURS_BEFORE"= "5 awr"; +"reminder_15_HOURS_BEFORE"= "15 awr"; +"reminder_1_DAY_BEFORE" = "1 diwrnod"; +"reminder_2_DAYS_BEFORE" = "2 ddiwrnod"; /* Mailer */ +"Label" = "Label"; "Show subscribed mailboxes only" = "Show subscribed mailboxes only"; "Sort messages by threads" = "Sort messages by threads"; "Check for new mail:" = "Chwilio am ebost newydd:"; diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index 8e0a9e293a..847b64a999 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -2849,11 +2849,6 @@ function getMenus() { labelMenu.prepareVisibility = onLabelMenuPrepareVisibility; } - var labelMenu = $("label-menu"); - if (labelMenu) { - labelMenu.prepareVisibility = onLabelMenuPrepareVisibility; - } - var markMenu = $("mark-menu"); if (markMenu) { markMenu.prepareVisibility = onMarkMenuPrepareVisibility; From 384d998c471f52eeed24b749f64873374e46ebfc Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 22 Nov 2013 14:42:16 -0500 Subject: [PATCH 008/214] Cleanup wox templates --- UI/Templates/MailerUI/UIxMailWindowCloser.wox | 5 +---- UI/Templates/PreferencesUI/UIxFilterEditor.wox | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/UI/Templates/MailerUI/UIxMailWindowCloser.wox b/UI/Templates/MailerUI/UIxMailWindowCloser.wox index 77498df8c5..63e643f36f 100644 --- a/UI/Templates/MailerUI/UIxMailWindowCloser.wox +++ b/UI/Templates/MailerUI/UIxMailWindowCloser.wox @@ -8,17 +8,14 @@ > <var:string label:value="Closing Window ..."/> - - - + const:escapeHTML="NO" /> diff --git a/UI/Templates/PreferencesUI/UIxFilterEditor.wox b/UI/Templates/PreferencesUI/UIxFilterEditor.wox index c5f434e615..f6f88ef064 100644 --- a/UI/Templates/PreferencesUI/UIxFilterEditor.wox +++ b/UI/Templates/PreferencesUI/UIxFilterEditor.wox @@ -13,7 +13,7 @@ >
From 2114a48222b73c1edad3e2dbdbf39898103b23eb Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 22 Nov 2013 15:03:57 -0500 Subject: [PATCH 009/214] Update NEWS file --- NEWS | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/NEWS b/NEWS index 9ef1ea1997..8a1dd99179 100644 --- a/NEWS +++ b/NEWS @@ -13,6 +13,14 @@ Enhancements Bug fixes - +2.1.1a (2013-11-22) +------------------- + +Bug fixes + - fixed Sieve filters editor (#2504) + - moved missing translation to UI/Common (#2499) + - fixed potential crasher in OpenChange + 2.1.1 (2013-11-19) ------------------ From 1cf696f57c7347040bff272a7873d7a5ac8d9fbe Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 25 Nov 2013 09:52:18 -0500 Subject: [PATCH 010/214] Mail composition: add text part before html part Fixes #2512 --- NEWS | 2 +- SoObjects/Mailer/SOGoDraftObject.m | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/NEWS b/NEWS index 8a1dd99179..5d80391022 100644 --- a/NEWS +++ b/NEWS @@ -11,7 +11,7 @@ Enhancements - updated CKEditor to version 4.3.0 and added tab module Bug fixes - - + - put the text part before the HTML part when composing mail to fix a display issue with Thunderbird (#2512) 2.1.1a (2013-11-22) ------------------- diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index 4a9ea4ece4..2e0da59d7c 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -1129,11 +1129,11 @@ - (NGMimeMessage *) mimeMessageForContentWithHeaderMap: (NGMutableHashMap *) map body = [[[NGMimeMultipartBody alloc] initWithPart: message] autorelease]; [map addObject: MultiAlternativeType forKey: @"content-type"]; + // Get the text part from it and add it + [body addBodyPart: [self plainTextBodyPartForText]]; + // Add the HTML part [body addBodyPart: [self bodyPartForText]]; - - // Get the text part from it and add it too - [body addBodyPart: [self plainTextBodyPartForText]]; } [message setBody: body]; @@ -1343,11 +1343,11 @@ - (NGMimeBodyPart *) mimeMultipartAlternative textParts = [[NGMimeMultipartBody alloc] initWithPart: part]; + // Get the text part from it and add it + [textParts addBodyPart: [self plainTextBodyPartForText]]; + // Add the HTML part [textParts addBodyPart: [self bodyPartForText]]; - - // Get the text part from it and add it too - [textParts addBodyPart: [self plainTextBodyPartForText]]; [part setBody: textParts]; RELEASE(textParts); From b0eb34f6b72f0619f277ef34d9ef3ad7584709ca Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 2 Dec 2013 11:58:28 -0500 Subject: [PATCH 011/214] Add 'div' plugin to CKEditor --- .../ckeditor/build-config.js | 4 ++-- UI/WebServerResources/ckeditor/ckeditor.js | 19 ++++++++------- UI/WebServerResources/ckeditor/config.js | 22 +++++++----------- UI/WebServerResources/ckeditor/lang/ar.js | 2 +- UI/WebServerResources/ckeditor/lang/ca.js | 2 +- UI/WebServerResources/ckeditor/lang/cs.js | 2 +- UI/WebServerResources/ckeditor/lang/cy.js | 2 +- UI/WebServerResources/ckeditor/lang/da.js | 2 +- UI/WebServerResources/ckeditor/lang/de.js | 2 +- UI/WebServerResources/ckeditor/lang/en.js | 2 +- UI/WebServerResources/ckeditor/lang/es.js | 2 +- UI/WebServerResources/ckeditor/lang/fi.js | 2 +- UI/WebServerResources/ckeditor/lang/fr.js | 2 +- UI/WebServerResources/ckeditor/lang/hu.js | 2 +- UI/WebServerResources/ckeditor/lang/is.js | 2 +- UI/WebServerResources/ckeditor/lang/it.js | 2 +- UI/WebServerResources/ckeditor/lang/nb.js | 2 +- UI/WebServerResources/ckeditor/lang/nl.js | 2 +- UI/WebServerResources/ckeditor/lang/no.js | 2 +- UI/WebServerResources/ckeditor/lang/pl.js | 2 +- UI/WebServerResources/ckeditor/lang/pt-br.js | 2 +- UI/WebServerResources/ckeditor/lang/ru.js | 2 +- UI/WebServerResources/ckeditor/lang/sk.js | 2 +- UI/WebServerResources/ckeditor/lang/sv.js | 2 +- UI/WebServerResources/ckeditor/lang/uk.js | 2 +- .../ckeditor/plugins/div/dialogs/div.js | 9 +++++++ .../ckeditor/plugins/icons.png | Bin 9253 -> 9626 bytes .../ckeditor/plugins/icons_hidpi.png | Bin 28508 -> 30326 bytes .../ckeditor/skins/moono/editor.css | 2 +- .../ckeditor/skins/moono/editor_gecko.css | 2 +- .../ckeditor/skins/moono/editor_ie.css | 2 +- .../ckeditor/skins/moono/editor_ie7.css | 2 +- .../ckeditor/skins/moono/editor_ie8.css | 2 +- .../ckeditor/skins/moono/editor_iequirks.css | 2 +- .../ckeditor/skins/moono/icons.png | Bin 9253 -> 9626 bytes .../ckeditor/skins/moono/icons_hidpi.png | Bin 28508 -> 30326 bytes 36 files changed, 58 insertions(+), 52 deletions(-) create mode 100644 UI/WebServerResources/ckeditor/plugins/div/dialogs/div.js diff --git a/UI/WebServerResources/ckeditor/build-config.js b/UI/WebServerResources/ckeditor/build-config.js index 55ea1f1508..0cbfbd43a4 100644 --- a/UI/WebServerResources/ckeditor/build-config.js +++ b/UI/WebServerResources/ckeditor/build-config.js @@ -32,7 +32,6 @@ var CKBUILDER_CONFIG = { 'entities' : 1, 'floatingspace' : 1, 'wysiwygarea' : 1, - 'indent' : 1, 'link' : 1, 'list' : 1, 'pastetext' : 1, @@ -62,7 +61,8 @@ var CKBUILDER_CONFIG = { 'table' : 1, 'tabletools' : 1, 'tableresize' : 1, - 'tab' : 1 + 'tab' : 1, + 'div' : 1 }, languages : { 'ar' : 1, diff --git a/UI/WebServerResources/ckeditor/ckeditor.js b/UI/WebServerResources/ckeditor/ckeditor.js index 4d006dbc2b..273222f338 100644 --- a/UI/WebServerResources/ckeditor/ckeditor.js +++ b/UI/WebServerResources/ckeditor/ckeditor.js @@ -635,12 +635,7 @@ a=a.replace(/]*>/,"$&"),h&&(a=a.replace(/")));c=' + - diff --git a/UI/WebServerResources/XMLHttpRequest.js b/UI/WebServerResources/XMLHttpRequest.js index 1597d48b3d..4c2ca215ec 100644 --- a/UI/WebServerResources/XMLHttpRequest.js +++ b/UI/WebServerResources/XMLHttpRequest.js @@ -1,80 +1,123 @@ -// XMLHttpRequest.js Copyright (C) 2008 Sergey Ilinsky (http://www.ilinsky.com) -// -// This work is free software; you can redistribute it and/or modify -// it under the terms of the GNU Lesser General Public License as published by -// the Free Software Foundation; either version 2.1 of the License, or -// (at your option) any later version. - -// This work is distributed in the hope that it will be useful, -// but without any warranty; without even the implied warranty of -// merchantability or fitness for a particular purpose. See the -// GNU Lesser General Public License for more details. - -// You should have received a copy of the GNU Lesser General Public License -// along with this library; if not, write to the Free Software Foundation, Inc., -// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +/** +* XMLHttpRequest.js Copyright (C) 2011 Sergey Ilinsky (http://www.ilinsky.com) +* +* This work is free software; you can redistribute it and/or modify +* it under the terms of the GNU Lesser General Public License as published by +* the Free Software Foundation; either version 2.1 of the License, or +* (at your option) any later version. +* +* This work is distributed in the hope that it will be useful, +* but without any warranty; without even the implied warranty of +* merchantability or fitness for a particular purpose. See the +* GNU Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public License +* along with this library; if not, write to the Free Software Foundation, Inc., +* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +*/ (function () { // Save reference to earlier defined object implementation (if any) - var oXMLHttpRequest = window.XMLHttpRequest; - + var oXMLHttpRequest = window.XMLHttpRequest; + // Define on browser type - var bGecko = !!window.controllers, - bIE = window.document.all && !window.opera; + var bGecko = !!window.controllers; + var bIE = !!window.document.namespaces; + var bIE7 = bIE && window.navigator.userAgent.match(/MSIE 7.0/); + + // Enables "XMLHttpRequest()" call next to "new XMLHttpRequest()" + function fXMLHttpRequest() { + if (!window.XMLHttpRequest || bIE7) { + this._object = new window.ActiveXObject("Microsoft.XMLHTTP"); + } // only use initial XHR object internally if current reference to XHR is our normalized replacement + else if (window.XMLHttpRequest.isNormalizedObject) { + this._object = new oXMLHttpRequest(); + } // otherwise use whatever is currently referenced by XMLHttpRequest + else { + this._object = new window.XMLHttpRequest(); + } + this._listeners = []; + } // Constructor function cXMLHttpRequest() { - this._object = oXMLHttpRequest ? new oXMLHttpRequest : new window.ActiveXObject("Microsoft.XMLHTTP"); - this._listeners = []; - }; + return new fXMLHttpRequest; + } + cXMLHttpRequest.prototype = fXMLHttpRequest.prototype; // BUGFIX: Firefox with Firebug installed would break pages if not executed - if (bGecko && oXMLHttpRequest.wrapped) - cXMLHttpRequest.wrapped = oXMLHttpRequest.wrapped; + if (bGecko && oXMLHttpRequest.wrapped) { + cXMLHttpRequest.wrapped = oXMLHttpRequest.wrapped; + } + + // Marker to be able to easily identify our object + cXMLHttpRequest.isNormalizedObject = true; // Constants - cXMLHttpRequest.UNSENT = 0; - cXMLHttpRequest.OPENED = 1; - cXMLHttpRequest.HEADERS_RECEIVED = 2; - cXMLHttpRequest.LOADING = 3; - cXMLHttpRequest.DONE = 4; + cXMLHttpRequest.UNSENT = 0; + cXMLHttpRequest.OPENED = 1; + cXMLHttpRequest.HEADERS_RECEIVED = 2; + cXMLHttpRequest.LOADING = 3; + cXMLHttpRequest.DONE = 4; + + // Interface level constants + cXMLHttpRequest.prototype.UNSENT = cXMLHttpRequest.UNSENT; + cXMLHttpRequest.prototype.OPENED = cXMLHttpRequest.OPENED; + cXMLHttpRequest.prototype.HEADERS_RECEIVED = cXMLHttpRequest.HEADERS_RECEIVED; + cXMLHttpRequest.prototype.LOADING = cXMLHttpRequest.LOADING; + cXMLHttpRequest.prototype.DONE = cXMLHttpRequest.DONE; // Public Properties - cXMLHttpRequest.prototype.readyState = cXMLHttpRequest.UNSENT; - cXMLHttpRequest.prototype.responseText = ''; - cXMLHttpRequest.prototype.responseXML = null; - cXMLHttpRequest.prototype.status = 0; - cXMLHttpRequest.prototype.statusText = ''; + cXMLHttpRequest.prototype.readyState = cXMLHttpRequest.UNSENT; + cXMLHttpRequest.prototype.responseText = ''; + cXMLHttpRequest.prototype.responseXML = null; + cXMLHttpRequest.prototype.status = 0; + cXMLHttpRequest.prototype.statusText = ''; + + // Priority proposal + cXMLHttpRequest.prototype.priority = "NORMAL"; // Instance-level Events Handlers - cXMLHttpRequest.prototype.onreadystatechange = null; + cXMLHttpRequest.prototype.onreadystatechange = null; // Class-level Events Handlers - cXMLHttpRequest.onreadystatechange = null; - cXMLHttpRequest.onopen = null; - cXMLHttpRequest.onsend = null; - cXMLHttpRequest.onabort = null; + cXMLHttpRequest.onreadystatechange = null; + cXMLHttpRequest.onopen = null; + cXMLHttpRequest.onsend = null; + cXMLHttpRequest.onabort = null; // Public Methods - cXMLHttpRequest.prototype.open = function(sMethod, sUrl, bAsync, sUser, sPassword) { + cXMLHttpRequest.prototype.open = function(sMethod, sUrl, bAsync, sUser, sPassword) { + // http://www.w3.org/TR/XMLHttpRequest/#the-open-method + var sLowerCaseMethod = sMethod.toLowerCase(); + if (sLowerCaseMethod == "connect" || sLowerCaseMethod == "trace" || sLowerCaseMethod == "track") { + // Using a generic error and an int - not too sure all browsers support correctly + // http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#securityerror, so, this is safer + // XXX should do better than that, but this is OT to XHR. + throw new Error(18); + } + + // Delete headers, required when object is reused + delete this._headers; - // When bAsync parameter value is ommited, use true as default - if (arguments.length < 3) - bAsync = true; + // When bAsync parameter value is omitted, use true as default + if (arguments.length < 3) { + bAsync = true; + } // Save async parameter for fixing Gecko bug with missing readystatechange in synchronous requests - this._async = bAsync; + this._async = bAsync; // Set the onreadystatechange handler - var oRequest = this, - nState = this.readyState, - fOnUnload; + var oRequest = this; + var nState = this.readyState; + var fOnUnload = null; // BUGFIX: IE - memory leak on page unload (inter-page leak) if (bIE && bAsync) { fOnUnload = function() { - if (oRequest._object.readyState != cXMLHttpRequest.DONE) { + if (nState != cXMLHttpRequest.DONE) { fCleanTransport(oRequest); // Safe to abort here since onreadystatechange handler removed oRequest.abort(); @@ -83,285 +126,411 @@ window.attachEvent("onunload", fOnUnload); } - this._object.onreadystatechange = function() { - if (bGecko && !bAsync) + // Add method sniffer + if (cXMLHttpRequest.onopen) { + cXMLHttpRequest.onopen.apply(this, arguments); + } + + if (arguments.length > 4) { + this._object.open(sMethod, sUrl, bAsync, sUser, sPassword); + } else if (arguments.length > 3) { + this._object.open(sMethod, sUrl, bAsync, sUser); + } else { + this._object.open(sMethod, sUrl, bAsync); + } + + this.readyState = cXMLHttpRequest.OPENED; + fReadyStateChange(this); + + this._object.onreadystatechange = function() { + if (bGecko && !bAsync) { return; + } // Synchronize state - oRequest.readyState = oRequest._object.readyState; - - // + oRequest.readyState = oRequest._object.readyState; fSynchronizeValues(oRequest); - // BUGFIX: Firefox fires unneccesary DONE when aborting + // BUGFIX: Firefox fires unnecessary DONE when aborting if (oRequest._aborted) { // Reset readyState to UNSENT - oRequest.readyState = cXMLHttpRequest.UNSENT; + oRequest.readyState = cXMLHttpRequest.UNSENT; // Return now return; } if (oRequest.readyState == cXMLHttpRequest.DONE) { - // + // Free up queue + delete oRequest._data; + + // Uncomment these lines for bAsync + /** + * if (bAsync) { + * fQueue_remove(oRequest); + * } + */ + fCleanTransport(oRequest); -// Uncomment this block if you need a fix for IE cache -/* - // BUGFIX: IE - cache issue - if (!oRequest._object.getResponseHeader("Date")) { - // Save object to cache - oRequest._cached = oRequest._object; - - // Instantiate a new transport object - cXMLHttpRequest.call(oRequest); - - // Re-send request - oRequest._object.open(sMethod, sUrl, bAsync, sUser, sPassword); - oRequest._object.setRequestHeader("If-Modified-Since", oRequest._cached.getResponseHeader("Last-Modified") || new window.Date(0)); - // Copy headers set - if (oRequest._headers) - for (var sHeader in oRequest._headers) - if (typeof oRequest._headers[sHeader] == "string") // Some frameworks prototype objects with functions - oRequest._object.setRequestHeader(sHeader, oRequest._headers[sHeader]); - - oRequest._object.onreadystatechange = function() { - // Synchronize state - oRequest.readyState = oRequest._object.readyState; - - if (oRequest._aborted) { - // - oRequest.readyState = cXMLHttpRequest.UNSENT; - - // Return - return; - } - - if (oRequest.readyState == cXMLHttpRequest.DONE) { - // Clean Object - fCleanTransport(oRequest); - - // get cached request - if (oRequest.status == 304) - oRequest._object = oRequest._cached; - - // - delete oRequest._cached; - - // - fSynchronizeValues(oRequest); - - // - fReadyStateChange(oRequest); - - // BUGFIX: IE - memory leak in interrupted - if (bIE && bAsync) - window.detachEvent("onunload", fOnUnload); - } - }; - oRequest._object.send(null); - - // Return now - wait untill re-sent request is finished - return; - }; -*/ + + // Uncomment this block if you need a fix for IE cache + /** + * // BUGFIX: IE - cache issue + * if (!oRequest._object.getResponseHeader("Date")) { + * // Save object to cache + * oRequest._cached = oRequest._object; + * + * // Instantiate a new transport object + * cXMLHttpRequest.call(oRequest); + * + * // Re-send request + * if (sUser) { + * if (sPassword) { + * oRequest._object.open(sMethod, sUrl, bAsync, sUser, sPassword); + * } else { + * oRequest._object.open(sMethod, sUrl, bAsync); + * } + * + * oRequest._object.setRequestHeader("If-Modified-Since", oRequest._cached.getResponseHeader("Last-Modified") || new window.Date(0)); + * // Copy headers set + * if (oRequest._headers) { + * for (var sHeader in oRequest._headers) { + * // Some frameworks prototype objects with functions + * if (typeof oRequest._headers[sHeader] == "string") { + * oRequest._object.setRequestHeader(sHeader, oRequest._headers[sHeader]); + * } + * } + * } + * oRequest._object.onreadystatechange = function() { + * // Synchronize state + * oRequest.readyState = oRequest._object.readyState; + * + * if (oRequest._aborted) { + * // + * oRequest.readyState = cXMLHttpRequest.UNSENT; + * + * // Return + * return; + * } + * + * if (oRequest.readyState == cXMLHttpRequest.DONE) { + * // Clean Object + * fCleanTransport(oRequest); + * + * // get cached request + * if (oRequest.status == 304) { + * oRequest._object = oRequest._cached; + * } + * + * // + * delete oRequest._cached; + * + * // + * fSynchronizeValues(oRequest); + * + * // + * fReadyStateChange(oRequest); + * + * // BUGFIX: IE - memory leak in interrupted + * if (bIE && bAsync) { + * window.detachEvent("onunload", fOnUnload); + * } + * + * } + * }; + * oRequest._object.send(null); + * + * // Return now - wait until re-sent request is finished + * return; + * }; + */ + // BUGFIX: IE - memory leak in interrupted - if (bIE && bAsync) + if (bIE && bAsync) { window.detachEvent("onunload", fOnUnload); - } + } - // BUGFIX: Some browsers (Internet Explorer, Gecko) fire OPEN readystate twice - if (nState != oRequest.readyState) - fReadyStateChange(oRequest); + // BUGFIX: Some browsers (Internet Explorer, Gecko) fire OPEN readystate twice + if (nState != oRequest.readyState) { + fReadyStateChange(oRequest); + } - nState = oRequest.readyState; + nState = oRequest.readyState; + } }; - // Add method sniffer - if (cXMLHttpRequest.onopen) - cXMLHttpRequest.onopen.apply(this, arguments); - - if (arguments.length > 4) - this._object.open(sMethod, sUrl, bAsync, sUser, sPassword); - else - if (arguments.length > 3) - this._object.open(sMethod, sUrl, bAsync, sUser); - else - this._object.open(sMethod, sUrl, bAsync); - - // BUGFIX: Gecko - missing readystatechange calls in synchronous requests - if (!bAsync && bGecko) { - this.readyState = cXMLHttpRequest.OPENED; - - fReadyStateChange(this); - } }; - cXMLHttpRequest.prototype.send = function(vData) { + + cXMLHttpRequest.prototype.send = function(vData) { // Add method sniffer - if (cXMLHttpRequest.onsend) + if (cXMLHttpRequest.onsend) { cXMLHttpRequest.onsend.apply(this, arguments); + } + + if (!arguments.length) { + vData = null; + } // BUGFIX: Safari - fails sending documents created/modified dynamically, so an explicit serialization required // BUGFIX: IE - rewrites any custom mime-type to "text/xml" in case an XMLNode is sent // BUGFIX: Gecko - fails sending Element (this is up to the implementation either to standard) if (vData && vData.nodeType) { - vData = window.XMLSerializer ? new window.XMLSerializer().serializeToString(vData) : vData.xml; - if (!this._headers["Content-Type"]) + vData = window.XMLSerializer ? new window.XMLSerializer().serializeToString(vData) : vData.xml; + if (!this._headers["Content-Type"]) { this._object.setRequestHeader("Content-Type", "application/xml"); - } - - this._object.send(vData); - - // BUGFIX: Gecko - missing readystatechange calls in synchronous requests - if (bGecko && !this._async) { - this.readyState = cXMLHttpRequest.OPENED; - - // Synchronize state - fSynchronizeValues(this); - - // Simulate missing states - while (this.readyState < cXMLHttpRequest.DONE) { - this.readyState++; - fReadyStateChange(this); - // Check if we are aborted - if (this._aborted) - return; } } + + this._data = vData; + + /** + * // Add to queue + * if (this._async) { + * fQueue_add(this); + * } else { */ + fXMLHttpRequest_send(this); + /** + * } + */ }; - cXMLHttpRequest.prototype.abort = function() { + + cXMLHttpRequest.prototype.abort = function() { // Add method sniffer - if (cXMLHttpRequest.onabort) + if (cXMLHttpRequest.onabort) { cXMLHttpRequest.onabort.apply(this, arguments); + } - // BUGFIX: Gecko - unneccesary DONE when aborting - if (this.readyState > cXMLHttpRequest.UNSENT) - this._aborted = true; + // BUGFIX: Gecko - unnecessary DONE when aborting + if (this.readyState > cXMLHttpRequest.UNSENT) { + this._aborted = true; + } this._object.abort(); // BUGFIX: IE - memory leak fCleanTransport(this); + + this.readyState = cXMLHttpRequest.UNSENT; + + delete this._data; + + /* if (this._async) { + * fQueue_remove(this); + * } + */ }; - cXMLHttpRequest.prototype.getAllResponseHeaders = function() { + + cXMLHttpRequest.prototype.getAllResponseHeaders = function() { return this._object.getAllResponseHeaders(); }; - cXMLHttpRequest.prototype.getResponseHeader = function(sName) { + + cXMLHttpRequest.prototype.getResponseHeader = function(sName) { return this._object.getResponseHeader(sName); }; - cXMLHttpRequest.prototype.setRequestHeader = function(sName, sValue) { + + cXMLHttpRequest.prototype.setRequestHeader = function(sName, sValue) { // BUGFIX: IE - cache issue - if (!this._headers) - this._headers = {}; - this._headers[sName] = sValue; + if (!this._headers) { + this._headers = {}; + } + + this._headers[sName] = sValue; return this._object.setRequestHeader(sName, sValue); }; // EventTarget interface implementation - cXMLHttpRequest.prototype.addEventListener = function(sName, fHandler, bUseCapture) { - for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) - if (oListener[0] == sName && oListener[1] == fHandler && oListener[2] == bUseCapture) + cXMLHttpRequest.prototype.addEventListener = function(sName, fHandler, bUseCapture) { + for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) { + if (oListener[0] == sName && oListener[1] == fHandler && oListener[2] == bUseCapture) { return; + } + } + // Add listener this._listeners.push([sName, fHandler, bUseCapture]); }; - cXMLHttpRequest.prototype.removeEventListener = function(sName, fHandler, bUseCapture) { - for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) - if (oListener[0] == sName && oListener[1] == fHandler && oListener[2] == bUseCapture) + cXMLHttpRequest.prototype.removeEventListener = function(sName, fHandler, bUseCapture) { + for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) { + if (oListener[0] == sName && oListener[1] == fHandler && oListener[2] == bUseCapture) { break; + } + } + // Remove listener - if (oListener) + if (oListener) { this._listeners.splice(nIndex, 1); + } }; - cXMLHttpRequest.prototype.dispatchEvent = function(oEvent) { - var oEvent = { - 'type': oEvent.type, - 'target': this, - 'currentTarget':this, - 'eventPhase': 2, - 'bubbles': oEvent.bubbles, - 'cancelable': oEvent.cancelable, - 'timeStamp': oEvent.timeStamp, - 'stopPropagation': function() {}, // There is no flow - 'preventDefault': function() {}, // There is no default action - 'initEvent': function() {} // Original event object should be inited + cXMLHttpRequest.prototype.dispatchEvent = function(oEvent) { + var oEventPseudo = { + 'type': oEvent.type, + 'target': this, + 'currentTarget': this, + 'eventPhase': 2, + 'bubbles': oEvent.bubbles, + 'cancelable': oEvent.cancelable, + 'timeStamp': oEvent.timeStamp, + 'stopPropagation': function() {}, // There is no flow + 'preventDefault': function() {}, // There is no default action + 'initEvent': function() {} // Original event object should be initialized }; // Execute onreadystatechange - if (oEvent.type == "readystatechange" && this.onreadystatechange) - (this.onreadystatechange.handleEvent || this.onreadystatechange).apply(this, [oEvent]); + if (oEventPseudo.type == "readystatechange" && this.onreadystatechange) { + (this.onreadystatechange.handleEvent || this.onreadystatechange).apply(this, [oEventPseudo]); + } + // Execute listeners - for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) - if (oListener[0] == oEvent.type && !oListener[2]) - (oListener[1].handleEvent || oListener[1]).apply(this, [oEvent]); + for (var nIndex = 0, oListener; oListener = this._listeners[nIndex]; nIndex++) { + if (oListener[0] == oEventPseudo.type && !oListener[2]) { + (oListener[1].handleEvent || oListener[1]).apply(this, [oEventPseudo]); + } + } + }; // - cXMLHttpRequest.prototype.toString = function() { + cXMLHttpRequest.prototype.toString = function() { return '[' + "object" + ' ' + "XMLHttpRequest" + ']'; }; - cXMLHttpRequest.toString = function() { + cXMLHttpRequest.toString = function() { return '[' + "XMLHttpRequest" + ']'; }; + /** + * // Queue manager + * var oQueuePending = {"CRITICAL":[],"HIGH":[],"NORMAL":[],"LOW":[],"LOWEST":[]}, + * aQueueRunning = []; + * function fQueue_add(oRequest) { + * oQueuePending[oRequest.priority in oQueuePending ? oRequest.priority : "NORMAL"].push(oRequest); + * // + * setTimeout(fQueue_process); + * }; + * + * function fQueue_remove(oRequest) { + * for (var nIndex = 0, bFound = false; nIndex < aQueueRunning.length; nIndex++) + * if (bFound) { + * aQueueRunning[nIndex - 1] = aQueueRunning[nIndex]; + * } else { + * if (aQueueRunning[nIndex] == oRequest) { + * bFound = true; + * } + * } + * + * if (bFound) { + * aQueueRunning.length--; + * } + * + * + * // + * setTimeout(fQueue_process); + * }; + * + * function fQueue_process() { + * if (aQueueRunning.length < 6) { + * for (var sPriority in oQueuePending) { + * if (oQueuePending[sPriority].length) { + * var oRequest = oQueuePending[sPriority][0]; + * oQueuePending[sPriority] = oQueuePending[sPriority].slice(1); + * // + * aQueueRunning.push(oRequest); + * // Send request + * fXMLHttpRequest_send(oRequest); + * break; + * } + * } + * } + * }; + */ + // Helper function + function fXMLHttpRequest_send(oRequest) { + oRequest._object.send(oRequest._data); + + // BUGFIX: Gecko - missing readystatechange calls in synchronous requests + if (bGecko && !oRequest._async) { + oRequest.readyState = cXMLHttpRequest.OPENED; + + // Synchronize state + fSynchronizeValues(oRequest); + + // Simulate missing states + while (oRequest.readyState < cXMLHttpRequest.DONE) { + oRequest.readyState++; + fReadyStateChange(oRequest); + // Check if we are aborted + if (oRequest._aborted) { + return; + } + } + } + } + function fReadyStateChange(oRequest) { // Sniffing code - if (cXMLHttpRequest.onreadystatechange) + if (cXMLHttpRequest.onreadystatechange){ cXMLHttpRequest.onreadystatechange.apply(oRequest); + } + // Fake event oRequest.dispatchEvent({ - 'type': "readystatechange", - 'bubbles': false, - 'cancelable': false, - 'timeStamp': new Date + 0 + 'type': "readystatechange", + 'bubbles': false, + 'cancelable': false, + 'timeStamp': new Date().getTime() }); - }; + } function fGetDocument(oRequest) { - var oDocument = oRequest.responseXML; + var oDocument = oRequest.responseXML; + var sResponse = oRequest.responseText; // Try parsing responseText - if (bIE && oDocument && !oDocument.documentElement && oRequest.getResponseHeader("Content-Type").match(/[^\/]+\/[^\+]+\+xml/)) { - oDocument = new window.ActiveXObject("Microsoft.XMLDOM"); - oDocument.loadXML(oRequest.responseText); + if (bIE && sResponse && oDocument && !oDocument.documentElement && oRequest.getResponseHeader("Content-Type").match(/[^\/]+\/[^\+]+\+xml/)) { + oDocument = new window.ActiveXObject("Microsoft.XMLDOM"); + oDocument.async = false; + oDocument.validateOnParse = false; + oDocument.loadXML(sResponse); } + // Check if there is no error in document - if (oDocument) - if ((bIE && oDocument.parseError != 0) || !oDocument.documentElement || (oDocument.documentElement && oDocument.documentElement.tagName == "parsererror")) + if (oDocument){ + if ((bIE && oDocument.parseError != 0) || !oDocument.documentElement || (oDocument.documentElement && oDocument.documentElement.tagName == "parsererror")) { return null; + } + } return oDocument; - }; + } function fSynchronizeValues(oRequest) { - try { oRequest.responseText = oRequest._object.responseText; } catch (e) {} - try { oRequest.responseXML = fGetDocument(oRequest._object); } catch (e) {} - try { oRequest.status = oRequest._object.status; } catch (e) {} - try { oRequest.statusText = oRequest._object.statusText; } catch (e) {} - }; + try { oRequest.responseText = oRequest._object.responseText; } catch (e) {} + try { oRequest.responseXML = fGetDocument(oRequest._object); } catch (e) {} + try { oRequest.status = oRequest._object.status; } catch (e) {} + try { oRequest.statusText = oRequest._object.statusText; } catch (e) {} + } function fCleanTransport(oRequest) { // BUGFIX: IE - memory leak (on-page leak) - oRequest._object.onreadystatechange = new window.Function; - - // Delete private properties - delete oRequest._headers; - }; + oRequest._object.onreadystatechange = new window.Function; + } // Internet Explorer 5.0 (missing apply) if (!window.Function.prototype.apply) { - window.Function.prototype.apply = function(oRequest, oArguments) { - if (!oArguments) - oArguments = []; - oRequest.__func = this; + window.Function.prototype.apply = function(oRequest, oArguments) { + if (!oArguments) { + oArguments = []; + } + oRequest.__func = this; oRequest.__func(oArguments[0], oArguments[1], oArguments[2], oArguments[3], oArguments[4]); delete oRequest.__func; }; - }; + } // Register new object with window - window.XMLHttpRequest = cXMLHttpRequest; + window.XMLHttpRequest = cXMLHttpRequest; + })(); From a8e3418a4cac2812c2fe1234ef0c95b88100c9d5 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 18 Dec 2013 08:38:03 -0500 Subject: [PATCH 025/214] Use the UIxMailSizeFormatter in messages listing --- UI/MailPartViewers/UIxMailSizeFormatter.m | 23 +++++++++++-------- UI/MailerUI/UIxMailListActions.h | 2 ++ UI/MailerUI/UIxMailListActions.m | 18 ++++----------- .../MailPartViewers/UIxMailPartLinkViewer.wox | 2 +- UI/WebServerResources/generic.css | 4 ++++ 5 files changed, 25 insertions(+), 24 deletions(-) diff --git a/UI/MailPartViewers/UIxMailSizeFormatter.m b/UI/MailPartViewers/UIxMailSizeFormatter.m index c4fdbe09e8..2e5b133deb 100644 --- a/UI/MailPartViewers/UIxMailSizeFormatter.m +++ b/UI/MailPartViewers/UIxMailSizeFormatter.m @@ -25,7 +25,8 @@ @implementation UIxMailSizeFormatter -+ (id)sharedMailSizeFormatter { ++ (id) sharedMailSizeFormatter +{ static UIxMailSizeFormatter *fmt = nil; // THREAD if (fmt == nil) fmt = [[self alloc] init]; return fmt; @@ -33,20 +34,24 @@ + (id)sharedMailSizeFormatter { /* formatting */ -- (NSString *)stringForSize:(unsigned int)size { +- (NSString *) stringForSize: (unsigned int) size +{ char buf[128]; - - if (size < 1024) - sprintf(buf, "%d", size); - else if (size < 1024 * 1024) - sprintf(buf, "%.1fK", ((double)size / 1024)); + + if (size > 1024*1024) + sprintf(buf, "%.1f MiB", ((double)size / 1024 / 1024)); + else if (size > 1024*100) + sprintf(buf, "%d KiB", (size / 1024)); + else if (size > 1024) + sprintf(buf, "%.1f KiB", ((double)size / 1024)); else - sprintf(buf, "%.1fM", ((double)size / 1024 / 1024)); + sprintf(buf, "%d B", size); return [NSString stringWithCString:buf]; } -- (NSString *)stringForObjectValue:(id)_object { +- (NSString *) stringForObjectValue: (id) _object +{ return [self stringForSize:[_object unsignedIntValue]]; } diff --git a/UI/MailerUI/UIxMailListActions.h b/UI/MailerUI/UIxMailListActions.h index bd80c73579..26a9177784 100644 --- a/UI/MailerUI/UIxMailListActions.h +++ b/UI/MailerUI/UIxMailListActions.h @@ -27,6 +27,7 @@ @class NSDictionary; @class EOQualifier; @class SOGoDateFormatter; +@class UIxMailSizeFormatter; @interface UIxMailListActions : WODirectAction { @@ -35,6 +36,7 @@ id message; SOGoDateFormatter *dateFormatter; NSTimeZone *userTimeZone; + UIxMailSizeFormatter *sizeFormatter; BOOL sortByThread; int folderType; int specificMessageNumber; diff --git a/UI/MailerUI/UIxMailListActions.m b/UI/MailerUI/UIxMailListActions.m index 90acfd53e7..33585e932c 100644 --- a/UI/MailerUI/UIxMailListActions.m +++ b/UI/MailerUI/UIxMailListActions.m @@ -60,6 +60,7 @@ #import #import +#import #import "WOContext+UIxMailer.h" #import "UIxMailFormatter.h" @@ -120,20 +121,9 @@ - (NSString *) messageDate return [dateFormatter formattedDateAndTime: messageDate]; } -- (NSString *) messageSize +- (UIxMailSizeFormatter *) sizeFormatter { - NSString *rc; - int size; - - size = [[message valueForKey: @"size"] intValue]; - if (size > 1024*1024) - rc = [NSString stringWithFormat: @"%.1f MB", (float) size/1024/1024]; - else if (size > 1024*100) - rc = [NSString stringWithFormat: @"%d KB", size/1024]; - else - rc = [NSString stringWithFormat: @"%.1f KB", (float) size/1024]; - - return rc; + return [UIxMailSizeFormatter sharedMailSizeFormatter]; } // @@ -806,7 +796,7 @@ - (NSArray *) getHeadersForUIDs: (NSArray *) uids [msg addObject: msgDate]; // Size - [msg addObject: [self messageSize]]; + [msg addObject: [[self sizeFormatter] stringForObjectValue: [message objectForKey: @"size"]]]; // rowClasses [msg addObject: [self messageRowStyleClass]]; diff --git a/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox b/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox index 1e7368086a..e566552c98 100644 --- a/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox +++ b/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox @@ -14,7 +14,7 @@
() + /> ()
-
- + -
- -
    -
  • -
-
:
-
: -
-
-
+
+ : + +
+
+
    +
  • +
  • + () +
  • +
+
+
-
+ + diff --git a/UI/WebServerResources/UIxMailEditor.css b/UI/WebServerResources/UIxMailEditor.css index 400c9ff9d3..019401d08b 100644 --- a/UI/WebServerResources/UIxMailEditor.css +++ b/UI/WebServerResources/UIxMailEditor.css @@ -104,24 +104,6 @@ div#headerArea div.addressList overflow: auto; overflow-x: hidden; } -div#attachmentsArea -{ display: none; - float: right; - width: 200px; - padding: 2px 5px 0; - margin: auto; - border-left: 1px solid #888; } - -hr.fieldSeparator -{ background-color: #848284; - border: 0; - clear: both; - color: #848284; - height: 1px; - margin: 0px; - padding: 0px; - width: 100%; } - input.currentAttachment { position: fixed; top: 1em; @@ -131,30 +113,42 @@ input.attachment { position: absolute; left: -1000px; } -div#compose_attachments_list -{ background-color: #ffffff; - margin-left: 0px; - padding: 2px; - border-bottom: 1px solid #fff; - border-right: 1px solid #fff; - border-top: 2px solid #222; - border-left: 2px solid #222; - -moz-border-top-colors: #9c9a94 #000 transparent; - -moz-border-left-colors: #9c9a94 #000 transparent; } +#dropZone +{ position: absolute; + background: #000 url('upload_document.png') no-repeat center center; + opacity: 0.6; + border: 4px dashed #fff; + left: 0px; + right: 0px; + top: 0px; + bottom: 0px; + z-index: 999; } + +#dropZone div +{ position: absolute; + color: #fff; + font-size: 18px; + height: 100px; + width: 300px; + margin: 60px 0 0 -150px; + left: 50%; + top: 50%; + text-align: center; +} + +#fileupload { + margin-top: 5px; + clear: both; +} + +.button.fileinput-button +{ display: inline-block; + float: none; } UL#attachments { cursor: default; margin: 0px; padding: 0px; - height: 100%; - border-bottom: 1px solid #eee; - border-right: 1px solid #eee; - border-top: 1px solid #222; - border-left: 1px solid #222; - background-color: #CCDDEC; - background-image: url("input_bg.gif"); - -moz-border-top-colors: #9c9a94 #000 transparent; - -moz-border-left-colors: #9c9a94 #000 transparent; list-style-type: none; list-style-image: none; overflow: auto; @@ -163,11 +157,44 @@ UL#attachments -khtml-user-select: none; } UL#attachments LI +{ float: left; } + +UL#attachments LI[data-filename] { white-space: nowrap; - padding-bottom: 1px; } + line-height: 18px; + margin: 3px 6px; } + +UL#attachments LI[data-filename] SPAN +{ margin-left: 5px; } + +UL#attachments LI[data-filename] A, +UL#attachments LI[data-filename] SPAN +{ padding-left: 2px; + vertical-align: top; } UL#attachments LI IMG -{ vertical-align: bottom; } +{ vertical-align: top; } + +UL#attachments .icon-attachment +{ background: url('attachment.png') no-repeat top left; + display: inline-block; + width: 16px; + height: 16px; } +UL#attachments .progress0 .icon-attachment +{ background-position: 0px 0px; } +UL#attachments .progress1 .icon-attachment +{ background-position: -16px 0px; } +UL#attachments .progress2 .icon-attachment +{ background-position: -32px 0px; } +UL#attachments .progress3 .icon-attachment +{ background-position: -48px 0px; } +UL#attachments .progress4 .icon-attachment +{ background-position: -64px 0px; } +UL#attachments .progressDone .icon-attachment +{ background-position: -80px 0px; } +UL#attachments .progressDone .icon-attachment:hover +{ background-position: -96px 0px; + cursor: pointer; } #pageContent TEXTAREA { width: 99%; } @@ -176,6 +203,9 @@ TEXTAREA#text { display: none; background: #fff; } +#cke_text +{ clear: both; } + /* Contacts search pane */ DIV#contactsSearch diff --git a/UI/WebServerResources/UIxMailEditor.js b/UI/WebServerResources/UIxMailEditor.js index a41448fcac..24fc7c568b 100644 --- a/UI/WebServerResources/UIxMailEditor.js +++ b/UI/WebServerResources/UIxMailEditor.js @@ -134,13 +134,10 @@ function onValidateDone(onSuccess) { var safetyNet = createElement("div", "javascriptSafetyNet"); $('pageContent').insert({top: safetyNet}); - var input = currentAttachmentInput(); - if (input) - input.parentNode.removeChild(input); - - var toolbar = document.getElementById("toolbar"); - if (!document.busyAnim) + if (!document.busyAnim) { + var toolbar = document.getElementById("toolbar"); document.busyAnim = startAnimation(toolbar); + } var lastRow = $("lastRow"); lastRow.down("select").name = "popup_last"; @@ -149,8 +146,6 @@ function onValidateDone(onSuccess) { document.pageform.action = "send"; - AIM.submit($(document.pageform), {'onComplete' : onPostComplete}); - if (typeof onSuccess == 'function') onSuccess(); @@ -159,7 +154,8 @@ function onValidateDone(onSuccess) { return true; } -function onPostComplete(response) { +function onPostComplete(http) { + var response = http.responseText; if (response && response.length > 0) { var jsonResponse = response.evalJSON(); if (jsonResponse["status"] == "success") { @@ -192,93 +188,67 @@ function onPostComplete(response) { function clickedEditorSend() { onValidate(function() { - document.pageform.submit(); + triggerAjaxRequest(document.pageform.action, + onPostComplete, + null, + Form.serialize(document.pageform), // excludes the file input + { "Content-type": "application/x-www-form-urlencoded" }); }); return false; } -function currentAttachmentInput() { - var input = null; - - var inputs = $("attachmentsArea").getElementsByTagName("input"); - var i = 0; - while (!input && i < inputs.length) - if ($(inputs[i]).hasClassName("currentAttachment")) - input = inputs[i]; - else - i++; - - return input; -} - -function clickedEditorAttach() { - var input = currentAttachmentInput(); - if (!input) { - var area = $("attachmentsArea"); - - if (!area.style.display) { - area.setStyle({ display: "block" }); - onWindowResize(null); - } - var inputs = area.getElementsByTagName("input"); - var attachmentName = "attachment" + attachmentCount; - var newAttachment = createElement("input", attachmentName, - "currentAttachment", null, - { type: "file", - name: attachmentName }, - area); - attachmentCount++; - newAttachment.observe("change", - onAttachmentChange.bindAsEventListener(newAttachment)); - } - - return false; -} - -function onAttachmentChange(event) { - if (this.value == "") - this.parentNode.removeChild(this); - else { - this.addClassName("attachment"); - this.removeClassName("currentAttachment"); - var list = $("attachments"); - createAttachment(this, list); - clickedEditorAttach(null); +function formatBytes(bytes, si) { + var thresh = si ? 1000 : 1024; + if (bytes < thresh) return bytes + ' B'; + var units = si ? ['KiB','MiB','GiB'] : ['KB','MB','GB']; + var u = -1; + do { + bytes /= thresh; + ++u; + } while (bytes >= thresh); + return bytes.toFixed(1) + ' ' + units[u]; +} + +function createAttachment(file) { + var list = $('attachments'); + var attachment; + if (list.select('[data-filename="'+file.name+'"]').length == 0) { + // File is not already uploaded + var attachment = createElement('li', null, ['muted progress0'], null, { 'data-filename': file.name }, list); + attachment.appendChild(new Element('i', { 'class': 'icon-attachment' })); + var a = createElement('a', null, null, null, {'href': '#', 'target': '_new' }, attachment); + + a.appendChild(document.createTextNode(file.name)); + if (file.size) + attachment.appendChild(new Element('span', { 'class': 'muted' }).update('(' + formatBytes(file.size, true) + ')')); } -} -function createAttachment(node, list) { - var attachment = createElement("li", null, null, { node: node }, null, list); - createElement("img", null, null, { src: ResourcesURL + "/attachment.gif" }, - null, attachment); - - var filename = node.value; - var separator; - if (navigator.appVersion.indexOf("Windows") > -1) - separator = "\\"; - else - separator = "/"; - var fileArray = filename.split(separator); - var attachmentName = document.createTextNode(fileArray[fileArray.length-1]); - attachment.appendChild(attachmentName); - attachment.writeAttribute("title", fileArray[fileArray.length-1]); + return attachment; } function clickedEditorSave() { - var input = currentAttachmentInput(); - if (input) - input.parentNode.removeChild(input); - var lastRow = $("lastRow"); lastRow.down("select").name = "popup_last"; window.shouldPreserve = true; document.pageform.action = "save"; - document.pageform.submit(); - if (window.opener && window.opener.open && !window.opener.closed) - window.opener.refreshFolderByType('draft'); + triggerAjaxRequest(document.pageform.action, function (http) { + if (http.readyState == 4) { + if (http.status == 200) { + if (window.opener && window.opener.open && !window.opener.closed) + window.opener.refreshFolderByType('draft'); + } + else { + var response = http.responseText.evalJSON(true); + showAlertDialog("Error while saving the draft: " + response.textStatus); + } + } + }, + null, + Form.serialize(document.pageform), // excludes the file input + { "Content-type": "application/x-www-form-urlencoded" }); return false; } @@ -301,10 +271,6 @@ function onTextFocus(event) { } MailEditor.textFirstFocus = false; } - - var input = currentAttachmentInput(); - if (input) - input.parentNode.removeChild(input); } function onTextKeyDown(event) { @@ -397,7 +363,6 @@ function onHTMLFocus(event) { function initAddresses() { var addressList = $("addressList"); - var i = 1; addressList.select("input.textField").each(function (input) { if (!input.readAttribute("readonly")) { input.addInterface(SOGoAutoCompletionInterface); @@ -424,23 +389,84 @@ function configureDragHandle() { } } +function configureAttachments() { + var list = $("attachments"); + + if (!list) return; + + list.on('click', 'a', function (event, element) { + if (!element.up('li').hasClassName('progressDone')) + return false; + }); + + list.on('click', 'i.icon-attachment', function (event, element) { + var item = element.up('li'); + if (item.hasClassName('progressDone')) { + var filename = item.readAttribute('data-filename'); + var url = "" + window.location; + var parts = url.split("/"); + parts[parts.length-1] = "deleteAttachment?filename=" + encodeURIComponent(filename); + url = parts.join("/"); + triggerAjaxRequest(url, attachmentDeleteCallback, item); + } + }); + + var dropzone = jQuery('#dropZone'); + jQuery('#fileUpload').fileupload({ + // With singleFileUploads option enabled, the 'add' and 'done' (or 'fail') callbacks + // are called once for each file in the selection for XHR file uploads + singleFileUploads: true, + dataType: 'json', + add: function (e, data) { + var file = data.files[0]; + var attachment = createAttachment(file); + if (attachment) { + file.attachment = attachment; + data.submit(); + } + if (dropzone.is(":visible")) + dropzone.fadeOut('fast'); + }, + done: function (e, data) { + var attachment = data.files[0].attachment; + var attrs = data.result[data.result.length-1]; + attachment.className = 'progressDone'; + attachment.down('a').setAttribute('href', attrs.url); + if (window.opener && window.opener.open && !window.opener.closed) + window.opener.refreshFolderByType('draft'); + }, + fail: function (e, data) { + var attachment = data.files[0].attachment; + var filename = data.files[0].name; + var response = data.xhr().response.evalJSON(); + showAlertDialog("Error while uploading the file " + filename + ": " + response.textStatus); + attachment.remove(); + }, + dragover: function (e, data) { + if (!dropzone.is(":visible")) + dropzone.show(); + }, + progress: function (e, data) { + var progress = parseInt(data.loaded / data.total * 4, 10); + var attachment = data.files[0].attachment; + attachment.className = 'muted progress' + progress; + } + }); + + dropzone.on('dragleave', function (e) { + dropzone.fadeOut('fast'); + }); +} + function initMailEditor() { if (composeMode != "html" && $("text")) $("text").style.display = "block"; - var list = $("attachments"); - if (!list) return; - list.multiselect = true; - list.on("click", onRowClick); - list.attachMenu("attachmentsMenu"); - var elements = $(list).childNodesWithTag("li"); - if (elements.length > 0) - $("attachmentsArea").setStyle({ display: "block" }); - - var textarea = $("text"); + configureAttachments(); initAddresses(); + var textarea = $("text"); var focusField = textarea; if (!mailIsReply) { focusField = $("addr_0"); @@ -546,10 +572,6 @@ function onMenuCheckReturnReceipt(event) { function getMenus() { return { - "attachmentsMenu": [ null, onRemoveAttachments, - onSelectAllAttachments, - "-", - clickedEditorAttach, null], "optionsMenu": [ onMenuCheckReturnReceipt, "-", "priorityMenu" ], @@ -561,27 +583,6 @@ function getMenus() { }; } -function onRemoveAttachments() { - var list = $("attachments"); - var nodes = list.getSelectedNodes(); - for (var i = nodes.length-1; i > -1; i--) { - var input = $(nodes[i]).node; - if (input) { - input.parentNode.removeChild(input); - list.removeChild(nodes[i]); - } - else { - var filename = nodes[i].title; - var url = "" + window.location; - var parts = url.split("/"); - parts[parts.length-1] = "deleteAttachment?filename=" + encodeURIComponent(filename); - url = parts.join("/"); - triggerAjaxRequest(url, attachmentDeleteCallback, - nodes[i]); - } - } -} - function attachmentDeleteCallback(http) { if (http.readyState == 4) { if (isHttpStatus204(http.status)) { @@ -623,10 +624,6 @@ function onMenuSetPriority(event) { priorityInput.value = priority; } -function onSelectAllAttachments() { - $("attachments").selectAll(); -} - function onSelectOptions(event) { if (event.button == 0 || (isWebKit() && event.button == 1)) { var node = getTarget(event); @@ -645,39 +642,21 @@ function onWindowResize(event) { var headerarea = $("headerArea"); var totalwidth = $("rightPanel").getWidth(); - var attachmentsarea = $("attachmentsArea"); - var attachmentswidth = 0; var subjectfield = headerarea.down("div#subjectRow span.headerField"); var subjectinput = headerarea.down("div#subjectRow input.textField"); - if (attachmentsarea.style.display) { - // Resize attachments list - attachmentswidth = attachmentsarea.getWidth(); - fromfield = $(document).getElementsByClassName('headerField', headerarea)[0]; - var height = headerarea.getHeight() - fromfield.getHeight() - subjectfield.getHeight() - 10; - if (Prototype.Browser.IE) - $("attachments").setStyle({ height: (height - 13) + 'px' }); - else - $("attachments").setStyle({ height: height + 'px' }); - } // Resize subject field subjectinput.setStyle({ width: (totalwidth - $(subjectfield).getWidth() - - attachmentswidth - 17) + 'px' }); // Resize from field $("fromSelect").setStyle({ width: (totalwidth - $("fromField").getWidth() - - attachmentswidth - 15) + 'px' }); // Resize address fields - var addresslist = $('addressList'); - addresslist.setStyle({ width: (totalwidth - attachmentswidth - 10) + 'px' }); - - // Set textarea position - var hr = headerarea.select("hr").first(); - textarea.setStyle({ 'top': hr.offsetTop + 'px' }); +// var addresslist = $('addressList'); +// addresslist.setStyle({ width: (totalwidth - 10) + 'px' }); // Resize the textarea (message content) var offsetTop = $('rightPanel').offsetTop + headerarea.getHeight(); diff --git a/UI/WebServerResources/attachment.png b/UI/WebServerResources/attachment.png new file mode 100644 index 0000000000000000000000000000000000000000..85f43eacd12b08fe2db1efc203a85e5c0f5ff1e7 GIT binary patch literal 1806 zcmV+p2l4ocP)yG!O|Wf+7hhN?2+X1q>015foAA5*MN-Z6N__F-H6Y zl!yx$qA?M|Vic4R5sECbv<8F%5nS6sTl!x8eXnz$^KNh7YbgXwnDk`c%sFS4^WAf1 z&NR-sTCOMy%$ql_Ph4Ew)6g&$*553yq`toX8)(^r1q%+^3y$+!J%T;xzZV)~_+L_Q zX3!JO*{!AjAoA7FSI`#pPySEzyRpup&?vLsb+OjJYURoLSbLi^xtp)OUA^4g+&S3p zP3+XJ30%&>dpSQpf04_N7!c*QFtVX3P&u^E2==A!4y}X=7^Jp|30(cj@Q*=9ApK4> zqHXSbq*{dlu41Y!}(1$@L4stVg>z!Jy*=1NEUgVCrMXe?|4Iv!|q!;|JpW z`SX*itE)f9F8W|<%~dr5qJ{PWCJURPH) zX5qqxC4Os|J9lpX#Kc5J!ydt4a8Y4l;fpqauflj38i{fL^cw&`ZlHey^aV1ndjNQi z_GoAnyuZXlUcmhXb@7asi%fw>U-Lg?=D!^JIn13O13Z`AX#E0k^q7tS255j6FttF$ zgPdzSq&RI7APt4b z@1RE*=!a;VK=w}fpFl(0GtKCKOWy?gcDwpf06c|ECbFvS`LpQTaT)Y==Iw&)ND<8p z5$l(r030zgH3Xg=J|n@bcXs_);RP_{eb{PgK|#T+tgNhd>FMc5X`cf45gMCNx(T~< zEiEnWwR-jHb2&LV#k6P23ta#wAveR^d}4ltx)CAtF7m4k0FP5oqOD6yxEKKU(9zjv zP=U3^=xct3)!{z+ejY3_ul{uOb@8(2*SvcnZv^n_PoN{TmKK!o{L&GCLx)}82s}58 zHk^m`&c3}>5dh}pjF0L2y=cHo(9-%#)CxZUFe0`WM=H9s|m7-$Pyib>8U%c+Tki&L72trS=y3IydCO z(mw|&4B8hn&HFXf$!A}-{tEb0o3nRICamuQIB4*74IUT{qsAMp^YHMYvk?Gt^VEed zsV&6~o1ArBIqNpjf18pdCu8l~!*2v&=70`> z7j*dZ0BPC)dGtv21p!!DSvkD8xcIaI@EY)|z+RPh2%Sd9{mt0~hTVwVa^ycW0O;m6 zj;XtPuJX?fY!y7y#NKv{fOHd0M5fH7kVn%}8nRKEh=fL~|2$+b2)d zL;%Qnc9?yqGsF<`yKPN{Q1~UBfddsn@mggBifrK!DlgF`WITiE%xSW)**jo<2Hk^f zD6ywcIn#P*EPZ7$^zVW%j~#?;D6uz}psoDWB}kWvP-(#>NSBbEP}gX4TRiV2s#W?L zR{-8}Yx~Gc3}6P_@M-Gb&(wMWbT1@DoPo2ObBS@&4$jRYJB?5pAP;x|BYH!TYtR&a z=v8GSGJa`lH^20rCdTzcb21fNq?A^DjeJFF(W4 zE-?L|n<0hHSo(U(dki{az@A3!KE*BN_hK)2?q&g8AHfUIOl{I*1U-daGJOG<+ObWf z2b!m}hBL9jD^U`2; zwu}(7_~Gh;1)`Q^phw9Z=').prop('disabled')); + + // The FileReader API is not actually used, but works as feature detection, + // as some Safari versions (5?) support XHR file uploads via the FormData API, + // but not non-multipart XHR file uploads. + // window.XMLHttpRequestUpload is not available on IE10, so we check for + // window.ProgressEvent instead to detect XHR2 file upload capability: + $.support.xhrFileUpload = !!(window.ProgressEvent && window.FileReader); + $.support.xhrFormDataFileUpload = !!window.FormData; + + // Detect support for Blob slicing (required for chunked uploads): + $.support.blobSlice = window.Blob && (Blob.prototype.slice || + Blob.prototype.webkitSlice || Blob.prototype.mozSlice); + + // The fileupload widget listens for change events on file input fields defined + // via fileInput setting and paste or drop events of the given dropZone. + // In addition to the default jQuery Widget methods, the fileupload widget + // exposes the "add" and "send" methods, to add or directly send files using + // the fileupload API. + // By default, files added via file input selection, paste, drag & drop or + // "add" method are uploaded immediately, but it is possible to override + // the "add" callback option to queue file uploads. + $.widget('blueimp.fileupload', { + + options: { + // The drop target element(s), by the default the complete document. + // Set to null to disable drag & drop support: + dropZone: $(document), + // The paste target element(s), by the default the complete document. + // Set to null to disable paste support: + pasteZone: $(document), + // The file input field(s), that are listened to for change events. + // If undefined, it is set to the file input fields inside + // of the widget element on plugin initialization. + // Set to null to disable the change listener. + fileInput: undefined, + // By default, the file input field is replaced with a clone after + // each input field change event. This is required for iframe transport + // queues and allows change events to be fired for the same file + // selection, but can be disabled by setting the following option to false: + replaceFileInput: true, + // The parameter name for the file form data (the request argument name). + // If undefined or empty, the name property of the file input field is + // used, or "files[]" if the file input name property is also empty, + // can be a string or an array of strings: + paramName: undefined, + // By default, each file of a selection is uploaded using an individual + // request for XHR type uploads. Set to false to upload file + // selections in one request each: + singleFileUploads: true, + // To limit the number of files uploaded with one XHR request, + // set the following option to an integer greater than 0: + limitMultiFileUploads: undefined, + // The following option limits the number of files uploaded with one + // XHR request to keep the request size under or equal to the defined + // limit in bytes: + limitMultiFileUploadSize: undefined, + // Multipart file uploads add a number of bytes to each uploaded file, + // therefore the following option adds an overhead for each file used + // in the limitMultiFileUploadSize configuration: + limitMultiFileUploadSizeOverhead: 512, + // Set the following option to true to issue all file upload requests + // in a sequential order: + sequentialUploads: false, + // To limit the number of concurrent uploads, + // set the following option to an integer greater than 0: + limitConcurrentUploads: undefined, + // Set the following option to true to force iframe transport uploads: + forceIframeTransport: false, + // Set the following option to the location of a redirect url on the + // origin server, for cross-domain iframe transport uploads: + redirect: undefined, + // The parameter name for the redirect url, sent as part of the form + // data and set to 'redirect' if this option is empty: + redirectParamName: undefined, + // Set the following option to the location of a postMessage window, + // to enable postMessage transport uploads: + postMessage: undefined, + // By default, XHR file uploads are sent as multipart/form-data. + // The iframe transport is always using multipart/form-data. + // Set to false to enable non-multipart XHR uploads: + multipart: true, + // To upload large files in smaller chunks, set the following option + // to a preferred maximum chunk size. If set to 0, null or undefined, + // or the browser does not support the required Blob API, files will + // be uploaded as a whole. + maxChunkSize: undefined, + // When a non-multipart upload or a chunked multipart upload has been + // aborted, this option can be used to resume the upload by setting + // it to the size of the already uploaded bytes. This option is most + // useful when modifying the options object inside of the "add" or + // "send" callbacks, as the options are cloned for each file upload. + uploadedBytes: undefined, + // By default, failed (abort or error) file uploads are removed from the + // global progress calculation. Set the following option to false to + // prevent recalculating the global progress data: + recalculateProgress: true, + // Interval in milliseconds to calculate and trigger progress events: + progressInterval: 100, + // Interval in milliseconds to calculate progress bitrate: + bitrateInterval: 500, + // By default, uploads are started automatically when adding files: + autoUpload: true, + + // Error and info messages: + messages: { + uploadedBytes: 'Uploaded bytes exceed file size' + }, + + // Translation function, gets the message key to be translated + // and an object with context specific data as arguments: + i18n: function (message, context) { + message = this.messages[message] || message.toString(); + if (context) { + $.each(context, function (key, value) { + message = message.replace('{' + key + '}', value); + }); + } + return message; + }, + + // Additional form data to be sent along with the file uploads can be set + // using this option, which accepts an array of objects with name and + // value properties, a function returning such an array, a FormData + // object (for XHR file uploads), or a simple object. + // The form of the first fileInput is given as parameter to the function: + formData: function (form) { + return form.serializeArray(); + }, + + // The add callback is invoked as soon as files are added to the fileupload + // widget (via file input selection, drag & drop, paste or add API call). + // If the singleFileUploads option is enabled, this callback will be + // called once for each file in the selection for XHR file uploads, else + // once for each file selection. + // + // The upload starts when the submit method is invoked on the data parameter. + // The data object contains a files property holding the added files + // and allows you to override plugin options as well as define ajax settings. + // + // Listeners for this callback can also be bound the following way: + // .bind('fileuploadadd', func); + // + // data.submit() returns a Promise object and allows to attach additional + // handlers using jQuery's Deferred callbacks: + // data.submit().done(func).fail(func).always(func); + add: function (e, data) { + if (e.isDefaultPrevented()) { + return false; + } + if (data.autoUpload || (data.autoUpload !== false && + $(this).fileupload('option', 'autoUpload'))) { + data.process().done(function () { + data.submit(); + }); + } + }, + + // Other callbacks: + + // Callback for the submit event of each file upload: + // submit: function (e, data) {}, // .bind('fileuploadsubmit', func); + + // Callback for the start of each file upload request: + // send: function (e, data) {}, // .bind('fileuploadsend', func); + + // Callback for successful uploads: + // done: function (e, data) {}, // .bind('fileuploaddone', func); + + // Callback for failed (abort or error) uploads: + // fail: function (e, data) {}, // .bind('fileuploadfail', func); + + // Callback for completed (success, abort or error) requests: + // always: function (e, data) {}, // .bind('fileuploadalways', func); + + // Callback for upload progress events: + // progress: function (e, data) {}, // .bind('fileuploadprogress', func); + + // Callback for global upload progress events: + // progressall: function (e, data) {}, // .bind('fileuploadprogressall', func); + + // Callback for uploads start, equivalent to the global ajaxStart event: + // start: function (e) {}, // .bind('fileuploadstart', func); + + // Callback for uploads stop, equivalent to the global ajaxStop event: + // stop: function (e) {}, // .bind('fileuploadstop', func); + + // Callback for change events of the fileInput(s): + // change: function (e, data) {}, // .bind('fileuploadchange', func); + + // Callback for paste events to the pasteZone(s): + // paste: function (e, data) {}, // .bind('fileuploadpaste', func); + + // Callback for drop events of the dropZone(s): + // drop: function (e, data) {}, // .bind('fileuploaddrop', func); + + // Callback for dragover events of the dropZone(s): + // dragover: function (e) {}, // .bind('fileuploaddragover', func); + + // Callback for the start of each chunk upload request: + // chunksend: function (e, data) {}, // .bind('fileuploadchunksend', func); + + // Callback for successful chunk uploads: + // chunkdone: function (e, data) {}, // .bind('fileuploadchunkdone', func); + + // Callback for failed (abort or error) chunk uploads: + // chunkfail: function (e, data) {}, // .bind('fileuploadchunkfail', func); + + // Callback for completed (success, abort or error) chunk upload requests: + // chunkalways: function (e, data) {}, // .bind('fileuploadchunkalways', func); + + // The plugin options are used as settings object for the ajax calls. + // The following are jQuery ajax settings required for the file uploads: + processData: false, + contentType: false, + cache: false + }, + + // A list of options that require reinitializing event listeners and/or + // special initialization code: + _specialOptions: [ + 'fileInput', + 'dropZone', + 'pasteZone', + 'multipart', + 'forceIframeTransport' + ], + + _blobSlice: $.support.blobSlice && function () { + var slice = this.slice || this.webkitSlice || this.mozSlice; + return slice.apply(this, arguments); + }, + + _BitrateTimer: function () { + this.timestamp = ((Date.now) ? Date.now() : (new Date()).getTime()); + this.loaded = 0; + this.bitrate = 0; + this.getBitrate = function (now, loaded, interval) { + var timeDiff = now - this.timestamp; + if (!this.bitrate || !interval || timeDiff > interval) { + this.bitrate = (loaded - this.loaded) * (1000 / timeDiff) * 8; + this.loaded = loaded; + this.timestamp = now; + } + return this.bitrate; + }; + }, + + _isXHRUpload: function (options) { + return !options.forceIframeTransport && + ((!options.multipart && $.support.xhrFileUpload) || + $.support.xhrFormDataFileUpload); + }, + + _getFormData: function (options) { + var formData; + if ($.type(options.formData) === 'function') { + return options.formData(options.form); + } + if ($.isArray(options.formData)) { + return options.formData; + } + if ($.type(options.formData) === 'object') { + formData = []; + $.each(options.formData, function (name, value) { + formData.push({name: name, value: value}); + }); + return formData; + } + return []; + }, + + _getTotal: function (files) { + var total = 0; + $.each(files, function (index, file) { + total += file.size || 1; + }); + return total; + }, + + _initProgressObject: function (obj) { + var progress = { + loaded: 0, + total: 0, + bitrate: 0 + }; + if (obj._progress) { + $.extend(obj._progress, progress); + } else { + obj._progress = progress; + } + }, + + _initResponseObject: function (obj) { + var prop; + if (obj._response) { + for (prop in obj._response) { + if (obj._response.hasOwnProperty(prop)) { + delete obj._response[prop]; + } + } + } else { + obj._response = {}; + } + }, + + _onProgress: function (e, data) { + if (e.lengthComputable) { + var now = ((Date.now) ? Date.now() : (new Date()).getTime()), + loaded; + if (data._time && data.progressInterval && + (now - data._time < data.progressInterval) && + e.loaded !== e.total) { + return; + } + data._time = now; + loaded = Math.floor( + e.loaded / e.total * (data.chunkSize || data._progress.total) + ) + (data.uploadedBytes || 0); + // Add the difference from the previously loaded state + // to the global loaded counter: + this._progress.loaded += (loaded - data._progress.loaded); + this._progress.bitrate = this._bitrateTimer.getBitrate( + now, + this._progress.loaded, + data.bitrateInterval + ); + data._progress.loaded = data.loaded = loaded; + data._progress.bitrate = data.bitrate = data._bitrateTimer.getBitrate( + now, + loaded, + data.bitrateInterval + ); + // Trigger a custom progress event with a total data property set + // to the file size(s) of the current upload and a loaded data + // property calculated accordingly: + this._trigger( + 'progress', + $.Event('progress', {delegatedEvent: e}), + data + ); + // Trigger a global progress event for all current file uploads, + // including ajax calls queued for sequential file uploads: + this._trigger( + 'progressall', + $.Event('progressall', {delegatedEvent: e}), + this._progress + ); + } + }, + + _initProgressListener: function (options) { + var that = this, + xhr = options.xhr ? options.xhr() : $.ajaxSettings.xhr(); + // Accesss to the native XHR object is required to add event listeners + // for the upload progress event: + if (xhr.upload) { + $(xhr.upload).bind('progress', function (e) { + var oe = e.originalEvent; + // Make sure the progress event properties get copied over: + e.lengthComputable = oe.lengthComputable; + e.loaded = oe.loaded; + e.total = oe.total; + that._onProgress(e, options); + }); + options.xhr = function () { + return xhr; + }; + } + }, + + _isInstanceOf: function (type, obj) { + // Cross-frame instanceof check + return Object.prototype.toString.call(obj) === '[object ' + type + ']'; + }, + + _initXHRData: function (options) { + var that = this, + formData, + file = options.files[0], + // Ignore non-multipart setting if not supported: + multipart = options.multipart || !$.support.xhrFileUpload, + paramName = options.paramName[0]; + options.headers = $.extend({}, options.headers); + if (options.contentRange) { + options.headers['Content-Range'] = options.contentRange; + } + if (!multipart || options.blob || !this._isInstanceOf('File', file)) { + options.headers['Content-Disposition'] = 'attachment; filename="' + + encodeURI(file.name) + '"'; + } + if (!multipart) { + options.contentType = file.type; + options.data = options.blob || file; + } else if ($.support.xhrFormDataFileUpload) { + if (options.postMessage) { + // window.postMessage does not allow sending FormData + // objects, so we just add the File/Blob objects to + // the formData array and let the postMessage window + // create the FormData object out of this array: + formData = this._getFormData(options); + if (options.blob) { + formData.push({ + name: paramName, + value: options.blob + }); + } else { + $.each(options.files, function (index, file) { + formData.push({ + name: options.paramName[index] || paramName, + value: file + }); + }); + } + } else { + if (that._isInstanceOf('FormData', options.formData)) { + formData = options.formData; + } else { + formData = new FormData(); + $.each(this._getFormData(options), function (index, field) { + formData.append(field.name, field.value); + }); + } + if (options.blob) { + formData.append(paramName, options.blob, file.name); + } else { + $.each(options.files, function (index, file) { + // This check allows the tests to run with + // dummy objects: + if (that._isInstanceOf('File', file) || + that._isInstanceOf('Blob', file)) { + formData.append( + options.paramName[index] || paramName, + file, + file.uploadName || file.name + ); + } + }); + } + } + options.data = formData; + } + // Blob reference is not needed anymore, free memory: + options.blob = null; + }, + + _initIframeSettings: function (options) { + var targetHost = $('').prop('href', options.url).prop('host'); + // Setting the dataType to iframe enables the iframe transport: + options.dataType = 'iframe ' + (options.dataType || ''); + // The iframe transport accepts a serialized array as form data: + options.formData = this._getFormData(options); + // Add redirect url to form data on cross-domain uploads: + if (options.redirect && targetHost && targetHost !== location.host) { + options.formData.push({ + name: options.redirectParamName || 'redirect', + value: options.redirect + }); + } + }, + + _initDataSettings: function (options) { + if (this._isXHRUpload(options)) { + if (!this._chunkedUpload(options, true)) { + if (!options.data) { + this._initXHRData(options); + } + this._initProgressListener(options); + } + if (options.postMessage) { + // Setting the dataType to postmessage enables the + // postMessage transport: + options.dataType = 'postmessage ' + (options.dataType || ''); + } + } else { + this._initIframeSettings(options); + } + }, + + _getParamName: function (options) { + var fileInput = $(options.fileInput), + paramName = options.paramName; + if (!paramName) { + paramName = []; + fileInput.each(function () { + var input = $(this), + name = input.prop('name') || 'files[]', + i = (input.prop('files') || [1]).length; + while (i) { + paramName.push(name); + i -= 1; + } + }); + if (!paramName.length) { + paramName = [fileInput.prop('name') || 'files[]']; + } + } else if (!$.isArray(paramName)) { + paramName = [paramName]; + } + return paramName; + }, + + _initFormSettings: function (options) { + // Retrieve missing options from the input field and the + // associated form, if available: + if (!options.form || !options.form.length) { + options.form = $(options.fileInput.prop('form')); + // If the given file input doesn't have an associated form, + // use the default widget file input's form: + if (!options.form.length) { + options.form = $(this.options.fileInput.prop('form')); + } + } + options.paramName = this._getParamName(options); + if (!options.url) { + options.url = options.form.prop('action') || location.href; + } + // The HTTP request method must be "POST" or "PUT": + options.type = (options.type || + ($.type(options.form.prop('method')) === 'string' && + options.form.prop('method')) || '' + ).toUpperCase(); + if (options.type !== 'POST' && options.type !== 'PUT' && + options.type !== 'PATCH') { + options.type = 'POST'; + } + if (!options.formAcceptCharset) { + options.formAcceptCharset = options.form.attr('accept-charset'); + } + }, + + _getAJAXSettings: function (data) { + var options = $.extend({}, this.options, data); + this._initFormSettings(options); + this._initDataSettings(options); + return options; + }, + + // jQuery 1.6 doesn't provide .state(), + // while jQuery 1.8+ removed .isRejected() and .isResolved(): + _getDeferredState: function (deferred) { + if (deferred.state) { + return deferred.state(); + } + if (deferred.isResolved()) { + return 'resolved'; + } + if (deferred.isRejected()) { + return 'rejected'; + } + return 'pending'; + }, + + // Maps jqXHR callbacks to the equivalent + // methods of the given Promise object: + _enhancePromise: function (promise) { + promise.success = promise.done; + promise.error = promise.fail; + promise.complete = promise.always; + return promise; + }, + + // Creates and returns a Promise object enhanced with + // the jqXHR methods abort, success, error and complete: + _getXHRPromise: function (resolveOrReject, context, args) { + var dfd = $.Deferred(), + promise = dfd.promise(); + context = context || this.options.context || promise; + if (resolveOrReject === true) { + dfd.resolveWith(context, args); + } else if (resolveOrReject === false) { + dfd.rejectWith(context, args); + } + promise.abort = dfd.promise; + return this._enhancePromise(promise); + }, + + // Adds convenience methods to the data callback argument: + _addConvenienceMethods: function (e, data) { + var that = this, + getPromise = function (args) { + return $.Deferred().resolveWith(that, args).promise(); + }; + data.process = function (resolveFunc, rejectFunc) { + if (resolveFunc || rejectFunc) { + data._processQueue = this._processQueue = + (this._processQueue || getPromise([this])).pipe( + function () { + if (data.errorThrown) { + return $.Deferred() + .rejectWith(that, [data]).promise(); + } + return getPromise(arguments); + } + ).pipe(resolveFunc, rejectFunc); + } + return this._processQueue || getPromise([this]); + }; + data.submit = function () { + if (this.state() !== 'pending') { + data.jqXHR = this.jqXHR = + (that._trigger( + 'submit', + $.Event('submit', {delegatedEvent: e}), + this + ) !== false) && that._onSend(e, this); + } + return this.jqXHR || that._getXHRPromise(); + }; + data.abort = function () { + if (this.jqXHR) { + return this.jqXHR.abort(); + } + this.errorThrown = 'abort'; + that._trigger('fail', null, this); + return that._getXHRPromise(false); + }; + data.state = function () { + if (this.jqXHR) { + return that._getDeferredState(this.jqXHR); + } + if (this._processQueue) { + return that._getDeferredState(this._processQueue); + } + }; + data.processing = function () { + return !this.jqXHR && this._processQueue && that + ._getDeferredState(this._processQueue) === 'pending'; + }; + data.progress = function () { + return this._progress; + }; + data.response = function () { + return this._response; + }; + }, + + // Parses the Range header from the server response + // and returns the uploaded bytes: + _getUploadedBytes: function (jqXHR) { + var range = jqXHR.getResponseHeader('Range'), + parts = range && range.split('-'), + upperBytesPos = parts && parts.length > 1 && + parseInt(parts[1], 10); + return upperBytesPos && upperBytesPos + 1; + }, + + // Uploads a file in multiple, sequential requests + // by splitting the file up in multiple blob chunks. + // If the second parameter is true, only tests if the file + // should be uploaded in chunks, but does not invoke any + // upload requests: + _chunkedUpload: function (options, testOnly) { + options.uploadedBytes = options.uploadedBytes || 0; + var that = this, + file = options.files[0], + fs = file.size, + ub = options.uploadedBytes, + mcs = options.maxChunkSize || fs, + slice = this._blobSlice, + dfd = $.Deferred(), + promise = dfd.promise(), + jqXHR, + upload; + if (!(this._isXHRUpload(options) && slice && (ub || mcs < fs)) || + options.data) { + return false; + } + if (testOnly) { + return true; + } + if (ub >= fs) { + file.error = options.i18n('uploadedBytes'); + return this._getXHRPromise( + false, + options.context, + [null, 'error', file.error] + ); + } + // The chunk upload method: + upload = function () { + // Clone the options object for each chunk upload: + var o = $.extend({}, options), + currentLoaded = o._progress.loaded; + o.blob = slice.call( + file, + ub, + ub + mcs, + file.type + ); + // Store the current chunk size, as the blob itself + // will be dereferenced after data processing: + o.chunkSize = o.blob.size; + // Expose the chunk bytes position range: + o.contentRange = 'bytes ' + ub + '-' + + (ub + o.chunkSize - 1) + '/' + fs; + // Process the upload data (the blob and potential form data): + that._initXHRData(o); + // Add progress listeners for this chunk upload: + that._initProgressListener(o); + jqXHR = ((that._trigger('chunksend', null, o) !== false && $.ajax(o)) || + that._getXHRPromise(false, o.context)) + .done(function (result, textStatus, jqXHR) { + ub = that._getUploadedBytes(jqXHR) || + (ub + o.chunkSize); + // Create a progress event if no final progress event + // with loaded equaling total has been triggered + // for this chunk: + if (currentLoaded + o.chunkSize - o._progress.loaded) { + that._onProgress($.Event('progress', { + lengthComputable: true, + loaded: ub - o.uploadedBytes, + total: ub - o.uploadedBytes + }), o); + } + options.uploadedBytes = o.uploadedBytes = ub; + o.result = result; + o.textStatus = textStatus; + o.jqXHR = jqXHR; + that._trigger('chunkdone', null, o); + that._trigger('chunkalways', null, o); + if (ub < fs) { + // File upload not yet complete, + // continue with the next chunk: + upload(); + } else { + dfd.resolveWith( + o.context, + [result, textStatus, jqXHR] + ); + } + }) + .fail(function (jqXHR, textStatus, errorThrown) { + o.jqXHR = jqXHR; + o.textStatus = textStatus; + o.errorThrown = errorThrown; + that._trigger('chunkfail', null, o); + that._trigger('chunkalways', null, o); + dfd.rejectWith( + o.context, + [jqXHR, textStatus, errorThrown] + ); + }); + }; + this._enhancePromise(promise); + promise.abort = function () { + return jqXHR.abort(); + }; + upload(); + return promise; + }, + + _beforeSend: function (e, data) { + if (this._active === 0) { + // the start callback is triggered when an upload starts + // and no other uploads are currently running, + // equivalent to the global ajaxStart event: + this._trigger('start'); + // Set timer for global bitrate progress calculation: + this._bitrateTimer = new this._BitrateTimer(); + // Reset the global progress values: + this._progress.loaded = this._progress.total = 0; + this._progress.bitrate = 0; + } + // Make sure the container objects for the .response() and + // .progress() methods on the data object are available + // and reset to their initial state: + this._initResponseObject(data); + this._initProgressObject(data); + data._progress.loaded = data.loaded = data.uploadedBytes || 0; + data._progress.total = data.total = this._getTotal(data.files) || 1; + data._progress.bitrate = data.bitrate = 0; + this._active += 1; + // Initialize the global progress values: + this._progress.loaded += data.loaded; + this._progress.total += data.total; + }, + + _onDone: function (result, textStatus, jqXHR, options) { + var total = options._progress.total, + response = options._response; + if (options._progress.loaded < total) { + // Create a progress event if no final progress event + // with loaded equaling total has been triggered: + this._onProgress($.Event('progress', { + lengthComputable: true, + loaded: total, + total: total + }), options); + } + response.result = options.result = result; + response.textStatus = options.textStatus = textStatus; + response.jqXHR = options.jqXHR = jqXHR; + this._trigger('done', null, options); + }, + + _onFail: function (jqXHR, textStatus, errorThrown, options) { + var response = options._response; + if (options.recalculateProgress) { + // Remove the failed (error or abort) file upload from + // the global progress calculation: + this._progress.loaded -= options._progress.loaded; + this._progress.total -= options._progress.total; + } + response.jqXHR = options.jqXHR = jqXHR; + response.textStatus = options.textStatus = textStatus; + response.errorThrown = options.errorThrown = errorThrown; + this._trigger('fail', null, options); + }, + + _onAlways: function (jqXHRorResult, textStatus, jqXHRorError, options) { + // jqXHRorResult, textStatus and jqXHRorError are added to the + // options object via done and fail callbacks + this._trigger('always', null, options); + }, + + _onSend: function (e, data) { + if (!data.submit) { + this._addConvenienceMethods(e, data); + } + var that = this, + jqXHR, + aborted, + slot, + pipe, + options = that._getAJAXSettings(data), + send = function () { + that._sending += 1; + // Set timer for bitrate progress calculation: + options._bitrateTimer = new that._BitrateTimer(); + jqXHR = jqXHR || ( + ((aborted || that._trigger( + 'send', + $.Event('send', {delegatedEvent: e}), + options + ) === false) && + that._getXHRPromise(false, options.context, aborted)) || + that._chunkedUpload(options) || $.ajax(options) + ).done(function (result, textStatus, jqXHR) { + that._onDone(result, textStatus, jqXHR, options); + }).fail(function (jqXHR, textStatus, errorThrown) { + that._onFail(jqXHR, textStatus, errorThrown, options); + }).always(function (jqXHRorResult, textStatus, jqXHRorError) { + that._onAlways( + jqXHRorResult, + textStatus, + jqXHRorError, + options + ); + that._sending -= 1; + that._active -= 1; + if (options.limitConcurrentUploads && + options.limitConcurrentUploads > that._sending) { + // Start the next queued upload, + // that has not been aborted: + var nextSlot = that._slots.shift(); + while (nextSlot) { + if (that._getDeferredState(nextSlot) === 'pending') { + nextSlot.resolve(); + break; + } + nextSlot = that._slots.shift(); + } + } + if (that._active === 0) { + // The stop callback is triggered when all uploads have + // been completed, equivalent to the global ajaxStop event: + that._trigger('stop'); + } + }); + return jqXHR; + }; + this._beforeSend(e, options); + if (this.options.sequentialUploads || + (this.options.limitConcurrentUploads && + this.options.limitConcurrentUploads <= this._sending)) { + if (this.options.limitConcurrentUploads > 1) { + slot = $.Deferred(); + this._slots.push(slot); + pipe = slot.pipe(send); + } else { + this._sequence = this._sequence.pipe(send, send); + pipe = this._sequence; + } + // Return the piped Promise object, enhanced with an abort method, + // which is delegated to the jqXHR object of the current upload, + // and jqXHR callbacks mapped to the equivalent Promise methods: + pipe.abort = function () { + aborted = [undefined, 'abort', 'abort']; + if (!jqXHR) { + if (slot) { + slot.rejectWith(options.context, aborted); + } + return send(); + } + return jqXHR.abort(); + }; + return this._enhancePromise(pipe); + } + return send(); + }, + + _onAdd: function (e, data) { + var that = this, + result = true, + options = $.extend({}, this.options, data), + files = data.files, + filesLength = files.length, + limit = options.limitMultiFileUploads, + limitSize = options.limitMultiFileUploadSize, + overhead = options.limitMultiFileUploadSizeOverhead, + batchSize = 0, + paramName = this._getParamName(options), + paramNameSet, + paramNameSlice, + fileSet, + i, + j = 0; + if (limitSize && (!filesLength || files[0].size === undefined)) { + limitSize = undefined; + } + if (!(options.singleFileUploads || limit || limitSize) || + !this._isXHRUpload(options)) { + fileSet = [files]; + paramNameSet = [paramName]; + } else if (!(options.singleFileUploads || limitSize) && limit) { + fileSet = []; + paramNameSet = []; + for (i = 0; i < filesLength; i += limit) { + fileSet.push(files.slice(i, i + limit)); + paramNameSlice = paramName.slice(i, i + limit); + if (!paramNameSlice.length) { + paramNameSlice = paramName; + } + paramNameSet.push(paramNameSlice); + } + } else if (!options.singleFileUploads && limitSize) { + fileSet = []; + paramNameSet = []; + for (i = 0; i < filesLength; i = i + 1) { + batchSize += files[i].size + overhead; + if (i + 1 === filesLength || + (batchSize + files[i + 1].size + overhead) > + limitSize) { + fileSet.push(files.slice(j, i + 1)); + paramNameSlice = paramName.slice(j, i + 1); + if (!paramNameSlice.length) { + paramNameSlice = paramName; + } + paramNameSet.push(paramNameSlice); + j = i + 1; + batchSize = 0; + } + } + } else { + paramNameSet = paramName; + } + data.originalFiles = files; + $.each(fileSet || files, function (index, element) { + var newData = $.extend({}, data); + newData.files = fileSet ? element : [element]; + newData.paramName = paramNameSet[index]; + that._initResponseObject(newData); + that._initProgressObject(newData); + that._addConvenienceMethods(e, newData); + result = that._trigger( + 'add', + $.Event('add', {delegatedEvent: e}), + newData + ); + return result; + }); + return result; + }, + + _replaceFileInput: function (input) { + var inputClone = input.clone(true); + $('
').append(inputClone)[0].reset(); + // Detaching allows to insert the fileInput on another form + // without loosing the file input value: + input.after(inputClone).detach(); + // Avoid memory leaks with the detached file input: + $.cleanData(input.unbind('remove')); + // Replace the original file input element in the fileInput + // elements set with the clone, which has been copied including + // event handlers: + this.options.fileInput = this.options.fileInput.map(function (i, el) { + if (el === input[0]) { + return inputClone[0]; + } + return el; + }); + // If the widget has been initialized on the file input itself, + // override this.element with the file input clone: + if (input[0] === this.element[0]) { + this.element = inputClone; + } + }, + + _handleFileTreeEntry: function (entry, path) { + var that = this, + dfd = $.Deferred(), + errorHandler = function (e) { + if (e && !e.entry) { + e.entry = entry; + } + // Since $.when returns immediately if one + // Deferred is rejected, we use resolve instead. + // This allows valid files and invalid items + // to be returned together in one set: + dfd.resolve([e]); + }, + dirReader; + path = path || ''; + if (entry.isFile) { + if (entry._file) { + // Workaround for Chrome bug #149735 + entry._file.relativePath = path; + dfd.resolve(entry._file); + } else { + entry.file(function (file) { + file.relativePath = path; + dfd.resolve(file); + }, errorHandler); + } + } else if (entry.isDirectory) { + dirReader = entry.createReader(); + dirReader.readEntries(function (entries) { + that._handleFileTreeEntries( + entries, + path + entry.name + '/' + ).done(function (files) { + dfd.resolve(files); + }).fail(errorHandler); + }, errorHandler); + } else { + // Return an empy list for file system items + // other than files or directories: + dfd.resolve([]); + } + return dfd.promise(); + }, + + _handleFileTreeEntries: function (entries, path) { + var that = this; + return $.when.apply( + $, + $.map(entries, function (entry) { + return that._handleFileTreeEntry(entry, path); + }) + ).pipe(function () { + return Array.prototype.concat.apply( + [], + arguments + ); + }); + }, + + _getDroppedFiles: function (dataTransfer) { + dataTransfer = dataTransfer || {}; + var items = dataTransfer.items; + if (items && items.length && (items[0].webkitGetAsEntry || + items[0].getAsEntry)) { + return this._handleFileTreeEntries( + $.map(items, function (item) { + var entry; + if (item.webkitGetAsEntry) { + entry = item.webkitGetAsEntry(); + if (entry) { + // Workaround for Chrome bug #149735: + entry._file = item.getAsFile(); + } + return entry; + } + return item.getAsEntry(); + }) + ); + } + return $.Deferred().resolve( + $.makeArray(dataTransfer.files) + ).promise(); + }, + + _getSingleFileInputFiles: function (fileInput) { + fileInput = $(fileInput); + var entries = fileInput.prop('webkitEntries') || + fileInput.prop('entries'), + files, + value; + if (entries && entries.length) { + return this._handleFileTreeEntries(entries); + } + files = $.makeArray(fileInput.prop('files')); + if (!files.length) { + value = fileInput.prop('value'); + if (!value) { + return $.Deferred().resolve([]).promise(); + } + // If the files property is not available, the browser does not + // support the File API and we add a pseudo File object with + // the input value as name with path information removed: + files = [{name: value.replace(/^.*\\/, '')}]; + } else if (files[0].name === undefined && files[0].fileName) { + // File normalization for Safari 4 and Firefox 3: + $.each(files, function (index, file) { + file.name = file.fileName; + file.size = file.fileSize; + }); + } + return $.Deferred().resolve(files).promise(); + }, + + _getFileInputFiles: function (fileInput) { + if (!(fileInput instanceof $) || fileInput.length === 1) { + return this._getSingleFileInputFiles(fileInput); + } + return $.when.apply( + $, + $.map(fileInput, this._getSingleFileInputFiles) + ).pipe(function () { + return Array.prototype.concat.apply( + [], + arguments + ); + }); + }, + + _onChange: function (e) { + var that = this, + data = { + fileInput: $(e.target), + form: $(e.target.form) + }; + this._getFileInputFiles(data.fileInput).always(function (files) { + data.files = files; + if (that.options.replaceFileInput) { + that._replaceFileInput(data.fileInput); + } + if (that._trigger( + 'change', + $.Event('change', {delegatedEvent: e}), + data + ) !== false) { + that._onAdd(e, data); + } + }); + }, + + _onPaste: function (e) { + var items = e.originalEvent && e.originalEvent.clipboardData && + e.originalEvent.clipboardData.items, + data = {files: []}; + if (items && items.length) { + $.each(items, function (index, item) { + var file = item.getAsFile && item.getAsFile(); + if (file) { + data.files.push(file); + } + }); + if (this._trigger( + 'paste', + $.Event('paste', {delegatedEvent: e}), + data + ) !== false) { + this._onAdd(e, data); + } + } + }, + + _onDrop: function (e) { + e.dataTransfer = e.originalEvent && e.originalEvent.dataTransfer; + var that = this, + dataTransfer = e.dataTransfer, + data = {}; + if (dataTransfer && dataTransfer.files && dataTransfer.files.length) { + e.preventDefault(); + this._getDroppedFiles(dataTransfer).always(function (files) { + data.files = files; + if (that._trigger( + 'drop', + $.Event('drop', {delegatedEvent: e}), + data + ) !== false) { + that._onAdd(e, data); + } + }); + } + }, + + _onDragOver: function (e) { + e.dataTransfer = e.originalEvent && e.originalEvent.dataTransfer; + var dataTransfer = e.dataTransfer; + if (dataTransfer && $.inArray('Files', dataTransfer.types) !== -1 && + this._trigger( + 'dragover', + $.Event('dragover', {delegatedEvent: e}) + ) !== false) { + e.preventDefault(); + dataTransfer.dropEffect = 'copy'; + } + }, + + _initEventHandlers: function () { + if (this._isXHRUpload(this.options)) { + this._on(this.options.dropZone, { + dragover: this._onDragOver, + drop: this._onDrop + }); + this._on(this.options.pasteZone, { + paste: this._onPaste + }); + } + if ($.support.fileInput) { + this._on(this.options.fileInput, { + change: this._onChange + }); + } + }, + + _destroyEventHandlers: function () { + this._off(this.options.dropZone, 'dragover drop'); + this._off(this.options.pasteZone, 'paste'); + this._off(this.options.fileInput, 'change'); + }, + + _setOption: function (key, value) { + var reinit = $.inArray(key, this._specialOptions) !== -1; + if (reinit) { + this._destroyEventHandlers(); + } + this._super(key, value); + if (reinit) { + this._initSpecialOptions(); + this._initEventHandlers(); + } + }, + + _initSpecialOptions: function () { + var options = this.options; + if (options.fileInput === undefined) { + options.fileInput = this.element.is('input[type="file"]') ? + this.element : this.element.find('input[type="file"]'); + } else if (!(options.fileInput instanceof $)) { + options.fileInput = $(options.fileInput); + } + if (!(options.dropZone instanceof $)) { + options.dropZone = $(options.dropZone); + } + if (!(options.pasteZone instanceof $)) { + options.pasteZone = $(options.pasteZone); + } + }, + + _getRegExp: function (str) { + var parts = str.split('/'), + modifiers = parts.pop(); + parts.shift(); + return new RegExp(parts.join('/'), modifiers); + }, + + _isRegExpOption: function (key, value) { + return key !== 'url' && $.type(value) === 'string' && + /^\/.*\/[igm]{0,3}$/.test(value); + }, + + _initDataAttributes: function () { + var that = this, + options = this.options; + // Initialize options set via HTML5 data-attributes: + $.each( + $(this.element[0].cloneNode(false)).data(), + function (key, value) { + if (that._isRegExpOption(key, value)) { + value = that._getRegExp(value); + } + options[key] = value; + } + ); + }, + + _create: function () { + this._initDataAttributes(); + this._initSpecialOptions(); + this._slots = []; + this._sequence = this._getXHRPromise(true); + this._sending = this._active = 0; + this._initProgressObject(this); + this._initEventHandlers(); + }, + + // This method is exposed to the widget API and allows to query + // the number of active uploads: + active: function () { + return this._active; + }, + + // This method is exposed to the widget API and allows to query + // the widget upload progress. + // It returns an object with loaded, total and bitrate properties + // for the running uploads: + progress: function () { + return this._progress; + }, + + // This method is exposed to the widget API and allows adding files + // using the fileupload API. The data parameter accepts an object which + // must have a files property and can contain additional options: + // .fileupload('add', {files: filesList}); + add: function (data) { + var that = this; + if (!data || this.options.disabled) { + return; + } + if (data.fileInput && !data.files) { + this._getFileInputFiles(data.fileInput).always(function (files) { + data.files = files; + that._onAdd(null, data); + }); + } else { + data.files = $.makeArray(data.files); + this._onAdd(null, data); + } + }, + + // This method is exposed to the widget API and allows sending files + // using the fileupload API. The data parameter accepts an object which + // must have a files or fileInput property and can contain additional options: + // .fileupload('send', {files: filesList}); + // The method returns a Promise object for the file upload call. + send: function (data) { + if (data && !this.options.disabled) { + if (data.fileInput && !data.files) { + var that = this, + dfd = $.Deferred(), + promise = dfd.promise(), + jqXHR, + aborted; + promise.abort = function () { + aborted = true; + if (jqXHR) { + return jqXHR.abort(); + } + dfd.reject(null, 'abort', 'abort'); + return promise; + }; + this._getFileInputFiles(data.fileInput).always( + function (files) { + if (aborted) { + return; + } + if (!files.length) { + dfd.reject(); + return; + } + data.files = files; + jqXHR = that._onSend(null, data).then( + function (result, textStatus, jqXHR) { + dfd.resolve(result, textStatus, jqXHR); + }, + function (jqXHR, textStatus, errorThrown) { + dfd.reject(jqXHR, textStatus, errorThrown); + } + ); + } + ); + return this._enhancePromise(promise); + } + data.files = $.makeArray(data.files); + if (data.files.length) { + return this._onSend(null, data); + } + } + return this._getXHRPromise(false, data && data.context); + } + + }); + +})); diff --git a/UI/WebServerResources/jquery.iframe-transport.js b/UI/WebServerResources/jquery.iframe-transport.js new file mode 100755 index 0000000000..6d476f2de6 --- /dev/null +++ b/UI/WebServerResources/jquery.iframe-transport.js @@ -0,0 +1,210 @@ +/* + * jQuery Iframe Transport Plugin 1.8.1 + * https://github.com/blueimp/jQuery-File-Upload + * + * Copyright 2011, Sebastian Tschan + * https://blueimp.net + * + * Licensed under the MIT license: + * http://www.opensource.org/licenses/MIT + */ + +/*jslint unparam: true, nomen: true */ +/*global define, window, document */ + +(function (factory) { + 'use strict'; + if (typeof define === 'function' && define.amd) { + // Register as an anonymous AMD module: + define(['jquery'], factory); + } else { + // Browser globals: + factory(window.jQuery); + } +}(function ($) { + 'use strict'; + + // Helper variable to create unique names for the transport iframes: + var counter = 0; + + // The iframe transport accepts four additional options: + // options.fileInput: a jQuery collection of file input fields + // options.paramName: the parameter name for the file form data, + // overrides the name property of the file input field(s), + // can be a string or an array of strings. + // options.formData: an array of objects with name and value properties, + // equivalent to the return data of .serializeArray(), e.g.: + // [{name: 'a', value: 1}, {name: 'b', value: 2}] + // options.initialIframeSrc: the URL of the initial iframe src, + // by default set to "javascript:false;" + $.ajaxTransport('iframe', function (options) { + if (options.async) { + // javascript:false as initial iframe src + // prevents warning popups on HTTPS in IE6: + /*jshint scripturl: true */ + var initialIframeSrc = options.initialIframeSrc || 'javascript:false;', + /*jshint scripturl: false */ + form, + iframe, + addParamChar; + return { + send: function (_, completeCallback) { + form = $('
'); + form.attr('accept-charset', options.formAcceptCharset); + addParamChar = /\?/.test(options.url) ? '&' : '?'; + // XDomainRequest only supports GET and POST: + if (options.type === 'DELETE') { + options.url = options.url + addParamChar + '_method=DELETE'; + options.type = 'POST'; + } else if (options.type === 'PUT') { + options.url = options.url + addParamChar + '_method=PUT'; + options.type = 'POST'; + } else if (options.type === 'PATCH') { + options.url = options.url + addParamChar + '_method=PATCH'; + options.type = 'POST'; + } + // IE versions below IE8 cannot set the name property of + // elements that have already been added to the DOM, + // so we set the name along with the iframe HTML markup: + counter += 1; + iframe = $( + '' + ).bind('load', function () { + var fileInputClones, + paramNames = $.isArray(options.paramName) ? + options.paramName : [options.paramName]; + iframe + .unbind('load') + .bind('load', function () { + var response; + // Wrap in a try/catch block to catch exceptions thrown + // when trying to access cross-domain iframe contents: + try { + response = iframe.contents(); + // Google Chrome and Firefox do not throw an + // exception when calling iframe.contents() on + // cross-domain requests, so we unify the response: + if (!response.length || !response[0].firstChild) { + throw new Error(); + } + } catch (e) { + response = undefined; + } + // The complete callback returns the + // iframe content document as response object: + completeCallback( + 200, + 'success', + {'iframe': response} + ); + // Fix for IE endless progress bar activity bug + // (happens on form submits to iframe targets): + $('') + .appendTo(form); + window.setTimeout(function () { + // Removing the form in a setTimeout call + // allows Chrome's developer tools to display + // the response result + form.remove(); + }, 0); + }); + form + .prop('target', iframe.prop('name')) + .prop('action', options.url) + .prop('method', options.type); + if (options.formData) { + $.each(options.formData, function (index, field) { + $('') + .prop('name', field.name) + .val(field.value) + .appendTo(form); + }); + } + if (options.fileInput && options.fileInput.length && + options.type === 'POST') { + fileInputClones = options.fileInput.clone(); + // Insert a clone for each file input field: + options.fileInput.after(function (index) { + return fileInputClones[index]; + }); + if (options.paramName) { + options.fileInput.each(function (index) { + $(this).prop( + 'name', + paramNames[index] || options.paramName + ); + }); + } + // Appending the file input fields to the hidden form + // removes them from their original location: + form + .append(options.fileInput) + .prop('enctype', 'multipart/form-data') + // enctype must be set as encoding for IE: + .prop('encoding', 'multipart/form-data'); + } + form.submit(); + // Insert the file input fields at their original location + // by replacing the clones with the originals: + if (fileInputClones && fileInputClones.length) { + options.fileInput.each(function (index, input) { + var clone = $(fileInputClones[index]); + $(input).prop('name', clone.prop('name')); + clone.replaceWith(input); + }); + } + }); + form.append(iframe).appendTo(document.body); + }, + abort: function () { + if (iframe) { + // javascript:false as iframe src aborts the request + // and prevents warning popups on HTTPS in IE6. + // concat is used to avoid the "Script URL" JSLint error: + iframe + .unbind('load') + .prop('src', initialIframeSrc); + } + if (form) { + form.remove(); + } + } + }; + } + }); + + // The iframe transport returns the iframe content document as response. + // The following adds converters from iframe to text, json, html, xml + // and script. + // Please note that the Content-Type for JSON responses has to be text/plain + // or text/html, if the browser doesn't include application/json in the + // Accept header, else IE will show a download dialog. + // The Content-Type for XML responses on the other hand has to be always + // application/xml or text/xml, so IE properly parses the XML response. + // See also + // https://github.com/blueimp/jQuery-File-Upload/wiki/Setup#content-type-negotiation + $.ajaxSetup({ + converters: { + 'iframe text': function (iframe) { + return iframe && $(iframe[0].body).text(); + }, + 'iframe json': function (iframe) { + return iframe && $.parseJSON($(iframe[0].body).text()); + }, + 'iframe html': function (iframe) { + return iframe && $(iframe[0].body).html(); + }, + 'iframe xml': function (iframe) { + var xmlDoc = iframe && iframe[0]; + return xmlDoc && $.isXMLDoc(xmlDoc) ? xmlDoc : + $.parseXML((xmlDoc.XMLDocument && xmlDoc.XMLDocument.xml) || + $(xmlDoc.body).html()); + }, + 'iframe script': function (iframe) { + return iframe && $.globalEval($(iframe[0].body).text()); + } + } + }); + +})); diff --git a/UI/WebServerResources/upload_document.png b/UI/WebServerResources/upload_document.png new file mode 100644 index 0000000000000000000000000000000000000000..95bc045c23e3781bbef7cdbb14a46fb06f285221 GIT binary patch literal 1322 zcmeAS@N?(olHy`uVBq!ia0vp^DImx;bBqCEPEi zJ&1TElUs0Z=c?T4M|duYdCqPy4}Sh)(#9){Y=I{%7-MEzc~75l$4SMOQzrdLN`s?f zYme}O(v_Q+9GEg8a5`gKpW-C5px9&A54bM)^hVW)=^bmHzpM(!Br~sFOJ3PbvHJXf z;+Fb=8&-c+?x%WIHT~MXGIipkEs2>Oev`N~Q)*aZ<{P!EPU4)nrBUZG*CdXW8p&cm zR?c=QdlA#It4R$y*|P4>73u) z4x6X#yVxn<*>4zg%(_CdzHH)2t&6Q8Q$Ff___X45!wI1CyQUW=dv4ZAmb=&@V&oU7 z_tVI-!qVnU@+*ff*bjAbd3+`>K`OTMN^ zuH{r(vZzNnMbbG_*X7dT3Q6;+CZ~Q6dZ&pXc}G=LDPXaci#9IKvq4S!Gx{Z`+rsjwPB8gdd32sJ13gikp7r zcKiNnO_xhtp81cv_xhaqeLd)bX+l_#e*MAQ){2v^G0kVP_L{Yqp+@iJzPzB;#o%`3v0O1=vfgk8GJ_^YceQt{}bjN${!8t$%RKIdJfmoVSa z5a^W_iw64>_FZT?`#4S?$ z-&}sj*M7Ije%+m$4`(c$A)u5gWWjGUH{plppF-86H^L_X6RGZjNQI}{OH2!*f~H45 zZ(6d((Nr%}zCdKd2KjhCnF%J!n$JG2o)TiZBJAO6HJ{}C*rRI?NO~HkRXBSFHfPEH zt4RD7!w|t=qxo{>I`((F*si8MkV*KJvonGB!^R~7;hb8RLr*R?^sH{=e-ZxhA?Jey zOPnXoig91q*DYxa5vk}KXpZP(}kbS%yrp7 zkqz?yBZ5{NNpEejc>Zac0mJh7*L~V|A9vcTXP)uz9*@G@<9mQ*AcLo?pUXO@ GgeCyz8*Eho literal 0 HcmV?d00001 From 1f7994d1bf9302e02940de5fc75c0a53a9911d75 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 18 Dec 2013 22:16:28 -0500 Subject: [PATCH 028/214] Respect locale in time format of attendees window --- NEWS | 1 + .../SchedulerUI/UIxAttendeesEditor.wox | 1 + .../JavascriptAPIExtensions.js | 25 +++++++++++++++++++ UI/WebServerResources/UIxAttendeesEditor.js | 8 +----- 4 files changed, 28 insertions(+), 7 deletions(-) diff --git a/NEWS b/NEWS index 7ae477d461..e5a247a3a0 100644 --- a/NEWS +++ b/NEWS @@ -12,6 +12,7 @@ Enhancements using CIDs. This prevents Outlook issues. - updated Finnish translation - XMLHttpRequest.js is now loaded conditionaly (< IE9) + - format time in attendees invitation window according to the user's locale Bug fixes - diff --git a/UI/Templates/SchedulerUI/UIxAttendeesEditor.wox b/UI/Templates/SchedulerUI/UIxAttendeesEditor.wox index 79b44766a1..7d90f9ad64 100644 --- a/UI/Templates/SchedulerUI/UIxAttendeesEditor.wox +++ b/UI/Templates/SchedulerUI/UIxAttendeesEditor.wox @@ -18,6 +18,7 @@
12) { + p = 'pm'; + i = hours % 12; + } + if (minutes < 10) { + m = '0' + minutes; + } + + // %H : hour as a decimal number using 24-hour clock + newString = newString.replace("%H", hours < 10 ? '0' + hours : hours); + // %I : hour as a decimal number using 12-hour clock + newString = newString.replace("%I", i < 10 ? '0' + i : i); + // %M : minute as decimal number + newString = newString.replace("%M", m); + // %p : 'am' or 'pm' + newString = newString.replace("%p", p); + + return newString; +}; + String.prototype.repeat = function(count) { var newString = ""; for (var i = 0; i < count; i++) { diff --git a/UI/WebServerResources/UIxAttendeesEditor.js b/UI/WebServerResources/UIxAttendeesEditor.js index e01ed1cc55..e893129d25 100644 --- a/UI/WebServerResources/UIxAttendeesEditor.js +++ b/UI/WebServerResources/UIxAttendeesEditor.js @@ -1453,14 +1453,8 @@ function prepareTableHeaders() { rows[0].appendChild(header1b); for (var hour = displayStartHour; hour < (displayEndHour + 1); hour++) { var header2 = document.createElement("th"); - var text = hour + ":00"; - if (hour < 10) - text = "0" + text; - if (hour >= dayStartHour && hour < dayEndHour) - $(header2).addClassName ("officeHour"); - header2.appendChild(document.createTextNode(text)); + header2.appendChild(document.createTextNode(timeFormat.formatTime(hour, 0))); rows[1].appendChild(header2); - var header3 = document.createElement("th"); for (var span = 0; span < 4; span++) { var spanElement = document.createElement("span"); From dc21c723f695524bc8d2bf9088f3575b518b1e46 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 20 Dec 2013 15:20:16 -0500 Subject: [PATCH 029/214] Move method fetchFileAttachmentKeys from category Moved fetchFileAttachmentKeys from SOGoDraftObjectExtensions to SOGoDraftObject. Renamed fetchAttachmentIds to fetchFileAttachmentIds for consistency. --- SoObjects/Mailer/SOGoMailObject+Draft.h | 1 - SoObjects/Mailer/SOGoMailObject+Draft.m | 106 ----------------- SoObjects/Mailer/SOGoMailObject.h | 4 +- SoObjects/Mailer/SOGoMailObject.m | 126 +++++++++++++++++++-- UI/MailPartViewers/UIxMailPartHTMLViewer.m | 4 +- 5 files changed, 121 insertions(+), 120 deletions(-) diff --git a/SoObjects/Mailer/SOGoMailObject+Draft.h b/SoObjects/Mailer/SOGoMailObject+Draft.h index c4054fa1d8..1a106a2c00 100644 --- a/SoObjects/Mailer/SOGoMailObject+Draft.h +++ b/SoObjects/Mailer/SOGoMailObject+Draft.h @@ -28,7 +28,6 @@ @interface SOGoMailObject (SOGoDraftObjectExtensions) - (NSString *) contentForEditing; -- (NSArray *) fetchFileAttachmentKeys; - (NSString *) subjectForReply; - (NSString *) contentForReply; diff --git a/SoObjects/Mailer/SOGoMailObject+Draft.m b/SoObjects/Mailer/SOGoMailObject+Draft.m index 4b61e2b013..4d536b0159 100644 --- a/SoObjects/Mailer/SOGoMailObject+Draft.m +++ b/SoObjects/Mailer/SOGoMailObject+Draft.m @@ -23,7 +23,6 @@ #import #import #import -#import #import #import @@ -35,7 +34,6 @@ #import #import -#import "NSDictionary+Mail.h" #import "NSString+Mail.h" #import "SOGoMailForward.h" #import "SOGoMailObject+Draft.h" @@ -272,108 +270,4 @@ - (NSString *) contentForInlineForward return [[page generateResponse] contentAsString]; } -// -// -// -- (void) _fetchFileAttachmentKey: (NSDictionary *) part - intoArray: (NSMutableArray *) keys - withPath: (NSString *) path - andPrefix: (NSString *) prefix -{ - NSString *filename, *mimeType; - NSDictionary *currentFile; - - filename = [part filename]; - - mimeType = [NSString stringWithFormat: @"%@/%@", - [part objectForKey: @"type"], - [part objectForKey: @"subtype"]]; - - if (!filename) - // We might end up here because of MUA that actually strips the - // Content-Disposition (and thus, the filename) when mails containing - // attachments have been forwarded. Thunderbird (2.x) does just that - // when forwarding mails with images attached to them (using cid:...). - if ([mimeType hasPrefix: @"application/"] || - [mimeType hasPrefix: @"audio/"] || - [mimeType hasPrefix: @"image/"] || - [mimeType hasPrefix: @"video/"]) - filename = [NSString stringWithFormat: @"unknown_%@", path]; - - if (filename) - { - currentFile = [NSDictionary dictionaryWithObjectsAndKeys: - filename, @"filename", - [mimeType lowercaseString], @"mimetype", - path, @"path", - [part objectForKey: @"encoding"], @"encoding", - [part objectForKey:@ "size"], @"size", - [NSString stringWithFormat: @"%@/%@", prefix, [filename stringByEscapingURL]], @"url", - nil]; - [keys addObject: currentFile]; - } -} - -// -// -// -- (void) _fetchFileAttachmentKeysInPart: (NSDictionary *) part - intoArray: (NSMutableArray *) keys - withPath: (NSString *) path - andPrefix: (NSString *) prefix -{ - NSMutableDictionary *currentPart; - NSString *newPath; - NSArray *subparts; - NSString *type; - NSUInteger i; - - type = [[part objectForKey: @"type"] lowercaseString]; - if ([type isEqualToString: @"multipart"]) - { - subparts = [part objectForKey: @"parts"]; - for (i = 1; i <= [subparts count]; i++) - { - currentPart = [subparts objectAtIndex: i-1]; - if (path) - newPath = [NSString stringWithFormat: @"%@.%d", path, i]; - else - newPath = [NSString stringWithFormat: @"%d", i]; - [self _fetchFileAttachmentKeysInPart: currentPart - intoArray: keys - withPath: newPath - andPrefix: [NSString stringWithFormat: @"%@/%i", prefix, i]]; - } - } - else - { - if (!path) - path = @"1"; - [self _fetchFileAttachmentKey: part - intoArray: keys - withPath: path - andPrefix: prefix]; - } -} - -// -// -// -#warning we might need to handle parts with a "name" attribute -- (NSArray *) fetchFileAttachmentKeys -{ - NSString *prefix; - NSMutableArray *keys; - - prefix = [[self soURL] absoluteString]; - if ([prefix hasSuffix: @"/"]) - prefix = [prefix substringToIndex: [prefix length] - 1]; - - keys = [NSMutableArray array]; - [self _fetchFileAttachmentKeysInPart: [self bodyStructure] - intoArray: keys withPath: nil andPrefix: prefix]; - - return keys; -} - @end diff --git a/SoObjects/Mailer/SOGoMailObject.h b/SoObjects/Mailer/SOGoMailObject.h index cc56324d72..182efeea01 100644 --- a/SoObjects/Mailer/SOGoMailObject.h +++ b/SoObjects/Mailer/SOGoMailObject.h @@ -102,7 +102,9 @@ NSArray *SOGoMailCoreInfoKeys; - (NSDictionary *) fetchPlainTextParts; - (NSDictionary *) fetchPlainTextStrings:(NSArray *)_fetchKeys; -- (NSDictionary *) fetchAttachmentIds; +- (BOOL) hasAttachment; +- (NSDictionary *) fetchFileAttachmentIds; +- (NSArray *) fetchFileAttachmentKeys; /* flags */ diff --git a/SoObjects/Mailer/SOGoMailObject.m b/SoObjects/Mailer/SOGoMailObject.m index 9a73eb92b5..aa808d1965 100644 --- a/SoObjects/Mailer/SOGoMailObject.m +++ b/SoObjects/Mailer/SOGoMailObject.m @@ -52,6 +52,7 @@ #import "NSString+Mail.h" #import "NSData+Mail.h" +#import "NSDictionary+Mail.h" #import "SOGoMailFolder.h" #import "SOGoMailAccount.h" #import "SOGoMailAccounts.h" @@ -705,9 +706,9 @@ - (NSString *) _urlToPart: (NSDictionary *) infos return urlToPart; } -- (void) _feedAttachmentIds: (NSMutableDictionary *) attachmentIds - withInfos: (NSDictionary *) infos - andPrefix: (NSString *) prefix +- (void) _feedFileAttachmentIds: (NSMutableDictionary *) attachmentIds + withInfos: (NSDictionary *) infos + andPrefix: (NSString *) prefix { NSArray *parts; NSDictionary *currentPart; @@ -727,14 +728,14 @@ - (void) _feedAttachmentIds: (NSMutableDictionary *) attachmentIds for (count = 0; count < max; count++) { currentPart = [parts objectAtIndex: count]; - [self _feedAttachmentIds: attachmentIds - withInfos: currentPart - andPrefix: [NSString stringWithFormat: @"%@/%d", - prefix, count + 1]]; + [self _feedFileAttachmentIds: attachmentIds + withInfos: currentPart + andPrefix: [NSString stringWithFormat: @"%@/%d", + prefix, count + 1]]; } } -- (NSDictionary *) fetchAttachmentIds +- (NSDictionary *) fetchFileAttachmentIds { NSMutableDictionary *attachmentIds; NSString *prefix; @@ -745,13 +746,118 @@ - (NSDictionary *) fetchAttachmentIds prefix = [[self soURL] absoluteString]; if ([prefix hasSuffix: @"/"]) prefix = [prefix substringToIndex: [prefix length] - 1]; - [self _feedAttachmentIds: attachmentIds + [self _feedFileAttachmentIds: attachmentIds withInfos: [coreInfos objectForKey: @"bodystructure"] andPrefix: prefix]; return attachmentIds; } +// +// +// +- (void) _fetchFileAttachmentKey: (NSDictionary *) part + intoArray: (NSMutableArray *) keys + withPath: (NSString *) path + andPrefix: (NSString *) prefix +{ + NSString *filename, *mimeType; + NSDictionary *currentFile; + + filename = [part filename]; + + mimeType = [NSString stringWithFormat: @"%@/%@", + [part objectForKey: @"type"], + [part objectForKey: @"subtype"]]; + + if (!filename) + // We might end up here because of MUA that actually strips the + // Content-Disposition (and thus, the filename) when mails containing + // attachments have been forwarded. Thunderbird (2.x) does just that + // when forwarding mails with images attached to them (using cid:...). + if ([mimeType hasPrefix: @"application/"] || + [mimeType hasPrefix: @"audio/"] || + [mimeType hasPrefix: @"image/"] || + [mimeType hasPrefix: @"video/"]) + filename = [NSString stringWithFormat: @"unknown_%@", path]; + + if (filename) + { + currentFile = [NSDictionary dictionaryWithObjectsAndKeys: + filename, @"filename", + [mimeType lowercaseString], @"mimetype", + path, @"path", + [part objectForKey: @"encoding"], @"encoding", + [part objectForKey:@ "size"], @"size", + [NSString stringWithFormat: @"%@/%@", prefix, [filename stringByEscapingURL]], @"url", + [NSString stringWithFormat: @"%@/asAttachment/%@", prefix, [filename stringByEscapingURL]], @"urlAsAttachment", + nil]; + [keys addObject: currentFile]; + } +} + +// +// +// +- (void) _fetchFileAttachmentKeysInPart: (NSDictionary *) part + intoArray: (NSMutableArray *) keys + withPath: (NSString *) path + andPrefix: (NSString *) prefix +{ + NSMutableDictionary *currentPart; + NSString *newPath; + NSArray *subparts; + NSString *type; + NSUInteger i; + + type = [[part objectForKey: @"type"] lowercaseString]; + if ([type isEqualToString: @"multipart"]) + { + subparts = [part objectForKey: @"parts"]; + for (i = 1; i <= [subparts count]; i++) + { + currentPart = [subparts objectAtIndex: i-1]; + if (path) + newPath = [NSString stringWithFormat: @"%@.%d", path, i]; + else + newPath = [NSString stringWithFormat: @"%d", i]; + [self _fetchFileAttachmentKeysInPart: currentPart + intoArray: keys + withPath: newPath + andPrefix: [NSString stringWithFormat: @"%@/%i", prefix, i]]; + } + } + else + { + if (!path) + path = @"1"; + [self _fetchFileAttachmentKey: part + intoArray: keys + withPath: path + andPrefix: prefix]; + } +} + +// +// +// +#warning we might need to handle parts with a "name" attribute +- (NSArray *) fetchFileAttachmentKeys +{ + NSString *prefix; + NSMutableArray *keys; + + prefix = [[self soURL] absoluteString]; + if ([prefix hasSuffix: @"/"]) + prefix = [prefix substringToIndex: [prefix length] - 1]; + + keys = [NSMutableArray array]; + [self _fetchFileAttachmentKeysInPart: [self bodyStructure] + intoArray: keys withPath: nil andPrefix: prefix]; + + return keys; +} + /* convert parts to strings */ - (NSString *) stringForData: (NSData *) _data partInfo: (NSDictionary *) _info @@ -1353,7 +1459,7 @@ - (NSString *) davDate - (BOOL) hasAttachment { - return ([[self fetchAttachmentIds] count] > 0); + return ([[self fetchFileAttachmentKeys] count] > 0); } - (BOOL) isNewMail diff --git a/UI/MailPartViewers/UIxMailPartHTMLViewer.m b/UI/MailPartViewers/UIxMailPartHTMLViewer.m index e60f97d0f9..e4623a006f 100644 --- a/UI/MailPartViewers/UIxMailPartHTMLViewer.m +++ b/UI/MailPartViewers/UIxMailPartHTMLViewer.m @@ -839,7 +839,7 @@ - (void) _parseContent createXMLReaderForMimeType: @"text/html"]; handler = [_UIxHTMLMailContentHandler new]; - [handler setAttachmentIds: [mail fetchAttachmentIds]]; + [handler setAttachmentIds: [mail fetchFileAttachmentIds]]; // We check if we got an unsupported charset. If so // we convert everything to UTF-16{LE,BE} so it passes @@ -947,7 +947,7 @@ - (void) _parseContent encoding = @"us-ascii"; handler = [_UIxHTMLMailContentHandler new]; - [handler setAttachmentIds: [mail fetchAttachmentIds]]; + [handler setAttachmentIds: [mail fetchFileAttachmentIds]]; // We check if we got an unsupported charset. If so // we convert everything to UTF-16{LE,BE} so it passes From 5f369f201d0020c3d4720fd710eceaebe7dd10e5 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 20 Dec 2013 15:37:01 -0500 Subject: [PATCH 030/214] Add links to download one or all attachments Also removed the contextual menu over file attachments and changed the label color when moving over the file attachments. --- NEWS | 1 + UI/MailerUI/English.lproj/Localizable.strings | 4 +- UI/MailerUI/UIxMailEditor.m | 18 ++--- UI/MailerUI/UIxMailView.m | 47 +++++++++++++- UI/Templates/MailerUI/UIxMailMainFrame.wox | 6 -- UI/Templates/MailerUI/UIxMailPopupView.wox | 19 ++---- UI/Templates/MailerUI/UIxMailView.wox | 33 ++++++++-- UI/WebServerResources/MailerUI.css | 30 +++++++-- UI/WebServerResources/MailerUI.js | 65 +++++++++++++------ UI/WebServerResources/generic.css | 6 +- UI/WebServerResources/generic.js | 15 +++-- 11 files changed, 171 insertions(+), 73 deletions(-) diff --git a/NEWS b/NEWS index e5a247a3a0..a3f8351431 100644 --- a/NEWS +++ b/NEWS @@ -6,6 +6,7 @@ New features using SOGoCalendarDefaultReminder - select multiple files to attach to a message or drag'n'drop files onto the mail editor; will also now display progress of uploads + - new popup menu to download all attachments of a mail Enhancements - we now automatically convert into file attachments diff --git a/UI/MailerUI/English.lproj/Localizable.strings b/UI/MailerUI/English.lproj/Localizable.strings index ed65e4dda9..761f0b6d8b 100644 --- a/UI/MailerUI/English.lproj/Localizable.strings +++ b/UI/MailerUI/English.lproj/Localizable.strings @@ -97,11 +97,11 @@ "Reply-To" = "Reply-To"; "Add address" = "Add address"; -"Attachments:" = "Attachments:"; "Open" = "Open"; "Select All" = "Select All"; "Attach Web Page..." = "Attach Web Page..."; -"Attach File(s)..." = "Attach File(s)..."; +"file" = "file"; +"files" = "files"; "to" = "To"; "cc" = "Cc"; diff --git a/UI/MailerUI/UIxMailEditor.m b/UI/MailerUI/UIxMailEditor.m index e2b2c7ffd9..470e2a93ca 100644 --- a/UI/MailerUI/UIxMailEditor.m +++ b/UI/MailerUI/UIxMailEditor.m @@ -163,6 +163,11 @@ - (id) item return item; } +- (NSString *) uid +{ + return [[self clientObject] nameInContainer]; +} + - (NSArray *) priorityClasses { static NSArray *priorities = nil; @@ -382,14 +387,14 @@ - (void) setAttachment: (NSDictionary *) newAttachment ASSIGN (attachment, newAttachment); } -- (NSFormatter *) sizeFormatter +- (NSDictionary *) attachment { - return [UIxMailSizeFormatter sharedMailSizeFormatter]; + return attachment; } -- (NSDictionary *) attachment +- (NSFormatter *) sizeFormatter { - return attachment; + return [UIxMailSizeFormatter sharedMailSizeFormatter]; } /* from addresses */ @@ -672,11 +677,6 @@ - (BOOL) hasAttachments return [[self attachmentAttrs] count] > 0 ? YES : NO; } -- (NSString *) uid -{ - return [[self clientObject] nameInContainer]; -} - - (id) defaultAction { SOGoDraftObject *co; diff --git a/UI/MailerUI/UIxMailView.m b/UI/MailerUI/UIxMailView.m index e714bf6ab6..371a2a504c 100644 --- a/UI/MailerUI/UIxMailView.m +++ b/UI/MailerUI/UIxMailView.m @@ -47,11 +47,12 @@ #import #import #import +#import #import #import #import -#import #import // cyclic +#import #import "WOContext+UIxMailer.h" @@ -60,6 +61,8 @@ @interface UIxMailView : UIxComponent id currentAddress; NSString *shouldAskReceipt; NSString *matchingIdentityEMail; + NSDictionary *attachment; + NSArray *attachmentAttrs; } @end @@ -80,6 +83,8 @@ + (void) initialize - (void) dealloc { [matchingIdentityEMail release]; + [attachment release]; + [attachmentAttrs release]; [super dealloc]; } @@ -111,6 +116,16 @@ - (NSString *) panelTitle [self messageSubject]]; } +- (void) setAttachment: (NSDictionary *) newAttachment +{ + ASSIGN (attachment, newAttachment); +} + +- (NSDictionary *) attachment +{ + return attachment; +} + /* links (DUP to UIxMailPartViewer!) */ - (NSString *) linkToEnvelopeAddress: (NGImap4EnvelopeAddress *) _address @@ -146,6 +161,36 @@ - (BOOL) hasReplyTo return [[[self clientObject] replyToEnvelopeAddresses] count] > 0 ? YES : NO; } +/* attachment helper */ + +- (NSArray *) attachmentAttrs +{ + if (!attachmentAttrs) + { + ASSIGN (attachmentAttrs, [[self clientObject] fetchFileAttachmentKeys]); + } + + return attachmentAttrs; +} + +- (BOOL) hasAttachments +{ + return [[self attachmentAttrs] count] > 0 ? YES : NO; +} + +- (NSFormatter *) sizeFormatter +{ + return [UIxMailSizeFormatter sharedMailSizeFormatter]; +} + +- (NSString *) attachmentsText +{ + if ([[self attachmentAttrs] count] > 1) + return [self labelForKey: @"files"]; + else + return [self labelForKey: @"file"]; +} + /* viewers */ - (id) contentViewerComponent diff --git a/UI/Templates/MailerUI/UIxMailMainFrame.wox b/UI/Templates/MailerUI/UIxMailMainFrame.wox index f79b9755f1..94c775b4e3 100644 --- a/UI/Templates/MailerUI/UIxMailMainFrame.wox +++ b/UI/Templates/MailerUI/UIxMailMainFrame.wox @@ -211,12 +211,6 @@
- -
diff --git a/UI/Templates/MailerUI/UIxMailPopupView.wox b/UI/Templates/MailerUI/UIxMailPopupView.wox index 1ae4385661..f3d17c577e 100644 --- a/UI/Templates/MailerUI/UIxMailPopupView.wox +++ b/UI/Templates/MailerUI/UIxMailPopupView.wox @@ -9,13 +9,11 @@ const:jsFiles="SOGoAutoCompletion.js" const:userDefaultsKeys="SOGoMailDisplayRemoteInlineImages" const:popup="YES"> - - - - + + - - + diff --git a/UI/Templates/MailerUI/UIxMailView.wox b/UI/Templates/MailerUI/UIxMailView.wox index a0f3945ba5..fcec527994 100644 --- a/UI/Templates/MailerUI/UIxMailView.wox +++ b/UI/Templates/MailerUI/UIxMailView.wox @@ -5,14 +5,25 @@ xmlns:uix="OGo:uix" xmlns:rsrc="OGo:url" xmlns:label="OGo:label"> + + + + - + > + @@ -93,11 +104,19 @@ + + + + + +
:
+ +
- +
diff --git a/UI/WebServerResources/MailerUI.css b/UI/WebServerResources/MailerUI.css index 837a56bee2..fd0c7132b2 100644 --- a/UI/WebServerResources/MailerUI.css +++ b/UI/WebServerResources/MailerUI.css @@ -374,21 +374,21 @@ TR.mailer_listcell_regular TD A } /* mail viewer */ -INPUT#editDraftButton +#editDraftButton { position: absolute; top: 2.5em; right: 1em; } -INPUT#loadImagesButton +#loadImagesButton { position: absolute; top: 2.5em; right: 1em; } -.popup INPUT#loadImagesButton +.popup #loadImagesButton { top: 9.0em; right: 1em; @@ -434,7 +434,8 @@ DIV.mailer_mailcontent TABLE } /* collapsable header */ -TD.mailer_fieldname IMG +TD.mailer_fieldname IMG.collapse, +TD.mailer_fieldname IMG.expand { cursor: pointer; padding-right: 5px; } TD.mailer_fieldvalue SPAN.collapse @@ -577,7 +578,7 @@ DIV.linked_attachment_meta { color: #444444; border-width: 0; - padding: 2px; + padding: 2px 4px; } TABLE.linked_attachment_meta @@ -585,6 +586,25 @@ TABLE.linked_attachment_meta color: #444444; } +.linked_attachment_body a:hover +{ + text-decoration: none; +} + +.linked_attachment_body a:hover .linked_attachment_meta +{ + background-color: #9ABCD8; + color: #fff; + -webkit-border-radius: 5px; + -moz-border-radius: 5px; + border-radius: 5px; +} + +.linked_attachment_body a:hover .muted +{ + color: #fff !important; +} + DIV.linked_attachment_body HR { border: 0px; diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index 847b64a999..106187f161 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -1357,13 +1357,27 @@ function configureLinksInMessage() { anchor.observe("contextmenu", onEmailAddressClick); anchor.writeAttribute("moz-do-not-send", false); } - else + else if (!anchor.id) anchor.observe("click", onMessageAnchorClick); } - var attachments = messageDiv.select ("DIV.linked_attachment_body"); - for (var i = 0; i < attachments.length; i++) - $(attachments[i]).observe("contextmenu", onAttachmentClick); + var attachmentsMenu = $("attachmentsMenu"); + if (attachmentsMenu) { + var options = attachmentsMenu.select("li"); + var callbacks = []; + for (var i = 0; i < options.length; i++) { + if (options[i].className == 'separator') + callbacks.push(null); + else + callbacks.push(saveAttachment); + } + initMenu(attachmentsMenu, callbacks); + $("attachmentsHref").on("click", function (event) { + popupMenu(event, 'attachmentsMenu', this); + preventDefault(event); + return false; + }); + } var images = messageDiv.select("IMG.mailer_imagecontent"); for (var i = 0; i < images.length; i++) @@ -1371,12 +1385,11 @@ function configureLinksInMessage() { var editDraftButton = $("editDraftButton"); if (editDraftButton) - editDraftButton.observe("click", - onMessageEditDraft.bindAsEventListener(editDraftButton)); + editDraftButton.on("click", onMessageEditDraft); var loadImagesButton = $("loadImagesButton"); if (loadImagesButton) - $(loadImagesButton).observe("click", onMessageLoadImages); + loadImagesButton.on("click", onMessageLoadImages); configureiCalLinksInMessage(); } @@ -1562,12 +1575,13 @@ function onMessageContentMenu(event) { } function onMessageEditDraft(event) { + Event.stop(event); return openMessageWindowsForSelection("edit", true); } function onMessageLoadImages(event) { - loadRemoteImages(); Event.stop(event); + loadRemoteImages(); } function loadRemoteImages() { @@ -1613,12 +1627,6 @@ function onImageClick(event) { return false; } -function onAttachmentClick (event) { - popupMenu (event, 'attachmentMenu', this); - preventDefault (event); - return false; -} - function handleReturnReceipt() { var input = $("shouldAskReceipt"); if (input) { @@ -1773,13 +1781,29 @@ function saveImage(event) { window.location.href = urlAsAttachment; } -function saveAttachment(event) { - var div = document.menuTarget; - var link = div.select ("a").first (); - var url = link.getAttribute("href"); - var urlAsAttachment = url.replace(/(\/[^\/]*)$/,"/asAttachment$1"); +/* Download a file using a temporary iframe that we delete once the download is started */ +function download(url) { + var form = createElement('form', null, 'hidden', { action: url, method: 'GET'}); + $(document.body).appendChild(form); + var div = AIM.submit(form); + form.submit(); + setTimeout(function () { + form.remove(); + div.remove(); + }, 2000); +} - window.location.href = urlAsAttachment; +function saveAttachment(event) { + var url = $(this).readAttribute('data-url'); + if (url) { + download(url); + } + else { + $(this).up('ul').select('li[data-url]').each(function (item) { + url = $(item).readAttribute('data-url'); + download(url); + }); + } } /* contacts */ @@ -2820,7 +2844,6 @@ function getMenus() { saveAs, null, null, onMenuDeleteMessage ], imageMenu: [ saveImage ], - attachmentMenu: [ saveAttachment ], messageContentMenu: [ onMenuReplyToSender, onMenuReplyToAll, onMenuForwardMessage, diff --git a/UI/WebServerResources/generic.css b/UI/WebServerResources/generic.css index 3ac0be8e3f..22f7239116 100644 --- a/UI/WebServerResources/generic.css +++ b/UI/WebServerResources/generic.css @@ -251,7 +251,8 @@ DIV.contactSelector DIV.contactList padding-bottom: .15em; margin: 0px; width: auto; - white-space: nowrap; } + white-space: nowrap; + cursor: pointer; } .menu LI.disabled, .popuMenu LI.disabled, @@ -283,10 +284,11 @@ UL.choiceMenu LI._chosen:hover { list-style-image: url("menu-check-hover.gif"); } .menu LI:hover, +.menu LI:hover .muted, .menu LI.selected, .menu LI.submenu-selected { background-color: #9ABCD8; - color: #fff; } + color: #fff !important; } .menu LI.disabled:hover { background-color: inherit; } diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index 04b67c9fba..0b621f0a3d 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -1925,7 +1925,7 @@ AIM = { d.innerHTML = ''; document.body.appendChild(d); - var i = $(n); // TODO: useful? + var i = $(n); if (c && typeof(c.onComplete) == 'function') i.onComplete = c.onComplete; return n; @@ -1936,27 +1936,28 @@ AIM = { }, submit: function(f, c) { - AIM.form(f, AIM.frame(c)); + var id = AIM.frame(c); + AIM.form(f, id); if (c && typeof(c.onStart) == 'function') return c.onStart(); else - return true; + return $(id); }, loaded: function(id) { var i = $(id); + var d; if (i.contentDocument) { - var d = i.contentDocument; + d = i.contentDocument; } else if (i.contentWindow) { - var d = i.contentWindow.document; + d = i.contentWindow.document; } else { - var d = window.frames[id].document; + d = window.frames[id].document; } if (d.location.href == "about:blank") return; - if (typeof(i.onComplete) == 'function') { i.onComplete(Element.allTextContent(d.body)); } From bed57af0157cc167bda6d2651b8f07b23eec3f4a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 20 Dec 2013 16:18:19 -0500 Subject: [PATCH 031/214] Improve display of linked attachments --- UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox b/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox index e566552c98..525b16086f 100644 --- a/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox +++ b/UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox @@ -8,14 +8,14 @@ >
- + var:title="filenameForDisplay" + const:absolute="YES" + >
() + /> ()
+ () From 586d66b1134889ba1ff97ea2b0d55cdf3b3d82e7 Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Mon, 6 Jan 2014 13:28:47 -0500 Subject: [PATCH 040/214] Updated description of SOGoUIAdditionalJSFiles Document that the files must be placed under the WebServerResources directory --- Documentation/SOGo Installation Guide.odt | Bin 162517 -> 162540 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index 4fd37782e0075cdfcddcf110b51952c91c15fbdc..d7ae7039a966b70c5a25bad766ab6e527f5e2e57 100644 GIT binary patch delta 48327 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 aK|s*HzZb^;#Yyt*jRjCccDe(;tN$OS_OnL- From b716331d8ee99123aeb3e9b51a13baa8dde8ba66 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 6 Jan 2014 14:20:47 -0500 Subject: [PATCH 041/214] Append tags when using a sanitizerContentHandler --- SoObjects/Mailer/NSString+Mail.m | 185 ++++++++++++++++++++----------- 1 file changed, 119 insertions(+), 66 deletions(-) diff --git a/SoObjects/Mailer/NSString+Mail.m b/SoObjects/Mailer/NSString+Mail.m index 08a56cdac7..71d7a9e8f2 100644 --- a/SoObjects/Mailer/NSString+Mail.m +++ b/SoObjects/Mailer/NSString+Mail.m @@ -57,6 +57,7 @@ @interface _SOGoHTMLContentHandler : NSObject ][;charset=][;base64], - // - if ([value length] > 5 && [[value substringToIndex: 5] caseInsensitiveCompare: @"data:"] == NSOrderedSame) + if ([tagName isEqualToString: @"img"]) { - NSString *uniqueId, *mimeType, *encoding, *charset; - NGMimeBodyPart *bodyPart; - NGMutableHashMap *map; - NSData *data; - id body; + NSString *value; - int i, j, k; - - i = [value indexOf: ';']; - j = [value indexOf: ';' fromIndex: i+1]; - k = [value indexOf: ',']; - - // We try to get the MIME type - mimeType = nil; + value = [attributes valueForRawName: @"src"]; - if (i > 5 && i < k) + // + // Check for Data URI Scheme + // + // data:[][;charset=][;base64], + // + if ([value length] > 5 && [[value substringToIndex: 5] caseInsensitiveCompare: @"data:"] == NSOrderedSame) { - mimeType = [value substringWithRange: NSMakeRange(5, i-5)]; - } - else - i = 5; + NSString *uniqueId, *mimeType, *encoding; + NGMimeBodyPart *bodyPart; + NGMutableHashMap *map; + NSData *data; + id body; + + int i, j, k; - // We might get a stupid value. We discard anything that doesn't have a / in it - if ([mimeType indexOf: '/'] < 0) - mimeType = @"image/jpeg"; + i = [value indexOf: ';']; + j = [value indexOf: ';' fromIndex: i+1]; + k = [value indexOf: ',']; - // We check and skip the charset - if (j > i) - charset = [value substringWithRange: NSMakeRange(i+1, j-i-1)]; - else - j = i; + // We try to get the MIME type + mimeType = nil; + + if (i > 5 && i < k) + { + mimeType = [value substringWithRange: NSMakeRange(5, i-5)]; + } + else + i = 5; + + // We might get a stupid value. We discard anything that doesn't have a / in it + if ([mimeType indexOf: '/'] < 0) + mimeType = @"image/jpeg"; + + // We check and skip the charset + if (j < i) + j = i; - // We check the encoding and we completely ignore it - encoding = [value substringWithRange: NSMakeRange(j+1, k-j-1)]; + // We check the encoding and we completely ignore it + encoding = [value substringWithRange: NSMakeRange(j+1, k-j-1)]; - if (![encoding length]) - encoding = @"base64"; + if (![encoding length]) + encoding = @"base64"; - data = [[value substringFromIndex: k+1] dataUsingEncoding: NSASCIIStringEncoding]; + data = [[value substringFromIndex: k+1] dataUsingEncoding: NSASCIIStringEncoding]; - uniqueId = [SOGoObject globallyUniqueObjectId]; + uniqueId = [SOGoObject globallyUniqueObjectId]; - map = [[[NGMutableHashMap alloc] initWithCapacity:5] autorelease]; - [map setObject: encoding forKey: @"content-transfer-encoding"]; - [map setObject:[NSNumber numberWithInt:[data length]] forKey: @"content-length"]; - [map setObject: [NSString stringWithFormat: @"inline; filename=\"%@\"", uniqueId] forKey: @"content-disposition"]; - [map setObject: [NSString stringWithFormat: @"%@; name=\"%@\"", mimeType, uniqueId] forKey: @"content-type"]; - [map setObject: [NSString stringWithFormat: @"<%@>", uniqueId] forKey: @"content-id"]; + map = [[[NGMutableHashMap alloc] initWithCapacity:5] autorelease]; + [map setObject: encoding forKey: @"content-transfer-encoding"]; + [map setObject:[NSNumber numberWithInt:[data length]] forKey: @"content-length"]; + [map setObject: [NSString stringWithFormat: @"inline; filename=\"%@\"", uniqueId] forKey: @"content-disposition"]; + [map setObject: [NSString stringWithFormat: @"%@; name=\"%@\"", mimeType, uniqueId] forKey: @"content-type"]; + [map setObject: [NSString stringWithFormat: @"<%@>", uniqueId] forKey: @"content-id"]; - body = [[NGMimeFileData alloc] initWithBytes: [data bytes] length: [data length]]; + body = [[NGMimeFileData alloc] initWithBytes: [data bytes] length: [data length]]; - bodyPart = [[[NGMimeBodyPart alloc] initWithHeader:map] autorelease]; - [bodyPart setBody: body]; - [body release]; + bodyPart = [[[NGMimeBodyPart alloc] initWithHeader:map] autorelease]; + [bodyPart setBody: body]; + [body release]; - [images addObject: bodyPart]; + [images addObject: bodyPart]; - [result appendFormat: @"", uniqueId, mimeType]; + [result appendFormat: @"", uniqueId, mimeType]; + } + } + else if (voidTags) + { + NSString *type; + int i; + + [result appendString: @"<"]; + [result appendString: rawName]; + for (i = 0; i < [attributes count]; i++) + { + [result appendString: @" "]; + [result appendString: [attributes nameAtIndex: i]]; + [result appendString: @"='"]; + [result appendString: [attributes valueAtIndex: i]]; + [result appendString: @"'"]; + + type = [attributes typeAtIndex: i]; + if (![type isEqualToString: @"CDATA"]) + { + [result appendString: @"["]; + [result appendString: type]; + [result appendString: @"]"]; + } + } + if ([voidTags containsObject: tagName]) + [result appendString: @"/"]; + [result appendString: @">"]; } } } @@ -348,13 +392,22 @@ - (void) endElement: (NSString *) element showWhoWeAre(); - if (ignoreContent && ignoreContentTags && specialTreatmentTags) + if (ignoreContentTags && specialTreatmentTags) + { + if (ignoreContent) + { + tagName = [rawName lowercaseString]; + if ([ignoreContentTags containsObject: tagName]) + ignoreContent = NO; + else if ([specialTreatmentTags containsObject: tagName]) + [self _endSpecialTreatment: tagName]; + } + } + else if (voidTags) { tagName = [rawName lowercaseString]; - if ([ignoreContentTags containsObject: tagName]) - ignoreContent = NO; - else if ([specialTreatmentTags containsObject: tagName]) - [self _endSpecialTreatment: tagName]; + if (![voidTags containsObject: tagName]) + [result appendFormat: @"", rawName]; } } From 2b53705d449089a66f23cd055f6c0c92a01890c9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 6 Jan 2014 14:32:58 -0500 Subject: [PATCH 042/214] Untabify --- SoObjects/Mailer/NSString+Mail.m | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/SoObjects/Mailer/NSString+Mail.m b/SoObjects/Mailer/NSString+Mail.m index 71d7a9e8f2..2789c525a7 100644 --- a/SoObjects/Mailer/NSString+Mail.m +++ b/SoObjects/Mailer/NSString+Mail.m @@ -1,6 +1,6 @@ /* NSString+Mail.m - this file is part of SOGo * - * Copyright (C) 2008-2013 Inverse inc. + * Copyright (C) 2008-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -230,12 +230,12 @@ - (void) _startSpecialTreatment: (NSString *) tagName else if ([tagName isEqualToString: @"li"]) { if (orderedList) - { - listCount++; - [result appendFormat: @" %d. ", listCount]; - } + { + listCount++; + [result appendFormat: @" %d. ", listCount]; + } else - [result appendString: @" * "]; + [result appendString: @" * "]; } else if ([tagName isEqualToString: @"dd"]) [result appendString: @" "]; @@ -258,7 +258,7 @@ - (void) _endSpecialTreatment: (NSString *) tagName [result appendString: @":\n"]; } else if ([tagName isEqualToString: @"li"] - || [tagName isEqualToString: @"dd"]) + || [tagName isEqualToString: @"dd"]) [result appendString: @"\n"]; } @@ -276,9 +276,9 @@ - (void) startElement: (NSString *) element if (!ignoreContent && ignoreContentTags && specialTreatmentTags) { if ([ignoreContentTags containsObject: tagName]) - ignoreContent = YES; + ignoreContent = YES; else if ([specialTreatmentTags containsObject: tagName]) - [self _startSpecialTreatment: tagName]; + [self _startSpecialTreatment: tagName]; } else { @@ -654,7 +654,7 @@ - (NSString *) decodedHeader NSString *decodedHeader; decodedHeader = [[self dataUsingEncoding: NSASCIIStringEncoding] - decodedHeader]; + decodedHeader]; if (!decodedHeader) decodedHeader = self; From 0fdea48ce85afe1598cc199590f3b8afab4df30b Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 6 Jan 2014 15:08:45 -0500 Subject: [PATCH 043/214] Restore CSS of disabled menu options --- UI/WebServerResources/generic.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UI/WebServerResources/generic.css b/UI/WebServerResources/generic.css index 22f7239116..701f3455bd 100644 --- a/UI/WebServerResources/generic.css +++ b/UI/WebServerResources/generic.css @@ -288,7 +288,7 @@ UL.choiceMenu LI._chosen:hover .menu LI.selected, .menu LI.submenu-selected { background-color: #9ABCD8; - color: #fff !important; } + color: #fff; } .menu LI.disabled:hover { background-color: inherit; } From e70793e7aee7fa02141fed97a174778304d4834e Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 6 Jan 2014 15:09:09 -0500 Subject: [PATCH 044/214] Don't follow link of attachment not yet uploaded --- UI/WebServerResources/UIxMailEditor.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/UI/WebServerResources/UIxMailEditor.js b/UI/WebServerResources/UIxMailEditor.js index 276d4172b3..cc493d53ef 100644 --- a/UI/WebServerResources/UIxMailEditor.js +++ b/UI/WebServerResources/UIxMailEditor.js @@ -397,11 +397,15 @@ function configureAttachments() { if (!list) return; list.on('click', 'a', function (event, element) { - if (!element.up('li').hasClassName('progressDone')) + // Don't follow links of attachments not yet uploaded + if (!element.up('li').hasClassName('progressDone')) { + Event.stop(event); return false; + } }); list.on('click', 'i.icon-attachment', function (event, element) { + // Delete attachment when clicking on small icon var item = element.up('li'); if (item.hasClassName('progressDone')) { var filename = item.readAttribute('data-filename'); From ff9ea3b779b27baa9ddff5b7a79942980ab0f28a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 7 Jan 2014 10:28:53 -0500 Subject: [PATCH 045/214] Don't alter the draft when saving it We must not extract inline HTML images when simply saving a draft. The images extraction process must only be performed when sending the message. --- SoObjects/Mailer/SOGoDraftObject.m | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index 16246aec5d..ce32d13073 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -1,5 +1,5 @@ /* - Copyright (C) 2007-2013 Inverse inc. + Copyright (C) 2007-2014 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. @@ -1587,6 +1587,7 @@ - (NGMutableHashMap *) mimeHeaderMapWithHeaders: (NSDictionary *) _headers // - (NGMimeMessage *) mimeMessageWithHeaders: (NSDictionary *) _headers excluding: (NSArray *) _exclude + extractingImages: (BOOL) _extractImages { NSMutableArray *bodyParts; NGMimeMessage *message; @@ -1596,13 +1597,16 @@ - (NGMimeMessage *) mimeMessageWithHeaders: (NSDictionary *) _headers message = nil; bodyParts = [NSMutableArray array]; - newText = [text htmlByExtractingImages: bodyParts]; - if ([bodyParts count]) - [self setText: newText]; + if (_extractImages) + { + newText = [text htmlByExtractingImages: bodyParts]; + if ([bodyParts count]) + [self setText: newText]; + } map = [self mimeHeaderMapWithHeaders: _headers - excluding: _exclude]; + excluding: _exclude]; if (map) { //[self debugWithFormat: @"MIME Envelope: %@", map]; @@ -1625,15 +1629,15 @@ - (NGMimeMessage *) mimeMessageWithHeaders: (NSDictionary *) _headers } // -// +// Return a NGMimeMessage object with inline HTML images () extracted as attachments (). // - (NGMimeMessage *) mimeMessage { - return [self mimeMessageWithHeaders: nil excluding: nil]; + return [self mimeMessageWithHeaders: nil excluding: nil extractingImages: YES]; } // -// +// Return a NSData object of the message with no alteration. // - (NSData *) mimeMessageAsData { @@ -1641,7 +1645,7 @@ - (NSData *) mimeMessageAsData NSData *message; generator = [NGMimeMessageGenerator new]; - message = [generator generateMimeFromPart: [self mimeMessage]]; + message = [generator generateMimeFromPart: [self mimeMessageWithHeaders: nil excluding: nil extractingImages: NO]]; [generator release]; return message; @@ -1714,9 +1718,8 @@ - (NSException *) sendMailAndCopyToSent: (BOOL) copyToSent NGMimeMessageGenerator *generator; generator = [[[NGMimeMessageGenerator alloc] init] autorelease]; - message = [generator generateMimeFromPart: [self mimeMessageWithHeaders: nil - excluding: nil]]; - + message = [generator generateMimeFromPart: [self mimeMessage]]; + // // We now look for the Bcc: header. If it is present, we remove it. // Some servers, like qmail, do not remove it automatically. From fe2826ca76cb3963c2fdaaedeb751049824813cc Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 7 Jan 2014 11:11:39 -0500 Subject: [PATCH 046/214] Draft: Improve error handling when attaching files --- UI/Common/English.lproj/Localizable.strings | 1 + UI/MailerUI/English.lproj/Localizable.strings | 3 +++ UI/WebServerResources/UIxMailEditor.js | 24 +++++++++++++++---- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/UI/Common/English.lproj/Localizable.strings b/UI/Common/English.lproj/Localizable.strings index bfbc4b9685..4b60dc35bc 100644 --- a/UI/Common/English.lproj/Localizable.strings +++ b/UI/Common/English.lproj/Localizable.strings @@ -69,6 +69,7 @@ "You cannot create a list in a shared address book." = "You cannot create a list in a shared address book."; "Warning" = "Warning"; +"Can't contact server" = "An error occurred while contacting the server. Please try again later."; "You are not allowed to access this module or this system. Please contact your system administrator." = "You are not allowed to access this module or this system. Please contact your system administrator."; diff --git a/UI/MailerUI/English.lproj/Localizable.strings b/UI/MailerUI/English.lproj/Localizable.strings index 761f0b6d8b..9f13115ea6 100644 --- a/UI/MailerUI/English.lproj/Localizable.strings +++ b/UI/MailerUI/English.lproj/Localizable.strings @@ -280,6 +280,9 @@ "error_missingsubject" = "The message has no subject. Are you sure you want to send it?"; "error_missingrecipients" = "Please specify at least one recipient."; "Send Anyway" = "Send Anyway"; +"Error while saving the draft:" = "Error while saving the draft:"; +"Error while uploading the file \"%{0}\":" = "Error while uploading the file \"%{0}\":"; +"There is an active file upload. Closing the window will interrupt it." = "There is an active file upload. Closing the window will interrupt it."; /* Message sending */ "cannot send message: (smtp) all recipients discarded" = "Cannot send message: all recipients are invalid."; diff --git a/UI/WebServerResources/UIxMailEditor.js b/UI/WebServerResources/UIxMailEditor.js index cc493d53ef..debe65db13 100644 --- a/UI/WebServerResources/UIxMailEditor.js +++ b/UI/WebServerResources/UIxMailEditor.js @@ -244,7 +244,7 @@ function clickedEditorSave() { } else { var response = http.responseText.evalJSON(true); - showAlertDialog("Error while saving the draft: " + response.textStatus); + showAlertDialog(_("Error while saving the draft:") + " " + response.textStatus); } } }, @@ -444,8 +444,14 @@ function configureAttachments() { fail: function (e, data) { var attachment = data.files[0].attachment; var filename = data.files[0].name; - var response = data.xhr().response.evalJSON(); - showAlertDialog("Error while uploading the file " + filename + ": " + response.textStatus); + var textStatus; + try { + var response = data.xhr().response.evalJSON(); + textStatus = response.textStatus; + } catch (e) {} + if (!textStatus) + textStatus = _("Can't contact server"); + showAlertDialog(_("Error while uploading the file \"%{0}\":").formatted(filename) + " " + textStatus); attachment.remove(); }, dragover: function (e, data) { @@ -685,8 +691,18 @@ function onWindowResize(event) { } function onMailEditorClose(event) { - if (window.shouldPreserve) + var e = event || window.event; + + if (window.shouldPreserve) { window.shouldPreserve = false; + if (jQuery('#fileUpload').fileupload('active') > 0) { + var msg = _("There is an active file upload. Closing the window will interrupt it."); + if (e) { + e.returnValue = msg; + } + return msg; + } + } else { var url = "" + window.location; var parts = url.split("/"); From a0d7f184fe793f103ab1f05e49ea0366f4d4e738 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 7 Jan 2014 11:51:35 -0500 Subject: [PATCH 047/214] Update French translation --- UI/Common/French.lproj/Localizable.strings | 2 ++ UI/MailerUI/French.lproj/Localizable.strings | 3 +++ 2 files changed, 5 insertions(+) diff --git a/UI/Common/French.lproj/Localizable.strings b/UI/Common/French.lproj/Localizable.strings index 5e1c362523..b2e50cf6dd 100644 --- a/UI/Common/French.lproj/Localizable.strings +++ b/UI/Common/French.lproj/Localizable.strings @@ -69,6 +69,7 @@ "You cannot create a list in a shared address book." = "Impossible de créer une liste dans un dossier partagé."; "Warning" = "Avertissement"; +"Can't contact server" = "Une erreur est survenue lors de la connexion au serveur. Veuillez réessayer plus tard."; "You are not allowed to access this module or this system. Please contact your system administrator." = "Vous n'êtes pas autorisé à accéder à ce module ou ce système. Veuillez contacter votre administrateur système."; @@ -101,6 +102,7 @@ "Due Date:" = "Échéance :"; "Location:" = "Lieu :"; +/* mail labels */ /* Mail labels */ "Important" = "Important"; "Work" = "Travail"; diff --git a/UI/MailerUI/French.lproj/Localizable.strings b/UI/MailerUI/French.lproj/Localizable.strings index fb96643609..fc3e0ed153 100644 --- a/UI/MailerUI/French.lproj/Localizable.strings +++ b/UI/MailerUI/French.lproj/Localizable.strings @@ -280,6 +280,9 @@ "error_missingsubject" = "Le message n'a pas de sujet. Êtes-vous certain de vouloir l'envoyer?"; "error_missingrecipients" = "Veuillez spécifier au moins un destinataire."; "Send Anyway" = "Envoyer sans sujet"; +"Error while saving the draft:" = "Une erreur est survenue lors de la sauvegarde du brouillon :"; +"Error while uploading the file \"%{0}\":" = "Une erreur est survenue lors du téléversement du fichier « %{0} » :"; +"There is an active file upload. Closing the window will interrupt it." = "Un transfert est actif. La fermeture de la fenêtre causera son interruption."; /* Message sending */ "cannot send message: (smtp) all recipients discarded" = "Le message n'a pas pu être envoyé car aucune adresse n'est valide."; From 80fd439dea8a87727f0bc2f6a947d12450a68006 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 8 Jan 2014 14:40:39 -0500 Subject: [PATCH 048/214] Fix message forwarding as attachment Restored the filename of the message source in the body part content-disposition header. Also forced the mail to be saved to the mailstore immediately in order to have a clickable link to the attached message. --- SoObjects/Mailer/SOGoDraftObject.m | 49 ++++++++++++++++++------------ 1 file changed, 29 insertions(+), 20 deletions(-) diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index ce32d13073..21870220ce 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -404,7 +404,7 @@ - (NSString *) sourceFolder } // -// +// Store the message definition in a plist file (.info.plist) in the spool directory // - (NSException *) storeInfo { @@ -778,15 +778,15 @@ - (NSArray *) _attachmentBodiesFromPaths: (NSArray *) paths // // // -- (void) _fetchAttachments: (NSArray *) parts - fromMail: (SOGoMailObject *) sourceMail +- (void) _fetchAttachmentsFromMail: (SOGoMailObject *) sourceMail { unsigned int count, max; - NSArray *paths, *bodies; + NSArray *parts, *paths, *bodies; NSData *body; NSDictionary *currentInfo; NGHashMap *response; + parts = [sourceMail fetchFileAttachmentKeys]; max = [parts count]; if (max > 0) { @@ -817,7 +817,7 @@ - (void) fetchMailForEditing: (SOGoMailObject *) sourceMail [sourceMail fetchCoreInfos]; - [self _fetchAttachments: [sourceMail fetchFileAttachmentKeys] fromMail: sourceMail]; + [self _fetchAttachmentsFromMail: sourceMail]; info = [NSMutableDictionary dictionaryWithCapacity: 16]; subject = [sourceMail subject]; if ([subject length] > 0) @@ -859,7 +859,7 @@ - (void) fetchMailForEditing: (SOGoMailObject *) sourceMail - (void) fetchMailForReplying: (SOGoMailObject *) sourceMail toAll: (BOOL) toAll { - NSString *contentForReply, *msgID; + NSString *msgID; NSMutableDictionary *info; NGImap4Envelope *sourceEnvelope; @@ -874,8 +874,7 @@ - (void) fetchMailForReplying: (SOGoMailObject *) sourceMail msgID = [sourceEnvelope messageID]; if ([msgID length] > 0) [self setInReplyTo: msgID]; - contentForReply = [sourceMail contentForReply]; - [self setText: contentForReply]; + [self setText: [sourceMail contentForReply]]; [self setHeaders: info]; [self setSourceURL: [sourceMail imap4URLString]]; [self setSourceFlag: @"Answered"]; @@ -890,6 +889,7 @@ - (void) fetchMailForForwarding: (SOGoMailObject *) sourceMail NSDictionary *info, *attachment; NSString *signature, *nl; SOGoUserDefaults *ud; + BOOL asInline; [sourceMail fetchCoreInfos]; @@ -907,10 +907,11 @@ - (void) fetchMailForForwarding: (SOGoMailObject *) sourceMail /* attach message */ ud = [[context activeUser] userDefaults]; - if ([[ud mailMessageForwarding] isEqualToString: @"inline"]) + asInline = [[ud mailMessageForwarding] isEqualToString: @"inline"]; + if (asInline) { - [self setText: [sourceMail contentForInlineForward]]; - [self _fetchAttachments: [sourceMail fetchFileAttachmentKeys] fromMail: sourceMail]; + [self setText: [sourceMail contentForReply]]; + [self _fetchAttachmentsFromMail: sourceMail]; } else { @@ -931,6 +932,11 @@ - (void) fetchMailForForwarding: (SOGoMailObject *) sourceMail } [self storeInfo]; + + if (!asInline) + // When the user has chosen to forward messages as attachment, immediately save the message + // to the IMAP store so the user can eventually view the attached file from the Web interface + [self save]; } /* accessors */ @@ -949,6 +955,10 @@ - (NSString *) sender /* attachments */ +// +// Return the attributes (name, size and mime body part) of the files found in the draft folder +// on the local filesystem +// - (NSArray *) fetchAttachmentAttrs { NSMutableArray *ma; @@ -971,7 +981,7 @@ - (NSArray *) fetchAttachmentAttrs { fileAttrs = [fm fileAttributesAtPath: [self pathToAttachmentWithName: filename] traverseLink: YES]; bodyPart = [self bodyPartForAttachmentWithName: filename]; - [ma addObject: [NSDictionary dictionaryWithObjectsAndKeys: filename, @"name", + [ma addObject: [NSDictionary dictionaryWithObjectsAndKeys: filename, @"filename", [fileAttrs objectForKey: @"NSFileSize"], @"size", bodyPart, @"part", nil]]; } @@ -1233,8 +1243,8 @@ - (NGMimeBodyPart *) bodyPartForAttachmentWithName: (NSString *) _name /* check attachment */ fm = [NSFileManager defaultManager]; - p = [self pathToAttachmentWithName:_name]; - if (![fm isReadableFileAtPath:p]) { + p = [self pathToAttachmentWithName: _name]; + if (![fm isReadableFileAtPath: p]) { [self errorWithFormat: @"did not find attachment: '%@'", _name]; return nil; } @@ -1243,21 +1253,21 @@ - (NGMimeBodyPart *) bodyPartForAttachmentWithName: (NSString *) _name /* prepare header of body part */ - map = [[[NGMutableHashMap alloc] initWithCapacity:4] autorelease]; + map = [[[NGMutableHashMap alloc] initWithCapacity: 4] autorelease]; if ((s = [self contentTypeForAttachmentWithName:_name]) != nil) { - [map setObject:s forKey: @"content-type"]; + [map setObject: s forKey: @"content-type"]; if ([s hasPrefix: @"text/plain"] || [s hasPrefix: @"text/html"]) attachAsString = YES; else if ([s hasPrefix: @"message/rfc822"]) attachAsRFC822 = YES; } - if ((s = [self contentDispositionForAttachmentWithName:_name])) + if ((s = [self contentDispositionForAttachmentWithName: _name])) { NGMimeContentDispositionHeaderField *o; o = [[NGMimeContentDispositionHeaderField alloc] initWithString: s]; - [map setObject:o forKey: @"content-disposition"]; + [map setObject: o forKey: @"content-disposition"]; [o release]; } @@ -1292,7 +1302,6 @@ - (NGMimeBodyPart *) bodyPartForAttachmentWithName: (NSString *) _name if (attachAsRFC822) { [map setObject: @"8bit" forKey: @"content-transfer-encoding"]; - [map setObject: @"inline" forKey: @"content-disposition"]; } else { @@ -1331,7 +1340,7 @@ - (NSArray *) bodyPartsForAllAttachments for (i = 0; i < count; i++) { - bodyPart = [self bodyPartForAttachmentWithName: [[attrs objectAtIndex: i] objectForKey: @"name"]]; + bodyPart = [self bodyPartForAttachmentWithName: [[attrs objectAtIndex: i] objectForKey: @"filename"]]; [bodyParts addObject: bodyPart]; } From d51e1da57f6ce9f9dabffcb5cf3480a82be501aa Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 8 Jan 2014 15:02:41 -0500 Subject: [PATCH 049/214] Increase height of signature editor --- UI/WebServerResources/UIxPreferences.css | 4 ++-- UI/WebServerResources/UIxPreferences.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/UI/WebServerResources/UIxPreferences.css b/UI/WebServerResources/UIxPreferences.css index 44347670de..79ae4286ae 100644 --- a/UI/WebServerResources/UIxPreferences.css +++ b/UI/WebServerResources/UIxPreferences.css @@ -221,14 +221,14 @@ P.infoMessage#passwordError left: 10px; width: auto !important; right: 10px; - top: 50px; } + top: 0px; } #cke_signature, #cke_signature div { padding: 0px; } #signature { width: 100%; - height: 90px; + height: 170px; margin: 0px auto; margin-bottom: 10px; } diff --git a/UI/WebServerResources/UIxPreferences.js b/UI/WebServerResources/UIxPreferences.js index dcbd1b3fd1..6b0761912e 100644 --- a/UI/WebServerResources/UIxPreferences.js +++ b/UI/WebServerResources/UIxPreferences.js @@ -591,7 +591,7 @@ function onMailIdentitySignatureClick(event) { if ($("composeMessagesType").value != 0) { CKEDITOR.replace('signature', - { height: "70px", + { height: "150px", toolbar: [['Bold', 'Italic', '-', 'Link', 'Font','FontSize','-','TextColor', 'BGColor'] From d603a8672e72aeb0d3d51decd1455f9dfc193cac Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 9 Jan 2014 09:13:11 -0500 Subject: [PATCH 050/214] Consider 'background' attribute as unsafe When loading a message, background attributes will be disabled if the user as chosen to not automatically load external images. Fixes #2437 --- NEWS | 2 +- UI/MailPartViewers/UIxMailPartHTMLViewer.m | 3 +- UI/WebServerResources/MailerUI.js | 68 +++++++++------------- 3 files changed, 29 insertions(+), 44 deletions(-) diff --git a/NEWS b/NEWS index 8be96b5a82..aa7e844345 100644 --- a/NEWS +++ b/NEWS @@ -17,7 +17,7 @@ Enhancements - format time in attendees invitation window according to the user's locale Bug fixes - - + - don't load 'background' attribute (#2437) 2.1.1b (2013-12-04) ------------------- diff --git a/UI/MailPartViewers/UIxMailPartHTMLViewer.m b/UI/MailPartViewers/UIxMailPartHTMLViewer.m index e4623a006f..e9e45fbbc0 100644 --- a/UI/MailPartViewers/UIxMailPartHTMLViewer.m +++ b/UI/MailPartViewers/UIxMailPartHTMLViewer.m @@ -542,7 +542,8 @@ - (void) startElement: (NSString *) _localName else skipAttribute = YES; } - else if (([name isEqualToString: @"data"] + else if ([name isEqualToString: @"background"] || + ([name isEqualToString: @"data"] || [name isEqualToString: @"classid"]) && [lowerName isEqualToString: @"object"]) { diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index a6ee19318c..6379dc68f9 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -1249,37 +1249,23 @@ function loadMessage(msguid) { return seenStateHasChanged; } +/** + * Hide the "Load Images" button when there's no unsafe content +*/ function configureLoadImagesButton() { - // We show/hide the "Load Images" button var loadImagesButton = $("loadImagesButton"); - var content = $("messageContent"); - var hiddenImgs = []; - var imgs = content.select("IMG"); - $(imgs).each(function(img) { - var unsafeSrc = img.getAttribute("unsafe-src"); - if (unsafeSrc) { - hiddenImgs.push(img); - } - }); - content.hiddenImgs = hiddenImgs; - - var hiddenObjects = []; - var objects = content.select("OBJECT"); - $(objects).each(function(obj) { - if (obj.getAttribute("unsafe-data") - || obj.getAttribute("unsafe-classid")) { - hiddenObjects.push(obj); - } - }); - content.hiddenObjects = hiddenObjects; - if (typeof(loadImagesButton) == "undefined" || loadImagesButton == null ) { return; } - if ((hiddenImgs.length + hiddenObjects.length) == 0) { + var content = $("messageContent"); + var unsafeElements = content.select('[unsafe-src], [unsafe-data], [unsafe-classid], [unsafe-background]'); + if (unsafeElements.length == 0) { loadImagesButton.setStyle({ display: 'none' }); } + else { + content.hiddenElements = unsafeElements; + } } function configureSignatureFlagImage() { @@ -1586,24 +1572,18 @@ function onMessageLoadImages(event) { function loadRemoteImages() { var content = $("messageContent"); - $(content.hiddenImgs).each(function(img) { - var unSafeSrc = img.getAttribute("unsafe-src"); - log ("unsafesrc: " + unSafeSrc); - img.src = img.getAttribute("unsafe-src"); - }); - content.hiddenImgs = null; - $(content.hiddenObjects).each(function(obj) { - var unSafeData = obj.getAttribute("unsafe-data"); - if (unSafeData) { - obj.setAttribute("data", unSafeData); - } - var unSafeClassId = obj.getAttribute("unsafe-classid"); - if (unSafeClassId) { - obj.setAttribute("classid", unSafeClassId); - } + if (content.hiddenElements) { + $(content.hiddenElements).each(function(element) { + ['src', 'data', 'classid', 'background'].each(function(attr) { + var unsafeAttr = element.readAttribute('unsafe-' + attr); + if (unsafeAttr) { + log ('unsafe ' + attr + ': ' + unsafeAttr); + element.writeAttribute(attr, unsafeAttr); + } + }); }); - content.hiddenObjects = null; - + content.hiddenElements = null; + } var loadImagesButton = $("loadImagesButton"); if (loadImagesButton) loadImagesButton.setStyle({ display: 'none' }); @@ -2831,8 +2811,6 @@ function getMenus() { "-", null, onMenuSharing ], addressMenu: [ newContactFromEmail, newEmailTo ], - moveMailboxMenu: mailAccounts.collect(function (account) { return account.asCSSIdentifier() }), - copyMailboxMenu: mailAccounts.collect(function (account) { return account.asCSSIdentifier() }), messageListMenu: [ onMenuOpenMessage, "-", onMenuReplyToSender, onMenuReplyToAll, @@ -2872,6 +2850,12 @@ function getMenus() { setSearchCriteria ] }; + + if (typeof mailAccounts != 'undefined') { + menus['moveMailboxMenu'] = mailAccounts.collect(function (account) { return account.asCSSIdentifier() }); + menus['copyMailboxMenu'] = mailAccounts.collect(function (account) { return account.asCSSIdentifier() }); + } + var labelMenu = $("label-menu"); if (labelMenu) { labelMenu.prepareVisibility = onLabelMenuPrepareVisibility; From 2d683ffc7791d766f353be39391cca20c012bcde Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Jan 2014 20:40:25 -0500 Subject: [PATCH 051/214] Always capitalize HTTP headers --- SoObjects/SOGo/SOGoDefaults.plist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SoObjects/SOGo/SOGoDefaults.plist b/SoObjects/SOGo/SOGoDefaults.plist index fe89d6c5c6..f9bb2fef0d 100644 --- a/SoObjects/SOGo/SOGoDefaults.plist +++ b/SoObjects/SOGo/SOGoDefaults.plist @@ -3,7 +3,7 @@ SxVMemLimit = 384; WOLogFile = "/var/log/sogo/sogo.log"; WOPidFile = "/var/run/sogo/sogo.pid"; - + WOHTTPAdaptorCapitalizeHeaders = YES; WOPort = "127.0.0.1:20000"; NGImap4ConnectionStringSeparator = "/"; From ca541d7299f4aa93dbf8eeaced497ddcbebfab19 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Jan 2014 20:41:16 -0500 Subject: [PATCH 052/214] Cleanups in conf file --- Apache/SOGo.conf | 6 ------ 1 file changed, 6 deletions(-) diff --git a/Apache/SOGo.conf b/Apache/SOGo.conf index e065c3240d..8db25c8354 100644 --- a/Apache/SOGo.conf +++ b/Apache/SOGo.conf @@ -2,8 +2,6 @@ Alias /SOGo.woa/WebServerResources/ \ /usr/lib/GNUstep/SOGo/WebServerResources/ Alias /SOGo/WebServerResources/ \ /usr/lib/GNUstep/SOGo/WebServerResources/ -AliasMatch /SOGo/so/ControlPanel/Products/(.*)/Resources/(.*) \ - /usr/lib/GNUstep/SOGo/$1.SOGo/Resources/$2 AllowOverride None @@ -18,10 +16,6 @@ AliasMatch /SOGo/so/ControlPanel/Products/(.*)/Resources/(.*) \ - - SetHandler default-handler - - ## Uncomment the following to enable proxy-side authentication, you will then ## need to set the "SOGoTrustProxyAuthentication" SOGo user default to YES and ## adjust the "x-webobjects-remote-user" proxy header in the "Proxy" section From ed97407578d74351e8e2fb2002a949a0168039f2 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Jan 2014 20:42:16 -0500 Subject: [PATCH 053/214] Dropped old data types --- UI/WebServerResources/MailerUI.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index 6379dc68f9..77382c61b4 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -637,7 +637,7 @@ function onMailboxTreeItemClick(event) { } else { var datatype = this.parentNode.getAttribute("datatype"); - if (datatype == 'draft' || datatype == 'draft/folder' || datatype == 'sent' || datatype == 'sent/folder') + if (datatype == 'draft' || datatype == 'sent') toggleAddressColumn("from", "to"); else toggleAddressColumn("to", "from"); From a24d809e4061056be6082b310bae1b9d8edb6883 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Jan 2014 21:06:31 -0500 Subject: [PATCH 054/214] Minor code/copyright/authors cleanups --- Main/SOGo+DAV.m | 4 +--- Main/SOGo.m | 2 +- OpenChange/MAPIStoreMailFolder.m | 4 +--- SoObjects/Appointments/MSExchangeFreeBusy.m | 4 +--- .../Appointments/SOGoCalendarComponent.h | 5 +---- SoObjects/Appointments/SOGoTaskObject.h | 8 +++++--- SoObjects/Contacts/NGVCard+SOGo.m | 4 +--- SoObjects/Contacts/SOGoContactGCSEntry.h | 4 +--- SoObjects/Contacts/SOGoContactGCSFolder.m | 2 +- SoObjects/Contacts/SOGoContactObject.h | 8 +++++--- SoObjects/Contacts/SOGoContactSourceFolder.h | 4 +--- SoObjects/Contacts/SOGoContactSourceFolder.m | 4 +--- SoObjects/Mailer/SOGoMailManager.h | 6 +++--- SoObjects/SOGo/NSArray+DAV.m | 4 +--- SoObjects/SOGo/SOGoDAVAuthenticator.h | 19 ++++--------------- SoObjects/SOGo/SOGoFolder.h | 4 +--- SoObjects/SOGo/SOGoParentFolder.h | 4 +--- SoObjects/SOGo/SOGoUserDefaults.h | 1 + SoObjects/SOGo/SOGoUserFolder.h | 7 ++++--- SoObjects/SOGo/SOGoWebAuthenticator.h | 6 +----- SoObjects/SOGo/SOGoWebAuthenticator.m | 5 +---- UI/Contacts/UIxContactView.m | 2 +- UI/MailPartViewers/UIxMailRenderingContext.m | 2 +- UI/MainUI/SOGoRootPage.m | 4 ++-- 24 files changed, 41 insertions(+), 76 deletions(-) diff --git a/Main/SOGo+DAV.m b/Main/SOGo+DAV.m index 67f0b3a6ad..256abdba9c 100644 --- a/Main/SOGo+DAV.m +++ b/Main/SOGo+DAV.m @@ -1,8 +1,6 @@ /* SOGo+DAV.m - this file is part of SOGo * - * Copyright (C) 2010 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2010-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/Main/SOGo.m b/Main/SOGo.m index d8bc896239..2eb4a9bd84 100644 --- a/Main/SOGo.m +++ b/Main/SOGo.m @@ -1,5 +1,5 @@ /* - Copyright (C) 2005-2011 Inverse inc. + Copyright (C) 2005-2014 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo diff --git a/OpenChange/MAPIStoreMailFolder.m b/OpenChange/MAPIStoreMailFolder.m index 3aa86688d3..bcc0253ef9 100644 --- a/OpenChange/MAPIStoreMailFolder.m +++ b/OpenChange/MAPIStoreMailFolder.m @@ -1,8 +1,6 @@ /* MAPIStoreMailFolder.m - this file is part of SOGo * - * Copyright (C) 2011-2012 Inverse inc - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2011-2013 Inverse inc * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Appointments/MSExchangeFreeBusy.m b/SoObjects/Appointments/MSExchangeFreeBusy.m index c11ca9f317..57ae29e5da 100644 --- a/SoObjects/Appointments/MSExchangeFreeBusy.m +++ b/SoObjects/Appointments/MSExchangeFreeBusy.m @@ -1,8 +1,6 @@ /* MSExchangeFreeBusy.m - this file is part of SOGo * - * Copyright (C) 2012 Inverse inc. - * - * Author: Francis Lachapelle + * Copyright (C) 2012-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Appointments/SOGoCalendarComponent.h b/SoObjects/Appointments/SOGoCalendarComponent.h index 3512339c26..61aca5c3d5 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.h +++ b/SoObjects/Appointments/SOGoCalendarComponent.h @@ -1,9 +1,6 @@ /* SOGoCalendarComponent.h - this file is part of SOGo * - * Copyright (C) 2006-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Francis Lachapelle + * Copyright (C) 2006-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Appointments/SOGoTaskObject.h b/SoObjects/Appointments/SOGoTaskObject.h index c369e6fb10..6b5d27d604 100644 --- a/SoObjects/Appointments/SOGoTaskObject.h +++ b/SoObjects/Appointments/SOGoTaskObject.h @@ -1,14 +1,16 @@ /* + + Copyright (C) 2006-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG - This file is part of OpenGroupware.org. + This file is part of SOGo. - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. diff --git a/SoObjects/Contacts/NGVCard+SOGo.m b/SoObjects/Contacts/NGVCard+SOGo.m index 1f26f81fdd..5e5a6b7749 100644 --- a/SoObjects/Contacts/NGVCard+SOGo.m +++ b/SoObjects/Contacts/NGVCard+SOGo.m @@ -1,8 +1,6 @@ /* NGVCard+SOGo.m - this file is part of SOGo * - * Copyright (C) 2009 Inverse inc. - * - * Author: Cyril Robert + * Copyright (C) 2009-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Contacts/SOGoContactGCSEntry.h b/SoObjects/Contacts/SOGoContactGCSEntry.h index f9d6a7e181..20fb4961fc 100644 --- a/SoObjects/Contacts/SOGoContactGCSEntry.h +++ b/SoObjects/Contacts/SOGoContactGCSEntry.h @@ -1,8 +1,6 @@ /* SOGoContactGCSEntry.h - this file is part of SOGo * - * Copyright (C) 2006-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Contacts/SOGoContactGCSFolder.m b/SoObjects/Contacts/SOGoContactGCSFolder.m index 7b8bfdac43..290f5d27c5 100644 --- a/SoObjects/Contacts/SOGoContactGCSFolder.m +++ b/SoObjects/Contacts/SOGoContactGCSFolder.m @@ -1,5 +1,5 @@ /* - Copyright (C) 2006-2011 Inverse inc. + Copyright (C) 2006-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. diff --git a/SoObjects/Contacts/SOGoContactObject.h b/SoObjects/Contacts/SOGoContactObject.h index e49219a918..3131a9f42c 100644 --- a/SoObjects/Contacts/SOGoContactObject.h +++ b/SoObjects/Contacts/SOGoContactObject.h @@ -1,14 +1,16 @@ /* + + Copyright (C) 2006-2014 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG - This file is part of OpenGroupware.org. + This file is part of SOGo. - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. diff --git a/SoObjects/Contacts/SOGoContactSourceFolder.h b/SoObjects/Contacts/SOGoContactSourceFolder.h index d37b1c6312..610cf63df0 100644 --- a/SoObjects/Contacts/SOGoContactSourceFolder.h +++ b/SoObjects/Contacts/SOGoContactSourceFolder.h @@ -1,8 +1,6 @@ /* SOGoContactSourceFolder.h - this file is part of SOGo * - * Copyright (C) 2006-2009 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Contacts/SOGoContactSourceFolder.m b/SoObjects/Contacts/SOGoContactSourceFolder.m index 2e78af33d4..19e726a963 100644 --- a/SoObjects/Contacts/SOGoContactSourceFolder.m +++ b/SoObjects/Contacts/SOGoContactSourceFolder.m @@ -1,8 +1,6 @@ /* SOGoContactSourceFolder.m - this file is part of SOGo * - * Copyright (C) 2006-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Mailer/SOGoMailManager.h b/SoObjects/Mailer/SOGoMailManager.h index fdd743656d..54b8002d01 100644 --- a/SoObjects/Mailer/SOGoMailManager.h +++ b/SoObjects/Mailer/SOGoMailManager.h @@ -1,14 +1,14 @@ /* Copyright (C) 2004-2005 SKYRIX Software AG - This file is part of OpenGroupware.org. + This file is part of SOGo. - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. diff --git a/SoObjects/SOGo/NSArray+DAV.m b/SoObjects/SOGo/NSArray+DAV.m index 836c980361..fe2e1a6d74 100644 --- a/SoObjects/SOGo/NSArray+DAV.m +++ b/SoObjects/SOGo/NSArray+DAV.m @@ -1,8 +1,6 @@ /* NSArray+DAV.m - this file is part of SOGo * - * Copyright (C) 2008 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2008-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/SOGo/SOGoDAVAuthenticator.h b/SoObjects/SOGo/SOGoDAVAuthenticator.h index 0691cb2bfc..acbdb23499 100644 --- a/SoObjects/SOGo/SOGoDAVAuthenticator.h +++ b/SoObjects/SOGo/SOGoDAVAuthenticator.h @@ -1,14 +1,15 @@ /* + Copyright (C) 2007-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG - This file is part of OpenGroupware.org. + This file is part of SOGo. - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. @@ -26,18 +27,6 @@ #import "SOGoAuthenticator.h" -/* - SOGoDAVAuthenticator - - This just overrides the login/pwd check method and always returns YES since - the password is already checked in Apache. -*/ - -@class NSUserDefaults; -@class NSString; - -@class SOGoUser; - @interface SOGoDAVAuthenticator : SoHTTPAuthenticator + (id) sharedSOGoDAVAuthenticator; diff --git a/SoObjects/SOGo/SOGoFolder.h b/SoObjects/SOGo/SOGoFolder.h index 1fa1c6ef8c..186036db3b 100644 --- a/SoObjects/SOGo/SOGoFolder.h +++ b/SoObjects/SOGo/SOGoFolder.h @@ -1,8 +1,6 @@ /* SOGoFolder.h - this file is part of SOGo * - * Copyright (C) 2007 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/SOGo/SOGoParentFolder.h b/SoObjects/SOGo/SOGoParentFolder.h index c0041879bf..0413faafd6 100644 --- a/SoObjects/SOGo/SOGoParentFolder.h +++ b/SoObjects/SOGo/SOGoParentFolder.h @@ -1,8 +1,6 @@ /* SOGoParentFolder.h - this file is part of SOGo * - * Copyright (C) 2006-2009 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/SOGo/SOGoUserDefaults.h b/SoObjects/SOGo/SOGoUserDefaults.h index 05c3fd34cd..83d6c18bb0 100644 --- a/SoObjects/SOGo/SOGoUserDefaults.h +++ b/SoObjects/SOGo/SOGoUserDefaults.h @@ -25,6 +25,7 @@ @class NSArray; @class NSDictionary; +@class NSMutableDictionary; @class NSString; @class NSTimeZone; diff --git a/SoObjects/SOGo/SOGoUserFolder.h b/SoObjects/SOGo/SOGoUserFolder.h index 2cb02aa3e0..fb1c1441f0 100644 --- a/SoObjects/SOGo/SOGoUserFolder.h +++ b/SoObjects/SOGo/SOGoUserFolder.h @@ -1,14 +1,15 @@ /* + Copyright (C) 2006-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG - This file is part of OpenGroupware.org. + This file is part of SOGo. - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. diff --git a/SoObjects/SOGo/SOGoWebAuthenticator.h b/SoObjects/SOGo/SOGoWebAuthenticator.h index a2d9eeb5b1..e225105bfd 100644 --- a/SoObjects/SOGo/SOGoWebAuthenticator.h +++ b/SoObjects/SOGo/SOGoWebAuthenticator.h @@ -1,10 +1,6 @@ /* SOGoWebAuthenticator.h - this file is part of SOGo * - * Copyright (C) 2007-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Ludovic Marcotte - * Francis Lachapelle + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/SOGo/SOGoWebAuthenticator.m b/SoObjects/SOGo/SOGoWebAuthenticator.m index 923ee7d155..6d6aacad1a 100644 --- a/SoObjects/SOGo/SOGoWebAuthenticator.m +++ b/SoObjects/SOGo/SOGoWebAuthenticator.m @@ -1,9 +1,6 @@ /* SOGoWebAuthenticator.m - this file is part of SOGo * - * Copyright (C) 2007-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Francis Lachapelle + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/UI/Contacts/UIxContactView.m b/UI/Contacts/UIxContactView.m index 392aabdaf7..830864fe73 100644 --- a/UI/Contacts/UIxContactView.m +++ b/UI/Contacts/UIxContactView.m @@ -1,6 +1,6 @@ /* Copyright (C) 2004 SKYRIX Software AG - Copyright (C) 2005-2012 Inverse inc. + Copyright (C) 2005-2014 Inverse inc. This file is part of SOGo. diff --git a/UI/MailPartViewers/UIxMailRenderingContext.m b/UI/MailPartViewers/UIxMailRenderingContext.m index 03df297cc7..ca76bc7394 100644 --- a/UI/MailPartViewers/UIxMailRenderingContext.m +++ b/UI/MailPartViewers/UIxMailRenderingContext.m @@ -1,5 +1,5 @@ /* - Copyright (C) 2007-2009 Inverse inc. + Copyright (C) 2007-2013 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. diff --git a/UI/MainUI/SOGoRootPage.m b/UI/MainUI/SOGoRootPage.m index 5f10391f45..d8e32c1db7 100644 --- a/UI/MainUI/SOGoRootPage.m +++ b/UI/MainUI/SOGoRootPage.m @@ -1,6 +1,6 @@ /* - Copyright (C) 2006-2011 Inverse inc. + Copyright (C) 2006-2014 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. @@ -537,7 +537,7 @@ - (NSString *) version { NSString *aString; - aString = [NSString stringWithString: SOGoVersion ]; + aString = [NSString stringWithString: SOGoVersion]; return aString; } From 7260c07628c90450035381f975141f230522dc1e Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 9 Jan 2014 21:10:48 -0500 Subject: [PATCH 055/214] More cleanups --- UI/MainUI/SOGoSAML2Actions.m | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/UI/MainUI/SOGoSAML2Actions.m b/UI/MainUI/SOGoSAML2Actions.m index d081f63d27..53ab5d1dbe 100644 --- a/UI/MainUI/SOGoSAML2Actions.m +++ b/UI/MainUI/SOGoSAML2Actions.m @@ -1,8 +1,6 @@ /* SOGoSAML2Actions.m - this file is part of SOGo * - * Copyright (C) 2012 Inverse inc - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2012-2014 Inverse inc * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From afcd92fb719ca01767519d19b61320f8e8315e05 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:01:39 -0500 Subject: [PATCH 056/214] Load the ActiveSync bundle code and bind it --- UI/MainUI/GNUmakefile | 1 + UI/MainUI/SOGoMicrosoftActiveSyncActions.m | 67 ++++++++++++++++++++++ UI/MainUI/product.plist | 12 ++-- 3 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 UI/MainUI/SOGoMicrosoftActiveSyncActions.m diff --git a/UI/MainUI/GNUmakefile b/UI/MainUI/GNUmakefile index b2f8986c44..62837f3073 100644 --- a/UI/MainUI/GNUmakefile +++ b/UI/MainUI/GNUmakefile @@ -14,6 +14,7 @@ MainUI_OBJC_FILES += \ SOGoUserHomePage.m \ SOGoBrowsersPanel.m \ UIxLoading.m \ + SOGoMicrosoftActiveSyncActions.m \ ifeq ($(saml2_config), yes) MainUI_OBJC_FILES += SOGoSAML2Actions.m diff --git a/UI/MainUI/SOGoMicrosoftActiveSyncActions.m b/UI/MainUI/SOGoMicrosoftActiveSyncActions.m new file mode 100644 index 0000000000..a00344fba1 --- /dev/null +++ b/UI/MainUI/SOGoMicrosoftActiveSyncActions.m @@ -0,0 +1,67 @@ +/* + Copyright (C) 2014 Inverse inc. + + This file is part of SOGo. + + SOGo is free software; you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with SOGo; see the file COPYING. If not, write to the + Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA + 02111-1307, USA. +*/ + +#import + +#import + +#import +#import +#import +#import + +@interface SOGoMicrosoftActiveSyncActions : WODirectAction +@end + +@implementation SOGoMicrosoftActiveSyncActions + +// +// Invoked on POST actions +// +- (WOResponse *) microsoftServerActiveSyncAction +{ + WOResponse *response; + WORequest *request; + NSBundle *bundle; + NSException *ex; + id dispatcher; + Class clazz; + + request = [context request]; + response = [self responseWithStatus: 200]; + + bundle = [NSBundle bundleForClass: NSClassFromString(@"ActiveSyncProduct")]; + clazz = [bundle classNamed: @"SOGoActiveSyncDispatcher"]; + dispatcher = [[clazz alloc] init]; + + ex = [dispatcher dispatchRequest: request inResponse: response context: context]; + + if (ex) + { + return [NSException exceptionWithHTTPStatus: 500]; + } + + RELEASE(dispatcher); + + return response; +} + +@end diff --git a/UI/MainUI/product.plist b/UI/MainUI/product.plist index 399eaad059..e5c9d2ec18 100644 --- a/UI/MainUI/product.plist +++ b/UI/MainUI/product.plist @@ -101,8 +101,7 @@ SOGo = { // TODO: move decls to class slots = { toolbar = { - value = "none"; // keep this in order to avoid lookups on username - // "toolbar" + value = "none"; // keep this in order to avoid lookups on username "toolbar" }; }; methods = { @@ -114,6 +113,11 @@ protectedBy = ""; pageName = "SOGoRootPage"; }; + Microsoft-Server-ActiveSync = { + protectedBy = ""; + actionClass = "SOGoMicrosoftActiveSyncActions"; + actionName = "microsoftServerActiveSync"; + }; casProxy = { protectedBy = ""; pageName = "SOGoRootPage"; @@ -229,9 +233,5 @@ }; }; }; - // SOGoCustomGroupFolder = { - // methods = { - // }; - // }; }; } From 689a1e94e0e8b3e8b60debcffd413765629c8d94 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:02:32 -0500 Subject: [PATCH 057/214] Sample Active Sync configuration --- Apache/SOGo.conf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Apache/SOGo.conf b/Apache/SOGo.conf index 8db25c8354..9748c10511 100644 --- a/Apache/SOGo.conf +++ b/Apache/SOGo.conf @@ -42,6 +42,11 @@ ProxyPreserveHost On ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0 +# +# Enable to use Microsoft Active Sync support +# +#ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:20000/SOGo/Microsoft-Server-ActiveSync retry=0 + ## adjust the following to your configuration RequestHeader set "x-webobjects-server-port" "443" From 13721b961b2224b3918b421c13816d045c86e322 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:03:50 -0500 Subject: [PATCH 058/214] Add an easy way to get the personal contact folder, just like we have for calendars --- SoObjects/SOGo/SOGoUser.h | 2 ++ SoObjects/SOGo/SOGoUser.m | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/SoObjects/SOGo/SOGoUser.h b/SoObjects/SOGo/SOGoUser.h index e1737cd2f5..fad66e4e87 100644 --- a/SoObjects/SOGo/SOGoUser.h +++ b/SoObjects/SOGo/SOGoUser.h @@ -45,6 +45,7 @@ @class SOGoAppointmentFolder; @class SOGoAppointmentFolders; +@class SOGoContactFolder; @class SOGoDateFormatter; @class SOGoDomainDefaults; @class SOGoUserDefaults; @@ -130,6 +131,7 @@ - (SOGoUserFolder *) homeFolderInContext: (id) context; - (SOGoAppointmentFolders *) calendarsFolderInContext: (WOContext *) context; - (SOGoAppointmentFolder *) personalCalendarFolderInContext: (WOContext *) context; +- (SOGoContactFolder *) personalContactsFolderInContext: (WOContext *) context; @end diff --git a/SoObjects/SOGo/SOGoUser.m b/SoObjects/SOGo/SOGoUser.m index c46331d783..8f2768571e 100644 --- a/SoObjects/SOGo/SOGoUser.m +++ b/SoObjects/SOGo/SOGoUser.m @@ -841,13 +841,25 @@ - (SOGoAppointmentFolders *) calendarsFolderInContext: (WOContext *) context acquire: NO]; } -- (SOGoAppointmentFolder *) - personalCalendarFolderInContext: (WOContext *) context +- (SOGoAppointmentFolder *) personalCalendarFolderInContext: (WOContext *) context { return [[self calendarsFolderInContext: context] lookupPersonalFolder: @"personal" ignoringRights: YES]; } +- (SOGoContactFolder *) personalContactsFolderInContext: (WOContext *) context +{ + SOGoContactFolders *folders; + + folders = [[self homeFolderInContext: context] lookupName: @"Contacts" + inContext: context + acquire: NO]; + + return [folders lookupPersonalFolder: @"personal" + ignoringRights: YES]; +} + + - (NSArray *) rolesForObject: (NSObject *) object inContext: (WOContext *) context { From a4a3a735b47d14af91ca2b822eb74292f9930cfe Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:06:53 -0500 Subject: [PATCH 059/214] Moved the folder metadata generation to SoObject and added 'tag based' sync'ing support for IMAP --- SoObjects/Mailer/GNUmakefile | 4 + SoObjects/Mailer/SOGoMailAccount.h | 3 +- SoObjects/Mailer/SOGoMailAccount.m | 127 +++++++++++++++++++++++- SoObjects/Mailer/SOGoMailFolder.h | 2 + SoObjects/Mailer/SOGoMailFolder.m | 140 ++++++++++++++++++++++++++ SoObjects/Mailer/SOGoMailObject.h | 2 + UI/MailerUI/UIxMailAccountActions.h | 10 +- UI/MailerUI/UIxMailAccountActions.m | 148 +--------------------------- UI/MailerUI/UIxMailFolderActions.m | 5 +- 9 files changed, 279 insertions(+), 162 deletions(-) diff --git a/SoObjects/Mailer/GNUmakefile b/SoObjects/Mailer/GNUmakefile index d96f672aff..92ca7d45bf 100644 --- a/SoObjects/Mailer/GNUmakefile +++ b/SoObjects/Mailer/GNUmakefile @@ -92,6 +92,10 @@ Mailer_RESOURCE_FILES += \ SOGoMailWelshReply.wo +Mailer_LANGUAGES = English French + +Mailer_LOCALIZED_RESOURCE_FILES = Localizable.strings + ADDITIONAL_INCLUDE_DIRS += -I../../SOPE/ ADDITIONAL_INCLUDE_DIRS += $(shell xml2-config --cflags) ADDITIONAL_LIB_DIRS += -L../../SOPE/GDLContentStore/obj/ diff --git a/SoObjects/Mailer/SOGoMailAccount.h b/SoObjects/Mailer/SOGoMailAccount.h index 011a7620ee..cec85d61e4 100644 --- a/SoObjects/Mailer/SOGoMailAccount.h +++ b/SoObjects/Mailer/SOGoMailAccount.h @@ -80,10 +80,11 @@ typedef enum { - (NSArray *) toManyRelationshipKeysWithNamespaces: (BOOL) withNSs; - (NSArray *) allFolderPaths; +- (NSArray *) allFoldersMetadata; + - (BOOL) isInDraftsFolder; /* special folders */ - - (NSString *) inboxFolderNameInContext: (id)_ctx; - (NSString *) draftsFolderNameInContext: (id)_ctx; - (NSString *) sentFolderNameInContext: (id)_ctx; diff --git a/SoObjects/Mailer/SOGoMailAccount.m b/SoObjects/Mailer/SOGoMailAccount.m index c396b04d1d..276bc208ab 100644 --- a/SoObjects/Mailer/SOGoMailAccount.m +++ b/SoObjects/Mailer/SOGoMailAccount.m @@ -21,6 +21,7 @@ */ #import +#import #import #import #import @@ -47,6 +48,7 @@ #import #import #import +#import #import #import "SOGoDraftsFolder.h" @@ -339,6 +341,9 @@ - (NSArray *) _allFoldersFromNS: (NSString *) namespace return folders; } +// +// +// - (NSArray *) allFolderPaths { NSMutableArray *folderPaths, *namespaces; @@ -382,8 +387,128 @@ - (NSArray *) allFolderPaths return folderPaths; } -/* IMAP4 */ +// +// +// +- (NSString *) _folderType: (NSString *) folderName +{ + NSString *folderType; + + if ([folderName isEqualToString: [NSString stringWithFormat: @"/%@", inboxFolderName]]) + folderType = @"inbox"; + else if ([folderName isEqualToString: [NSString stringWithFormat: @"/%@", [self draftsFolderNameInContext: context]]]) + folderType = @"draft"; + else if ([folderName isEqualToString: [NSString stringWithFormat: @"/%@", [self sentFolderNameInContext: context]]]) + folderType = @"sent"; + else if ([folderName isEqualToString: [NSString stringWithFormat: @"/%@", [self trashFolderNameInContext: context]]]) + folderType = @"trash"; + else + folderType = @"folder"; + + return folderType; +} + +- (NSString *) _parentForFolder: (NSString *) folderName + foldersList: (NSArray *) theFolders +{ + NSArray *pathComponents; + NSString *s; + int i; + + pathComponents = [folderName pathComponents]; + s = [[[pathComponents subarrayWithRange: NSMakeRange(0,[pathComponents count]-1)] componentsJoinedByString: @"/"] substringFromIndex: 1]; + + for (i = 0; i < [theFolders count]; i++) + { + if ([s isEqualToString: [theFolders objectAtIndex: i]]) + return s; + } + + return nil; +} + +// +// +// +- (NSArray *) allFoldersMetadata +{ + NSString *currentFolder, *currentDecodedFolder, *currentDisplayName, *currentFolderType, *login, *fullName, *parent; + NSMutableArray *pathComponents, *folders; + SOGoUserManager *userManager; + NSEnumerator *rawFolders; + NSDictionary *folderData; + NSAutoreleasePool *pool; + NSArray *allFolderPaths; + + allFolderPaths = [self allFolderPaths]; + rawFolders = [allFolderPaths objectEnumerator]; + + folders = [NSMutableArray array]; + while ((currentFolder = [rawFolders nextObject])) + { + // Using a local pool to avoid using too many file descriptors. This could + // happen with tons of mailboxes under "Other Users" as LDAP connections + // are never reused and "autoreleased" at the end. This loop would consume + // lots of LDAP connections during its execution. + pool = [[NSAutoreleasePool alloc] init]; + + currentDecodedFolder = [currentFolder stringByDecodingImap4FolderName]; + currentFolderType = [self _folderType: currentFolder]; + + // We translate the "Other Users" and "Shared Folders" namespaces. + // While we're at it, we also translate the user's mailbox names + // to the full name of the person. + if (otherUsersFolderName && [currentDecodedFolder hasPrefix: [NSString stringWithFormat: @"/%@", otherUsersFolderName]]) + { + // We have a string like /Other Users/lmarcotte/... under Cyrus, but we could + // also have something like /shared under Dovecot. So we swap the username only + // if we have one, of course. + pathComponents = [NSMutableArray arrayWithArray: [currentDecodedFolder pathComponents]]; + + if ([pathComponents count] > 2) + { + login = [pathComponents objectAtIndex: 2]; + userManager = [SOGoUserManager sharedUserManager]; + fullName = [userManager getCNForUID: login]; + [pathComponents removeObjectsInRange: NSMakeRange(0,3)]; + + currentDisplayName = [NSString stringWithFormat: @"/%@/%@/%@", + [self labelForKey: @"OtherUsersFolderName"], + (fullName != nil ? fullName : login), + [pathComponents componentsJoinedByString: @"/"]]; + + } + else + { + currentDisplayName = [NSString stringWithFormat: @"/%@%@", + [self labelForKey: @"OtherUsersFolderName"], + [currentDecodedFolder substringFromIndex: + [otherUsersFolderName length]+1]]; + } + } + else if (sharedFoldersName && [currentDecodedFolder hasPrefix: [NSString stringWithFormat: @"/%@", sharedFoldersName]]) + currentDisplayName = [NSString stringWithFormat: @"/%@%@", [self labelForKey: @"SharedFoldersName"], + [currentDecodedFolder substringFromIndex: [sharedFoldersName length]+1]]; + else + currentDisplayName = currentDecodedFolder; + + parent = [self _parentForFolder: currentFolder foldersList: allFolderPaths]; + + folderData = [NSDictionary dictionaryWithObjectsAndKeys: + currentFolder, @"path", + currentFolderType, @"type", + currentDisplayName, @"displayName", + parent, @"parent", + nil]; + [folders addObject: folderData]; + [pool release]; + } + return folders; +} + + +/* IMAP4 */ - (NSDictionary *) _mailAccount { NSDictionary *mailAccount; diff --git a/SoObjects/Mailer/SOGoMailFolder.h b/SoObjects/Mailer/SOGoMailFolder.h index f80702ce58..2c9855bbed 100644 --- a/SoObjects/Mailer/SOGoMailFolder.h +++ b/SoObjects/Mailer/SOGoMailFolder.h @@ -94,6 +94,8 @@ - (NSCalendarDate *) mostRecentMessageDate; +- (NSString *) davCollectionTag; + /* flags */ - (NSException *) addFlagsToAllMessages: (id) _f; diff --git a/SoObjects/Mailer/SOGoMailFolder.m b/SoObjects/Mailer/SOGoMailFolder.m index 925ec4adeb..76fb700736 100644 --- a/SoObjects/Mailer/SOGoMailFolder.m +++ b/SoObjects/Mailer/SOGoMailFolder.m @@ -24,6 +24,7 @@ #import #import #import +#import #import #import @@ -1924,6 +1925,145 @@ - (NSCalendarDate *) mostRecentMessageDate return date; } +- (NSString *) davCollectionTag +{ + NSString *tag; + + tag = @"-1"; + + if ([self imap4Connection]) + { + NSString *folderName; + NSDictionary *result; + + folderName = [imap4 imap4FolderNameForURL: [self imap4URL]]; + + [[imap4 client] unselect]; + + result = [[imap4 client] select: folderName]; + + tag = [NSString stringWithFormat: @"%@-%@", [result objectForKey: @"uidnext"], [result objectForKey: @"highestmodseq"]]; + } + + return tag; +} + +// +// FIXME - see below for code refactoring with MAPIStoreMailFolder. +// +- (EOQualifier *) _nonDeletedQualifier +{ + static EOQualifier *nonDeletedQualifier = nil; + EOQualifier *deletedQualifier; + + if (!nonDeletedQualifier) + { + deletedQualifier + = [[EOKeyValueQualifier alloc] + initWithKey: @"FLAGS" + operatorSelector: EOQualifierOperatorContains + value: [NSArray arrayWithObject: @"Deleted"]]; + nonDeletedQualifier = [[EONotQualifier alloc] + initWithQualifier: deletedQualifier]; + [deletedQualifier release]; + } + + return nonDeletedQualifier; +} + + + +// +// Check updated items +// +// +// +// . uid fetch 1:* (FLAGS) (changedsince 171) +// +// Deleted: "UID FETCH 1:* (UID) (CHANGEDSINCE 171 VANISHED)" + +// fetchUIDsOfVanishedItems .. +// +// . uid fetch 1:* (FLAGS) (changedsince 176 vanished) +// * VANISHED (EARLIER) 36 +// +// +// FIXME: refactor MAPIStoreMailFolder.m - synchroniseCache to use this method +// +- (NSArray *) syncTokenFieldsWithProperties: (NSArray *) theProperties + matchingSyncToken: (NSString *) theSyncToken +{ + EOQualifier *searchQualifier; + NSMutableArray *allTokens; + NSArray *a, *uids; + NSDictionary *d; + + int uidnext, highestmodseq, i; + + allTokens = [NSMutableArray array]; + a = [theSyncToken componentsSeparatedByString: @"-"]; + uidnext = [[a objectAtIndex: 0] intValue]; + highestmodseq = [[a objectAtIndex: 1] intValue]; + + // We first make sure QRESYNC is enabled + [[self imap4Connection] enableExtensions: [NSArray arrayWithObject: @"QRESYNC"]]; + + + // We fetch new messages and modified messages + if (highestmodseq) + { + EOKeyValueQualifier *kvQualifier; + NSNumber *nextModseq; + + nextModseq = [NSNumber numberWithUnsignedLongLong: highestmodseq + 1]; + kvQualifier = [[EOKeyValueQualifier alloc] + initWithKey: @"modseq" + operatorSelector: EOQualifierOperatorGreaterThanOrEqualTo + value: nextModseq]; + searchQualifier = [[EOAndQualifier alloc] + initWithQualifiers: + kvQualifier, [self _nonDeletedQualifier], nil]; + [kvQualifier release]; + [searchQualifier autorelease]; + } + else + { + searchQualifier = [self _nonDeletedQualifier]; + } + + // we fetch modified or added uids + uids = [self fetchUIDsMatchingQualifier: searchQualifier + sortOrdering: nil]; + + for (i = 0; i < [uids count]; i++) + { + // New messages + if ([[uids objectAtIndex: i] intValue] >= uidnext) + { + d = [NSDictionary dictionaryWithObject: @"added" forKey: [uids objectAtIndex: i]]; + } + // Changed messages + else + { + d = [NSDictionary dictionaryWithObject: @"changed" forKey: [uids objectAtIndex: i]]; + } + + [allTokens addObject: d]; + } + + + // We fetch deleted ones + uids = [self fetchUIDsOfVanishedItems: highestmodseq]; + + for (i = 0; i < [uids count]; i++) + { + d = [NSDictionary dictionaryWithObject: @"deleted" forKey: [uids objectAtIndex: i]]; + [allTokens addObject: d]; + } + + return allTokens; +} + @end /* SOGoMailFolder */ @implementation SOGoSpecialMailFolder diff --git a/SoObjects/Mailer/SOGoMailObject.h b/SoObjects/Mailer/SOGoMailObject.h index 182efeea01..46c1d7c14b 100644 --- a/SoObjects/Mailer/SOGoMailObject.h +++ b/SoObjects/Mailer/SOGoMailObject.h @@ -81,6 +81,8 @@ NSArray *SOGoMailCoreInfoKeys; - (id) bodyStructure; - (id) lookupInfoForBodyPart:(id)_path; +- (id) lookupImap4BodyPartKey: (NSString *) _key + inContext: (id) _ctx; /* content */ diff --git a/UI/MailerUI/UIxMailAccountActions.h b/UI/MailerUI/UIxMailAccountActions.h index 08874fcf39..286b543c50 100644 --- a/UI/MailerUI/UIxMailAccountActions.h +++ b/UI/MailerUI/UIxMailAccountActions.h @@ -1,8 +1,6 @@ /* UIxMailAccountActions.h - this file is part of SOGo * - * Copyright (C) 2007-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -29,12 +27,6 @@ @interface UIxMailAccountActions : WODirectAction { - NSString *inboxFolderName; - NSString *draftsFolderName; - NSString *sentFolderName; - NSString *trashFolderName; - NSString *otherUsersFolderName; - NSString *sharedFoldersName; } - (WOResponse *) listMailboxesAction; diff --git a/UI/MailerUI/UIxMailAccountActions.m b/UI/MailerUI/UIxMailAccountActions.m index a06411294a..e331ab4abd 100644 --- a/UI/MailerUI/UIxMailAccountActions.m +++ b/UI/MailerUI/UIxMailAccountActions.m @@ -2,9 +2,6 @@ * * Copyright (C) 2007-2013 Inverse inc. * - * Author: Wolfgang Sourdeau - * Ludovic Marcotte - * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) @@ -51,159 +48,16 @@ @implementation UIxMailAccountActions -- (id) init -{ - if ((self = [super init])) - { - inboxFolderName = nil; - draftsFolderName = nil; - sentFolderName = nil; - trashFolderName = nil; - otherUsersFolderName = nil; - sharedFoldersName = nil; - } - - return self; -} - -- (void) dealloc -{ - [inboxFolderName release]; - [draftsFolderName release]; - [sentFolderName release]; - [trashFolderName release]; - [otherUsersFolderName release]; - [sharedFoldersName release]; - [super dealloc]; -} - -- (NSString *) _folderType: (NSString *) folderName -{ - NSString *folderType; - SOGoMailAccount *co; - NSArray *specialFolders; - - if (!inboxFolderName) - { - co = [self clientObject]; - specialFolders = [[NSArray arrayWithObjects: - [co inboxFolderNameInContext: context], - [co draftsFolderNameInContext: context], - [co sentFolderNameInContext: context], - [co trashFolderNameInContext: context], - [co otherUsersFolderNameInContext: context], - [co sharedFoldersNameInContext: context], - nil] stringsWithFormat: @"/%@"]; - ASSIGN(inboxFolderName, [specialFolders objectAtIndex: 0]); - ASSIGN(draftsFolderName, [specialFolders objectAtIndex: 1]); - ASSIGN(sentFolderName, [specialFolders objectAtIndex: 2]); - ASSIGN(trashFolderName, [specialFolders objectAtIndex: 3]); - if ([specialFolders count] > 4) - ASSIGN(otherUsersFolderName, [specialFolders objectAtIndex: 4]); - if ([specialFolders count] > 5) - ASSIGN(sharedFoldersName, [specialFolders objectAtIndex: 5]); - } - - if ([folderName isEqualToString: inboxFolderName]) - folderType = @"inbox"; - else if ([folderName isEqualToString: draftsFolderName]) - folderType = @"draft"; - else if ([folderName isEqualToString: sentFolderName]) - folderType = @"sent"; - else if ([folderName isEqualToString: trashFolderName]) - folderType = @"trash"; - else if ([folderName hasPrefix: [NSString stringWithFormat: @"%@/", draftsFolderName]]) - folderType = @"draft/folder"; - else if ([folderName hasPrefix: [NSString stringWithFormat: @"%@/", sentFolderName]]) - folderType = @"sent/folder"; - else - folderType = @"folder"; - - return folderType; -} - -- (NSArray *) _jsonFolders: (NSEnumerator *) rawFolders -{ - NSString *currentFolder, *currentDecodedFolder, *currentDisplayName, *currentFolderType, *login, *fullName; - NSMutableArray *pathComponents; - SOGoUserManager *userManager; - NSDictionary *folderData; - NSMutableArray *folders; - NSAutoreleasePool *pool; - - folders = [NSMutableArray array]; - while ((currentFolder = [rawFolders nextObject])) - { - // Using a local pool to avoid using too many file descriptors. This could - // happen with tons of mailboxes under "Other Users" as LDAP connections - // are never reused and "autoreleased" at the end. This loop would consume - // lots of LDAP connections during its execution. - pool = [[NSAutoreleasePool alloc] init]; - - currentDecodedFolder = [currentFolder stringByDecodingImap4FolderName]; - currentFolderType = [self _folderType: currentFolder]; - - // We translate the "Other Users" and "Shared Folders" namespaces. - // While we're at it, we also translate the user's mailbox names - // to the full name of the person. - if (otherUsersFolderName && [currentDecodedFolder hasPrefix: otherUsersFolderName]) - { - // We have a string like /Other Users/lmarcotte/... under Cyrus, but we could - // also have something like /shared under Dovecot. So we swap the username only - // if we have one, of course. - pathComponents = [NSMutableArray arrayWithArray: [currentDecodedFolder pathComponents]]; - - if ([pathComponents count] > 2) - { - login = [pathComponents objectAtIndex: 2]; - userManager = [SOGoUserManager sharedUserManager]; - fullName = [userManager getCNForUID: login]; - [pathComponents removeObjectsInRange: NSMakeRange(0,3)]; - - currentDisplayName = [NSString stringWithFormat: @"/%@/%@/%@", - [self labelForKey: @"OtherUsersFolderName"], - (fullName != nil ? fullName : login), - [pathComponents componentsJoinedByString: @"/"]]; - - } - else - { - currentDisplayName = [NSString stringWithFormat: @"/%@%@", - [self labelForKey: @"OtherUsersFolderName"], - [currentDecodedFolder substringFromIndex: - [otherUsersFolderName length]]]; - } - } - else if (sharedFoldersName && [currentDecodedFolder hasPrefix: sharedFoldersName]) - currentDisplayName = [NSString stringWithFormat: @"/%@%@", [self labelForKey: @"SharedFoldersName"], - [currentDecodedFolder substringFromIndex: [sharedFoldersName length]]]; - else - currentDisplayName = currentDecodedFolder; - - folderData = [NSDictionary dictionaryWithObjectsAndKeys: - currentFolder, @"path", - currentFolderType, @"type", - currentDisplayName, @"displayName", - nil]; - [folders addObject: folderData]; - [pool release]; - } - - return folders; -} - - (WOResponse *) listMailboxesAction { SOGoMailAccount *co; - NSEnumerator *rawFolders; NSArray *folders; NSDictionary *data; WOResponse *response; co = [self clientObject]; - rawFolders = [[co allFolderPaths] objectEnumerator]; - folders = [self _jsonFolders: rawFolders]; + folders = [co allFoldersMetadata]; data = [NSDictionary dictionaryWithObjectsAndKeys: folders, @"mailboxes", nil]; response = [self responseWithStatus: 200 diff --git a/UI/MailerUI/UIxMailFolderActions.m b/UI/MailerUI/UIxMailFolderActions.m index 41d4afc5e6..6e3c4e4d56 100644 --- a/UI/MailerUI/UIxMailFolderActions.m +++ b/UI/MailerUI/UIxMailFolderActions.m @@ -1,9 +1,6 @@ /* UIxMailFolderActions.m - this file is part of SOGo * - * Copyright (C) 2007-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Francis Lachapelle + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From e217ffb6c4896c10d6ddaa784880a74d6e19fdcd Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:08:12 -0500 Subject: [PATCH 060/214] Code generalization to be usable from the ActiveSync bundle --- SoObjects/Contacts/SOGoContactFolders.h | 6 +++--- SoObjects/Contacts/SOGoContactFolders.m | 14 ++++++++++++-- SoObjects/Contacts/SOGoContactGCSEntry.m | 10 +++++++--- 3 files changed, 22 insertions(+), 8 deletions(-) diff --git a/SoObjects/Contacts/SOGoContactFolders.h b/SoObjects/Contacts/SOGoContactFolders.h index 820efb92db..1b685c85b9 100644 --- a/SoObjects/Contacts/SOGoContactFolders.h +++ b/SoObjects/Contacts/SOGoContactFolders.h @@ -1,8 +1,6 @@ /* SOGoContactFolders.h - this file is part of SOGo * - * Copyright (C) 2006, 2007 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -31,6 +29,8 @@ withDisplayName: (NSString *) newDisplayName; - (NSException *) removeLDAPAddressBook: (NSString *) sourceID; +- (NSDictionary *) systemSources; + @end #endif /* SOGOCONTACTFOLDERS_H */ diff --git a/SoObjects/Contacts/SOGoContactFolders.m b/SoObjects/Contacts/SOGoContactFolders.m index 5bf9ba7bd4..3c3e938f0d 100644 --- a/SoObjects/Contacts/SOGoContactFolders.m +++ b/SoObjects/Contacts/SOGoContactFolders.m @@ -110,8 +110,9 @@ - (NSException *) appendPersonalSources return result; } -- (NSException *) appendSystemSources +- (NSDictionary *) systemSources { + NSMutableDictionary *systemSources; SOGoUserManager *um; SOGoSystemDefaults *sd; NSEnumerator *sourceIDs, *domains; @@ -119,6 +120,8 @@ - (NSException *) appendSystemSources SOGoContactSourceFolder *currentFolder; SOGoUser *currentUser; + systemSources = [NSMutableDictionary dictionary]; + if (! ([[context request] isIPhoneAddressBookApp] && ![[context request] isAndroid])) { @@ -143,13 +146,20 @@ - (NSException *) appendSystemSources andDisplayName: srcDisplayName inContainer: self]; [currentFolder setSource: [um sourceWithID: currentSourceID]]; - [subFolders setObject: currentFolder forKey: currentSourceID]; + [systemSources setObject: currentFolder forKey: currentSourceID]; } domain = [domains nextObject]; } } } + return systemSources; +} + +- (NSException *) appendSystemSources +{ + [subFolders addEntriesFromDictionary: [self systemSources]]; + return nil; } diff --git a/SoObjects/Contacts/SOGoContactGCSEntry.m b/SoObjects/Contacts/SOGoContactGCSEntry.m index 436cb92c4c..6e3365d4e0 100644 --- a/SoObjects/Contacts/SOGoContactGCSEntry.m +++ b/SoObjects/Contacts/SOGoContactGCSEntry.m @@ -1,8 +1,6 @@ /* SOGoContactGCSEntry.h - this file is part of SOGo * - * Copyright (C) 2006-2012 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2006-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -159,6 +157,12 @@ - (NSException *) save return result; } +- (NSException *) saveComponent: (NGVCard *) newCard +{ + ASSIGN(card, newCard); + return [self save]; +} + - (NSException *) saveContentString: (NSString *) newContent baseVersion: (unsigned int) newVersion { From ae200360ba17719e8794231b5d43c4f232b4aa71 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:09:02 -0500 Subject: [PATCH 061/214] Code cleanups --- SoObjects/SOGo/SOGoGCSFolder.h | 5 ++++- SoObjects/SOGo/SOGoGCSFolder.m | 14 ++++++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/SoObjects/SOGo/SOGoGCSFolder.h b/SoObjects/SOGo/SOGoGCSFolder.h index 9eab2ff908..7b23b0a525 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.h +++ b/SoObjects/SOGo/SOGoGCSFolder.h @@ -1,6 +1,6 @@ /* Copyright (C) 2004-2005 SKYRIX Software AG - Copyright (C) 2006-2010 Inverse inc. + Copyright (C) 2006-2013 Inverse inc. This file is part of SOGo. @@ -125,6 +125,9 @@ - (NSString *) davCollectionTag; +- (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties + matchingSyncToken: (NSString *) syncToken; + /* multiget helper */ - (WOResponse *) performMultigetInContext: (WOContext *) queryContext inNamespace: (NSString *) namespace; diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index f5b2ee691b..99a92ce401 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -1093,8 +1093,14 @@ - (NSString *) additionalWebdavSyncFilters return @""; } -- (NSArray *) _fetchSyncTokenFields: (NSDictionary *) properties - matchingSyncToken: (NSString *) syncToken +// +// Method used to get all changes since a particular sync token +// +// It'll return standard properties (c_name, c_creationdate, etc...) +// of new, modified and deleted components. +// +- (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties + matchingSyncToken: (NSString *) syncToken { /* TODO: - validation: @@ -1400,8 +1406,8 @@ - (WOResponse *) davSyncCollection: (WOContext *) localContext propElement = [(NGDOMNodeWithChildren *) documentElement firstElementWithTag: @"prop" inNamespace: XMLNS_WEBDAV]; properties = [self parseDAVRequestedProperties: propElement]; - records = [self _fetchSyncTokenFields: properties - matchingSyncToken: syncToken]; + records = [self syncTokenFieldsWithProperties: properties + matchingSyncToken: syncToken]; [self _appendComponentProperties: [properties allKeys] fromRecords: records matchingSyncToken: [syncToken intValue] From e21b30d768c06b2507dba6e2b35e511534affab0 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:09:32 -0500 Subject: [PATCH 062/214] Code cleanups --- SoObjects/SOGo/SOGoObject.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SoObjects/SOGo/SOGoObject.h b/SoObjects/SOGo/SOGoObject.h index 172f45a600..114b0c55dc 100644 --- a/SoObjects/SOGo/SOGoObject.h +++ b/SoObjects/SOGo/SOGoObject.h @@ -122,7 +122,7 @@ - (NSException *)delete; - (id) DELETEAction: (id) _ctx; -- (id)GETAction:(id)_ctx; +- (id) GETAction:(id)_ctx; /* etag support */ From 1d9febb51139924ac7563c43e7ceeb9d2f54f4b2 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:10:16 -0500 Subject: [PATCH 063/214] Correctly handle the Active Sync requests --- SoObjects/SOGo/SOGoUserFolder.h | 6 +++++- SoObjects/SOGo/WORequest+SOGo.m | 6 ++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/SoObjects/SOGo/SOGoUserFolder.h b/SoObjects/SOGo/SOGoUserFolder.h index fb1c1441f0..4ee6bdd65c 100644 --- a/SoObjects/SOGo/SOGoUserFolder.h +++ b/SoObjects/SOGo/SOGoUserFolder.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2006-2013 Inverse inc. + Copyright (C) 2006-2014 Inverse inc. Copyright (C) 2004-2005 SKYRIX Software AG This file is part of SOGo. @@ -40,6 +40,7 @@ @class NSDictionary; @class NSString; @class WOContext; +@class SOGoAppointmentFolders; @class SOGoContactFolders; @interface SOGoUserFolder : SOGoFolder @@ -60,6 +61,9 @@ - (BOOL) collectionDavKey: (NSString *) key matches: (NSString *) value; +- (SOGoAppointmentFolders *) privateCalendars: (NSString *) key + inContext: (WOContext *) localContext; + - (SOGoContactFolders *) privateContacts: (NSString *) _key inContext: (WOContext *) _ctx; diff --git a/SoObjects/SOGo/WORequest+SOGo.m b/SoObjects/SOGo/WORequest+SOGo.m index 9c803a0f1a..b622fb1d14 100644 --- a/SoObjects/SOGo/WORequest+SOGo.m +++ b/SoObjects/SOGo/WORequest+SOGo.m @@ -1,8 +1,6 @@ /* WORequest+SOGo.m - this file is part of SOGo * - * Copyright (C) 2007-2010 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2007-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -37,7 +35,7 @@ @implementation WORequest (SOGoSOPEUtilities) - (BOOL) handledByDefaultHandler { #warning this should be changed someday - return ![[self requestHandlerKey] isEqualToString:@"dav"]; + return !([[self requestHandlerKey] isEqualToString: @"dav"] || [[self requestHandlerKey] isEqualToString: @"Microsoft-Server-ActiveSync"]); } - (NSArray *) _propertiesOfElement: (id ) startElement From 7355eae1dc7a04eac5cc46b4e95e57a461a71db6 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:10:53 -0500 Subject: [PATCH 064/214] Now able to set Active Sync metadata in the user settings --- SoObjects/SOGo/SOGoUserSettings.h | 12 +++++++++--- SoObjects/SOGo/SOGoUserSettings.m | 28 +++++++++++++++++++++++++--- 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/SoObjects/SOGo/SOGoUserSettings.h b/SoObjects/SOGo/SOGoUserSettings.h index 6a07fb9625..673f148c84 100644 --- a/SoObjects/SOGo/SOGoUserSettings.h +++ b/SoObjects/SOGo/SOGoUserSettings.h @@ -1,8 +1,6 @@ /* SOGoUserSettings.h - this file is part of SOGo * - * Copyright (C) 2009 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2009-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -26,6 +24,7 @@ #import "SOGoDefaultsSource.h" @class NSArray; +@class NSMutableDictionary; @class NSString; @interface SOGoUserSettings : SOGoDefaultsSource @@ -35,6 +34,13 @@ - (NSArray *) subscribedCalendars; - (NSArray *) subscribedAddressBooks; + +/* Microsoft Active Sync support */ +- (void) setMicrosoftActiveSyncMetadata: (NSDictionary *) theMetadata + forDevice: (NSString *) theDeviceID; + +- (NSMutableDictionary *) microsoftActiveSyncMetadataForDevice: (NSString *) theDevice; + @end #endif /* SOGOUSERSETTINGS_H */ diff --git a/SoObjects/SOGo/SOGoUserSettings.m b/SoObjects/SOGo/SOGoUserSettings.m index 9739e6f850..107b5d8352 100644 --- a/SoObjects/SOGo/SOGoUserSettings.m +++ b/SoObjects/SOGo/SOGoUserSettings.m @@ -1,8 +1,6 @@ /* SOGoUserSettings.m - this file is part of SOGo * - * Copyright (C) 2009-2011 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2009-2013 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -71,4 +69,28 @@ - (NSArray *) subscribedAddressBooks return [self _subscribedFoldersForModule: @"Contacts"]; } +/* Microsoft Active Sync support */ +- (void) setMicrosoftActiveSyncMetadata: (NSDictionary *) theMetadata + forDevice: (NSString *) theDeviceID +{ + if (theMetadata && theDeviceID) + { + NSMutableDictionary *d; + + d = [NSMutableDictionary dictionaryWithDictionary: [self dictionaryForKey: @"SOGoMicrosoftActiveSyncMetadata"]]; + [d setObject: theMetadata forKey: theDeviceID]; + + [self setObject: d forKey: @"SOGoMicrosoftActiveSyncMetadata"]; + } +} + +- (NSMutableDictionary *) microsoftActiveSyncMetadataForDevice: (NSString *) theDevice +{ + NSDictionary *d; + + d = [self dictionaryForKey: @"SOGoMicrosoftActiveSyncMetadata"]; + + return [NSMutableDictionary dictionaryWithDictionary: [d objectForKey: theDevice]]; +} + @end From e5bc46710c715a9dc2e1801bba236fa7e7848b3d Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:12:53 -0500 Subject: [PATCH 065/214] Initial Active Sync Support! --- ActiveSync/ActiveSyncProduct.m | 30 + ActiveSync/GNUmakefile | 37 + ActiveSync/GNUmakefile.preamble | 1 + ActiveSync/LICENSE | 12 + ActiveSync/NGDOMElement+ActiveSync.h | 34 + ActiveSync/NGDOMElement+ActiveSync.m | 73 + ActiveSync/NGMimeMessage+ActiveSync.h | 33 + ActiveSync/NGMimeMessage+ActiveSync.m | 52 + ActiveSync/NGVCard+ActiveSync.h | 35 + ActiveSync/NGVCard+ActiveSync.m | 92 ++ ActiveSync/NSData+ActiveSync.h | 32 + ActiveSync/NSData+ActiveSync.m | 111 ++ ActiveSync/NSDate+ActiveSync.h | 33 + ActiveSync/NSDate+ActiveSync.m | 32 + ActiveSync/NSString+ActiveSync.h | 38 + ActiveSync/NSString+ActiveSync.m | 113 ++ ActiveSync/README | 6 + ActiveSync/SOGoActiveSyncConstants.h | 32 + ActiveSync/SOGoActiveSyncDispatcher+Sync.h | 37 + ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 910 ++++++++++++ ActiveSync/SOGoActiveSyncDispatcher.h | 33 + ActiveSync/SOGoActiveSyncDispatcher.m | 1219 +++++++++++++++++ ActiveSync/SOGoMailObject+ActiveSync.h | 34 + ActiveSync/SOGoMailObject+ActiveSync.m | 296 ++++ .../SoObjectWebDAVDispatcher+ActiveSync.m | 91 ++ ActiveSync/common.make | 36 + ActiveSync/iCalEvent+ActiveSync.h | 35 + ActiveSync/iCalEvent+ActiveSync.m | 113 ++ ActiveSync/iCalTimeZone+ActiveSync.h | 33 + ActiveSync/iCalTimeZone+ActiveSync.m | 153 +++ ActiveSync/iCalToDo+ActiveSync.h | 34 + ActiveSync/iCalToDo+ActiveSync.m | 85 ++ ActiveSync/product.plist | 3 + 33 files changed, 3908 insertions(+) create mode 100644 ActiveSync/ActiveSyncProduct.m create mode 100644 ActiveSync/GNUmakefile create mode 100644 ActiveSync/GNUmakefile.preamble create mode 100644 ActiveSync/LICENSE create mode 100644 ActiveSync/NGDOMElement+ActiveSync.h create mode 100644 ActiveSync/NGDOMElement+ActiveSync.m create mode 100644 ActiveSync/NGMimeMessage+ActiveSync.h create mode 100644 ActiveSync/NGMimeMessage+ActiveSync.m create mode 100644 ActiveSync/NGVCard+ActiveSync.h create mode 100644 ActiveSync/NGVCard+ActiveSync.m create mode 100644 ActiveSync/NSData+ActiveSync.h create mode 100644 ActiveSync/NSData+ActiveSync.m create mode 100644 ActiveSync/NSDate+ActiveSync.h create mode 100644 ActiveSync/NSDate+ActiveSync.m create mode 100644 ActiveSync/NSString+ActiveSync.h create mode 100644 ActiveSync/NSString+ActiveSync.m create mode 100644 ActiveSync/README create mode 100644 ActiveSync/SOGoActiveSyncConstants.h create mode 100644 ActiveSync/SOGoActiveSyncDispatcher+Sync.h create mode 100644 ActiveSync/SOGoActiveSyncDispatcher+Sync.m create mode 100644 ActiveSync/SOGoActiveSyncDispatcher.h create mode 100644 ActiveSync/SOGoActiveSyncDispatcher.m create mode 100644 ActiveSync/SOGoMailObject+ActiveSync.h create mode 100644 ActiveSync/SOGoMailObject+ActiveSync.m create mode 100644 ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m create mode 100644 ActiveSync/common.make create mode 100644 ActiveSync/iCalEvent+ActiveSync.h create mode 100644 ActiveSync/iCalEvent+ActiveSync.m create mode 100644 ActiveSync/iCalTimeZone+ActiveSync.h create mode 100644 ActiveSync/iCalTimeZone+ActiveSync.m create mode 100644 ActiveSync/iCalToDo+ActiveSync.h create mode 100644 ActiveSync/iCalToDo+ActiveSync.m create mode 100644 ActiveSync/product.plist diff --git a/ActiveSync/ActiveSyncProduct.m b/ActiveSync/ActiveSyncProduct.m new file mode 100644 index 0000000000..9eda82a0bd --- /dev/null +++ b/ActiveSync/ActiveSyncProduct.m @@ -0,0 +1,30 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#import + +@interface ActiveSyncProduct : NSObject +{ +} + +@end + +@implementation ActiveSyncProduct +@end /* ActiveSyncProduct */ diff --git a/ActiveSync/GNUmakefile b/ActiveSync/GNUmakefile new file mode 100644 index 0000000000..e6d2d2ed7c --- /dev/null +++ b/ActiveSync/GNUmakefile @@ -0,0 +1,37 @@ + +# GNUstep makefile + +include common.make + +BUNDLE_NAME = ActiveSync + +ActiveSync_PRINCIPAL_CLASS = ActiveSyncProduct + +ActiveSync_OBJC_FILES = \ + ActiveSyncProduct.m \ + iCalEvent+ActiveSync.m \ + iCalTimeZone+ActiveSync.m \ + iCalToDo+ActiveSync.m \ + NSData+ActiveSync.m \ + NSDate+ActiveSync.m \ + NGDOMElement+ActiveSync.m \ + NGMimeMessage+ActiveSync.m \ + NGVCard+ActiveSync.m \ + NSString+ActiveSync.m \ + SOGoActiveSyncDispatcher.m \ + SOGoActiveSyncDispatcher+Sync.m \ + SOGoMailObject+ActiveSync.m \ + SoObjectWebDAVDispatcher+ActiveSync.m + +ActiveSync_RESOURCE_FILES += \ + product.plist + +ADDITIONAL_OBJCFLAGS += -Wno-deprecated-declarations +ADDITIONAL_INCLUDE_DIRS += -I../../SOPE/ -I../SoObjects/ +ADDITIONAL_LIB_DIRS += -L../../SOPE/GDLContentStore/obj/ +ADDITIONAL_INCLUDE_DIRS += -I/usr/local/include/libwbxml-1.0/wbxml/ +ADDITIONAL_LDFLAGS += -Wl,--no-as-needed -lwbxml2 + +-include GNUmakefile.preamble +include $(GNUSTEP_MAKEFILES)/bundle.make +-include GNUmakefile.postamble diff --git a/ActiveSync/GNUmakefile.preamble b/ActiveSync/GNUmakefile.preamble new file mode 100644 index 0000000000..c302ad8bea --- /dev/null +++ b/ActiveSync/GNUmakefile.preamble @@ -0,0 +1 @@ +# compilation settings diff --git a/ActiveSync/LICENSE b/ActiveSync/LICENSE new file mode 100644 index 0000000000..2f54581443 --- /dev/null +++ b/ActiveSync/LICENSE @@ -0,0 +1,12 @@ +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/ActiveSync/NGDOMElement+ActiveSync.h b/ActiveSync/NGDOMElement+ActiveSync.h new file mode 100644 index 0000000000..f4f46e6f7f --- /dev/null +++ b/ActiveSync/NGDOMElement+ActiveSync.h @@ -0,0 +1,34 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NGDOMELEMENTACTIVESYNC_H__ +#define __NGDOMELEMENTACTIVESYNC_H__ + +#import +#import + +@class NSDictionary; + +@interface NGDOMElement (ActiveSync) + +- (NSDictionary *) applicationData; + +@end + +#endif // NGDOMELEMENTACTIVESYNC diff --git a/ActiveSync/NGDOMElement+ActiveSync.m b/ActiveSync/NGDOMElement+ActiveSync.m new file mode 100644 index 0000000000..bc0e4c4fbb --- /dev/null +++ b/ActiveSync/NGDOMElement+ActiveSync.m @@ -0,0 +1,73 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#include "NGDOMElement+ActiveSync.h" + +#import +#import + +@implementation NGDOMElement (ActiveSync) + +// +// We must handle "inner data" like this: +// +// +// +// 2 +// Flag for follow up +// +// +// +- (NSDictionary *) applicationData +{ + NSMutableDictionary *data; + id children; + id element; + int i; + + data = [NSMutableDictionary dictionary]; + + children = [self childNodes]; + + for (i = 0; i < [children length]; i++) + { + element = [children objectAtIndex: i]; + + if ([element nodeType] == DOM_ELEMENT_NODE) + { + NSString *tag; + id value; + + tag = [element tagName]; + + // Handle inner data + if ([(NSArray *)[element childNodes] count] > 2) + value = [(NGDOMElement *)element applicationData]; + else + value = [[element firstChild] nodeValue]; + + if (value && tag) + [data setObject: value forKey: tag]; + } + } + + return data; +} + +@end diff --git a/ActiveSync/NGMimeMessage+ActiveSync.h b/ActiveSync/NGMimeMessage+ActiveSync.h new file mode 100644 index 0000000000..57d172862d --- /dev/null +++ b/ActiveSync/NGMimeMessage+ActiveSync.h @@ -0,0 +1,33 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NGMIMEMESSAGEACTIVESYNC_H__ +#define __NGMIMEMESSAGEACTIVESYNC_H__ + +#import + +@class NSArray; + +@interface NGMimeMessage (ActiveSync) + +- (NSArray *) allRecipients; + +@end + +#endif diff --git a/ActiveSync/NGMimeMessage+ActiveSync.m b/ActiveSync/NGMimeMessage+ActiveSync.m new file mode 100644 index 0000000000..a5c57e33f8 --- /dev/null +++ b/ActiveSync/NGMimeMessage+ActiveSync.m @@ -0,0 +1,52 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "NGMimeMessage+ActiveSync.h" + +#import +#import +#import + +#import + +@implementation NGMimeMessage (ActiveSync) + +- (NSArray *) allRecipients +{ + NSMutableArray *recipients; + NSEnumerator *enumerator; + NSString *s; + + recipients = [NSMutableArray array]; + + enumerator = [[self headersForKey: @"to"] objectEnumerator]; + while ((s = [enumerator nextObject])) + { + [recipients addObject: [s pureEMailAddress]]; + } + + enumerator = [[self headersForKey: @"cc"] objectEnumerator]; + while ((s = [enumerator nextObject])) + { + [recipients addObject: [s pureEMailAddress]]; + } + + return recipients; +} +@end diff --git a/ActiveSync/NGVCard+ActiveSync.h b/ActiveSync/NGVCard+ActiveSync.h new file mode 100644 index 0000000000..fb442ae8dc --- /dev/null +++ b/ActiveSync/NGVCard+ActiveSync.h @@ -0,0 +1,35 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NGVCARDACTIVESYNC_H__ +#define __NGVCARDACTIVESYNC_H__ + +#import + +@class NSDictionary; +@class NSString; + +@interface NGVCard (ActiveSync) + +- (NSString *) activeSyncRepresentation; +- (void) takeActiveSyncValues: (NSDictionary *) theValues; + +@end + +#endif diff --git a/ActiveSync/NGVCard+ActiveSync.m b/ActiveSync/NGVCard+ActiveSync.m new file mode 100644 index 0000000000..4d805a10af --- /dev/null +++ b/ActiveSync/NGVCard+ActiveSync.m @@ -0,0 +1,92 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "NGVCard+ActiveSync.h" + +#import +#import +#import + +#import + +@implementation NGVCard (ActiveSync) + +- (NSString *) activeSyncRepresentation +{ + NSString *firstName, *lastName; + NSMutableString *s; + CardElement *n; + + s = [NSMutableString string]; + n = [self n]; + + lastName = [n flattenedValueAtIndex: 0 forKey: @""]; + [s appendFormat: @"%@", lastName]; + + + firstName = [n flattenedValueAtIndex: 1 forKey: @""]; + [s appendFormat: @"%@", firstName]; + + return s; +} + +- (void) takeActiveSyncValues: (NSDictionary *) theValues +{ + id o; + + if ((o = [theValues objectForKey: @"CompanyName"])) + { + [self setOrg: o units: nil]; + } + + if ((o = [theValues objectForKey: @"Email1Address"])) + { + [self addEmail: o types: [NSArray arrayWithObject: @"pref"]]; + } + + if ((o = [theValues objectForKey: @"Email2Address"])) + { + [self addEmail: o types: nil]; + } + + if ((o = [theValues objectForKey: @"Email3Address"])) + { + [self addEmail: o types: nil]; + } + + [self setNWithFamily: [theValues objectForKey: @"LastName"] + given: [theValues objectForKey: @"FirstName"] + additional: nil prefixes: nil suffixes: nil]; + + if ((o = [theValues objectForKey: @"MobilePhoneNumber"])) + { + } + + if ((o = [theValues objectForKey: @"Title"])) + { + [self setTitle: o]; + } + + if ((o = [theValues objectForKey: @"WebPage"])) + { + } + +} + +@end diff --git a/ActiveSync/NSData+ActiveSync.h b/ActiveSync/NSData+ActiveSync.h new file mode 100644 index 0000000000..fd6ceb1a63 --- /dev/null +++ b/ActiveSync/NSData+ActiveSync.h @@ -0,0 +1,32 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NSDATAACTIVESYNC_H__ +#define __NSDATAACTIVESYNC_H__ + +#import + +@interface NSData (ActiveSync) + +- (NSData *) wbxml2xml; +- (NSData *) xml2wbxml; + +@end + +#endif diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m new file mode 100644 index 0000000000..f8e89b1351 --- /dev/null +++ b/ActiveSync/NSData+ActiveSync.m @@ -0,0 +1,111 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "NSData+ActiveSync.h" + +#import + +#include +#include +#include + +@implementation NSData (ActiveSync) + +- (NSData *) wbxml2xml +{ + WBXMLGenXMLParams params; + NSData *data; + + unsigned int wbxml_len, xml_len, ret; + unsigned char *wbxml, *xml; + + wbxml = (unsigned char*)[self bytes]; + wbxml_len = [self length]; + xml = NULL; + xml_len = 0; + + params.lang = WBXML_LANG_ACTIVESYNC; + params.gen_type = WBXML_GEN_XML_INDENT; + params.indent = 1; + params.keep_ignorable_ws = FALSE; + + ret = wbxml_conv_wbxml2xml_withlen(wbxml, wbxml_len, &xml, &xml_len, ¶ms); + + if (ret != WBXML_OK) + { + NSLog(@"wbxml2xmlFromContent: failed: %s\n", wbxml_errors_string(ret)); + return nil; + } + + data = [[NSData alloc] initWithBytes: xml length: xml_len]; + [data writeToFile: @"/tmp/protocol.decoded" atomically: YES]; + + free(xml); + + return AUTORELEASE(data); +} + + +- (NSData *) xml2wbxml +{ + WBXMLConvXML2WBXML *conv; + NSData *data; + + unsigned int wbxml_len, xml_len, ret; + unsigned char *wbxml, *xml; + + xml = (unsigned char*)[self bytes]; + xml_len = [self length]; + wbxml = NULL; + wbxml_len = 0; + conv = NULL; + + ret = wbxml_conv_xml2wbxml_create(&conv); + + if (ret != WBXML_OK) + { + NSLog(@"xml2wbxmlFromContent: failed: %s\n", wbxml_errors_string(ret)); + return nil; + } + + wbxml_conv_xml2wbxml_enable_preserve_whitespaces(conv); + + // From libwbxml's changelog in v0.11.0: "The public ID is set to unknown and the DTD is not included. This is required for Microsoft ActiveSync." + wbxml_conv_xml2wbxml_disable_public_id(conv); + wbxml_conv_xml2wbxml_disable_string_table(conv); + + ret = wbxml_conv_xml2wbxml_run(conv, xml, xml_len, &wbxml, &wbxml_len); + + if (ret != WBXML_OK) + { + NSLog(@"xml2wbxmlFromContent: failed: %s\n", wbxml_errors_string(ret)); + free(wbxml); + wbxml_conv_xml2wbxml_destroy(conv); + return nil; + } + + data = [[NSData alloc] initWithBytes: wbxml length: wbxml_len]; + [data writeToFile: @"/tmp/protocol.encoded" atomically: YES]; + + free(wbxml); + wbxml_conv_xml2wbxml_destroy(conv); + + return AUTORELEASE(data); +} +@end diff --git a/ActiveSync/NSDate+ActiveSync.h b/ActiveSync/NSDate+ActiveSync.h new file mode 100644 index 0000000000..89f1071052 --- /dev/null +++ b/ActiveSync/NSDate+ActiveSync.h @@ -0,0 +1,33 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NSDATEACTIVESYNC_H__ +#define __NSDATEACTIVESYNC_H__ + +#import + +@class NSString; + +@interface NSDate (ActiveSync) + +- (NSString *) activeSyncRepresentation; + +@end + +#endif diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m new file mode 100644 index 0000000000..d45c8e5b5d --- /dev/null +++ b/ActiveSync/NSDate+ActiveSync.m @@ -0,0 +1,32 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "NSDate+ActiveSync.h" + +#import +#import + +@implementation NSDate (ActiveSync) + +- (NSString *) activeSyncRepresentation +{ + return [self descriptionWithCalendarFormat: @"%Y%m%dT%H%M%SZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; +} + +@end diff --git a/ActiveSync/NSString+ActiveSync.h b/ActiveSync/NSString+ActiveSync.h new file mode 100644 index 0000000000..dfdfdde03c --- /dev/null +++ b/ActiveSync/NSString+ActiveSync.h @@ -0,0 +1,38 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NSSTRINGACTIVESYNC_H__ +#define __NSSTRINGACTIVESYNC_H__ + +#import + +#include "SOGoActiveSyncConstants.h" + +@class NSCalendarDate; + +@interface NSString (ActiveSync) + +- (int) activeSyncFolderType; +- (NSString *) realCollectionIdWithFolderType: (SOGoMicrosoftActiveSyncFolderType *) folderType; +- (NSCalendarDate *) calendarDate; +- (NSString *) deviceId; + +@end + +#endif diff --git a/ActiveSync/NSString+ActiveSync.m b/ActiveSync/NSString+ActiveSync.m new file mode 100644 index 0000000000..363cb2e29b --- /dev/null +++ b/ActiveSync/NSString+ActiveSync.m @@ -0,0 +1,113 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#include "NSString+ActiveSync.h" + +#include +#include +#include + +@implementation NSString (ActiveSync) + +- (int) activeSyncFolderType +{ + if ([self isEqualToString: @"inbox"]) + return 2; + else if ([self isEqualToString: @"draft"]) + return 3; + else if ([self isEqualToString: @"sent"]) + return 5; + else if ([self isEqualToString: @"trash"]) + return 4; + + return 12; +} + +- (NSString *) realCollectionIdWithFolderType: (SOGoMicrosoftActiveSyncFolderType *) folderType; +{ + NSString *realCollectionId; + + *folderType = ActiveSyncGenericFolder; + + if ([self hasPrefix: @"vevent/"]) + { + realCollectionId = [self substringFromIndex: 7]; + *folderType = ActiveSyncEventFolder; + } + else if ([self hasPrefix: @"vtodo/"]) + { + realCollectionId = [self substringFromIndex: 6]; + *folderType = ActiveSyncTaskFolder; + } + else if ([self hasPrefix: @"vcard/"]) + { + realCollectionId = [self substringFromIndex: 6]; + *folderType = ActiveSyncContactFolder; + } + else + { + // mail/ + realCollectionId = [self substringFromIndex: 5]; + *folderType = ActiveSyncMailFolder; + } + + return realCollectionId; +} + +// +// 2014-01-16T05:00:00.000Z +// +// See http://www.gnustep.org/resources/documentation/Developer/Base/Reference/NSCalendarDate.html#method$NSCalendarDate-initWithString$calendarFormat$ for the format details. +// +- (NSCalendarDate *) calendarDate +{ + id o; + + o = [NSCalendarDate dateWithString: self calendarFormat: @"%Y%m%dT%H%M%SZ"]; + + if (!o) + o = [NSCalendarDate dateWithString: self calendarFormat: @"%Y-%m-%dT%H:%M:%S.%FZ"]; + + return o; +} + +// +// This method extracts the "DeviceId" from a URI: +// +// /SOGo/Microsoft-Server-ActiveSync?Cmd=FolderSync&User=sogo10&DeviceId=SEC17CD1A3E9E3F2&DeviceType=SAMSUNGSGHI317M +// +- (NSString *) deviceId +{ + NSArray *components; + NSString *s; + int i; + + components = [[[self componentsSeparatedByString: @"/"] lastObject] componentsSeparatedByString: @"&"]; + + for (i = 0; i < [components count]; i++) + { + s = [components objectAtIndex: i]; + + if ([[s uppercaseString] hasPrefix: @"DEVICEID="]) + return [s substringFromIndex: 9]; + } + + return @"Unknown"; +} +@end diff --git a/ActiveSync/README b/ActiveSync/README new file mode 100644 index 0000000000..ad86348822 --- /dev/null +++ b/ActiveSync/README @@ -0,0 +1,6 @@ +In order to use this software in production environments, you need to +get a proper usage license from Microsoft. Please contact them directly +to negotiate the fees associated to your user base. + +Inverse inc. provides this software for free, but is not responsible +for anything related to its usage. diff --git a/ActiveSync/SOGoActiveSyncConstants.h b/ActiveSync/SOGoActiveSyncConstants.h new file mode 100644 index 0000000000..cfcb128bae --- /dev/null +++ b/ActiveSync/SOGoActiveSyncConstants.h @@ -0,0 +1,32 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __SOGOACTIVESYNCCONSTANTS_H__ +#define __SOGOACTIVESYNCCONSTANTS_H__ + +typedef enum +{ + ActiveSyncGenericFolder = 0, + ActiveSyncMailFolder = 1, + ActiveSyncContactFolder = 2, + ActiveSyncEventFolder = 3, + ActiveSyncTaskFolder = 4, +} SOGoMicrosoftActiveSyncFolderType; + +#endif diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.h b/ActiveSync/SOGoActiveSyncDispatcher+Sync.h new file mode 100644 index 0000000000..3de8f6a846 --- /dev/null +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.h @@ -0,0 +1,37 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __SOGOACTIVESYNCDISPATCHERSYNC_H__ +#define __SOGOACTIVESYNCDISPATCHERSYNC_H__ + +#import "SOGoActiveSyncDispatcher.h" + +#import +#import + +@class WOResponse; + +@interface SOGoActiveSyncDispatcher (Sync) + +- (void) processSync: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse; + +@end + +#endif // SOGOACTIVESYNCDISPATCHERSYNC diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m new file mode 100644 index 0000000000..1d8fe35e6c --- /dev/null +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -0,0 +1,910 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "SOGoActiveSyncDispatcher+Sync.h" + + +#import +#import +#import +#import +#import + +#import +#import +#import +#import +#import +#import +#import +#import +#import + + +#import +#import +#import +#import + + +#import +#import + +#import + +#import +#import +#import +#import +#import + +#import +#import + +#import + +#import +#import +#import +#import +#import +#import +#import + +#import +#import +#import +#import + +#import +#import +#import +#import + +#import +#import +#import + +#import +#import + +#include "iCalEvent+ActiveSync.h" +#include "iCalToDo+ActiveSync.h" +#include "NGDOMElement+ActiveSync.h" +#include "NGVCard+ActiveSync.h" +#include "NSData+ActiveSync.h" +#include "NSString+ActiveSync.h" +#include "SOGoActiveSyncConstants.h" +#include "SOGoMailObject+ActiveSync.h" + +@implementation SOGoActiveSyncDispatcher (Sync) + +- (id) collectionFromId: (NSString *) theCollectionId + type: (SOGoMicrosoftActiveSyncFolderType) theFolderType +{ + id collection; + + collection = nil; + + switch (theFolderType) + { + case ActiveSyncContactFolder: + { + collection = [[context activeUser] personalContactsFolderInContext: context]; + } + break; + case ActiveSyncEventFolder: + case ActiveSyncTaskFolder: + { + collection = [[context activeUser] personalCalendarFolderInContext: context]; + } + break; + case ActiveSyncMailFolder: + default: + { + SOGoMailAccounts *accountsFolder; + SOGoMailFolder *currentFolder; + SOGoUserFolder *userFolder; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + collection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", theCollectionId] + inContext: context + acquire: NO]; + } + } + + return collection; +} + +// +// +// +// +// +// +// 1388757902 +// vcard/personal +// +// 25 +// +// +// 1 +// 32768 +// +// +// +// +// 16 +// +// +// 1 +// +// +// Goo Inc. +// annie@broccoli.com +// Broccoli, Annie +// Annie +// Broccoli +// +// +// +// +// +// +// +// +- (void) processSyncAddCommand: (id ) theDocumentElement + inCollection: (id) theCollection + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer +{ + NSArray *additions; + NSString *clientId, *serverId; + NSDictionary *allValues; + + id anAddition, sogoObject, o; + int i; + + additions = (id)[theDocumentElement getElementsByTagName: @"Add"]; + + if ([additions count]) + { + for (i = 0; i < [additions count]; i++) + { + anAddition = [additions objectAtIndex: i]; + + clientId = [[(id)[anAddition getElementsByTagName: @"CientId"] lastObject] textValue]; + allValues = [[(id)[anAddition getElementsByTagName: @"ApplicationData"] lastObject] applicationData]; + + switch (theFolderType) + { + case ActiveSyncContactFolder: + { + serverId = [NSString stringWithFormat: @"%@.vcf", [theCollection globallyUniqueObjectId]]; + sogoObject = [[SOGoContactGCSEntry alloc] initWithName: serverId + inContainer: theCollection]; + o = [sogoObject vCard]; + } + break; + case ActiveSyncEventFolder: + { + serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; + sogoObject = [[SOGoAppointmentObject alloc] initWithName: serverId + inContainer: theCollection]; + o = [sogoObject component: YES secure: NO]; + } + break; + case ActiveSyncTaskFolder: + { + serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; + sogoObject = [[SOGoTaskObject alloc] initWithName: serverId + inContainer: theCollection]; + o = [sogoObject component: YES secure: NO]; + } + break; + case ActiveSyncMailFolder: + default: + { + // FIXME + continue; + } + } + + [o takeActiveSyncValues: allValues]; + [sogoObject saveComponent: o]; + + // Everything is fine, lets generate our response + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", clientId]; + [theBuffer appendFormat: @"%@", serverId]; + [theBuffer appendFormat: @"%d", 1]; + [theBuffer appendString: @""]; + } + } +} + +// +// +// +// +// +// +// 1387546048 +// vtodo/personal +// +// 25 +// +// +// 1 +// 32768 +// +// +// +// +// 36C5-52B36280-1-27B38F40.ics +// +// +// 1 +// +// +// foobar1 +// 1 +// 0 +// 0 +// 0 +// +// +// +// +// +// +// +- (void) processSyncChangeCommand: (id ) theDocumentElement + inCollection: (id) theCollection + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer +{ + NSDictionary *allChanges; + NSString *serverId; + NSArray *changes; + id aChange, o, sogoObject; + + int i; + + changes = (id)[theDocumentElement getElementsByTagName: @"Change"]; + + if ([changes count]) + { + for (i = 0; i < [changes count]; i++) + { + aChange = [changes objectAtIndex: i]; + + serverId = [[(id)[aChange getElementsByTagName: @"ServerId"] lastObject] textValue]; + allChanges = [[(id)[aChange getElementsByTagName: @"ApplicationData"] lastObject] applicationData]; + + // Fetch the object and apply the changes + sogoObject = [theCollection lookupName: serverId + inContext: context + acquire: NO]; + + switch (theFolderType) + { + case ActiveSyncContactFolder: + { + o = [sogoObject vCard]; + [o takeActiveSyncValues: allChanges]; + [sogoObject saveComponent: o]; + } + break; + case ActiveSyncEventFolder: + case ActiveSyncTaskFolder: + { + o = [sogoObject component: NO secure: NO]; + [o takeActiveSyncValues: allChanges]; + [sogoObject saveComponent: o]; + } + break; + case ActiveSyncMailFolder: + default: + { + [sogoObject takeActiveSyncValues: allChanges]; + } + } + + } + } +} + +// +// +// +// +// +// +// 1388764784 +// vtodo/personal +// +// 25 +// +// +// 1 +// 32768 +// +// +// +// +// 2CB5-52B36080-1-1C1D0240.ics +// +// +// +// +// +// +- (void) processSyncDeleteCommand: (id ) theDocumentElement + inCollection: (id) theCollection + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer +{ + NSArray *deletions; + NSString *serverId; + + id aDelete, sogoObject; + int i; + + deletions = (id)[theDocumentElement getElementsByTagName: @"Delete"]; + + if ([deletions count]) + { + for (i = 0; i < [deletions count]; i++) + { + aDelete = [deletions objectAtIndex: i]; + + serverId = [[(id)[aDelete getElementsByTagName: @"ServerId"] lastObject] textValue]; + + sogoObject = [theCollection lookupName: serverId + inContext: context + acquire: NO]; + + [sogoObject delete]; + } + } +} + + +// +// +// 91 +// +// +- (void) processSyncFetchCommand: (id ) theDocumentElement + inCollection: (id) theCollection + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer +{ + NSString *serverId; + id o; + + serverId = [[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue]; + + o = [theCollection lookupName: serverId + inContext: context + acquire: NO]; + + // FIXME - error handling + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", serverId]; + [theBuffer appendFormat: @"%d", 1]; + [theBuffer appendString: @""]; + [theBuffer appendString: [o activeSyncRepresentation]]; + [theBuffer appendString: @""]; + [theBuffer appendString: @""]; +} + + +// +// The method handles +// +- (void) processSyncGetChanges: (id ) theDocumentElement + inCollection: (id) theCollection + withSyncKey: (NSString *) theSyncKey + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer +{ + int i; + + // + // No changes in the collection - 2.2.2.19.1.1 Empty Sync Request. + // We check this and we don't generate any commands if we don't have to. + // + if ([theSyncKey isEqualToString: [theCollection davCollectionTag]]) + return; + + [theBuffer appendString: @""]; + + switch (theFolderType) + { + case ActiveSyncContactFolder: + { + NSArray *allContacts; + NGVCard *card; + id contact; + + allContacts = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + + for (i = 0; i < [allContacts count]; i++) + { + contact = [theCollection lookupName: [[allContacts objectAtIndex: i] objectForKey: @"c_name"] + inContext: context + acquire: NO]; + + if (![[[allContacts objectAtIndex: i] objectForKey: @"c_component"] isEqualToString: @"vcard"]) + continue; + + // FIXME: we skip list right now + if ([contact respondsToSelector: @selector (vCard)]) + { + card = [contact vCard]; + + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", [contact nameInContainer]]; + [theBuffer appendString: @""]; + + [theBuffer appendString: [card activeSyncRepresentation]]; + + [theBuffer appendString: @""]; + [theBuffer appendString: @""]; + } + } + } + break; + case ActiveSyncEventFolder: + { + NSArray *allEvents; + NSDictionary *d; + id eventObject; + + allEvents = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + + for (i = 0; i < [allEvents count]; i++) + { + NSString *serverId; + iCalEvent *event; + + d = [allEvents objectAtIndex: i]; + + if (![[d objectForKey: @"c_component"] isEqualToString: @"vevent"]) + continue; + + serverId = [d objectForKey: @"c_name"]; + + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", serverId]; + [theBuffer appendString: @""]; + + eventObject = [theCollection lookupName: serverId inContext: self->context acquire: 0]; + + event = [eventObject component: NO secure: NO]; + + [theBuffer appendString: [event activeSyncRepresentation]]; + + [theBuffer appendString: @""]; + [theBuffer appendString: @""]; + + } // for (i = 0; i < [allEvents count]; i++) + } + break; + case ActiveSyncTaskFolder: + { + NSArray *allTasks; + NSDictionary *task; + id taskObject; + + allTasks = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + + for (i = 0; i < [allTasks count]; i++) + + { + int deleted; + + task = [allTasks objectAtIndex: i]; + deleted = [[task objectForKey: @"c_deleted"] intValue]; + + if (!deleted && ![[task objectForKey: @"c_component"] isEqualToString: @"vtodo"]) + continue; + + NSString *uid; + uid = [task objectForKey: @"c_name"]; + + if (deleted) + { + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", uid]; + [theBuffer appendString: @""]; + } + else + { + iCalToDo *todo; + BOOL updated; + + updated = YES; + + if ([[task objectForKey: @"c_creationdate"] intValue] > [theSyncKey intValue]) + updated = NO; + + if (updated) + [theBuffer appendString: @""]; + else + [theBuffer appendString: @""]; + + [theBuffer appendFormat: @"%@", uid]; + [theBuffer appendString: @""]; + + taskObject = [theCollection lookupName: uid inContext: self->context acquire: 0]; + + todo = [taskObject component: NO secure: NO]; + + [theBuffer appendString: [todo activeSyncRepresentation]]; + + [theBuffer appendString: @""]; + + if (updated) + [theBuffer appendString: @""]; + else + [theBuffer appendString: @""]; + } + } // for ... + } + break; + case ActiveSyncMailFolder: + default: + { + NSDictionary *aMessage; + NSArray *allMessages; + NSString *uid, *command; + SOGoMailObject *mailObject; + + allMessages = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + + for (i = 0; i < [allMessages count]; i++) + { + aMessage = [allMessages objectAtIndex: i]; + + uid = [[[aMessage allKeys] lastObject] stringValue]; + command = [[aMessage allValues] lastObject]; + + if ([command isEqualToString: @"deleted"]) + { + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", uid]; + [theBuffer appendString: @""]; + } + else + { + if ([command isEqualToString: @"added"]) + [theBuffer appendString: @""]; + else + [theBuffer appendString: @""]; + + mailObject = [theCollection lookupName: uid + inContext: context + acquire: 0]; + + [theBuffer appendFormat: @"%@", uid]; + [theBuffer appendString: @""]; + [theBuffer appendString: [mailObject activeSyncRepresentation]]; + [theBuffer appendString: @""]; + + if ([command isEqualToString: @"added"]) + [theBuffer appendString: @""]; + else + [theBuffer appendString: @""]; + + } + } + } + break; + } // switch (folderType) ... + + [theBuffer appendString: @""]; +} + +// +// We have something like this: +// +// +// +// 91 +// +// +// +- (void) processSyncCommands: (id ) theDocumentElement + inCollection: (id) theCollection + withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + inBuffer: (NSMutableString *) theBuffer + processed: (BOOL *) processed +{ + id aCommandDetails; + id aCommand, element; + NSArray *allCommands; + int i, j; + + allCommands = (id)[theDocumentElement getElementsByTagName: @"Commands"]; + + for (i = 0; i < [allCommands count]; i++) + { + aCommand = [allCommands objectAtIndex: i]; + aCommandDetails = [aCommand childNodes]; + + for (j = 0; j < [(id)aCommandDetails count]; j++) + { + element = [aCommandDetails objectAtIndex: j]; + + if ([element nodeType] == DOM_ELEMENT_NODE) + { + if ([[element tagName] isEqualToString: @"Add"]) + { + // Add + [self processSyncAddCommand: aCommand + inCollection: theCollection + withType: theFolderType + inBuffer: theBuffer]; + *processed = YES; + } + else if ([[element tagName] isEqualToString: @"Change"]) + { + // Change + [self processSyncChangeCommand: aCommand + inCollection: theCollection + withType: theFolderType + inBuffer: theBuffer]; + *processed = YES; + } + else if ([[element tagName] isEqualToString: @"Delete"]) + { + // Delete + [self processSyncDeleteCommand: aCommand + inCollection: theCollection + withType: theFolderType + inBuffer: theBuffer]; + } + else if ([[element tagName] isEqualToString: @"Fetch"]) + { + // Fetch + [self processSyncFetchCommand: aCommand + inCollection: theCollection + withType: theFolderType + inBuffer: theBuffer]; + } + } + } + } +} + +// +// +// +- (void) processSyncCollection: (id ) theDocumentElement + inBuffer: (NSMutableString *) theBuffer +{ + NSString *collectionId, *realCollectionId, *syncKey, *davCollectionTag, *bodyPreferenceType; + SOGoMicrosoftActiveSyncFolderType folderType; + id collection; + + BOOL getChanges, first_sync; + + collectionId = [[(id)[theDocumentElement getElementsByTagName: @"CollectionId"] lastObject] textValue]; + realCollectionId = [collectionId realCollectionIdWithFolderType: &folderType]; + collection = [self collectionFromId: realCollectionId type: folderType]; + + syncKey = [[(id)[theDocumentElement getElementsByTagName: @"SyncKey"] lastObject] textValue]; + davCollectionTag = [collection davCollectionTag]; + + getChanges = ([(id)[theDocumentElement getElementsByTagName: @"GetChanges"] count] ? YES : NO); + first_sync = NO; + + if ([syncKey isEqualToString: @"0"]) + { + davCollectionTag = @"-1"; + first_sync = YES; + } + + // We check our sync preferences and we stash them + bodyPreferenceType = [[(id)[[(id)[theDocumentElement getElementsByTagName: @"BodyPreference"] lastObject] getElementsByTagName: @"Type"] lastObject] textValue]; + + if (!bodyPreferenceType) + bodyPreferenceType = @"1"; + + [context setObject: bodyPreferenceType forKey: @"BodyPreferenceType"]; + + + [theBuffer appendString: @""]; + [theBuffer appendFormat: @"%@", davCollectionTag]; + [theBuffer appendFormat: @"%@", collectionId]; + [theBuffer appendFormat: @"%d", 1]; + + // We generate the commands, if any, for the response. We might also have + // generated some in processSyncCommand:inResponse: as we could have + // received a Fetch command + if (getChanges && !first_sync) + { + [self processSyncGetChanges: theDocumentElement + inCollection: collection + withSyncKey: syncKey + withType: folderType + inBuffer: theBuffer]; + } + + // + // We process the commands from the request + // + if (!first_sync) + { + NSMutableString *s; + BOOL processed; + + s = [NSMutableString string]; + processed = NO; + + [self processSyncCommands: theDocumentElement + inCollection: collection + withType: folderType + inBuffer: s + processed: &processed]; + + if (processed) + [theBuffer appendFormat: @"%@", s]; + else + [theBuffer appendString: s]; + } + + [theBuffer appendString: @""]; +} + +// +// Initial folder sync: +// +// +// +// +// +// +// 0 +// folderINBOX +// +// +// +// +// +// Following this will be a GetItemEstimate call. Following our response to the GetItemEstimate, we'll +// have a new Sync call like this: +// +// +// +// +// +// +// 1 +// folderINBOX +// 1 +// +// 50 +// +// 5 -- http://msdn.microsoft.com/en-us/library/gg709713(v=exchg.80).aspx +// -- http://msdn.microsoft.com/en-us/library/ee218197(v=exchg.80).aspx +// 2 -- +// 51200 +// +// +// 4 +// +// +// +// +// +// +// +// +// When adding a new task, we might have something like this: +// +// +// +// +// +// +// 1 +// personal +// +// -- http://msdn.microsoft.com/en-us/library/gg675447(v=exchg.80).aspx +// 5 -- http://msdn.microsoft.com/en-us/library/gg650865(v=exchg.80).aspx +// +// -- http://msdn.microsoft.com/en-us/library/ee218197(v=exchg.80).aspx +// 1 +// 400000 +// +// +// +// +// new_task_1386614771261 +// +// +// 1 +// 6 +// tomate +// +// test 1 +// 1 +// 2013-12-09T19:00:00.000Z +// 0 +// 0 +// 2013-12-09T19:00:00.000Z +// +// +// +// +// +// +// +// The algorithm here is pretty simple: +// +// 1. extract the list of collections +// 2. for each collection +// 2.1. extract the metadata (id, synckey, etc.) +// 2.2. extract the list of commands +// 2.3. for each command +// 2.3.1 process the command (add/change/delete/fetch) +// 2.3.2 build a response during the processsing +// +// +- (void) processSync: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + id aCollection; + NSArray *allCollections; + NSMutableString *s; + NSData *d; + + int i; + + // We initialize our output buffer + s = [NSMutableString string]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + + allCollections = (id)[theDocumentElement getElementsByTagName: @"Collections"]; + + for (i = 0; i < [allCollections count]; i++) + { + aCollection = [allCollections objectAtIndex: i]; + + [self processSyncCollection: aCollection inBuffer: s]; + } + + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + +@end diff --git a/ActiveSync/SOGoActiveSyncDispatcher.h b/ActiveSync/SOGoActiveSyncDispatcher.h new file mode 100644 index 0000000000..66baf757ef --- /dev/null +++ b/ActiveSync/SOGoActiveSyncDispatcher.h @@ -0,0 +1,33 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import + +@class NSException; + +@interface SOGoActiveSyncDispatcher : NSObject +{ + id context; +} + +- (NSException *) dispatchRequest: (id) theRequest + inResponse: (id) theResponse + context: (id) theContext; + +@end diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m new file mode 100644 index 0000000000..54c299d0fd --- /dev/null +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -0,0 +1,1219 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#include "SOGoActiveSyncDispatcher.h" + + +// NICE INFO +// +// http://blogs.technet.com/b/exchange/archive/2013/10/04/exchange-activesync-mailbox-log-analysis.aspx +// +/* + TODO + X parse correctly the device id + X tester 2 add ou 2 change ou 2 deletes en meme temps (ie., avant de faire un sync) + X ajouter le last UID au sync key dans le cas du IMAP - genre UID-MODSEQ + X au lieu d'avoir 50 if dans le process, construire le selecteur a partir de la string et l'invoker + - implementer MeetingResponse + X implementer ResolveRecipients + X combiner smart reply et smart forward + X implementer MoveItems + X implemneter SmartForward et SmartReply + X implementer Search + - implementer GetAttachment + X supporter les multipart/mixed pour afficher correctement les mails. etc + X fixer la hierarchie dans les folders imap + - finir implementer Ping + X implemneter add/update/delete partout + - implementer le Sync en fonction d'un timestamp initial pour la syncrho genre 1 mois derriere + X tester le sync de plusieurs collections en meme temps - pas juste voir aucun changement dans une collection sur X et dire qu'il n'y a rien de nouveau + - implementer le OOF - voir 4.18.2 dans ASCMD + X implementer le fetch lors du Sync - les iOS font ca + - cleanup the include mess + - FIXER le MoveItem - le DstMsgId - grokker le UID lors du copy + - tester l'ajout/suppression/rename de dossier IMAP + - fixer prob de timezone dans resolve recipients + - fixer prob de timezone dans les events + - cleanup warning mess + - cleanup des fixmes + X fix crash apple reception de mial + fuckup attacments + fuckups html + */ + + +#import +#import +#import +#import +#import + +#import +#import +#import +#import +#import +#import +#import +#import +#import + + +#import +#import +#import +#import + +#import +#import +#import +#import +#import + +#import + +#import +#import +#import +#import +#import + +#import +#import +#import + +#import + +#import +#import +#import +#import +#import +#import +#import +#import +#import + +#import +#import + +#import +#import +#import +#import + +#import +#import +#import +#import +#import + +#import +#import + +#include "iCalEvent+ActiveSync.h" +#include "iCalToDo+ActiveSync.h" +#include "NGMimeMessage+ActiveSync.h" +#include "NGVCard+ActiveSync.h" +#include "NSData+ActiveSync.h" +#include "NSString+ActiveSync.h" +#include "SOGoActiveSyncConstants.h" +#include "SOGoMailObject+ActiveSync.h" + +@implementation SOGoActiveSyncDispatcher + +// +// +// +- (void) processFolderCreate: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSString *parentId, *displayName, *nameInContainer, *syncKey; + SOGoUserFolder *userFolder; + NSMutableString *s; + NSData *d; + + int type; + + parentId = [[(id)[theDocumentElement getElementsByTagName: @"ParentId"] lastObject] textValue]; + displayName = [[(id)[theDocumentElement getElementsByTagName: @"DisplayName"] lastObject] textValue]; + type = [[[(id)[theDocumentElement getElementsByTagName: @"Type"] lastObject] textValue] intValue]; + userFolder = [[context activeUser] homeFolderInContext: context]; + + // See 2.2.3.170.2 Type (FolderCreate) - http://msdn.microsoft.com/en-us/library/gg675445(v=exchg.80).aspx + // We support the following types: + // + // 12 User-created mail folder + // 13 User-created Calendar folder + // 14 User-created Contacts folder + // 15 User-created Tasks folder + // + switch (type == 12) + { + case 12: + { + SOGoMailAccounts *accountsFolder; + SOGoMailFolder *newFolder; + id currentFolder; + + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + newFolder = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", [displayName stringByEncodingImap4FolderName]] + inContext: context + acquire: NO]; + + // FIXME + // handle exists (status == 2) + // handle right synckey + if ([newFolder create]) + { + nameInContainer = [newFolder nameInContainer]; + syncKey = @"-1"; + } + else + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"Unable to create folder."]; + return; + } + } + break; + case 13: + case 15: + { + SOGoAppointmentFolders *appointmentFolders; + + appointmentFolders = [userFolder privateCalendars: @"Calendar" inContext: context]; + [appointmentFolders newFolderWithName: displayName + nameInContainer: &nameInContainer]; + syncKey = @"-1"; + } + break; + case 14: + { + SOGoContactFolders *contactFolders; + + contactFolders = [userFolder privateContacts: @"Contacts" inContext: context]; + [contactFolders newFolderWithName: displayName + nameInContainer: &nameInContainer]; + syncKey = @"-1"; + } + break; + default: + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"Unsupported folder type during creation."]; + return; + } + } // switch (type) ... + + + // + // All good, we send our response. The format is documented here: + // 6.7 FolderCreate Response Schema - http://msdn.microsoft.com/en-us/library/dn338950(v=exchg.80).aspx + // + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%@", syncKey]; + [s appendFormat: @"%@", nameInContainer]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + +// +// +// +- (void) processFolderUpdate: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSString *serverId, *parentId, *displayName; + SOGoMailAccounts *accountsFolder; + SOGoUserFolder *userFolder; + SOGoMailFolder *folderToUpdate; + id currentFolder; + NSException *error; + + serverId = [[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue]; + parentId = [[(id)[theDocumentElement getElementsByTagName: @"ParentId"] lastObject] textValue]; + displayName = [[(id)[theDocumentElement getElementsByTagName: @"DisplayName"] lastObject] textValue]; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + folderToUpdate = [currentFolder lookupName: serverId + inContext: context + acquire: NO]; + + error = [folderToUpdate renameTo: displayName]; + + // Handle new name exist + if (!error) + { + NSMutableString *s; + NSData *d; + + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + } + else + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"Unable to update folder."]; + } +} + + +// +// +// +// +// 0 +// +// +- (void) processFolderSync: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSMutableDictionary *metadata; + NSMutableString *s; + NSString *syncKey; + NSData *d; + + BOOL first_sync; + int status; + + metadata = [[[context activeUser] userSettings] microsoftActiveSyncMetadataForDevice: @"SEC17CD1A3E9E3F2"]; + syncKey = [[(id)[theDocumentElement getElementsByTagName: @"SyncKey"] lastObject] textValue]; + s = [NSMutableString string]; + + first_sync = NO; + status = 1; + + if ([syncKey isEqualToString: @"0"]) + { + first_sync = YES; + syncKey = @"1"; + } + else if (![syncKey isEqualToString: [[metadata objectForKey: @"FolderSync"] objectForKey: @"SyncKey"]]) + { + // Synchronization key mismatch or invalid synchronization key + status = 9; + } + + [metadata setObject: [NSDictionary dictionaryWithObject: syncKey forKey: @"SyncKey"] forKey: @"FolderSync"]; + [[[context activeUser] userSettings] setMicrosoftActiveSyncMetadata: metadata forDevice: [context objectForKey: @"DeviceId"]]; + [[[context activeUser] userSettings] synchronize]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d%@", status, syncKey]; + + // Initial sync, let's return the complete folder list + if (first_sync) + { + SOGoMailAccounts *accountsFolder; + SOGoMailAccount *accountFolder; + SOGoUserFolder *userFolder; + id currentFolder; + + NSDictionary *folderMetadata; + NSArray *allFoldersMetadata; + NSString *name, *serverId, *parentId; + + int i, type; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + accountFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + allFoldersMetadata = [accountFolder allFoldersMetadata]; + + // See 2.2.3.170.3 Type (FolderSync) - http://msdn.microsoft.com/en-us/library/gg650877(v=exchg.80).aspx + [s appendFormat: @"%d", [allFoldersMetadata count]+3]; + + for (i = 0; i < [allFoldersMetadata count]; i++) + { + folderMetadata = [allFoldersMetadata objectAtIndex: i]; + serverId = [NSString stringWithFormat: @"mail%@", [folderMetadata objectForKey: @"path"]]; + name = [folderMetadata objectForKey: @"displayName"]; + + if ([name hasPrefix: @"/"]) + name = [name substringFromIndex: 1]; + + if ([name hasSuffix: @"/"]) + name = [name substringToIndex: [name length]-2]; + + type = [[folderMetadata objectForKey: @"type"] activeSyncFolderType]; + + parentId = @"0"; + + if ([folderMetadata objectForKey: @"parent"]) + { + parentId = [NSString stringWithFormat: @"mail%@", [folderMetadata objectForKey: @"parent"]]; + name = [[name pathComponents] lastObject]; + } + + [s appendFormat: @"%@%@%d%@", + serverId, + parentId, + type, + name]; + } + + // We add the personal calendar - events + // FIXME: add all calendars + currentFolder = [[context activeUser] personalCalendarFolderInContext: context]; + name = [NSString stringWithFormat: @"vevent/%@", [currentFolder nameInContainer]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 8, [currentFolder displayName]]; + + // We add the personal calendar - tasks + // FIXME: add all calendars + currentFolder = [[context activeUser] personalCalendarFolderInContext: context]; + name = [NSString stringWithFormat: @"vtodo/%@", [currentFolder nameInContainer]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 7, [currentFolder displayName]]; + + // We add the personal address book + // FIXME: add all address books + currentFolder = [[context activeUser] personalContactsFolderInContext: context]; + name = [NSString stringWithFormat: @"vcard/%@", [currentFolder nameInContainer]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 9, [currentFolder displayName]]; + } + + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + +// +// From: http://msdn.microsoft.com/en-us/library/ee157980(v=exchg.80).aspx : +// +// <2> Section 2.2.2.6: The GetAttachment command is not supported when the MS-ASProtocolVersion header is set to 14.0 or 14.1 +// in the GetAttachment command request. Use the Fetch element of the ItemOperations command instead. For more information about +// the MS-ASProtocolVersion header, see [MS-ASHTTP] section 2.2.1.1.2.4. +// +- (void) processGetAttachment: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + +} + +// +// +// +// +// +// +// 1 +// folderINBOX +// +// 3 +// +// +// +// +// +- (void) processGetItemEstimate: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + SOGoMailAccounts *accountsFolder; + SOGoUserFolder *userFolder; + id currentFolder, currentCollection; + + NSString *collectionId, *realCollectionId; + NSMutableString *s; + NSData *d; + + SOGoMicrosoftActiveSyncFolderType folderType; + int status; + + s = [NSMutableString string]; + status = 1; + + collectionId = [[(id)[theDocumentElement getElementsByTagName: @"CollectionId"] lastObject] textValue]; + realCollectionId = [collectionId realCollectionIdWithFolderType: &folderType]; + + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + currentCollection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", realCollectionId] + inContext: context + acquire: NO]; + + // FIXME: we ignore FilterType for now + NSArray *uids = [currentCollection fetchUIDsMatchingQualifier: [EOQualifier qualifierWithQualifierFormat: + @"(not (flags = %@))", + @"deleted"] + sortOrdering: @"REVERSE ARRIVAL" + threaded: NO]; + + + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d", status]; + + [s appendString: @"Email"]; + [s appendFormat: @"%@", collectionId]; + [s appendFormat: @"%d", [uids count]]; + + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + +} + +// +// +// +// +// +// Mailbox -- http://msdn.microsoft.com/en-us/library/gg663522(v=exchg.80).aspx +// 2 -- +// +// +// +// +- (void) processItemOperations: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSString *fileReference, *realCollectionId; + NSMutableString *s; + + SOGoMicrosoftActiveSyncFolderType folderType; + + fileReference = [[(id)[theDocumentElement getElementsByTagName: @"FileReference"] lastObject] textValue]; + + realCollectionId = [fileReference realCollectionIdWithFolderType: &folderType]; + + if (folderType == ActiveSyncMailFolder) + { + id currentFolder, currentCollection, currentBodyPart; + NSString *folderName, *messageName, *pathToPart; + SOGoMailAccounts *accountsFolder; + SOGoUserFolder *userFolder; + SOGoMailObject *mailObject; + NSData *d; + + NSRange r1, r2; + + r1 = [realCollectionId rangeOfString: @"/"]; + r2 = [realCollectionId rangeOfString: @"/" options: 0 range: NSMakeRange(NSMaxRange(r1)+1, [realCollectionId length]-NSMaxRange(r1)-1)]; + + folderName = [realCollectionId substringToIndex: r1.location]; + messageName = [realCollectionId substringWithRange: NSMakeRange(NSMaxRange(r1), r2.location-r1.location-1)]; + pathToPart = [realCollectionId substringFromIndex: r2.location+1]; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + currentCollection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", folderName] + inContext: context + acquire: NO]; + + mailObject = [currentCollection lookupName: messageName inContext: context acquire: NO]; + currentBodyPart = [mailObject lookupImap4BodyPartKey: pathToPart inContext: context]; + + + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @"1"]; + [s appendString: @""]; + + [s appendString: @""]; + [s appendString: @"1"]; + [s appendFormat: @"%@", fileReference]; + [s appendString: @""]; + + [s appendFormat: @"%@/%@", [[currentBodyPart partInfo] objectForKey: @"type"], [[currentBodyPart partInfo] objectForKey: @"subtype"]]; + [s appendFormat: @"%@", [[[currentBodyPart fetchBLOB] stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]]; + + [s appendString: @""]; + [s appendString: @""]; + + + [s appendString: @""]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + [theResponse setContent: d]; + } + else + { + [theResponse setStatus: 500]; + } +} + + +// +// +// +// +// +// 85 +// mail/INBOX +// mail/toto +// +// +// +- (void) processMoveItems: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSString *srcMessageId, *srcFolderId, *dstFolderId; + SOGoMicrosoftActiveSyncFolderType srcFolderType, dstFolderType; + + srcMessageId = [[(id)[theDocumentElement getElementsByTagName: @"SrcMsgId"] lastObject] textValue]; + srcFolderId = [[[(id)[theDocumentElement getElementsByTagName: @"SrcFldId"] lastObject] textValue] realCollectionIdWithFolderType: &srcFolderType]; + dstFolderId = [[[(id)[theDocumentElement getElementsByTagName: @"DstFldId"] lastObject] textValue] realCollectionIdWithFolderType: &dstFolderType]; + + // FIXME + if (srcFolderType == ActiveSyncMailFolder && dstFolderType == ActiveSyncMailFolder) + { + SOGoMailAccounts *accountsFolder; + SOGoMailFolder *currentFolder; + SOGoUserFolder *userFolder; + id currentCollection; + NSException *ex; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + currentCollection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", srcFolderId] + inContext: context + acquire: NO]; + + // FIXME: improve destination folder + ex = (id)[currentCollection moveUIDs: [NSArray arrayWithObject: srcMessageId] + toFolder: [NSString stringWithFormat: @"/0/folder%@", dstFolderId] + inContext: context]; + if (ex) + { + [theResponse setStatus: 500]; + [theResponse appendContentString: [ex reason]]; + } + else + { + NSMutableString *s; + NSData *d; + + // Everything is alright, lets return the proper response + s = [NSMutableString string]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", srcMessageId]; + [s appendFormat: @"%@", srcMessageId]; + [s appendFormat: @"%d", 1]; + [s appendString: @""]; + + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + } + } + else + { + [theResponse setStatus: 500]; + } +} + +// +// We ignore everything for now +// +- (void) processPing: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSMutableString *s; + NSData *d; + + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"1"]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + +// +// +// +// +// sogo1@example.com +// sogo10@sogoludo.inverse +// +// 19 +// +// 2014-01-16T05:00:00.000Z +// 2014-01-17T04:59:00.000Z +// +// +// +// +- (void) processResolveRecipients: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSArray *allRecipients; + int i, j, k; + + allRecipients = (id)[theDocumentElement getElementsByTagName: @"To"]; + + if ([allRecipients count] && [(id)[theDocumentElement getElementsByTagName: @"Availability"] count]) + { + NSCalendarDate *startDate, *endDate; + SOGoAppointmentFolder *folder; + NSString *aRecipient, *login; + NSMutableString *s; + NSArray *freebusy; + SOGoUser *user; + NSData *d; + + unsigned int startdate, enddate, increments; + char c; + + startDate = [[[(id)[theDocumentElement getElementsByTagName: @"StartTime"] lastObject] textValue] calendarDate]; + startdate = [startDate timeIntervalSince1970]; + + endDate = [[[(id)[theDocumentElement getElementsByTagName: @"EndTime"] lastObject] textValue] calendarDate]; + enddate = [endDate timeIntervalSince1970]; + + // Number of 30 mins increments between our two dates + increments = ceil((float)((enddate - startdate)/60/30)) + 1; + + s = [NSMutableString string]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + + for (i = 0; i < [allRecipients count]; i++) + { + aRecipient = [[allRecipients objectAtIndex: i] textValue]; + + login = [[SOGoUserManager sharedUserManager] getUIDForEmail: aRecipient]; + + if (login) + { + user = [SOGoUser userWithLogin: login]; + + [s appendString: @""]; + [s appendFormat: @"%@", aRecipient]; + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%d", 1]; + + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%@", [user cn]]; + [s appendFormat: @"%@", [user systemEmail]]; + + // Freebusy structure: http://msdn.microsoft.com/en-us/library/gg663493(v=exchg.80).aspx + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendString: @""]; + + folder = [user personalCalendarFolderInContext: context]; + freebusy = [folder fetchFreeBusyInfosFrom: startDate to: endDate]; + + + NGCalendarDateRange *r1, *r2; + + for (j = 1; j <= increments; j++) + { + c = '0'; + + r1 = [NGCalendarDateRange calendarDateRangeWithStartDate: [NSDate dateWithTimeIntervalSince1970: (startdate+j*30*60)] + endDate: [NSDate dateWithTimeIntervalSince1970: (startdate+j*30*60 + 30)]]; + + + for (k = 0; k < [freebusy count]; k++) + { + + r2 = [NGCalendarDateRange calendarDateRangeWithStartDate: [[freebusy objectAtIndex: k] objectForKey: @"startDate"] + endDate: [[freebusy objectAtIndex: k] objectForKey: @"endDate"]]; + + if ([r2 doesIntersectWithDateRange: r1]) + { + c = '2'; + break; + } + } + + + [s appendFormat: @"%c", c]; + } + + + [s appendString: @""]; + [s appendString: @""]; + + + [s appendString: @""]; + [s appendString: @""]; + } + } + + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + } +} + +// +// +// +// +// +// GAL +// so +// +// 0-19 +// +// +// +// +- (void) processSearch: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + SOGoContactSourceFolder *currentFolder; + NSDictionary *systemSources, *contact; + SOGoContactFolders *contactFolders; + NSArray *allKeys, *allContacts; + SOGoUserFolder *userFolder; + NSString *name, *query; + NSMutableString *s; + NSData *d; + + int i, j, total; + + name = [[(id)[theDocumentElement getElementsByTagName: @"Name"] lastObject] textValue]; + query = [[(id)[theDocumentElement getElementsByTagName: @"Query"] lastObject] textValue]; + + // FIXME: for now, we only search in the GAL + if (![name isEqualToString: @"GAL"]) + { + [theResponse setStatus: 500]; + return; + } + + + userFolder = [[context activeUser] homeFolderInContext: context]; + contactFolders = [userFolder privateContacts: @"Contacts" inContext: context]; + systemSources = [contactFolders systemSources]; + allKeys = [systemSources allKeys]; + + s = [NSMutableString string]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"1"]; + [s appendFormat: @""]; + [s appendFormat: @""]; + [s appendFormat: @"1"]; + + total = 0; + + for (i = 0; i < [allKeys count]; i++) + { + currentFolder = [systemSources objectForKey: [allKeys objectAtIndex: i]]; + allContacts = [currentFolder lookupContactsWithFilter: query + onCriteria: @"name_or_address" + sortBy: @"c_cn" + ordering: NSOrderedAscending + inDomain: [[context activeUser] domain]]; + + for (j = 0; j < [allContacts count]; j++) + { + contact = [allContacts objectAtIndex: j]; + + // We skip lists for now + if ([[contact objectForKey: @"c_component"] isEqualToString: @"vlist"]) + continue; + + // We get the LDIF entry of our record, for easier processing + contact = [[currentFolder lookupName: [contact objectForKey: @"c_name"] inContext: context acquire: NO] ldifRecord]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", [contact objectForKey: @"displayname"]]; + [s appendFormat: @"%@", [contact objectForKey: @"givenname"]]; + [s appendFormat: @"%@", [contact objectForKey: @"sn"]]; + [s appendFormat: @"%@", [contact objectForKey: @"mail"]]; + [s appendFormat: @"%@", [contact objectForKey: @"telephonenumber"]]; + [s appendFormat: @"%@", [contact objectForKey: @"o"]]; + [s appendString: @""]; + [s appendString: @""]; + total++; + } + } + + [s appendFormat: @"0-%d", total-1]; + [s appendFormat: @"%d", total]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + +// +// +// +- (NSException *) _sendMail: (NSData *) theMail + recipients: (NSArray *) theRecipients + saveInSentItems: (BOOL) saveInSentItems +{ + id authenticator; + SOGoDomainDefaults *dd; + NSException *error; + NSString *from; + + authenticator = [SOGoDAVAuthenticator sharedSOGoDAVAuthenticator]; + dd = [[context activeUser] domainDefaults]; + + // We generate the Sender + from = [[[context activeUser] allEmails] objectAtIndex: 0]; + + error = [[SOGoMailer mailerWithDomainDefaults: dd] + sendMailData: theMail + toRecipients: theRecipients + sender: from + withAuthenticator: authenticator + inContext: context]; + + if (error) + { + return error; + } + + if (saveInSentItems) + { + SOGoMailAccounts *accountsFolder; + SOGoMailAccount *accountFolder; + SOGoUserFolder *userFolder; + SOGoSentFolder *sentFolder; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + accountFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + sentFolder = [accountFolder sentFolderInContext: context]; + + [sentFolder postData: theMail flags: @"seen"]; + } + + return nil; +} + +// +// +// +- (void) processSendMail: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NGMimeMessageParser *parser; + NGMimeMessage *message; + NSException *error; + NSData *data; + + // We get the mail's data + data = [[[[(id)[theDocumentElement getElementsByTagName: @"MIME"] lastObject] textValue] stringByDecodingBase64] dataUsingEncoding: NSUTF8StringEncoding]; + + // We extract the recipients + parser = [[NGMimeMessageParser alloc] init]; + message = [parser parsePartFromData: data]; + RELEASE(parser); + + error = [self _sendMail: data + recipients: [message allRecipients] + saveInSentItems: ([(id)[theDocumentElement getElementsByTagName: @"SaveInSentItems"] count] ? YES : NO)]; + + if (error) + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"FATAL ERROR occured during SendMail"]; + } +} + + + +// +// +// Examples: +// +// +// +// +// +// +// text +// +// +// +// +// +// +// "POST /SOGo/Microsoft-Server-ActiveSync?Cmd=Settings&User=sogo10&DeviceId=SEC17CD1A3E9E3F2&DeviceType=SAMSUNGSGHI317M HTTP/1.1" +// +// +// +// +// +// +// SGH-I317M +// 354422050248226 +// t0ltevl +// Android +// English +// 15147553630 +// SAMSUNG-SGH-I317M/100.40102 +// 0 +// Koodo +// +// +// +// +// We ignore everything for now +// +- (void) processSettings: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + + NSMutableString *s; + NSData *d; + + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @" 1"]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; +} + + +// +// +// +// +// C9FF94FE-EA40-473A-B3E2-AAEE94F753A4 +// +// +// +// mail/INBOX +// 82 +// +// ... the data ... +// +// +- (void) processSmartForward: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + NSString *folderId, *itemId, *realCollectionId; + SOGoMicrosoftActiveSyncFolderType folderType; + + folderId = [[(id)[theDocumentElement getElementsByTagName: @"FolderId"] lastObject] textValue]; + itemId = [[(id)[theDocumentElement getElementsByTagName: @"ItemId"] lastObject] textValue]; + realCollectionId = [folderId realCollectionIdWithFolderType: &folderType]; + + if (folderType == ActiveSyncMailFolder) + { + SOGoMailAccounts *accountsFolder; + SOGoMailFolder *currentFolder; + SOGoUserFolder *userFolder; + SOGoMailObject *mailObject; + id currentCollection; + + NGMimeMessage *messageFromSmartForward, *messageToSend; + NGMimeMessageParser *parser; + NSData *data; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + currentCollection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", realCollectionId] + inContext: context + acquire: NO]; + + mailObject = [currentCollection lookupName: itemId inContext: context acquire: NO]; + + + parser = [[NGMimeMessageParser alloc] init]; + data = [[[[(id)[theDocumentElement getElementsByTagName: @"MIME"] lastObject] textValue] stringByDecodingBase64] dataUsingEncoding: NSUTF8StringEncoding]; + messageFromSmartForward = [parser parsePartFromData: data]; + + RELEASE(parser); + + + // We create a new MIME multipart/mixed message. The first part will be the text part + // of our "smart forward" and the second part will be the message/rfc822 part of the + // "smart forwarded" message. + NGMimeBodyPart *bodyPart; + NGMutableHashMap *map; + id body; + + map = [NGHashMap hashMapWithDictionary: [messageFromSmartForward headers]]; + [map setObject: @"multipart/mixed" forKey: @"content-type"]; + + messageToSend = [[[NGMimeMessage alloc] initWithHeader: map] autorelease]; + body = [[[NGMimeMultipartBody alloc] initWithPart: messageToSend] autorelease]; + + // First part + map = [[[NGMutableHashMap alloc] initWithCapacity: 1] autorelease]; + [map setObject: @"text/plain" forKey: @"content-type"]; + bodyPart = [[[NGMimeBodyPart alloc] initWithHeader:map] autorelease]; + [bodyPart setBody: [messageFromSmartForward body]]; + [body addBodyPart: bodyPart]; + + // Second part + // FIXME - SOPE (read "POS") generates garbage if we only have the content-type header + map = [[[NGMutableHashMap alloc] initWithCapacity: 1] autorelease]; + [map setObject: @"message/rfc822" forKey: @"content-type"]; + bodyPart = [[[NGMimeBodyPart alloc] initWithHeader:map] autorelease]; + [bodyPart setBody: [mailObject content]]; + [body addBodyPart: bodyPart]; + [messageToSend setBody: body]; + + NGMimeMessageGenerator *generator; + generator = [[[NGMimeMessageGenerator alloc] init] autorelease]; + data = [generator generateMimeFromPart: messageToSend]; + + NSException *error = [self _sendMail: data + recipients: [messageFromSmartForward allRecipients] + saveInSentItems: ([(id)[theDocumentElement getElementsByTagName: @"SaveInSentItems"] count] ? YES : NO)]; + + if (error) + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"FATAL ERROR occured during SmartForward"]; + } + } + else + { + // FIXME + [theResponse setStatus: 500]; + [theResponse appendContentString: @"SmartForward not-implemented on non-mail folders."]; + } +} + +// +// +// +// +// DD40B5DC-4BDF-4A6A-9D8B-4B02BE5342CD +// +// -- http://msdn.microsoft.com/en-us/library/gg663506(v=exchg.80).aspx +// +// mail/INBOX +// 82 +// +// ... the data ... +// +// +- (void) processSmartReply: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + [self processSmartForward: theDocumentElement inResponse: theResponse]; +} + + + +// +// +// +- (NSException *) dispatchRequest: (id) theRequest + inResponse: (id) theResponse + context: (id) theContext +{ + id documentElement; + id builder, dom; + SEL aSelector; + + NSString *cmdName, *deviceId; + NSData *d; + + ASSIGN(context, theContext); + + // Get the device ID and "stash" it + deviceId = [[theRequest uri] deviceId]; + [context setObject: deviceId forKey: @"DeviceId"]; + + d = [[theRequest content] wbxml2xml]; + + if (!d) + { + return [NSException exceptionWithHTTPStatus: 500]; + } + + builder = [[[NSClassFromString(@"DOMSaxBuilder") alloc] init] autorelease]; + dom = [builder buildFromData: d]; + documentElement = [dom documentElement]; + + // See 2.2.2 Commands - http://msdn.microsoft.com/en-us/library/ee202197(v=exchg.80).aspx + // for all potential commands + cmdName = [NSString stringWithFormat: @"process%@:inResponse:", [documentElement tagName]]; + aSelector = NSSelectorFromString(cmdName); + + [self performSelector: aSelector withObject: documentElement withObject: theResponse]; + + [theResponse setHeader: @"application/vnd.ms-sync.wbxml" forKey: @"Content-Type"]; + [theResponse setHeader: @"14.0" forKey: @"MS-Server-ActiveSync"]; + [theResponse setHeader: @"Sync,SendMail,SmartForward,SmartReply,GetAttachment,GetHierarchy,CreateCollection,DeleteCollection,MoveCollection,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,MeetingResponse,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients,ValidateCert" forKey: @"MS-ASProtocolCommands"]; + [theResponse setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0" forKey: @"MS-ASProtocolVersions"]; + + RELEASE(context); + + return nil; +} + +@end diff --git a/ActiveSync/SOGoMailObject+ActiveSync.h b/ActiveSync/SOGoMailObject+ActiveSync.h new file mode 100644 index 0000000000..358c7f73f1 --- /dev/null +++ b/ActiveSync/SOGoMailObject+ActiveSync.h @@ -0,0 +1,34 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __SOGOMAILOBJECTACTIVESYNC_H__ +#define __SOGOMAILOBJECTACTIVESYNC_H__ + +#import + +@class NSDictionary; + +@interface SOGoMailObject (ActiveSync) + +- (NSString *) activeSyncRepresentation; +- (void) takeActiveSyncValues: (NSDictionary *) theValues; + +@end + +#endif diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m new file mode 100644 index 0000000000..802f7d025b --- /dev/null +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -0,0 +1,296 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#include "SOGoMailObject+ActiveSync.h" + +#import +#import +#import + +#import +#import +#import +#import +#import + +#include "NSDate+ActiveSync.h" + +#include "../SoObjects/Mailer/NSString+Mail.h" + +@implementation SOGoMailObject (ActiveSync) + +- (NSString *) _baseEmailAddressesFrom: (NSArray *) enveloppeAddresses +{ + NSMutableArray *addresses; + NSString *rc; + NGImap4EnvelopeAddress *address; + NSString *email; + int i, max; + + rc = nil; + max = [enveloppeAddresses count]; + + if (max > 0) + { + addresses = [NSMutableArray array]; + for (i = 0; i < max; i++) + { + address = [enveloppeAddresses objectAtIndex: i]; + email = [NSString stringWithFormat: @"%@", [address baseEMail]]; + + [addresses addObject: email]; + } + rc = [addresses componentsJoinedByString: @", "]; + } + + return rc; +} + +// +// +// +- (NSData *) _preferredBodyDataInMultipartUsingType: (int) theType +{ + NSString *key, *plainKey, *htmlKey, *type, *subtype; + NSDictionary *textParts, *part; + NSEnumerator *e; + NSData *d; + + textParts = [self fetchPlainTextParts]; + e = [textParts keyEnumerator]; + plainKey = nil; + htmlKey = nil; + d = nil; + + while ((key = [e nextObject])) + { + part = [self lookupInfoForBodyPart: key]; + type = [part valueForKey: @"type"]; + subtype = [part valueForKey: @"subtype"]; + + if ([type isEqualToString: @"text"] && [subtype isEqualToString: @"html"]) + htmlKey = key; + else if ([type isEqualToString: @"text"] && [subtype isEqualToString: @"plain"]) + plainKey = key; + } + + if (theType == 2) + { + d = [[self fetchPlainTextParts] objectForKey: htmlKey]; + } + else if (theType == 1) + { + d = [[self fetchPlainTextParts] objectForKey: plainKey]; + } + + return d; +} + +// +// +// +- (NSData *) _preferredBodyDataUsingType: (int) theType +{ + NSString *type, *subtype; + NSData *d; + + type = [[[self bodyStructure] valueForKey: @"type"] lowercaseString]; + subtype = [[[self bodyStructure] valueForKey: @"subtype"] lowercaseString]; + + d = nil; + + if (theType == 1 || theType == 2) + { + if ([type isEqualToString: @"text"]) + { + d = [[self fetchPlainTextParts] objectForKey: @""]; + + // Check if we must convert html->plain + if (theType == 1 && [subtype isEqualToString: @"html"]) + { + NSString *s; + + s = [[NSString alloc] initWithData: d encoding: NSUTF8StringEncoding]; + AUTORELEASE(s); + + s = [s htmlToText]; + d = [s dataUsingEncoding: NSUTF8StringEncoding]; + } + } + else if ([type isEqualToString: @"multipart"]) + { + d = [self _preferredBodyDataInMultipartUsingType: theType]; + } + } + else if (theType == 4) + { + d = [self content]; + } + + return d; +} + +// +// +// +- (NSString *) activeSyncRepresentation +{ + NSMutableString *s; + NSData *d; + id value; + + int preferredBodyType; + + s = [NSMutableString string]; + + // From + value = [self _baseEmailAddressesFrom: [[self envelope] from]]; + if (value) + [s appendFormat: @"%@", value]; + + // To - "The value of this element contains one or more e-mail addresses. + // If there are multiple e-mail addresses, they are separated by commas." + value = [self _baseEmailAddressesFrom: [[self envelope] to]]; + if (value) + [s appendFormat: @"%@", value]; + + // Cc - same syntax as the To field + value = [self _baseEmailAddressesFrom: [[self envelope] cc]]; + if (value) + [s appendFormat: @"%@", value]; + + // Subject + value = [self decodedSubject]; + if (value) + [s appendFormat: @"%@", value]; + + // DateReceived + value = [self date]; + if (value) + [s appendFormat: @"%@", [value activeSyncRepresentation]];; + + // DisplayTo + //[s appendFormat: @"\"%@\"", [[context activeUser] login]]; + + // Importance - FIXME + [s appendFormat: @"%@", @"1"]; + + // Read + [s appendFormat: @"%d", ([self read] ? 1 : 0)]; + + // MesssageClass + [s appendFormat: @"%@", @"IPM.Note"]; + + // Reply-To - FIXME + //NSArray *replyTo = [[message objectForKey: @"envelope"] replyTo]; + //if ([replyTo count]) + // [s appendFormat: @"%@", [addressFormatter stringForArray: replyTo]]; + + // InternetCPID - FIXME + [s appendFormat: @"%@", @"65001"]; + + // Body - namespace 17 + preferredBodyType = [[context objectForKey: @"BodyPreferenceType"] intValue]; + + d = [self _preferredBodyDataUsingType: preferredBodyType]; + + if (d) + { + NSString *content; + int len; + + content = [[NSString alloc] initWithData: d encoding: NSUTF8StringEncoding]; + AUTORELEASE(content); + + content = [content stringByEscapingHTMLString]; + len = [content length]; + + [s appendString: @""]; + [s appendFormat: @"%d", preferredBodyType]; + [s appendFormat: @"%d", len]; + [s appendFormat: @"%d", 0]; + [s appendFormat: @"%@", content]; + [s appendString: @""]; + } + + // Attachments -namespace 16 + NSArray *attachmentKeys = [self fetchFileAttachmentKeys]; + if ([attachmentKeys count]) + { + int i; + + [s appendString: @""]; + + for (i = 0; i < [attachmentKeys count]; i++) + { + value = [attachmentKeys objectAtIndex: i]; + + [s appendString: @""]; + [s appendFormat: @"%@", [value objectForKey: @"filename"]]; + + // FileReference must be a unique identifier across the whole store. We use the following structure: + // mail// + // mail/INBOX/2 + [s appendFormat: @"mail/%@/%@/%@", [[self container] relativeImap4Name], [self nameInContainer], [value objectForKey: @"path"]]; + + [s appendFormat: @"%d", 1]; // See: http://msdn.microsoft.com/en-us/library/ee160322(v=exchg.80).aspx + [s appendFormat: @"%d", [[value objectForKey: @"size"] intValue]]; + //[s appendFormat: @"%d", 1]; + [s appendString: @""]; + } + + [s appendString: @""]; + } + + // ContentClass + [s appendFormat: @"%@", @"urn:content-classes:message"]; + + // Flags + [s appendString: @""]; + [s appendFormat: @"%d", 0]; + [s appendString: @""]; + + // NativeBodyType -- http://msdn.microsoft.com/en-us/library/ee218276(v=exchg.80).aspx + // This is a required child element. + // 1 -> plain/text, 2 -> HTML and 3 -> RTF + [s appendFormat: @"%d", preferredBodyType]; + + return s; +} + +// +// +// +- (void) takeActiveSyncValues: (NSDictionary *) theValues +{ + id o; + + if ((o = [theValues objectForKey: @"Flag"])) + { + o = [o objectForKey: @"FlagStatus"]; + + if ([o intValue]) + [self addFlags: @"\\Flagged"]; + else + [self removeFlags: @"\\Flagged"]; + + } +} + +@end diff --git a/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m new file mode 100644 index 0000000000..c38742d15c --- /dev/null +++ b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m @@ -0,0 +1,91 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import + +#include +#include +#include +#include +#include + +#import + +@interface SoObjectWebDAVDispatcher (ActiveSync) + +- (id)_callObjectMethod:(NSString *)_method inContext:(WOContext *)_ctx; +- (id) doOPTIONS:(WOContext *)_ctx; + +@end + +@implementation SoObjectWebDAVDispatcher (ActiveSync) + +- (id) doOPTIONS:(WOContext *)_ctx +{ + WOResponse *response; + + /* + See example: http://msdn.microsoft.com/en-us/library/ee204257(v=exchg.80).aspx + */ + if ([[[_ctx request] requestHandlerKey] isEqualToString: @"Microsoft-Server-ActiveSync"]) + { + response = [_ctx response]; + [response setStatus: 200]; + + [response setHeader: @"private" forKey: @"Cache-Control"]; + [response setHeader: @"OPTIONS, POST" forKey: @"Allow"]; + [response setHeader: @"14.00.0536.000" forKey: @"MS-Server-ActiveSync"]; + [response setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0" forKey: @"MS-ASProtocolVersions"]; + [response setHeader: @"Sync,SendMail,SmartForward,SmartReply,GetAttachment,GetHierarchy,CreateCollection,DeleteCollection,MoveCollection,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,MeetingResponse,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients,ValidateCert" forKey: @"MS-ASProtocolCommands"]; + [response setHeader: @"OPTIONS, POST" forKey: @"Public"]; + } + else + { + NSArray *tmp; + id result; + + /* this checks whether the object provides a specific OPTIONS method */ + if ((result = [self _callObjectMethod:@"OPTIONS" inContext:_ctx]) != nil) + return result; + + response = [_ctx response]; + [response setStatus:200 /* OK */]; + + if ((tmp = [self->object davAllowedMethodsInContext:_ctx]) != nil) + [response setHeader:[tmp componentsJoinedByString:@", "] forKey:@"allow"]; + + if ([[[_ctx request] clientCapabilities] isWebFolder]) { + /* + As described over here: + http://teyc.editthispage.com/2005/06/02 + + This page also says that: "MS-Auth-Via header is not required to work + with Web Folders". + */ + [response setHeader:[tmp componentsJoinedByString:@", "] forKey:@"public"]; + } + + if ((tmp = [self->object davComplianceClassesInContext:_ctx]) != nil) + [response setHeader:[tmp componentsJoinedByString:@", "] forKey:@"dav"]; + } + + return response; +} + +@end diff --git a/ActiveSync/common.make b/ActiveSync/common.make new file mode 100644 index 0000000000..78ad58bd1c --- /dev/null +++ b/ActiveSync/common.make @@ -0,0 +1,36 @@ +# common make file for SoObject bundles + +include ../config.make +include $(GNUSTEP_MAKEFILES)/common.make +include ../Version + +NEEDS_GUI=no +BUNDLE_EXTENSION = .SOGo +BUNDLE_INSTALL_DIR = $(SOGO_LIBDIR) +WOBUNDLE_EXTENSION = $(BUNDLE_EXTENSION) +WOBUNDLE_INSTALL_DIR = $(BUNDLE_INSTALL_DIR) + +# SYSTEM_LIB_DIR += -L/usr/local/lib -L/usr/lib + +ADDITIONAL_INCLUDE_DIRS += \ + -I.. \ + -I../.. \ + -I../../SOPE + +ADDITIONAL_LIB_DIRS += \ + -L../SOGo/SOGo.framework/ \ + -L../../SOGo/$(GNUSTEP_OBJ_DIR)/ \ + -L../../OGoContentStore/$(GNUSTEP_OBJ_DIR)/ \ + -L../../SOPE/NGCards/$(GNUSTEP_OBJ_DIR)/ \ + -L/usr/local/lib + +BUNDLE_LIBS += \ + -lSOGo \ + -lGDLContentStore \ + -lGDLAccess \ + -lNGObjWeb \ + -lNGCards -lNGMime -lNGLdap \ + -lNGStreams -lNGExtensions -lEOControl \ + -lDOM -lSaxObjC -lSBJson + +ADDITIONAL_BUNDLE_LIBS += $(BUNDLE_LIBS) diff --git a/ActiveSync/iCalEvent+ActiveSync.h b/ActiveSync/iCalEvent+ActiveSync.h new file mode 100644 index 0000000000..6627b1f817 --- /dev/null +++ b/ActiveSync/iCalEvent+ActiveSync.h @@ -0,0 +1,35 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef __ICALEVENTACTIVESYNC_H__ +#define __ICALEVENTACTIVESYNC_H__ + +#import + +@class NSString; + +@interface iCalEvent (ActiveSync) + +- (NSString *) activeSyncRepresentation; +- (void) takeActiveSyncValues: (NSDictionary *) theValues; + +@end + +#endif diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m new file mode 100644 index 0000000000..f54c946288 --- /dev/null +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -0,0 +1,113 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "iCalEvent+ActiveSync.h" + +#import +#import + +#import + +#include "iCalTimeZone+ActiveSync.h" +#include "NSDate+ActiveSync.h" +#include "NSString+ActiveSync.h" + +@implementation iCalEvent (ActiveSync) + +- (NSString *) activeSyncRepresentation +{ + NSMutableString *s; + iCalTimeZone *tz; + + s = [NSMutableString string]; + + // DTStamp -- http://msdn.microsoft.com/en-us/library/ee219470(v=exchg.80).aspx + if ([self timeStampAsDate]) + [s appendFormat: @"%@", [[self timeStampAsDate] activeSyncRepresentation]]; + else if ([self created]) + [s appendFormat: @"%@", [[self created] activeSyncRepresentation]]; + + // StartTime -- http://msdn.microsoft.com/en-us/library/ee157132(v=exchg.80).aspx + if ([self startDate]) + [s appendFormat: @"%@", [[self startDate] activeSyncRepresentation]]; + + // EndTime -- http://msdn.microsoft.com/en-us/library/ee157945(v=exchg.80).aspx + if ([self endDate]) + [s appendFormat: @"%@", [[self endDate] activeSyncRepresentation]]; + + // Timezone + tz = [(iCalDateTime *)[self firstChildWithTag: @"dtstart"] timeZone]; + + if (!tz) + tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; + + [s appendFormat: @"%@", [[tz activeSyncRepresentation] stringByReplacingString: @"\n" withString: @""]];; + + + // Subject -- http://msdn.microsoft.com/en-us/library/ee157192(v=exchg.80).aspx + if ([[self summary] length]) + [s appendFormat: @"%@", [self summary]]; + + // UID -- http://msdn.microsoft.com/en-us/library/ee159919(v=exchg.80).aspx + if ([[self uid] length]) + [s appendFormat: @"%@", [self uid]]; + + // Sensitivity - FIXME + [s appendFormat: @"%d", 0]; + + // BusyStatus -- http://msdn.microsoft.com/en-us/library/ee202290(v=exchg.80).aspx + [s appendFormat: @"%d", 0]; + + // Reminder -- http://msdn.microsoft.com/en-us/library/ee219691(v=exchg.80).aspx + + return s; +} + +// +// +// +- (void) takeActiveSyncValues: (NSDictionary *) theValues +{ + id o; + + if ((o = [theValues objectForKey: @"UID"])) + [self setUid: o]; + + if ((o = [theValues objectForKey: @"Subject"])) + [self setSummary: o]; + + if ([[theValues objectForKey: @"AllDayEvent"] intValue]) + { + + } + + if ((o = [[theValues objectForKey: @"Body"] objectForKey: @"Data"])) + [self setComment: o]; + + if ((o = [theValues objectForKey: @"Location"])) + [self setLocation: o]; + + if ((o = [theValues objectForKey: @"StartTime"])) + [self setStartDate: [o calendarDate]]; + + if ((o = [theValues objectForKey: @"EndTime"])) + [self setEndDate: [o calendarDate]]; +} + +@end diff --git a/ActiveSync/iCalTimeZone+ActiveSync.h b/ActiveSync/iCalTimeZone+ActiveSync.h new file mode 100644 index 0000000000..3cfadf451c --- /dev/null +++ b/ActiveSync/iCalTimeZone+ActiveSync.h @@ -0,0 +1,33 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __ICALTIMEZONEACTIVESYNC_H__ +#define __ICALTIMEZONEACTIVESYNC_H__ + +#import + +@class NSString; + +@interface iCalTimeZone (ActiveSync) + +- (NSString *) activeSyncRepresentation; + +@end + +#endif diff --git a/ActiveSync/iCalTimeZone+ActiveSync.m b/ActiveSync/iCalTimeZone+ActiveSync.m new file mode 100644 index 0000000000..5eae381da8 --- /dev/null +++ b/ActiveSync/iCalTimeZone+ActiveSync.m @@ -0,0 +1,153 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "iCalTimeZone+ActiveSync.h" + +#include +#include +#include +#include +#include + +#import +#import +#import + +#import + +struct SYSTEMTIME { + uint16_t wYear; + uint16_t wMonth; + uint16_t wDayOfWeek; + uint16_t wDay; + uint16_t wHour; + uint16_t wMinute; + uint16_t wSecond; + uint16_t wMilliseconds; +}; + +@interface iCalTimeZonePeriod (ActiveSync) + +- (void) _fillTZDate: (struct SYSTEMTIME *) tzData; + +@end + +@implementation iCalTimeZonePeriod (ActiveSync) + +// +// FIXME - combine with iCalTimeZone+MAPIStore.m +// +- (void) _fillTZDate: (struct SYSTEMTIME *) tzData +{ + iCalRecurrenceRule *rrule; + NSArray *byMonth; + iCalByDayMask *mask; + NSCalendarDate *dateValue; + + rrule = [self recurrenceRule]; + byMonth = [rrule byMonth]; + if ([byMonth count] > 0) + { + tzData->wMonth = [[byMonth objectAtIndex: 0] intValue]; + mask = [rrule byDayMask]; + tzData->wDayOfWeek = [mask firstDay]; + tzData->wDay = [mask firstOccurrence]; + + dateValue = [self startDate]; + tzData->wHour = [dateValue hourOfDay]; + tzData->wMinute = [dateValue minuteOfHour]; + tzData->wSecond = [dateValue secondOfMinute]; + } +} + +@end + +@implementation iCalTimeZone (ActiveSync) + +// +// FIXME - combine with iCalTimeZone+MAPIStore.m +// +- (iCalTimeZonePeriod *) _mostRecentPeriodWithName: (NSString *) periodName +{ + NSArray *periods; + iCalTimeZonePeriod *period; + NSUInteger max; + + periods = [self childrenWithTag: periodName]; + max = [periods count]; + if (max > 0) + { + periods = [periods sortedArrayUsingSelector: @selector (compare:)]; + period = (iCalTimeZonePeriod *) [periods objectAtIndex: (max - 1)]; + } + else + period = nil; + + return period; +} + + +- (NSString *) activeSyncRepresentation +{ + iCalTimeZonePeriod *period; + NSMutableData *bytes; + + uint32_t lBias; + uint32_t lStandardBias; + uint32_t lDaylightBias; + //uint16_t wStandardYear; + struct SYSTEMTIME stStandardDate; + //uint16_t wDaylightYear; + struct SYSTEMTIME stDaylightDate; + + char standardName[64], daylightName[64]; + + bytes = [NSMutableData data]; + + memset(standardName, 0, 64); + memset(daylightName, 0, 64); + lStandardBias = 0; + + period = [self _mostRecentPeriodWithName: @"STANDARD"]; + lBias = -[period secondsOffsetFromGMT] / 60; + [period _fillTZDate: &stStandardDate]; + + period = [self _mostRecentPeriodWithName: @"DAYLIGHT"]; + if (!period) + stStandardDate.wMonth = 0; + + lDaylightBias = (uint32_t) -([period secondsOffsetFromGMT] / 60) - lBias; + [period _fillTZDate: &stDaylightDate]; + //wStandardYear = stStandardDate.wYear; + //wDaylightYear = stDaylightDate.wYear; + + + // We build the timezone + [bytes appendBytes: &lBias length: 4]; + [bytes appendBytes: standardName length: 64]; + [bytes appendBytes: &stStandardDate length: 16]; + [bytes appendBytes: &lStandardBias length: 4]; + [bytes appendBytes: daylightName length: 64]; + [bytes appendBytes: &stDaylightDate length: 16]; + [bytes appendBytes: &lDaylightBias length: 4]; + + return [bytes stringByEncodingBase64]; +} + +@end diff --git a/ActiveSync/iCalToDo+ActiveSync.h b/ActiveSync/iCalToDo+ActiveSync.h new file mode 100644 index 0000000000..92ef9ef58c --- /dev/null +++ b/ActiveSync/iCalToDo+ActiveSync.h @@ -0,0 +1,34 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __ICALTODOACTIVESYNC_H__ +#define __ICALTODOACTIVESYNC_H__ + +#import + +@class NSString; + +@interface iCalToDo (ActiveSync) + +- (NSString *) activeSyncRepresentation; +- (void) takeActiveSyncValues: (NSDictionary *) theValues; + +@end + +#endif diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m new file mode 100644 index 0000000000..0e0f97c9a7 --- /dev/null +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -0,0 +1,85 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "iCalToDo+ActiveSync.h" + +#import +#import + +#include "NSDate+ActiveSync.h" + +@implementation iCalToDo (ActiveSync) + +- (NSString *) activeSyncRepresentation +{ + NSMutableString *s; + int v; + + s = [NSMutableString string]; + + // Complete + NSCalendarDate *completed; + completed = [self completed]; + [s appendFormat: @"%d", (completed ? 1 : 0)]; + + // DateCompleted + [s appendFormat: @"%@", [completed activeSyncRepresentation]]; + + // Due date + NSCalendarDate *due; + due = [self due]; + if (due) + [s appendFormat: @"%@", [due activeSyncRepresentation]]; + + // Importance + NSString *priority; + priority = [self priority]; + if ([priority isEqualToString: @"9"]) + v = 0; + else if ([priority isEqualToString: @"1"]) + v = 2; + else + v = 1; + [s appendFormat: @"%d", v]; + + // Reminder - FIXME + [s appendFormat: @"%d", 0]; + + // Sensitivity - FIXME + [s appendFormat: @"%d", 0]; + + // UTCStartDate - FIXME + if ([self startDate]) + [s appendFormat: @"%@", [[self startDate] activeSyncRepresentation]]; + + // Subject + [s appendFormat: @"%@", [self summary]]; + + return s; +} + +- (void) takeActiveSyncValues: (NSDictionary *) theValues +{ + id o; + + if ((o = [theValues objectForKey: @"Subject"])) + [self setSummary: o]; +} + +@end diff --git a/ActiveSync/product.plist b/ActiveSync/product.plist new file mode 100644 index 0000000000..5e5eadabc4 --- /dev/null +++ b/ActiveSync/product.plist @@ -0,0 +1,3 @@ +{ + requires = ( MAIN, Appointments, Contacts, Mailer ); +} \ No newline at end of file From 68dafdfdeb15ac2d33c21f00a7db521b7d400e72 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:25:00 -0500 Subject: [PATCH 066/214] Removed old comments --- ActiveSync/SOGoActiveSyncDispatcher.m | 37 --------------------------- 1 file changed, 37 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 54c299d0fd..e8ca179856 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -19,43 +19,6 @@ */ #include "SOGoActiveSyncDispatcher.h" - -// NICE INFO -// -// http://blogs.technet.com/b/exchange/archive/2013/10/04/exchange-activesync-mailbox-log-analysis.aspx -// -/* - TODO - X parse correctly the device id - X tester 2 add ou 2 change ou 2 deletes en meme temps (ie., avant de faire un sync) - X ajouter le last UID au sync key dans le cas du IMAP - genre UID-MODSEQ - X au lieu d'avoir 50 if dans le process, construire le selecteur a partir de la string et l'invoker - - implementer MeetingResponse - X implementer ResolveRecipients - X combiner smart reply et smart forward - X implementer MoveItems - X implemneter SmartForward et SmartReply - X implementer Search - - implementer GetAttachment - X supporter les multipart/mixed pour afficher correctement les mails. etc - X fixer la hierarchie dans les folders imap - - finir implementer Ping - X implemneter add/update/delete partout - - implementer le Sync en fonction d'un timestamp initial pour la syncrho genre 1 mois derriere - X tester le sync de plusieurs collections en meme temps - pas juste voir aucun changement dans une collection sur X et dire qu'il n'y a rien de nouveau - - implementer le OOF - voir 4.18.2 dans ASCMD - X implementer le fetch lors du Sync - les iOS font ca - - cleanup the include mess - - FIXER le MoveItem - le DstMsgId - grokker le UID lors du copy - - tester l'ajout/suppression/rename de dossier IMAP - - fixer prob de timezone dans resolve recipients - - fixer prob de timezone dans les events - - cleanup warning mess - - cleanup des fixmes - X fix crash apple reception de mial + fuckup attacments + fuckups html - */ - - #import #import #import From e8438a6235f0a37f5126c7253700dbab3dcff4d1 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 14:53:49 -0500 Subject: [PATCH 067/214] Don't write decoded stuff if not needed --- ActiveSync/NSData+ActiveSync.m | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index f8e89b1351..4516681782 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -25,6 +25,8 @@ #include #include +#define WBXMLDEBUG 0 + @implementation NSData (ActiveSync) - (NSData *) wbxml2xml @@ -54,7 +56,10 @@ - (NSData *) wbxml2xml } data = [[NSData alloc] initWithBytes: xml length: xml_len]; + +#if WBXMLDEBUG [data writeToFile: @"/tmp/protocol.decoded" atomically: YES]; +#endif free(xml); @@ -101,7 +106,10 @@ - (NSData *) xml2wbxml } data = [[NSData alloc] initWithBytes: wbxml length: wbxml_len]; + +#if WBXMLDEBUG [data writeToFile: @"/tmp/protocol.encoded" atomically: YES]; +#endif free(wbxml); wbxml_conv_xml2wbxml_destroy(conv); From 834e05bab1f925cb2a9dbeb48a24cd31cab7e7ae Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 15:29:57 -0500 Subject: [PATCH 068/214] Fixed typo messing up adds --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 1d8fe35e6c..91704c569e 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -192,7 +192,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement { anAddition = [additions objectAtIndex: i]; - clientId = [[(id)[anAddition getElementsByTagName: @"CientId"] lastObject] textValue]; + clientId = [[(id)[anAddition getElementsByTagName: @"ClientId"] lastObject] textValue]; allValues = [[(id)[anAddition getElementsByTagName: @"ApplicationData"] lastObject] applicationData]; switch (theFolderType) From bf798061d3e2aae345cf2cd7ba0d3105f3e215c0 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 16:48:39 -0500 Subject: [PATCH 069/214] Fixed timezones support for events and added more supported props --- ActiveSync/NSData+ActiveSync.m | 2 +- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 10 ++- ActiveSync/iCalEvent+ActiveSync.m | 95 +++++++++++++++++++++- 3 files changed, 100 insertions(+), 7 deletions(-) diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 4516681782..a665cd3ec9 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -25,7 +25,7 @@ #include #include -#define WBXMLDEBUG 0 +#define WBXMLDEBUG 1 @implementation NSData (ActiveSync) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 91704c569e..889b419994 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -177,10 +177,10 @@ - (void) processSyncAddCommand: (id ) theDocumentElement withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType inBuffer: (NSMutableString *) theBuffer { - NSArray *additions; + NSMutableDictionary *allValues; NSString *clientId, *serverId; - NSDictionary *allValues; - + NSArray *additions; + id anAddition, sogoObject, o; int i; @@ -193,7 +193,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement anAddition = [additions objectAtIndex: i]; clientId = [[(id)[anAddition getElementsByTagName: @"ClientId"] lastObject] textValue]; - allValues = [[(id)[anAddition getElementsByTagName: @"ApplicationData"] lastObject] applicationData]; + allValues = [NSMutableDictionary dictionaryWithDictionary: [[(id)[anAddition getElementsByTagName: @"ApplicationData"] lastObject] applicationData]]; switch (theFolderType) { @@ -210,6 +210,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; sogoObject = [[SOGoAppointmentObject alloc] initWithName: serverId inContainer: theCollection]; + [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; o = [sogoObject component: YES secure: NO]; } break; @@ -218,6 +219,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; sogoObject = [[SOGoTaskObject alloc] initWithName: serverId inContainer: theCollection]; + [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; o = [sogoObject component: YES secure: NO]; } break; diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index f54c946288..afb6d9fe8a 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -19,9 +19,13 @@ */ #import "iCalEvent+ActiveSync.h" +#import +#import #import #import +#import +#import #import #include "iCalTimeZone+ActiveSync.h" @@ -84,7 +88,13 @@ - (NSString *) activeSyncRepresentation // - (void) takeActiveSyncValues: (NSDictionary *) theValues { + iCalDateTime *start, *end; + NSTimeZone *userTimeZone; + iCalTimeZone *tz; id o; + + NSInteger tzOffset; + BOOL isAllDay; if ((o = [theValues objectForKey: @"UID"])) [self setUid: o]; @@ -92,11 +102,56 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues if ((o = [theValues objectForKey: @"Subject"])) [self setSummary: o]; + isAllDay = NO; if ([[theValues objectForKey: @"AllDayEvent"] intValue]) { + isAllDay = YES; + } + // + // 0- free, 1- tentative, 2- busy and 3- out of office + // + if ((o = [theValues objectForKey: @"BusyStatus"])) + { + [o intValue]; } + // + // + // + if ((o = [theValues objectForKey: @"MeetingStatus"])) + { + [o intValue]; + } + + // + // 0- normal, 1- personal, 2- private and 3-confidential + // + if ((o = [theValues objectForKey: @"Sensitivy"])) + { + switch ([o intValue]) + { + case 2: + [self setAccessClass: @"PRIVATE"]; + break; + case 3: + [self setAccessClass: @"CONFIDENTIAL"]; + break; + case 0: + case 1: + default: + [self setAccessClass: @"PUBLIC"]; + } + } + + if ((o = [theValues objectForKey: @"TimeZone"])) + { + // Ugh, we ignore it for now. + userTimeZone = [theValues objectForKey: @"SOGoUserTimeZone"]; + tz = [iCalTimeZone timeZoneForName: [userTimeZone name]]; + [(iCalCalendar *) parent addTimeZone: tz]; + } + if ((o = [[theValues objectForKey: @"Body"] objectForKey: @"Data"])) [self setComment: o]; @@ -104,10 +159,46 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues [self setLocation: o]; if ((o = [theValues objectForKey: @"StartTime"])) - [self setStartDate: [o calendarDate]]; + { + o = [o calendarDate]; + start = (iCalDateTime *) [self uniqueChildWithTag: @"dtstart"]; + [start setTimeZone: tz]; + + if (isAllDay) + { + [start setDate: o]; + [start setTimeZone: nil]; + } + else + { + tzOffset = [userTimeZone secondsFromGMTForDate: o]; + o = [o dateByAddingYears: 0 months: 0 days: 0 + hours: 0 minutes: 0 + seconds: tzOffset]; + [start setDateTime: o]; + } + } if ((o = [theValues objectForKey: @"EndTime"])) - [self setEndDate: [o calendarDate]]; + { + o = [o calendarDate]; + end = (iCalDateTime *) [self uniqueChildWithTag: @"dtend"]; + [end setTimeZone: tz]; + + if (isAllDay) + { + [end setDate: o]; + [end setTimeZone: nil]; + } + else + { + tzOffset = [userTimeZone secondsFromGMTForDate: o]; + o = [o dateByAddingYears: 0 months: 0 days: 0 + hours: 0 minutes: 0 + seconds: tzOffset]; + [end setDateTime: o]; + } + } } @end From ee49836f2ee5a90b203367f9d386a16c494bce91 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 10 Jan 2014 16:49:40 -0500 Subject: [PATCH 070/214] Disabled debugging... --- ActiveSync/NSData+ActiveSync.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index a665cd3ec9..4516681782 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -25,7 +25,7 @@ #include #include -#define WBXMLDEBUG 1 +#define WBXMLDEBUG 0 @implementation NSData (ActiveSync) From f74066c9a6421abba4c370ee7dca609f4404c74a Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Sat, 11 Jan 2014 19:31:39 -0500 Subject: [PATCH 071/214] Support for more props --- ActiveSync/iCalEvent+ActiveSync.m | 2 + ActiveSync/iCalToDo+ActiveSync.m | 70 +++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index afb6d9fe8a..7a361f814c 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -99,6 +99,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues if ((o = [theValues objectForKey: @"UID"])) [self setUid: o]; + // FIXME: merge with iCalToDo if ((o = [theValues objectForKey: @"Subject"])) [self setSummary: o]; @@ -152,6 +153,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues [(iCalCalendar *) parent addTimeZone: tz]; } + // FIXME: merge with iCalToDo if ((o = [[theValues objectForKey: @"Body"] objectForKey: @"Data"])) [self setComment: o]; diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m index 0e0f97c9a7..a329d533d8 100644 --- a/ActiveSync/iCalToDo+ActiveSync.m +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -19,10 +19,18 @@ */ #import "iCalToDo+ActiveSync.h" +#import +#import #import #import +#import + +#import +#import +#import #include "NSDate+ActiveSync.h" +#include "NSString+ActiveSync.h" @implementation iCalToDo (ActiveSync) @@ -76,10 +84,72 @@ - (NSString *) activeSyncRepresentation - (void) takeActiveSyncValues: (NSDictionary *) theValues { + NSTimeZone *userTimeZone; + iCalTimeZone *tz; id o; + NSInteger tzOffset; + + userTimeZone = [theValues objectForKey: @"SOGoUserTimeZone"]; + tz = [iCalTimeZone timeZoneForName: [userTimeZone name]]; + [(iCalCalendar *) parent addTimeZone: tz]; + + // FIXME: merge with iCalEvent if ((o = [theValues objectForKey: @"Subject"])) [self setSummary: o]; + + // FIXME: merge with iCalEvent + if ((o = [[theValues objectForKey: @"Body"] objectForKey: @"Data"])) + [self setComment: o]; + + + if ([[theValues objectForKey: @"Complete"] intValue] && + ((o = [theValues objectForKey: @"DateCompleted"])) ) + { + iCalDateTime *completed; + + o = [o calendarDate]; + completed = (iCalDateTime *) [self uniqueChildWithTag: @"completed"]; + //tzOffset = [[o timeZone] secondsFromGMTForDate: o]; + //o = [o dateByAddingYears: 0 months: 0 days: 0 + // hours: 0 minutes: 0 + // seconds: -tzOffset]; + [completed setDate: o]; + [self setStatus: @"COMPLETED"]; + } + + if ((o = [theValues objectForKey: @"DueDate"])) + { + iCalDateTime *due; + + + o = [o calendarDate]; + due = (iCalDateTime *) [self uniqueChildWithTag: @"due"]; + [due setTimeZone: tz]; + + tzOffset = [userTimeZone secondsFromGMTForDate: o]; + o = [o dateByAddingYears: 0 months: 0 days: 0 + hours: 0 minutes: 0 + seconds: tzOffset]; + [due setDateTime: o]; + } + + // 2 == high, 1 == normal, 0 == low + if ((o = [theValues objectForKey: @"Importance"])) + { + if ([o intValue] == 2) + [self setPriority: @"1"]; + else if ([o intValue] == 1) + [self setPriority: @"5"]; + else + [self setPriority: @"9"]; + } + + + if ((o = [theValues objectForKey: @"ReminderTime"])) + { + + } } @end From 2a9ccf8122fbea723785737482ce9d48813803bd Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 13 Jan 2014 10:18:20 -0500 Subject: [PATCH 072/214] Now able to grab the command from the URI --- ActiveSync/NSString+ActiveSync.h | 1 + ActiveSync/NSString+ActiveSync.m | 46 +++++++++++++++++++++++++------- 2 files changed, 38 insertions(+), 9 deletions(-) diff --git a/ActiveSync/NSString+ActiveSync.h b/ActiveSync/NSString+ActiveSync.h index dfdfdde03c..70919cc81e 100644 --- a/ActiveSync/NSString+ActiveSync.h +++ b/ActiveSync/NSString+ActiveSync.h @@ -32,6 +32,7 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVE - (NSString *) realCollectionIdWithFolderType: (SOGoMicrosoftActiveSyncFolderType *) folderType; - (NSCalendarDate *) calendarDate; - (NSString *) deviceId; +- (NSString *) command; @end diff --git a/ActiveSync/NSString+ActiveSync.m b/ActiveSync/NSString+ActiveSync.m index 363cb2e29b..2f66cffe9f 100644 --- a/ActiveSync/NSString+ActiveSync.m +++ b/ActiveSync/NSString+ActiveSync.m @@ -87,12 +87,7 @@ - (NSCalendarDate *) calendarDate return o; } -// -// This method extracts the "DeviceId" from a URI: -// -// /SOGo/Microsoft-Server-ActiveSync?Cmd=FolderSync&User=sogo10&DeviceId=SEC17CD1A3E9E3F2&DeviceType=SAMSUNGSGHI317M -// -- (NSString *) deviceId +- (NSString *) _valueForParameter: (NSString *) theParameter { NSArray *components; NSString *s; @@ -104,10 +99,43 @@ - (NSString *) deviceId { s = [components objectAtIndex: i]; - if ([[s uppercaseString] hasPrefix: @"DEVICEID="]) - return [s substringFromIndex: 9]; + if ([[s uppercaseString] hasPrefix: theParameter]) + return [s substringFromIndex: [theParameter length]]; } + + return nil; +} + +// +// This method extracts the "DeviceId" from a URI: +// +// /SOGo/Microsoft-Server-ActiveSync?Cmd=FolderSync&User=sogo10&DeviceId=SEC17CD1A3E9E3F2&DeviceType=SAMSUNGSGHI317M +// +- (NSString *) deviceId +{ + NSString *s; + + s = [self _valueForParameter: @"DEVICEID="]; + + if (!s) + s = @"Unknown"; - return @"Unknown"; + return s; } + +// +// +// +- (NSString *) command +{ + NSString *s; + + s = [self _valueForParameter: @"CMD="]; + + if (!s) + s = @"Unknown"; + + return s; +} + @end From 2e44ac0f9b9b513b40e1b490ac1d48e846108d5f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 13 Jan 2014 10:19:00 -0500 Subject: [PATCH 073/214] Fixed MoveItems and also fixed Ping with no content --- ActiveSync/SOGoActiveSyncDispatcher.m | 75 ++++++++++++++++++++------- 1 file changed, 56 insertions(+), 19 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index e8ca179856..eeb04aa494 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -47,6 +47,8 @@ #import #import +#import +#import #import #import @@ -558,7 +560,7 @@ - (void) processItemOperations: (id ) theDocumentElement - (void) processMoveItems: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { - NSString *srcMessageId, *srcFolderId, *dstFolderId; + NSString *srcMessageId, *srcFolderId, *dstFolderId, *dstMessageId; SOGoMicrosoftActiveSyncFolderType srcFolderType, dstFolderType; srcMessageId = [[(id)[theDocumentElement getElementsByTagName: @"SrcMsgId"] lastObject] textValue]; @@ -571,8 +573,11 @@ - (void) processMoveItems: (id ) theDocumentElement SOGoMailAccounts *accountsFolder; SOGoMailFolder *currentFolder; SOGoUserFolder *userFolder; + NGImap4Client *client; id currentCollection; - NSException *ex; + + NSDictionary *response; + NSString *v; userFolder = [[context activeUser] homeFolderInContext: context]; accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; @@ -582,20 +587,38 @@ - (void) processMoveItems: (id ) theDocumentElement inContext: context acquire: NO]; - // FIXME: improve destination folder - ex = (id)[currentCollection moveUIDs: [NSArray arrayWithObject: srcMessageId] - toFolder: [NSString stringWithFormat: @"/0/folder%@", dstFolderId] - inContext: context]; - if (ex) + client = [[currentCollection imap4Connection] client]; + [client select: srcFolderId]; + response = [client copyUid: [srcMessageId intValue] + toFolder: [NSString stringWithFormat: @"/%@", dstFolderId]]; + + // We extract the destionation message id + if ([[response objectForKey: @"result"] boolValue] + && (v = [[[response objectForKey: @"RawResponse"] objectForKey: @"ResponseResult"] objectForKey: @"flag"]) + && [v hasPrefix: @"COPYUID "]) + { + dstMessageId = [[v componentsSeparatedByString: @" "] lastObject]; + + // We mark the original message as deleted + response = [client storeFlags: [NSArray arrayWithObject: @"Deleted"] + forUIDs: [NSArray arrayWithObject: srcMessageId] + addOrRemove: YES]; + + if ([[response valueForKey: @"result"] boolValue]) + [currentCollection markForExpunge]; + + } + + if (!dstMessageId) { [theResponse setStatus: 500]; - [theResponse appendContentString: [ex reason]]; + [theResponse appendContentString: @"Unable to move message"]; } else { NSMutableString *s; NSData *d; - + // Everything is alright, lets return the proper response s = [NSMutableString string]; @@ -603,11 +626,10 @@ - (void) processMoveItems: (id ) theDocumentElement [s appendString: @""]; [s appendString: @""]; [s appendFormat: @"%@", srcMessageId]; - [s appendFormat: @"%@", srcMessageId]; + [s appendFormat: @"%@", dstMessageId]; [s appendFormat: @"%d", 1]; [s appendString: @""]; - d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; [theResponse setContent: d]; @@ -616,6 +638,7 @@ - (void) processMoveItems: (id ) theDocumentElement else { [theResponse setStatus: 500]; + [theResponse appendContentString: @"Unsupported move operation"]; } } @@ -1155,16 +1178,30 @@ - (NSException *) dispatchRequest: (id) theRequest if (!d) { - return [NSException exceptionWithHTTPStatus: 500]; + // We check if it's a Ping command with no body. + // See http://msdn.microsoft.com/en-us/library/ee200913(v=exchg.80).aspx for details + cmdName = [[theRequest uri] command]; + + if ([cmdName caseInsensitiveCompare: @"Ping"] != NSOrderedSame) + return [NSException exceptionWithHTTPStatus: 500]; } - builder = [[[NSClassFromString(@"DOMSaxBuilder") alloc] init] autorelease]; - dom = [builder buildFromData: d]; - documentElement = [dom documentElement]; - - // See 2.2.2 Commands - http://msdn.microsoft.com/en-us/library/ee202197(v=exchg.80).aspx - // for all potential commands - cmdName = [NSString stringWithFormat: @"process%@:inResponse:", [documentElement tagName]]; + if (d) + { + builder = [[[NSClassFromString(@"DOMSaxBuilder") alloc] init] autorelease]; + dom = [builder buildFromData: d]; + documentElement = [dom documentElement]; + + // See 2.2.2 Commands - http://msdn.microsoft.com/en-us/library/ee202197(v=exchg.80).aspx + // for all potential commands + cmdName = [NSString stringWithFormat: @"process%@:inResponse:", [documentElement tagName]]; + } + else + { + // Ping command with empty body + cmdName = [NSString stringWithFormat: @"process%@:inResponse:", cmdName]; + } + aSelector = NSSelectorFromString(cmdName); [self performSelector: aSelector withObject: documentElement withObject: theResponse]; From c252f5b7a861ea79d671397e50400e4105f17fd7 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 13 Jan 2014 11:46:32 -0500 Subject: [PATCH 074/214] Fixed the license indent --- ActiveSync/ActiveSyncProduct.m | 34 +++++++++++------- ActiveSync/LICENSE | 27 ++++++++++---- ActiveSync/NGDOMElement+ActiveSync.h | 34 +++++++++++------- ActiveSync/NGDOMElement+ActiveSync.m | 30 ++++++++++------ ActiveSync/NGMimeMessage+ActiveSync.h | 34 +++++++++++------- ActiveSync/NGMimeMessage+ActiveSync.m | 34 +++++++++++------- ActiveSync/NGVCard+ActiveSync.h | 34 +++++++++++------- ActiveSync/NGVCard+ActiveSync.m | 34 +++++++++++------- ActiveSync/NSData+ActiveSync.h | 34 +++++++++++------- ActiveSync/NSData+ActiveSync.m | 34 +++++++++++------- ActiveSync/NSDate+ActiveSync.h | 34 +++++++++++------- ActiveSync/NSDate+ActiveSync.m | 34 +++++++++++------- ActiveSync/NSString+ActiveSync.h | 34 +++++++++++------- ActiveSync/NSString+ActiveSync.m | 34 +++++++++++------- ActiveSync/SOGoActiveSyncConstants.h | 34 +++++++++++------- ActiveSync/SOGoActiveSyncDispatcher+Sync.h | 34 +++++++++++------- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 34 +++++++++++------- ActiveSync/SOGoActiveSyncDispatcher.h | 34 +++++++++++------- ActiveSync/SOGoActiveSyncDispatcher.m | 34 +++++++++++------- ActiveSync/SOGoMailObject+ActiveSync.h | 34 +++++++++++------- ActiveSync/SOGoMailObject+ActiveSync.m | 34 +++++++++++------- .../SoObjectWebDAVDispatcher+ActiveSync.m | 30 ++++++++++------ ActiveSync/iCalEvent+ActiveSync.h | 34 +++++++++++------- ActiveSync/iCalEvent+ActiveSync.m | 35 ++++++++++++------- ActiveSync/iCalTimeZone+ActiveSync.h | 34 +++++++++++------- ActiveSync/iCalTimeZone+ActiveSync.m | 34 +++++++++++------- ActiveSync/iCalToDo+ActiveSync.h | 34 +++++++++++------- ActiveSync/iCalToDo+ActiveSync.m | 34 +++++++++++------- 28 files changed, 611 insertions(+), 327 deletions(-) diff --git a/ActiveSync/ActiveSyncProduct.m b/ActiveSync/ActiveSyncProduct.m index 9eda82a0bd..6dd3c4ca45 100644 --- a/ActiveSync/ActiveSyncProduct.m +++ b/ActiveSync/ActiveSyncProduct.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ diff --git a/ActiveSync/LICENSE b/ActiveSync/LICENSE index 2f54581443..86c70cafeb 100644 --- a/ActiveSync/LICENSE +++ b/ActiveSync/LICENSE @@ -1,12 +1,25 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/ActiveSync/NGDOMElement+ActiveSync.h b/ActiveSync/NGDOMElement+ActiveSync.h index f4f46e6f7f..037b0bcc6b 100644 --- a/ActiveSync/NGDOMElement+ActiveSync.h +++ b/ActiveSync/NGDOMElement+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NGDOMELEMENTACTIVESYNC_H__ diff --git a/ActiveSync/NGDOMElement+ActiveSync.m b/ActiveSync/NGDOMElement+ActiveSync.m index bc0e4c4fbb..61799bfd2a 100644 --- a/ActiveSync/NGDOMElement+ActiveSync.m +++ b/ActiveSync/NGDOMElement+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "NGDOMElement+ActiveSync.h" diff --git a/ActiveSync/NGMimeMessage+ActiveSync.h b/ActiveSync/NGMimeMessage+ActiveSync.h index 57d172862d..4a319da0ff 100644 --- a/ActiveSync/NGMimeMessage+ActiveSync.h +++ b/ActiveSync/NGMimeMessage+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NGMIMEMESSAGEACTIVESYNC_H__ diff --git a/ActiveSync/NGMimeMessage+ActiveSync.m b/ActiveSync/NGMimeMessage+ActiveSync.m index a5c57e33f8..45643bee68 100644 --- a/ActiveSync/NGMimeMessage+ActiveSync.m +++ b/ActiveSync/NGMimeMessage+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "NGMimeMessage+ActiveSync.h" diff --git a/ActiveSync/NGVCard+ActiveSync.h b/ActiveSync/NGVCard+ActiveSync.h index fb442ae8dc..18bcb1fc86 100644 --- a/ActiveSync/NGVCard+ActiveSync.h +++ b/ActiveSync/NGVCard+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NGVCARDACTIVESYNC_H__ diff --git a/ActiveSync/NGVCard+ActiveSync.m b/ActiveSync/NGVCard+ActiveSync.m index 4d805a10af..1255e90f48 100644 --- a/ActiveSync/NGVCard+ActiveSync.m +++ b/ActiveSync/NGVCard+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "NGVCard+ActiveSync.h" diff --git a/ActiveSync/NSData+ActiveSync.h b/ActiveSync/NSData+ActiveSync.h index fd6ceb1a63..7604d545ee 100644 --- a/ActiveSync/NSData+ActiveSync.h +++ b/ActiveSync/NSData+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NSDATAACTIVESYNC_H__ diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 4516681782..5654d606ca 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "NSData+ActiveSync.h" diff --git a/ActiveSync/NSDate+ActiveSync.h b/ActiveSync/NSDate+ActiveSync.h index 89f1071052..1725524704 100644 --- a/ActiveSync/NSDate+ActiveSync.h +++ b/ActiveSync/NSDate+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NSDATEACTIVESYNC_H__ diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index d45c8e5b5d..58de5b6abe 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "NSDate+ActiveSync.h" diff --git a/ActiveSync/NSString+ActiveSync.h b/ActiveSync/NSString+ActiveSync.h index 70919cc81e..d3c0cd0284 100644 --- a/ActiveSync/NSString+ActiveSync.h +++ b/ActiveSync/NSString+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __NSSTRINGACTIVESYNC_H__ diff --git a/ActiveSync/NSString+ActiveSync.m b/ActiveSync/NSString+ActiveSync.m index 2f66cffe9f..6b966e1817 100644 --- a/ActiveSync/NSString+ActiveSync.m +++ b/ActiveSync/NSString+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "NSString+ActiveSync.h" diff --git a/ActiveSync/SOGoActiveSyncConstants.h b/ActiveSync/SOGoActiveSyncConstants.h index cfcb128bae..1fd7229b8b 100644 --- a/ActiveSync/SOGoActiveSyncConstants.h +++ b/ActiveSync/SOGoActiveSyncConstants.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __SOGOACTIVESYNCCONSTANTS_H__ diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.h b/ActiveSync/SOGoActiveSyncDispatcher+Sync.h index 3de8f6a846..5508b4d893 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.h +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __SOGOACTIVESYNCDISPATCHERSYNC_H__ diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 889b419994..27f89d5cb8 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "SOGoActiveSyncDispatcher+Sync.h" diff --git a/ActiveSync/SOGoActiveSyncDispatcher.h b/ActiveSync/SOGoActiveSyncDispatcher.h index 66baf757ef..44302d8c64 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.h +++ b/ActiveSync/SOGoActiveSyncDispatcher.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index eeb04aa494..03066562d6 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "SOGoActiveSyncDispatcher.h" diff --git a/ActiveSync/SOGoMailObject+ActiveSync.h b/ActiveSync/SOGoMailObject+ActiveSync.h index 358c7f73f1..17e03be6bd 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.h +++ b/ActiveSync/SOGoMailObject+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __SOGOMAILOBJECTACTIVESYNC_H__ diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 802f7d025b..897df3668e 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "SOGoMailObject+ActiveSync.h" diff --git a/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m index c38742d15c..6e21a426dc 100644 --- a/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m +++ b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import diff --git a/ActiveSync/iCalEvent+ActiveSync.h b/ActiveSync/iCalEvent+ActiveSync.h index 6627b1f817..3a22eee21b 100644 --- a/ActiveSync/iCalEvent+ActiveSync.h +++ b/ActiveSync/iCalEvent+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index 7a361f814c..a090c42fb8 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -3,20 +3,31 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ + #import "iCalEvent+ActiveSync.h" #import diff --git a/ActiveSync/iCalTimeZone+ActiveSync.h b/ActiveSync/iCalTimeZone+ActiveSync.h index 3cfadf451c..3652a1dbed 100644 --- a/ActiveSync/iCalTimeZone+ActiveSync.h +++ b/ActiveSync/iCalTimeZone+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __ICALTIMEZONEACTIVESYNC_H__ diff --git a/ActiveSync/iCalTimeZone+ActiveSync.m b/ActiveSync/iCalTimeZone+ActiveSync.m index 5eae381da8..d9c1f2fc61 100644 --- a/ActiveSync/iCalTimeZone+ActiveSync.m +++ b/ActiveSync/iCalTimeZone+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "iCalTimeZone+ActiveSync.h" diff --git a/ActiveSync/iCalToDo+ActiveSync.h b/ActiveSync/iCalToDo+ActiveSync.h index 92ef9ef58c..f77d753724 100644 --- a/ActiveSync/iCalToDo+ActiveSync.h +++ b/ActiveSync/iCalToDo+ActiveSync.h @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef __ICALTODOACTIVESYNC_H__ diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m index a329d533d8..3343c66674 100644 --- a/ActiveSync/iCalToDo+ActiveSync.m +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -3,18 +3,28 @@ Copyright (c) 2014, Inverse inc. All rights reserved. -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the Inverse inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED -TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #import "iCalToDo+ActiveSync.h" From bb9c4cf0396cef689dde5400e9d28409780c7e2a Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 13 Jan 2014 16:24:15 -0500 Subject: [PATCH 075/214] Handle not found objects and correctly get all "Collection" --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 27f89d5cb8..010c1f30d8 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -318,6 +318,13 @@ - (void) processSyncChangeCommand: (id ) theDocumentElement inContext: context acquire: NO]; + // Object was removed inbetween sync/commands? + if ([sogoObject isKindOfClass: [NSException class]]) + { + // FIXME - return status == 8 + continue; + } + switch (theFolderType) { case ActiveSyncContactFolder: @@ -903,7 +910,7 @@ - (void) processSync: (id ) theDocumentElement [s appendString: @""]; [s appendString: @""]; - allCollections = (id)[theDocumentElement getElementsByTagName: @"Collections"]; + allCollections = (id)[theDocumentElement getElementsByTagName: @"Collection"]; for (i = 0; i < [allCollections count]; i++) { From 7c7cabe4329207a124dac3e4fcdafacb42f3dcf9 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 13 Jan 2014 16:25:14 -0500 Subject: [PATCH 076/214] First pass at organizer/attendees support --- ActiveSync/iCalEvent+ActiveSync.m | 57 +++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index a090c42fb8..0db3f1cf5b 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -30,6 +30,7 @@ #import "iCalEvent+ActiveSync.h" +#import #import #import #import @@ -38,6 +39,7 @@ #import #import +#import #include "iCalTimeZone+ActiveSync.h" #include "NSDate+ActiveSync.h" @@ -48,6 +50,9 @@ @implementation iCalEvent (ActiveSync) - (NSString *) activeSyncRepresentation { NSMutableString *s; + NSArray *attendees; + + iCalPerson *organizer, *attendee; iCalTimeZone *tz; s = [NSMutableString string]; @@ -74,7 +79,56 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%@", [[tz activeSyncRepresentation] stringByReplacingString: @"\n" withString: @""]];; + // Organizer and attendees + if ((organizer = [self organizer])) + { + [s appendFormat: @"%@", [organizer rfc822Email]]; + [s appendFormat: @"%@", [organizer cn]]; + } + + attendees = [self attendees]; + if ([attendees count]) + { + int i, attendee_type, attendee_status; + + [s appendString: @""]; + + for (i = 0; i < [attendees count]; i++) + { + [s appendString: @""]; + + attendee = [attendees objectAtIndex: i]; + [s appendFormat: @"%@", [attendee rfc822Email]]; + [s appendFormat: @"%@", [attendee cn]]; + + + attendee_status = 5; + if ([[attendee partStat] caseInsensitiveCompare: @"ACCEPTED"] == NSOrderedSame) + attendee_status = 3; + else if ([[attendee partStat] caseInsensitiveCompare: @"DECLINED"] == NSOrderedSame) + attendee_status = 4; + else if ([[attendee partStat] caseInsensitiveCompare: @"TENTATIVE"] == NSOrderedSame) + attendee_status = 2; + + [s appendFormat: @"%d", attendee_status]; + + // FIXME: handle resource + if ([[attendee role] caseInsensitiveCompare: @"REQ-PARTICIPANT"] == NSOrderedSame) + attendee_type = 1; + else + attendee_type = 2; + + + [s appendFormat: @"%d", attendee_type]; + + [s appendString: @""]; + + } + + [s appendString: @""]; + } + // Subject -- http://msdn.microsoft.com/en-us/library/ee157192(v=exchg.80).aspx if ([[self summary] length]) [s appendFormat: @"%@", [self summary]]; @@ -95,7 +149,10 @@ - (NSString *) activeSyncRepresentation } // +// To understand meeting requests/responses, see: // +// http://blogs.msdn.com/b/exchangedev/archive/2011/07/22/working-with-meeting-requests-in-exchange-activesync.aspx +// http://blogs.msdn.com/b/exchangedev/archive/2011/07/29/working-with-meeting-responses-in-exchange-activesync.aspx // - (void) takeActiveSyncValues: (NSDictionary *) theValues { From 0ffa0649c5c933e7f2b4ba3d0afac74ff7ba67b4 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 10:09:10 -0500 Subject: [PATCH 077/214] Wrap Fetch responses into tags so iOS works correctly --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 1 + 1 file changed, 1 insertion(+) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 010c1f30d8..2a87e23a10 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -712,6 +712,7 @@ - (void) processSyncCommands: (id ) theDocumentElement inCollection: theCollection withType: theFolderType inBuffer: theBuffer]; + *processed = YES; } } } From 02992a70181512a1d02f2f4afb7797aed9db4935 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 10:42:15 -0500 Subject: [PATCH 078/214] Correctly decode base64 text parts before returning them --- ActiveSync/SOGoMailObject+ActiveSync.m | 29 +++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 897df3668e..2545c8c87d 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -116,21 +116,38 @@ - (NSData *) _preferredBodyDataInMultipartUsingType: (int) theType // // - (NSData *) _preferredBodyDataUsingType: (int) theType + nativeType: (int *) theNativeType { - NSString *type, *subtype; + NSString *type, *subtype, *encoding; NSData *d; type = [[[self bodyStructure] valueForKey: @"type"] lowercaseString]; subtype = [[[self bodyStructure] valueForKey: @"subtype"] lowercaseString]; d = nil; - + + // We determine the native type + if ([type isEqualToString: @"text"] && [subtype isEqualToString: @"plain"]) + *theNativeType = 1; + else if ([type isEqualToString: @"text"] && [subtype isEqualToString: @"html"]) + *theNativeType = 2; + else if ([type isEqualToString: @"multipart"]) + *theNativeType = 4; + + // We get the right part based on the preference if (theType == 1 || theType == 2) { if ([type isEqualToString: @"text"]) { d = [[self fetchPlainTextParts] objectForKey: @""]; + // We check if we have base64 encoded parts. If so, we just + // un-encode them before using them + encoding = [[self lookupInfoForBodyPart: @""] objectForKey: @"encoding"]; + + if ([encoding caseInsensitiveCompare: @"base64"] == NSOrderedSame) + d = [d dataByDecodingBase64]; + // Check if we must convert html->plain if (theType == 1 && [subtype isEqualToString: @"html"]) { @@ -165,7 +182,7 @@ - (NSString *) activeSyncRepresentation NSData *d; id value; - int preferredBodyType; + int preferredBodyType, nativeBodyType; s = [NSMutableString string]; @@ -206,7 +223,8 @@ - (NSString *) activeSyncRepresentation // MesssageClass [s appendFormat: @"%@", @"IPM.Note"]; - + //[s appendFormat: @"%@", @"IPM.Schedule.Meeting"]; + // Reply-To - FIXME //NSArray *replyTo = [[message objectForKey: @"envelope"] replyTo]; //if ([replyTo count]) @@ -218,7 +236,8 @@ - (NSString *) activeSyncRepresentation // Body - namespace 17 preferredBodyType = [[context objectForKey: @"BodyPreferenceType"] intValue]; - d = [self _preferredBodyDataUsingType: preferredBodyType]; + nativeBodyType = 1; + d = [self _preferredBodyDataUsingType: preferredBodyType nativeType: &nativeBodyType]; if (d) { From 645c718dfa24a82e921eafd6ff128dd2bc802423 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 10:49:55 -0500 Subject: [PATCH 079/214] Fixed broken comparison and added stub for processMeeting... --- ActiveSync/SOGoActiveSyncDispatcher.m | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 03066562d6..a16c86a557 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -137,7 +137,7 @@ - (void) processFolderCreate: (id ) theDocumentElement // 14 User-created Contacts folder // 15 User-created Tasks folder // - switch (type == 12) + switch (type) { case 12: { @@ -556,6 +556,16 @@ - (void) processItemOperations: (id ) theDocumentElement } +// +// +// +- (void) processMeetingResponse: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + +} + + // // // From 38c649751c530d57c76857e58a9185b98754aac9 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 11:41:26 -0500 Subject: [PATCH 080/214] If GetChanges is omitted, consider it as YES --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 2a87e23a10..46f896ed26 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -727,7 +727,7 @@ - (void) processSyncCollection: (id ) theDocumentElement { NSString *collectionId, *realCollectionId, *syncKey, *davCollectionTag, *bodyPreferenceType; SOGoMicrosoftActiveSyncFolderType folderType; - id collection; + id collection, value; BOOL getChanges, first_sync; @@ -738,7 +738,14 @@ - (void) processSyncCollection: (id ) theDocumentElement syncKey = [[(id)[theDocumentElement getElementsByTagName: @"SyncKey"] lastObject] textValue]; davCollectionTag = [collection davCollectionTag]; - getChanges = ([(id)[theDocumentElement getElementsByTagName: @"GetChanges"] count] ? YES : NO); + // From the documention, if GetChanges is missing, we must assume it's a YES. + // See http://msdn.microsoft.com/en-us/library/gg675447(v=exchg.80).aspx for all details. + value = [theDocumentElement getElementsByTagName: @"GetChanges"]; + getChanges = YES; + + if ([value count]) + getChanges = [[[value lastObject] textValue] boolValue]; + first_sync = NO; if ([syncKey isEqualToString: @"0"]) From ee0ae8a1c01b239f5c5fe1b8e67279cfa91537ff Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 11:44:33 -0500 Subject: [PATCH 081/214] Correctly add the folder type prefix when creating them --- ActiveSync/SOGoActiveSyncDispatcher.m | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index a16c86a557..96c6ad1d44 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -158,6 +158,11 @@ - (void) processFolderCreate: (id ) theDocumentElement if ([newFolder create]) { nameInContainer = [newFolder nameInContainer]; + + // We strip the "folder" prefix + nameInContainer = [nameInContainer substringFromIndex: 6]; + nameInContainer = [NSString stringWithFormat: @"mail/%@", nameInContainer]; + syncKey = @"-1"; } else @@ -176,6 +181,11 @@ - (void) processFolderCreate: (id ) theDocumentElement appointmentFolders = [userFolder privateCalendars: @"Calendar" inContext: context]; [appointmentFolders newFolderWithName: displayName nameInContainer: &nameInContainer]; + if (type == 13) + nameInContainer = [NSString stringWithFormat: @"vevent/%@", nameInContainer]; + else + nameInContainer = [NSString stringWithFormat: @"vtodo/%@", nameInContainer]; + syncKey = @"-1"; } break; @@ -186,6 +196,7 @@ - (void) processFolderCreate: (id ) theDocumentElement contactFolders = [userFolder privateContacts: @"Contacts" inContext: context]; [contactFolders newFolderWithName: displayName nameInContainer: &nameInContainer]; + nameInContainer = [NSString stringWithFormat: @"vcard/%@", nameInContainer]; syncKey = @"-1"; } break; @@ -613,6 +624,8 @@ - (void) processMoveItems: (id ) theDocumentElement toFolder: [NSString stringWithFormat: @"/%@", dstFolderId]]; // We extract the destionation message id + dstMessageId = nil; + if ([[response objectForKey: @"result"] boolValue] && (v = [[[response objectForKey: @"RawResponse"] objectForKey: @"ResponseResult"] objectForKey: @"flag"]) && [v hasPrefix: @"COPYUID "]) From 74adf784461325eb8962214e77cc7c89e9957c9c Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Tue, 14 Jan 2014 13:37:51 -0500 Subject: [PATCH 082/214] Fix include directories for libwbxml --- ActiveSync/GNUmakefile | 2 +- ActiveSync/NSData+ActiveSync.m | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ActiveSync/GNUmakefile b/ActiveSync/GNUmakefile index e6d2d2ed7c..012ffabd6f 100644 --- a/ActiveSync/GNUmakefile +++ b/ActiveSync/GNUmakefile @@ -29,7 +29,7 @@ ActiveSync_RESOURCE_FILES += \ ADDITIONAL_OBJCFLAGS += -Wno-deprecated-declarations ADDITIONAL_INCLUDE_DIRS += -I../../SOPE/ -I../SoObjects/ ADDITIONAL_LIB_DIRS += -L../../SOPE/GDLContentStore/obj/ -ADDITIONAL_INCLUDE_DIRS += -I/usr/local/include/libwbxml-1.0/wbxml/ +ADDITIONAL_INCLUDE_DIRS += -I/usr/include/libwbxml-1.0/ ADDITIONAL_LDFLAGS += -Wl,--no-as-needed -lwbxml2 -include GNUmakefile.preamble diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 5654d606ca..3c6601fbfe 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -31,9 +31,9 @@ #import -#include -#include -#include +#include +#include +#include #define WBXMLDEBUG 0 From 948553dce3d6d968a2e85c335aff54ac5a6dc76f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 13:50:17 -0500 Subject: [PATCH 083/214] Properly extract the foldername --- ActiveSync/SOGoActiveSyncDispatcher.m | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 96c6ad1d44..e823f2d525 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -240,7 +240,10 @@ - (void) processFolderUpdate: (id ) theDocumentElement id currentFolder; NSException *error; - serverId = [[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue]; + SOGoMicrosoftActiveSyncFolderType folderType; + + + serverId = [[[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue] realCollectionIdWithFolderType: &folderType]; parentId = [[(id)[theDocumentElement getElementsByTagName: @"ParentId"] lastObject] textValue]; displayName = [[(id)[theDocumentElement getElementsByTagName: @"DisplayName"] lastObject] textValue]; @@ -248,7 +251,7 @@ - (void) processFolderUpdate: (id ) theDocumentElement accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; - folderToUpdate = [currentFolder lookupName: serverId + folderToUpdate = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", serverId] inContext: context acquire: NO]; From 1ed41e28317258ca9da8cff93bd22d4aa28719a3 Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Tue, 14 Jan 2014 14:39:51 -0500 Subject: [PATCH 084/214] New deb package: sogo-activesync --- packaging/debian-multiarch/control | 13 ++++++++++++- packaging/debian-multiarch/rules | 3 +++ packaging/debian-multiarch/sogo-activesync.docs | 2 ++ packaging/debian-multiarch/sogo-activesync.install | 1 + packaging/debian/control | 14 +++++++++++++- packaging/debian/control-squeeze | 13 ++++++++++++- packaging/debian/rules | 3 +++ packaging/debian/sogo-activesync.docs | 2 ++ packaging/debian/sogo-activesync.install | 1 + 9 files changed, 49 insertions(+), 3 deletions(-) create mode 100644 packaging/debian-multiarch/sogo-activesync.docs create mode 100644 packaging/debian-multiarch/sogo-activesync.install create mode 100644 packaging/debian/sogo-activesync.docs create mode 100644 packaging/debian/sogo-activesync.install diff --git a/packaging/debian-multiarch/control b/packaging/debian-multiarch/control index 980897801e..06b9406cd2 100644 --- a/packaging/debian-multiarch/control +++ b/packaging/debian-multiarch/control @@ -1,7 +1,7 @@ Source: sogo Priority: optional Maintainer: Inverse Support -Build-Depends: debhelper (>= 8.0.0), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev +Build-Depends: debhelper (>= 8.0.0), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev, libwbxml2-dev Section: web Standards-Version: 3.9.2 @@ -50,6 +50,17 @@ Description: a modern and scalable groupware - OpenChange backend This package contains the backend plugin for using SOGo as a backend to OpenChange. +Package: sogo-activesync +Section: web +Priority: extra +Architecture: any +Depends: sogo (= ${binary:Version}), libwbxml2-0, ${shlibs:Depends}, ${misc:Depends} +Description: a modern and scalable groupware - ActiveSync module + SOGo is a groupware server built around OpenGroupware.org (OGo) and + the SOPE application server with focus on scalability. + . + This package provides Microsoft EAS support for SOGo. + Package: sogo-dbg Section: debug Priority: extra diff --git a/packaging/debian-multiarch/rules b/packaging/debian-multiarch/rules index b2585bc236..977edfa247 100755 --- a/packaging/debian-multiarch/rules +++ b/packaging/debian-multiarch/rules @@ -23,6 +23,7 @@ build-arch-stamp: config.make if pkg-config --atleast-version=1.0 libmapi; \ then (cd OpenChange; $(MAKE)); \ fi + (cd ActiveSync && $(MAKE)) touch $@ clean: @@ -42,6 +43,7 @@ clean: fi -rm -f OpenChange/MAPIStorePropertySelectors.* -rm -f config.make + (cd ActiveSync; make clean); \ dh_clean install: install-arch @@ -70,6 +72,7 @@ install-arch: build-arch mv -f $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/mapistore_backends/libMAPIStoreSOGo.so.1.0.0 \ $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/mapistore_backends/SOGo.so; \ fi + (cd ActiveSync; $(MAKE) DESTDIR=$(DESTDIR) GNUSTEP_INSTALLATION_DOMAIN=SYSTEM install) install -D -m 644 Scripts/sogo-default debian/tmp/etc/default/sogo install -D -m 644 debian/sogo.overrides debian/tmp/usr/share/lintian/overrides/sogo diff --git a/packaging/debian-multiarch/sogo-activesync.docs b/packaging/debian-multiarch/sogo-activesync.docs new file mode 100644 index 0000000000..b864d50112 --- /dev/null +++ b/packaging/debian-multiarch/sogo-activesync.docs @@ -0,0 +1,2 @@ +ActiveSync/README +ActiveSync/LICENSE diff --git a/packaging/debian-multiarch/sogo-activesync.install b/packaging/debian-multiarch/sogo-activesync.install new file mode 100644 index 0000000000..7f0e316d81 --- /dev/null +++ b/packaging/debian-multiarch/sogo-activesync.install @@ -0,0 +1 @@ +usr/lib/GNUstep/SOGo/ActiveSync.SOGo diff --git a/packaging/debian/control b/packaging/debian/control index c80b50abd1..d794347817 100644 --- a/packaging/debian/control +++ b/packaging/debian/control @@ -1,7 +1,7 @@ Source: sogo Priority: optional Maintainer: Inverse Support -Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev +Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libwbxml2-dev Section: web Standards-Version: 3.9.1 @@ -34,6 +34,18 @@ Description: a modern and scalable groupware - development files . This package contains the development files for developing SOGo modules. +Package: sogo-activesync +Section: web +Priority: extra +Architecture: any +Depends: sogo (= ${binary:Version}), libwbxml2-0, ${shlibs:Depends}, ${misc:Depends} +Description: a modern and scalable groupware - ActiveSync module + SOGo is a groupware server built around OpenGroupware.org (OGo) and + the SOPE application server with focus on scalability. + . + This package provides Microsoft EAS support for SOGo. + + Package: sogo-dbg Section: debug Priority: extra diff --git a/packaging/debian/control-squeeze b/packaging/debian/control-squeeze index 0f59639344..44329f87ef 100644 --- a/packaging/debian/control-squeeze +++ b/packaging/debian/control-squeeze @@ -1,7 +1,7 @@ Source: sogo Priority: optional Maintainer: Inverse Support -Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev +Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev, libwbxml2-dev Section: web Standards-Version: 3.9.1 @@ -46,6 +46,17 @@ Description: a modern and scalable groupware - OpenChange backend This package contains the backend plugin for using SOGo as a backend to OpenChange. +Package: sogo-activesync +Section: web +Priority: extra +Architecture: any +Depends: sogo (= ${binary:Version}), libwbxml2-0, ${shlibs:Depends}, ${misc:Depends} +Description: a modern and scalable groupware - ActiveSync module + SOGo is a groupware server built around OpenGroupware.org (OGo) and + the SOPE application server with focus on scalability. + . + This package provides Microsoft EAS support for SOGo. + Package: sogo-dbg Section: debug Priority: extra diff --git a/packaging/debian/rules b/packaging/debian/rules index fcd92bf7ff..bd557291bb 100755 --- a/packaging/debian/rules +++ b/packaging/debian/rules @@ -28,6 +28,7 @@ build-arch-stamp: config.make if pkg-config --atleast-version=1.0 libmapi; \ then (cd OpenChange; $(MAKE)); \ fi + (cd ActiveSync && $(MAKE)) touch $@ clean: @@ -43,6 +44,7 @@ clean: then \ (cd OpenChange; make clean); \ fi; \ + (cd ActiveSync; $(MAKE) clean); \ make clean; \ fi -rm -f OpenChange/MAPIStorePropertySelectors.* @@ -75,6 +77,7 @@ install-arch: build-arch mv -f $(DESTDIR)/usr/lib/mapistore_backends/libMAPIStoreSOGo.so.1.0.0 \ $(DESTDIR)/usr/lib/mapistore_backends/SOGo.so; \ fi + (cd ActiveSync; $(MAKE) DESTDIR=$(DESTDIR) GNUSTEP_INSTALLATION_DOMAIN=SYSTEM install) install -D -m 644 Scripts/sogo-default debian/tmp/etc/default/sogo install -D -m 644 debian/sogo.overrides debian/tmp/usr/share/lintian/overrides/sogo diff --git a/packaging/debian/sogo-activesync.docs b/packaging/debian/sogo-activesync.docs new file mode 100644 index 0000000000..b864d50112 --- /dev/null +++ b/packaging/debian/sogo-activesync.docs @@ -0,0 +1,2 @@ +ActiveSync/README +ActiveSync/LICENSE diff --git a/packaging/debian/sogo-activesync.install b/packaging/debian/sogo-activesync.install new file mode 100644 index 0000000000..7f0e316d81 --- /dev/null +++ b/packaging/debian/sogo-activesync.install @@ -0,0 +1 @@ +usr/lib/GNUstep/SOGo/ActiveSync.SOGo From b71180b0064c4634edfc96741566dc8cb9d158b4 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 15:47:33 -0500 Subject: [PATCH 085/214] Use the right DeviceId --- ActiveSync/SOGoActiveSyncDispatcher.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index e823f2d525..e64a2be101 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -300,7 +300,7 @@ - (void) processFolderSync: (id ) theDocumentElement BOOL first_sync; int status; - metadata = [[[context activeUser] userSettings] microsoftActiveSyncMetadataForDevice: @"SEC17CD1A3E9E3F2"]; + metadata = [[[context activeUser] userSettings] microsoftActiveSyncMetadataForDevice: [context objectForKey: @"DeviceId"]]; syncKey = [[(id)[theDocumentElement getElementsByTagName: @"SyncKey"] lastObject] textValue]; s = [NSMutableString string]; From ada90677e1129df102591882a1266205bdc63631 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 14 Jan 2014 16:08:04 -0500 Subject: [PATCH 086/214] Correctly update the SyncKey when creating or updating folders --- ActiveSync/SOGoActiveSyncDispatcher.m | 39 ++++++++++++++++++++------- 1 file changed, 30 insertions(+), 9 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index e64a2be101..8f06b4e671 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -111,6 +111,20 @@ @implementation SOGoActiveSyncDispatcher +- (void) _setFolderSyncKey: (NSString *) theSyncKey +{ + NSMutableDictionary *metadata; + + metadata = [[[context activeUser] userSettings] microsoftActiveSyncMetadataForDevice: [context objectForKey: @"DeviceId"]]; + + [metadata setObject: [NSDictionary dictionaryWithObject: theSyncKey forKey: @"SyncKey"] forKey: @"FolderSync"]; + + [[[context activeUser] userSettings] setMicrosoftActiveSyncMetadata: metadata + forDevice: [context objectForKey: @"DeviceId"]]; + + [[[context activeUser] userSettings] synchronize]; +} + // // // @@ -162,8 +176,6 @@ - (void) processFolderCreate: (id ) theDocumentElement // We strip the "folder" prefix nameInContainer = [nameInContainer substringFromIndex: 6]; nameInContainer = [NSString stringWithFormat: @"mail/%@", nameInContainer]; - - syncKey = @"-1"; } else { @@ -185,8 +197,6 @@ - (void) processFolderCreate: (id ) theDocumentElement nameInContainer = [NSString stringWithFormat: @"vevent/%@", nameInContainer]; else nameInContainer = [NSString stringWithFormat: @"vtodo/%@", nameInContainer]; - - syncKey = @"-1"; } break; case 14: @@ -197,7 +207,6 @@ - (void) processFolderCreate: (id ) theDocumentElement [contactFolders newFolderWithName: displayName nameInContainer: &nameInContainer]; nameInContainer = [NSString stringWithFormat: @"vcard/%@", nameInContainer]; - syncKey = @"-1"; } break; default: @@ -208,8 +217,13 @@ - (void) processFolderCreate: (id ) theDocumentElement } } // switch (type) ... - // + // We update the FolderSync's synckey + // + syncKey = [[NSProcessInfo processInfo] globallyUniqueString]; + + [self _setFolderSyncKey: syncKey]; + // All good, we send our response. The format is documented here: // 6.7 FolderCreate Response Schema - http://msdn.microsoft.com/en-us/library/dn338950(v=exchg.80).aspx // @@ -261,13 +275,22 @@ - (void) processFolderUpdate: (id ) theDocumentElement if (!error) { NSMutableString *s; + NSString *syncKey; NSData *d; + // + // We update the FolderSync's synckey + // + syncKey = [[NSProcessInfo processInfo] globallyUniqueString]; + + [self _setFolderSyncKey: syncKey]; + s = [NSMutableString string]; [s appendString: @""]; [s appendString: @""]; [s appendString: @""]; [s appendFormat: @"%d", 1]; + [s appendFormat: @"%@", syncKey]; [s appendString: @""]; d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; @@ -318,9 +341,7 @@ - (void) processFolderSync: (id ) theDocumentElement status = 9; } - [metadata setObject: [NSDictionary dictionaryWithObject: syncKey forKey: @"SyncKey"] forKey: @"FolderSync"]; - [[[context activeUser] userSettings] setMicrosoftActiveSyncMetadata: metadata forDevice: [context objectForKey: @"DeviceId"]]; - [[[context activeUser] userSettings] synchronize]; + [self _setFolderSyncKey: syncKey]; [s appendString: @""]; [s appendString: @""]; From 29fcfda1183dbd6c6de6e30d43c9d83004b46380 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 15 Jan 2014 09:36:25 -0500 Subject: [PATCH 087/214] Implemented FolderDelete for mail folders --- ActiveSync/SOGoActiveSyncDispatcher.m | 60 +++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 8f06b4e671..553e52b8b7 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -241,6 +241,66 @@ - (void) processFolderCreate: (id ) theDocumentElement [theResponse setContent: d]; } +// +// +// +- (void) processFolderDelete: (id ) theDocumentElement + inResponse: (WOResponse *) theResponse +{ + SOGoMailAccounts *accountsFolder; + SOGoMailFolder *folderToDelete; + SOGoUserFolder *userFolder; + id currentFolder; + NSException *error; + NSString *serverId; + + SOGoMicrosoftActiveSyncFolderType folderType; + + + serverId = [[[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue] realCollectionIdWithFolderType: &folderType]; + + userFolder = [[context activeUser] homeFolderInContext: context]; + accountsFolder = [userFolder lookupName: @"Mail" inContext: context acquire: NO]; + currentFolder = [accountsFolder lookupName: @"0" inContext: context acquire: NO]; + + folderToDelete = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", serverId] + inContext: context + acquire: NO]; + + error = [folderToDelete delete]; + + if (!error) + { + NSMutableString *s; + NSString *syncKey; + NSData *d; + + // + // We update the FolderSync's synckey + // + syncKey = [[NSProcessInfo processInfo] globallyUniqueString]; + + [self _setFolderSyncKey: syncKey]; + + s = [NSMutableString string]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%@", syncKey]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + } + else + { + [theResponse setStatus: 500]; + [theResponse appendContentString: @"Unable to delete folder."]; + } +} + // // // From 57cd315f2a37dd4355eb3753f50f1a12131c1ea2 Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Wed, 15 Jan 2014 11:07:14 -0500 Subject: [PATCH 088/214] explicitly list all *.SOGo folders Otherwise, ActiveSync.SOGo would be listed twice, once in sogo-activesync and once in sogo. --- packaging/debian-multiarch/sogo.install | 12 +++++++++++- packaging/debian/sogo.install | 12 +++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/packaging/debian-multiarch/sogo.install b/packaging/debian-multiarch/sogo.install index 5f22f31bcf..0df9077fa1 100644 --- a/packaging/debian-multiarch/sogo.install +++ b/packaging/debian-multiarch/sogo.install @@ -10,8 +10,18 @@ usr/lib/GNUstep/OCSTypeModels/* usr/lib/GNUstep/SaxDrivers-4.9/* usr/lib/GNUstep/SaxMappings/* usr/lib/GNUstep/WOxElemBuilders-4.9/* -usr/lib/GNUstep/SOGo/*.SOGo usr/lib/GNUstep/SOGo/Templates usr/lib/GNUstep/SOGo/WebServerResources usr/lib/lib*.so.* usr/share/lintian/* +usr/lib/GNUstep/SOGo/AdministrationUI.SOGo +usr/lib/GNUstep/SOGo/Appointments.SOGo +usr/lib/GNUstep/SOGo/CommonUI.SOGo +usr/lib/GNUstep/SOGo/Contacts.SOGo +usr/lib/GNUstep/SOGo/ContactsUI.SOGo +usr/lib/GNUstep/SOGo/MailPartViewers.SOGo +usr/lib/GNUstep/SOGo/Mailer.SOGo +usr/lib/GNUstep/SOGo/MailerUI.SOGo +usr/lib/GNUstep/SOGo/MainUI.SOGo +usr/lib/GNUstep/SOGo/PreferencesUI.SOGo +usr/lib/GNUstep/SOGo/SchedulerUI.SOGo diff --git a/packaging/debian/sogo.install b/packaging/debian/sogo.install index 5f22f31bcf..0df9077fa1 100644 --- a/packaging/debian/sogo.install +++ b/packaging/debian/sogo.install @@ -10,8 +10,18 @@ usr/lib/GNUstep/OCSTypeModels/* usr/lib/GNUstep/SaxDrivers-4.9/* usr/lib/GNUstep/SaxMappings/* usr/lib/GNUstep/WOxElemBuilders-4.9/* -usr/lib/GNUstep/SOGo/*.SOGo usr/lib/GNUstep/SOGo/Templates usr/lib/GNUstep/SOGo/WebServerResources usr/lib/lib*.so.* usr/share/lintian/* +usr/lib/GNUstep/SOGo/AdministrationUI.SOGo +usr/lib/GNUstep/SOGo/Appointments.SOGo +usr/lib/GNUstep/SOGo/CommonUI.SOGo +usr/lib/GNUstep/SOGo/Contacts.SOGo +usr/lib/GNUstep/SOGo/ContactsUI.SOGo +usr/lib/GNUstep/SOGo/MailPartViewers.SOGo +usr/lib/GNUstep/SOGo/Mailer.SOGo +usr/lib/GNUstep/SOGo/MailerUI.SOGo +usr/lib/GNUstep/SOGo/MainUI.SOGo +usr/lib/GNUstep/SOGo/PreferencesUI.SOGo +usr/lib/GNUstep/SOGo/SchedulerUI.SOGo From 24663682d625e61e2a67a1c5bce4e427d8411e3a Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Wed, 15 Jan 2014 12:08:29 -0500 Subject: [PATCH 089/214] New package: sogo-activesync + sogo-tool fixes Added dependency on sogo = %version for sogo-tool --- packaging/rhel/sogo.spec | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/packaging/rhel/sogo.spec b/packaging/rhel/sogo.spec index 3bed6f84f7..86ee5afada 100644 --- a/packaging/rhel/sogo.spec +++ b/packaging/rhel/sogo.spec @@ -52,6 +52,7 @@ and to reduce the load of the transactions on the server. %package -n sogo-tool Summary: Command-line toolsuite for SOGo Group: Productivity/Groupware +Requires: sogo = %{sogo_version} AutoReqProv: off %description -n sogo-tool @@ -78,6 +79,16 @@ AutoReqProv: off %description -n sogo-ealarms-notify SOGo utility executed each minute via a cronjob for executing email alarms. +%package -n sogo-activesync +Summary: SOGo module to handle ActiveSync requests +Group: Productivity/Groupware +Requires: libwbxml, sogo = %{sogo_version} +BuildRequires: libwbxml-devel +AutoReqProv: off + +%description -n sogo-activesync +SOGo module to handle ActiveSync requests + %package -n sogo-devel Summary: Development headers and libraries for SOGo Group: Development/Libraries/Objective C @@ -224,6 +235,14 @@ rm -rf ${RPM_BUILD_ROOT}%{_bindir}/test_quick_extract install) %endif +# ActiveSync +(cd ActiveSync; \ + LD_LIBRARY_PATH=${RPM_BUILD_ROOT}%{_libdir} \ + make DESTDIR=${RPM_BUILD_ROOT} \ + GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \ + CC="$cc" LDFLAGS="$ldflags" \ + install) + # ****************************** clean ******************************** %clean rm -fr ${RPM_BUILD_ROOT} @@ -244,7 +263,17 @@ rm -fr ${RPM_BUILD_ROOT} %{_libdir}/libSOGo.so.* %{_libdir}/libSOGoUI.so.* %{_libdir}/libOGoContentStore.so* -%{_libdir}/GNUstep/SOGo/*.SOGo +%{_libdir}/GNUstep/SOGo/AdministrationUI.SOGo +%{_libdir}/GNUstep/SOGo/Appointments.SOGo +%{_libdir}/GNUstep/SOGo/CommonUI.SOGo +%{_libdir}/GNUstep/SOGo/Contacts.SOGo +%{_libdir}/GNUstep/SOGo/ContactsUI.SOGo +%{_libdir}/GNUstep/SOGo/MailPartViewers.SOGo +%{_libdir}/GNUstep/SOGo/Mailer.SOGo +%{_libdir}/GNUstep/SOGo/MailerUI.SOGo +%{_libdir}/GNUstep/SOGo/MainUI.SOGo +%{_libdir}/GNUstep/SOGo/PreferencesUI.SOGo +%{_libdir}/GNUstep/SOGo/SchedulerUI.SOGo %{_libdir}/GNUstep/Frameworks/SOGo.framework/Resources %{_libdir}/GNUstep/Frameworks/SOGo.framework/Versions/%{sogo_major_version}/libSOGo.so.* @@ -271,6 +300,10 @@ rm -fr ${RPM_BUILD_ROOT} %files -n sogo-slapd-sockd %{_sbindir}/sogo-slapd-sockd +%files -n sogo-activesync +%{_libdir}/GNUstep/SOGo/ActiveSync.SOGo +%doc ActiveSync/LICENSE ActiveSync/README + %files -n sogo-devel %{_includedir}/SOGo %{_includedir}/SOGoUI @@ -339,6 +372,11 @@ fi # ********************************* changelog ************************* %changelog +* Wed Jan 15 2014 Jean Raby +- New package: sogo-activesync +- explicitly list all *.SOGo modules in sogo package +- added dependency on sogo = %version for sogo-tool + * Thu Apr 17 2013 Jean Raby - Install openchange_user_cleanup in sbindir instead of doc From 65276f7dc005625bcdc72b5c0e09e418c3eb9252 Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Wed, 15 Jan 2014 16:37:24 -0500 Subject: [PATCH 090/214] Add dependency on tmpwatch. The cronjob uses it. Fixes #2577 --- packaging/rhel/sogo.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging/rhel/sogo.spec b/packaging/rhel/sogo.spec index 86ee5afada..6d1e87d1d2 100644 --- a/packaging/rhel/sogo.spec +++ b/packaging/rhel/sogo.spec @@ -19,7 +19,7 @@ Group: Productivity/Groupware Source: SOGo-%{sogo_version}.tar.gz Prefix: /usr AutoReqProv: off -Requires: gnustep-base >= 1.23, sope%{sope_major_version}%{sope_minor_version}-core, httpd, sope%{sope_major_version}%{sope_minor_version}-core, sope%{sope_major_version}%{sope_minor_version}-appserver, sope%{sope_major_version}%{sope_minor_version}-ldap, sope%{sope_major_version}%{sope_minor_version}-cards >= %{sogo_version}, sope%{sope_major_version}%{sope_minor_version}-gdl1-contentstore >= %{sogo_version}, sope%{sope_major_version}%{sope_minor_version}-sbjson, libmemcached, memcached +Requires: gnustep-base >= 1.23, sope%{sope_major_version}%{sope_minor_version}-core, httpd, sope%{sope_major_version}%{sope_minor_version}-core, sope%{sope_major_version}%{sope_minor_version}-appserver, sope%{sope_major_version}%{sope_minor_version}-ldap, sope%{sope_major_version}%{sope_minor_version}-cards >= %{sogo_version}, sope%{sope_major_version}%{sope_minor_version}-gdl1-contentstore >= %{sogo_version}, sope%{sope_major_version}%{sope_minor_version}-sbjson, libmemcached, memcached, tmpwatch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release} BuildRequires: gcc-objc gnustep-base gnustep-make sope%{sope_major_version}%{sope_minor_version}-appserver-devel sope%{sope_major_version}%{sope_minor_version}-core-devel sope%{sope_major_version}%{sope_minor_version}-ldap-devel sope%{sope_major_version}%{sope_minor_version}-mime-devel sope%{sope_major_version}%{sope_minor_version}-xml-devel sope%{sope_major_version}%{sope_minor_version}-gdl1-devel sope%{sope_major_version}%{sope_minor_version}-sbjson-devel libmemcached-devel sed %{?oc_build_depends} From 343f2d8bfef38d0dff74dc122b12ce4c2ff2ad3c Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Thu, 16 Jan 2014 15:13:09 -0500 Subject: [PATCH 091/214] Fixed the GetChanges detection and added FilterType decoding --- ActiveSync/NSDate+ActiveSync.h | 1 + ActiveSync/NSDate+ActiveSync.m | 50 ++++++++++++++++++++++ ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 11 +++-- 3 files changed, 58 insertions(+), 4 deletions(-) diff --git a/ActiveSync/NSDate+ActiveSync.h b/ActiveSync/NSDate+ActiveSync.h index 1725524704..60c3e9a72f 100644 --- a/ActiveSync/NSDate+ActiveSync.h +++ b/ActiveSync/NSDate+ActiveSync.h @@ -36,6 +36,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @interface NSDate (ActiveSync) ++ (NSDate *) dateFromFilterType: (NSString *) theFilterType; - (NSString *) activeSyncRepresentation; @end diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index 58de5b6abe..9139ff86a7 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -32,8 +32,58 @@ #import #import +#define ONE_DAY 86400 + @implementation NSDate (ActiveSync) +// +// See http://msdn.microsoft.com/en-us/library/gg709713(v=exchg.80).aspx for available types +// ++ (NSDate *) dateFromFilterType: (NSString *) theFilterType +{ + NSDate *d; + + d = [self alloc]; + + if (d) + { + int value; + + switch ([theFilterType intValue]) + { + case 1: + value = ONE_DAY; + break; + case 2: + value = 3 * ONE_DAY; + break; + case 3: + value = 7 * ONE_DAY; + break; + case 4: + value = 14 * ONE_DAY; + break; + case 5: + value = 30 * ONE_DAY; + break; + case 6: + value = 90 * ONE_DAY; + break; + case 7: + value = 180 * ONE_DAY; + break; + case 0: + case 8: + default: + return nil; + } + + return [d initWithTimeIntervalSinceNow: -value]; + } + + return d; +} + - (NSString *) activeSyncRepresentation { return [self descriptionWithCalendarFormat: @"%Y%m%dT%H%M%SZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 46f896ed26..6377e68e48 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -98,6 +98,7 @@ #include "iCalToDo+ActiveSync.h" #include "NGDOMElement+ActiveSync.h" #include "NGVCard+ActiveSync.h" +#include "NSDate+ActiveSync.h" #include "NSData+ActiveSync.h" #include "NSString+ActiveSync.h" #include "SOGoActiveSyncConstants.h" @@ -445,7 +446,8 @@ - (void) processSyncFetchCommand: (id ) theDocumentElement - (void) processSyncGetChanges: (id ) theDocumentElement inCollection: (id) theCollection withSyncKey: (NSString *) theSyncKey - withType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + withFolderType: (SOGoMicrosoftActiveSyncFolderType) theFolderType + withFilterType: (NSDate *) theFilterType inBuffer: (NSMutableString *) theBuffer { int i; @@ -743,9 +745,9 @@ - (void) processSyncCollection: (id ) theDocumentElement value = [theDocumentElement getElementsByTagName: @"GetChanges"]; getChanges = YES; - if ([value count]) + if ([value count] && [[[value lastObject] textValue] length]) getChanges = [[[value lastObject] textValue] boolValue]; - + first_sync = NO; if ([syncKey isEqualToString: @"0"]) @@ -776,7 +778,8 @@ - (void) processSyncCollection: (id ) theDocumentElement [self processSyncGetChanges: theDocumentElement inCollection: collection withSyncKey: syncKey - withType: folderType + withFolderType: folderType + withFilterType: [NSDate dateFromFilterType: [[(id)[theDocumentElement getElementsByTagName: @"FilterType"] lastObject] textValue]] inBuffer: theBuffer]; } From 046a64511900c58433cd72068b185508db6e9888 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 20 Jan 2014 10:13:16 -0500 Subject: [PATCH 092/214] Refactored the code and added support for FilterType --- ActiveSync/GNUmakefile | 1 + ActiveSync/NSCalendarDate+ActiveSync.h | 43 +++++++ ActiveSync/NSCalendarDate+ActiveSync.m | 87 ++++++++++++++ ActiveSync/NSData+ActiveSync.m | 2 +- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 131 ++++++--------------- ActiveSync/SOGoActiveSyncDispatcher.m | 41 +++++-- SoObjects/Mailer/SOGoMailFolder.h | 4 + SoObjects/Mailer/SOGoMailFolder.m | 28 ++++- SoObjects/SOGo/SOGoGCSFolder.h | 4 +- SoObjects/SOGo/SOGoGCSFolder.m | 32 ++++- 10 files changed, 261 insertions(+), 112 deletions(-) create mode 100644 ActiveSync/NSCalendarDate+ActiveSync.h create mode 100644 ActiveSync/NSCalendarDate+ActiveSync.m diff --git a/ActiveSync/GNUmakefile b/ActiveSync/GNUmakefile index 012ffabd6f..65d91f338f 100644 --- a/ActiveSync/GNUmakefile +++ b/ActiveSync/GNUmakefile @@ -12,6 +12,7 @@ ActiveSync_OBJC_FILES = \ iCalEvent+ActiveSync.m \ iCalTimeZone+ActiveSync.m \ iCalToDo+ActiveSync.m \ + NSCalendarDate+ActiveSync.m \ NSData+ActiveSync.m \ NSDate+ActiveSync.m \ NGDOMElement+ActiveSync.m \ diff --git a/ActiveSync/NSCalendarDate+ActiveSync.h b/ActiveSync/NSCalendarDate+ActiveSync.h new file mode 100644 index 0000000000..b8deed5277 --- /dev/null +++ b/ActiveSync/NSCalendarDate+ActiveSync.h @@ -0,0 +1,43 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#ifndef __NSCALENDARDATEACTIVESYNC_H__ +#define __NSCALENDARDATEACTIVESYNC_H__ + +#import + +@class NSString; + +@interface NSCalendarDate (ActiveSync) + ++ (NSCalendarDate *) dateFromFilterType: (NSString *) theFilterType; + +@end + +#endif diff --git a/ActiveSync/NSCalendarDate+ActiveSync.m b/ActiveSync/NSCalendarDate+ActiveSync.m new file mode 100644 index 0000000000..e28a95c571 --- /dev/null +++ b/ActiveSync/NSCalendarDate+ActiveSync.m @@ -0,0 +1,87 @@ +/* + +Copyright (c) 2014, Inverse inc. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Inverse inc. nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ +#import "NSCalendarDate+ActiveSync.h" + +#import +#import + +#define ONE_DAY 86400 + +@implementation NSCalendarDate (ActiveSync) + +// +// See http://msdn.microsoft.com/en-us/library/gg709713(v=exchg.80).aspx for available types +// ++ (NSCalendarDate *) dateFromFilterType: (NSString *) theFilterType +{ + NSCalendarDate *d; + + d = [NSCalendarDate calendarDate]; + + if (d) + { + int value; + + switch ([theFilterType intValue]) + { + case 1: + value = ONE_DAY; + break; + case 2: + value = 3 * ONE_DAY; + break; + case 3: + value = 7 * ONE_DAY; + break; + case 4: + value = 14 * ONE_DAY; + break; + case 5: + value = 30 * ONE_DAY; + break; + case 6: + value = 90 * ONE_DAY; + break; + case 7: + value = 180 * ONE_DAY; + break; + case 0: + case 8: + default: + return nil; + } + + return [d initWithTimeIntervalSinceNow: -value]; + } + + return d; +} + +@end diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 3c6601fbfe..670474240b 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -35,7 +35,7 @@ #include #include -#define WBXMLDEBUG 0 +#define WBXMLDEBUG 1 @implementation NSData (ActiveSync) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 6377e68e48..41398c71cd 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -98,6 +98,7 @@ #include "iCalToDo+ActiveSync.h" #include "NGDOMElement+ActiveSync.h" #include "NGVCard+ActiveSync.h" +#include "NSCalendarDate+ActiveSync.h" #include "NSDate+ActiveSync.h" #include "NSData+ActiveSync.h" #include "NSString+ActiveSync.h" @@ -447,7 +448,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement inCollection: (id) theCollection withSyncKey: (NSString *) theSyncKey withFolderType: (SOGoMicrosoftActiveSyncFolderType) theFolderType - withFilterType: (NSDate *) theFilterType + withFilterType: (NSCalendarDate *) theFilterType inBuffer: (NSMutableString *) theBuffer { int i; @@ -463,97 +464,37 @@ - (void) processSyncGetChanges: (id ) theDocumentElement switch (theFolderType) { + // Handle all the GCS components case ActiveSyncContactFolder: - { - NSArray *allContacts; - NGVCard *card; - id contact; - - allContacts = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; - - for (i = 0; i < [allContacts count]; i++) - { - contact = [theCollection lookupName: [[allContacts objectAtIndex: i] objectForKey: @"c_name"] - inContext: context - acquire: NO]; - - if (![[[allContacts objectAtIndex: i] objectForKey: @"c_component"] isEqualToString: @"vcard"]) - continue; - - // FIXME: we skip list right now - if ([contact respondsToSelector: @selector (vCard)]) - { - card = [contact vCard]; - - [theBuffer appendString: @""]; - [theBuffer appendFormat: @"%@", [contact nameInContainer]]; - [theBuffer appendString: @""]; - - [theBuffer appendString: [card activeSyncRepresentation]]; - - [theBuffer appendString: @""]; - [theBuffer appendString: @""]; - } - } - } - break; case ActiveSyncEventFolder: - { - NSArray *allEvents; - NSDictionary *d; - id eventObject; - - allEvents = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; - - for (i = 0; i < [allEvents count]; i++) - { - NSString *serverId; - iCalEvent *event; - - d = [allEvents objectAtIndex: i]; - - if (![[d objectForKey: @"c_component"] isEqualToString: @"vevent"]) - continue; - - serverId = [d objectForKey: @"c_name"]; - - [theBuffer appendString: @""]; - [theBuffer appendFormat: @"%@", serverId]; - [theBuffer appendString: @""]; - - eventObject = [theCollection lookupName: serverId inContext: self->context acquire: 0]; - - event = [eventObject component: NO secure: NO]; - - [theBuffer appendString: [event activeSyncRepresentation]]; - - [theBuffer appendString: @""]; - [theBuffer appendString: @""]; - - } // for (i = 0; i < [allEvents count]; i++) - } - break; case ActiveSyncTaskFolder: { - NSArray *allTasks; - NSDictionary *task; - id taskObject; - - allTasks = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + id sogoObject, componentObject; + NSString *uid, *component_name; + NSDictionary *component; + NSArray *allComponents; + + BOOL updated; + int deleted; + + if (theFolderType == ActiveSyncContactFolder) + component_name = @"vcard"; + else if (theFolderType == ActiveSyncEventFolder) + component_name = @"vevent"; + else + component_name = @"vtodo"; + + allComponents = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey fromDate: theFilterType]; - for (i = 0; i < [allTasks count]; i++) - + for (i = 0; i < [allComponents count]; i++) { - int deleted; - - task = [allTasks objectAtIndex: i]; - deleted = [[task objectForKey: @"c_deleted"] intValue]; + component = [allComponents objectAtIndex: i]; + deleted = [[component objectForKey: @"c_deleted"] intValue]; - if (!deleted && ![[task objectForKey: @"c_component"] isEqualToString: @"vtodo"]) + if (!deleted && ![[component objectForKey: @"c_component"] isEqualToString: component_name]) continue; - NSString *uid; - uid = [task objectForKey: @"c_name"]; + uid = [component objectForKey: @"c_name"]; if (deleted) { @@ -563,12 +504,9 @@ - (void) processSyncGetChanges: (id ) theDocumentElement } else { - iCalToDo *todo; - BOOL updated; - updated = YES; - if ([[task objectForKey: @"c_creationdate"] intValue] > [theSyncKey intValue]) + if ([[component objectForKey: @"c_creationdate"] intValue] > [theSyncKey intValue]) updated = NO; if (updated) @@ -579,11 +517,16 @@ - (void) processSyncGetChanges: (id ) theDocumentElement [theBuffer appendFormat: @"%@", uid]; [theBuffer appendString: @""]; - taskObject = [theCollection lookupName: uid inContext: self->context acquire: 0]; + sogoObject = [theCollection lookupName: uid + inContext: context + acquire: 0]; - todo = [taskObject component: NO secure: NO]; + if (theFolderType == ActiveSyncContactFolder) + componentObject = [sogoObject vCard]; + else + componentObject = [sogoObject component: NO secure: NO]; - [theBuffer appendString: [todo activeSyncRepresentation]]; + [theBuffer appendString: [componentObject activeSyncRepresentation]]; [theBuffer appendString: @""]; @@ -598,12 +541,12 @@ - (void) processSyncGetChanges: (id ) theDocumentElement case ActiveSyncMailFolder: default: { + SOGoMailObject *mailObject; + NSString *uid, *command; NSDictionary *aMessage; NSArray *allMessages; - NSString *uid, *command; - SOGoMailObject *mailObject; - allMessages = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey]; + allMessages = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey fromDate: theFilterType]; for (i = 0; i < [allMessages count]; i++) { @@ -779,7 +722,7 @@ - (void) processSyncCollection: (id ) theDocumentElement inCollection: collection withSyncKey: syncKey withFolderType: folderType - withFilterType: [NSDate dateFromFilterType: [[(id)[theDocumentElement getElementsByTagName: @"FilterType"] lastObject] textValue]] + withFilterType: [NSCalendarDate dateFromFilterType: [[(id)[theDocumentElement getElementsByTagName: @"FilterType"] lastObject] textValue]] inBuffer: theBuffer]; } diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 553e52b8b7..ce3793ec7d 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -104,7 +104,9 @@ #include "iCalToDo+ActiveSync.h" #include "NGMimeMessage+ActiveSync.h" #include "NGVCard+ActiveSync.h" +#include "NSCalendarDate+ActiveSync.h" #include "NSData+ActiveSync.h" +#include "NSDate+ActiveSync.h" #include "NSString+ActiveSync.h" #include "SOGoActiveSyncConstants.h" #include "SOGoMailObject+ActiveSync.h" @@ -516,12 +518,15 @@ - (void) processGetAttachment: (id ) theDocumentElement - (void) processGetItemEstimate: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { + EOQualifier *notDeletedQualifier, *sinceDateQualifier; + NSString *collectionId, *realCollectionId; + id currentFolder, currentCollection; SOGoMailAccounts *accountsFolder; SOGoUserFolder *userFolder; - id currentFolder, currentCollection; - - NSString *collectionId, *realCollectionId; + EOAndQualifier *qualifier; + NSCalendarDate *filter; NSMutableString *s; + NSArray *uids; NSData *d; SOGoMicrosoftActiveSyncFolderType folderType; @@ -541,13 +546,29 @@ - (void) processGetItemEstimate: (id ) theDocumentElement currentCollection = [currentFolder lookupName: [NSString stringWithFormat: @"folder%@", realCollectionId] inContext: context acquire: NO]; - - // FIXME: we ignore FilterType for now - NSArray *uids = [currentCollection fetchUIDsMatchingQualifier: [EOQualifier qualifierWithQualifierFormat: - @"(not (flags = %@))", - @"deleted"] - sortOrdering: @"REVERSE ARRIVAL" - threaded: NO]; + // + // For IMAP, we simply build a request like this: + // + // . UID SORT (SUBJECT) UTF-8 SINCE 1-Jan-2014 NOT DELETED + // * SORT 124576 124577 124579 124578 + // . OK Completed (4 msgs in 0.000 secs) + // + filter = [NSCalendarDate dateFromFilterType: [[(id)[theDocumentElement getElementsByTagName: @"FilterType"] lastObject] textValue]]; + + notDeletedQualifier = [EOQualifier qualifierWithQualifierFormat: + @"(not (flags = %@))", + @"deleted"]; + sinceDateQualifier = [EOQualifier qualifierWithQualifierFormat: + @"(DATE >= %@)", filter]; + + + qualifier = [[EOAndQualifier alloc] initWithQualifiers: notDeletedQualifier, sinceDateQualifier, + nil]; + AUTORELEASE(qualifier); + + uids = [currentCollection fetchUIDsMatchingQualifier: qualifier + sortOrdering: @"REVERSE ARRIVAL" + threaded: NO]; [s appendString: @""]; diff --git a/SoObjects/Mailer/SOGoMailFolder.h b/SoObjects/Mailer/SOGoMailFolder.h index 2c9855bbed..cff0c1b9bb 100644 --- a/SoObjects/Mailer/SOGoMailFolder.h +++ b/SoObjects/Mailer/SOGoMailFolder.h @@ -96,6 +96,10 @@ - (NSString *) davCollectionTag; +- (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties + matchingSyncToken: (NSString *) syncToken + fromDate: (NSCalendarDate *) theStartDate; + /* flags */ - (NSException *) addFlagsToAllMessages: (id) _f; diff --git a/SoObjects/Mailer/SOGoMailFolder.m b/SoObjects/Mailer/SOGoMailFolder.m index 76fb700736..904ac770b7 100644 --- a/SoObjects/Mailer/SOGoMailFolder.m +++ b/SoObjects/Mailer/SOGoMailFolder.m @@ -1992,6 +1992,7 @@ - (EOQualifier *) _nonDeletedQualifier // - (NSArray *) syncTokenFieldsWithProperties: (NSArray *) theProperties matchingSyncToken: (NSString *) theSyncToken + fromDate: (NSCalendarDate *) theStartDate { EOQualifier *searchQualifier; NSMutableArray *allTokens; @@ -2001,13 +2002,21 @@ - (NSArray *) syncTokenFieldsWithProperties: (NSArray *) theProperties int uidnext, highestmodseq, i; allTokens = [NSMutableArray array]; - a = [theSyncToken componentsSeparatedByString: @"-"]; - uidnext = [[a objectAtIndex: 0] intValue]; - highestmodseq = [[a objectAtIndex: 1] intValue]; + if ([theSyncToken isEqualToString: @"-1"]) + { + uidnext = highestmodseq = 0; + } + else + { + a = [theSyncToken componentsSeparatedByString: @"-"]; + uidnext = [[a objectAtIndex: 0] intValue]; + highestmodseq = [[a objectAtIndex: 1] intValue]; + } + // We first make sure QRESYNC is enabled [[self imap4Connection] enableExtensions: [NSArray arrayWithObject: @"QRESYNC"]]; - + // We fetch new messages and modified messages if (highestmodseq) @@ -2031,6 +2040,17 @@ - (NSArray *) syncTokenFieldsWithProperties: (NSArray *) theProperties searchQualifier = [self _nonDeletedQualifier]; } + if (theStartDate) + { + EOQualifier *sinceDateQualifier = [EOQualifier qualifierWithQualifierFormat: + @"(DATE >= %@)", theStartDate]; + + searchQualifier = [[EOAndQualifier alloc] initWithQualifiers: searchQualifier, sinceDateQualifier, + nil]; + [searchQualifier autorelease]; + } + + // we fetch modified or added uids uids = [self fetchUIDsMatchingQualifier: searchQualifier sortOrdering: nil]; diff --git a/SoObjects/SOGo/SOGoGCSFolder.h b/SoObjects/SOGo/SOGoGCSFolder.h index 7b23b0a525..ec6795bd28 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.h +++ b/SoObjects/SOGo/SOGoGCSFolder.h @@ -126,7 +126,9 @@ - (NSString *) davCollectionTag; - (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties - matchingSyncToken: (NSString *) syncToken; + matchingSyncToken: (NSString *) syncToken + fromDate: (NSCalendarDate *) theStartDate; + /* multiget helper */ - (WOResponse *) performMultigetInContext: (WOContext *) queryContext diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index 99a92ce401..668a23feae 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -1101,6 +1101,7 @@ - (NSString *) additionalWebdavSyncFilters // - (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties matchingSyncToken: (NSString *) syncToken + fromDate: (NSCalendarDate *) theStartDate { /* TODO: - validation: @@ -1124,8 +1125,20 @@ - (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties if ([syncToken length]) { syncTokenInt = [syncToken intValue]; + qualifier = [EOQualifier qualifierWithQualifierFormat: @"c_lastmodified > %d", syncTokenInt]; + + if (theStartDate) + { + EOQualifier *sinceDateQualifier = [EOQualifier qualifierWithQualifierFormat: + @"c_creationdate > %d", (int)[theStartDate timeIntervalSince1970]]; + + qualifier = [[EOAndQualifier alloc] initWithQualifiers: sinceDateQualifier, qualifier, + nil]; + [qualifier autorelease]; + } + mRecords = [NSMutableArray arrayWithArray: [self _fetchFields: fields withQualifier: qualifier ignoreDeleted: YES]]; @@ -1145,10 +1158,24 @@ - (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties qualifier = [EOQualifier qualifierWithQualifierFormat: filter]; else qualifier = nil; - records = [self _fetchFields: fields withQualifier: qualifier + + if (theStartDate) + { + EOQualifier *sinceDateQualifier = [EOQualifier qualifierWithQualifierFormat: + @"c_creationdate > %d", (int)[theStartDate timeIntervalSince1970]]; + + qualifier = [[EOAndQualifier alloc] initWithQualifiers: sinceDateQualifier, qualifier, + nil]; + [qualifier autorelease]; + } + + records = [self _fetchFields: fields + withQualifier: qualifier ignoreDeleted: YES]; } + + return records; } @@ -1407,7 +1434,8 @@ - (WOResponse *) davSyncCollection: (WOContext *) localContext firstElementWithTag: @"prop" inNamespace: XMLNS_WEBDAV]; properties = [self parseDAVRequestedProperties: propElement]; records = [self syncTokenFieldsWithProperties: properties - matchingSyncToken: syncToken]; + matchingSyncToken: syncToken + fromDate: nil]; [self _appendComponentProperties: [properties allKeys] fromRecords: records matchingSyncToken: [syncToken intValue] From a3e1d4813acffb17d6495a5b68ba20e5a9ebdf0a Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 20 Jan 2014 10:21:33 -0500 Subject: [PATCH 093/214] Removed debug + refactored NSDate class --- ActiveSync/NSData+ActiveSync.m | 2 +- ActiveSync/NSDate+ActiveSync.h | 1 - ActiveSync/NSDate+ActiveSync.m | 50 ---------------------------------- 3 files changed, 1 insertion(+), 52 deletions(-) diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 670474240b..3c6601fbfe 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -35,7 +35,7 @@ #include #include -#define WBXMLDEBUG 1 +#define WBXMLDEBUG 0 @implementation NSData (ActiveSync) diff --git a/ActiveSync/NSDate+ActiveSync.h b/ActiveSync/NSDate+ActiveSync.h index 60c3e9a72f..1725524704 100644 --- a/ActiveSync/NSDate+ActiveSync.h +++ b/ActiveSync/NSDate+ActiveSync.h @@ -36,7 +36,6 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @interface NSDate (ActiveSync) -+ (NSDate *) dateFromFilterType: (NSString *) theFilterType; - (NSString *) activeSyncRepresentation; @end diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index 9139ff86a7..58de5b6abe 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -32,58 +32,8 @@ #import #import -#define ONE_DAY 86400 - @implementation NSDate (ActiveSync) -// -// See http://msdn.microsoft.com/en-us/library/gg709713(v=exchg.80).aspx for available types -// -+ (NSDate *) dateFromFilterType: (NSString *) theFilterType -{ - NSDate *d; - - d = [self alloc]; - - if (d) - { - int value; - - switch ([theFilterType intValue]) - { - case 1: - value = ONE_DAY; - break; - case 2: - value = 3 * ONE_DAY; - break; - case 3: - value = 7 * ONE_DAY; - break; - case 4: - value = 14 * ONE_DAY; - break; - case 5: - value = 30 * ONE_DAY; - break; - case 6: - value = 90 * ONE_DAY; - break; - case 7: - value = 180 * ONE_DAY; - break; - case 0: - case 8: - default: - return nil; - } - - return [d initWithTimeIntervalSinceNow: -value]; - } - - return d; -} - - (NSString *) activeSyncRepresentation { return [self descriptionWithCalendarFormat: @"%Y%m%dT%H%M%SZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; From 3090448fcb1411f49776bd8fd2e23c2b5b60775d Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 20 Jan 2014 15:43:33 -0500 Subject: [PATCH 094/214] Update prototype.js to fix IE 10 issues Updated to commit @8c9ead49ec of https://github.com/sstephenson/prototype/ --- UI/WebServerResources/prototype.js | 121 ++++++++++++++++++----------- 1 file changed, 76 insertions(+), 45 deletions(-) diff --git a/UI/WebServerResources/prototype.js b/UI/WebServerResources/prototype.js index bdc0f9f23b..083b4dfb49 100644 --- a/UI/WebServerResources/prototype.js +++ b/UI/WebServerResources/prototype.js @@ -399,7 +399,7 @@ Object.extend(Function.prototype, (function() { var __method = this, args = slice.call(arguments, 1); var bound = function() { - var a = merge(args, arguments), c = context; + var a = merge(args, arguments); var c = this instanceof bound ? this : context; return __method.apply(c, a); }; @@ -577,7 +577,8 @@ Object.extend(String.prototype, (function() { } while (source.length > 0) { - if (match = source.match(pattern)) { + match = source.match(pattern) + if (match && match[0].length > 0) { result += source.slice(0, match.index); result += String.interpret(replacement(match)); source = source.slice(match.index + match[0].length); @@ -652,7 +653,10 @@ Object.extend(String.prototype, (function() { var key = decodeURIComponent(pair.shift()), value = pair.length > 1 ? pair.join('=') : pair[0]; - if (value != undefined) value = decodeURIComponent(value); + if (value != undefined) { + value = value.gsub('+', ' '); + value = decodeURIComponent(value); + } if (key in hash) { if (!Object.isArray(hash[key])) hash[key] = [hash[key]]; @@ -746,12 +750,17 @@ Object.extend(String.prototype, (function() { return this.indexOf(pattern) > -1; } - function startsWith(pattern) { - return this.lastIndexOf(pattern, 0) === 0; + function startsWith(pattern, position) { + position = Object.isNumber(position) ? position : 0; + return this.lastIndexOf(pattern, position) === position; } - function endsWith(pattern) { - var d = this.length - pattern.length; + function endsWith(pattern, position) { + pattern = String(pattern); + position = Object.isNumber(position) ? position : this.length; + if (position < 0) position = 0; + if (position > this.length) position = this.length; + var d = position - pattern.length; return d >= 0 && this.indexOf(pattern, d) === d; } @@ -793,8 +802,8 @@ Object.extend(String.prototype, (function() { isJSON: isJSON, evalJSON: NATIVE_JSON_PARSE_SUPPORT ? parseJSON : evalJSON, include: include, - startsWith: startsWith, - endsWith: endsWith, + startsWith: String.prototype.startsWith || startsWith, + endsWith: String.prototype.endsWith || endsWith, empty: empty, blank: blank, interpolate: interpolate @@ -921,8 +930,8 @@ var Enumerable = (function() { } function include(object) { - if (Object.isFunction(this.indexOf)) - if (this.indexOf(object) != -1) return true; + if (Object.isFunction(this.indexOf) && this.indexOf(object) != -1) + return true; var found = false; this.each(function(value) { @@ -1406,11 +1415,13 @@ var Hash = Class.create(Enumerable, (function() { function _each(iterator, context) { + var i = 0; for (var key in this._object) { var value = this._object[key], pair = [key, value]; pair.key = key; pair.value = value; - iterator.call(context, pair); + iterator.call(context, pair, i); + i++; } } @@ -1464,7 +1475,7 @@ var Hash = Class.create(Enumerable, (function() { function toQueryPair(key, value) { if (Object.isUndefined(value)) return key; - var value = String.interpret(value); + value = String.interpret(value); value = value.gsub(/(\r)?\n/, '\r\n'); value = encodeURIComponent(value); @@ -1580,9 +1591,9 @@ var ObjectRange = Class.create(Enumerable, (function() { } function _each(iterator, context) { - var value = this.start; - while (this.include(value)) { - iterator.call(context, value); + var value = this.start, i; + for (i = 0; this.include(value); i++) { + iterator.call(context, value, i); value = value.succ(); } } @@ -1777,7 +1788,8 @@ Ajax.Request = Class.create(Ajax.Base, { } for (var name in headers) - this.transport.setRequestHeader(name, headers[name]); + if (headers[name] != null) + this.transport.setRequestHeader(name, headers[name]); }, success: function() { @@ -2628,6 +2640,7 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { } function down(element, expression, index) { + if (arguments.length === 1) return firstDescendant(element); element = $(element), expression = expression || 0, index = index || 0; if (Object.isNumber(expression)) @@ -2755,9 +2768,9 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { } var PROBLEMATIC_ATTRIBUTE_READING = (function() { - DIV.setAttribute('onclick', Prototype.emptyFunction); + DIV.setAttribute('onclick', []); var value = DIV.getAttribute('onclick'); - var isFunction = (typeof value === 'function'); + var isFunction = Object.isArray(value); DIV.removeAttribute('onclick'); return isFunction; })(); @@ -2783,7 +2796,7 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { name = table.names[attr] || attr; value = attributes[attr]; if (table.values[attr]) - name = table.values[attr](element, value); + name = table.values[attr](element, value) || name; if (value === false || value === null) element.removeAttribute(name); else if (value === true) @@ -3104,7 +3117,7 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { } function hasLayout_IE(element) { - if (!element.currentStyle.hasLayout) + if (!element.currentStyle || !element.currentStyle.hasLayout) element.style.zoom = 1; return element; } @@ -3432,6 +3445,14 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { Element.addMethods(methods); + function destroyCache_IE() { + DIV = null; + ELEMENT_CACHE = null; + } + + if (window.attachEvent) + window.attachEvent('onunload', destroyCache_IE); + })(this); (function() { @@ -4066,7 +4087,8 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { function viewportOffset(forElement) { var valueT = 0, valueL = 0, docBody = document.body; - var element = $(forElement); + forElement = $(forElement); + var element = forElement; do { valueT += element.offsetTop || 0; valueL += element.offsetLeft || 0; @@ -4099,10 +4121,11 @@ Ajax.PeriodicalUpdater = Class.create(Ajax.Base, { var layout = element.getLayout(); element.store('prototype_absolutize_original_styles', { - left: element.getStyle('left'), - top: element.getStyle('top'), - width: element.getStyle('width'), - height: element.getStyle('height') + position: element.getStyle('position'), + left: element.getStyle('left'), + top: element.getStyle('top'), + width: element.getStyle('width'), + height: element.getStyle('height') }); element.setStyle({ @@ -5799,18 +5822,23 @@ var Form = { accumulator = function(result, key, value) { if (key in result) { if (!Object.isArray(result[key])) result[key] = [result[key]]; - result[key].push(value); + result[key] = result[key].concat(value); } else result[key] = value; return result; }; } else { initial = ''; - accumulator = function(result, key, value) { - value = value.gsub(/(\r)?\n/, '\r\n'); - value = encodeURIComponent(value); - value = value.gsub(/%20/, '+'); - return result + (result ? '&' : '') + encodeURIComponent(key) + '=' + value; - } + accumulator = function(result, key, values) { + if (!Object.isArray(values)) {values = [values];} + if (!values.length) {return result;} + var encodedKey = encodeURIComponent(key).gsub(/%20/, '+'); + return result + (result ? "&" : "") + values.map(function (value) { + value = value.gsub(/(\r)?\n/, '\r\n'); + value = encodeURIComponent(value); + value = value.gsub(/%20/, '+'); + return encodedKey + "=" + value; + }).join("&"); + }; } return elements.inject(initial, function(result, element) { @@ -6244,17 +6272,14 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { node = currentTarget; } - if (node.nodeType == Node.TEXT_NODE) - node = node.parentNode; - - return Element.extend(node); + return node.nodeType == Node.TEXT_NODE ? node.parentNode : node; } function findElement(event, expression) { - var element = _element(event), match = Prototype.Selector.match; + var element = _element(event), selector = Prototype.Selector; if (!expression) return Element.extend(element); while (element) { - if (Object.isElement(element) && match(element, expression)) + if (Object.isElement(element) && selector.match(element, expression)) return Element.extend(element); element = element.parentNode; } @@ -6535,8 +6560,8 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { function stopObservingElement(element) { - var uid = getUniqueElementID(element), - registry = getRegistryForElement(element, uid); + var uid = getUniqueElementID(element), registry = GLOBAL.Event.cache[uid]; + if (!registry) return; destroyRegistryForElement(element, uid); @@ -6716,9 +6741,9 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { return createMouseEnterLeaveResponder(uid, eventName, handler); return function(event) { - var cacheEntry = Event.cache[uid]; - var element = cacheEntry.element; + if (!Event.cache) return; + var element = Event.cache[uid].element; Event.extend(event, element); handler.call(element, event); }; @@ -6726,7 +6751,7 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { function createResponderForCustomEvent(uid, eventName, handler) { return function(event) { - var cacheEntry = Event.cache[uid], element = cacheEntry.element; + var element = Event.cache[uid].element; if (Object.isUndefined(event.eventName)) return false; @@ -6741,7 +6766,7 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { function createMouseEnterLeaveResponder(uid, eventName, handler) { return function(event) { - var cacheEntry = Event.cache[uid], element = cacheEntry.element; + var element = Event.cache[uid].element; Event.extend(event, element); var parent = event.relatedTarget; @@ -6791,6 +6816,12 @@ Form.EventObserver = Class.create(Abstract.EventObserver, { fireContentLoadedEvent(); } + + if (document.readyState === 'complete') { + fireContentLoadedEvent(); + return; + } + if (document.addEventListener) { document.addEventListener('DOMContentLoaded', fireContentLoadedEvent, false); } else { From 762b841249fdff7cf3412414f703ab465c15583a Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 21 Jan 2014 16:40:57 -0500 Subject: [PATCH 095/214] Avoid crashes on broken configurations --- SoObjects/Appointments/SOGoCalendarComponent.m | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 2169f8f6e7..117812ef11 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -1034,6 +1034,11 @@ - (void) sendReceiptEmailForObject: (iCalRepeatableEntityObject *) object // Recipient is fixed, which is the calendar owner ownerUser = [SOGoUser userWithLogin: self->owner]; recipientIdentity = [ownerUser primaryIdentity]; + + // Safety net for broken configurations + if (!recipientIdentity) + return; + recipientEmail = [recipientIdentity objectForKey: @"email"]; fullRecipientEmail = [recipientIdentity keysWithFormat: @"%{fullName} <%{email}>"]; From eabe829236b7c25c3cc60eca481d9a1fc156e19b Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 22 Jan 2014 11:02:12 -0500 Subject: [PATCH 096/214] Don't add empty and specify the folder Class --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 64 ++++++++++++++-------- 1 file changed, 40 insertions(+), 24 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 41398c71cd..35ddad8ce3 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -451,6 +451,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement withFilterType: (NSCalendarDate *) theFilterType inBuffer: (NSMutableString *) theBuffer { + NSMutableString *s; int i; // @@ -460,7 +461,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement if ([theSyncKey isEqualToString: [theCollection davCollectionTag]]) return; - [theBuffer appendString: @""]; + s = [NSMutableString string]; switch (theFolderType) { @@ -498,9 +499,9 @@ - (void) processSyncGetChanges: (id ) theDocumentElement if (deleted) { - [theBuffer appendString: @""]; - [theBuffer appendFormat: @"%@", uid]; - [theBuffer appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", uid]; + [s appendString: @""]; } else { @@ -510,12 +511,12 @@ - (void) processSyncGetChanges: (id ) theDocumentElement updated = NO; if (updated) - [theBuffer appendString: @""]; + [s appendString: @""]; else - [theBuffer appendString: @""]; + [s appendString: @""]; - [theBuffer appendFormat: @"%@", uid]; - [theBuffer appendString: @""]; + [s appendFormat: @"%@", uid]; + [s appendString: @""]; sogoObject = [theCollection lookupName: uid inContext: context @@ -526,14 +527,14 @@ - (void) processSyncGetChanges: (id ) theDocumentElement else componentObject = [sogoObject component: NO secure: NO]; - [theBuffer appendString: [componentObject activeSyncRepresentation]]; + [s appendString: [componentObject activeSyncRepresentation]]; - [theBuffer appendString: @""]; + [s appendString: @""]; if (updated) - [theBuffer appendString: @""]; + [s appendString: @""]; else - [theBuffer appendString: @""]; + [s appendString: @""]; } } // for ... } @@ -557,30 +558,30 @@ - (void) processSyncGetChanges: (id ) theDocumentElement if ([command isEqualToString: @"deleted"]) { - [theBuffer appendString: @""]; - [theBuffer appendFormat: @"%@", uid]; - [theBuffer appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", uid]; + [s appendString: @""]; } else { if ([command isEqualToString: @"added"]) - [theBuffer appendString: @""]; + [s appendString: @""]; else - [theBuffer appendString: @""]; + [s appendString: @""]; mailObject = [theCollection lookupName: uid inContext: context acquire: 0]; - [theBuffer appendFormat: @"%@", uid]; - [theBuffer appendString: @""]; - [theBuffer appendString: [mailObject activeSyncRepresentation]]; - [theBuffer appendString: @""]; + [s appendFormat: @"%@", uid]; + [s appendString: @""]; + [s appendString: [mailObject activeSyncRepresentation]]; + [s appendString: @""]; if ([command isEqualToString: @"added"]) - [theBuffer appendString: @""]; + [s appendString: @""]; else - [theBuffer appendString: @""]; + [s appendString: @""]; } } @@ -588,7 +589,12 @@ - (void) processSyncGetChanges: (id ) theDocumentElement break; } // switch (folderType) ... - [theBuffer appendString: @""]; + if ([s length]) + { + [theBuffer appendString: @""]; + [theBuffer appendString: s]; + [theBuffer appendString: @""]; + } } // @@ -709,6 +715,16 @@ - (void) processSyncCollection: (id ) theDocumentElement [theBuffer appendString: @""]; + + if (folderType == ActiveSyncMailFolder) + [theBuffer appendString: @"Email"]; + else if (folderType == ActiveSyncContactFolder) + [theBuffer appendString: @"Contacts"]; + else if (folderType == ActiveSyncEventFolder) + [theBuffer appendString: @"Calendar"]; + else if (folderType == ActiveSyncTaskFolder) + [theBuffer appendString: @"Tasks"]; + [theBuffer appendFormat: @"%@", davCollectionTag]; [theBuffer appendFormat: @"%@", collectionId]; [theBuffer appendFormat: @"%d", 1]; From eeddf43a781aab6648c18c9751dc54fce21f9f0b Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 22 Jan 2014 11:22:52 -0500 Subject: [PATCH 097/214] Add the milliseconds --- ActiveSync/NSDate+ActiveSync.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index 58de5b6abe..dba1a345f6 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -36,7 +36,7 @@ @implementation NSDate (ActiveSync) - (NSString *) activeSyncRepresentation { - return [self descriptionWithCalendarFormat: @"%Y%m%dT%H%M%SZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; + return [self descriptionWithCalendarFormat: @"%Y-%m-%d-T%H:%M:%S.%FZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; } @end From f7ba5d2346cfb0e60ae41087963432fd11154d0f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 22 Jan 2014 11:25:18 -0500 Subject: [PATCH 098/214] Don't add DateCompleted if none exist --- ActiveSync/iCalToDo+ActiveSync.m | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m index 3343c66674..503e6c7602 100644 --- a/ActiveSync/iCalToDo+ActiveSync.m +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -57,7 +57,8 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%d", (completed ? 1 : 0)]; // DateCompleted - [s appendFormat: @"%@", [completed activeSyncRepresentation]]; + if (completed) + [s appendFormat: @"%@", [completed activeSyncRepresentation]]; // Due date NSCalendarDate *due; From e7f38f940ea02849b6fb8b1a2898066181969495 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 22 Jan 2014 11:27:27 -0500 Subject: [PATCH 099/214] Moved the cards' logic into a category and added support for more AS ones --- ActiveSync/NGVCard+ActiveSync.m | 112 ++++++++++++++++++++-- SoObjects/Contacts/NGVCard+SOGo.h | 15 ++- SoObjects/Contacts/NGVCard+SOGo.m | 151 ++++++++++++++++++++++++++++++ UI/Contacts/UIxContactView.m | 135 ++++++-------------------- 4 files changed, 297 insertions(+), 116 deletions(-) diff --git a/ActiveSync/NGVCard+ActiveSync.m b/ActiveSync/NGVCard+ActiveSync.m index 1255e90f48..f920ed6c73 100644 --- a/ActiveSync/NGVCard+ActiveSync.m +++ b/ActiveSync/NGVCard+ActiveSync.m @@ -35,24 +35,124 @@ #import +#import + @implementation NGVCard (ActiveSync) - (NSString *) activeSyncRepresentation { - NSString *firstName, *lastName; + CardElement *n, *homeAdr, *workAdr; NSMutableString *s; - CardElement *n; + NSArray *emails; + id o; + + int i; s = [NSMutableString string]; n = [self n]; - lastName = [n flattenedValueAtIndex: 0 forKey: @""]; - [s appendFormat: @"%@", lastName]; + if ((o = [n flattenedValueAtIndex: 0 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [n flattenedValueAtIndex: 1 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [self workCompany])) + [s appendFormat: @"%@", o]; + + if ((o = [self title])) + [s appendFormat: @"%@", o]; + + if ((o = [self preferredEMail])) [s appendFormat: @"%@", o]; + + [s appendFormat: @"%@", o]; [s appendFormat: @"%@", o]; + [s appendFormat: @"%@", o]; + + + // Secondary email addresses + emails = [self secondaryEmails]; + [s appendFormat: @"%@", o]; + + for (i = 0; i < [emails count]; i++) + { + o = [[emails objectAtIndex: i] flattenedValuesForKey: @""]; + + [s appendFormat: @"%@", i+2, o, i+2]; + + if (i == 1) + break; + } + + // Telephone numbers + if ((o = [self workPhone])) + [s appendFormat: @"%@", o]; + + if ((o = [self homePhone])) + [s appendFormat: @"%@", o]; + + if ((o = [self fax])) + [s appendFormat: @"%@", o]; + if ((o = [self mobile])) + [s appendFormat: @"%@", o]; - firstName = [n flattenedValueAtIndex: 1 forKey: @""]; - [s appendFormat: @"%@", firstName]; + if ((o = [self pager])) + [s appendFormat: @"%@", o]; + // Home Address + homeAdr = [[self childrenWithTag: @"adr" + andAttribute: @"type" + havingValue: @"home"] objectAtIndex: 0]; + + if ((o = [homeAdr flattenedValueAtIndex: 2 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [homeAdr flattenedValueAtIndex: 3 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [homeAdr flattenedValueAtIndex: 4 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [homeAdr flattenedValueAtIndex: 5 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [homeAdr flattenedValueAtIndex: 6 forKey: @""])) + [s appendFormat: @"%@", o]; + + // Work Address + workAdr = [[self childrenWithTag: @"adr" + andAttribute: @"type" + havingValue: @"work"] objectAtIndex: 0]; + + if ((o = [workAdr flattenedValueAtIndex: 2 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [workAdr flattenedValueAtIndex: 3 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [workAdr flattenedValueAtIndex: 4 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [workAdr flattenedValueAtIndex: 5 forKey: @""])) + [s appendFormat: @"%@", o]; + + if ((o = [workAdr flattenedValueAtIndex: 6 forKey: @""])) + [s appendFormat: @"%@", o]; + + // Other, less important fields + if ((o = [self birthday])) + [s appendFormat: @"%@", [o activeSyncRepresentation]]; + + if ((o = [self note])) + { + [s appendString: @""]; + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%d", [o length]]; + [s appendFormat: @"%d", 0]; + [s appendFormat: @"%@", o]; + [s appendString: @""]; + } + return s; } diff --git a/SoObjects/Contacts/NGVCard+SOGo.h b/SoObjects/Contacts/NGVCard+SOGo.h index 49dcd55d01..5ad1d89868 100644 --- a/SoObjects/Contacts/NGVCard+SOGo.h +++ b/SoObjects/Contacts/NGVCard+SOGo.h @@ -1,8 +1,6 @@ /* NGVCard+SOGo.h - this file is part of SOGo * - * Copyright (C) 2009 Inverse inc. - * - * Author: Cyril Robert + * Copyright (C) 2009-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -33,6 +31,17 @@ - (void) updateFromLDIFRecord: (NSDictionary *) ldifRecord; - (NSMutableDictionary *) asLDIFRecord; +- (NSString *) workCompany; +- (NSString *) fullName; +- (NSArray *) secondaryEmails; + +- (NSString *) workPhone; +- (NSString *) homePhone; +- (NSString *) fax; +- (NSString *) mobile; +- (NSString *) pager; +- (NSCalendarDate *) birthday; + @end #endif /* NGVCARD_SOGO_H */ diff --git a/SoObjects/Contacts/NGVCard+SOGo.m b/SoObjects/Contacts/NGVCard+SOGo.m index 5e5a6b7749..571da2aa0d 100644 --- a/SoObjects/Contacts/NGVCard+SOGo.m +++ b/SoObjects/Contacts/NGVCard+SOGo.m @@ -27,6 +27,8 @@ #import #import +#import + #import "NSDictionary+LDIF.h" #import "NGVCard+SOGo.h" @@ -637,4 +639,153 @@ - (NSMutableDictionary *) asLDIFRecord return ldifRecord; } +- (NSString *) workCompany +{ + CardElement *org; + NSString *company; + + org = [self org]; + company = [org flattenedValueAtIndex: 0 forKey: @""]; + if ([company length] == 0) + company = nil; + + return company; +} + +- (NSString *) fullName +{ + CardElement *n; + NSString *fn, *firstName, *lastName, *org; + + fn = [self fn]; + if ([fn length] == 0) + { + n = [self n]; + lastName = [n flattenedValueAtIndex: 0 forKey: @""]; + firstName = [n flattenedValueAtIndex: 1 forKey: @""]; + if ([firstName length] > 0) + { + if ([lastName length] > 0) + fn = [NSString stringWithFormat: @"%@ %@", firstName, lastName]; + else + fn = firstName; + } + else if ([lastName length] > 0) + fn = lastName; + else + { + n = [self org]; + org = [n flattenedValueAtIndex: 0 forKey: @""]; + fn = org; + } + } + + return fn; +} + +- (NSArray *) secondaryEmails +{ + NSMutableArray *emails; + NSString *email; + int i; + + emails = [NSMutableArray array]; + + [emails addObjectsFromArray: [self childrenWithTag: @"email"]]; + [emails removeObjectsInArray: [self childrenWithTag: @"email" + andAttribute: @"type" + havingValue: @"pref"]]; + + for (i = [emails count]-1; i >= 0; i--) + { + email = [[emails objectAtIndex: i] flattenedValuesForKey: @""]; + + if ([email caseInsensitiveCompare: [self preferredEMail]] == NSOrderedSame) + [emails removeObjectAtIndex: i]; + } + + return emails; +} + +- (NSString *) _phoneOfType: (NSString *) aType + excluding: (NSString *) aTypeToExclude +{ + NSArray *elements, *phones; + NSString *phone; + + phones = [self childrenWithTag: @"tel"]; + elements = [phones cardElementsWithAttribute: @"type" + havingValue: aType]; + + phone = nil; + + if ([elements count] > 0) + { + CardElement *ce; + int i; + + for (i = 0; i < [elements count]; i++) + { + ce = [elements objectAtIndex: i]; + phone = [ce flattenedValuesForKey: @""]; + + if (!aTypeToExclude) + break; + + if (![ce hasAttribute: @"type" havingValue: aTypeToExclude]) + break; + + phone = nil; + } + } + + return phone; +} + +- (NSString *) workPhone +{ + // We do this (exclude FAX) in order to avoid setting the WORK number as the FAX + // one if we do see the FAX field BEFORE the WORK number. + return [self _phoneOfType: @"work" excluding: @"fax"]; +} + +- (NSString *) homePhone +{ + return [self _phoneOfType: @"home" excluding: @"fax"]; +} + +- (NSString *) fax +{ + return [self _phoneOfType: @"fax" excluding: nil]; +} + +- (NSString *) mobile +{ + return [self _phoneOfType: @"cell" excluding: nil]; +} + +- (NSString *) pager +{ + return [self _phoneOfType: @"pager" excluding: nil]; +} + +- (NSCalendarDate *) birthday +{ + NSString *bday, *value; + NSCalendarDate *date; + + bday = [self bday]; + date = nil; + if (bday) + { + // Expected format of BDAY is YYYY[-]MM[-]DD + value = [bday stringByReplacingString: @"-" withString: @""]; + date = [NSCalendarDate dateFromShortDateString: value + andShortTimeString: nil + inTimeZone: nil]; + } + + return date; +} + @end /* NGVCard */ diff --git a/UI/Contacts/UIxContactView.m b/UI/Contacts/UIxContactView.m index 830864fe73..d7e2827629 100644 --- a/UI/Contacts/UIxContactView.m +++ b/UI/Contacts/UIxContactView.m @@ -33,6 +33,8 @@ #import #import #import + +#import #import #import "UIxContactView.h" @@ -107,33 +109,7 @@ - (NSString *) nickName - (NSString *) fullName { - CardElement *n; - NSString *fn, *firstName, *lastName, *org; - - fn = [card fn]; - if ([fn length] == 0) - { - n = [card n]; - lastName = [n flattenedValueAtIndex: 0 forKey: @""]; - firstName = [n flattenedValueAtIndex: 1 forKey: @""]; - if ([firstName length] > 0) - { - if ([lastName length] > 0) - fn = [NSString stringWithFormat: @"%@ %@", firstName, lastName]; - else - fn = firstName; - } - else if ([lastName length] > 0) - fn = lastName; - else - { - n = [card org]; - org = [n flattenedValueAtIndex: 0 forKey: @""]; - fn = org; - } - } - - return fn; + return [card fullName]; } - (NSString *) primaryEmail @@ -159,19 +135,14 @@ - (NSString *) primaryEmail - (NSArray *) secondaryEmails { - NSString *email, *fn, *mailTo; - NSMutableArray *emails; NSMutableArray *secondaryEmails; + NSString *email, *fn, *mailTo; + NSArray *emails; - emails = [NSMutableArray array]; + emails = [card secondaryEmails]; secondaryEmails = [NSMutableArray array]; mailTo = nil; - [emails addObjectsFromArray: [card childrenWithTag: @"email"]]; - [emails removeObjectsInArray: [card childrenWithTag: @"email" - andAttribute: @"type" - havingValue: @"pref"]]; - // We might not have a preferred item but rather something like this: // EMAIL;TYPE=work:dd@ee.com // EMAIL;TYPE=home:ff@gg.com @@ -189,20 +160,16 @@ - (NSArray *) secondaryEmails for (i = 0; i < [emails count]; i++) { email = [[emails objectAtIndex: i] flattenedValuesForKey: @""]; - - // skip primary email - if ([email caseInsensitiveCompare: [card preferredEMail]] != NSOrderedSame) - { - fn = [card fn]; - fn = [fn stringByReplacingString: @"\"" withString: @""]; - fn = [fn stringByReplacingString: @"'" withString: @"\\\'"]; - mailTo = [NSString stringWithFormat: @"');\">" - @"%@", email, fn, email, email]; - [secondaryEmails addObject: [self _cardStringWithLabel: nil - value: mailTo]]; - } - } + fn = [card fn]; + fn = [fn stringByReplacingString: @"\"" withString: @""]; + fn = [fn stringByReplacingString: @"'" withString: @"\\\'"]; + mailTo = [NSString stringWithFormat: @"');\">" + @"%@", email, fn, email, email]; + + [secondaryEmails addObject: [self _cardStringWithLabel: nil + value: mailTo]]; + } } else { @@ -256,66 +223,31 @@ - (BOOL) hasTelephones return ([phones count] > 0); } -- (NSString *) _phoneOfType: (NSString *) aType - withLabel: (NSString *) aLabel - excluding: (NSString *) aTypeToExclude -{ - NSArray *elements; - NSString *phone; - - elements = [phones cardElementsWithAttribute: @"type" - havingValue: aType]; - - phone = nil; - - if ([elements count] > 0) - { - CardElement *ce; - int i; - - for (i = 0; i < [elements count]; i++) - { - ce = [elements objectAtIndex: i]; - phone = [ce flattenedValuesForKey: @""]; - - if (!aTypeToExclude) - break; - - if (![ce hasAttribute: @"type" havingValue: aTypeToExclude]) - break; - - phone = nil; - } - } - - return [self _cardStringWithLabel: aLabel value: phone url: @"tel"]; -} - - (NSString *) workPhone { // We do this (exclude FAX) in order to avoid setting the WORK number as the FAX // one if we do see the FAX field BEFORE the WORK number. - return [self _phoneOfType: @"work" withLabel: @"Work:" excluding: @"fax"]; + return [self _cardStringWithLabel: @"Work:" value: [card workPhone] url: @"tel"]; } - (NSString *) homePhone { - return [self _phoneOfType: @"home" withLabel: @"Home:" excluding: @"fax"]; + return [self _cardStringWithLabel: @"Home:" value: [card homePhone] url: @"tel"]; } - (NSString *) fax { - return [self _phoneOfType: @"fax" withLabel: @"Fax:" excluding: nil]; + return [self _cardStringWithLabel: @"Fax:" value: [card fax] url: @"tel"]; } - (NSString *) mobile { - return [self _phoneOfType: @"cell" withLabel: @"Mobile:" excluding: nil]; + return [self _cardStringWithLabel: @"Mobile:" value: [card mobile] url: @"tel"]; } - (NSString *) pager { - return [self _phoneOfType: @"pager" withLabel: @"Pager:" excluding: nil]; + return [self _cardStringWithLabel: @"Pager:" value: [card pager] url: @"tel"]; } - (BOOL) hasHomeInfos @@ -535,15 +467,7 @@ - (NSString *) workService - (NSString *) workCompany { - CardElement *org; - NSString *company; - - org = [card org]; - company = [org flattenedValueAtIndex: 0 forKey: @""]; - if ([company length] == 0) - company = nil; - - return [self _cardStringWithLabel: nil value: company]; + return [self _cardStringWithLabel: nil value: [card workCompany]]; } - (NSString *) workPobox @@ -615,18 +539,15 @@ - (BOOL) hasOtherInfos - (NSString *) bday { - NSString *bday, *value; - NSCalendarDate *date; SOGoDateFormatter *dateFormatter; + NSCalendarDate *date; + NSString *bday; + + date = [card birthday]; + bday = nil; - bday = [card bday]; - if (bday) + if (date) { - // Expected format of BDAY is YYYY[-]MM[-]DD - value = [bday stringByReplacingString: @"-" withString: @""]; - date = [NSCalendarDate dateFromShortDateString: value - andShortTimeString: nil - inTimeZone: nil]; dateFormatter = [[[self context] activeUser] dateFormatterInContext: context]; bday = [dateFormatter formattedDate: date]; } From d1a384e539e52bdb40e326ef41149fe7b28fff04 Mon Sep 17 00:00:00 2001 From: Jean Raby Date: Wed, 22 Jan 2014 11:40:04 -0500 Subject: [PATCH 100/214] Send IMIP responses if the event is in the future Avoids sending responses for past events when importing events into a new calendar from thunderbird or any DAV client. --- SoObjects/Appointments/SOGoCalendarComponent.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 117812ef11..bbed097ca8 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -896,7 +896,7 @@ - (void) sendIMIPReplyForEvent: (iCalRepeatableEntityObject *) event SOGoDomainDefaults *dd; dd = [from domainDefaults]; - if ([dd appointmentSendEMailNotifications]) + if ([dd appointmentSendEMailNotifications] && [event isStillRelevant]) { /* get WOApplication instance */ app = [WOApplication application]; From 19b404de45941cd1913fa5ab36c282cda1e35d51 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 23 Jan 2014 08:17:02 -0500 Subject: [PATCH 101/214] Update French translation --- UI/PreferencesUI/French.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UI/PreferencesUI/French.lproj/Localizable.strings b/UI/PreferencesUI/French.lproj/Localizable.strings index 1bd25fd64e..e5dc32c7a4 100644 --- a/UI/PreferencesUI/French.lproj/Localizable.strings +++ b/UI/PreferencesUI/French.lproj/Localizable.strings @@ -32,7 +32,7 @@ = "Veuillez définir un message et vos adresses pour lesquelles pour désirez activer une réponse automatique."; "Your vacation message must not end with a single dot on a line." = "Le message de vacances ne doit pas se terminer par une ligne ne contenant qu'un point."; "End date of your auto reply must be in the future." -= "La date de fin de la réponse automatique doit être dans le future."; += "La date de fin de la réponse automatique doit être dans le futur."; /* forward messages */ "Forward incoming messages" = "Transférer les messages entrant"; From feb398d59c20f1a72be40a276f97792c53168f29 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 23 Jan 2014 09:10:17 -0500 Subject: [PATCH 102/214] Fix IE11 issue with mail editor --- NEWS | 1 + UI/Templates/MailerUI/UIxMailEditor.wox | 2 +- UI/WebServerResources/UIxMailEditor.css | 3 +- UI/WebServerResources/UIxMailEditor.js | 55 ++++++++++++------------- 4 files changed, 30 insertions(+), 31 deletions(-) diff --git a/NEWS b/NEWS index aa7e844345..8d2204d4c4 100644 --- a/NEWS +++ b/NEWS @@ -15,6 +15,7 @@ Enhancements - updated Finnish translation - XMLHttpRequest.js is now loaded conditionaly (< IE9) - format time in attendees invitation window according to the user's locale + - improved IE11 support Bug fixes - don't load 'background' attribute (#2437) diff --git a/UI/Templates/MailerUI/UIxMailEditor.wox b/UI/Templates/MailerUI/UIxMailEditor.wox index b5fe79da37..ea18d9c4f0 100644 --- a/UI/Templates/MailerUI/UIxMailEditor.wox +++ b/UI/Templates/MailerUI/UIxMailEditor.wox @@ -123,7 +123,7 @@

- + + From 4070b9222d65b265fc67b54c5af095cdadbfaef9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 09:59:45 -0500 Subject: [PATCH 168/214] Rework HTML of appointment notifications Needed to simplify the HTML so it displays properly in Outlook. Fixes #2233 --- NEWS | 1 + .../Appointments/SOGoAptMailDeletion.wox | 56 +++++------ .../Appointments/SOGoAptMailICalReply.wox | 27 +++--- .../Appointments/SOGoAptMailInvitation.wox | 58 +++++------ .../Appointments/SOGoAptMailReceipt.wox | 96 ++++++++++++------- .../Appointments/SOGoAptMailUpdate.wox | 49 ++++------ 6 files changed, 154 insertions(+), 133 deletions(-) diff --git a/NEWS b/NEWS index 53b7aa909f..a2f77a2df6 100644 --- a/NEWS +++ b/NEWS @@ -41,6 +41,7 @@ Bug fixes - encode HTML entities when forwarding an HTML message inline in plain text composition mode (#2411) - encode HTML entities in JSON data returned by Calendar module (#2598) - fixed handling of ACLs on shared calendars with multiple groups (#1854) + - fixed HTML formatting of appointment notifications for Outlook (#2233) 2.1.1b (2013-12-04) ------------------- diff --git a/UI/Templates/Appointments/SOGoAptMailDeletion.wox b/UI/Templates/Appointments/SOGoAptMailDeletion.wox index aea834b625..544be59bd9 100644 --- a/UI/Templates/Appointments/SOGoAptMailDeletion.wox +++ b/UI/Templates/Appointments/SOGoAptMailDeletion.wox @@ -8,37 +8,39 @@ -
-

-

- -
-
-
-
-
+ + +

+ + + + + + + + - -
-
-
+ + + + - -
-
-
-
-
+ + + + + + + + diff --git a/UI/Templates/Appointments/SOGoAptMailICalReply.wox b/UI/Templates/Appointments/SOGoAptMailICalReply.wox index fb8e01b751..6b1e28499b 100644 --- a/UI/Templates/Appointments/SOGoAptMailICalReply.wox +++ b/UI/Templates/Appointments/SOGoAptMailICalReply.wox @@ -8,23 +8,20 @@ -
-

- -
-
-
-
-
+ + + + + + + + + +

diff --git a/UI/Templates/Appointments/SOGoAptMailInvitation.wox b/UI/Templates/Appointments/SOGoAptMailInvitation.wox index 8efa43197f..1abc714239 100644 --- a/UI/Templates/Appointments/SOGoAptMailInvitation.wox +++ b/UI/Templates/Appointments/SOGoAptMailInvitation.wox @@ -8,37 +8,41 @@ -
-

-

- -
-
-
-
-
+ + +

+ + + + + + + + - -
-
-
+ + + + - -
-
-
-
-
+ + + + + + + + diff --git a/UI/Templates/Appointments/SOGoAptMailReceipt.wox b/UI/Templates/Appointments/SOGoAptMailReceipt.wox index 4ff295e9ad..fc9f701d7f 100644 --- a/UI/Templates/Appointments/SOGoAptMailReceipt.wox +++ b/UI/Templates/Appointments/SOGoAptMailReceipt.wox @@ -9,48 +9,72 @@ -
-

- -
-
-
-
-
-
-
-
-
-
+ + + + + + + + + + + + + + + + + + + + + -
- -
- -
+
+ + + + + + + + - -
- -
+ +
+ + + + + + + + - -
- -
+ +
+ + + + + + + + - - +

diff --git a/UI/Templates/Appointments/SOGoAptMailUpdate.wox b/UI/Templates/Appointments/SOGoAptMailUpdate.wox index 54ef9a5c64..f47f6afe54 100644 --- a/UI/Templates/Appointments/SOGoAptMailUpdate.wox +++ b/UI/Templates/Appointments/SOGoAptMailUpdate.wox @@ -8,38 +8,31 @@ -
- -

-

- -
-
-
-
- -
+ + + + + + + + +
-
+ >
+ + + - - -
-
-
-
- + + + + +

\ No newline at end of file From 3363b253ac9f7e2643b66390467c6c78a750393f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 7 Feb 2014 10:45:09 -0500 Subject: [PATCH 169/214] Set additional properties on meeting requests --- ActiveSync/SOGoMailObject+ActiveSync.m | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 5992482fb1..411d3964a8 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -30,12 +30,14 @@ #include "SOGoMailObject+ActiveSync.h" #import +#import #import #import #import #import #import +#import #import #import @@ -417,6 +419,12 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%@", [[event organizer] rfc822Email]]; [s appendFormat: @"%d", 1]; + // We disallow new time proposals + [s appendFormat: @"%d", 1]; + + // We set the right message type + [s appendFormat: @"%d", 1]; + // From http://blogs.msdn.com/b/exchangedev/archive/2011/07/22/working-with-meeting-requests-in-exchange-activesync.aspx: // // "Clients that need to determine whether the GlobalObjId element for a meeting request corresponds to an existing Calendar @@ -429,6 +437,7 @@ - (NSString *) activeSyncRepresentation // MesssageClass and ContentClass [s appendFormat: @"%@", @"IPM.Schedule.Meeting.Request"]; [s appendFormat: @"%@", @"urn:content-classes:calendarmessage"]; + } else { From eee5beb6987e763e4a99b5a7baf76b1e1944a389 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 10:51:42 -0500 Subject: [PATCH 170/214] Add message-id header to appointment notification Fixes #2535 --- NEWS | 1 + SoObjects/Appointments/SOGoCalendarComponent.m | 8 ++++++-- SoObjects/Mailer/NSString+Mail.h | 3 ++- SoObjects/Mailer/NSString+Mail.m | 16 +++++++++++++++- SoObjects/Mailer/SOGoDraftObject.m | 15 +-------------- 5 files changed, 25 insertions(+), 18 deletions(-) diff --git a/NEWS b/NEWS index a2f77a2df6..7f500f1cf7 100644 --- a/NEWS +++ b/NEWS @@ -28,6 +28,7 @@ Enhancements - improved confirmation dialog box when deleting events and tasks - moved the DN cache to SOGoCache - avoiding sogod restarts after RDN operations - don't use the HTML editor with Internet Explorer 7 + - add message-id header to appointment notifications (#2535) Bug fixes - don't load 'background' attribute (#2437) diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 57f957473f..4283015648 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -24,6 +24,7 @@ #import #import +#import #import #import @@ -62,6 +63,7 @@ #import #import #import +#import #import "SOGoAptMailICalReply.h" #import "SOGoAptMailNotification.h" @@ -832,6 +834,7 @@ - (void) sendEMailUsingTemplateNamed: (NSString *) newPageName mailDate = [[NSCalendarDate date] rfc822DateString]; [headerMap setObject: mailDate forKey: @"date"]; [headerMap setObject: subject forKey: @"subject"]; + [headerMap setObject: [NSString generateMessageID] forKey: @"message-id"]; if ([msgType length] > 0) [headerMap setObject: msgType forKey: @"x-sogo-message-type"]; msg = [NGMimeMessage messageWithHeader: headerMap]; @@ -861,8 +864,7 @@ - (void) sendEMailUsingTemplateNamed: (NSString *) newPageName sendMimePart: msg toRecipients: [NSArray arrayWithObject: email] sender: shortSenderEmail - withAuthenticator: [self - authenticatorInContext: context] + withAuthenticator: [self authenticatorInContext: context] inContext: context]; } } @@ -916,6 +918,7 @@ - (void) sendIMIPReplyForEvent: (iCalRepeatableEntityObject *) event [headerMap setObject: mailDate forKey: @"date"]; [headerMap setObject: [[p getSubject] asQPSubjectString: @"UTF-8"] forKey: @"subject"]; + [headerMap setObject: [NSString generateMessageID] forKey: @"message-id"]; [headerMap setObject: @"1.0" forKey: @"MIME-Version"]; [headerMap setObject: @"multipart/mixed" forKey: @"content-type"]; [headerMap setObject: @"calendar:invitation-reply" forKey: @"x-sogo-message-type"]; @@ -1038,6 +1041,7 @@ - (void) sendReceiptEmailForObject: (iCalRepeatableEntityObject *) object mailDate = [[NSCalendarDate date] rfc822DateString]; [headerMap setObject: mailDate forKey: @"date"]; [headerMap setObject: [page getSubject] forKey: @"subject"]; + [headerMap setObject: [NSString generateMessageID] forKey: @"message-id"]; [headerMap setObject: @"1.0" forKey: @"MIME-Version"]; [headerMap setObject: @"text/html; charset=utf-8" forKey: @"content-type"]; diff --git a/SoObjects/Mailer/NSString+Mail.h b/SoObjects/Mailer/NSString+Mail.h index 5d04fc01b9..a4851855e7 100644 --- a/SoObjects/Mailer/NSString+Mail.h +++ b/SoObjects/Mailer/NSString+Mail.h @@ -1,6 +1,6 @@ /* NSString+Mail.h - this file is part of SOGo * - * Copyright (C) 2007-2013 Inverse inc. + * Copyright (C) 2007-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -26,6 +26,7 @@ @interface NSString (SOGoExtension) ++ (NSString *) generateMessageID; - (NSString *) htmlToText; - (NSString *) htmlByExtractingImages: (NSMutableArray *) theImages; - (NSString *) stringByConvertingCRLNToHTML; diff --git a/SoObjects/Mailer/NSString+Mail.m b/SoObjects/Mailer/NSString+Mail.m index cc8164b1c2..7e7f1fbaf6 100644 --- a/SoObjects/Mailer/NSString+Mail.m +++ b/SoObjects/Mailer/NSString+Mail.m @@ -20,8 +20,9 @@ #import #import -#import #import +#import +#import #import #import @@ -516,6 +517,19 @@ - (void) endCDATA @implementation NSString (SOGoExtension) ++ (NSString *) generateMessageID +{ + NSMutableString *messageID; + NSString *pGUID; + + messageID = [NSMutableString string]; + [messageID appendFormat: @"<%@", [SOGoObject globallyUniqueObjectId]]; + pGUID = [[NSProcessInfo processInfo] globallyUniqueString]; + [messageID appendFormat: @"@%u>", [pGUID hash]]; + + return [messageID lowercaseString]; +} + - (NSString *) htmlToText { _SOGoHTMLContentHandler *handler; diff --git a/SoObjects/Mailer/SOGoDraftObject.m b/SoObjects/Mailer/SOGoDraftObject.m index 5074294dd4..bd5a0d469a 100644 --- a/SoObjects/Mailer/SOGoDraftObject.m +++ b/SoObjects/Mailer/SOGoDraftObject.m @@ -256,19 +256,6 @@ - (NSString *) infoPath /* contents */ -- (NSString *) _generateMessageID -{ - NSMutableString *messageID; - NSString *pGUID; - - messageID = [NSMutableString string]; - [messageID appendFormat: @"<%@", [self globallyUniqueObjectId]]; - pGUID = [[NSProcessInfo processInfo] globallyUniqueString]; - [messageID appendFormat: @"@%u>", [pGUID hash]]; - - return [messageID lowercaseString]; -} - - (void) setHeaders: (NSDictionary *) newHeaders { id headerValue; @@ -288,7 +275,7 @@ - (void) setHeaders: (NSDictionary *) newHeaders messageID = [headers objectForKey: @"message-id"]; if (!messageID) { - messageID = [self _generateMessageID]; + messageID = [NSString generateMessageID]; [headers setObject: messageID forKey: @"message-id"]; } From 7118bbe0ab7790db0321122fe2b6462a204bd4b9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 14:00:36 -0500 Subject: [PATCH 171/214] Replace '/' by '-' in filenames of attachments Fixes #2537 --- NEWS | 1 + SoObjects/Mailer/SOGoMailObject.m | 10 +++++++--- UI/MailPartViewers/UIxMailPartViewer.m | 6 +++++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 7f500f1cf7..9a2ffc2d21 100644 --- a/NEWS +++ b/NEWS @@ -43,6 +43,7 @@ Bug fixes - encode HTML entities in JSON data returned by Calendar module (#2598) - fixed handling of ACLs on shared calendars with multiple groups (#1854) - fixed HTML formatting of appointment notifications for Outlook (#2233) + - replace slashes by dashes in filenames of attachments to avoid a 404 return code (#2537) 2.1.1b (2013-12-04) ------------------- diff --git a/SoObjects/Mailer/SOGoMailObject.m b/SoObjects/Mailer/SOGoMailObject.m index aa808d1965..85eacf5b96 100644 --- a/SoObjects/Mailer/SOGoMailObject.m +++ b/SoObjects/Mailer/SOGoMailObject.m @@ -761,7 +761,7 @@ - (void) _fetchFileAttachmentKey: (NSDictionary *) part withPath: (NSString *) path andPrefix: (NSString *) prefix { - NSString *filename, *mimeType; + NSString *filename, *mimeType, *filenameURL; NSDictionary *currentFile; filename = [part filename]; @@ -783,14 +783,18 @@ - (void) _fetchFileAttachmentKey: (NSDictionary *) part if (filename) { + // We replace any slash by a dash since Apache won't allow encoded slashes by default. + // See http://httpd.apache.org/docs/2.2/mod/core.html#allowencodedslashes + // See [UIxMailPartViewer _filenameForAttachment:] + filenameURL = [[filename stringByReplacingString: @"/" withString: @"-"] stringByEscapingURL]; currentFile = [NSDictionary dictionaryWithObjectsAndKeys: filename, @"filename", [mimeType lowercaseString], @"mimetype", path, @"path", [part objectForKey: @"encoding"], @"encoding", [part objectForKey:@ "size"], @"size", - [NSString stringWithFormat: @"%@/%@", prefix, [filename stringByEscapingURL]], @"url", - [NSString stringWithFormat: @"%@/asAttachment/%@", prefix, [filename stringByEscapingURL]], @"urlAsAttachment", + [NSString stringWithFormat: @"%@/%@", prefix, filenameURL], @"url", + [NSString stringWithFormat: @"%@/asAttachment/%@", prefix, filenameURL], @"urlAsAttachment", nil]; [keys addObject: currentFile]; } diff --git a/UI/MailPartViewers/UIxMailPartViewer.m b/UI/MailPartViewers/UIxMailPartViewer.m index 21aeec6234..c973acbb68 100644 --- a/UI/MailPartViewers/UIxMailPartViewer.m +++ b/UI/MailPartViewers/UIxMailPartViewer.m @@ -267,7 +267,11 @@ - (NSString *) _filenameForAttachment: (SOGoMailBodyPart *) bodyPart NSString *extension; filename = [NSMutableString stringWithString: [self filename]]; - if (![filename length]) + if ([filename length]) + // We replace any slash by a dash since Apache won't allow encoded slashes by default. + // See http://httpd.apache.org/docs/2.2/mod/core.html#allowencodedslashes + filename = [filename stringByReplacingString: @"/" withString: @"-"]; + else [filename appendFormat: @"%@-%@", [self labelForKey: @"Untitled"], [bodyPart nameInContainer]]; From 80a09407652ec04e8c9fb6cb48e1029e69a15765 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 15:52:43 -0500 Subject: [PATCH 172/214] Escape HTML in JSON of contacts module --- NEWS | 2 +- UI/Contacts/UIxContactView.m | 3 ++- UI/Contacts/UIxContactsListActions.m | 23 ++++++++++++++++++++++- UI/WebServerResources/ContactsUI.js | 10 +++++----- 4 files changed, 30 insertions(+), 8 deletions(-) diff --git a/NEWS b/NEWS index 9a2ffc2d21..cd582679f0 100644 --- a/NEWS +++ b/NEWS @@ -40,7 +40,7 @@ Bug fixes - warn user when dnd failed because of a resource conflict (#1613) - respect the maximum number of bookings when viewing the freebusy information of a resource (#2560) - encode HTML entities when forwarding an HTML message inline in plain text composition mode (#2411) - - encode HTML entities in JSON data returned by Calendar module (#2598) + - encode HTML entities in JSON data (#2598) - fixed handling of ACLs on shared calendars with multiple groups (#1854) - fixed HTML formatting of appointment notifications for Outlook (#2233) - replace slashes by dashes in filenames of attachments to avoid a 404 return code (#2537) diff --git a/UI/Contacts/UIxContactView.m b/UI/Contacts/UIxContactView.m index d7e2827629..486fff1075 100644 --- a/UI/Contacts/UIxContactView.m +++ b/UI/Contacts/UIxContactView.m @@ -29,6 +29,7 @@ #import #import #import +#import #import #import @@ -71,7 +72,7 @@ - (NSString *) _cardStringWithLabel: (NSString *) label NSMutableString *cardString; cardString = [NSMutableString stringWithCapacity: 80]; - value = [value stringByReplacingString: @"\r" withString: @""]; + value = [[value stringByReplacingString: @"\r" withString: @""] stringByEscapingHTMLString]; if ([value length] > 0) { if ([url length] > 0) diff --git a/UI/Contacts/UIxContactsListActions.m b/UI/Contacts/UIxContactsListActions.m index 1b9ab62f41..c3438d46d8 100644 --- a/UI/Contacts/UIxContactsListActions.m +++ b/UI/Contacts/UIxContactsListActions.m @@ -127,11 +127,32 @@ - (NSArray *) contactInfos - (id ) contactsListAction { id result; + id currentInfo; NSArray *contactsList; + NSEnumerator *contactsListEnumerator, *keysEnumerator; + NSMutableArray *newContactsList; + NSMutableDictionary *currentContactDictionary; + NSString *key; contactsList = [self contactInfos]; + contactsListEnumerator = [contactsList objectEnumerator]; + newContactsList = [NSMutableArray arrayWithCapacity: [contactsList count]]; + + // Escape HTML + while ((currentContactDictionary = [contactsListEnumerator nextObject])) + { + keysEnumerator = [currentContactDictionary keyEnumerator]; + while ((key = [keysEnumerator nextObject])) + { + currentInfo = [currentContactDictionary objectForKey: key]; + if ([currentInfo respondsToSelector: @selector (stringByEscapingHTMLString)]) + [currentContactDictionary setObject: [currentInfo stringByEscapingHTMLString] forKey: key]; + } + [newContactsList addObject: currentContactDictionary]; + } + result = [self responseWithStatus: 200 - andString: [contactsList jsonRepresentation]]; + andString: [newContactsList jsonRepresentation]]; return result; } diff --git a/UI/WebServerResources/ContactsUI.js b/UI/WebServerResources/ContactsUI.js index ad106b2617..93360260a7 100644 --- a/UI/WebServerResources/ContactsUI.js +++ b/UI/WebServerResources/ContactsUI.js @@ -103,13 +103,13 @@ function contactsListCallback(http) { null, null, row); - cell.appendChild(document.createTextNode(contact["c_cn"])); + cell.update(contact["c_cn"]); cell.title = contact["c_cn"]; cell = document.createElement("td"); row.appendChild(cell); if (contact["c_mail"]) { - cell.appendChild(document.createTextNode(contact["c_mail"])); + cell.update(contact["c_mail"]); cell.title = contact["c_mail"]; } @@ -117,17 +117,17 @@ function contactsListCallback(http) { cell = document.createElement("td"); row.appendChild(cell); if (contact["c_screenname"]) - cell.appendChild(document.createTextNode(contact["c_screenname"])); + cell.update(contact["c_screenname"]); cell = document.createElement("td"); row.appendChild(cell); if (contact["c_o"]) - cell.appendChild(document.createTextNode(contact["c_o"])); + cell.update(contact["c_o"]); cell = document.createElement("td"); row.appendChild(cell); if (contact["c_telephonenumber"]) - cell.appendChild(document.createTextNode(contact["c_telephonenumber"])); + cell.update(contact["c_telephonenumber"]); } } } From 3a5e44e7eb8b390b67a8f8a83030b49606956501 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 15:53:39 -0500 Subject: [PATCH 173/214] Decode HTML entities in JSON of calendar module --- UI/WebServerResources/SchedulerUI.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index 820f235b07..2d5557125a 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -1015,23 +1015,23 @@ function eventsListCallback(http) { td = createElement("td"); row.appendChild(td); td.observe("mousedown", listRowMouseDownHandler, true); - td.appendChild(document.createTextNode(data[i][21])); // start date + td.update(data[i][21]); // start date td = createElement("td"); row.appendChild(td); td.observe("mousedown", listRowMouseDownHandler, true); - td.appendChild(document.createTextNode(data[i][22])); // end date + td.update(data[i][22]); // end date td = createElement("td"); row.appendChild(td); td.observe("mousedown", listRowMouseDownHandler, true); if (data[i][7]) - td.appendChild(document.createTextNode(data[i][7])); // location + td.update(data[i][7]); // location td = createElement("td"); row.appendChild(td); td.observe("mousedown", listRowMouseDownHandler, true); - td.appendChild(document.createTextNode(data[i][2])); // calendar + td.update(data[i][2]); // calendar } if (sorting["event-header"] && sorting["event-header"].length > 0) { From c94595ea7f0f843c2d7abf25df039b2bbe707625 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 7 Feb 2014 16:12:14 -0500 Subject: [PATCH 174/214] Escape HTML in CSS dialogs --- UI/WebServerResources/SchedulerUI.js | 4 ++-- UI/WebServerResources/generic.js | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index 2d5557125a..c7773c337b 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -265,7 +265,7 @@ function deleteEvent() { content = nodes[i].allTextContent(); } itemElement.appendChild(colorBox); - itemElement.appendChild(new Element('span').update(content)); + itemElement.appendChild(new Element('span').update(content.escapeHTML())); if (nodes[i].startDate) { var startDate = new Date(nodes[i].startDate*1000); var dateElement = new Element('div', {'class': 'muted'}); @@ -332,7 +332,7 @@ function deleteEvent() { } } itemElement.appendChild(colorBox); - itemElement.appendChild(new Element('span').update(content)); + itemElement.appendChild(new Element('span').update(content.escapeHTML())); if (selectedCalendarCell[i].startDate) { var startDate = new Date(selectedCalendarCell[i].startDate*1000); var dateElement = new Element('div', {'class': 'muted'}); diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index ced3c99b04..e5b6693147 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -1467,7 +1467,7 @@ function showAlarmCallback(http) { if (data["description"].length) msg += "\n\n" + data["description"]; - window.alert(msg); + window.alert(msg.unescapeHTML()); showSelectDialog(data["summary"], _('Snooze for '), { '5': _('5 minutes'), '10': _('10 minutes'), @@ -1983,7 +1983,7 @@ function createDialog(id, title, legend, content, positionClass) { var subdiv = createElement("div", null, null, null, null, newDialog); if (title && title.length > 0) { var titleh3 = createElement("h3", null, null, null, null, subdiv); - titleh3.appendChild(document.createTextNode(title)); + titleh3.update(title); } if (legend) { if (Object.isElement(legend)) @@ -2141,14 +2141,14 @@ function _showSelectDialog(title, label, options, button, callbackFcn, callbackA } else { var fields = createElement("p", null, []); - fields.appendChild(document.createTextNode(label)); + fields.update(label); var select = createElement("select"); //, null, null, { cname: name } ); fields.appendChild(select); var values = $H(options).keys(); for (var i = 0; i < values.length; i++) { var option = createElement("option", null, null, { value: values[i] }, null, select); - option.appendChild(document.createTextNode(options[values[i]])); + option.update(options[values[i]]); } fields.appendChild(createElement("br")); From 8225f76279e54dc2e8e9ed2162428569f8c81f47 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 7 Feb 2014 16:17:11 -0500 Subject: [PATCH 175/214] Fixed globalobjid so it doesn't contain \n characters! --- ActiveSync/SOGoMailObject+ActiveSync.m | 39 +++++++++++++++++--------- 1 file changed, 26 insertions(+), 13 deletions(-) diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 411d3964a8..5e1c702099 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -99,11 +99,11 @@ - (void) _setInstanceDate: (struct GlobalObjectId *) newGlobalId // - (NSData *) _computeGlobalObjectIdFromEvent: (iCalEvent *) event { - NSData *binPrefix, *globalObjectId; + NSData *binPrefix, *globalObjectId, *uidAsASCII; NSString *prefix, *uid; struct GlobalObjectId newGlobalId; - const char *uidAsUTF8; + const char *bytes; prefix = @"040000008200e00074c5b7101a82e008"; @@ -115,13 +115,14 @@ - (NSData *) _computeGlobalObjectIdFromEvent: (iCalEvent *) event [binPrefix getBytes: &newGlobalId.ByteArrayID]; [self _setInstanceDate: &newGlobalId fromDate: [event recurrenceId]]; - uidAsUTF8 = [uid UTF8String]; + uidAsASCII = [uid dataUsingEncoding: NSASCIIStringEncoding]; + bytes = [uidAsASCII bytes]; // 0x0c is the size of our dataPrefix - newGlobalId.Size = 0x0c + strlen(uidAsUTF8); + newGlobalId.Size = 0x0c + [uidAsASCII length]; newGlobalId.Data = malloc(newGlobalId.Size * sizeof(uint8_t)); memcpy(newGlobalId.Data, dataPrefix, 0x0c); - memcpy(newGlobalId.Data + 0x0c, uidAsUTF8, newGlobalId.Size - 0x0c); + memcpy(newGlobalId.Data + 0x0c, bytes, newGlobalId.Size - 0x0c); globalObjectId = [[NSData alloc] initWithBytes: &newGlobalId length: 40 + newGlobalId.Size*sizeof(uint8_t)]; free(newGlobalId.Data); @@ -144,12 +145,12 @@ - (NSData *) _computeGlobalObjectIdFromEvent: (iCalEvent *) event // uid = nil; // bytes = malloc(length*sizeof(uint8_t)); -// [objectId getBytes: bytes length: length]; +// [objectId getBytes: bytes length: length]; -// newGlobalId = bytes; +// newGlobalId = (struct GlobalObjectId *)bytes; // // We must take the offset (dataPrefix) into account -// uid = [[NSString alloc] initWithBytes: newGlobalId->Data+12 length: newGlobalId->Size-12 encoding: NSUTF8StringEncoding]; +// uid = [[NSString alloc] initWithBytes: newGlobalId->Data+12 length: newGlobalId->Size-12 encoding: NSASCIIStringEncoding]; // free(bytes); // return AUTORELEASE(uid); @@ -389,10 +390,13 @@ - (NSString *) activeSyncRepresentation { iCalTimeZone *tz; iCalEvent *event; - + int v; + event = [[calendar events] lastObject]; [s appendString: @""]; + + [s appendFormat: @"%d", ([event isAllDay] ? 1 : 0)]; if ([event timeStampAsDate]) [s appendFormat: @"%@", [[event timeStampAsDate] activeSyncRepresentationWithoutSeparators]]; @@ -419,11 +423,21 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%@", [[event organizer] rfc822Email]]; [s appendFormat: @"%d", 1]; + // Sensitivity + if ([[event accessClass] isEqualToString: @"PRIVATE"]) + v = 2; + if ([[event accessClass] isEqualToString: @"CONFIDENTIAL"]) + v = 3; + else + v = 0; + + [s appendFormat: @"%d", v]; + // We disallow new time proposals [s appendFormat: @"%d", 1]; - // We set the right message type - [s appendFormat: @"%d", 1]; + // We set the right message type - we must set AS version to 14.1 for this + //[s appendFormat: @"%d", 1]; // From http://blogs.msdn.com/b/exchangedev/archive/2011/07/22/working-with-meeting-requests-in-exchange-activesync.aspx: // @@ -431,13 +445,12 @@ - (NSString *) activeSyncRepresentation // object in the Calendar folder have to convert the GlobalObjId element value to a UID element value to make the comparison." // globalObjId = [self _computeGlobalObjectIdFromEvent: event]; - [s appendFormat: @"%@", [globalObjId stringByEncodingBase64]]; + [s appendFormat: @"%@", [[globalObjId stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]]; [s appendString: @""]; // MesssageClass and ContentClass [s appendFormat: @"%@", @"IPM.Schedule.Meeting.Request"]; [s appendFormat: @"%@", @"urn:content-classes:calendarmessage"]; - } else { From b5f1d3a19a295bb1a642b3d08d8b2af37dc1a23a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 10 Feb 2014 11:25:38 -0500 Subject: [PATCH 176/214] Guide: add SOGoCalendarDefaultReminder paramter --- Documentation/SOGo Installation Guide.odt | Bin 157625 -> 168181 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index a42fbf36f003e7d89296385ccdaebc7f341db23a..33d9975cb77e90a9d69259475aff63560c30a594 100644 GIT binary patch literal 168181 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 z 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%0AXv;d={{fj<;vWJOK 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

;as+*NIB+`6=*AAqm*Q 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

  • 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 V)IqpsKcm2WK$vVW9dR~k{{t)uFU0@= From 75c8362df833bc4204bf6a83cc037eaa719d20cf Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 14 Feb 2014 16:39:26 -0500 Subject: [PATCH 189/214] Avoid over-using LDAP connections when decomposing groups --- NEWS | 1 + .../Appointments/SOGoCalendarComponent.m | 26 ++++++++++++++----- SoObjects/SOGo/SOGoGroup.m | 4 +-- 3 files changed, 22 insertions(+), 9 deletions(-) diff --git a/NEWS b/NEWS index 0782818e90..1d70e29bc0 100644 --- a/NEWS +++ b/NEWS @@ -45,6 +45,7 @@ Bug fixes - fixed handling of ACLs on shared calendars with multiple groups (#1854) - fixed HTML formatting of appointment notifications for Outlook (#2233) - replace slashes by dashes in filenames of attachments to avoid a 404 return code (#2537) + - avoid over-using LDAP connections when decomposing groups 2.1.1b (2013-12-04) ------------------- diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 4283015648..d595bdba0b 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -1,10 +1,6 @@ /* SOGoCalendarComponent.m - this file is part of SOGo * - * Copyright (C) 2006-2012 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Francis Lachapelle - * Ludovic Marcotte + * Copyright (C) 2006-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -22,6 +18,7 @@ * Boston, MA 02111-1307, USA. */ +#import #import #import #import @@ -492,18 +489,31 @@ - (BOOL) expandGroupsInEvent: (iCalEvent *) theEvent NSMutableArray *allAttendees; iCalPerson *currentAttendee; NSEnumerator *enumerator; + NSAutoreleasePool *pool; SOGoGroup *group; BOOL eventWasModified; - unsigned int i; + unsigned int i, j; + domain = [[context activeUser] domain]; organizerEmail = [[theEvent organizer] rfc822Email]; eventWasModified = NO; allAttendees = [NSMutableArray arrayWithArray: [theEvent attendees]]; enumerator = [[theEvent attendees] objectEnumerator]; + + j = 0; + + pool = [[NSAutoreleasePool alloc] init]; + while ((currentAttendee = [enumerator nextObject])) { + if (j%5 == 0) + { + RELEASE(pool); + pool = [[NSAutoreleasePool alloc] init]; + } + group = [SOGoGroup groupWithEmail: [currentAttendee rfc822Email] inDomain: domain]; if (group) @@ -547,11 +557,15 @@ - (BOOL) expandGroupsInEvent: (iCalEvent *) theEvent eventWasModified = YES; } } + + j++; } // while (currentAttendee ... if (eventWasModified) [theEvent setAttendees: allAttendees]; + RELEASE(pool); + return eventWasModified; } diff --git a/SoObjects/SOGo/SOGoGroup.m b/SoObjects/SOGo/SOGoGroup.m index 4a170be9b0..648b97ae4b 100644 --- a/SoObjects/SOGo/SOGoGroup.m +++ b/SoObjects/SOGo/SOGoGroup.m @@ -1,8 +1,6 @@ /* SOGoGroup.m - this file is part of SOGo * - * Copyright (C) 2009-2012 Inverse inc. - * - * Author: Ludovic Marcotte + * Copyright (C) 2009-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From b34c6324cdf6e55583114c6110f89a4d3e01bb37 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 14 Feb 2014 21:31:32 -0500 Subject: [PATCH 190/214] Fix custom mail labels in Sieve filter editor --- SoObjects/SOGo/SOGoSieveManager.m | 15 +-- .../English.lproj/Localizable.strings | 1 + UI/PreferencesUI/UIxPreferences.m | 2 +- UI/WebServerResources/UIxFilterEditor.js | 95 ++++++------------- 4 files changed, 40 insertions(+), 73 deletions(-) diff --git a/SoObjects/SOGo/SOGoSieveManager.m b/SoObjects/SOGo/SOGoSieveManager.m index 99a55bf03f..72a4cfc257 100644 --- a/SoObjects/SOGo/SOGoSieveManager.m +++ b/SoObjects/SOGo/SOGoSieveManager.m @@ -171,11 +171,6 @@ + (void) initialize @"Junk", @"junk", @"NotJunk", @"not_junk", @"\\Seen", @"seen", - @"$Label1", @"label1", - @"$Label2", @"label2", - @"$Label3", @"label3", - @"$Label4", @"label4", - @"$Label5", @"label5", nil]; [sieveFlags retain]; } @@ -453,8 +448,8 @@ - (NSArray *) _extractSieveRules: (NSArray *) rules - (NSString *) _extractSieveAction: (NSDictionary *) action { - NSString *sieveAction, *method, *requirement, *argument, - *flag, *mailbox; + NSString *sieveAction, *method, *requirement, *argument, *flag, *mailbox; + NSDictionary *mailLabels; SOGoDomainDefaults *dd; sieveAction = nil; @@ -474,6 +469,12 @@ - (NSString *) _extractSieveAction: (NSDictionary *) action if ([method isEqualToString: @"addflag"]) { flag = [sieveFlags objectForKey: argument]; + if (!flag) + { + mailLabels = [[user userDefaults] mailLabelsColors]; + if ([mailLabels objectForKey: argument]) + flag = argument; + } if (flag) sieveAction = [NSString stringWithFormat: @"%@ %@", method, [flag asSieveQuotedString]]; diff --git a/UI/PreferencesUI/English.lproj/Localizable.strings b/UI/PreferencesUI/English.lproj/Localizable.strings index 58cc3d0790..afa832c3e1 100644 --- a/UI/PreferencesUI/English.lproj/Localizable.strings +++ b/UI/PreferencesUI/English.lproj/Localizable.strings @@ -265,6 +265,7 @@ "To or Cc" = "To or Cc"; "Size (Kb)" = "Size (Kb)"; "Header" = "Header"; +"Body" = "Body"; "Flag the message with:" = "Flag the message with:"; "Discard the message" = "Discard the message"; "File the message in:" = "File the message in:"; diff --git a/UI/PreferencesUI/UIxPreferences.m b/UI/PreferencesUI/UIxPreferences.m index a4fc1baa95..45894f50bc 100644 --- a/UI/PreferencesUI/UIxPreferences.m +++ b/UI/PreferencesUI/UIxPreferences.m @@ -1247,7 +1247,7 @@ - (NSArray *) mailLabelList { NSDictionary *v; - v = [[[context activeUser] userDefaults] mailLabelsColors]; + v = [[[context activeUser] userDefaults] mailLabelsColors]; ASSIGN(mailLabels, [SOGoMailLabel labelsFromDefaults: v component: self]); } diff --git a/UI/WebServerResources/UIxFilterEditor.js b/UI/WebServerResources/UIxFilterEditor.js index a4ce4ac933..3d38c5da16 100644 --- a/UI/WebServerResources/UIxFilterEditor.js +++ b/UI/WebServerResources/UIxFilterEditor.js @@ -92,7 +92,6 @@ function setupConstants() { "junk": _("Junk"), "not_junk": _("Not Junk") }; - for (var name in mailTags) { flagLabels[name] = _( mailTags[name][0] ); } @@ -101,46 +100,33 @@ function setupConstants() { function setupEventHandlers() { var filterName = $($("mainForm").filterName); if (filterName) { - var boundCB = onFilterNameChange - .bindAsEventListener(filterName); - filterName.observe("change", boundCB); + filterName.on('change', onFilterNameChange); } var matchTypeSelect = $("matchType"); if (matchTypeSelect) { - var boundCB = onMatchTypeChange - .bindAsEventListener(matchTypeSelect); - matchTypeSelect.observe("change", boundCB); + matchTypeSelect.on('change', onMatchTypeChange); } - var filterRules = $("filterRules"); - var boundCB = onFilterRulesDivClick - .bindAsEventListener(filterRules); - filterRules.observe("click", boundCB); + // Filter rules + $("filterRules").on('click', onFilterRulesDivClick); var ruleAdd = $("ruleAdd"); if (ruleAdd) { - var boundCB = onRuleAddClick.bindAsEventListener(ruleAdd); - ruleAdd.observe("click", boundCB); + ruleAdd.on('click', onRuleAddClick); } var ruleDelete = $("ruleDelete"); if (ruleDelete) { - var boundCB = onRuleDeleteClick.bindAsEventListener(ruleDelete); - ruleDelete.observe("click", boundCB); + ruleDelete.on('click', onRuleDeleteClick); } - var filterActions = $("filterActions"); - var boundCB = onFilterActionsDivClick - .bindAsEventListener(filterActions); - filterActions.observe("click", boundCB); + // Filter actions + $('filterActions').on('click', onFilterActionsDivClick); var actionAdd = $("actionAdd"); if (actionAdd) { - var boundCB = onActionAddClick.bindAsEventListener(actionAdd); - actionAdd.observe("click", boundCB); + actionAdd.on('click', onActionAddClick); } var actionDelete = $("actionDelete"); if (actionDelete) { - var boundCB = onActionDeleteClick - .bindAsEventListener(actionDelete); - actionDelete.observe("click", boundCB); + actionDelete.on('click', onActionDeleteClick); } } @@ -228,8 +214,7 @@ function appendRule(container, rule) { var ruleDiv = createElement("div", null, "rule", { rule: rule }, null, container); - var boundCB = onRuleDivClick.bindAsEventListener(ruleDiv); - ruleDiv.observe("click", boundCB); + ruleDiv.on('click', onRuleDivClick); ensureRuleRepresentation(ruleDiv); return ruleDiv; @@ -284,14 +269,12 @@ function ensureFieldSelectRepresentation(container, fieldSpan) { else { select = createElement("select"); select.rule = container.rule; - var boundCB = onFieldSelectChange.bindAsEventListener(select); - select.observe("change", boundCB); + select.on('change', onFieldSelectChange); for (var i = 0; i < fields.length; i++) { var field = fields[i]; var fieldOption = createElement("option", null, null, { value: field }, null, select); - fieldOption.appendChild(document - .createTextNode(fieldLabels[field])); + fieldOption.appendChild(document.createTextNode(fieldLabels[field])); } fieldSpan.appendChild(select); } @@ -322,9 +305,7 @@ function ensureFieldCustomHeaderRepresentation(container, fieldSpan) { if (!container.rule.custom_header) container.rule.custom_header = ""; headerInput.value = container.rule.custom_header; - var boundCB - = onFieldCustomHeaderChange.bindAsEventListener(headerInput); - headerInput.observe("change", boundCB); + headerInput.on('change', onFieldCustomHeaderChange); headerInput.focus(); } } else { @@ -369,8 +350,7 @@ function ensureOperatorSelectRepresentation(container, operatorSpan) { select = createElement("select"); select.rule = container.rule; select.sizeOperator = (ruleField == "size"); - var boundCB = onOperatorSelectChange.bindAsEventListener(select); - select.observe("change", boundCB); + select.on('change', onOperatorSelectChange); for (var i = 0; i < operators.length; i++) { var operator = operators[i]; var operatorOption = createElement("option", null, null, @@ -438,8 +418,7 @@ function ensureValueInputRepresentation(container, valueSpan) { else { input = createElement("input", null, "textField"); input.rule = container.rule; - var boundCB = onValueInputChange.bindAsEventListener(input); - input.observe("change", boundCB); + input.on('change', onValueInputChange); valueSpan.appendChild(input); } input.value = container.rule.value; @@ -488,8 +467,7 @@ function appendAction(container, action) { var actionDiv = createElement("div", null, "action", { action: action }, null, container); - var boundCB = onActionDivClick.bindAsEventListener(actionDiv); - actionDiv.observe("click", boundCB); + actionDiv.on('click', onActionDivClick); ensureActionRepresentation(actionDiv); return actionDiv; @@ -557,14 +535,12 @@ function ensureMethodSelectRepresentation(container, methodSpan) { else { select = createElement("select"); select.action = container.action; - var boundCB = onMethodSelectChange.bindAsEventListener(select); - select.observe("change", boundCB); + select.on('change', onMethodSelectChange); for (var i = 0; i < methods.length; i++) { var method = methods[i]; var methodOption = createElement("option", null, null, { value: method }, null, select); - methodOption.appendChild(document - .createTextNode(methodLabels[method])); + methodOption.appendChild(document.createTextNode(methodLabels[method])); } methodSpan.appendChild(select); } @@ -612,12 +588,6 @@ function ensureArgumentRepresentation(container) { } function ensureFlagArgRepresentation(container, argumentSpan) { - var flags = [ "seen", "deleted", "answered", "flagged", "junk", - "not_junk" ]; - for (var i = 1; i < 6; i++) { - flags.push("label" + i); - } - var selects = argumentSpan.select("SELECT"); var select; if (selects.length) @@ -625,14 +595,14 @@ function ensureFlagArgRepresentation(container, argumentSpan) { else { select = createElement("select"); select.action = container.action; - var boundCB = onFlagArgumentSelectChange.bindAsEventListener(select); - select.observe("change", boundCB); - for (var i = 0; i < flags.length; i++) { - var flag = flags[i]; - var flagOption = createElement("option", null, null, - { value: flag }, null, select); - var label = flagLabels[flag]; - flagOption.appendChild(document.createTextNode(label)); + select.on('change', onFlagArgumentSelectChange); + for (var flag in flagLabels) { + if (typeof flag != 'undefined') { + var flagOption = createElement("option", null, null, + { value: flag }, null, select); + var label = flagLabels[flag]; + flagOption.appendChild(document.createTextNode(label)); + } } argumentSpan.appendChild(select); } @@ -659,8 +629,7 @@ function ensureMailboxArgRepresentation(container, argumentSpan) { select.action = container.action; if (!container.action.argument) container.action.argument = "INBOX"; - var boundCB = onMailboxArgumentSelectChange.bindAsEventListener(select); - select.observe("change", boundCB); + select.on('change', onMailboxArgumentSelectChange); var mailboxes = (window.opener ? window.opener.userMailboxes : {'displayName': 'INBOX', 'path': 'INBOX' }); @@ -692,9 +661,7 @@ function ensureRedirectArgRepresentation(container, argumentSpan) { emailInput.action = container.action; if (!container.action.argument) container.action.argument = ""; - var boundCB - = onEmailArgumentChange.bindAsEventListener(emailInput); - emailInput.observe("change", boundCB); + emailInput.on('change', onEmailArgumentChange); emailInput.focus(); } emailInput.value = container.action.argument; @@ -716,9 +683,7 @@ function ensureRejectArgRepresentation(container, argumentSpan) { argumentSpan); if (!container.action.argument) container.action.argument = ""; - var boundCB - = onMsgArgumentChange.bindAsEventListener(msgArea); - msgArea.observe("change", boundCB); + msgArea.on('change', onMsgArgumentChange); msgArea.focus(); } msgArea.value = container.action.argument; From 1ff91f7b592a1aaa8960d8878ff2389b1f61f174 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 08:38:34 -0500 Subject: [PATCH 191/214] Added -activeSyncRepresentation to NSData objects --- ActiveSync/NSData+ActiveSync.h | 3 +++ ActiveSync/NSData+ActiveSync.m | 10 ++++++++++ 2 files changed, 13 insertions(+) diff --git a/ActiveSync/NSData+ActiveSync.h b/ActiveSync/NSData+ActiveSync.h index 7604d545ee..fe7cd2f323 100644 --- a/ActiveSync/NSData+ActiveSync.h +++ b/ActiveSync/NSData+ActiveSync.h @@ -32,8 +32,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import +@class NSString; + @interface NSData (ActiveSync) +- (NSString *) activeSyncRepresentation; - (NSData *) wbxml2xml; - (NSData *) xml2wbxml; diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index 54c9e1e8ab..cf0a2fe40c 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -32,6 +32,8 @@ #import #import +#import + #include #include #include @@ -49,6 +51,14 @@ - (void) _dumpToFile NSLog(@"Original data written to: %@", path); } +// +// Encodes the data in base64 and strip newline characters +// +- (NSString *) activeSyncRepresentation +{ + return [[self stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]; +} + - (NSData *) wbxml2xml { WBXMLGenXMLParams params; From c686e3294d010b3f8af8ae4cb1b88d8970e4ff7f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 08:39:48 -0500 Subject: [PATCH 192/214] Added method to sanitize calendar "ServerId" --- ActiveSync/NSString+ActiveSync.h | 1 + ActiveSync/NSString+ActiveSync.m | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/ActiveSync/NSString+ActiveSync.h b/ActiveSync/NSString+ActiveSync.h index 735c6ffbc8..71e3969fc3 100644 --- a/ActiveSync/NSString+ActiveSync.h +++ b/ActiveSync/NSString+ActiveSync.h @@ -39,6 +39,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @interface NSString (ActiveSync) +- (NSString *) sanitizedServerIdWithType: (SOGoMicrosoftActiveSyncFolderType) folderType; - (NSString *) activeSyncRepresentation; - (int) activeSyncFolderType; - (NSString *) realCollectionIdWithFolderType: (SOGoMicrosoftActiveSyncFolderType *) folderType; diff --git a/ActiveSync/NSString+ActiveSync.m b/ActiveSync/NSString+ActiveSync.m index 27580b7972..ebacc21002 100644 --- a/ActiveSync/NSString+ActiveSync.m +++ b/ActiveSync/NSString+ActiveSync.m @@ -40,6 +40,23 @@ @implementation NSString (ActiveSync) +- (NSString *) sanitizedServerIdWithType: (SOGoMicrosoftActiveSyncFolderType) folderType +{ + if (folderType == ActiveSyncEventFolder) + { + int len; + + len = [self length]; + + if (len > 4 && [self hasSuffix: @".ics"]) + return [self substringToIndex: len-4]; + else + return [NSString stringWithFormat: @"%@.ics", self]; + } + + return self; +} + - (NSString *) activeSyncRepresentation { NSString *s; From 23565627784460fddbfad09b4173dd1f38a894a9 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 08:41:12 -0500 Subject: [PATCH 193/214] Added method to get synctag starting from an other one. We also no longer fetch vanished items of modseq == 0 --- SoObjects/Mailer/SOGoMailFolder.h | 1 + SoObjects/Mailer/SOGoMailFolder.m | 40 +- SoObjects/Mailer/SOGoMailFolder.m.orig | 1936 ++++++++++++++++++++++++ 3 files changed, 1971 insertions(+), 6 deletions(-) create mode 100644 SoObjects/Mailer/SOGoMailFolder.m.orig diff --git a/SoObjects/Mailer/SOGoMailFolder.h b/SoObjects/Mailer/SOGoMailFolder.h index cff0c1b9bb..eac1aec506 100644 --- a/SoObjects/Mailer/SOGoMailFolder.h +++ b/SoObjects/Mailer/SOGoMailFolder.h @@ -94,6 +94,7 @@ - (NSCalendarDate *) mostRecentMessageDate; +- (NSString *) davCollectionTagFromId: (NSString *) theId; - (NSString *) davCollectionTag; - (NSArray *) syncTokenFieldsWithProperties: (NSDictionary *) properties diff --git a/SoObjects/Mailer/SOGoMailFolder.m b/SoObjects/Mailer/SOGoMailFolder.m index 904ac770b7..d83a30917e 100644 --- a/SoObjects/Mailer/SOGoMailFolder.m +++ b/SoObjects/Mailer/SOGoMailFolder.m @@ -1925,6 +1925,27 @@ - (NSCalendarDate *) mostRecentMessageDate return date; } +- (NSString *) davCollectionTagFromId: (NSString *) theId +{ + NSString *tag; + + tag = @"-1"; + + if ([self imap4Connection]) + { + NSDictionary *result; + unsigned int modseq, uid; + + uid = [theId intValue]; + result = [[imap4 client] fetchModseqForUid: uid]; + modseq = [[[[result objectForKey: @"RawResponse"] objectForKey: @"fetch"] objectForKey: @"modseq"] intValue]; + + tag = [NSString stringWithFormat: @"%d-%d", uid, modseq-1]; + } + + return tag; +} + - (NSString *) davCollectionTag { NSString *tag; @@ -1976,10 +1997,14 @@ - (EOQualifier *) _nonDeletedQualifier // // Check updated items // -// // // . uid fetch 1:* (FLAGS) (changedsince 171) // +// To get the modseq of a specific message: +// +// . uid fetch 124569:124569 uid (changedsince 1) +// +// // Deleted: "UID FETCH 1:* (UID) (CHANGEDSINCE 171 VANISHED)" // fetchUIDsOfVanishedItems .. @@ -2073,12 +2098,15 @@ - (NSArray *) syncTokenFieldsWithProperties: (NSArray *) theProperties // We fetch deleted ones - uids = [self fetchUIDsOfVanishedItems: highestmodseq]; - - for (i = 0; i < [uids count]; i++) + if (highestmodseq > 0) { - d = [NSDictionary dictionaryWithObject: @"deleted" forKey: [uids objectAtIndex: i]]; - [allTokens addObject: d]; + uids = [self fetchUIDsOfVanishedItems: highestmodseq]; + + for (i = 0; i < [uids count]; i++) + { + d = [NSDictionary dictionaryWithObject: @"deleted" forKey: [uids objectAtIndex: i]]; + [allTokens addObject: d]; + } } return allTokens; diff --git a/SoObjects/Mailer/SOGoMailFolder.m.orig b/SoObjects/Mailer/SOGoMailFolder.m.orig new file mode 100644 index 0000000000..925ec4adeb --- /dev/null +++ b/SoObjects/Mailer/SOGoMailFolder.m.orig @@ -0,0 +1,1936 @@ +/* + Copyright (C) 2009-2014 Inverse inc. + Copyright (C) 2004-2005 SKYRIX Software AG + + This file is part of SOGo. + + SOGo is free software; you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY + WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with OGo; see the file COPYING. If not, write to the + Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA + 02111-1307, USA. +*/ + +#import +#import +#import +#import +#import + +#import +#import +#import +#import +#import +#import +#import +#import + +#import +#import +#import + +#import + +#import +#import + +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import +#import + +#import "EOQualifier+MailDAV.h" +#import "SOGoMailObject.h" +#import "SOGoMailAccount.h" +#import "SOGoMailManager.h" +#import "SOGoMailFolder.h" +#import "SOGoTrashFolder.h" + +#define XMLNS_INVERSEDAV @"urn:inverse:params:xml:ns:inverse-dav" + +static NSString *defaultUserID = @"anyone"; + +@interface NGImap4Connection (PrivateMethods) + +- (NSString *) imap4FolderNameForURL: (NSURL *) url; + +@end + +@implementation SOGoMailFolder + +- (BOOL) _path: (NSString *) path + isInNamespaces: (NSArray *) namespaces +{ + int count, max; + BOOL rc; + + rc = NO; + + max = [namespaces count]; + for (count = 0; !rc && count < max; count++) + rc = [path hasPrefix: [namespaces objectAtIndex: count]]; + + return rc; +} + +- (void) _adjustOwner +{ + SOGoMailAccount *mailAccount; + NSString *path; + NSArray *names; + + mailAccount = [self mailAccountFolder]; + path = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; + + if ([self _path: path + isInNamespaces: [mailAccount sharedFolderNamespaces]]) + [self setOwner: @"nobody"]; + else if ([self _path: path + isInNamespaces: [mailAccount otherUsersFolderNamespaces]]) + { + names = [path componentsSeparatedByString: @"/"]; + if ([names count] > 1) + [self setOwner: [names objectAtIndex: 1]]; + else + [self setOwner: @"nobody"]; + } +} + +- (id) initWithName: (NSString *) newName + inContainer: (id) newContainer +{ + if ((self = [super initWithName: newName + inContainer: newContainer])) + { + [self _adjustOwner]; + mailboxACL = nil; + prefetchedInfos = nil; + } + + return self; +} + +- (void) dealloc +{ + [filenames release]; + [folderType release]; + [mailboxACL release]; + [prefetchedInfos release]; + [super dealloc]; +} + +/* IMAP4 */ + +- (NSString *) relativeImap4Name +{ + return [[nameInContainer substringFromIndex: 6] fromCSSIdentifier]; +} + +- (NSString *) absoluteImap4Name +{ + NSString *name; + + name = [[self imap4URL] path]; + if (![name hasSuffix: @"/"]) + name = [name stringByAppendingString: @"/"]; + + return name; +} + +- (NSMutableString *) imap4URLString +{ + NSMutableString *urlString; + + urlString = [super imap4URLString]; + [urlString appendString: @"/"]; + + return urlString; +} + +/* listing the available folders */ + +- (NSArray *) toManyRelationshipKeys +{ + NSArray *subfolders; + + subfolders = [[self subfolders] stringsWithFormat: @"folder%@"]; + + return [subfolders resultsOfSelector: @selector (asCSSIdentifier)]; +} + +- (NSArray *) subfolders +{ + return [[self imap4Connection] subfoldersForURL: [self imap4URL]]; +} + +- (BOOL) isSpecialFolder +{ + return NO; +} + +- (NSArray *) allFolderPaths +{ + NSMutableArray *deepSubfolders; + NSEnumerator *folderNames; + NSArray *result; + NSString *currentFolderName, *prefix; + + deepSubfolders = [NSMutableArray array]; + + prefix = [self absoluteImap4Name]; + + result = [[self mailAccountFolder] allFolderPaths]; + folderNames = [result objectEnumerator]; + while ((currentFolderName = [folderNames nextObject])) + if ([currentFolderName hasPrefix: prefix]) + [deepSubfolders addObject: currentFolderName]; + [deepSubfolders sortUsingSelector: @selector (compare:)]; + + return deepSubfolders; +} + +- (NSArray *) allFolderURLs +{ + NSURL *selfURL, *currentURL; + NSMutableArray *subfoldersURL; + NSEnumerator *subfolders; + NSString *currentFolder; + + subfoldersURL = [NSMutableArray array]; + selfURL = [self imap4URL]; + subfolders = [[self allFolderPaths] objectEnumerator]; + currentFolder = [subfolders nextObject]; + while (currentFolder) + { + currentURL = [[NSURL alloc] + initWithScheme: [selfURL scheme] + host: [selfURL host] + path: currentFolder]; + [currentURL autorelease]; + [subfoldersURL addObject: currentURL]; + currentFolder = [subfolders nextObject]; + } + + return subfoldersURL; +} + +- (NSString *) davContentType +{ + return @"httpd/unix-directory"; +} + +- (NSArray *) toOneRelationshipKeys +{ + NSArray *uids; + unsigned int count, max; + NSString *filename; + + if (!filenames) + { + filenames = [NSMutableArray new]; + if ([self exists]) + { + uids = [self fetchUIDsMatchingQualifier: nil sortOrdering: @"DATE"]; + if (![uids isKindOfClass: [NSException class]]) + { + max = [uids count]; + for (count = 0; count < max; count++) + { + filename = [NSString stringWithFormat: @"%@.eml", + [uids objectAtIndex: count]]; + [filenames addObject: filename]; + } + } + } + } + + return filenames; +} + +- (NSException *) renameTo: (NSString *) newName +{ + NSException *error; + SOGoMailFolder *inbox; + NSURL *destURL; + NSString *path; + NGImap4Client *client; + + if ([newName length] > 0) + { + [self imap4URL]; + + if ([self imap4Connection]) + { + client = [imap4 client]; + + inbox = [[self mailAccountFolder] inboxFolderInContext: context]; + [client select: [inbox absoluteImap4Name]]; + + path = [[imap4URL path] stringByDeletingLastPathComponent]; + if (![path hasSuffix: @"/"]) + path = [path stringByAppendingString: @"/"]; + destURL = [[NSURL alloc] initWithScheme: [imap4URL scheme] + host: [imap4URL host] + path: [NSString stringWithFormat: @"%@%@", + path, newName]]; + [destURL autorelease]; + error = [imap4 moveMailboxAtURL: imap4URL + toURL: destURL]; + if (!error) + { + ASSIGN (imap4URL, nil); + ASSIGN (nameInContainer, + ([NSString stringWithFormat: @"folder%@", [newName asCSSIdentifier]])); + + // We unsubscribe to the old one, and subscribe back to the new one + [client subscribe: [destURL path]]; + [client unsubscribe: [imap4URL path]]; + } + } + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + } + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"given name is empty" + userInfo: nil]; + + return error; +} + +/* messages */ +- (void) prefetchCoreInfosForMessageKeys: (NSArray *) keys +{ + NSUInteger count, max, keyLength; + NSMutableArray *uids; + NSDictionary *infos; + NSArray *allValues; + NSString *key; + + if (!SOGoMailCoreInfoKeys) + { + /* ensure SOGoMailCoreInfoKeys is initialized */ + [SOGoMailObject class]; + } + + [prefetchedInfos release]; + + max = [keys count]; + if (max > 0) + { + uids = [NSMutableArray arrayWithCapacity: max]; + for (count = 0; count < max; count++) + { + key = [keys objectAtIndex: count]; + if ([key hasSuffix: @".eml"]) + { + keyLength = [key length]; + [uids addObject: [key substringToIndex: keyLength - 4]]; + } + else + [uids addObject: key]; + } + infos = (NSDictionary *) [self fetchUIDs: uids parts: SOGoMailCoreInfoKeys]; + + prefetchedInfos = [[NSMutableDictionary alloc] initWithCapacity: max]; + + // We MUST NOT use setObjects:forKeys here as the fetch's array does NOT + // necessarily have the same order! + allValues = [infos objectForKey: @"fetch"]; + max = [allValues count]; + + for (count = 0; count < max ; count++) + { + infos = [allValues objectAtIndex: count]; + key = [NSString stringWithFormat: @"%@", [infos objectForKey: @"uid"]]; + [prefetchedInfos setObject: infos forKey: key]; + } + } + else + prefetchedInfos = nil; +} + +- (NSException *) deleteUIDs: (NSArray *) uids + useTrashFolder: (BOOL *) withTrash + inContext: (id) localContext +{ + SOGoMailFolder *trashFolder; + NGImap4Client *client; + NSString *folderName; + NSException *error; + NSString *result; + BOOL b; + + client = nil; + trashFolder = nil; + b = YES; + if (*withTrash) + { + trashFolder = [[self mailAccountFolder] trashFolderInContext: localContext]; + b = NO; + if ([trashFolder isNotNull]) + { + if ([trashFolder isKindOfClass: [NSException class]]) + error = (NSException *) trashFolder; + else + { + if ([self imap4Connection]) + { + error = nil; + client = [imap4 client]; + [imap4 selectFolder: [self imap4URL]]; + folderName = [imap4 imap4FolderNameForURL: [trashFolder imap4URL]]; + b = YES; + + // If we are deleting messages within the Trash folder itself, we + // do not, of course, try to move messages to the Trash folder. + if ([folderName isEqualToString: [imap4 imap4FolderNameForURL: [self imap4URL]]]) + { + *withTrash = NO; + } + else + { + // If our Trash folder doesn't exist when we try to copy messages + // to it, we create it. + b = [self ensureTrashFolder]; + + if (b) + { + result = [[client copyUids: uids toFolder: folderName] + objectForKey: @"result"]; + + b = [result boolValue]; + } + } + } + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + } + } + else + error = [NSException exceptionWithHTTPStatus: 500 + reason: @"Did not find Trash folder!"]; + } + + if (b) + { + if (client == nil) + { + client = [[self imap4Connection] client]; + [imap4 selectFolder: [self imap4URL]]; + } + result = [[client storeFlags: [NSArray arrayWithObject: @"Deleted"] + forUIDs: uids addOrRemove: YES] + objectForKey: @"result"]; + if ([result boolValue]) + { + if (*withTrash) + { + [self markForExpunge]; + if (trashFolder) + [trashFolder flushMailCaches]; + error = nil; + } + else + { + // When not using a trash folder, expunge the current folder + // immediately + error = [self expunge]; + } + } + else + error + = [NSException exceptionWithHTTPStatus:500 + reason: @"Could not mark UIDs as Deleted"]; + } + else + error = [NSException exceptionWithHTTPStatus:500 + reason: @"Could not copy UIDs"]; + + return error; +} + +- (WOResponse *) archiveUIDs: (NSArray *) uids + inArchiveNamed: (NSString *) archiveName + inContext: (id) localContext +{ + NSException *error; + NSFileManager *fm; + NSString *spoolPath, *fileName, *baseName, *extension, *zipPath, *qpFileName; + NSDictionary *msgs; + NSArray *messages; + NSData *content, *zipContent; + NSTask *zipTask; + NSMutableArray *zipTaskArguments; + WOResponse *response; + int i; + + if (!archiveName) + archiveName = @"SavedMessages.zip"; + +#warning this method should be rewritten according to our coding styles + spoolPath = [self userSpoolFolderPath]; + if (![self ensureSpoolFolderPath]) { + [self errorWithFormat: @"spool directory '%@' doesn't exist", spoolPath]; + error = [NSException exceptionWithHTTPStatus: 500 + reason: @"spool directory does not exist"]; + return (WOResponse *)error; + } + + zipPath = [[SOGoSystemDefaults sharedSystemDefaults] zipPath]; + fm = [NSFileManager defaultManager]; + if (![fm fileExistsAtPath: zipPath]) { + error = [NSException exceptionWithHTTPStatus: 500 + reason: @"zip not available"]; + return (WOResponse *)error; + } + + zipTask = [[NSTask alloc] init]; + [zipTask setCurrentDirectoryPath: spoolPath]; + [zipTask setLaunchPath: zipPath]; + + zipTaskArguments = [NSMutableArray arrayWithObjects: nil]; + [zipTaskArguments addObject: @"SavedMessages.zip"]; + + msgs = (NSDictionary *)[self fetchUIDs: uids + parts: [NSArray arrayWithObject: @"RFC822"]]; + messages = [msgs objectForKey: @"fetch"]; + + for (i = 0; i < [messages count]; i++) { + content = [[messages objectAtIndex: i] objectForKey: @"message"]; + fileName = [NSString stringWithFormat:@"%@/%@.eml", spoolPath, [uids objectAtIndex: i]];; + [content writeToFile: fileName atomically: YES]; + + [zipTaskArguments addObject: + [NSString stringWithFormat:@"%@.eml", [uids objectAtIndex: i]]]; + } + + [zipTask setArguments: zipTaskArguments]; + [zipTask launch]; + [zipTask waitUntilExit]; + + [zipTask release]; + + zipContent = [[NSData alloc] initWithContentsOfFile: + [NSString stringWithFormat: @"%@/SavedMessages.zip", spoolPath]]; + + for(i = 0; i < [zipTaskArguments count]; i++) { + fileName = [zipTaskArguments objectAtIndex: i]; + [fm removeFileAtPath: + [NSString stringWithFormat: @"%@/%@", spoolPath, fileName] handler: nil]; + } + + response = [context response]; + + baseName = [archiveName stringByDeletingPathExtension]; + extension = [archiveName pathExtension]; + if ([extension length] > 0) + extension = [@"." stringByAppendingString: extension]; + else + extension = @""; + + qpFileName = [NSString stringWithFormat: @"%@%@", + [baseName asQPSubjectString: @"utf-8"], + extension]; + [response setHeader: [NSString stringWithFormat: @"application/zip;" + @" name=\"%@\"", + qpFileName] + forKey:@"content-type"]; + [response setHeader: [NSString stringWithFormat: @"attachment; filename=\"%@\"", + qpFileName] + forKey: @"Content-Disposition"]; + [response setContent: zipContent]; + + [zipContent release]; + + return response; +} + +- (WOResponse *) archiveAllMessagesInContext: (id) localContext +{ + WOResponse *response; + NSArray *uids; + NSString *archiveName; + EOQualifier *notDeleted; + + if ([self exists]) + { + notDeleted = [EOQualifier qualifierWithQualifierFormat: + @"(not (flags = %@))", @"deleted"]; + uids = [self fetchUIDsMatchingQualifier: notDeleted + sortOrdering: @"ARRIVAL"]; + archiveName = [NSString stringWithFormat: @"%@.zip", [self relativeImap4Name]]; + response = [self archiveUIDs: uids inArchiveNamed: archiveName + inContext: localContext]; + } + else + response = (WOResponse *) + [NSException exceptionWithHTTPStatus: 404 + reason: @"Folder does not exist."]; + + return response; +} + +- (WOResponse *) copyUIDs: (NSArray *) uids + toFolder: (NSString *) destinationFolder + inContext: (id) localContext +{ + NSArray *folders; + NSString *currentFolderName, *currentAccountName; + NSMutableString *imapDestinationFolder; + NGImap4Client *client; + id result; + int count, max; + +#warning this code will fail on implementation using something else than '/' as delimiter + imapDestinationFolder = [NSMutableString string]; + folders = [[destinationFolder componentsSeparatedByString: @"/"] + resultsOfSelector: @selector (fromCSSIdentifier)]; + max = [folders count]; + if (max > 1) + { + currentAccountName = [[self mailAccountFolder] nameInContainer]; + client = [[self imap4Connection] client]; + [imap4 selectFolder: [self imap4URL]]; + + for (count = 2; count < max; count++) + { + currentFolderName = [[folders objectAtIndex: count] substringFromIndex: 6]; + [imapDestinationFolder appendFormat: @"/%@", currentFolderName]; + } + + if (client) + { + if ([[folders objectAtIndex: 1] isEqualToString: currentAccountName]) + { + // We make sure the destination IMAP folder exist, if not, we create it. + result = [[client status: imapDestinationFolder + flags: [NSArray arrayWithObject: @"UIDVALIDITY"]] + objectForKey: @"result"]; + if (![result boolValue]) + result = [[self imap4Connection] createMailbox: imapDestinationFolder + atURL: [[self mailAccountFolder] imap4URL]]; + if (!result || [result boolValue]) + result = [client copyUids: uids toFolder: imapDestinationFolder]; + + if ([[result valueForKey: @"result"] boolValue]) + result = nil; + else + result = [NSException exceptionWithHTTPStatus: 500 + reason: [[[result objectForKey: @"RawResponse"] + objectForKey: @"ResponseResult"] + objectForKey: @"description"]]; + } + else + { + // Destination folder is in a different account + SOGoMailAccounts *accounts; + SOGoMailAccount *account; + accounts = [[self container] container]; + account = [accounts lookupName: [folders objectAtIndex: 1] inContext: localContext acquire: NO]; + if ([account isKindOfClass: [NSException class]]) + { + result = [NSException exceptionWithHTTPStatus: 500 + reason: @"Cannot copy messages to other account."]; + } + else + { + NSEnumerator *messages; + NSDictionary *message; + NSData *content; + NSArray *flags; + + // Fetch messages + result = [client fetchUids: uids parts: [NSArray arrayWithObjects: @"RFC822", @"FLAGS", nil]]; + if ([[result objectForKey: @"result"] boolValue]) + { + result = [result valueForKey: @"fetch"]; + if ([result isKindOfClass: [NSArray class]] && [result count] > 0) + { + // Copy each message to the other account + client = [[account imap4Connection] client]; + [[account imap4Connection] selectFolder: imapDestinationFolder]; + messages = [result objectEnumerator]; + result = nil; + while (result == nil && (message = [messages nextObject])) + { + if ((content = [message valueForKey: @"message"]) != nil) + { + flags = [message valueForKey: @"flags"]; + result = [client append: content toFolder: imapDestinationFolder withFlags: flags]; + if ([[result objectForKey: @"result"] boolValue]) + result = nil; + else + [self logWithFormat: @"ERROR: Can't append message: %@", result]; + } + } + } + else + { + [self logWithFormat: @"ERROR: unexpected IMAP4 result (missing 'fetch'): %@", result]; + result = [NSException exceptionWithHTTPStatus: 500 + reason: @"Unexpected IMAP4 result"]; + } + } + else + { + [self logWithFormat: @"ERROR: Can't fetch messages: %@", result]; + result = [NSException exceptionWithHTTPStatus: 500 + reason: @"Can't fetch messages"]; + } + } + } + } + else + result = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + } + else + result = [NSException exceptionWithHTTPStatus: 500 + reason: @"Invalid destination."]; + + return result; +} + +- (WOResponse *) moveUIDs: (NSArray *) uids + toFolder: (NSString *) destinationFolder + inContext: (id) localContext +{ + id result; + NGImap4Client *client; + + client = [[self imap4Connection] client]; + if (client) + { + result = [self copyUIDs: uids toFolder: destinationFolder inContext: localContext]; + if (![result isNotNull]) + { + result = [client storeFlags: [NSArray arrayWithObject: @"Deleted"] + forUIDs: uids addOrRemove: YES]; + if ([[result valueForKey: @"result"] boolValue]) + { + [self markForExpunge]; + result = nil; + } + } + } + else + result = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + + return result; +} + +- (NSDictionary *) statusForFlags: (NSArray *) flags +{ + NGImap4Client *client; + NSString *folderName; + NSDictionary *result, *status; + + client = [[self imap4Connection] client]; + folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; + result = [client status: folderName flags: flags]; + if ([[result objectForKey: @"result"] boolValue]) + status = [[[result objectForKey: @"RawResponse"] objectForKey: @"status"] + objectForKey: @"flags"]; + else + status = nil; + + return status; +} + +- (NSArray *) fetchUIDsMatchingQualifier: (id) _q + sortOrdering: (id) _so +{ + return [self fetchUIDsMatchingQualifier: _q + sortOrdering: _so + threaded: NO]; +} + +- (NSArray *) fetchUIDsMatchingQualifier: (id) _q + sortOrdering: (id) _so + threaded: (BOOL) _threaded +{ + if (_threaded) + { + return [[self imap4Connection] fetchThreadedUIDsInURL: [self imap4URL] + qualifier: _q + sortOrdering: _so]; + } + else + { + return [[self imap4Connection] fetchUIDsInURL: [self imap4URL] + qualifier: _q + sortOrdering: _so]; + } +} + +- (NSArray *) fetchUIDs: (NSArray *) _uids + parts: (NSArray *) _parts +{ + return [[self imap4Connection] fetchUIDs: _uids inURL: [self imap4URL] + parts: _parts]; +} + +- (NSArray *) fetchUIDsOfVanishedItems: (uint64_t) modseq +{ + NGImap4Client *client; + NSDictionary *result; + + client = [[self imap4Connection] client]; + result = [client fetchVanished: modseq]; + + return [result objectForKey: @"vanished"]; +} + +- (NSException *) postData: (NSData *) _data + flags: (id) _flags +{ + // We check for the existence of the IMAP folder (likely to be the + // Sent mailbox) prior to appending messages to it. + if ([self exists] + || ![[self imap4Connection] createMailbox: [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]] + atURL: [[self mailAccountFolder] imap4URL]]) + return [[self imap4Connection] postData: _data flags: _flags + toFolderURL: [self imap4URL]]; + + return [NSException exceptionWithHTTPStatus: 502 /* Bad Gateway */ + reason: [NSString stringWithFormat: @"%@ is not an IMAP4 folder", [self relativeImap4Name]]]; +} + +- (NSException *) expunge +{ + NSException *error; + + if ([self imap4Connection]) + error = [imap4 expungeAtURL: [self imap4URL]]; + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + return error; +} + +- (void) markForExpunge +{ + SOGoUserSettings *us; + NSMutableDictionary *mailSettings; + NSString *urlString; + + us = [[context activeUser] userSettings]; + mailSettings = [us objectForKey: @"Mail"]; + if (!mailSettings) + { + mailSettings = [NSMutableDictionary dictionaryWithCapacity: 1]; + [us setObject: mailSettings forKey: @"Mail"]; + } + + urlString = [self imap4URLString]; + if (![[mailSettings objectForKey: @"folderForExpunge"] + isEqualToString: urlString]) + { + [mailSettings setObject: [self imap4URLString] + forKey: @"folderForExpunge"]; + [us synchronize]; + } +} + +- (void) expungeLastMarkedFolder +{ + SOGoUserSettings *us; + NSMutableDictionary *mailSettings; + NSString *expungeURL; + NSURL *folderURL; + + us = [[context activeUser] userSettings]; + mailSettings = [us objectForKey: @"Mail"]; + if (mailSettings) + { + expungeURL = [mailSettings objectForKey: @"folderForExpunge"]; + if (expungeURL + && ![expungeURL isEqualToString: [self imap4URLString]]) + { + folderURL = [NSURL URLWithString: expungeURL]; + if (![[self imap4Connection] expungeAtURL: folderURL]) + { + [mailSettings removeObjectForKey: @"folderForExpunge"]; + [us synchronize]; + } + } + } +} + +/* flags */ + +- (NSException *) addFlagsToAllMessages: (id) _f +{ + NSException *error; + + if ([self imap4Connection]) + error = [imap4 addFlags:_f + toAllMessagesInURL: [self imap4URL]]; + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + + return error; +} + +/* name lookup */ + +- (id) lookupName: (NSString *) _key + inContext: (id)_ctx + acquire: (BOOL) _acquire +{ + NSString *folderName, *fullFolderName, *className; + SOGoMailAccount *mailAccount; + id obj; + + obj = [super lookupName: _key inContext: _ctx acquire: NO]; + if (!obj) + { + if ([_key hasPrefix: @"folder"]) + { + mailAccount = [self mailAccountFolder]; + folderName = [[_key substringFromIndex: 6] fromCSSIdentifier]; + fullFolderName = [NSString stringWithFormat: @"%@/%@", + [self traversalFromMailAccount], folderName]; + if ([fullFolderName + isEqualToString: + [mailAccount draftsFolderNameInContext: _ctx]]) + className = @"SOGoDraftsFolder"; + else if ([fullFolderName + isEqualToString: + [mailAccount sentFolderNameInContext: _ctx]]) + className = @"SOGoSentFolder"; + else if ([fullFolderName + isEqualToString: + [mailAccount trashFolderNameInContext: _ctx]]) + className = @"SOGoTrashFolder"; + /* else if ([folderName isEqualToString: + [mailAccount sieveFolderNameInContext: _ctx]]) + obj = [self lookupFiltersFolder: _key inContext: _ctx]; */ + else + className = @"SOGoMailFolder"; + + obj = [NSClassFromString (className) objectWithName: _key + inContainer: self]; + } + else if (isdigit ([_key characterAtIndex: 0]) + && [self exists]) + { + obj = [SOGoMailObject objectWithName: _key inContainer: self]; + if ([_key hasSuffix: @".eml"]) + _key = [_key substringToIndex: [_key length] - 4]; + [obj setCoreInfos: [prefetchedInfos objectForKey: _key]]; + } + } + + if (!obj && _acquire) + obj = [NSException exceptionWithHTTPStatus: 404 /* Not Found */]; + + return obj; +} + +/* WebDAV */ + +- (BOOL) davIsCollection +{ + return YES; +} + +- (NSException *) davCreateCollection: (NSString *) _name + inContext: (id) _ctx +{ + NSException *error; + + if ([self imap4Connection]) + error = [imap4 createMailbox:_name atURL:[self imap4URL]]; + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + + return error; +} + +- (BOOL) exists +{ + return [[self imap4Connection] doesMailboxExistAtURL: [self imap4URL]]; +} + +- (BOOL) create +{ + NSException *error; + BOOL rc; + + if ([self imap4Connection]) + { + error = [imap4 createMailbox: [self relativeImap4Name] + atURL: [container imap4URL]]; + if (error) + rc = NO; + else + { + [[imap4 client] subscribe: [self absoluteImap4Name]]; + rc = YES; + } + } + else + rc = NO; + + return rc; +} + +- (BOOL) ensureTrashFolder +{ + SOGoMailFolder *trashFolder; + BOOL rc; + + trashFolder = [[self mailAccountFolder] trashFolderInContext: context]; + rc = NO; + if (![trashFolder isKindOfClass: [NSException class]]) + { + rc = [trashFolder exists]; + if (!rc) + rc = [trashFolder create]; + } + if (!rc) + [self errorWithFormat: @"Cannot create Trash Mailbox"]; + return rc; +} + +- (NSException *) delete +{ + NSException *error; + + if ([self imap4Connection]) + error = [imap4 deleteMailboxAtURL: [self imap4URL]]; + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + + return error; +} + +- (NSException *) davMoveToTargetObject: (id) _target + newName: (NSString *) _name + inContext: (id)_ctx +{ + NSException *error; + NSURL *destImapURL; + + if ([_name length] == 0) { /* target already exists! */ + // TODO: check the overwrite request field (should be done by dispatcher) + return [NSException exceptionWithHTTPStatus:412 /* Precondition Failed */ + reason:@"target already exists"]; + } + if (![_target respondsToSelector:@selector(imap4URL)]) { + return [NSException exceptionWithHTTPStatus:502 /* Bad Gateway */ + reason:@"target is not an IMAP4 folder"]; + } + + /* build IMAP4 URL for target */ + + destImapURL = [_target imap4URL]; +// - destImapURL = [NSURL URLWithString:[[destImapURL path] +// - stringByAppendingPathComponent:_name] +// - relativeToURL:destImapURL]; + destImapURL = [NSURL URLWithString: _name + relativeToURL: destImapURL]; + + [self logWithFormat:@"TODO: should move collection as '%@' to: %@", + [[self imap4URL] absoluteString], + [destImapURL absoluteString]]; + + if ([self imap4Connection]) + error = [imap4 moveMailboxAtURL: [self imap4URL] + toURL: destImapURL]; + else + error = [NSException exceptionWithName: @"SOGoMailException" + reason: @"IMAP connection is invalid" + userInfo: nil]; + + return error; +} + +- (NSException *) davCopyToTargetObject: (id) _target + newName: (NSString *) _name + inContext: (id) _ctx +{ + [self logWithFormat:@"TODO: should copy collection as '%@' to: %@", + _name, _target]; + return [NSException exceptionWithHTTPStatus:501 /* Not Implemented */ + reason:@"not implemented"]; +} + +/* folder type */ +- (NSString *) folderType +{ + return @"Mail"; +} + +/* acls */ + +- (NSArray *) _imapAclsToSOGoAcls: (NSString *) imapAcls +{ + unsigned int count, max; + NSMutableArray *SOGoAcls; + + SOGoAcls = [NSMutableArray array]; + max = [imapAcls length]; + for (count = 0; count < max; count++) + { + switch ([imapAcls characterAtIndex: count]) + { + case 'l': + case 'r': + [SOGoAcls addObjectUniquely: SOGoRole_ObjectViewer]; + break; + case 's': + [SOGoAcls addObjectUniquely: SOGoMailRole_SeenKeeper]; + break; + case 'w': + [SOGoAcls addObjectUniquely: SOGoMailRole_Writer]; + break; + case 'i': + [SOGoAcls addObjectUniquely: SOGoRole_ObjectCreator]; + break; + case 'p': + [SOGoAcls addObjectUniquely: SOGoMailRole_Poster]; + break; + case 'c': + case 'k': + [SOGoAcls addObjectUniquely: SOGoRole_FolderCreator]; + break; + case 'x': + [SOGoAcls addObjectUniquely: SOGoRole_FolderEraser]; + break; + case 'd': + case 't': + [SOGoAcls addObjectUniquely: SOGoRole_ObjectEraser]; + break; + case 'e': + [SOGoAcls addObjectUniquely: SOGoMailRole_Expunger]; + break; + case 'a': + [SOGoAcls addObjectUniquely: SOGoMailRole_Administrator]; + break; + } + } + + return SOGoAcls; +} + +- (char) _rfc2086StyleRight: (NSString *) sogoRight +{ + char character; + + if ([sogoRight isEqualToString: SOGoRole_FolderCreator]) + character = 'c'; + else if ([sogoRight isEqualToString: SOGoRole_ObjectEraser]) + character = 'd'; + else + character = 0; + + return character; +} + +- (char) _rfc4314StyleRight: (NSString *) sogoRight +{ + char character; + + if ([sogoRight isEqualToString: SOGoRole_FolderCreator]) + character = 'k'; + else if ([sogoRight isEqualToString: SOGoRole_FolderEraser]) + character = 'x'; + else if ([sogoRight isEqualToString: SOGoRole_ObjectEraser]) + character = 't'; + else if ([sogoRight isEqualToString: SOGoMailRole_Expunger]) + character = 'e'; + else + character = 0; + + return character; +} + +- (NSString *) _sogoACLsToIMAPACLs: (NSArray *) sogoAcls +{ + NSMutableString *imapAcls; + NSEnumerator *acls; + NSString *currentAcl; + char character; + SOGoIMAPAclStyle aclStyle; + + imapAcls = [NSMutableString string]; + acls = [sogoAcls objectEnumerator]; + while ((currentAcl = [acls nextObject])) + { + if ([currentAcl isEqualToString: SOGoRole_ObjectViewer]) + { + [imapAcls appendFormat: @"lr"]; + character = 0; + } + else if ([currentAcl isEqualToString: SOGoMailRole_SeenKeeper]) + character = 's'; + else if ([currentAcl isEqualToString: SOGoMailRole_Writer]) + character = 'w'; + else if ([currentAcl isEqualToString: SOGoRole_ObjectCreator]) + character = 'i'; + else if ([currentAcl isEqualToString: SOGoMailRole_Poster]) + character = 'p'; + else if ([currentAcl isEqualToString: SOGoMailRole_Administrator]) + character = 'a'; + else + { + aclStyle = [[self mailAccountFolder] imapAclStyle]; + if (aclStyle == rfc2086) + character = [self _rfc2086StyleRight: currentAcl]; + else if (aclStyle == rfc4314) + character = [self _rfc4314StyleRight: currentAcl]; + else + character = 0; + } + + if (character) + [imapAcls appendFormat: @"%c", character]; + } + + return imapAcls; +} + +- (NSString *) _sogoACLUIDToIMAPUID: (NSString *) uid +{ + if ([uid hasPrefix: @"@"]) + return [[[[context activeUser] domainDefaults] imapAclGroupIdPrefix] + stringByAppendingString: [uid substringFromIndex: 1]]; + else if ([[[context activeUser] domainDefaults] forceExternalLoginWithEmail]) + { + return [[[SOGoUser userWithLogin: uid] primaryIdentity] objectForKey: @"email"]; + } + else + return uid; +} + +- (void) _removeIMAPExtUsernames +{ + NSMutableDictionary *newIMAPAcls; + NSEnumerator *usernames; + NSString *username; + + if ([mailboxACL isKindOfClass: [NSException class]]) + return; + + newIMAPAcls = [NSMutableDictionary new]; + + usernames = [[mailboxACL allKeys] objectEnumerator]; + while ((username = [usernames nextObject])) + if (!([username isEqualToString: @"administrators"] + || [username isEqualToString: @"owner"] + || [username isEqualToString: @"anonymous"] + || [username isEqualToString: @"authuser"])) + [newIMAPAcls setObject: [mailboxACL objectForKey: username] + forKey: username]; + [mailboxACL release]; + mailboxACL = newIMAPAcls; +} + +- (void) _convertIMAPGroupnames +{ + NSMutableDictionary *newIMAPAcls; + NSEnumerator *usernames; + NSString *username; + NSString *newUsername; + NSString *imapPrefix; + + if ([mailboxACL isKindOfClass: [NSException class]]) + return; + + imapPrefix = [[[context activeUser] domainDefaults] imapAclGroupIdPrefix]; + + newIMAPAcls = [[NSMutableDictionary alloc] init]; + + usernames = [[mailboxACL allKeys] objectEnumerator]; + while ((username = [usernames nextObject])) + { + if ([username hasPrefix: imapPrefix]) + newUsername = [@"@" stringByAppendingString: [username substringFromIndex: [imapPrefix length]]]; + else + newUsername = username; + [newIMAPAcls setObject: [mailboxACL objectForKey: username] + forKey: newUsername]; + } + [mailboxACL release]; + mailboxACL = newIMAPAcls; +} + +- (void) _readMailboxACL +{ + [mailboxACL release]; + + mailboxACL = [[self imap4Connection] aclForMailboxAtURL: [self imap4URL]]; + + // If the mailbox doesn't exist, we create it. That could happen if + // a special mailbox (Drafts, Sent, Trash) is deleted from SOGo's web GUI + // or if any other mailbox is deleted behind SOGo's back. + if ([mailboxACL isKindOfClass: [NSException class]]) + { + [[self imap4Connection] createMailbox: [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]] + atURL: [[self mailAccountFolder] imap4URL]]; + mailboxACL = [[self imap4Connection] aclForMailboxAtURL: [self imap4URL]]; + } + + [mailboxACL retain]; + + [self _convertIMAPGroupnames]; + if ([[self mailAccountFolder] imapAclConformsToIMAPExt]) + [self _removeIMAPExtUsernames]; +} + +- (NSArray *) subscriptionRoles +{ + return [NSArray arrayWithObjects: SOGoRole_ObjectViewer, + SOGoMailRole_SeenKeeper, SOGoMailRole_Writer, + SOGoRole_ObjectCreator, SOGoMailRole_Poster, + SOGoRole_FolderCreator, SOGoRole_FolderEraser, + SOGoRole_ObjectEraser, SOGoMailRole_Expunger, + SOGoMailRole_Administrator, nil]; +} + +- (NSArray *) aclUsers +{ + NSArray *users; + + if (!mailboxACL) + [self _readMailboxACL]; + + if ([mailboxACL isKindOfClass: [NSDictionary class]]) + users = [mailboxACL allKeys]; + else + users = nil; + + return users; +} + +- (NSMutableArray *) _sharesACLs +{ + NSMutableArray *acls; + SOGoMailAccount *mailAccount; + NSString *path; + + acls = [NSMutableArray array]; + + mailAccount = [self mailAccountFolder]; + path = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; + + if ([self _path: path + isInNamespaces: [mailAccount otherUsersFolderNamespaces]] + || [self _path: path + isInNamespaces: [mailAccount sharedFolderNamespaces]]) + [acls addObject: SOGoRole_ObjectViewer]; + else + [acls addObject: SoRole_Owner]; + + return acls; +} + +- (NSArray *) aclsForUser: (NSString *) uid +{ + NSMutableArray *acls; + NSString *userAcls, *userLogin; + + userLogin = [[context activeUser] login]; + if ([uid isEqualToString: userLogin]) + acls = [self _sharesACLs]; + else + acls = [NSMutableArray array]; + + if ([owner isEqualToString: userLogin]) + { + if (!mailboxACL) + [self _readMailboxACL]; + + if ([mailboxACL isKindOfClass: [NSDictionary class]]) + { + userAcls = [mailboxACL objectForKey: uid]; + if (!([userAcls length] || [uid isEqualToString: defaultUserID])) + userAcls = [mailboxACL objectForKey: defaultUserID]; + if ([userAcls length]) + [acls addObjectsFromArray: [self _imapAclsToSOGoAcls: userAcls]]; + } + } + + return acls; +} + +- (void) removeAclsForUsers: (NSArray *) users +{ + NSEnumerator *uids; + NSString *currentUID, *folderName; + NGImap4Client *client; + + folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; + client = [imap4 client]; + + uids = [users objectEnumerator]; + while ((currentUID = [uids nextObject])) + [client deleteACL: folderName uid: [self _sogoACLUIDToIMAPUID: currentUID]]; + [mailboxACL release]; + mailboxACL = nil; +} + +- (void) setRoles: (NSArray *) roles + forUser: (NSString *) uid +{ + NSString *acls, *folderName; + + acls = [self _sogoACLsToIMAPACLs: roles]; + folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; + [[imap4 client] setACL: folderName rights: acls uid: [self _sogoACLUIDToIMAPUID: uid]]; + + [mailboxACL release]; + mailboxACL = nil; +} + +- (NSString *) defaultUserID +{ + return defaultUserID; +} + +- (NSString *) otherUsersPathToFolder +{ + NSString *userPath, *selfPath, *otherUsers; + SOGoMailAccount *account; + NSArray *otherUsersFolderNamespaces; + +#warning this method should be checked + account = [self mailAccountFolder]; + otherUsersFolderNamespaces = [account otherUsersFolderNamespaces]; + + selfPath = [[self imap4URL] path]; + if ([self _path: selfPath isInNamespaces: otherUsersFolderNamespaces] + || [self _path: selfPath + isInNamespaces: [account sharedFolderNamespaces]]) + userPath = selfPath; + else + { + if ([otherUsersFolderNamespaces count]) + { + /* can we really have more than one "other users" namespace? */ + otherUsers = [[otherUsersFolderNamespaces objectAtIndex: 0] + stringByEscapingURL]; + userPath = [NSString stringWithFormat: @"/%@/%@%@", + otherUsers, owner, selfPath]; + } + else + userPath = nil; + } + + return userPath; +} + +- (NSString *) httpURLForAdvisoryToUser: (NSString *) uid +{ + NSString *otherUsersPath, *url; + + otherUsersPath = [self otherUsersPathToFolder]; + if (otherUsersPath) + { + url = [NSString stringWithFormat: @"%@/0%@", + [self soURLToBaseContainerForUser: uid], + otherUsersPath]; + } + else + url = nil; + + return url; +} + +- (NSString *) resourceURLForAdvisoryToUser: (NSString *) uid +{ + NSURL *selfURL, *userURL; + + selfURL = [self imap4URL]; + userURL = [[NSURL alloc] initWithScheme: [selfURL scheme] + host: [selfURL host] + path: [self otherUsersPathToFolder]]; + [userURL autorelease]; + + return [userURL absoluteString]; +} + +- (NSString *) userSpoolFolderPath +{ + NSString *login, *mailSpoolPath; + SOGoUser *currentUser; + + currentUser = [context activeUser]; + login = [currentUser login]; + mailSpoolPath = [[currentUser domainDefaults] mailSpoolPath]; + + return [NSString stringWithFormat: @"%@/%@", + mailSpoolPath, login]; +} + +- (BOOL) ensureSpoolFolderPath +{ + NSFileManager *fm; + + fm = [NSFileManager defaultManager]; + + return ([fm createDirectoriesAtPath: [self userSpoolFolderPath] + attributes: nil]); +} + +- (NSString *) displayName +{ + return [self relativeImap4Name]; +} + +- (NSDictionary *) davIMAPFieldsTable +{ + static NSMutableDictionary *davIMAPFieldsTable = nil; + + if (!davIMAPFieldsTable) + { + davIMAPFieldsTable = [NSMutableDictionary new]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (DATE)]" + forKey: @"{urn:schemas:httpmail:}date"]; + [davIMAPFieldsTable setObject: @"" + forKey: @"{urn:schemas:httpmail:}hasattachment"]; + [davIMAPFieldsTable setObject: @"" + forKey: @"{urn:schemas:httpmail:}read"]; + [davIMAPFieldsTable setObject: @"BODY" + forKey: @"{urn:schemas:httpmail:}textdescription"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (CC)]" + forKey: @"{urn:schemas:mailheader:}cc"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (DATE)]" + forKey: @"{urn:schemas:mailheader:}date"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (FROM)]" + forKey: @"{urn:schemas:mailheader:}from"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (INREPLYTO)]" + forKey: @"{urn:schemas:mailheader:}in-reply-to"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (MESSAGEID)]" + forKey: @"{urn:schemas:mailheader:}message-id"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (RECEIVED)]" + forKey: @"{urn:schemas:mailheader:}received"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (REFERENCES)]" + forKey: @"{urn:schemas:mailheader:}references"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (SUBJECT)]" + forKey: @"{DAV:}displayname"]; + [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (TO)]" + forKey: @"{urn:schemas:mailheader:}to"]; + } + + return davIMAPFieldsTable; +} + +- (BOOL) _sortElementIsAscending: (NGDOMNodeWithChildren *) sortElement +{ + NSString *davReverseAttr; + BOOL orderIsAscending; + + orderIsAscending = YES; + + davReverseAttr = [sortElement attribute: @"order"]; + if ([davReverseAttr isEqualToString: @"descending"]) + orderIsAscending = NO; + else if ([davReverseAttr length] + && ![davReverseAttr isEqualToString: @"ascending"]) + [self errorWithFormat: @"unrecognized sort order: '%@'", + davReverseAttr]; + + return orderIsAscending; +} + +- (NSArray *) _sortOrderingsFromSortElement: (NGDOMNodeWithChildren *) sortElement +{ + static NSMutableDictionary *criteriasMap = nil; + NSArray *davSortCriterias; + NSMutableArray *sortOrderings; + SEL sortOrderingOrder; + NSString *davSortVerb, *imapSortVerb; + EOSortOrdering *currentOrdering; + int count, max; + + if (!criteriasMap) + { + criteriasMap = [NSMutableDictionary new]; + [criteriasMap setObject: @"ARRIVAL" + forKey: @"{urn:schemas:mailheader:}received"]; + [criteriasMap setObject: @"DATE" + forKey: @"{urn:schemas:mailheader:}date"]; + [criteriasMap setObject: @"FROM" + forKey: @"{urn:schemas:mailheader:}from"]; + [criteriasMap setObject: @"TO" + forKey: @"{urn:schemas:mailheader:}to"]; + [criteriasMap setObject: @"CC" + forKey: @"{urn:schemas:mailheader:}cc"]; + [criteriasMap setObject: @"SUBJECT" + forKey: @"{DAV:}displayname"]; + [criteriasMap setObject: @"SUBJECT" + forKey: @"{urn:schemas:mailheader:}subject"]; + [criteriasMap setObject: @"SIZE" + forKey: @"{DAV:}getcontentlength"]; + } + + sortOrderings = [NSMutableArray array]; + + if ([self _sortElementIsAscending: sortElement]) + sortOrderingOrder = EOCompareAscending; + else + sortOrderingOrder = EOCompareDescending; + + davSortCriterias = [sortElement flatPropertyNameOfSubElements]; + max = [davSortCriterias count]; + for (count = 0; count < max; count++) + { + davSortVerb = [davSortCriterias objectAtIndex : count]; + imapSortVerb = [criteriasMap objectForKey: davSortVerb]; + if (imapSortVerb) + { + currentOrdering + = [EOSortOrdering sortOrderingWithKey: imapSortVerb + selector: sortOrderingOrder]; + [sortOrderings addObject: currentOrdering]; + } + else + [self errorWithFormat: @"unrecognized sort key: '%@'", davSortVerb]; + } + + return sortOrderings; +} + +- (NSArray *) _fetchMessageProperties: (NSArray *) properties + matchingQualifier: (EOQualifier *) searchQualifier + andSortOrderings: (NSArray *) sortOrderings +{ + NGImap4Client *client; + NSDictionary *response; + NSArray *messages, *values = nil; + NSString *resultKey; + + client = [[self imap4Connection] client]; + [imap4 selectFolder: [self imap4URL]]; + + if ([sortOrderings count]) + { + response = [client sort: sortOrderings qualifier: searchQualifier + encoding: @"UTF-8"]; + resultKey = @"sort"; + } + else + { + response = [client searchWithQualifier: searchQualifier]; + resultKey = @"search"; + } + + if ([[response objectForKey: @"result"] boolValue]) + { + messages = [response objectForKey: resultKey]; + if ([messages count] > 0) + { + response = [client fetchUids: messages parts: properties]; + values = [response objectForKey: @"fetch"]; + } + } + + return values; +} + +- (NSArray *) _davPropstatsWithProperties: (NSArray *) davProperties + andMethodSelectors: (SEL *) selectors + fromMessage: (NSString *) messageId +{ + SOGoMailObject *message; + unsigned int count, max; + NSMutableArray *properties200, *properties404, *propstats; + NSDictionary *propContent; + NSString *messageUrl; + id result; + + propstats = [NSMutableArray arrayWithCapacity: 2]; + + max = [davProperties count]; + properties200 = [NSMutableArray arrayWithCapacity: max]; + properties404 = [NSMutableArray arrayWithCapacity: max]; + + message = [self lookupName: messageId + inContext: context + acquire: NO]; + for (count = 0; count < max; count++) + { + if (selectors[count] + && [message respondsToSelector: selectors[count]]) + result = [message performSelector: selectors[count]]; + else + result = nil; + + if (result) + { + propContent = [[davProperties objectAtIndex: count] + asWebDAVTupleWithContent: result]; + [properties200 addObject: propContent]; + } + else + { + propContent = [[davProperties objectAtIndex: count] + asWebDAVTuple]; + [properties404 addObject: propContent]; + } + } + + messageUrl = [NSString stringWithFormat: @"%@%@.eml", + [self davURL], messageId]; + [propstats addObject: davElementWithContent (@"href", XMLNS_WEBDAV, + messageUrl)]; + + if ([properties200 count]) + [propstats addObject: [properties200 + asDAVPropstatWithStatus: @"HTTP/1.1 200 OK"]]; + if ([properties404 count]) + [propstats addObject: [properties404 + asDAVPropstatWithStatus: @"HTTP/1.1 404 Not Found"]]; + + return propstats; +} + +- (void) _appendProperties: (NSArray *) properties + fromMessages: (NSArray *) messages + toResponse: (WOResponse *) response +{ + NSDictionary *davElement; + NSArray *propstats; + NSMutableArray *all; + NSString *message, *davString; + SEL *selectors; + int max, count; + + max = [properties count]; + selectors = NSZoneMalloc (NULL, sizeof (max * sizeof (SEL))); + + for (count = 0; count < max; count++) + selectors[count] + = SOGoSelectorForPropertyGetter ([properties objectAtIndex: count]); + + max = [messages count]; + all = [NSMutableArray array]; + for (count = 0; count < max; count++) + { + message = [[messages objectAtIndex: count] stringValue]; + propstats = [self _davPropstatsWithProperties: properties + andMethodSelectors: selectors + fromMessage: message]; + davElement = davElementWithContent (@"response", XMLNS_WEBDAV, + propstats); + + [all addObject: davElement]; + } + + davString = [davElementWithContent (@"multistatus", XMLNS_WEBDAV, all) + asWebDavStringWithNamespaces: nil]; + [response appendContentString: davString]; + NSZoneFree (NULL, selectors); +} + +- (NSDictionary *) _davIMAPFieldsForProperties: (NSArray *) properties +{ + NSMutableDictionary *davIMAPFields; + NSDictionary *davIMAPFieldsTable; + NSString *imapField, *property; + unsigned int count, max; + + davIMAPFieldsTable = [self davIMAPFieldsTable]; + + max = [properties count]; + davIMAPFields = [NSMutableDictionary dictionaryWithCapacity: max]; + for (count = 0; count < max; count++) + { + property = [properties objectAtIndex: count]; + imapField = [davIMAPFieldsTable objectForKey: property]; + if (imapField) + [davIMAPFields setObject: imapField forKey: property]; + else + [self errorWithFormat: @"DAV property '%@' has no matching IMAP field," + @" response could be incomplete", property]; + } + + return davIMAPFields; +} + +- (NSDictionary *) parseDAVRequestedProperties: (NGDOMNodeWithChildren *) propElement +{ + NSArray *properties; + NSDictionary *imapFieldsTable; + + properties = [propElement flatPropertyNameOfSubElements]; + imapFieldsTable = [self _davIMAPFieldsForProperties: properties]; + + return imapFieldsTable; +} + +/* TODO: + - populate only required keys in returned SOGoMailObject rather that + fetching the whole envelope and stuff + - use EOSortOrdering rather than an NSString + */ +- (id) davMailQuery: (id) queryContext +{ + WOResponse *r; + id document; + id filterElement; + NGDOMNodeWithChildren *documentElement, *propElement, *sortElement; + NSDictionary *properties; + NSArray *messages, *sortOrderings; + EOQualifier *searchQualifier; + + r = [context response]; + [r prepareDAVResponse]; + + document = [[context request] contentAsDOMDocument]; + documentElement = [document documentElement]; + + propElement = (NGDOMNodeWithChildren *) [documentElement + firstElementWithTag: @"prop" + inNamespace: XMLNS_WEBDAV]; + properties = [self parseDAVRequestedProperties: propElement]; + filterElement = [documentElement firstElementWithTag: @"mail-filters" + inNamespace: XMLNS_INVERSEDAV]; + searchQualifier = [EOQualifier + qualifierFromMailDAVMailFilters: filterElement]; + sortElement = (NGDOMNodeWithChildren *) [documentElement + firstElementWithTag: @"sort" + inNamespace: XMLNS_INVERSEDAV]; + sortOrderings = [self _sortOrderingsFromSortElement: sortElement]; + + messages = [self _fetchMessageProperties: [properties allKeys] + matchingQualifier: searchQualifier + andSortOrderings: sortOrderings]; + [self _appendProperties: [properties allKeys] + fromMessages: messages + toResponse: r]; + + return r; +} + +- (NSException *) _appendMessageData: (NSData *) data + usingId: (int *) imap4id; +{ + NGImap4Client *client; + NSString *folderName; + NSException *error; + id result; + + error = nil; + client = [imap4 client]; + + folderName = [imap4 imap4FolderNameForURL: [self imap4URL]]; + result = [client append: data toFolder: folderName withFlags: nil]; + + if ([[result objectForKey: @"result"] boolValue]) + { + if (imap4id) + *imap4id = [self IMAP4IDFromAppendResult: result]; + } + else + error = [NSException exceptionWithHTTPStatus: 500 /* Server Error */ + reason: @"Failed to store message"]; + + return error; +} + +- (id) appendMessage: (NSData *) message + usingId: (int *) imap4id +{ + NSException *error; + WOResponse *response; + NSString *location; + + error = [self _appendMessageData: message + usingId: imap4id]; + if (error) + response = (WOResponse *) error; + else + { + response = [context response]; + [response setStatus: 201]; + location = [NSString stringWithFormat: @"%@%d.eml", + [self davURL], *imap4id]; + [response setHeader: location forKey: @"location"]; + } + + return response; +} + +- (id) PUTAction: (WOContext *) _ctx +{ + WORequest *rq; + NSException *error; + WOResponse *response; + int imap4id; + + error = [self matchesRequestConditionInContext: _ctx]; + if (error) + response = (WOResponse *) error; + else + { + rq = [_ctx request]; + response = [self appendMessage: [rq content] + usingId: &imap4id]; + } + + return response; +} + +- (NSCalendarDate *) mostRecentMessageDate +{ + NSArray *values; + NSCalendarDate *date = nil; + + values = [self _fetchMessageProperties: [NSArray arrayWithObject: @"ENVELOPE"] + matchingQualifier: nil + andSortOrderings: [NSArray arrayWithObject: @"REVERSE DATE"]]; + if ([values count] > 0) + date = [[[values objectAtIndex: 0] objectForKey: @"envelope"] date]; + + return date; +} + +@end /* SOGoMailFolder */ + +@implementation SOGoSpecialMailFolder + +- (BOOL) isSpecialFolder +{ + return YES; +} + +@end From 4d1fdb33f586ae9b06a4e282fb51fba38ad583fc Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 08:42:35 -0500 Subject: [PATCH 194/214] Deleted wrongly added file --- SoObjects/Mailer/SOGoMailFolder.m.orig | 1936 ------------------------ 1 file changed, 1936 deletions(-) delete mode 100644 SoObjects/Mailer/SOGoMailFolder.m.orig diff --git a/SoObjects/Mailer/SOGoMailFolder.m.orig b/SoObjects/Mailer/SOGoMailFolder.m.orig deleted file mode 100644 index 925ec4adeb..0000000000 --- a/SoObjects/Mailer/SOGoMailFolder.m.orig +++ /dev/null @@ -1,1936 +0,0 @@ -/* - Copyright (C) 2009-2014 Inverse inc. - Copyright (C) 2004-2005 SKYRIX Software AG - - This file is part of SOGo. - - SOGo is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - SOGo is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public - License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with OGo; see the file COPYING. If not, write to the - Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. -*/ - -#import -#import -#import -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import - -#import -#import -#import - -#import - -#import -#import - -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import -#import - -#import "EOQualifier+MailDAV.h" -#import "SOGoMailObject.h" -#import "SOGoMailAccount.h" -#import "SOGoMailManager.h" -#import "SOGoMailFolder.h" -#import "SOGoTrashFolder.h" - -#define XMLNS_INVERSEDAV @"urn:inverse:params:xml:ns:inverse-dav" - -static NSString *defaultUserID = @"anyone"; - -@interface NGImap4Connection (PrivateMethods) - -- (NSString *) imap4FolderNameForURL: (NSURL *) url; - -@end - -@implementation SOGoMailFolder - -- (BOOL) _path: (NSString *) path - isInNamespaces: (NSArray *) namespaces -{ - int count, max; - BOOL rc; - - rc = NO; - - max = [namespaces count]; - for (count = 0; !rc && count < max; count++) - rc = [path hasPrefix: [namespaces objectAtIndex: count]]; - - return rc; -} - -- (void) _adjustOwner -{ - SOGoMailAccount *mailAccount; - NSString *path; - NSArray *names; - - mailAccount = [self mailAccountFolder]; - path = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; - - if ([self _path: path - isInNamespaces: [mailAccount sharedFolderNamespaces]]) - [self setOwner: @"nobody"]; - else if ([self _path: path - isInNamespaces: [mailAccount otherUsersFolderNamespaces]]) - { - names = [path componentsSeparatedByString: @"/"]; - if ([names count] > 1) - [self setOwner: [names objectAtIndex: 1]]; - else - [self setOwner: @"nobody"]; - } -} - -- (id) initWithName: (NSString *) newName - inContainer: (id) newContainer -{ - if ((self = [super initWithName: newName - inContainer: newContainer])) - { - [self _adjustOwner]; - mailboxACL = nil; - prefetchedInfos = nil; - } - - return self; -} - -- (void) dealloc -{ - [filenames release]; - [folderType release]; - [mailboxACL release]; - [prefetchedInfos release]; - [super dealloc]; -} - -/* IMAP4 */ - -- (NSString *) relativeImap4Name -{ - return [[nameInContainer substringFromIndex: 6] fromCSSIdentifier]; -} - -- (NSString *) absoluteImap4Name -{ - NSString *name; - - name = [[self imap4URL] path]; - if (![name hasSuffix: @"/"]) - name = [name stringByAppendingString: @"/"]; - - return name; -} - -- (NSMutableString *) imap4URLString -{ - NSMutableString *urlString; - - urlString = [super imap4URLString]; - [urlString appendString: @"/"]; - - return urlString; -} - -/* listing the available folders */ - -- (NSArray *) toManyRelationshipKeys -{ - NSArray *subfolders; - - subfolders = [[self subfolders] stringsWithFormat: @"folder%@"]; - - return [subfolders resultsOfSelector: @selector (asCSSIdentifier)]; -} - -- (NSArray *) subfolders -{ - return [[self imap4Connection] subfoldersForURL: [self imap4URL]]; -} - -- (BOOL) isSpecialFolder -{ - return NO; -} - -- (NSArray *) allFolderPaths -{ - NSMutableArray *deepSubfolders; - NSEnumerator *folderNames; - NSArray *result; - NSString *currentFolderName, *prefix; - - deepSubfolders = [NSMutableArray array]; - - prefix = [self absoluteImap4Name]; - - result = [[self mailAccountFolder] allFolderPaths]; - folderNames = [result objectEnumerator]; - while ((currentFolderName = [folderNames nextObject])) - if ([currentFolderName hasPrefix: prefix]) - [deepSubfolders addObject: currentFolderName]; - [deepSubfolders sortUsingSelector: @selector (compare:)]; - - return deepSubfolders; -} - -- (NSArray *) allFolderURLs -{ - NSURL *selfURL, *currentURL; - NSMutableArray *subfoldersURL; - NSEnumerator *subfolders; - NSString *currentFolder; - - subfoldersURL = [NSMutableArray array]; - selfURL = [self imap4URL]; - subfolders = [[self allFolderPaths] objectEnumerator]; - currentFolder = [subfolders nextObject]; - while (currentFolder) - { - currentURL = [[NSURL alloc] - initWithScheme: [selfURL scheme] - host: [selfURL host] - path: currentFolder]; - [currentURL autorelease]; - [subfoldersURL addObject: currentURL]; - currentFolder = [subfolders nextObject]; - } - - return subfoldersURL; -} - -- (NSString *) davContentType -{ - return @"httpd/unix-directory"; -} - -- (NSArray *) toOneRelationshipKeys -{ - NSArray *uids; - unsigned int count, max; - NSString *filename; - - if (!filenames) - { - filenames = [NSMutableArray new]; - if ([self exists]) - { - uids = [self fetchUIDsMatchingQualifier: nil sortOrdering: @"DATE"]; - if (![uids isKindOfClass: [NSException class]]) - { - max = [uids count]; - for (count = 0; count < max; count++) - { - filename = [NSString stringWithFormat: @"%@.eml", - [uids objectAtIndex: count]]; - [filenames addObject: filename]; - } - } - } - } - - return filenames; -} - -- (NSException *) renameTo: (NSString *) newName -{ - NSException *error; - SOGoMailFolder *inbox; - NSURL *destURL; - NSString *path; - NGImap4Client *client; - - if ([newName length] > 0) - { - [self imap4URL]; - - if ([self imap4Connection]) - { - client = [imap4 client]; - - inbox = [[self mailAccountFolder] inboxFolderInContext: context]; - [client select: [inbox absoluteImap4Name]]; - - path = [[imap4URL path] stringByDeletingLastPathComponent]; - if (![path hasSuffix: @"/"]) - path = [path stringByAppendingString: @"/"]; - destURL = [[NSURL alloc] initWithScheme: [imap4URL scheme] - host: [imap4URL host] - path: [NSString stringWithFormat: @"%@%@", - path, newName]]; - [destURL autorelease]; - error = [imap4 moveMailboxAtURL: imap4URL - toURL: destURL]; - if (!error) - { - ASSIGN (imap4URL, nil); - ASSIGN (nameInContainer, - ([NSString stringWithFormat: @"folder%@", [newName asCSSIdentifier]])); - - // We unsubscribe to the old one, and subscribe back to the new one - [client subscribe: [destURL path]]; - [client unsubscribe: [imap4URL path]]; - } - } - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - } - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"given name is empty" - userInfo: nil]; - - return error; -} - -/* messages */ -- (void) prefetchCoreInfosForMessageKeys: (NSArray *) keys -{ - NSUInteger count, max, keyLength; - NSMutableArray *uids; - NSDictionary *infos; - NSArray *allValues; - NSString *key; - - if (!SOGoMailCoreInfoKeys) - { - /* ensure SOGoMailCoreInfoKeys is initialized */ - [SOGoMailObject class]; - } - - [prefetchedInfos release]; - - max = [keys count]; - if (max > 0) - { - uids = [NSMutableArray arrayWithCapacity: max]; - for (count = 0; count < max; count++) - { - key = [keys objectAtIndex: count]; - if ([key hasSuffix: @".eml"]) - { - keyLength = [key length]; - [uids addObject: [key substringToIndex: keyLength - 4]]; - } - else - [uids addObject: key]; - } - infos = (NSDictionary *) [self fetchUIDs: uids parts: SOGoMailCoreInfoKeys]; - - prefetchedInfos = [[NSMutableDictionary alloc] initWithCapacity: max]; - - // We MUST NOT use setObjects:forKeys here as the fetch's array does NOT - // necessarily have the same order! - allValues = [infos objectForKey: @"fetch"]; - max = [allValues count]; - - for (count = 0; count < max ; count++) - { - infos = [allValues objectAtIndex: count]; - key = [NSString stringWithFormat: @"%@", [infos objectForKey: @"uid"]]; - [prefetchedInfos setObject: infos forKey: key]; - } - } - else - prefetchedInfos = nil; -} - -- (NSException *) deleteUIDs: (NSArray *) uids - useTrashFolder: (BOOL *) withTrash - inContext: (id) localContext -{ - SOGoMailFolder *trashFolder; - NGImap4Client *client; - NSString *folderName; - NSException *error; - NSString *result; - BOOL b; - - client = nil; - trashFolder = nil; - b = YES; - if (*withTrash) - { - trashFolder = [[self mailAccountFolder] trashFolderInContext: localContext]; - b = NO; - if ([trashFolder isNotNull]) - { - if ([trashFolder isKindOfClass: [NSException class]]) - error = (NSException *) trashFolder; - else - { - if ([self imap4Connection]) - { - error = nil; - client = [imap4 client]; - [imap4 selectFolder: [self imap4URL]]; - folderName = [imap4 imap4FolderNameForURL: [trashFolder imap4URL]]; - b = YES; - - // If we are deleting messages within the Trash folder itself, we - // do not, of course, try to move messages to the Trash folder. - if ([folderName isEqualToString: [imap4 imap4FolderNameForURL: [self imap4URL]]]) - { - *withTrash = NO; - } - else - { - // If our Trash folder doesn't exist when we try to copy messages - // to it, we create it. - b = [self ensureTrashFolder]; - - if (b) - { - result = [[client copyUids: uids toFolder: folderName] - objectForKey: @"result"]; - - b = [result boolValue]; - } - } - } - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - } - } - else - error = [NSException exceptionWithHTTPStatus: 500 - reason: @"Did not find Trash folder!"]; - } - - if (b) - { - if (client == nil) - { - client = [[self imap4Connection] client]; - [imap4 selectFolder: [self imap4URL]]; - } - result = [[client storeFlags: [NSArray arrayWithObject: @"Deleted"] - forUIDs: uids addOrRemove: YES] - objectForKey: @"result"]; - if ([result boolValue]) - { - if (*withTrash) - { - [self markForExpunge]; - if (trashFolder) - [trashFolder flushMailCaches]; - error = nil; - } - else - { - // When not using a trash folder, expunge the current folder - // immediately - error = [self expunge]; - } - } - else - error - = [NSException exceptionWithHTTPStatus:500 - reason: @"Could not mark UIDs as Deleted"]; - } - else - error = [NSException exceptionWithHTTPStatus:500 - reason: @"Could not copy UIDs"]; - - return error; -} - -- (WOResponse *) archiveUIDs: (NSArray *) uids - inArchiveNamed: (NSString *) archiveName - inContext: (id) localContext -{ - NSException *error; - NSFileManager *fm; - NSString *spoolPath, *fileName, *baseName, *extension, *zipPath, *qpFileName; - NSDictionary *msgs; - NSArray *messages; - NSData *content, *zipContent; - NSTask *zipTask; - NSMutableArray *zipTaskArguments; - WOResponse *response; - int i; - - if (!archiveName) - archiveName = @"SavedMessages.zip"; - -#warning this method should be rewritten according to our coding styles - spoolPath = [self userSpoolFolderPath]; - if (![self ensureSpoolFolderPath]) { - [self errorWithFormat: @"spool directory '%@' doesn't exist", spoolPath]; - error = [NSException exceptionWithHTTPStatus: 500 - reason: @"spool directory does not exist"]; - return (WOResponse *)error; - } - - zipPath = [[SOGoSystemDefaults sharedSystemDefaults] zipPath]; - fm = [NSFileManager defaultManager]; - if (![fm fileExistsAtPath: zipPath]) { - error = [NSException exceptionWithHTTPStatus: 500 - reason: @"zip not available"]; - return (WOResponse *)error; - } - - zipTask = [[NSTask alloc] init]; - [zipTask setCurrentDirectoryPath: spoolPath]; - [zipTask setLaunchPath: zipPath]; - - zipTaskArguments = [NSMutableArray arrayWithObjects: nil]; - [zipTaskArguments addObject: @"SavedMessages.zip"]; - - msgs = (NSDictionary *)[self fetchUIDs: uids - parts: [NSArray arrayWithObject: @"RFC822"]]; - messages = [msgs objectForKey: @"fetch"]; - - for (i = 0; i < [messages count]; i++) { - content = [[messages objectAtIndex: i] objectForKey: @"message"]; - fileName = [NSString stringWithFormat:@"%@/%@.eml", spoolPath, [uids objectAtIndex: i]];; - [content writeToFile: fileName atomically: YES]; - - [zipTaskArguments addObject: - [NSString stringWithFormat:@"%@.eml", [uids objectAtIndex: i]]]; - } - - [zipTask setArguments: zipTaskArguments]; - [zipTask launch]; - [zipTask waitUntilExit]; - - [zipTask release]; - - zipContent = [[NSData alloc] initWithContentsOfFile: - [NSString stringWithFormat: @"%@/SavedMessages.zip", spoolPath]]; - - for(i = 0; i < [zipTaskArguments count]; i++) { - fileName = [zipTaskArguments objectAtIndex: i]; - [fm removeFileAtPath: - [NSString stringWithFormat: @"%@/%@", spoolPath, fileName] handler: nil]; - } - - response = [context response]; - - baseName = [archiveName stringByDeletingPathExtension]; - extension = [archiveName pathExtension]; - if ([extension length] > 0) - extension = [@"." stringByAppendingString: extension]; - else - extension = @""; - - qpFileName = [NSString stringWithFormat: @"%@%@", - [baseName asQPSubjectString: @"utf-8"], - extension]; - [response setHeader: [NSString stringWithFormat: @"application/zip;" - @" name=\"%@\"", - qpFileName] - forKey:@"content-type"]; - [response setHeader: [NSString stringWithFormat: @"attachment; filename=\"%@\"", - qpFileName] - forKey: @"Content-Disposition"]; - [response setContent: zipContent]; - - [zipContent release]; - - return response; -} - -- (WOResponse *) archiveAllMessagesInContext: (id) localContext -{ - WOResponse *response; - NSArray *uids; - NSString *archiveName; - EOQualifier *notDeleted; - - if ([self exists]) - { - notDeleted = [EOQualifier qualifierWithQualifierFormat: - @"(not (flags = %@))", @"deleted"]; - uids = [self fetchUIDsMatchingQualifier: notDeleted - sortOrdering: @"ARRIVAL"]; - archiveName = [NSString stringWithFormat: @"%@.zip", [self relativeImap4Name]]; - response = [self archiveUIDs: uids inArchiveNamed: archiveName - inContext: localContext]; - } - else - response = (WOResponse *) - [NSException exceptionWithHTTPStatus: 404 - reason: @"Folder does not exist."]; - - return response; -} - -- (WOResponse *) copyUIDs: (NSArray *) uids - toFolder: (NSString *) destinationFolder - inContext: (id) localContext -{ - NSArray *folders; - NSString *currentFolderName, *currentAccountName; - NSMutableString *imapDestinationFolder; - NGImap4Client *client; - id result; - int count, max; - -#warning this code will fail on implementation using something else than '/' as delimiter - imapDestinationFolder = [NSMutableString string]; - folders = [[destinationFolder componentsSeparatedByString: @"/"] - resultsOfSelector: @selector (fromCSSIdentifier)]; - max = [folders count]; - if (max > 1) - { - currentAccountName = [[self mailAccountFolder] nameInContainer]; - client = [[self imap4Connection] client]; - [imap4 selectFolder: [self imap4URL]]; - - for (count = 2; count < max; count++) - { - currentFolderName = [[folders objectAtIndex: count] substringFromIndex: 6]; - [imapDestinationFolder appendFormat: @"/%@", currentFolderName]; - } - - if (client) - { - if ([[folders objectAtIndex: 1] isEqualToString: currentAccountName]) - { - // We make sure the destination IMAP folder exist, if not, we create it. - result = [[client status: imapDestinationFolder - flags: [NSArray arrayWithObject: @"UIDVALIDITY"]] - objectForKey: @"result"]; - if (![result boolValue]) - result = [[self imap4Connection] createMailbox: imapDestinationFolder - atURL: [[self mailAccountFolder] imap4URL]]; - if (!result || [result boolValue]) - result = [client copyUids: uids toFolder: imapDestinationFolder]; - - if ([[result valueForKey: @"result"] boolValue]) - result = nil; - else - result = [NSException exceptionWithHTTPStatus: 500 - reason: [[[result objectForKey: @"RawResponse"] - objectForKey: @"ResponseResult"] - objectForKey: @"description"]]; - } - else - { - // Destination folder is in a different account - SOGoMailAccounts *accounts; - SOGoMailAccount *account; - accounts = [[self container] container]; - account = [accounts lookupName: [folders objectAtIndex: 1] inContext: localContext acquire: NO]; - if ([account isKindOfClass: [NSException class]]) - { - result = [NSException exceptionWithHTTPStatus: 500 - reason: @"Cannot copy messages to other account."]; - } - else - { - NSEnumerator *messages; - NSDictionary *message; - NSData *content; - NSArray *flags; - - // Fetch messages - result = [client fetchUids: uids parts: [NSArray arrayWithObjects: @"RFC822", @"FLAGS", nil]]; - if ([[result objectForKey: @"result"] boolValue]) - { - result = [result valueForKey: @"fetch"]; - if ([result isKindOfClass: [NSArray class]] && [result count] > 0) - { - // Copy each message to the other account - client = [[account imap4Connection] client]; - [[account imap4Connection] selectFolder: imapDestinationFolder]; - messages = [result objectEnumerator]; - result = nil; - while (result == nil && (message = [messages nextObject])) - { - if ((content = [message valueForKey: @"message"]) != nil) - { - flags = [message valueForKey: @"flags"]; - result = [client append: content toFolder: imapDestinationFolder withFlags: flags]; - if ([[result objectForKey: @"result"] boolValue]) - result = nil; - else - [self logWithFormat: @"ERROR: Can't append message: %@", result]; - } - } - } - else - { - [self logWithFormat: @"ERROR: unexpected IMAP4 result (missing 'fetch'): %@", result]; - result = [NSException exceptionWithHTTPStatus: 500 - reason: @"Unexpected IMAP4 result"]; - } - } - else - { - [self logWithFormat: @"ERROR: Can't fetch messages: %@", result]; - result = [NSException exceptionWithHTTPStatus: 500 - reason: @"Can't fetch messages"]; - } - } - } - } - else - result = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - } - else - result = [NSException exceptionWithHTTPStatus: 500 - reason: @"Invalid destination."]; - - return result; -} - -- (WOResponse *) moveUIDs: (NSArray *) uids - toFolder: (NSString *) destinationFolder - inContext: (id) localContext -{ - id result; - NGImap4Client *client; - - client = [[self imap4Connection] client]; - if (client) - { - result = [self copyUIDs: uids toFolder: destinationFolder inContext: localContext]; - if (![result isNotNull]) - { - result = [client storeFlags: [NSArray arrayWithObject: @"Deleted"] - forUIDs: uids addOrRemove: YES]; - if ([[result valueForKey: @"result"] boolValue]) - { - [self markForExpunge]; - result = nil; - } - } - } - else - result = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - - return result; -} - -- (NSDictionary *) statusForFlags: (NSArray *) flags -{ - NGImap4Client *client; - NSString *folderName; - NSDictionary *result, *status; - - client = [[self imap4Connection] client]; - folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; - result = [client status: folderName flags: flags]; - if ([[result objectForKey: @"result"] boolValue]) - status = [[[result objectForKey: @"RawResponse"] objectForKey: @"status"] - objectForKey: @"flags"]; - else - status = nil; - - return status; -} - -- (NSArray *) fetchUIDsMatchingQualifier: (id) _q - sortOrdering: (id) _so -{ - return [self fetchUIDsMatchingQualifier: _q - sortOrdering: _so - threaded: NO]; -} - -- (NSArray *) fetchUIDsMatchingQualifier: (id) _q - sortOrdering: (id) _so - threaded: (BOOL) _threaded -{ - if (_threaded) - { - return [[self imap4Connection] fetchThreadedUIDsInURL: [self imap4URL] - qualifier: _q - sortOrdering: _so]; - } - else - { - return [[self imap4Connection] fetchUIDsInURL: [self imap4URL] - qualifier: _q - sortOrdering: _so]; - } -} - -- (NSArray *) fetchUIDs: (NSArray *) _uids - parts: (NSArray *) _parts -{ - return [[self imap4Connection] fetchUIDs: _uids inURL: [self imap4URL] - parts: _parts]; -} - -- (NSArray *) fetchUIDsOfVanishedItems: (uint64_t) modseq -{ - NGImap4Client *client; - NSDictionary *result; - - client = [[self imap4Connection] client]; - result = [client fetchVanished: modseq]; - - return [result objectForKey: @"vanished"]; -} - -- (NSException *) postData: (NSData *) _data - flags: (id) _flags -{ - // We check for the existence of the IMAP folder (likely to be the - // Sent mailbox) prior to appending messages to it. - if ([self exists] - || ![[self imap4Connection] createMailbox: [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]] - atURL: [[self mailAccountFolder] imap4URL]]) - return [[self imap4Connection] postData: _data flags: _flags - toFolderURL: [self imap4URL]]; - - return [NSException exceptionWithHTTPStatus: 502 /* Bad Gateway */ - reason: [NSString stringWithFormat: @"%@ is not an IMAP4 folder", [self relativeImap4Name]]]; -} - -- (NSException *) expunge -{ - NSException *error; - - if ([self imap4Connection]) - error = [imap4 expungeAtURL: [self imap4URL]]; - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - return error; -} - -- (void) markForExpunge -{ - SOGoUserSettings *us; - NSMutableDictionary *mailSettings; - NSString *urlString; - - us = [[context activeUser] userSettings]; - mailSettings = [us objectForKey: @"Mail"]; - if (!mailSettings) - { - mailSettings = [NSMutableDictionary dictionaryWithCapacity: 1]; - [us setObject: mailSettings forKey: @"Mail"]; - } - - urlString = [self imap4URLString]; - if (![[mailSettings objectForKey: @"folderForExpunge"] - isEqualToString: urlString]) - { - [mailSettings setObject: [self imap4URLString] - forKey: @"folderForExpunge"]; - [us synchronize]; - } -} - -- (void) expungeLastMarkedFolder -{ - SOGoUserSettings *us; - NSMutableDictionary *mailSettings; - NSString *expungeURL; - NSURL *folderURL; - - us = [[context activeUser] userSettings]; - mailSettings = [us objectForKey: @"Mail"]; - if (mailSettings) - { - expungeURL = [mailSettings objectForKey: @"folderForExpunge"]; - if (expungeURL - && ![expungeURL isEqualToString: [self imap4URLString]]) - { - folderURL = [NSURL URLWithString: expungeURL]; - if (![[self imap4Connection] expungeAtURL: folderURL]) - { - [mailSettings removeObjectForKey: @"folderForExpunge"]; - [us synchronize]; - } - } - } -} - -/* flags */ - -- (NSException *) addFlagsToAllMessages: (id) _f -{ - NSException *error; - - if ([self imap4Connection]) - error = [imap4 addFlags:_f - toAllMessagesInURL: [self imap4URL]]; - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - - return error; -} - -/* name lookup */ - -- (id) lookupName: (NSString *) _key - inContext: (id)_ctx - acquire: (BOOL) _acquire -{ - NSString *folderName, *fullFolderName, *className; - SOGoMailAccount *mailAccount; - id obj; - - obj = [super lookupName: _key inContext: _ctx acquire: NO]; - if (!obj) - { - if ([_key hasPrefix: @"folder"]) - { - mailAccount = [self mailAccountFolder]; - folderName = [[_key substringFromIndex: 6] fromCSSIdentifier]; - fullFolderName = [NSString stringWithFormat: @"%@/%@", - [self traversalFromMailAccount], folderName]; - if ([fullFolderName - isEqualToString: - [mailAccount draftsFolderNameInContext: _ctx]]) - className = @"SOGoDraftsFolder"; - else if ([fullFolderName - isEqualToString: - [mailAccount sentFolderNameInContext: _ctx]]) - className = @"SOGoSentFolder"; - else if ([fullFolderName - isEqualToString: - [mailAccount trashFolderNameInContext: _ctx]]) - className = @"SOGoTrashFolder"; - /* else if ([folderName isEqualToString: - [mailAccount sieveFolderNameInContext: _ctx]]) - obj = [self lookupFiltersFolder: _key inContext: _ctx]; */ - else - className = @"SOGoMailFolder"; - - obj = [NSClassFromString (className) objectWithName: _key - inContainer: self]; - } - else if (isdigit ([_key characterAtIndex: 0]) - && [self exists]) - { - obj = [SOGoMailObject objectWithName: _key inContainer: self]; - if ([_key hasSuffix: @".eml"]) - _key = [_key substringToIndex: [_key length] - 4]; - [obj setCoreInfos: [prefetchedInfos objectForKey: _key]]; - } - } - - if (!obj && _acquire) - obj = [NSException exceptionWithHTTPStatus: 404 /* Not Found */]; - - return obj; -} - -/* WebDAV */ - -- (BOOL) davIsCollection -{ - return YES; -} - -- (NSException *) davCreateCollection: (NSString *) _name - inContext: (id) _ctx -{ - NSException *error; - - if ([self imap4Connection]) - error = [imap4 createMailbox:_name atURL:[self imap4URL]]; - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - - return error; -} - -- (BOOL) exists -{ - return [[self imap4Connection] doesMailboxExistAtURL: [self imap4URL]]; -} - -- (BOOL) create -{ - NSException *error; - BOOL rc; - - if ([self imap4Connection]) - { - error = [imap4 createMailbox: [self relativeImap4Name] - atURL: [container imap4URL]]; - if (error) - rc = NO; - else - { - [[imap4 client] subscribe: [self absoluteImap4Name]]; - rc = YES; - } - } - else - rc = NO; - - return rc; -} - -- (BOOL) ensureTrashFolder -{ - SOGoMailFolder *trashFolder; - BOOL rc; - - trashFolder = [[self mailAccountFolder] trashFolderInContext: context]; - rc = NO; - if (![trashFolder isKindOfClass: [NSException class]]) - { - rc = [trashFolder exists]; - if (!rc) - rc = [trashFolder create]; - } - if (!rc) - [self errorWithFormat: @"Cannot create Trash Mailbox"]; - return rc; -} - -- (NSException *) delete -{ - NSException *error; - - if ([self imap4Connection]) - error = [imap4 deleteMailboxAtURL: [self imap4URL]]; - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - - return error; -} - -- (NSException *) davMoveToTargetObject: (id) _target - newName: (NSString *) _name - inContext: (id)_ctx -{ - NSException *error; - NSURL *destImapURL; - - if ([_name length] == 0) { /* target already exists! */ - // TODO: check the overwrite request field (should be done by dispatcher) - return [NSException exceptionWithHTTPStatus:412 /* Precondition Failed */ - reason:@"target already exists"]; - } - if (![_target respondsToSelector:@selector(imap4URL)]) { - return [NSException exceptionWithHTTPStatus:502 /* Bad Gateway */ - reason:@"target is not an IMAP4 folder"]; - } - - /* build IMAP4 URL for target */ - - destImapURL = [_target imap4URL]; -// - destImapURL = [NSURL URLWithString:[[destImapURL path] -// - stringByAppendingPathComponent:_name] -// - relativeToURL:destImapURL]; - destImapURL = [NSURL URLWithString: _name - relativeToURL: destImapURL]; - - [self logWithFormat:@"TODO: should move collection as '%@' to: %@", - [[self imap4URL] absoluteString], - [destImapURL absoluteString]]; - - if ([self imap4Connection]) - error = [imap4 moveMailboxAtURL: [self imap4URL] - toURL: destImapURL]; - else - error = [NSException exceptionWithName: @"SOGoMailException" - reason: @"IMAP connection is invalid" - userInfo: nil]; - - return error; -} - -- (NSException *) davCopyToTargetObject: (id) _target - newName: (NSString *) _name - inContext: (id) _ctx -{ - [self logWithFormat:@"TODO: should copy collection as '%@' to: %@", - _name, _target]; - return [NSException exceptionWithHTTPStatus:501 /* Not Implemented */ - reason:@"not implemented"]; -} - -/* folder type */ -- (NSString *) folderType -{ - return @"Mail"; -} - -/* acls */ - -- (NSArray *) _imapAclsToSOGoAcls: (NSString *) imapAcls -{ - unsigned int count, max; - NSMutableArray *SOGoAcls; - - SOGoAcls = [NSMutableArray array]; - max = [imapAcls length]; - for (count = 0; count < max; count++) - { - switch ([imapAcls characterAtIndex: count]) - { - case 'l': - case 'r': - [SOGoAcls addObjectUniquely: SOGoRole_ObjectViewer]; - break; - case 's': - [SOGoAcls addObjectUniquely: SOGoMailRole_SeenKeeper]; - break; - case 'w': - [SOGoAcls addObjectUniquely: SOGoMailRole_Writer]; - break; - case 'i': - [SOGoAcls addObjectUniquely: SOGoRole_ObjectCreator]; - break; - case 'p': - [SOGoAcls addObjectUniquely: SOGoMailRole_Poster]; - break; - case 'c': - case 'k': - [SOGoAcls addObjectUniquely: SOGoRole_FolderCreator]; - break; - case 'x': - [SOGoAcls addObjectUniquely: SOGoRole_FolderEraser]; - break; - case 'd': - case 't': - [SOGoAcls addObjectUniquely: SOGoRole_ObjectEraser]; - break; - case 'e': - [SOGoAcls addObjectUniquely: SOGoMailRole_Expunger]; - break; - case 'a': - [SOGoAcls addObjectUniquely: SOGoMailRole_Administrator]; - break; - } - } - - return SOGoAcls; -} - -- (char) _rfc2086StyleRight: (NSString *) sogoRight -{ - char character; - - if ([sogoRight isEqualToString: SOGoRole_FolderCreator]) - character = 'c'; - else if ([sogoRight isEqualToString: SOGoRole_ObjectEraser]) - character = 'd'; - else - character = 0; - - return character; -} - -- (char) _rfc4314StyleRight: (NSString *) sogoRight -{ - char character; - - if ([sogoRight isEqualToString: SOGoRole_FolderCreator]) - character = 'k'; - else if ([sogoRight isEqualToString: SOGoRole_FolderEraser]) - character = 'x'; - else if ([sogoRight isEqualToString: SOGoRole_ObjectEraser]) - character = 't'; - else if ([sogoRight isEqualToString: SOGoMailRole_Expunger]) - character = 'e'; - else - character = 0; - - return character; -} - -- (NSString *) _sogoACLsToIMAPACLs: (NSArray *) sogoAcls -{ - NSMutableString *imapAcls; - NSEnumerator *acls; - NSString *currentAcl; - char character; - SOGoIMAPAclStyle aclStyle; - - imapAcls = [NSMutableString string]; - acls = [sogoAcls objectEnumerator]; - while ((currentAcl = [acls nextObject])) - { - if ([currentAcl isEqualToString: SOGoRole_ObjectViewer]) - { - [imapAcls appendFormat: @"lr"]; - character = 0; - } - else if ([currentAcl isEqualToString: SOGoMailRole_SeenKeeper]) - character = 's'; - else if ([currentAcl isEqualToString: SOGoMailRole_Writer]) - character = 'w'; - else if ([currentAcl isEqualToString: SOGoRole_ObjectCreator]) - character = 'i'; - else if ([currentAcl isEqualToString: SOGoMailRole_Poster]) - character = 'p'; - else if ([currentAcl isEqualToString: SOGoMailRole_Administrator]) - character = 'a'; - else - { - aclStyle = [[self mailAccountFolder] imapAclStyle]; - if (aclStyle == rfc2086) - character = [self _rfc2086StyleRight: currentAcl]; - else if (aclStyle == rfc4314) - character = [self _rfc4314StyleRight: currentAcl]; - else - character = 0; - } - - if (character) - [imapAcls appendFormat: @"%c", character]; - } - - return imapAcls; -} - -- (NSString *) _sogoACLUIDToIMAPUID: (NSString *) uid -{ - if ([uid hasPrefix: @"@"]) - return [[[[context activeUser] domainDefaults] imapAclGroupIdPrefix] - stringByAppendingString: [uid substringFromIndex: 1]]; - else if ([[[context activeUser] domainDefaults] forceExternalLoginWithEmail]) - { - return [[[SOGoUser userWithLogin: uid] primaryIdentity] objectForKey: @"email"]; - } - else - return uid; -} - -- (void) _removeIMAPExtUsernames -{ - NSMutableDictionary *newIMAPAcls; - NSEnumerator *usernames; - NSString *username; - - if ([mailboxACL isKindOfClass: [NSException class]]) - return; - - newIMAPAcls = [NSMutableDictionary new]; - - usernames = [[mailboxACL allKeys] objectEnumerator]; - while ((username = [usernames nextObject])) - if (!([username isEqualToString: @"administrators"] - || [username isEqualToString: @"owner"] - || [username isEqualToString: @"anonymous"] - || [username isEqualToString: @"authuser"])) - [newIMAPAcls setObject: [mailboxACL objectForKey: username] - forKey: username]; - [mailboxACL release]; - mailboxACL = newIMAPAcls; -} - -- (void) _convertIMAPGroupnames -{ - NSMutableDictionary *newIMAPAcls; - NSEnumerator *usernames; - NSString *username; - NSString *newUsername; - NSString *imapPrefix; - - if ([mailboxACL isKindOfClass: [NSException class]]) - return; - - imapPrefix = [[[context activeUser] domainDefaults] imapAclGroupIdPrefix]; - - newIMAPAcls = [[NSMutableDictionary alloc] init]; - - usernames = [[mailboxACL allKeys] objectEnumerator]; - while ((username = [usernames nextObject])) - { - if ([username hasPrefix: imapPrefix]) - newUsername = [@"@" stringByAppendingString: [username substringFromIndex: [imapPrefix length]]]; - else - newUsername = username; - [newIMAPAcls setObject: [mailboxACL objectForKey: username] - forKey: newUsername]; - } - [mailboxACL release]; - mailboxACL = newIMAPAcls; -} - -- (void) _readMailboxACL -{ - [mailboxACL release]; - - mailboxACL = [[self imap4Connection] aclForMailboxAtURL: [self imap4URL]]; - - // If the mailbox doesn't exist, we create it. That could happen if - // a special mailbox (Drafts, Sent, Trash) is deleted from SOGo's web GUI - // or if any other mailbox is deleted behind SOGo's back. - if ([mailboxACL isKindOfClass: [NSException class]]) - { - [[self imap4Connection] createMailbox: [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]] - atURL: [[self mailAccountFolder] imap4URL]]; - mailboxACL = [[self imap4Connection] aclForMailboxAtURL: [self imap4URL]]; - } - - [mailboxACL retain]; - - [self _convertIMAPGroupnames]; - if ([[self mailAccountFolder] imapAclConformsToIMAPExt]) - [self _removeIMAPExtUsernames]; -} - -- (NSArray *) subscriptionRoles -{ - return [NSArray arrayWithObjects: SOGoRole_ObjectViewer, - SOGoMailRole_SeenKeeper, SOGoMailRole_Writer, - SOGoRole_ObjectCreator, SOGoMailRole_Poster, - SOGoRole_FolderCreator, SOGoRole_FolderEraser, - SOGoRole_ObjectEraser, SOGoMailRole_Expunger, - SOGoMailRole_Administrator, nil]; -} - -- (NSArray *) aclUsers -{ - NSArray *users; - - if (!mailboxACL) - [self _readMailboxACL]; - - if ([mailboxACL isKindOfClass: [NSDictionary class]]) - users = [mailboxACL allKeys]; - else - users = nil; - - return users; -} - -- (NSMutableArray *) _sharesACLs -{ - NSMutableArray *acls; - SOGoMailAccount *mailAccount; - NSString *path; - - acls = [NSMutableArray array]; - - mailAccount = [self mailAccountFolder]; - path = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; - - if ([self _path: path - isInNamespaces: [mailAccount otherUsersFolderNamespaces]] - || [self _path: path - isInNamespaces: [mailAccount sharedFolderNamespaces]]) - [acls addObject: SOGoRole_ObjectViewer]; - else - [acls addObject: SoRole_Owner]; - - return acls; -} - -- (NSArray *) aclsForUser: (NSString *) uid -{ - NSMutableArray *acls; - NSString *userAcls, *userLogin; - - userLogin = [[context activeUser] login]; - if ([uid isEqualToString: userLogin]) - acls = [self _sharesACLs]; - else - acls = [NSMutableArray array]; - - if ([owner isEqualToString: userLogin]) - { - if (!mailboxACL) - [self _readMailboxACL]; - - if ([mailboxACL isKindOfClass: [NSDictionary class]]) - { - userAcls = [mailboxACL objectForKey: uid]; - if (!([userAcls length] || [uid isEqualToString: defaultUserID])) - userAcls = [mailboxACL objectForKey: defaultUserID]; - if ([userAcls length]) - [acls addObjectsFromArray: [self _imapAclsToSOGoAcls: userAcls]]; - } - } - - return acls; -} - -- (void) removeAclsForUsers: (NSArray *) users -{ - NSEnumerator *uids; - NSString *currentUID, *folderName; - NGImap4Client *client; - - folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; - client = [imap4 client]; - - uids = [users objectEnumerator]; - while ((currentUID = [uids nextObject])) - [client deleteACL: folderName uid: [self _sogoACLUIDToIMAPUID: currentUID]]; - [mailboxACL release]; - mailboxACL = nil; -} - -- (void) setRoles: (NSArray *) roles - forUser: (NSString *) uid -{ - NSString *acls, *folderName; - - acls = [self _sogoACLsToIMAPACLs: roles]; - folderName = [[self imap4Connection] imap4FolderNameForURL: [self imap4URL]]; - [[imap4 client] setACL: folderName rights: acls uid: [self _sogoACLUIDToIMAPUID: uid]]; - - [mailboxACL release]; - mailboxACL = nil; -} - -- (NSString *) defaultUserID -{ - return defaultUserID; -} - -- (NSString *) otherUsersPathToFolder -{ - NSString *userPath, *selfPath, *otherUsers; - SOGoMailAccount *account; - NSArray *otherUsersFolderNamespaces; - -#warning this method should be checked - account = [self mailAccountFolder]; - otherUsersFolderNamespaces = [account otherUsersFolderNamespaces]; - - selfPath = [[self imap4URL] path]; - if ([self _path: selfPath isInNamespaces: otherUsersFolderNamespaces] - || [self _path: selfPath - isInNamespaces: [account sharedFolderNamespaces]]) - userPath = selfPath; - else - { - if ([otherUsersFolderNamespaces count]) - { - /* can we really have more than one "other users" namespace? */ - otherUsers = [[otherUsersFolderNamespaces objectAtIndex: 0] - stringByEscapingURL]; - userPath = [NSString stringWithFormat: @"/%@/%@%@", - otherUsers, owner, selfPath]; - } - else - userPath = nil; - } - - return userPath; -} - -- (NSString *) httpURLForAdvisoryToUser: (NSString *) uid -{ - NSString *otherUsersPath, *url; - - otherUsersPath = [self otherUsersPathToFolder]; - if (otherUsersPath) - { - url = [NSString stringWithFormat: @"%@/0%@", - [self soURLToBaseContainerForUser: uid], - otherUsersPath]; - } - else - url = nil; - - return url; -} - -- (NSString *) resourceURLForAdvisoryToUser: (NSString *) uid -{ - NSURL *selfURL, *userURL; - - selfURL = [self imap4URL]; - userURL = [[NSURL alloc] initWithScheme: [selfURL scheme] - host: [selfURL host] - path: [self otherUsersPathToFolder]]; - [userURL autorelease]; - - return [userURL absoluteString]; -} - -- (NSString *) userSpoolFolderPath -{ - NSString *login, *mailSpoolPath; - SOGoUser *currentUser; - - currentUser = [context activeUser]; - login = [currentUser login]; - mailSpoolPath = [[currentUser domainDefaults] mailSpoolPath]; - - return [NSString stringWithFormat: @"%@/%@", - mailSpoolPath, login]; -} - -- (BOOL) ensureSpoolFolderPath -{ - NSFileManager *fm; - - fm = [NSFileManager defaultManager]; - - return ([fm createDirectoriesAtPath: [self userSpoolFolderPath] - attributes: nil]); -} - -- (NSString *) displayName -{ - return [self relativeImap4Name]; -} - -- (NSDictionary *) davIMAPFieldsTable -{ - static NSMutableDictionary *davIMAPFieldsTable = nil; - - if (!davIMAPFieldsTable) - { - davIMAPFieldsTable = [NSMutableDictionary new]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (DATE)]" - forKey: @"{urn:schemas:httpmail:}date"]; - [davIMAPFieldsTable setObject: @"" - forKey: @"{urn:schemas:httpmail:}hasattachment"]; - [davIMAPFieldsTable setObject: @"" - forKey: @"{urn:schemas:httpmail:}read"]; - [davIMAPFieldsTable setObject: @"BODY" - forKey: @"{urn:schemas:httpmail:}textdescription"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (CC)]" - forKey: @"{urn:schemas:mailheader:}cc"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (DATE)]" - forKey: @"{urn:schemas:mailheader:}date"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (FROM)]" - forKey: @"{urn:schemas:mailheader:}from"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (INREPLYTO)]" - forKey: @"{urn:schemas:mailheader:}in-reply-to"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (MESSAGEID)]" - forKey: @"{urn:schemas:mailheader:}message-id"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (RECEIVED)]" - forKey: @"{urn:schemas:mailheader:}received"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (REFERENCES)]" - forKey: @"{urn:schemas:mailheader:}references"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (SUBJECT)]" - forKey: @"{DAV:}displayname"]; - [davIMAPFieldsTable setObject: @"BODY[HEADER.FIELDS (TO)]" - forKey: @"{urn:schemas:mailheader:}to"]; - } - - return davIMAPFieldsTable; -} - -- (BOOL) _sortElementIsAscending: (NGDOMNodeWithChildren *) sortElement -{ - NSString *davReverseAttr; - BOOL orderIsAscending; - - orderIsAscending = YES; - - davReverseAttr = [sortElement attribute: @"order"]; - if ([davReverseAttr isEqualToString: @"descending"]) - orderIsAscending = NO; - else if ([davReverseAttr length] - && ![davReverseAttr isEqualToString: @"ascending"]) - [self errorWithFormat: @"unrecognized sort order: '%@'", - davReverseAttr]; - - return orderIsAscending; -} - -- (NSArray *) _sortOrderingsFromSortElement: (NGDOMNodeWithChildren *) sortElement -{ - static NSMutableDictionary *criteriasMap = nil; - NSArray *davSortCriterias; - NSMutableArray *sortOrderings; - SEL sortOrderingOrder; - NSString *davSortVerb, *imapSortVerb; - EOSortOrdering *currentOrdering; - int count, max; - - if (!criteriasMap) - { - criteriasMap = [NSMutableDictionary new]; - [criteriasMap setObject: @"ARRIVAL" - forKey: @"{urn:schemas:mailheader:}received"]; - [criteriasMap setObject: @"DATE" - forKey: @"{urn:schemas:mailheader:}date"]; - [criteriasMap setObject: @"FROM" - forKey: @"{urn:schemas:mailheader:}from"]; - [criteriasMap setObject: @"TO" - forKey: @"{urn:schemas:mailheader:}to"]; - [criteriasMap setObject: @"CC" - forKey: @"{urn:schemas:mailheader:}cc"]; - [criteriasMap setObject: @"SUBJECT" - forKey: @"{DAV:}displayname"]; - [criteriasMap setObject: @"SUBJECT" - forKey: @"{urn:schemas:mailheader:}subject"]; - [criteriasMap setObject: @"SIZE" - forKey: @"{DAV:}getcontentlength"]; - } - - sortOrderings = [NSMutableArray array]; - - if ([self _sortElementIsAscending: sortElement]) - sortOrderingOrder = EOCompareAscending; - else - sortOrderingOrder = EOCompareDescending; - - davSortCriterias = [sortElement flatPropertyNameOfSubElements]; - max = [davSortCriterias count]; - for (count = 0; count < max; count++) - { - davSortVerb = [davSortCriterias objectAtIndex : count]; - imapSortVerb = [criteriasMap objectForKey: davSortVerb]; - if (imapSortVerb) - { - currentOrdering - = [EOSortOrdering sortOrderingWithKey: imapSortVerb - selector: sortOrderingOrder]; - [sortOrderings addObject: currentOrdering]; - } - else - [self errorWithFormat: @"unrecognized sort key: '%@'", davSortVerb]; - } - - return sortOrderings; -} - -- (NSArray *) _fetchMessageProperties: (NSArray *) properties - matchingQualifier: (EOQualifier *) searchQualifier - andSortOrderings: (NSArray *) sortOrderings -{ - NGImap4Client *client; - NSDictionary *response; - NSArray *messages, *values = nil; - NSString *resultKey; - - client = [[self imap4Connection] client]; - [imap4 selectFolder: [self imap4URL]]; - - if ([sortOrderings count]) - { - response = [client sort: sortOrderings qualifier: searchQualifier - encoding: @"UTF-8"]; - resultKey = @"sort"; - } - else - { - response = [client searchWithQualifier: searchQualifier]; - resultKey = @"search"; - } - - if ([[response objectForKey: @"result"] boolValue]) - { - messages = [response objectForKey: resultKey]; - if ([messages count] > 0) - { - response = [client fetchUids: messages parts: properties]; - values = [response objectForKey: @"fetch"]; - } - } - - return values; -} - -- (NSArray *) _davPropstatsWithProperties: (NSArray *) davProperties - andMethodSelectors: (SEL *) selectors - fromMessage: (NSString *) messageId -{ - SOGoMailObject *message; - unsigned int count, max; - NSMutableArray *properties200, *properties404, *propstats; - NSDictionary *propContent; - NSString *messageUrl; - id result; - - propstats = [NSMutableArray arrayWithCapacity: 2]; - - max = [davProperties count]; - properties200 = [NSMutableArray arrayWithCapacity: max]; - properties404 = [NSMutableArray arrayWithCapacity: max]; - - message = [self lookupName: messageId - inContext: context - acquire: NO]; - for (count = 0; count < max; count++) - { - if (selectors[count] - && [message respondsToSelector: selectors[count]]) - result = [message performSelector: selectors[count]]; - else - result = nil; - - if (result) - { - propContent = [[davProperties objectAtIndex: count] - asWebDAVTupleWithContent: result]; - [properties200 addObject: propContent]; - } - else - { - propContent = [[davProperties objectAtIndex: count] - asWebDAVTuple]; - [properties404 addObject: propContent]; - } - } - - messageUrl = [NSString stringWithFormat: @"%@%@.eml", - [self davURL], messageId]; - [propstats addObject: davElementWithContent (@"href", XMLNS_WEBDAV, - messageUrl)]; - - if ([properties200 count]) - [propstats addObject: [properties200 - asDAVPropstatWithStatus: @"HTTP/1.1 200 OK"]]; - if ([properties404 count]) - [propstats addObject: [properties404 - asDAVPropstatWithStatus: @"HTTP/1.1 404 Not Found"]]; - - return propstats; -} - -- (void) _appendProperties: (NSArray *) properties - fromMessages: (NSArray *) messages - toResponse: (WOResponse *) response -{ - NSDictionary *davElement; - NSArray *propstats; - NSMutableArray *all; - NSString *message, *davString; - SEL *selectors; - int max, count; - - max = [properties count]; - selectors = NSZoneMalloc (NULL, sizeof (max * sizeof (SEL))); - - for (count = 0; count < max; count++) - selectors[count] - = SOGoSelectorForPropertyGetter ([properties objectAtIndex: count]); - - max = [messages count]; - all = [NSMutableArray array]; - for (count = 0; count < max; count++) - { - message = [[messages objectAtIndex: count] stringValue]; - propstats = [self _davPropstatsWithProperties: properties - andMethodSelectors: selectors - fromMessage: message]; - davElement = davElementWithContent (@"response", XMLNS_WEBDAV, - propstats); - - [all addObject: davElement]; - } - - davString = [davElementWithContent (@"multistatus", XMLNS_WEBDAV, all) - asWebDavStringWithNamespaces: nil]; - [response appendContentString: davString]; - NSZoneFree (NULL, selectors); -} - -- (NSDictionary *) _davIMAPFieldsForProperties: (NSArray *) properties -{ - NSMutableDictionary *davIMAPFields; - NSDictionary *davIMAPFieldsTable; - NSString *imapField, *property; - unsigned int count, max; - - davIMAPFieldsTable = [self davIMAPFieldsTable]; - - max = [properties count]; - davIMAPFields = [NSMutableDictionary dictionaryWithCapacity: max]; - for (count = 0; count < max; count++) - { - property = [properties objectAtIndex: count]; - imapField = [davIMAPFieldsTable objectForKey: property]; - if (imapField) - [davIMAPFields setObject: imapField forKey: property]; - else - [self errorWithFormat: @"DAV property '%@' has no matching IMAP field," - @" response could be incomplete", property]; - } - - return davIMAPFields; -} - -- (NSDictionary *) parseDAVRequestedProperties: (NGDOMNodeWithChildren *) propElement -{ - NSArray *properties; - NSDictionary *imapFieldsTable; - - properties = [propElement flatPropertyNameOfSubElements]; - imapFieldsTable = [self _davIMAPFieldsForProperties: properties]; - - return imapFieldsTable; -} - -/* TODO: - - populate only required keys in returned SOGoMailObject rather that - fetching the whole envelope and stuff - - use EOSortOrdering rather than an NSString - */ -- (id) davMailQuery: (id) queryContext -{ - WOResponse *r; - id document; - id filterElement; - NGDOMNodeWithChildren *documentElement, *propElement, *sortElement; - NSDictionary *properties; - NSArray *messages, *sortOrderings; - EOQualifier *searchQualifier; - - r = [context response]; - [r prepareDAVResponse]; - - document = [[context request] contentAsDOMDocument]; - documentElement = [document documentElement]; - - propElement = (NGDOMNodeWithChildren *) [documentElement - firstElementWithTag: @"prop" - inNamespace: XMLNS_WEBDAV]; - properties = [self parseDAVRequestedProperties: propElement]; - filterElement = [documentElement firstElementWithTag: @"mail-filters" - inNamespace: XMLNS_INVERSEDAV]; - searchQualifier = [EOQualifier - qualifierFromMailDAVMailFilters: filterElement]; - sortElement = (NGDOMNodeWithChildren *) [documentElement - firstElementWithTag: @"sort" - inNamespace: XMLNS_INVERSEDAV]; - sortOrderings = [self _sortOrderingsFromSortElement: sortElement]; - - messages = [self _fetchMessageProperties: [properties allKeys] - matchingQualifier: searchQualifier - andSortOrderings: sortOrderings]; - [self _appendProperties: [properties allKeys] - fromMessages: messages - toResponse: r]; - - return r; -} - -- (NSException *) _appendMessageData: (NSData *) data - usingId: (int *) imap4id; -{ - NGImap4Client *client; - NSString *folderName; - NSException *error; - id result; - - error = nil; - client = [imap4 client]; - - folderName = [imap4 imap4FolderNameForURL: [self imap4URL]]; - result = [client append: data toFolder: folderName withFlags: nil]; - - if ([[result objectForKey: @"result"] boolValue]) - { - if (imap4id) - *imap4id = [self IMAP4IDFromAppendResult: result]; - } - else - error = [NSException exceptionWithHTTPStatus: 500 /* Server Error */ - reason: @"Failed to store message"]; - - return error; -} - -- (id) appendMessage: (NSData *) message - usingId: (int *) imap4id -{ - NSException *error; - WOResponse *response; - NSString *location; - - error = [self _appendMessageData: message - usingId: imap4id]; - if (error) - response = (WOResponse *) error; - else - { - response = [context response]; - [response setStatus: 201]; - location = [NSString stringWithFormat: @"%@%d.eml", - [self davURL], *imap4id]; - [response setHeader: location forKey: @"location"]; - } - - return response; -} - -- (id) PUTAction: (WOContext *) _ctx -{ - WORequest *rq; - NSException *error; - WOResponse *response; - int imap4id; - - error = [self matchesRequestConditionInContext: _ctx]; - if (error) - response = (WOResponse *) error; - else - { - rq = [_ctx request]; - response = [self appendMessage: [rq content] - usingId: &imap4id]; - } - - return response; -} - -- (NSCalendarDate *) mostRecentMessageDate -{ - NSArray *values; - NSCalendarDate *date = nil; - - values = [self _fetchMessageProperties: [NSArray arrayWithObject: @"ENVELOPE"] - matchingQualifier: nil - andSortOrderings: [NSArray arrayWithObject: @"REVERSE DATE"]]; - if ([values count] > 0) - date = [[[values objectAtIndex: 0] objectForKey: @"envelope"] date]; - - return date; -} - -@end /* SOGoMailFolder */ - -@implementation SOGoSpecialMailFolder - -- (BOOL) isSpecialFolder -{ - return YES; -} - -@end From 9218c7f253ae94e3b5cfc960b28612c764aec671 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 08:46:05 -0500 Subject: [PATCH 195/214] Added missing recurrences support, improved MeetingResponse, added WindowSize support. Also more bug fixes regarding event invitations, and ServerId handling for calendar objects. --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 131 +++++++++++--- ActiveSync/SOGoActiveSyncDispatcher.m | 131 +++++++++----- ActiveSync/SOGoMailObject+ActiveSync.m | 198 ++++++++++++++------- ActiveSync/iCalEvent+ActiveSync.m | 32 ++-- ActiveSync/iCalRecurrenceRule+ActiveSync.m | 125 ++++++++++++- ActiveSync/iCalTimeZone+ActiveSync.m | 4 +- 6 files changed, 466 insertions(+), 155 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 1fe7660886..060a6ee8c3 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -49,6 +49,7 @@ #import #import #import +#import #import #import @@ -89,6 +90,7 @@ #import #import +#import #import #import @@ -187,20 +189,20 @@ - (void) processSyncAddCommand: (id ) theDocumentElement // invitation email and choses "Add to calendar" BEFORE actually syncing the calendar. That would // create a duplicate on the server. if ([allValues objectForKey: @"UID"]) - serverId = [NSString stringWithFormat: @"%@.ics", [allValues objectForKey: @"UID"]]; + serverId = [allValues objectForKey: @"UID"]; else - serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; + serverId = [theCollection globallyUniqueObjectId]; [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; - sogoObject = [theCollection lookupName: serverId + sogoObject = [theCollection lookupName: [serverId sanitizedServerIdWithType: theFolderType] inContext: context acquire: NO]; // If object isn't found, we 'create' a new one if ([sogoObject isKindOfClass: [NSException class]]) { - sogoObject = [[SOGoAppointmentObject alloc] initWithName: serverId + sogoObject = [[SOGoAppointmentObject alloc] initWithName: [serverId sanitizedServerIdWithType: theFolderType] inContainer: theCollection]; o = [sogoObject component: YES secure: NO]; } @@ -224,7 +226,9 @@ - (void) processSyncAddCommand: (id ) theDocumentElement default: { // FIXME - continue; + //continue; + NSLog(@"BLARG!"); + abort(); } } @@ -302,7 +306,7 @@ - (void) processSyncChangeCommand: (id ) theDocumentElement allChanges = [[(id)[aChange getElementsByTagName: @"ApplicationData"] lastObject] applicationData]; // Fetch the object and apply the changes - sogoObject = [theCollection lookupName: serverId + sogoObject = [theCollection lookupName: [serverId sanitizedServerIdWithType: theFolderType] inContext: context acquire: NO]; @@ -387,7 +391,7 @@ - (void) processSyncDeleteCommand: (id ) theDocumentElement serverId = [[(id)[aDelete getElementsByTagName: @"ServerId"] lastObject] textValue]; - sogoObject = [theCollection lookupName: serverId + sogoObject = [theCollection lookupName: [serverId sanitizedServerIdWithType: theFolderType] inContext: context acquire: NO]; @@ -412,7 +416,7 @@ - (void) processSyncFetchCommand: (id ) theDocumentElement serverId = [[(id)[theDocumentElement getElementsByTagName: @"ServerId"] lastObject] textValue]; - o = [theCollection lookupName: serverId + o = [theCollection lookupName: [serverId sanitizedServerIdWithType: theFolderType] inContext: context acquire: NO]; @@ -432,13 +436,18 @@ - (void) processSyncFetchCommand: (id ) theDocumentElement // - (void) processSyncGetChanges: (id ) theDocumentElement inCollection: (id) theCollection + withWindowSize: (unsigned int) theWindowSize withSyncKey: (NSString *) theSyncKey withFolderType: (SOGoMicrosoftActiveSyncFolderType) theFolderType withFilterType: (NSCalendarDate *) theFilterType inBuffer: (NSMutableString *) theBuffer + lastServerKey: (NSString **) theLastServerKey + { NSMutableString *s; - int i; + + BOOL more_available; + int i, max; // // No changes in the collection - 2.2.2.19.1.1 Empty Sync Request. @@ -448,7 +457,8 @@ - (void) processSyncGetChanges: (id ) theDocumentElement return; s = [NSMutableString string]; - + more_available = NO; + switch (theFolderType) { // Handle all the GCS components @@ -473,7 +483,17 @@ - (void) processSyncGetChanges: (id ) theDocumentElement allComponents = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey fromDate: theFilterType]; - for (i = 0; i < [allComponents count]; i++) + // Check for the WindowSize + max = [allComponents count]; + + // Disabled for now for GCS folders. + // if (max > theWindowSize) + // { + // max = theWindowSize; + // more_available = YES; + // } + + for (i = 0; i < max; i++) { component = [allComponents objectAtIndex: i]; deleted = [[component objectForKey: @"c_deleted"] intValue]; @@ -481,7 +501,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement if (!deleted && ![[component objectForKey: @"c_component"] isEqualToString: component_name]) continue; - uid = [component objectForKey: @"c_name"]; + uid = [[component objectForKey: @"c_name"] sanitizedServerIdWithType: theFolderType]; if (deleted) { @@ -496,6 +516,41 @@ - (void) processSyncGetChanges: (id ) theDocumentElement if ([[component objectForKey: @"c_creationdate"] intValue] > [theSyncKey intValue]) updated = NO; + sogoObject = [theCollection lookupName: [uid sanitizedServerIdWithType: theFolderType] + inContext: context + acquire: 0]; + + if (theFolderType == ActiveSyncContactFolder) + componentObject = [sogoObject vCard]; + else + componentObject = [sogoObject component: NO secure: NO]; + + + // + // We do NOT synchronize NEW events that are in fact, invitations + // to events. This is due to the fact that Outlook 2013 creates + // "phantom" events in the calendar that are mapped to invitations mails. + // If we synchronize these events too, it'll interfere with the whole thing + // and prevent Outlook from properly calling MeetingResponse. + // + if (!updated && theFolderType == ActiveSyncEventFolder) + { + iCalPersonPartStat partstat; + iCalPerson *attendee; + NSString *email; + + email = [[[context activeUser] allEmails] objectAtIndex: 0]; + attendee = [componentObject findAttendeeWithEmail: email]; + + if (attendee) + { + partstat = [attendee participationStatus]; + + if (partstat == iCalPersonPartStatNeedsAction) + continue; + } + } + if (updated) [s appendString: @""]; else @@ -504,15 +559,6 @@ - (void) processSyncGetChanges: (id ) theDocumentElement [s appendFormat: @"%@", uid]; [s appendString: @""]; - sogoObject = [theCollection lookupName: uid - inContext: context - acquire: 0]; - - if (theFolderType == ActiveSyncContactFolder) - componentObject = [sogoObject vCard]; - else - componentObject = [sogoObject component: NO secure: NO]; - [s appendString: [componentObject activeSyncRepresentation]]; [s appendString: @""]; @@ -535,7 +581,18 @@ - (void) processSyncGetChanges: (id ) theDocumentElement allMessages = [theCollection syncTokenFieldsWithProperties: nil matchingSyncToken: theSyncKey fromDate: theFilterType]; - for (i = 0; i < [allMessages count]; i++) + // Check for the WindowSize. + // FIXME: we should eventually check for modseq and slice the maximum + // amount of messages returned to ensure we don't have the same + // modseq accross contiguous boundaries + max = [allMessages count]; + if (max > theWindowSize) + { + max = theWindowSize; + more_available = YES; + } + + for (i = 0; i < max; i++) { aMessage = [allMessages objectAtIndex: i]; @@ -571,6 +628,12 @@ - (void) processSyncGetChanges: (id ) theDocumentElement } } + + // + if (more_available) + { + *theLastServerKey = uid; + } } break; } // switch (folderType) ... @@ -580,6 +643,9 @@ - (void) processSyncGetChanges: (id ) theDocumentElement [theBuffer appendString: @""]; [theBuffer appendString: s]; [theBuffer appendString: @""]; + + if (more_available) + [theBuffer appendString: @""]; } } @@ -663,12 +729,13 @@ - (void) processSyncCollection: (id ) theDocumentElement inBuffer: (NSMutableString *) theBuffer changeDetected: (BOOL *) changeDetected { - NSString *collectionId, *realCollectionId, *syncKey, *davCollectionTag, *bodyPreferenceType; + NSString *collectionId, *realCollectionId, *syncKey, *davCollectionTag, *bodyPreferenceType, *lastServerKey; SOGoMicrosoftActiveSyncFolderType folderType; id collection, value; NSMutableString *changeBuffer, *commandsBuffer; BOOL getChanges, first_sync; + unsigned int windowSize; changeBuffer = [NSMutableString string]; commandsBuffer = [NSMutableString string]; @@ -679,6 +746,14 @@ - (void) processSyncCollection: (id ) theDocumentElement syncKey = davCollectionTag = [[(id)[theDocumentElement getElementsByTagName: @"SyncKey"] lastObject] textValue]; + // We check for a window size, default to 100 if not specfied or out of bounds + windowSize = [[[(id)[theDocumentElement getElementsByTagName: @"WindowSize"] lastObject] textValue] intValue]; + + if (windowSize == 0 || windowSize > 512) + windowSize = 100; + + lastServerKey = nil; + // From the documention, if GetChanges is missing, we must assume it's a YES. // See http://msdn.microsoft.com/en-us/library/gg675447(v=exchg.80).aspx for all details. value = [theDocumentElement getElementsByTagName: @"GetChanges"]; @@ -712,10 +787,12 @@ - (void) processSyncCollection: (id ) theDocumentElement { [self processSyncGetChanges: theDocumentElement inCollection: collection + withWindowSize: windowSize withSyncKey: syncKey withFolderType: folderType withFilterType: [NSCalendarDate dateFromFilterType: [[(id)[theDocumentElement getElementsByTagName: @"FilterType"] lastObject] textValue]] - inBuffer: changeBuffer]; + inBuffer: changeBuffer + lastServerKey: &lastServerKey]; } // @@ -745,7 +822,11 @@ - (void) processSyncCollection: (id ) theDocumentElement // let's regenerate our SyncKey based on the collection tag. if ([changeBuffer length] || [commandsBuffer length]) { - davCollectionTag = [collection davCollectionTag]; + if (lastServerKey) + davCollectionTag = [collection davCollectionTagFromId: lastServerKey]; + else + davCollectionTag = [collection davCollectionTag]; + *changeDetected = YES; } diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 0b4e7bfa2d..991ff13273 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -702,7 +702,7 @@ - (void) processItemOperations: (id ) theDocumentElement [s appendString: @""]; [s appendFormat: @"%@/%@", [[currentBodyPart partInfo] objectForKey: @"type"], [[currentBodyPart partInfo] objectForKey: @"subtype"]]; - [s appendFormat: @"%@", [[[currentBodyPart fetchBLOB] stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]]; + [s appendFormat: @"%@", [[currentBodyPart fetchBLOB] activeSyncRepresentation]]; [s appendString: @""]; [s appendString: @""]; @@ -735,7 +735,8 @@ - (void) processItemOperations: (id ) theDocumentElement - (void) processMeetingResponse: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { - NSString *realCollectionId, *requestId, *participationStatus; + NSString *realCollectionId, *requestId, *participationStatus, *calendarId; + SOGoAppointmentObject *appointmentObject; SOGoMailObject *mailObject; NSMutableString *s; NSData *d; @@ -750,34 +751,75 @@ - (void) processMeetingResponse: (id ) theDocumentElement status = 1; realCollectionId = [[[(id)[theDocumentElement getElementsByTagName: @"CollectionId"] lastObject] textValue] realCollectionIdWithFolderType: &folderType]; - collection = [self collectionFromId: realCollectionId type: ActiveSyncMailFolder]; - - // 1 -> accepted, 2 -> tentative, 3 -> declined userResponse = [[[(id)[theDocumentElement getElementsByTagName: @"UserResponse"] lastObject] textValue] intValue]; - requestId = [[(id)[theDocumentElement getElementsByTagName: @"RequestId"] lastObject] textValue]; - - // - // We fetch the calendar information based on the email (requestId) in the user's INBOX (or elsewhere) + requestId = [[(id)[theDocumentElement getElementsByTagName: @"RequestId"] lastObject] textValue]; + appointmentObject = nil; + calendarId = nil; + + // Outlook 2013 calls MeetingResponse on the calendar folder! We have + // no way of handling as we can't retrieve the email (using the id found + // in requestId) in any mail folder! If that happens, let's simply + // assume it comes from the INBOX. This should be generally safe as people + // will answer email invitations as they receive them on their INBOX. + // Note that the mail should also still be there as MeetingResponse is + // called *before* MoveItems. // - // FIXME: that won't work too well for external invitations... - mailObject = [collection lookupName: requestId - inContext: context - acquire: 0]; - - if (![mailObject isKindOfClass: [NSException class]]) + // Apple iOS will also call MeetingResponse on the calendar folder when the + // user accepts/declines the meeting from the Calendar application. Before + // falling back on INBOX, we first check if we can find the event in the + // personal calendar. + if (folderType == ActiveSyncEventFolder) { - SOGoAppointmentObject *appointmentObject; - iCalCalendar *calendar; - iCalEvent *event; - - calendar = [mailObject calendarFromIMIPMessage]; - event = [[calendar events] lastObject]; - - // Fetch the SOGoAppointmentObject collection = [[context activeUser] personalCalendarFolderInContext: context]; - appointmentObject = [collection lookupName: [NSString stringWithFormat: @"%@.ics", [event uid]] + appointmentObject = [collection lookupName: [requestId sanitizedServerIdWithType: ActiveSyncEventFolder] inContext: context acquire: NO]; + calendarId = requestId; + + // Object not found, let's fallback on the INBOX folder + if ([appointmentObject isKindOfClass: [NSException class]]) + { + folderType = ActiveSyncMailFolder; + realCollectionId = @"INBOX"; + appointmentObject = nil; + } + } + + // Fetch the appointment object from the mail message + if (!appointmentObject) + { + collection = [self collectionFromId: realCollectionId type: folderType]; + + // + // We fetch the calendar information based on the email (requestId) in the user's INBOX (or elsewhere) + // + // FIXME: that won't work too well for external invitations... + mailObject = [collection lookupName: requestId + inContext: context + acquire: 0]; + + if (![mailObject isKindOfClass: [NSException class]]) + { + iCalCalendar *calendar; + iCalEvent *event; + + calendar = [mailObject calendarFromIMIPMessage]; + event = [[calendar events] lastObject]; + calendarId = [event uid]; + + // Fetch the SOGoAppointmentObject + collection = [[context activeUser] personalCalendarFolderInContext: context]; + appointmentObject = [collection lookupName: [NSString stringWithFormat: @"%@.ics", [event uid]] + inContext: context + acquire: NO]; + } + } + + if (appointmentObject && + calendarId && + (![appointmentObject isKindOfClass: [NSException class]])) + { + // 1 -> accepted, 2 -> tentative, 3 -> declined if (userResponse == 1) participationStatus = @"ACCEPTED"; else if (userResponse == 2) @@ -785,29 +827,22 @@ - (void) processMeetingResponse: (id ) theDocumentElement else participationStatus = @"DECLINED"; - if (![appointmentObject isKindOfClass: [NSException class]]) - { - [appointmentObject changeParticipationStatus: participationStatus - withDelegate: nil]; - - [s appendString: @""]; - [s appendString: @""]; - [s appendString: @""]; - [s appendString: @""]; - [s appendFormat: @"%@", requestId]; - [s appendFormat: @"%@", [event uid]]; - [s appendFormat: @"%d", status]; - [s appendString: @""]; - [s appendString: @""]; - - d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; - - [theResponse setContent: d]; - } - else - { - [theResponse setStatus: 500]; - } + [appointmentObject changeParticipationStatus: participationStatus + withDelegate: nil]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", requestId]; + [s appendFormat: @"%@", calendarId]; + [s appendFormat: @"%d", status]; + [s appendString: @""]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; } else { @@ -1042,7 +1077,7 @@ - (void) processResolveRecipients: (id ) theDocumentElement [s appendString: @""]; [s appendFormat: @"%d", 1]; [s appendFormat: @"%@", [user cn]]; - [s appendFormat: @"%@", [user systemEmail]]; + [s appendFormat: @"%@", [[user allEmails] objectAtIndex: 0]]; // Freebusy structure: http://msdn.microsoft.com/en-us/library/gg663493(v=exchg.80).aspx [s appendString: @""]; diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 5e1c702099..aaed77ea54 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -32,6 +32,7 @@ #import #import #import +#import #import #import @@ -48,9 +49,11 @@ #import #include "iCalTimeZone+ActiveSync.h" +#include "NSData+ActiveSync.h" #include "NSDate+ActiveSync.h" #include "NSString+ActiveSync.h" +#include "../SoObjects/Appointments/iCalPerson+SOGo.h" #include "../SoObjects/Mailer/NSString+Mail.h" #include "../SoObjects/Mailer/SOGoMailBodyPart.h" @@ -133,39 +136,37 @@ - (NSData *) _computeGlobalObjectIdFromEvent: (iCalEvent *) event // // For debugging purposes... // -// - (NSString *) _uidFromGlobalObjectId: (NSData *) objectId -// { -// NSString *uid; - -// struct GlobalObjectId *newGlobalId; -// NSUInteger length; -// uint8_t *bytes; +- (NSString *) _uidFromGlobalObjectId: (NSData *) objectId +{ + NSString *uid; -// length = [objectId length]; -// uid = nil; + struct GlobalObjectId *newGlobalId; + NSUInteger length; + uint8_t *bytes; -// bytes = malloc(length*sizeof(uint8_t)); -// [objectId getBytes: bytes length: length]; + length = [objectId length]; + uid = nil; -// newGlobalId = (struct GlobalObjectId *)bytes; + bytes = malloc(length*sizeof(uint8_t)); + [objectId getBytes: bytes length: length]; -// // We must take the offset (dataPrefix) into account -// uid = [[NSString alloc] initWithBytes: newGlobalId->Data+12 length: newGlobalId->Size-12 encoding: NSASCIIStringEncoding]; -// free(bytes); + newGlobalId = (struct GlobalObjectId *)bytes; -// return AUTORELEASE(uid); -// } + // We must take the offset (dataPrefix) into account + uid = [[NSString alloc] initWithBytes: newGlobalId->Data+12 length: newGlobalId->Size-12 encoding: NSASCIIStringEncoding]; + free(bytes); + return AUTORELEASE(uid); +} // // // - (NSString *) _emailAddressesFrom: (NSArray *) enveloppeAddresses { - NSMutableArray *addresses; - NSString *rc; NGImap4EnvelopeAddress *address; - NSString *email; + NSMutableArray *addresses; + NSString *email, *rc; int i, max; rc = nil; @@ -177,7 +178,7 @@ - (NSString *) _emailAddressesFrom: (NSArray *) enveloppeAddresses for (i = 0; i < max; i++) { address = [enveloppeAddresses objectAtIndex: i]; - email = [address email]; + email = [NSString stringWithFormat: @"\"%@\" <%@>", [address personalName], [address baseEMail]]; if (email) [addresses addObject: email]; @@ -317,10 +318,19 @@ - (iCalCalendar *) calendarFromIMIPMessage if (bodyPart) { + iCalCalendar *calendar; NSData *calendarData; calendarData = [bodyPart fetchBLOB]; - return [iCalCalendar parseSingleFromSource: calendarData]; + calendar = nil; + + NS_DURING + calendar = [iCalCalendar parseSingleFromSource: calendarData]; + NS_HANDLER + calendar = nil; + NS_ENDHANDLER + + return calendar; } } } @@ -344,25 +354,17 @@ - (NSString *) activeSyncRepresentation s = [NSMutableString string]; - // From - value = [self _emailAddressesFrom: [[self envelope] from]]; - if (value) - [s appendFormat: @"%@", [value activeSyncRepresentation]]; - // To - "The value of this element contains one or more e-mail addresses. // If there are multiple e-mail addresses, they are separated by commas." value = [self _emailAddressesFrom: [[self envelope] to]]; if (value) [s appendFormat: @"%@", [value activeSyncRepresentation]]; - - // DisplayTo - [s appendFormat: @"\"%@\"", [[context activeUser] login]]; - // Cc - same syntax as the To field - value = [self _emailAddressesFrom: [[self envelope] cc]]; + // From + value = [self _emailAddressesFrom: [[self envelope] from]]; if (value) - [s appendFormat: @"%@", [value activeSyncRepresentation]]; - + [s appendFormat: @"%@", [value activeSyncRepresentation]]; + // Subject value = [self decodedSubject]; if (value) @@ -370,11 +372,19 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%@", [value activeSyncRepresentation]]; [s appendFormat: @"%@", [value activeSyncRepresentation]]; } - + // DateReceived value = [self date]; if (value) [s appendFormat: @"%@", [value activeSyncRepresentationWithoutSeparators]]; + + // DisplayTo + [s appendFormat: @"%@", [[context activeUser] login]]; + + // Cc - same syntax as the To field + value = [self _emailAddressesFrom: [[self envelope] cc]]; + if (value) + [s appendFormat: @"%@", [value activeSyncRepresentation]]; // Importance - FIXME [s appendFormat: @"%@", @"1"]; @@ -382,47 +392,84 @@ - (NSString *) activeSyncRepresentation // Read [s appendFormat: @"%d", ([self read] ? 1 : 0)]; - // We handle MeetingRequest calendar = [self calendarFromIMIPMessage]; if (calendar) { + NSString *method, *className; + iCalPerson *attendee; iCalTimeZone *tz; iCalEvent *event; + + iCalPersonPartStat partstat; int v; event = [[calendar events] lastObject]; + method = [[event parent] method]; + + attendee = [event findAttendeeWithEmail: [[[context activeUser] allEmails] objectAtIndex: 0]]; + partstat = [attendee participationStatus]; + + // We generate the correct MessageClass + if ([method isEqualToString: @"REQUEST"]) + className = @"IPM.Schedule.Meeting.Request"; + else if ([method isEqualToString: @"REPLY"]) + { + switch (partstat) + { + case iCalPersonPartStatAccepted: + className = @"IPM.Schedule.Meeting.Resp.Pos"; + break; + case iCalPersonPartStatDeclined: + className = @"IPM.Schedule.Meeting.Resp.Neg"; + break; + case iCalPersonPartStatTentative: + className = @"IPM.Schedule.Meeting.Resp.Tent"; + break; + default: + className = @"IPM.Appointment"; + NSLog(@"unhandled part stat"); + } + } + else if ([method isEqualToString: @"COUNTER"]) + className = @"IPM.Schedule.Meeting.Resp.Tent"; + else if ([method isEqualToString: @"CANCEL"]) + className = @"IPM.Schedule.Meeting.Cancelled"; + else + className = @"IPM.Appointment"; + + [s appendFormat: @"%@", className]; [s appendString: @""]; [s appendFormat: @"%d", ([event isAllDay] ? 1 : 0)]; + + // StartTime -- http://msdn.microsoft.com/en-us/library/ee157132(v=exchg.80).aspx + if ([event startDate]) + [s appendFormat: @"%@", [[event startDate] activeSyncRepresentationWithoutSeparators]]; if ([event timeStampAsDate]) [s appendFormat: @"%@", [[event timeStampAsDate] activeSyncRepresentationWithoutSeparators]]; else if ([event created]) [s appendFormat: @"%@", [[event created] activeSyncRepresentationWithoutSeparators]]; - // StartTime -- http://msdn.microsoft.com/en-us/library/ee157132(v=exchg.80).aspx - if ([event startDate]) - [s appendFormat: @"%@", [[event startDate] activeSyncRepresentationWithoutSeparators]]; - // EndTime -- http://msdn.microsoft.com/en-us/library/ee157945(v=exchg.80).aspx if ([event endDate]) [s appendFormat: @"%@", [[event endDate] activeSyncRepresentationWithoutSeparators]]; - // Timezone - tz = [(iCalDateTime *)[event firstChildWithTag: @"dtstart"] timeZone]; - - if (!tz) - tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; - - [s appendFormat: @"%@", [[tz activeSyncRepresentation] stringByReplacingString: @"\n" withString: @""]];; - [s appendFormat: @"%d", 0]; - [s appendFormat: @"%@", [[event organizer] rfc822Email]]; - [s appendFormat: @"%d", 1]; - + + // Location + if ([[event location] length]) + [s appendFormat: @"%@", [[event location] activeSyncRepresentation]]; + + [s appendFormat: @"%@", [[[event organizer] mailAddress] activeSyncRepresentation]]; + + // This will trigger the SendMail command. We set it to no for email invitations as + // SOGo will send emails when MeetingResponse is called. + [s appendFormat: @"%d", 0]; + // Sensitivity if ([[event accessClass] isEqualToString: @"PRIVATE"]) v = 2; @@ -433,23 +480,33 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%d", v]; - // We disallow new time proposals - [s appendFormat: @"%d", 1]; + [s appendFormat: @"%d", 2]; - // We set the right message type - we must set AS version to 14.1 for this - //[s appendFormat: @"%d", 1]; + // Timezone + tz = [(iCalDateTime *)[event firstChildWithTag: @"dtstart"] timeZone]; + + if (!tz) + tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; + + [s appendFormat: @"%@", [tz activeSyncRepresentation]]; + + // We disallow new time proposals + [s appendFormat: @"%d", 1]; + // From http://blogs.msdn.com/b/exchangedev/archive/2011/07/22/working-with-meeting-requests-in-exchange-activesync.aspx: // // "Clients that need to determine whether the GlobalObjId element for a meeting request corresponds to an existing Calendar // object in the Calendar folder have to convert the GlobalObjId element value to a UID element value to make the comparison." // globalObjId = [self _computeGlobalObjectIdFromEvent: event]; - [s appendFormat: @"%@", [[globalObjId stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]]; - [s appendString: @""]; - - // MesssageClass and ContentClass - [s appendFormat: @"%@", @"IPM.Schedule.Meeting.Request"]; + [s appendFormat: @"%@", [globalObjId activeSyncRepresentation]]; + + // We set the right message type - we must set AS version to 14.1 for this + [s appendFormat: @"%d", 1]; + [s appendString: @""]; + + // ContentClass [s appendFormat: @"%@", @"urn:content-classes:calendarmessage"]; } else @@ -476,19 +533,29 @@ - (NSString *) activeSyncRepresentation if (d) { NSString *content; - int len; - + int len, truncated; + content = [[NSString alloc] initWithData: d encoding: NSUTF8StringEncoding]; + + // FIXME: This is a hack. We should normally avoid doing this as we might get + // broken encodings. We should rather tell that the data was truncated and expect + // a ItemOperations call to download the whole base64 encoding multipart. + if (!content) + content = [[NSString alloc] initWithData: d encoding: NSISOLatin1StringEncoding]; + AUTORELEASE(content); - + content = [content activeSyncRepresentation]; + truncated = 0; + len = [content length]; [s appendString: @""]; [s appendFormat: @"%d", preferredBodyType]; [s appendFormat: @"%d", len]; [s appendFormat: @"%d", 0]; - [s appendFormat: @"%@", content]; + if (!truncated) + [s appendFormat: @"%@", content]; [s appendString: @""]; } @@ -555,8 +622,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues if ([o intValue]) [self addFlags: @"\\Flagged"]; else - [self removeFlags: @"\\Flagged"]; - + [self removeFlags: @"\\Flagged"]; } } diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index f9fc367b27..fbe6c564a8 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -63,6 +63,8 @@ - (NSString *) activeSyncRepresentation s = [NSMutableString string]; + [s appendFormat: @"%d", ([self isAllDay] ? 1 : 0)]; + // DTStamp -- http://msdn.microsoft.com/en-us/library/ee219470(v=exchg.80).aspx if ([self timeStampAsDate]) [s appendFormat: @"%@", [[self timeStampAsDate] activeSyncRepresentationWithoutSeparators]]; @@ -83,18 +85,31 @@ - (NSString *) activeSyncRepresentation if (!tz) tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; - [s appendFormat: @"%@", [[tz activeSyncRepresentation] stringByReplacingString: @"\n" withString: @""]];; + [s appendFormat: @"%@", [tz activeSyncRepresentation]]; - // Organizer + // Organizer and other invitations related properties if ((organizer = [self organizer])) { o = [organizer rfc822Email]; if ([o length]) - [s appendFormat: @"%@", o]; - - o = [organizer cn]; - if ([o length]) - [s appendFormat: @"%@", o]; + { + [s appendFormat: @"%@", o]; + + o = [organizer cn]; + if ([o length]) + [s appendFormat: @"%@", o]; + + + // This depends on the 'NEEDS-ACTION' parameter. + // This will trigger the SendMail command + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%d", 5]; + [s appendFormat: @"%d", 3]; + [s appendFormat: @"%d", 1]; + + // BusyStatus -- http://msdn.microsoft.com/en-us/library/ee202290(v=exchg.80).aspx + [s appendFormat: @"%d", 2]; + } } // Attendees @@ -168,9 +183,6 @@ - (NSString *) activeSyncRepresentation [s appendFormat: @"%d", v]; - // BusyStatus -- http://msdn.microsoft.com/en-us/library/ee202290(v=exchg.80).aspx - [s appendFormat: @"%d", 0]; - // Reminder -- http://msdn.microsoft.com/en-us/library/ee219691(v=exchg.80).aspx // TODO diff --git a/ActiveSync/iCalRecurrenceRule+ActiveSync.m b/ActiveSync/iCalRecurrenceRule+ActiveSync.m index f610360be1..002a9d0cb9 100644 --- a/ActiveSync/iCalRecurrenceRule+ActiveSync.m +++ b/ActiveSync/iCalRecurrenceRule+ActiveSync.m @@ -189,6 +189,55 @@ - (NSString *) activeSyncRepresentation return s; } +// +// +// +- (void) _setByDayFromValues: (NSDictionary *) theValues +{ + NSString *day; + id o; + + unsigned int day_of_week; + int i, week_of_month; + + o = [theValues objectForKey: @"Recurrence_DayOfWeek"]; + + // The documentation says WeekOfMonth must be between 1 and 5. The value + // 5 means "last week of month" + week_of_month = [[theValues objectForKey: @"Recurrence_WeekOfMonth"] intValue]; + + if (week_of_month > 4) + week_of_month = -1; + + // We find the correct day of the week + day_of_week = [o intValue]; + + for (i = 0; i < 7; i++) + { + if ((1< +#include "NSData+ActiveSync.h" + struct SYSTEMTIME { uint16_t wYear; uint16_t wMonth; @@ -157,7 +159,7 @@ - (NSString *) activeSyncRepresentation [bytes appendBytes: &stDaylightDate length: 16]; [bytes appendBytes: &lDaylightBias length: 4]; - return [bytes stringByEncodingBase64]; + return [bytes activeSyncRepresentation]; } @end From 8083b41092d672d620e3826e66717d974925403d Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 10:01:44 -0500 Subject: [PATCH 196/214] Added the context everywhere --- ActiveSync/NGVCard+ActiveSync.h | 6 ++- ActiveSync/NGVCard+ActiveSync.m | 45 +++++++++++----------- ActiveSync/NSData+ActiveSync.h | 3 +- ActiveSync/NSData+ActiveSync.m | 2 +- ActiveSync/NSDate+ActiveSync.h | 5 ++- ActiveSync/NSDate+ActiveSync.m | 4 +- ActiveSync/NSString+ActiveSync.h | 3 +- ActiveSync/NSString+ActiveSync.m | 2 +- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 19 ++++----- ActiveSync/SOGoActiveSyncDispatcher.m | 10 ++--- ActiveSync/SOGoMailObject+ActiveSync.h | 6 ++- ActiveSync/SOGoMailObject+ActiveSync.m | 35 +++++++++-------- ActiveSync/iCalEvent+ActiveSync.h | 6 ++- ActiveSync/iCalEvent+ActiveSync.m | 30 +++++++++------ ActiveSync/iCalRecurrenceRule+ActiveSync.h | 6 ++- ActiveSync/iCalRecurrenceRule+ActiveSync.m | 5 ++- ActiveSync/iCalTimeZone+ActiveSync.h | 3 +- ActiveSync/iCalTimeZone+ActiveSync.m | 4 +- ActiveSync/iCalToDo+ActiveSync.h | 6 ++- ActiveSync/iCalToDo+ActiveSync.m | 24 +++++++----- 20 files changed, 125 insertions(+), 99 deletions(-) diff --git a/ActiveSync/NGVCard+ActiveSync.h b/ActiveSync/NGVCard+ActiveSync.h index 18bcb1fc86..8c3d5d08a7 100644 --- a/ActiveSync/NGVCard+ActiveSync.h +++ b/ActiveSync/NGVCard+ActiveSync.h @@ -34,11 +34,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @class NSDictionary; @class NSString; +@class WOContext; @interface NGVCard (ActiveSync) -- (NSString *) activeSyncRepresentation; -- (void) takeActiveSyncValues: (NSDictionary *) theValues; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; +- (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context; @end diff --git a/ActiveSync/NGVCard+ActiveSync.m b/ActiveSync/NGVCard+ActiveSync.m index 5da482d020..8c9a421a09 100644 --- a/ActiveSync/NGVCard+ActiveSync.m +++ b/ActiveSync/NGVCard+ActiveSync.m @@ -45,7 +45,7 @@ @implementation NGVCard (ActiveSync) -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { CardElement *n, *homeAdr, *workAdr; NSArray *emails, *addresses; @@ -58,16 +58,16 @@ - (NSString *) activeSyncRepresentation n = [self n]; if ((o = [n flattenedValueAtIndex: 0 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [n flattenedValueAtIndex: 1 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self workCompany])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self title])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self preferredEMail])) [s appendFormat: @"%@", o]; @@ -88,19 +88,19 @@ - (NSString *) activeSyncRepresentation // Telephone numbers if ((o = [self workPhone]) && [o length]) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self homePhone]) && [o length]) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self fax]) && [o length]) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self mobile]) && [o length]) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [self pager]) && [o length]) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; // Home Address addresses = [self childrenWithTag: @"adr" @@ -112,19 +112,19 @@ - (NSString *) activeSyncRepresentation homeAdr = [addresses objectAtIndex: 0]; if ((o = [homeAdr flattenedValueAtIndex: 2 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [homeAdr flattenedValueAtIndex: 3 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [homeAdr flattenedValueAtIndex: 4 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [homeAdr flattenedValueAtIndex: 5 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [homeAdr flattenedValueAtIndex: 6 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; } // Work Address @@ -137,28 +137,28 @@ - (NSString *) activeSyncRepresentation workAdr = [addresses objectAtIndex: 0]; if ((o = [workAdr flattenedValueAtIndex: 2 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [workAdr flattenedValueAtIndex: 3 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [workAdr flattenedValueAtIndex: 4 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [workAdr flattenedValueAtIndex: 5 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; if ((o = [workAdr flattenedValueAtIndex: 6 forKey: @""])) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; } // Other, less important fields if ((o = [self birthday])) - [s appendFormat: @"%@", [o activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [o activeSyncRepresentationWithoutSeparatorsInContext: context]]; if ((o = [self note])) { - o = [o activeSyncRepresentation]; + o = [o activeSyncRepresentationInContext: context]; [s appendString: @""]; [s appendFormat: @"%d", 1]; [s appendFormat: @"%d", [o length]]; @@ -174,6 +174,7 @@ - (NSString *) activeSyncRepresentation // // - (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context { CardElement *element; id o; diff --git a/ActiveSync/NSData+ActiveSync.h b/ActiveSync/NSData+ActiveSync.h index fe7cd2f323..b0a994886f 100644 --- a/ActiveSync/NSData+ActiveSync.h +++ b/ActiveSync/NSData+ActiveSync.h @@ -33,10 +33,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import @class NSString; +@class WOContext; @interface NSData (ActiveSync) -- (NSString *) activeSyncRepresentation; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; - (NSData *) wbxml2xml; - (NSData *) xml2wbxml; diff --git a/ActiveSync/NSData+ActiveSync.m b/ActiveSync/NSData+ActiveSync.m index cf0a2fe40c..abd91995a9 100644 --- a/ActiveSync/NSData+ActiveSync.m +++ b/ActiveSync/NSData+ActiveSync.m @@ -54,7 +54,7 @@ - (void) _dumpToFile // // Encodes the data in base64 and strip newline characters // -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { return [[self stringByEncodingBase64] stringByReplacingString: @"\n" withString: @""]; } diff --git a/ActiveSync/NSDate+ActiveSync.h b/ActiveSync/NSDate+ActiveSync.h index dced4de942..49b6a94fe9 100644 --- a/ActiveSync/NSDate+ActiveSync.h +++ b/ActiveSync/NSDate+ActiveSync.h @@ -33,11 +33,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import @class NSString; +@class WOContext; @interface NSDate (ActiveSync) -- (NSString *) activeSyncRepresentation; -- (NSString *) activeSyncRepresentationWithoutSeparators; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; +- (NSString *) activeSyncRepresentationWithoutSeparatorsInContext: (WOContext *) context; @end diff --git a/ActiveSync/NSDate+ActiveSync.m b/ActiveSync/NSDate+ActiveSync.m index 05a0df1a39..ed3e98b3ae 100644 --- a/ActiveSync/NSDate+ActiveSync.m +++ b/ActiveSync/NSDate+ActiveSync.m @@ -34,7 +34,7 @@ @implementation NSDate (ActiveSync) -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { return [self descriptionWithCalendarFormat: @"%Y-%m-%d-T%H:%M:%S.%FZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; } @@ -43,7 +43,7 @@ - (NSString *) activeSyncRepresentation // // From [MS-ASDTYPE].pdf - section 2.3 "Dates and times in calendar items MUST NOT include punctuation separators." // -- (NSString *) activeSyncRepresentationWithoutSeparators +- (NSString *) activeSyncRepresentationWithoutSeparatorsInContext: (WOContext *) context { return [self descriptionWithCalendarFormat: @"%Y%m%dT%H%M%SZ" timeZone: [NSTimeZone timeZoneWithName: @"GMT"] locale: nil]; } diff --git a/ActiveSync/NSString+ActiveSync.h b/ActiveSync/NSString+ActiveSync.h index 71e3969fc3..6f0433de0c 100644 --- a/ActiveSync/NSString+ActiveSync.h +++ b/ActiveSync/NSString+ActiveSync.h @@ -36,11 +36,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @class NSCalendarDate; @class NSData; +@class WOContext; @interface NSString (ActiveSync) - (NSString *) sanitizedServerIdWithType: (SOGoMicrosoftActiveSyncFolderType) folderType; -- (NSString *) activeSyncRepresentation; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; - (int) activeSyncFolderType; - (NSString *) realCollectionIdWithFolderType: (SOGoMicrosoftActiveSyncFolderType *) folderType; - (NSCalendarDate *) calendarDate; diff --git a/ActiveSync/NSString+ActiveSync.m b/ActiveSync/NSString+ActiveSync.m index ebacc21002..8b09c75add 100644 --- a/ActiveSync/NSString+ActiveSync.m +++ b/ActiveSync/NSString+ActiveSync.m @@ -57,7 +57,7 @@ - (NSString *) sanitizedServerIdWithType: (SOGoMicrosoftActiveSyncFolderType) fo return self; } -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { NSString *s; diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 060a6ee8c3..2894c5cf65 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -192,9 +192,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement serverId = [allValues objectForKey: @"UID"]; else serverId = [theCollection globallyUniqueObjectId]; - - [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; - + sogoObject = [theCollection lookupName: [serverId sanitizedServerIdWithType: theFolderType] inContext: context acquire: NO]; @@ -218,7 +216,6 @@ - (void) processSyncAddCommand: (id ) theDocumentElement serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; sogoObject = [[SOGoTaskObject alloc] initWithName: serverId inContainer: theCollection]; - [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; o = [sogoObject component: YES secure: NO]; } break; @@ -232,7 +229,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement } } - [o takeActiveSyncValues: allValues]; + [o takeActiveSyncValues: allValues inContext: context]; [sogoObject setIsNew: is_new]; [sogoObject saveComponent: o]; @@ -322,7 +319,7 @@ - (void) processSyncChangeCommand: (id ) theDocumentElement case ActiveSyncContactFolder: { o = [sogoObject vCard]; - [o takeActiveSyncValues: allChanges]; + [o takeActiveSyncValues: allChanges inContext: context]; [sogoObject saveComponent: o]; } break; @@ -330,14 +327,14 @@ - (void) processSyncChangeCommand: (id ) theDocumentElement case ActiveSyncTaskFolder: { o = [sogoObject component: NO secure: NO]; - [o takeActiveSyncValues: allChanges]; + [o takeActiveSyncValues: allChanges inContext: context]; [sogoObject saveComponent: o]; } break; case ActiveSyncMailFolder: default: { - [sogoObject takeActiveSyncValues: allChanges]; + [sogoObject takeActiveSyncValues: allChanges inContext: context]; } } @@ -425,7 +422,7 @@ - (void) processSyncFetchCommand: (id ) theDocumentElement [theBuffer appendFormat: @"%@", serverId]; [theBuffer appendFormat: @"%d", 1]; [theBuffer appendString: @""]; - [theBuffer appendString: [o activeSyncRepresentation]]; + [theBuffer appendString: [o activeSyncRepresentationInContext: context]]; [theBuffer appendString: @""]; [theBuffer appendString: @""]; } @@ -559,7 +556,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement [s appendFormat: @"%@", uid]; [s appendString: @""]; - [s appendString: [componentObject activeSyncRepresentation]]; + [s appendString: [componentObject activeSyncRepresentationInContext: context]]; [s appendString: @""]; @@ -618,7 +615,7 @@ - (void) processSyncGetChanges: (id ) theDocumentElement [s appendFormat: @"%@", uid]; [s appendString: @""]; - [s appendString: [mailObject activeSyncRepresentation]]; + [s appendString: [mailObject activeSyncRepresentationInContext: context]]; [s appendString: @""]; if ([command isEqualToString: @"added"]) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 991ff13273..efb201367d 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -510,26 +510,26 @@ - (void) processFolderSync: (id ) theDocumentElement [serverId stringByEscapingURL], [parentId stringByEscapingURL], type, - [name activeSyncRepresentation]]; + [name activeSyncRepresentationInContext: context]]; } // We add the personal calendar - events // FIXME: add all calendars currentFolder = [[context activeUser] personalCalendarFolderInContext: context]; name = [NSString stringWithFormat: @"vevent/%@", [currentFolder nameInContainer]]; - [s appendFormat: @"%@%@%d%@", name, @"0", 8, [[currentFolder displayName] activeSyncRepresentation]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 8, [[currentFolder displayName] activeSyncRepresentationInContext: context]]; // We add the personal calendar - tasks // FIXME: add all calendars currentFolder = [[context activeUser] personalCalendarFolderInContext: context]; name = [NSString stringWithFormat: @"vtodo/%@", [currentFolder nameInContainer]]; - [s appendFormat: @"%@%@%d%@", name, @"0", 7, [[currentFolder displayName] activeSyncRepresentation]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 7, [[currentFolder displayName] activeSyncRepresentationInContext: context]]; // We add the personal address book // FIXME: add all address books currentFolder = [[context activeUser] personalContactsFolderInContext: context]; name = [NSString stringWithFormat: @"vcard/%@", [currentFolder nameInContainer]]; - [s appendFormat: @"%@%@%d%@", name, @"0", 9, [[currentFolder displayName] activeSyncRepresentation]]; + [s appendFormat: @"%@%@%d%@", name, @"0", 9, [[currentFolder displayName] activeSyncRepresentationInContext: context]]; } [s appendString: @""]; @@ -702,7 +702,7 @@ - (void) processItemOperations: (id ) theDocumentElement [s appendString: @""]; [s appendFormat: @"%@/%@", [[currentBodyPart partInfo] objectForKey: @"type"], [[currentBodyPart partInfo] objectForKey: @"subtype"]]; - [s appendFormat: @"%@", [[currentBodyPart fetchBLOB] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[currentBodyPart fetchBLOB] activeSyncRepresentationInContext: context]]; [s appendString: @""]; [s appendString: @""]; diff --git a/ActiveSync/SOGoMailObject+ActiveSync.h b/ActiveSync/SOGoMailObject+ActiveSync.h index 4f7d751dcb..44ceec168c 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.h +++ b/ActiveSync/SOGoMailObject+ActiveSync.h @@ -34,12 +34,14 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @class iCalCalendar; @class NSDictionary; +@class WOContext; @interface SOGoMailObject (ActiveSync) - (iCalCalendar *) calendarFromIMIPMessage; -- (NSString *) activeSyncRepresentation; -- (void) takeActiveSyncValues: (NSDictionary *) theValues; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; +- (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context; @end diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index aaed77ea54..8043b28a07 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -342,7 +342,7 @@ - (iCalCalendar *) calendarFromIMIPMessage // // // -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) _context { NSData *d, *globalObjId; NSMutableString *s; @@ -358,25 +358,25 @@ - (NSString *) activeSyncRepresentation // If there are multiple e-mail addresses, they are separated by commas." value = [self _emailAddressesFrom: [[self envelope] to]]; if (value) - [s appendFormat: @"%@", [value activeSyncRepresentation]]; + [s appendFormat: @"%@", [value activeSyncRepresentationInContext: context]]; // From value = [self _emailAddressesFrom: [[self envelope] from]]; if (value) - [s appendFormat: @"%@", [value activeSyncRepresentation]]; + [s appendFormat: @"%@", [value activeSyncRepresentationInContext: context]]; // Subject value = [self decodedSubject]; if (value) { - [s appendFormat: @"%@", [value activeSyncRepresentation]]; - [s appendFormat: @"%@", [value activeSyncRepresentation]]; + [s appendFormat: @"%@", [value activeSyncRepresentationInContext: context]]; + [s appendFormat: @"%@", [value activeSyncRepresentationInContext: context]]; } // DateReceived value = [self date]; if (value) - [s appendFormat: @"%@", [value activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [value activeSyncRepresentationWithoutSeparatorsInContext: context]]; // DisplayTo [s appendFormat: @"%@", [[context activeUser] login]]; @@ -384,7 +384,7 @@ - (NSString *) activeSyncRepresentation // Cc - same syntax as the To field value = [self _emailAddressesFrom: [[self envelope] cc]]; if (value) - [s appendFormat: @"%@", [value activeSyncRepresentation]]; + [s appendFormat: @"%@", [value activeSyncRepresentationInContext: context]]; // Importance - FIXME [s appendFormat: @"%@", @"1"]; @@ -447,24 +447,24 @@ - (NSString *) activeSyncRepresentation // StartTime -- http://msdn.microsoft.com/en-us/library/ee157132(v=exchg.80).aspx if ([event startDate]) - [s appendFormat: @"%@", [[event startDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[event startDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; if ([event timeStampAsDate]) - [s appendFormat: @"%@", [[event timeStampAsDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[event timeStampAsDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; else if ([event created]) - [s appendFormat: @"%@", [[event created] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[event created] activeSyncRepresentationWithoutSeparatorsInContext: context]]; // EndTime -- http://msdn.microsoft.com/en-us/library/ee157945(v=exchg.80).aspx if ([event endDate]) - [s appendFormat: @"%@", [[event endDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[event endDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; [s appendFormat: @"%d", 0]; // Location if ([[event location] length]) - [s appendFormat: @"%@", [[event location] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[event location] activeSyncRepresentationInContext: context]]; - [s appendFormat: @"%@", [[[event organizer] mailAddress] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[[event organizer] mailAddress] activeSyncRepresentationInContext: context]]; // This will trigger the SendMail command. We set it to no for email invitations as // SOGo will send emails when MeetingResponse is called. @@ -488,7 +488,7 @@ - (NSString *) activeSyncRepresentation if (!tz) tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; - [s appendFormat: @"%@", [tz activeSyncRepresentation]]; + [s appendFormat: @"%@", [tz activeSyncRepresentationInContext: context]]; // We disallow new time proposals @@ -500,7 +500,7 @@ - (NSString *) activeSyncRepresentation // object in the Calendar folder have to convert the GlobalObjId element value to a UID element value to make the comparison." // globalObjId = [self _computeGlobalObjectIdFromEvent: event]; - [s appendFormat: @"%@", [globalObjId activeSyncRepresentation]]; + [s appendFormat: @"%@", [globalObjId activeSyncRepresentationInContext: context]]; // We set the right message type - we must set AS version to 14.1 for this [s appendFormat: @"%d", 1]; @@ -545,7 +545,7 @@ - (NSString *) activeSyncRepresentation AUTORELEASE(content); - content = [content activeSyncRepresentation]; + content = [content activeSyncRepresentationInContext: context]; truncated = 0; len = [content length]; @@ -572,7 +572,7 @@ - (NSString *) activeSyncRepresentation value = [attachmentKeys objectAtIndex: i]; [s appendString: @""]; - [s appendFormat: @"%@", [[value objectForKey: @"filename"] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[value objectForKey: @"filename"] activeSyncRepresentationInContext: context]]; // FileReference must be a unique identifier across the whole store. We use the following structure: // mail// @@ -612,6 +612,7 @@ - (NSString *) activeSyncRepresentation // // - (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) _context { id o; diff --git a/ActiveSync/iCalEvent+ActiveSync.h b/ActiveSync/iCalEvent+ActiveSync.h index 3a22eee21b..90fa92cd52 100644 --- a/ActiveSync/iCalEvent+ActiveSync.h +++ b/ActiveSync/iCalEvent+ActiveSync.h @@ -34,11 +34,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import @class NSString; +@class WOContext; @interface iCalEvent (ActiveSync) -- (NSString *) activeSyncRepresentation; -- (void) takeActiveSyncValues: (NSDictionary *) theValues; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; +- (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context; @end diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index fbe6c564a8..68ce307e67 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -38,11 +38,16 @@ #import #import +#import +#import #import #import #import +#import +#import + #include "iCalRecurrenceRule+ActiveSync.h" #include "iCalTimeZone+ActiveSync.h" #include "NSDate+ActiveSync.h" @@ -50,7 +55,7 @@ @implementation iCalEvent (ActiveSync) -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { NSMutableString *s; NSArray *attendees; @@ -67,17 +72,17 @@ - (NSString *) activeSyncRepresentation // DTStamp -- http://msdn.microsoft.com/en-us/library/ee219470(v=exchg.80).aspx if ([self timeStampAsDate]) - [s appendFormat: @"%@", [[self timeStampAsDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[self timeStampAsDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; else if ([self created]) - [s appendFormat: @"%@", [[self created] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[self created] activeSyncRepresentationWithoutSeparatorsInContext: context]]; // StartTime -- http://msdn.microsoft.com/en-us/library/ee157132(v=exchg.80).aspx if ([self startDate]) - [s appendFormat: @"%@", [[self startDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[self startDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; // EndTime -- http://msdn.microsoft.com/en-us/library/ee157945(v=exchg.80).aspx if ([self endDate]) - [s appendFormat: @"%@", [[self endDate] activeSyncRepresentationWithoutSeparators]]; + [s appendFormat: @"%@", [[self endDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; // Timezone tz = [(iCalDateTime *)[self firstChildWithTag: @"dtstart"] timeZone]; @@ -85,7 +90,7 @@ - (NSString *) activeSyncRepresentation if (!tz) tz = [iCalTimeZone timeZoneForName: @"Europe/London"]; - [s appendFormat: @"%@", [tz activeSyncRepresentation]]; + [s appendFormat: @"%@", [tz activeSyncRepresentationInContext: context]]; // Organizer and other invitations related properties if ((organizer = [self organizer])) @@ -153,11 +158,11 @@ - (NSString *) activeSyncRepresentation // Subject -- http://msdn.microsoft.com/en-us/library/ee157192(v=exchg.80).aspx if ([[self summary] length]) - [s appendFormat: @"%@", [[self summary] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[self summary] activeSyncRepresentationInContext: context]]; // Location if ([[self location] length]) - [s appendFormat: @"%@", [[self location] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[self location] activeSyncRepresentationInContext: context]]; // Importance - NOT SUPPORTED - DO NOT ENABLE //o = [self priority]; @@ -189,14 +194,14 @@ - (NSString *) activeSyncRepresentation // Recurrence rules if ([self isRecurrent]) { - [s appendString: [[[self recurrenceRules] lastObject] activeSyncRepresentation]]; + [s appendString: [[[self recurrenceRules] lastObject] activeSyncRepresentationInContext: context]]; } // Comment o = [self comment]; if ([o length]) { - o = [o activeSyncRepresentation]; + o = [o activeSyncRepresentationInContext: context]; [s appendString: @""]; [s appendFormat: @"%d", 1]; [s appendFormat: @"%d", [o length]]; @@ -249,6 +254,7 @@ - (NSString *) activeSyncRepresentation // // - (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context { iCalDateTime *start, *end; NSTimeZone *userTimeZone; @@ -310,7 +316,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues if ((o = [theValues objectForKey: @"TimeZone"])) { // Ugh, we ignore it for now. - userTimeZone = [theValues objectForKey: @"SOGoUserTimeZone"]; + userTimeZone = [[[context activeUser] userDefaults] timeZone]; tz = [iCalTimeZone timeZoneForName: [userTimeZone name]]; [(iCalCalendar *) parent addTimeZone: tz]; } @@ -373,7 +379,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues [self setRecurrenceRules: [NSArray arrayWithObject: rule]]; RELEASE(rule); - [rule takeActiveSyncValues: o]; + [rule takeActiveSyncValues: o inContext: context]; } // Organizer diff --git a/ActiveSync/iCalRecurrenceRule+ActiveSync.h b/ActiveSync/iCalRecurrenceRule+ActiveSync.h index ab19964ac1..1de1a53166 100644 --- a/ActiveSync/iCalRecurrenceRule+ActiveSync.h +++ b/ActiveSync/iCalRecurrenceRule+ActiveSync.h @@ -35,11 +35,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. @class NSDictionary; @class NSString; +@class WOContext; @interface iCalRecurrenceRule (ActiveSync) -- (NSString *) activeSyncRepresentation; -- (void) takeActiveSyncValues: (NSDictionary *) theValues; +- (NSString *) activeSyncRepresentationInContext:(WOContext *) context; +- (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context; @end diff --git a/ActiveSync/iCalRecurrenceRule+ActiveSync.m b/ActiveSync/iCalRecurrenceRule+ActiveSync.m index 002a9d0cb9..18bdf595ce 100644 --- a/ActiveSync/iCalRecurrenceRule+ActiveSync.m +++ b/ActiveSync/iCalRecurrenceRule+ActiveSync.m @@ -41,7 +41,7 @@ @implementation iCalRecurrenceRule (ActiveSync) -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { NSMutableString *s; int type; @@ -180,7 +180,7 @@ - (NSString *) activeSyncRepresentation //[date setTimeZone: [ud timeZone]]; [s appendFormat: @"%@", - [date activeSyncRepresentationWithoutSeparators]]; + [date activeSyncRepresentationWithoutSeparatorsInContext: context]]; } @@ -242,6 +242,7 @@ - (void) _setByMonthFromValues: (NSDictionary *) theValues // // - (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context { id o; diff --git a/ActiveSync/iCalTimeZone+ActiveSync.h b/ActiveSync/iCalTimeZone+ActiveSync.h index 3652a1dbed..6e3de38565 100644 --- a/ActiveSync/iCalTimeZone+ActiveSync.h +++ b/ActiveSync/iCalTimeZone+ActiveSync.h @@ -33,10 +33,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import @class NSString; +@class WOContext; @interface iCalTimeZone (ActiveSync) -- (NSString *) activeSyncRepresentation; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; @end diff --git a/ActiveSync/iCalTimeZone+ActiveSync.m b/ActiveSync/iCalTimeZone+ActiveSync.m index c14b323423..0670acc115 100644 --- a/ActiveSync/iCalTimeZone+ActiveSync.m +++ b/ActiveSync/iCalTimeZone+ActiveSync.m @@ -115,7 +115,7 @@ - (iCalTimeZonePeriod *) _mostRecentPeriodWithName: (NSString *) periodName } -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { iCalTimeZonePeriod *period; NSMutableData *bytes; @@ -159,7 +159,7 @@ - (NSString *) activeSyncRepresentation [bytes appendBytes: &stDaylightDate length: 16]; [bytes appendBytes: &lDaylightBias length: 4]; - return [bytes activeSyncRepresentation]; + return [bytes activeSyncRepresentationInContext: context]; } @end diff --git a/ActiveSync/iCalToDo+ActiveSync.h b/ActiveSync/iCalToDo+ActiveSync.h index f77d753724..933f26eb7b 100644 --- a/ActiveSync/iCalToDo+ActiveSync.h +++ b/ActiveSync/iCalToDo+ActiveSync.h @@ -33,11 +33,13 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #import @class NSString; +@class WOContext; @interface iCalToDo (ActiveSync) -- (NSString *) activeSyncRepresentation; -- (void) takeActiveSyncValues: (NSDictionary *) theValues; +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context; +- (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context; @end diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m index b458d30068..d09fda6881 100644 --- a/ActiveSync/iCalToDo+ActiveSync.m +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -36,6 +36,11 @@ #import #import +#import +#import + +#import +#import #import #import @@ -46,7 +51,7 @@ @implementation iCalToDo (ActiveSync) -- (NSString *) activeSyncRepresentation +- (NSString *) activeSyncRepresentationInContext: (WOContext *) context { NSMutableString *s; id o; @@ -61,21 +66,21 @@ - (NSString *) activeSyncRepresentation // DateCompleted if (o) - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; // Start date if ((o = [self startDate])) { - [s appendFormat: @"%@", [o activeSyncRepresentation]]; - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; } // Due date if ((o = [self due])) { - [s appendFormat: @"%@", [o activeSyncRepresentation]]; - [s appendFormat: @"%@", [o activeSyncRepresentation]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; + [s appendFormat: @"%@", [o activeSyncRepresentationInContext: context]]; } // Importance @@ -97,11 +102,11 @@ - (NSString *) activeSyncRepresentation // Subject o = [self summary]; if ([o length]) - [s appendFormat: @"%@", [[self summary] activeSyncRepresentation]]; + [s appendFormat: @"%@", [[self summary] activeSyncRepresentationInContext: context]]; if ((o = [self comment])) { - o = [o activeSyncRepresentation]; + o = [o activeSyncRepresentationInContext: context]; [s appendString: @""]; [s appendFormat: @"%d", 1]; [s appendFormat: @"%d", [o length]]; @@ -114,6 +119,7 @@ - (NSString *) activeSyncRepresentation } - (void) takeActiveSyncValues: (NSDictionary *) theValues + inContext: (WOContext *) context { NSTimeZone *userTimeZone; iCalTimeZone *tz; @@ -121,7 +127,7 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues NSInteger tzOffset; - userTimeZone = [theValues objectForKey: @"SOGoUserTimeZone"]; + userTimeZone = [[[context activeUser] userDefaults] timeZone]; tz = [iCalTimeZone timeZoneForName: [userTimeZone name]]; [(iCalCalendar *) parent addTimeZone: tz]; From 401320e08be253770d783be6f55af7e4b9f46341 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 17 Feb 2014 11:12:09 -0500 Subject: [PATCH 197/214] Contact: fix display of urls --- UI/Contacts/UIxContactView.m | 34 +++++++++++++++++++++++----------- 1 file changed, 23 insertions(+), 11 deletions(-) diff --git a/UI/Contacts/UIxContactView.m b/UI/Contacts/UIxContactView.m index 0930912486..4880fa6674 100644 --- a/UI/Contacts/UIxContactView.m +++ b/UI/Contacts/UIxContactView.m @@ -340,21 +340,33 @@ - (NSString *) homePostalCodeAndCountry - (NSString *) _formattedURL: (NSString *) url { - NSString *data; + NSRange schemaR; + NSString *schema, *data; if ([url length] > 0) { - if (![[url lowercaseString] rangeOfString: @"://"].length) - url = [NSString stringWithFormat: @"http://%@", url]; - - data = [NSString stringWithFormat: - @"%@", - url, url]; + schemaR = [url rangeOfString: @"://"]; + if (schemaR.length > 0) + { + schema = [url substringToIndex: schemaR.location + schemaR.length]; + data = [url substringFromIndex: schemaR.location + schemaR.length]; + } + else + { + schema = @"http://"; + data = url; + } } else - data = nil; + { + schema = nil; + data = nil; + } - return [self _cardStringWithLabel: nil value: data]; + return [self _cardStringWithLabel: nil + value: data + asLinkScheme: schema + withLinkAttributes: @"target=\"_blank\""]; } @@ -364,8 +376,8 @@ - (NSString *) _urlOfType: (NSString *) aType NSString *url; elements = [card childrenWithTag: @"url" - andAttribute: @"type" - havingValue: aType]; + andAttribute: @"type" + havingValue: aType]; if ([elements count] > 0) url = [[elements objectAtIndex: 0] flattenedValuesForKey: @""]; else From d560d0e4703cef7bfa0cb63e2ebb5553de0fc06f Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 11:28:06 -0500 Subject: [PATCH 198/214] Always return a response avoiding iOS crashes on no-changes --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index 2894c5cf65..dfa0b31106 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -998,7 +998,6 @@ - (void) processSync: (id ) theDocumentElement if (changeDetected) { NSLog(@"Change detected, we push the content."); - [output appendString: s]; break; } else @@ -1008,6 +1007,11 @@ - (void) processSync: (id ) theDocumentElement } } + // We always return the last generated response. + // If we only return , + // iOS powered devices will simply crash. + [output appendString: s]; + [output appendString: @""]; d = [[output dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; From 4ca8b9d0aa0eb276cedd53f566f0ea1767f10ba6 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 11:30:00 -0500 Subject: [PATCH 199/214] Copyright updates --- SoObjects/Appointments/iCalEntityObject+SOGo.h | 2 +- SoObjects/Appointments/iCalEntityObject+SOGo.m | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/SoObjects/Appointments/iCalEntityObject+SOGo.h b/SoObjects/Appointments/iCalEntityObject+SOGo.h index 8963a1d692..dee22f353f 100644 --- a/SoObjects/Appointments/iCalEntityObject+SOGo.h +++ b/SoObjects/Appointments/iCalEntityObject+SOGo.h @@ -1,6 +1,6 @@ /* iCalEntityObject+SOGo.h - this file is part of SOGo * - * Copyright (C) 2007-2013 Inverse inc. + * Copyright (C) 2007-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/SoObjects/Appointments/iCalEntityObject+SOGo.m b/SoObjects/Appointments/iCalEntityObject+SOGo.m index 70aeffaf01..97f9ce336a 100644 --- a/SoObjects/Appointments/iCalEntityObject+SOGo.m +++ b/SoObjects/Appointments/iCalEntityObject+SOGo.m @@ -1,8 +1,6 @@ /* iCalEntityObject+SOGo.m - this file is part of SOGo * - * Copyright (C) 2007-2010 Inverse inc. - * - * Author: Wolfgang Sourdeau + * Copyright (C) 2007-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by From ec0a5ac4bfe65a1aecf225830c16f6c7e1d7cb22 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 11:30:41 -0500 Subject: [PATCH 200/214] Properly handle event updates/pull when we are or not an attendee/organizer --- ActiveSync/iCalEvent+ActiveSync.m | 161 +++++++++++++++++------------- 1 file changed, 94 insertions(+), 67 deletions(-) diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index 68ce307e67..3bfa99b9dc 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -48,6 +48,8 @@ #import #import +#import + #include "iCalRecurrenceRule+ActiveSync.h" #include "iCalTimeZone+ActiveSync.h" #include "NSDate+ActiveSync.h" @@ -55,6 +57,21 @@ @implementation iCalEvent (ActiveSync) +- (int) _attendeeStatus: (iCalPerson *) attendee +{ + int attendee_status; + + attendee_status = 5; + if ([[attendee partStat] caseInsensitiveCompare: @"ACCEPTED"] == NSOrderedSame) + attendee_status = 3; + else if ([[attendee partStat] caseInsensitiveCompare: @"DECLINED"] == NSOrderedSame) + attendee_status = 4; + else if ([[attendee partStat] caseInsensitiveCompare: @"TENTATIVE"] == NSOrderedSame) + attendee_status = 2; + + return attendee_status; +} + - (NSString *) activeSyncRepresentationInContext: (WOContext *) context { NSMutableString *s; @@ -103,17 +120,6 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) context o = [organizer cn]; if ([o length]) [s appendFormat: @"%@", o]; - - - // This depends on the 'NEEDS-ACTION' parameter. - // This will trigger the SendMail command - [s appendFormat: @"%d", 1]; - [s appendFormat: @"%d", 5]; - [s appendFormat: @"%d", 3]; - [s appendFormat: @"%d", 1]; - - // BusyStatus -- http://msdn.microsoft.com/en-us/library/ee202290(v=exchg.80).aspx - [s appendFormat: @"%d", 2]; } } @@ -122,7 +128,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) context if ([attendees count]) { - int i, attendee_type, attendee_status; + int i, attendee_status, attendee_type; [s appendString: @""]; @@ -134,13 +140,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) context [s appendFormat: @"%@", [attendee rfc822Email]]; [s appendFormat: @"%@", [attendee cn]]; - attendee_status = 5; - if ([[attendee partStat] caseInsensitiveCompare: @"ACCEPTED"] == NSOrderedSame) - attendee_status = 3; - else if ([[attendee partStat] caseInsensitiveCompare: @"DECLINED"] == NSOrderedSame) - attendee_status = 4; - else if ([[attendee partStat] caseInsensitiveCompare: @"TENTATIVE"] == NSOrderedSame) - attendee_status = 2; + attendee_status = [self _attendeeStatus: attendee]; [s appendFormat: @"%d", attendee_status]; @@ -155,6 +155,26 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) context } [s appendString: @""]; } + + // This depends on the 'NEEDS-ACTION' parameter. + // This will trigger the SendMail command + if ([self userIsAttendee: [context activeUser]]) + { + iCalPerson *attendee; + + int attendee_status; + + attendee = [self userAsAttendee: [context activeUser]]; + attendee_status = [self _attendeeStatus: attendee]; + + [s appendFormat: @"%d", 1]; + [s appendFormat: @"%d", attendee_status]; + [s appendFormat: @"%d", 3]; + [s appendFormat: @"%d", 1]; + + // BusyStatus -- http://msdn.microsoft.com/en-us/library/ee202290(v=exchg.80).aspx + [s appendFormat: @"%d", 2]; + } // Subject -- http://msdn.microsoft.com/en-us/library/ee157192(v=exchg.80).aspx if ([[self summary] length]) @@ -382,64 +402,71 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues [rule takeActiveSyncValues: o inContext: context]; } - // Organizer - if ((o = [theValues objectForKey: @"Organizer_Email"])) + // Organizer - we don't touch the value unless we're the organizer + if ([self userIsOrganizer: [context activeUser]]) { - iCalPerson *person; - - person = [iCalPerson elementWithTag: @"organizer"]; - [person setEmail: o]; - [person setCn: [theValues objectForKey: @"Organizer_Name"]]; - [person setPartStat: @"ACCEPTED"]; - [self setOrganizer: person]; + if ((o = [theValues objectForKey: @"Organizer_Email"])) + { + iCalPerson *person; + + person = [iCalPerson elementWithTag: @"organizer"]; + [person setEmail: o]; + [person setCn: [theValues objectForKey: @"Organizer_Name"]]; + [person setPartStat: @"ACCEPTED"]; + [self setOrganizer: person]; + } } - // Attendees - if ((o = [theValues objectForKey: @"Attendees"])) + // Attendees - we don't touch the values if we're an attendee. This is gonna + // be done automatically by the ActiveSync client when invoking MeetingResponse. + if ([self userIsAttendee: [context activeUser]]) { - NSMutableArray *attendees; - NSDictionary *attendee; - iCalPerson *person; - int status, i; - - attendees = [NSMutableArray array]; - - for (i = 0; i < [o count]; i++) + if ((o = [theValues objectForKey: @"Attendees"])) { - // Each attendee has is a dictionary similar to this: - // { "Attendee_Email" = "sogo3@example.com"; "Attendee_Name" = "Wolfgang Fritz"; "Attendee_Status" = 5; "Attendee_Type" = 1; } - attendee = [o objectAtIndex: i]; - - person = [iCalPerson elementWithTag: @"attendee"]; - [person setCn: [attendee objectForKey: @"Attendee_Name"]]; - [person setEmail: [attendee objectForKey: @"Attendee_Email"]]; + NSMutableArray *attendees; + NSDictionary *attendee; + iCalPerson *person; + int status, i; - status = [[attendee objectForKey: @"Attendee_Status"] intValue]; - - switch (status) + attendees = [NSMutableArray array]; + + for (i = 0; i < [o count]; i++) { - case 2: - [person setPartStat: @"TENTATIVE"]; - break; - case 3: - [person setPartStat: @"ACCEPTED"]; - break; - case 4: - [person setPartStat: @"DECLINED"]; - break; - case 0: - case 5: - default: - [person setPartStat: @"NEEDS-ACTION"]; - break; + // Each attendee has is a dictionary similar to this: + // { "Attendee_Email" = "sogo3@example.com"; "Attendee_Name" = "Wolfgang Fritz"; "Attendee_Status" = 5; "Attendee_Type" = 1; } + attendee = [o objectAtIndex: i]; + + person = [iCalPerson elementWithTag: @"attendee"]; + [person setCn: [attendee objectForKey: @"Attendee_Name"]]; + [person setEmail: [attendee objectForKey: @"Attendee_Email"]]; + + status = [[attendee objectForKey: @"Attendee_Status"] intValue]; + + switch (status) + { + case 2: + [person setPartStat: @"TENTATIVE"]; + break; + case 3: + [person setPartStat: @"ACCEPTED"]; + break; + case 4: + [person setPartStat: @"DECLINED"]; + break; + case 0: + case 5: + default: + [person setPartStat: @"NEEDS-ACTION"]; + break; + } + + // FIXME: handle Attendee_Type + + [attendees addObject: person]; } - // FIXME: handle Attendee_Type - - [attendees addObject: person]; + [self setAttendees: attendees]; } - - [self setAttendees: attendees]; } } From f0a29d3ca27a9166dd789288d3f2064c809ba1ae Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 17 Feb 2014 15:05:31 -0500 Subject: [PATCH 201/214] Fix debian dependencies for sogo-activesync --- packaging/debian-multiarch/control | 4 ++-- packaging/debian/control | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/packaging/debian-multiarch/control b/packaging/debian-multiarch/control index 06b9406cd2..6b2ecab3d7 100644 --- a/packaging/debian-multiarch/control +++ b/packaging/debian-multiarch/control @@ -1,7 +1,7 @@ Source: sogo Priority: optional Maintainer: Inverse Support -Build-Depends: debhelper (>= 8.0.0), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev, libwbxml2-dev +Build-Depends: debhelper (>= 8.0.0), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libmapi-dev, libmapistore-dev, libmapiproxy-dev, libwbxml2-dev (>= 0.11.2) Section: web Standards-Version: 3.9.2 @@ -54,7 +54,7 @@ Package: sogo-activesync Section: web Priority: extra Architecture: any -Depends: sogo (= ${binary:Version}), libwbxml2-0, ${shlibs:Depends}, ${misc:Depends} +Depends: sogo (= ${binary:Version}), libwbxml2-0 (>= 0.11.2), ${shlibs:Depends}, ${misc:Depends} Description: a modern and scalable groupware - ActiveSync module SOGo is a groupware server built around OpenGroupware.org (OGo) and the SOPE application server with focus on scalability. diff --git a/packaging/debian/control b/packaging/debian/control index d794347817..ce0b019dfc 100644 --- a/packaging/debian/control +++ b/packaging/debian/control @@ -1,7 +1,7 @@ Source: sogo Priority: optional Maintainer: Inverse Support -Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libwbxml2-dev +Build-Depends: debhelper (>= 7.0.15), gobjc | objc-compiler, libgnustep-base-dev, libsope-appserver4.9-dev, libsope-core4.9-dev, libsope-gdl1-4.9-dev, libsope-ldap4.9-dev, libsope-mime4.9-dev, libsope-xml4.9-dev, libmemcached-dev, libxml2-dev, libsbjson-dev, libssl-dev, libcurl4-openssl-dev | libcurl4-gnutls-dev, libwbxml2-dev (>= 0.11.2) Section: web Standards-Version: 3.9.1 @@ -38,14 +38,13 @@ Package: sogo-activesync Section: web Priority: extra Architecture: any -Depends: sogo (= ${binary:Version}), libwbxml2-0, ${shlibs:Depends}, ${misc:Depends} +Depends: sogo (= ${binary:Version}), libwbxml2-0 (>= 0.11.2), ${shlibs:Depends}, ${misc:Depends} Description: a modern and scalable groupware - ActiveSync module SOGo is a groupware server built around OpenGroupware.org (OGo) and the SOPE application server with focus on scalability. . This package provides Microsoft EAS support for SOGo. - Package: sogo-dbg Section: debug Priority: extra From e7f27427c87498185d95e6a4c0607175c46b5fc0 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 17 Feb 2014 15:42:55 -0500 Subject: [PATCH 202/214] Add missing import in UIxPreferences.m --- UI/PreferencesUI/UIxPreferences.m | 1 + 1 file changed, 1 insertion(+) diff --git a/UI/PreferencesUI/UIxPreferences.m b/UI/PreferencesUI/UIxPreferences.m index 45894f50bc..63798b11dd 100644 --- a/UI/PreferencesUI/UIxPreferences.m +++ b/UI/PreferencesUI/UIxPreferences.m @@ -28,6 +28,7 @@ #import #import +#import #import #import From 9851c32a1e5d5d584b350a22605a12b800fa0634 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 15:49:22 -0500 Subject: [PATCH 203/214] Fixed the handling of organizers --- ActiveSync/iCalEvent+ActiveSync.m | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/ActiveSync/iCalEvent+ActiveSync.m b/ActiveSync/iCalEvent+ActiveSync.m index 3bfa99b9dc..05f18a3ced 100644 --- a/ActiveSync/iCalEvent+ActiveSync.m +++ b/ActiveSync/iCalEvent+ActiveSync.m @@ -403,23 +403,21 @@ - (void) takeActiveSyncValues: (NSDictionary *) theValues } // Organizer - we don't touch the value unless we're the organizer - if ([self userIsOrganizer: [context activeUser]]) + if ((o = [theValues objectForKey: @"Organizer_Email"]) && + ([self userIsOrganizer: [context activeUser]] || [[context activeUser] hasEmail: o])) { - if ((o = [theValues objectForKey: @"Organizer_Email"])) - { - iCalPerson *person; - - person = [iCalPerson elementWithTag: @"organizer"]; - [person setEmail: o]; - [person setCn: [theValues objectForKey: @"Organizer_Name"]]; - [person setPartStat: @"ACCEPTED"]; - [self setOrganizer: person]; - } + iCalPerson *person; + + person = [iCalPerson elementWithTag: @"organizer"]; + [person setEmail: o]; + [person setCn: [theValues objectForKey: @"Organizer_Name"]]; + [person setPartStat: @"ACCEPTED"]; + [self setOrganizer: person]; } // Attendees - we don't touch the values if we're an attendee. This is gonna // be done automatically by the ActiveSync client when invoking MeetingResponse. - if ([self userIsAttendee: [context activeUser]]) + if (![self userIsAttendee: [context activeUser]]) { if ((o = [theValues objectForKey: @"Attendees"])) { From 668c7e8b4948ddac12ffbe6a6026af1db2ea2eac Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 17 Feb 2014 16:08:29 -0500 Subject: [PATCH 204/214] Correctly handle email invitations as attendee/organizer --- ActiveSync/SOGoMailObject+ActiveSync.m | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 8043b28a07..191aef8c50 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -53,9 +53,10 @@ #include "NSDate+ActiveSync.h" #include "NSString+ActiveSync.h" -#include "../SoObjects/Appointments/iCalPerson+SOGo.h" -#include "../SoObjects/Mailer/NSString+Mail.h" -#include "../SoObjects/Mailer/SOGoMailBodyPart.h" +#include +#include +#include +#include #include @@ -349,7 +350,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) _context id value; iCalCalendar *calendar; - + int preferredBodyType, nativeBodyType; s = [NSMutableString string]; @@ -394,7 +395,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) _context // We handle MeetingRequest calendar = [self calendarFromIMIPMessage]; - + if (calendar) { NSString *method, *className; @@ -408,7 +409,12 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) _context event = [[calendar events] lastObject]; method = [[event parent] method]; - attendee = [event findAttendeeWithEmail: [[[context activeUser] allEmails] objectAtIndex: 0]]; + // If we are the organizer, let's pick the attendee based on the From address + if ([event userIsOrganizer: [context activeUser]]) + attendee = [event findAttendeeWithEmail: [[[[self envelope] from] lastObject] baseEMail]]; + else + attendee = [event findAttendeeWithEmail: [[[context activeUser] allEmails] objectAtIndex: 0]]; + partstat = [attendee participationStatus]; // We generate the correct MessageClass @@ -425,6 +431,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) _context className = @"IPM.Schedule.Meeting.Resp.Neg"; break; case iCalPersonPartStatTentative: + case iCalPersonPartStatNeedsAction: className = @"IPM.Schedule.Meeting.Resp.Tent"; break; default: @@ -458,6 +465,7 @@ - (NSString *) activeSyncRepresentationInContext: (WOContext *) _context if ([event endDate]) [s appendFormat: @"%@", [[event endDate] activeSyncRepresentationWithoutSeparatorsInContext: context]]; + // FIXME: Single appointment - others are not supported right now [s appendFormat: @"%d", 0]; // Location From 212d7149ed20175a4f047fce88bcd760ff6de9c9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 18 Feb 2014 10:13:34 -0500 Subject: [PATCH 205/214] Fix display of a contact's birthday Fixes #2503 --- NEWS | 1 + SoObjects/Contacts/NGVCard+SOGo.m | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 1d70e29bc0..26eabb35d4 100644 --- a/NEWS +++ b/NEWS @@ -46,6 +46,7 @@ Bug fixes - fixed HTML formatting of appointment notifications for Outlook (#2233) - replace slashes by dashes in filenames of attachments to avoid a 404 return code (#2537) - avoid over-using LDAP connections when decomposing groups + - fixed display of a contact's birthday when not defined (#2503) 2.1.1b (2013-12-04) ------------------- diff --git a/SoObjects/Contacts/NGVCard+SOGo.m b/SoObjects/Contacts/NGVCard+SOGo.m index 88d3e99f1b..e13cbfffe3 100644 --- a/SoObjects/Contacts/NGVCard+SOGo.m +++ b/SoObjects/Contacts/NGVCard+SOGo.m @@ -776,7 +776,7 @@ - (NSCalendarDate *) birthday bday = [self bday]; date = nil; - if (bday) + if ([bday length] > 0) { // Expected format of BDAY is YYYY[-]MM[-]DD value = [bday stringByReplacingString: @"-" withString: @""]; From 2948920e0b68057cb14b2b26dada0dcd8aae51c1 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 18 Feb 2014 16:13:40 -0500 Subject: [PATCH 206/214] Improve display of contact Fixes #2350 --- NEWS | 1 + UI/WebServerResources/ContactsUI.css | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index 26eabb35d4..8c4ea357b7 100644 --- a/NEWS +++ b/NEWS @@ -30,6 +30,7 @@ Enhancements - don't use the HTML editor with Internet Explorer 7 - add message-id header to appointment notifications (#2535) - detect URLs in popup of events + - improved display of a contact (#2350) Bug fixes - don't load 'background' attribute (#2437) diff --git a/UI/WebServerResources/ContactsUI.css b/UI/WebServerResources/ContactsUI.css index 0d45b1d870..e1423ccb42 100644 --- a/UI/WebServerResources/ContactsUI.css +++ b/UI/WebServerResources/ContactsUI.css @@ -241,17 +241,17 @@ DIV#contactView H3.contactCardTitle text-decoration: underline; } DIV.contactColumn -{ width: 300px; - margin-left: 1em; - padding: .5em; +{ width: 50%; + margin: 0; + padding: 0; float: left; } DIV.contactColumn DIV -{ margin-bottom: 1em; } +{ margin: 1em; } DIV.contactColumn H4 { margin: .2em 0px; - margin-left: -1em; + margin-left: 0; font-size: 10pt; font-weight: bold; background: #9ABCD8; From 96f2552b45cd788b784afc349af96ca79c1bff8a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 19 Feb 2014 21:57:01 -0500 Subject: [PATCH 207/214] Preparation for release 2.2.0 --- Apache/SOGo.conf | 11 ++++++----- Documentation/SOGo Installation Guide.odt | Bin 158462 -> 168831 bytes .../SOGo Mobile Devices Configuration.odt | Bin 20313 -> 24268 bytes ...SOGo Mozilla Thunderbird Configuration.odt | Bin 20880 -> 25123 bytes ...Native Microsoft Outlook Configuration.odt | Bin 28478 -> 32721 bytes Documentation/architecture.png | Bin 442982 -> 410886 bytes Documentation/openchange.png | Bin 786122 -> 318538 bytes NEWS | 2 +- Scripts/updates.php | 16 ++++++++-------- Version | 4 ++-- 10 files changed, 17 insertions(+), 16 deletions(-) diff --git a/Apache/SOGo.conf b/Apache/SOGo.conf index c5f2ffeee7..f36fbbe8fc 100644 --- a/Apache/SOGo.conf +++ b/Apache/SOGo.conf @@ -42,12 +42,13 @@ ProxyPreserveHost On ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0 -# -# Enable to use Microsoft Active Sync support -# Note that you MUST have many sogod workers to use Active Sync. +# Enable to use Microsoft ActiveSync support +# Note that you MUST have many sogod workers to use ActiveSync. # See the SOGo Installation and Configuration guide for more details. # -#ProxyPass /Microsoft-Server-ActiveSync http://127.0.0.1:20000/SOGo/Microsoft-Server-ActiveSync retry=60 connectiontimeout=5 timeout=360 +#ProxyPass /Microsoft-Server-ActiveSync \ +# http://127.0.0.1:20000/SOGo/Microsoft-Server-ActiveSync \ +# retry=60 connectiontimeout=5 timeout=360 ## adjust the following to your configuration @@ -67,7 +68,7 @@ ProxyPass /SOGo http://127.0.0.1:20000/SOGo retry=0 Allow from all -# For apple autoconfiguration +# For Apple autoconfiguration RewriteEngine On RewriteRule ^/.well-known/caldav/?$ /SOGo/dav [R=301] diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index a72c11dfbb35ed9bb13006f4c06b6b23f26fc80b..f7dd2f676e8813d95b6bfd0a876de6dd85d0d1b8 100644 GIT binary patch literal 168831 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

    Os!O zM4q{icCH|H$Qo1(B$Uo8Q{G;VJ!vSJew+G#*naL7K~4n!y8Uy(Tw&(3F!YknBfFMA zQcd>I5gOtesAIB`paL}pC<$Wwv)>OFN2ucVijgSZ7RtH2^G@TQ)+CmeXRycIN1xAC zPcRp4eo;3>*rP8U=wl%ympSTr^OW#v6yYp@imj`%(ja5CcT;M%(s?ohuDw)`<=wwgo;2aEaFII91hyO-fhko?iMdn+c` zE2kd%rZWv?Eb`f?iwBEN>b_en!<_eWmphLuWA#2uiazmkebxLQkx+J!!&fRBt_`f!Ke3Fka~^2|fOEp5?z>|9`0FBmLtW_s--Drb_r{ z<^pFP4rS68dkXfmqfd zZF@8{w!h^4Uf$g0W-Za2flXQR=sBHy8?j+YYJV^}-}9=yWb8M?^rJ2Cd4!kJ%oLv#sMl*`~vwkwIavw)pxT%#{X>mD8e267i##y zg42_AL~RBeu|pYYcMLMrl9{)qJ`8oPZDuULjOY#Fa61D1;B=@;3A{N`wl!C&j{JX2 zU1dO2Ti3pfARr>3g!Bl~sSY3w(lH<{jgmu4cZi76-JQ~1Gn7U5&_gNRFm!*%d&Tel z$q&w)v-jF-uXvtk-CUw3bb}dg#B`IE1MReO`;m>ELdn)^bg(_{C6={xI?)}>so*w` zaRJs)KLlW6Z|m(oli&E;c{Dx`!pMFzElo9X-NcaEyRb>p%&Bw0h?PHv1vHDp9o?Q% zmYwa73oLkn#Q1?BTSA#{3+FE$ROayIQ~rIDMu!7o{PYmF&ra!j6?>qodQ&Ge4qG9tIsTsx_e8IhHV1s_}{l3QH6 z*|gFaT7@n`stR3mO17y*yxtm)ec5{B(q*0@BHr@QHz9iPqXhv_ooAj$*XrmZ4)VE2 zyIizb#VPh(s&kw));d(94IOrQ#N!A%C5<%62mp|T*b#{H`saYbx2^jTR3{qz-lHsi zY>h>RNvFO#P zLqmNn)410*Sye0c<>R=mm%2f#nSxqnOLTMZ9J7@?fXDuQ5rN4t63R#4%vta~WeHjg zhx~&~-Zt6jjxB(AgbFnieO{Ng)@c3&Ad390vGlIKWt6_h&a0(>s-(pgx}?0$Hx)pq zYRfrg^mbOcIRuIoix|Frk&69c@%?Bk+m3*(X4#~DX~`$Y;FXRhhlTCVf1uv`Zon*= zU7)Jl0RFuwlnR<&y5kEr=T8~JeLcjJEz!kP9WcTU@O-owrJX}U5mcXWS2I&<=V3yF z)uzpL>F4L(jql!LXJei%zOP;BF;92TNF_mA73@f#mRp5~znlNvpl^d=6a+x_$nceH zUdjVcRXHu&Mnkp_iUYbIMOFdT=~(|R8h=v|CzoV>NznyRtAybmq|+tXUgcZMvt6g| zd!J4v$SAJ#G&&Fig%+Ieg!cTh4?MeqCl7At<&x$OWr?~tG3dVSaEo$~Z2(oSKt3pl z^$>QdXEH4!R+8jZAA-{H4qDY`E0^^KD2G0unfD|WPmxO@xo(A3{RBD~Vqh8n^pR}B z8J?nSqPvJ?j~!*Dhv%BcfXE5|`R|TkV0iYKQH2c0F3cL0dr;***@1Ybzb>p$>GQn5Jv+AWrRcV{@Xv%fnwbr|IqbGnyQifKV-NF)SAzhyWhwk7`YKGA*N)WsP6%*kd#$nfuDhe> zYaRNh3}aUC)4>~uA(hSctSHy`w)t>b4Sv*-TeJUgujnXZ~5b@oo12YoFzW#e;8R z&dLMV4RyXt=r2jHaz`TQHcT817yb#eaj=8gGrUNZQ7tZ)U7uwc^M(#gI+(<)Ubl2} zJaw5kQuiJ(;N;SG{9wI?VwUhw(iY`7J9ze{2ChJp)F9C!a>UrEC8OnZ8f76b-HZ(?*p3!t5@FQs(GR6l7^;mDU(TovWBp>BbZ6qz z?Xtf1Q2v=UO~)9y+I5B)^uwHC!}#=Kw)o4(NSXpbn)d#~Ddwsx{(Bl9i@<~xZ624~ z4i17=mba~cN+9b>&iuU=KOQlbgbGTk(yr-EO)3N@p0TY?+#ejqA_0(;CJ|7FOqeqQf^VjjpP@n8Q418MXq_cL?r0*DK z@jtE0jJw|oB+Ya#IQpv`OsVr4cVwQ(mvr+lzftpbrEizpqK-b3C$H6r2ostxsC`c1 zZ;$y#+TIacL41SeO2|o@)f%{M72oD+HP%DVC^_!{*yVyK&5-Nc4IK?nop% zp!<@Ut;M7fl>NPsCpMJGUd(SMjcOIMymaC9E-!+TY{dR6fg3Keq;ID5ZMDVnRFuW#PWglkAWu``TZQjn;oRD zKgSE_2zHmr!p2;sUPEbDdj)&o17Wh3BYsuZ+SgASoi5|0mFwKBOPfwsHFWeJ?enzLD6}2g9C1|t|8;d1y78Ca-?al0~);_)0 zze@Cw8qjLo;g4R0#X1g8flKJS0n7Bhi>fy!n$&))OmUVbb}qe5TV@)}H3nml%Uc+0 zmYE&#wM1_6;`_>6JuRGlK@--FGF=$@XD0P*$oC@~JNVMjOmTtv@q%V(t zo=wwk7>Wp+LY_QvT}QRlQ##jYrHJr5%uk%MScIkJ(CV|53$3@WN*qjHyCONz=r1Sb z^Q(93J5wSWr6{&cqiU_jGHQo7g;EmytoX*>+=i*9E!PZ^O=7}0qY<@jX?THXE|AoN zkEi)u6nI-w;I}|g;!_MM)3@1;#lDSSGo^JQj=Zhk43v2vw>mGLuhV`$KTSh-$h3am zKF0Lf6qLC7_1Oy5X;DcMB3koE-?2YAeOQO{p`yKWx;-tfin6={tdo8Vv zOE|>DTfVjBFpuZjUB!K`U|D8BctL)K>{erKV6CnOqHEtfpq0Kn>><>6+)lup`ReQ$ zG*}yLKi9U?omU*MT-!atvp+H0OCO3Z*B{H$K*P;&N;VFc3ue>f6p9zdaq!vg^vJ zE@j#-F*w8)@F*~C-^ZTdN^vxdB5QTw72zxNJPmU+JhPat8oTQQH9)<=+YW}c&~*>1 z3RcUu(%MD&3Y<7k@*e3odT#1EtgP}5LFrQp){PyGSL+X6c{W|{Xf~GH4$U8IpqeZd zGGKG4G&q+{*H^o9Gn(Y;3^&=M(IhURR`gu0!`UF(uj{MIO1C>D9jS)lbH!`w3~xo6 z)Cop{fz3kCn$w7aa^H>UA&54@>{1)0_s$$J)V1W&Y+nQD#_`s1Z=RVescq>MBa>E8 z(R8+_YE6 z(_vR@44%_*S^@zCkHb28Wi7S<qQ;CQ`{qL7;2YO`-g z6zDvsZvaM?t3TezD)@Sok;StI+biOW`+H>Y=b0_m# zZV1ieADT)~UxnG$6;rmlai7yO?4@^y1G+*LUz9u6Uo2z`N^&Ttd>DvPqm!PTSm=4C zyHtLh3JfG&7tsas6aw0P7k-xY=_|Fx@dMPJmeZo2>`~dI&)5`iv>u5)>~WuB>W(FO zSvBee`6MjeOTC4KY0TxLHH748*nNN?VUAe@U(e7NYj7P*VpSo+d`E1*M&J|K_Jw!d z+I?2+d(AsE&E$B^R(+2%_D)oSoh7exp>n!l=Em>{7L2#_jLYH02*>ws-bOd`nYtlo z(>cMtr|t`7{#2Z0|%uE~nsEz)R2Jr*%zhjC+FDwmYWLWrh2Ip~}&%6QR-`^RIXrw0qwIU9zSK3P%9-Z{mH6YHA# zYG)w4>~U$fej9T9<93%#kdI0@E!C&gs*&;B)+;1@WqfI5Ugk2?ZKeOZ0xfLNqQ~iu z&eU_f$dK`Bw~jQV@%rRty6)07%Yz!2y6qse2%J>F4b8kPU(JjORW%c*a12Z0)Ym^t zuG<(TuMK-cXfNL;Z4s1WD9Ep&#TwvO4pN!(^tO3$*e?xsz)rhL=r*)F%lA^c_0TX$ z`!vtj`t0`UdS^*V^zHN2ShK~e!aR(KXIfI_IaM~-dHAgd9I~O%))%&E>9LN<9L!Vu zdhY%PKW!pfCxXnH0S#e?7_Z9FgVI3x+>@O%{|5-vmSv0WQW8qgT3HB>@4V8zqd|9W zY}R(HnSE~7)nL){Fh9x@Xcgy}PRZ}Y8p4id(+5`iy%Wmr4pMP0+(HKq)pzDW$0ycf zjL$NPQRy?B?hR(A+MbE;X;Xn6Pv!vX1sIN>PUSQsldxdRlup%G3XzP(vw2hnn42lS zC$a@alBR?>N`xQ zLuaOMNY@If$U3bYJzs)%p@11|*S%2s<8FQ#J`}HK>4jh#=i5t*X@O7HsQvbPw!gcUYlh}<6jHgt~w3zOYB9LHSSM#ksgL8#5|MPqCBtg%C!yF-VFXx zYhOv5L$PM*z2GLObG)}kD;a90y&8HH^wN&p%V4o?Z{gXoWcX|)LquOHN4dLK);;JI z$0h7uh7`Ha7%z;M06{+w3`XzWvH1CK%Q_pVG_aiwyM+mI5m>$hfJ94jMEU_L9@(7z z)rEKRz=S3LJOM!0yoVny?a?akm%A)B3CQtkabAL{Yo#c%63;Zfm+tc0LI*014x6{a z_SYvL4`qR8_DpRMNP11u(f*RW!dHg8TJb;E=_A4~xZF3s^avIiSmR-zKdJf>KE@Yc zpW{sS3E}w4WT3>&L6#0w<8gqDL20HUhi>sVnjLAQi0&|%viyGOP;g&FuhjAvb{mf> z_7Y7^9#qzgr1}UD(MQ5W>Ik>!0s!f3g`u_G?KDI9v{TRMd?L`neDMwLlj0H2lGMh% zfu)^@W@R5#Os3a`O_4FhqSHi!ZH&(hvcQ=tvvTy_54r+Q3&g7?t>{aX22+Vw#def- zb@4XewGTVmywtZj&Ni$#ToR_Uy&1cw&QzT44e&nj~{fuanKZ0!`N* z3>i*EGFDAs2KLENj&ILX4SukoQ}SdQwkYS0?>gkP91cArGtU{vfsM9Jkls5oHbGI9 z+OY%1PqQ}jBj&v4TsM_kn6&&ySBUb;a`KS*)*FS>E)@(i+mfUrTXWGN(C64oaE#{o z6AsJiE9CNYb3 z{lfwW*Xl;GWmfl{{^G^Z(YaVY8?QpD$-}V+z+E^r-eu)#9XqfQXvDEb9DuLCf`XfS z>e4!#eC%M_5x8*N7EKIVyi~r(zG%or#mnSALF#koYmZfOP;GXY*%S$HTX-A01NJPt z! z0Nayo=O!SAaV~C@(_U6$Mgx8VWo_`ob2Ys)i`B(zNH#!i$=9(O!f{DBmS(QI*ywy= zTIGD9&Tn;izL;9e6&;i9Vr&_e(0TiGKxT$HWA5^-k-qjK?!0uw+(C>c^`!AC>!U$J z_El({=yA{LfiWAcEm}5%^TVcMky58psiKZ}qUKhp%}*my>AJq5vv#yg&34o*i-=rx?{wr-HL~UI)tK-vJv1 zjleSVeW4gr@(%!`Y6}!S;fJ8+=yb8@oCmih;yXT%4Wf^CEN4?KMY0IJaj^oS*s&aRq7k{|r_2`E{L#>PRk}N}#B#TmG$^EP<{u*vU zk}d@n!Z?2oG-{fB@}z8W8g{Yg@Nq>g_a=H>s7D>-kzDt)j~%XNiX4~DhA7|gu3Eca z?G6ofXm(JB=JIRs9#T!72vsY)q@b2&$vYrbet*6PI5OrzV-E!(YE zshcpit|&YkK)W4!@#l5%Z(#dK@vgl_9EwH*UERYRyTj5QkBkk2x$p^5nR25RpLzAl z>;ci1bBFZ#y?JGBAu~Ve|zR7~1&AWb4?m>F1M3u%Aid- z%L?rw?;9VZc&=tpnBh1s6Ur^*eKHvp2-V!$_1ArR&E9=f%^U5&N07kO@J_dA3pxfDX&(nTGl3sv!L{Eq` z779OrXd|)B=IEL3LU3PAILb2tMH*k|Y}GzVRF1;f-D&on88`WFs_V2~7U-ihLn~2& z14;dRHj&8NhIEG3_OmafQ3VDZwA7OvJ38ZD#LC{_C2Te2Zhi?S&eWDoAhGBlnv2!V z@X?m^9EfwZ^>IZGJ?H(#vBcGt0WG!OsQP+Ri-+-N1;YMafszd8#lZnqfvGZBn|tX+ zc$uT~W!b57nWl+HdK2>-c$cCmp%b&_ys1o(@u zt+k(tqRoC6;Mxak1%j94PJ5TNcv|V z{Wx5>xP;z-6xnQS7$p(XT6R%*o#$})#4rX)5zZ~3#W`6*|CX+NK0Ue=iD{wvmGS(e z-Q}vT_l9TB3Vghtes+MbldnA^Sjfp@*BM=jKR%W(%ptrhbh^-|)gy;5D!3ex+AL$6 zK^qwJZ!WH2bJEA-zbekYHqQH0*4QLvTmI7itky#B#YkyRyZPhO&rt(wzrL(6CNa1_ znhyY=rI5C&Nf9R!=L1DCQem*eY$W&^Yo*RA*k zP;c`KCHI~)j=u5sH9>t&VIS3ga)d@pu3C9r-z=RmTOW=8!~h2x^rqG60yeQFK zQe?_{JQvNhgk4=8^NilLnI<}BtVy18^m+;^*naJ^r!aKUl`-d=cClPkFCViMyb?hX zy`b4#b7Xk&G$UGh%UkW@8-Eqsjb(@bvFu{IXk8{lrgBb@86 zmP02k#yIAt6Vrpr`4p?eJQ17|y2uq;FT+s1l9i)MwWVb_M5L(>3>eCD=!q{g)Eno9 z&}-bGby8KmQ|Qs^bup;H_H0aW!ngAJDlWqHv~$L@-;@}d@WCc+TUYc*MME%CP~1pfL^QPK7YgAi8a(Z~FT!ZG@=8yTvoLLm!6}NzQU}b!`cZu641m50!-K z0l=*|c#HOu8x_E=JWykC=&3iNRQg6JtL4W78$N_SJKi`><(NxPlF$2S<2lDnJ2aC> zhwPnnSjv*2BY<6Zv7D}NJ1)&KGEL2ooD*0pus?UYZrNWNpd)>5tBOyvt=jhAB{{S3 z`;sKuFsC+kn?+^}rKLy9s-d^^%i{+48pRU}t?p&i%Hc%IRDs+L%O~@glJkoeX)-#6 zWph-DcGw0bpiyohe=#gN`Ud~HB(q16bz=NG8mq&$MuVqwoV2sGJnnkL++DGgGJKHiy2Rvi2;#9%mlq=%w=UgHdue0+V^Dcl>1Ukf>Id5xbiCD%Qh zJKcg7kM4f@*xW)vGq)W8du1{jQCAvOjehgSM0+l``B^c7vjycmgXl9pIz+b@h;p32 zIkH;#cCS;*^)lY8;m4a_NsX2a`zIwf*57j6aTnd2HAjt1zcX?^fL|Y6_w|@&O-~0v zYJ;B>mg@ZT(-5=jK3Fy;4zffnmzkY2l89b(jF@8@-|@`97$}%ynoD<+6rk36rs1Qw zEo2|2w|gRe+Bq_ONT#!9O?^%P6tAviw^OSWmYt*X7k^eN_h2atsfmoziB(6QzdC)< zxL6qNWq)07VyNri&NBJr3d{ZYLFp7fHB5Vq!@XKQCjUo+U$^)W!%H>AHSOHF2uJo9 zB1g<_4TQU8Q!LaQx!0e&Jt`5k6I$4vH8!~X^1!paZqmky*SOj)l27Pu%QWxas}zjI z-wgtIlc6YWnGI2<_GfX%vi-oNJ#ECG(p8@!cmNDteD{UUaF{{69Zkwgj$LM^K+9?~ z^zv|kgx>O7LsKa;t^aqd@T+<{Vg0#$xh5TxkACBz0@`9%QO{;uP@E{ceNig!2{xKm zEA3G$w_6j{3_|m^=ZA#p8O{{Bq_WWNbo2xCeqkv(?Ne)FsuMmX~G|Tq<1KLN62w@-#S(21~uujjj5%7K2?LKWA|H zg1;+%vR-r9pubvmDDNVlmA=aJi0E|ayJ#05qv)WsHrt&Q|L>Sy|G7eye_bJmZ<#k^ zvvj|XGhC?n`k^*TkUbzT5U&e;Vg7Sq(f^a+qSZn|k1-KObG+#qMpEPQfi`7_pYbr! z!%;VM00P;C&?w7^2vLNvAy~@?lSB;d;$)@<1c`Dh!`SsT&gwo`_;769ju8cM;+FV^ zcMeJ?SV{tIT*LX1zO$C1YnmP>jy_>%o4;IC#&%x;zo&EGmHdKukl>OMfB$ss z^%1A7qHEQqG1@SbDI) zv~hYNlpYCEKV$vH0L?&YS2>UsecxY7krxT@V`|P^SMz!R4BXNum#fZq?+{C-nP^qA zZ5s`c#{ErxzjTITUl-O5{0_$uyg_LhM?T|$7!nzlKI;DH)y4C6G6e;>ncTP03@8V_LoVd zbdI($+;4ZKYV&#b3xL3#PfO#j6^bU>RWyp{feCFqDZ0TLNfC9PndxZQ&GP77BRh|K zQN6b~;ezD3h2nA3x@{dl?&T`|#8Kp-{6MDk03ci@;Y=W&X%po1<-R6r=yCx(#uy`O$>(X@ql@r#;tX}ZXgw!5e)COiP0 z{|7)M1_Egt=J2GJ8kwlGI;esAzIPy?G znJQT}>gI=mbEIvM(-*#e4<44Ur7>-w^JDEdS8j70>;3gCLW_n(I#a@5dj{FNeeiqh zw=t`l6p;E*{=cw%=5Vq2aSQ0!MUyhw-Ifm1w*X{g-#){MJQDsWvPLZCk-Hq3gbxlT zN92-za^@o#)s3x3X0|EjL~-CQ8)j&H)4tQbr2?tD+Qx=)#-p4eeFN*2r{n+>m%=CU z{j?E4nYjbfp3RfXIy1RJ!s1}EaHkC|->ZHgAo1D^>u0QD7d{(}^Creh07N<_*?am4 zUr~UVB?w6mT~^B1q$8&%Ob74)UpLfrZjfR=c(KJ4&tWyxE_eDY-4;-tD}92!{=~rw z5Cz~NwPQ-%bL*|vN~sp(F-g^+v!6d=nan+dg5Bx3Q+`VMF+EoQPn!rh1)Un;o)inU zb4o}po$u(p$_fpd4nVKMj(|SJ0Dpl@Afc?BQTOSItvo)HF6MpWPKSQSccYAKH#Q8G z^)JcKNnny7(22H% zezAbvQ0>5jbz+(uLl7z{dh}2oTPhNF78B+qxV^JskzC5pufh(RyaNEUbnWEvRKdk~ z{@^_e;=emlA*Pv=s?{scU8O}6HNZ5TI#RXIDEo|S{s&dnh(|~$9>d^ckRJ0biV!hA zkhVUKlbTHbU!-3!UE~jDb3`#RxKN4VG`F!`@%-1OR^+m|L(JFhJ*)%|y1}sD9JW%Y zm|H7!FRlGcmW9c5lg9ocF!wO48hBF-TIvd-iei_h+<2T8n9JWmYF87Yl;Pqs9E7sk zV)X@94bFPqKca;}SvcG?EV1di)PHQ4@SPaxxEa0~y_YuGU7ubiQQ&`hCf0O_L-(*m zn!7(+b%5CDzEH1x|Aa%VY~)bqW|RNpula|7s?YFSN;YislPuNJ;*~AYCa5hBvK;{H z=&;|w3BFi5lLlZ;S-;nABt1`G8)pI!V=S-hMe@_X-p9iK(_Pzi=#HT#Ha%)d^|Zh= zLg2dCRXjP_Vl-o`I@K5JrFcCS5NNqvzZ6`-dI(+kA1WcUAMo}jY%b2MT^*r}b8gLd zhZ7Zg`AE(l%~cd~fzogkw>B2p`vLdN7Wo4UWBBIH{{anwV1_Y$;cI0|hiYk|p*^t| z8LK*trzHvE$rPp<6XB@7apGF}S4L)%qV`W8(j?l~cHINu%fl^Tdw^_sqy9r^uLs_; zs_I%&1DNH_oN?LbOJ@le_y7v0z}Y4_;3`VZ7;}ouqC(#NJjwnx2#Z+u{9UGB?tk)C zzb|YHU2vb()0_=L&hr+Ng6I09E)3NCUr>M(`MT=Ic-lZ8u71m39r*lMR<0y$_Q+){ z@iuD+{>{xH3n*unJiDc;N8a8q#H}N(e-;c>4a?7GifNniheu+=yds-=r0 z+{J1H&)2mD6VTQdD{K+kOM|!YZkbcaOWo`v1~%3()ui6&KZ8z}bj;FqNg=)U)FvPG z8Oi~NR(fH-IpzQc(cn$6C|}utSDrlAAdm+4;RP5)THyRWNYQPQ!H$NODBE%6JhT^a z*cNCf07AiVo>lkFwhQ_KY~f$z)6f@wdq$EXNQ@N(GkBP*`ugeLqXfDyyZ>P_x>hhu z=n=g`%#PD6fMW*K5^8#n$?hKxNc*uUPd-uF7#{%)6!iEz5)7N z4fNcN9cl2F4=}xm9%k(2<&XSzs5mmyw8K1YYzU)l8#Ry;$6nlQ(pbY>D zfgV}xw8$YyjKMKZoDBFwTQou5!wyFrkQCWN-6o`})19f`a6#a1zMtyz?gk6+TjwLP zT{gK$$=I+8Q&LJKRy*J+GxKL~nDl_P&=!)sK?M`kct>%KZKnU*V_%UbcXm=!U^g&*I)g{cycAD%AGyxUfxV&|j?;R0C@a+_ z9Z^7#AI+0QN0|GYHGkXkf7ckt1TwldPz{5+_V2NUg2O0H6kOmu_otaDP~_sbVNOa@5^yAv zOwF@4>Io^*4@R8_qyIsFd#a_IBI{b4E zboQtd089IV!iumCrgB(taV7xzX%^!@a-@NTiDR{?-De$XHy1a+K`v`^yJLkhMV;3B z)r&k$*cg(B3ifg!;FZm>LRuqPlnr}=;#7$`r85D|3^VB}mJn4!9C1Kb<3qa$qeF%*KaUF_$qnL0^|(5CAJ0 zE=J+%{42KS$&C*ei^7b)H#{pw&mfB2Jd`k6q1#&sLb2k3zXMEnDS9D5kz}>(~3mH$$v{S*R1&krtZnbz9yRh{> z3qY&Kvc$vTV$Y5<76v47#<5u8P1CVgSxkRED*nOHau=Hs^50zZM6{6E2~pCc#-H{7w3K9hj!pN?Q`YS0nx_)yqLYT z(c>>xr7(S8h#zO(}9dxdDUgwxKS(M4tTz) zt&@0T`1zdNUmcq!K!a>Zv7b@v@SByL<`OF)z>%oezrC#f5eyBxzTc=#Z+DD9k&N8+ z-^RM<`_VargdgafifNDACCl#qdi08!0-$pKw?Q>5_Of;#7~;B<$9q36n=NMcb_T_C zj~{y7d5~KemjA>daD)2ACE=>H(YoI~?8P2)zW1rRgn;1WUsXiFOiRR~#go7BWh$T_ zIW`V`QvM+u2sj|PqpeM{FNgH_aQBNlBU~jKvj0$o0lD8}F7U6o&KuIYpV$dVZU(1# z3Z`~$X>e|$Q+ChLwlXjf$mXPx>Wji5eJe}=@woyIhq7+rUb!($B^ywW@-Ld{{vQrU z%8(@MsvINmpb3#D35mMSN~oFi1AOdAX}5h`cf zb3G-oOlA| zs%_vWuHxqK07M%1{di>!vkD+L!O$)DpL#H$uVwF_TUMICC6MBXvNeQp@+?RhbC>{` zrbSB@wYS!gK*|xROy(P{7hJu=KrW)ClUyRE>gpL?O49h(UaxQ`V2g5Lsx;%2{Q|+u zu*;qD%b3-c_Q1QtBNL%b2u~3QKqvFhM)YA>?&q&83-F141lYkhYzv(`p$s*%bD?D- zYUz}M`xuUuN!Hr-e%Qpkvc{ZG=Y~6{sWFaNpf55RjYQ|onA!lz0cJo8>R!t?zU!h@}tNc zF;%?jr3qkE_|0cHkT7r5p%!qxRz8PiKS6&MdhDBG72v?xGzdhW%~7sP)7ZojVjdv4 z-}w8PmToRTu_o9hU;IO0C#@-8c`5*ei@CiHrH#I(b^$W`jWe>ffY$&n{$Is?C z$a;bf@;@)~(#@Ypf3`l`KiPKpefR~RY2!D&H!V|8k*rjONV6=ajwR*8j>3 zb|9g=S;GYAqd-WFAW&m6n!nLlHs+DCq%i7?-;>_m=gWM3y$JlF3}J54j`_ZfSpv{6 zefb2Qrb((|1iXwH1WM$Y&f7t>>XK-i`t%XRc>oN1OWd^o^(K-FJ=RQCOAq5yw6g>`TS1~%#Hkyj|Q}w zu;6LykXl2a&fm#oY4yFGi}!>ccbI+W7q&CTYkC4M-^4j09C4r~jFnIDe(?U3pBNe- zRz>qM$o%opI9i!0Rt2XjkcFr9yw(k})HOhC`4j>Oeie&Te9+}^{5fuq*`6_`VjP-} zTOa|Gdjq0Zo57!imeBp(WSr-mMg;}@I0a|DaGG#)2%L}5l@!>mC)ID zwksT#{_6>#yuhryj=lb9PFMVrNYyI-f_E0T!^8mKY27cS)Y!X!0$s3}ziqz2qzYu|t^2@5 zas|e^)A-|e5a>lO!?H`-(Lo%e@;*1n056sYEu2Ri4xHRqtoE`6LK^UiJR_Lx#osI9 zJrj49T3UX0TD^kIkPxE_$17C{AWXp5UZ!R5LLD&8G$g(ka|10XSMfsKn&m^_Bo!Mx zlVbm`8!DDrDaMy$k?-^%W|GKV!G>d^eUj`-9RZq;w@HGo#SA@v_iT@1!!$~p!7^O zUj-c3JP$1(+EvZWMhYB!iw3sA8KlwNgY4s;g_oS%=qwQ8$Q$jrnfDcjWlz#)@Q|g@ zy2eYq?WdD{P*A=zEEN_yO}p|kT)Yj?7DdKf4gx`PTXtLeJuWd)$9bl|r4V+E^Rz4^ zIIK+S*)vbsS&DdBfzn5^55A28azLtaA;whQk8s?W04;gNt>dyOp!%zhC0*bgt4)R= z&DG(5dK2toIuKT*u=ToB;N|0QD{jTGITPd03A{O=6i#{2*s^k_0giyFMj zoZP|aJLd%tP{Z@QBcAMn@R7VyG)zOFgu@ny?DaE?jK4FwnIdMPBV5K9q=fwsQ-A%r z`r73Dl>kp){Ko8F*G8&!Z%$`QD}zB&@mo%nUF? zm^*cBCkwzAHUdr^LGp1Ex-X< zPXg+$h22boLTN}sdo3~1j~yq^o$Gx+YcGS0DQZ&JjXv5fljMp0wYS&)0cvzE<^?X% zv%6_j?mAbQX^zibRQ$kw*-}iR%@Q5Mn_G*L{o-w=7zk=t?eSk=z;08;m|P<({?=f< z$X0<|*IjeOTB;D+apEBr3u&s>OZem>rf;wvb?loHA0)M6T4uX3S z-1vRE_)&WVV}k0Gt*jGR=$xAj7;-OTQ-ro-vOmS z7A8kGi2xY+aXo04QRrZ zfm|?ty3}X&)_x_vQPlW-mY&c*6`;O;tQPkv$)}O|ikym^0q8==7xb+FK*egn6X^bH z{m;3K0w8czL0tc@cI0-l#S zl`{817`UrsYITeEK8wQSwLmUJ!lWbH!I3e4Zk;w248+z^3$Ly08gPJ*wqqlnPf>9d zOGPsNw0&lWba!JoHTpUkO$}D~VwIJnO+>2apFA6X{E{ey>N z&H&~Av(=G+*7KN60OW1V2QyogbABTSut8+Xzy=8w)P)aAy)OVlKgz@0x_6N_BwxSa zEP`LA4+6%#^pabOZaxvvmmlCP`kz-KnkXMXtA@8Jrsk@(vYnY86D&~mJlO*HyRZSa zqoL&&`_%YDUUWyeR3H7AK*q|!>XXr^nAz-P*qs{0XM<$tNB<4Z01joQu0OBL9mCpl z_I;#n&*DWK5QS(aKR)iP(JM<5j{D6U5W51^ax`Z2x6+LKP-8`Z# zG5kJF1i$<%nW4?3v|$Dj*+L*ZkPCF?RC8?Pf2?tOt;+tcgs4->=uLubQlOe+Wx-2V z%uTN`mt`A-nxp04z79LdL?J?}T}h+S?Yex!RUc3w$AqcA*6$tBv$h?ADI31>dY=KP zv5B>&g$vP$30ix^hOm)Y zJc0W^!3AhsW;|0OU36c6Ix%ys$+mHp)hm-t{=Yg#%boA~=E?>9aXlLD)#Y0Uc|dXh z=_-q3(qti^*4vlK3?Nt3{GZH3BZ{J2?}MaB-7Mdiu7ylr*HHf#h-P4Io_V}2uuG5> zsX1of&m7n~%-RN?vCiNabsBryvL#OCEpdPtBQQnaS^Mxr(kr!(2oUm2#0V0GxRmJo zb9-b0a?>GzZi{=RN^iqD?}QRU7)RQ`UqKrsmCAj*8t z=YtQ_A1MQw(_*3WF_Fe zp;4Y0b^lc==Y#yHrK%Ok?%F1W3RQR(TuAjSJO}@$pIjF;`KVF;7SEi`!rgmPfV5fR zB^@#-wVaVe63pW-M-6oWN?L`de{}|(xQuQ=Nc3@^v#udEnsLuX`-=M%N8So0GyyHZ zMX2$TMcJUgFz$Iy*mc%;<|50J%XWsgqDym|!A)LpYFGpXUPsDsOSNMSAM*n-nj|n7< z?@~(YzkOnk_S0u?7-goQmfdYA<2jX)a(G)XGIsMY*gms%{ohx3?~yHVFf z`ud+pLgperYN*6tcc*v1BFExaiIiGtcZzH4ggsA&+6tgOiR&X*NpgBCOtUJw<36#^ zp1#qdO4L-Y$QiDVB^Oqj+h7ln4^1wgX_NizKGNxMLNl3Ex-mHge@d+v#qRsIscW>76s%=nV!d^`NFjmzXtX+ zUkYOikh=ZKoN29EK>ntK|92=?b&RB44ZPt$!j%O2);16ZCbp|^?x(9dfG;0^-(_mV z`OF1Cf-xr0^FNAgZ7Tu3Eej79=t*a{)ffNe)Fom0r|uUIp5F%sctC`FWetbU zu>IbP{lsKFgV+22zgTHxZQFvtp}8U6Xvk0Y6;|*Gg>s8oEmNwR}9s zIa3JNpBu9qfI}dJ1Ba4ovTZN~mtaNHN3hiYm&jnZf62G|FezNf+qah8E>!3p(=$L! zEQa5`3FKT~u(KBBOR-}S{-TWl$QdQgCb!xn`m^Id-I)+KaUpvB_iBj*h9!Qvk_?Gz zf^!_xZu`8o(H~(ik|ciu7}EFm-AfgMOP4y^qARMrfpn1{{H`h=o;E6Z7Uf6ryVC*9 zCyeG49tv;1o~_$21^;Z{uC!4^_?wJW8v}j(UtX^VLV8z{X}>&k2X4+T1rg~+K+!6y zDz#WGL+87gu}S+QKqLC)7+2APvY;w?k-u0w$i?8f)icvjrMLfiS7JpmnNG>Fpn_wl zD>Qzo56gHjzY)+!*K6@U=9zUUwePeM ziwcirFsBJC_P-T-;D!9n(;sti=TMSNfT7j7^d9ANr*w`A)hq5ozCf0IdMw^V(c7te z&?fVXx>p4V1z#rJC-)q_^iY++j3!MS@;-Nw(i39Pr#byo3IXQMxUBYN=BpKl36+Vb z)|1M78;HN3yO%rHiwbMb^=%IS{Q7~G@>!^59cdyk5~D9zp)~6`-E;o}X{U!(z^sOw zKvzr^6v} zJ?xdcNV$g!CkS>&{Xo8JcJ2QQG;+8T_;->SsP*?(5Wan0^^^NT+u{F+Q@Ebd89?uK zVFR&L{lcG59IbpEMC06=K0@f9i?unHXl&h;24Va2g)e3Og^lTQ`pVcst!LEYMOhw) z28A)oE@&4dv4!ee9y(Kep4`$NE#w42vCNz#zhIWH=8Fgsm9-5JNcK_^)KAs`O0EC; zh5N)6YM-~-F~g$o&DQpqHT44@Xe~_-#-^p0-M_9sX55X^UrIajtUYXTo2v}70U35m zf8{pfdxBAo&HW|((`!G>H@y`THpWcsPws_$s;@is3)Q~=uGRnhd%2Ul{{P%&yd`(L z^YOj!ZX31;RI_ZeoaL56+G(qXYP~wEoQ5jLar${`M!DUL=Ya5W(?DUo`n5*_F=zK1 zwL4mY!kWx?ct+Z_?~;x`lbGLCs{Zt|S25w!i%d?;4O3%hy7#wPV5e@n=M7RLxKJ4L{$mg1CCveR}!?n^EYz?P2&AL7sAzd z+cg*p4rz`R#@$i#9_&=t;IxfoRYg^V;7erY~Lb^*j1Q%F9>5>L%q*IVs z$t6S-kW^S&kw&^xN@@WKNkJr)kVZ=1S@ipR-aq;1&OLMHoa;; z)}5&Y-shLmw_!epn@YXzAIp*q?u(#lcXE=&(i?x=U;X+rIekV>tE`t z{p$l_{C1ig57Edno|={1`;@S25ELW-`_MoQj&1t? zTOW^ntK2*8v;3l#jGt?DB}q4|${1_YwIE7gwKbJr=TzIXI#hQyyF@hQRp0r34ZTNV z;PHHNYGnA1w9RF-Jp5On`shi(J!W~_3*fkSfGves#dJu9{Nn7}DZSW+O zR;y&Ld&9))1wn6JvLn_Z%=7!UN`FM?*n5ckVY)to`GLZ z$XK>q%FU0_<04@eVD^S~Ys5FO4mN$bvqw7PF*@`=`S779K!FW5Jbs~paJo*Ul8tJ5@?(zg8f21PvtOe^*VV4hcbFmO3dD5Dej2Ypa>=5& zjQFpdG$VraJqjoxwCl6}Dg7hHLrly;ilmdluTn_gUq4iSQ&)D1_z3UjLO=3<;pStj zXFJ%)sCfr1gBtc>viRT2sYlFP6O0wx<$N6btOLwe%!^qO`(MB~YrO-NYYrz?_#%e` zh)ze?!{pY|H!k6awv&+M>*y)i`YT1DOd4S1|1@()&ODNBntuVVtwi5 zN?;Z}{iH}PyXTWHgE4cbXSo69j)I<*LqF6w^ZOTht+AwW%4r+Yyu|}V!xe@9K~Gw1 zdi$}Bzf(2&uw(P2e@2t{fnl^I3y|MJ0k3&Hmz2Mug@)Lzp)eJAHyQfTA69v$dDUX7 zcoRCjlC7_abpLz&v_rvM@mv4<9Vej=)h`Jr9NWP~L{YAtD@LJ;La&uhZI9ReNgRGl z1;~~0^Fg0JNl-N4%@T$!qFY0EhIM#4ldmlNrxtJlJR;W}n#b1n)#W6bYk%I8(YHh4 zkTqPFx8jj9x=HoVF+Ep92P0HaCG(E}ih|JE>sXZrB0{`MD=@9_v<#EKA4BIYbh#k|enn;IuG$!6dZz2VW9);aRP1DW2enM=?NVM@tQv?|{v8PX?YAxVFI zoq~yFtM+%y&HIA?r)ZPxLnVCX^?l7j_uWQ{efeN!{mq^RnpXit7}?$XEY^4jVR^|n zDwO(n|4S$5T?cg;fySl>OH9hi-x`}Qxm$aGVy)L&3OByrYVc1b4)A^6ixYWZ#)AE; zR_=J66?xDs247%O<9&q+U`|y0)lh$Iw(|1>Iqcz!*4k$DY9Qi)hfOu8L7-*uJ|HkZbi0>;AsF)ms5cJ7q?1AIk^C#cIQ?@aZ5RJUJk@-)CyPH%utLE10_!BNk zV}G>EbO2LlGM&Mwo+vcPpS9c{k$n6V`5d2cU90&zf>5hbR<$@CN;l&BMa66Qf2eUC zE!S@2dwnp;we%CeJq7)7RFK&(LLQWFgkpRRdB(?Cx0eAldsD7!I~R8!&kI8Z6*2?w zkY@=bj?=YmW(2vCZdPMpc)G{Zbh@(HEXPfDhduyk+z6@Ubb96Z?O|Byb76{gSOU?LByV*;*YS<>KS{6`==5_SH(+s47vKm6ec=BUR$9 z=Ndq%^L{1dTU(W@uxLI`*);oxo%x^1Yr}k!cD5q8%qd0}KL{vHSI z*6*yhJd3KkC6aOn$C+MxJS97-VA+F(EkPT=z>HJKld`p$j?CZ^P}yJYFM?0R$^+~)r+3g6%~=!GB}yk+KFv{;rV+t+5A}| ze9$_|$p0ef^%C8z*c#at__MgyP|Gj$x~t!X zY|jX}P93hzH%yiVC5y%bqZ6{X-81af@EBrSXT=0~%d44B!ISP~8emR{6D4WVJTVtx zca>WE+y{#oh~LHjTRB{j6Xz36gt+*WvrvPxyX_QO5+*r`5FFn!2<1^_G`?A_l7~uu zY<5aiUTWU|=sv_Hwa1_d;wA3Hg973;aF)AInP(I^Z6Y7A8h@o2b_88FgR!#KHWyqG1NO z5Z+64pg~0F)y8ovQyZsq^+uBsZ_PCk9sM-r6zaUOKAZmKAeu}qHa|N7tX!Fbt$2hW zrG3ucML)+gp#LhQiiA>sAi8-&=ROv&Y!2&0#o5r-`z?Fas2|6)9=|V)hL!(Gx6{{%w;vmW zkwwt!oV)?-V^~WQ)Ahekk(0qW^xU#MrA&ps)u zH+<~cc+;K|dKXjs{91SLeeyRxF5T01DtLB>c>Ud# z0ir);r?FJH6uA9P^*7IIu^ITW^NeYcMa^fF-O~_cAIyho{ysRW9w|-aaviTkbe=q; z@fi9aVMo6s-C8^qQg(hB*1<7a^=b%^OL7$T9#epAK!(4B;HXy9ObK4~2i8Rp{^PX{Y~SY1t+Vy{zkRdGlQz zg=~k&Ki78;(y28~V%L@1s1+Y<@~MLJ)U$ISH58c$mRa-vyP@7txHzR9VNs7cv`8cD?P6MB7+rb~5yUt8uVU z>wkRLAhmTth>KOZw64xqyB4+Gu!@K71kQkG;2E6=2~0oS)yT3WUQ_N>2=(MA$uvN; z#P>>rBUvYga7I|7Tt;u!o%EV=`W${TuS30l99j>K{#3yi&RB0|Fg6Rfpn^c|;Y3JG zEz8iz?Wc6nY%=Bp6&d6f1HZT+>nMjf%{7Ps>DH<6m7Y$rT@tIC=cdOK(z+Q?A*r37 zdn|t}B$=|l(MK8mfRR7^0uz>oB{h!%?WX%H!O#A8sp*2ib*Pb=xg}**&X{BCZi<|F zq2;>oen9SjzTPdN)igp#V=pm!NoM!Rf3BK4c19~ku@*GUpcx4986M5xWY%Nay4WC_E2(kq z8st8la=eB!oNkQIp;{y=Z%h7A>p%%bF_s^qU8wwd=b4hlyvq- zl4#;5!_eK9^;;tF*qnF2c6YbjUM4JGS$7BYiB($9%6=W%MgDrGaELt=Goddrcc7-6 zhtibA@{eJ6&g5I4;IvzuWhl3FPT_FPRdSM-2vc&nUaivh^GX2o@>bK3YCN$$M(NJV zAc6PyD@GY6T!ewIJ;;*iiO~WS4qJHDAw&0v|b-z&pPZZ|_Z-i0LuAmIv z*Fyo70y|E8=Hh|2Xfz0icV@+I z$=dL47W6U;Y5_tC8d>J_=^$W?96%GJL#$exuyn@0HeQpiZq7QtW**w=vSS61rZ>DYsQ}|pz{;dl zQml4pyi8rZ1Qk>_w}gYMB~-fi3K_m`pQM|AI{XLZ$X76*WM`sBn8!pI^T5v@8BO=C ztMQky!%XtG_1n^zj7ND=68u=idp=JbK5W;naJu3V-l__rE$oj*J(tZOqm~T;ep_O{ zYEWBuzeg_fU*w0bBwf{(*-$vpNSqWsah0T)m<~3YTEU)vV+TRxA8Olywl|s;M&b@6 zCrABi>G*QybdU{h62NY*Q+a$MzA0DjYd8c!_ zJg6TeN?EA7(N``Hc&;P&tN0_f8rF{w8vGx~V)>Rj9`^U+p+)`OJYQn2DV1#dV9B!)id0XL2R^aswX!A*fbFU`vtR)^Pp#KjBEB2is$9;&z(RZWUn z!*w&>80r$*uW6340~zpnvUGdXI=A?Zw`YP z#{01uTq;>cD9L>hcrPZiuSF@ZXJVZauFb_LU@OX9uI`4n3Zw5@*NLS&ey(ykCiI1M zC?F-G(zvshDVH9;`KRUprw1)6(wgp}Z4meemr+CD(lC#2NB<*!@17&wJ<12_*VjlK z1~kSxk_e%%*7s5sCTHb*6N-#w z`iH6X&2%MI2CqDU*D*BvklHU@Ct_$td!P$w!7@&i7xD1Hbs1VBsS7*iJfh3Vt&<;< z(n>`Kp{2CvA+^yx^YBL7gWebNO2H>Z=6q|jWC243bz89y~4)=ICpm2#MCPH{mV(&f7Dc%m_soUrHUVXSQr;i;P`W7 zhF9x4=43=zVHtu}1`_4EKX2@S&mzXg?HqDOgc@yRsfvGS2{(YCMRGC4WAZp69j!kx zVz^VV-O=`+y1#{~lJ(O~x_bHOXuzu9@>>l4tm8*a<*f+tLVqZMxuy$K6>>sZMjtEX z9mR!W^o5tu;Iaobrcw|muMP04{JJpB@(qzg4s8^!(GU1x=h!)dVmo)h9qQ(f+twM6 zu#t9rM3{^lPdDzJ@Demw)!aP!#t5{2&}g|gZt;2cNV<(#jOH%Jm@2yL6RAPg6Pugq zJXuePNcz4kob$FOdF?@J3&>1|e+eUR{au9p;$%-Y}opx_PA4of!zv?IbGNHpg+`WP1S&yJQofA{3*EvK9a-yMq+t7+F02u& zfHgvW{*TS{vAQAaY^!NG*kINC_GYW7p;^iR=}10rSHx5oc?NATB}Rqc)**I zht^r<^xr4RW^XoNCn)#;O8Ja~i^N#HS$-yJ?q(TNMFBY|E-HCMA{=Hao?b>L;cFgo zE{}DJ;>L+$)-3w^Sdl#S@(ViQFqVl#kYmYkm?5R2fNo7Sj z(WzMuSYeRJpUY7idYjjm3bJGvY#^pb-<@;=m>zlc7yb>Xekio=4glvVbk-~P7W%;o z*ug%q1Jf3EeiEn=PHRPGP!1t5#k@LI66}hIpKS=;hf=s5KH5`5@Imnp4S*@C=1pxU z1MhaU`&Ir8Dr;_Yi9Jk=_7!rs(VrqTFu(6BAq0Jc6q#+m4cYp2ObRyM5?{pZbN55> zJZV#TCr0!bJ9p0ydmrjbH+-MRq%h5+eEb*`6z7ZyNt1Lx*tZ=-U-3Q2y4r3>60rxh%tl^3A^Ew_3#R(jsr&_+}& zm^|dcX;Uc_awWmnCdGY-qp^ogeuF*U`M?-oxJiZb`2&U+BcM$ACe&=z#*m)k9zL$s z?>|MNPl@c{&%%-6ejTC!r)J4tssRgAhNiP5pDlVOzIVHR4gfoMTS=im6Uas+HOrq^ z4mCf?95f~8yigP*`yx6uxU>| zzx^eAVb`@YtlM~MbZQXtE)J=UR8^BRf25V_eRJJ|#KAP>qKANhEp#RY+=qIcrLL$rpeGf$oL>2Pov>$P@gYzn!uF)kl)$LUtu{2%zU6d-_^wHKb&P!f@8OZr4j50gpO>x?ld2<;9( z2OAk13(Kx!1m0CrgTm~|6*}9`@Ax_X=Epna%oS0#00l)Q60iGYk5}(Yy0nnZ-pJ9q z{Lza071CS^Xu@vnyx%A^?pDt<%jjv#)YhG6Pu}g?8Vh7?i7RvPxL!OLu5~@|GcAHP z+-10E6Bz(o*G6r8%;|N!f*K**sQ7vPw8Iqcvc*gd-2o=WChZvY&KiJgqZSjEqAK4D z6qtyKH7UD~**SZD;1f@Va>A3sTfg7zSHGX^a-{S(TgVUsZEQSPAh9*h-WC{C;DGP(6cF&RhnP)~j71Gq17HJ1>KCGWAoeqdpMlwhYU^c@-umH)OgH z-K?;;g(&nra?*Q^B)>zCBg@Q3mCF~9ZNAz6~C=h-YPUexL$cC=j)_h%Z5nOZAcP> z{I3g9W-=ZF*+i-%^L?_f8qI>`gl*I*e@g@fUgF_t20osU5E5U zDWw$a$8L%;-#4UDc}{K()q5h6D%7K`{WPo{hVMf+KO%-nD^j*)A&+(g-D`jtk>P1v zZ>$(E@|9=YC~LPlo8Cx?mpph-@Ktz0IY-qB1dDe7sMRxDw^G8o3zv&`^0rC75Rd`j z<^@bsWnP1p`&;={M+VJ^RtX>#eJnu$M!&6H9OoXcvGa4dCKq1;`4kqP`fI(mHs-It zxP-5NNtj5_X`}m>j9}m=LN6XH9`$PPvYJTQr1PdeMcUxAD3{m&=BY?*Y!GUAs@nJj zvf*ARuKja=AyF~qZ$1Xg2w#+}P?!~LIPTAJzxY5#R_%|KsKAr%_nN_9r5y)UeF&iC zK=f=6);gV1RFSe+ZL;IXB?yP~;YEer+c4ptYn*|QN8!A4nB)h zh~ohgPS&0=p!X}Dr1-p6$Ih9xMP*vhaEs`(B{R-Jb&+m8SDV%~YViKGT9MP1;#4`_ zY{3lTZz+yn5kP=EKx=FmC5%ImROrQljzXy~@73lyK{Apacs;c+X_P$;@DJ>zveG@0 zr}!lx7^2<U^#X^onP1I#E#w+*n4Fq*>Wwzj=5`sK3z`V~z{ z^!%d=kj(S&d3+!#Cn-_W-k3fzofx?Meo|i?q#kboSgC;1zLx=UNe^w$2+QzHVc#)_ zN(j;qn)jP*4rBSL4cZ79r6O@qk5Nqis#ML-^IjG_l+OP3$j0li@JW0%RlaRbp%}_% zgwez&YG=@o{jl`H1vE97_9!fJ6Q0BtGm}7*8`>6lt8BULyT>{s{3crWV@mNIIeMdQ z{%6kiWwvw>$0ZrBSG}GkUGYwIvZ)~S+fmO9%wCif`W7H4G?fHRY2Hw#M7R)5B{eaD zN|WG%ARpreG#B`Y4*qi&5F}(KY5IhGVai%AP#zb*f~JJ|jOAV{_`PVMi7T@O-5E}8 z99Xa1XSp%Z{=^DwswOR-24Umd@%7fB_1`imyUSiF*EYtE%+1QAPWa}ZGW0yf?JMxT zSgpKAM9^Ls$LV+XwByPSjIQ+O*68;V{ai%A5Ab#5_3=>WT?ya48H>eQ~ zI8$HwzAMXUY9d8SnNT29V#%a*-YJe?#dT@dSs)^8x9PV55gI|7#3xWHL^W&sxka0g ztyrG~y9APZ4Ty?1FWBe{FkF+O;C1L-hRHY@N9TjrPf*}4LpV2H9Kpx>@`)-q9?4a{ zyWx&tf=DdY7O|Dp{VR-oN@NNJBFRm zoIFD~yif5DV}^CyYmFx;(bbw41>;tg8dNZ#MU**Cv!j&rijCFI!w>JDZ`c!O*xn@hS<3jX~DWF)p4m zTE_i?AhtE%-^%3;lljCD!w&h#p@F5k*{|od+~eRB1{x~Z`1y^L2@(9Fz|fh#8A z*;_9p1aw%~HJj9l*@A^Ek${Ep%4~+WGC>nG4WhRX{wU?4CYem?2+^vfTUuY%z7)#S z8`;CVN%02t7i6(YI~-mc zEcGHIf}zMe34E>j_A8tk`i*rc%a3+5d;NaPf4u;@ zBR%0`J`_}a%dDk(br|C!#=5P>XSD#EE1$J8vR<0~l$+g3@Tg#P#@EJ8!=BreNR;Q% zGA)U%)PsEK6`*X#Ko9bzwdK$CASGVAxUZQbYq{=kM}Rugg5FX66WbtlqeFRfQhy*P zGU1!7>eyx~!q||v6 zJS+_p4h0q>S1QN>y}`z>n{yHZ>V` z*$B1V7-JvKU$s{ta051U?4t@30!Il3Jey{(4quy+C#vkZ_{Xwkg8|Yra5Bn!AOgYQ zLhR&9)D3_fdB-C!SU=4aZ~QusS0x~Y8kk;PIr7xi&o@GDuz$r5(@4-nm3L4Nn#kdT zmmx(+JBck~rC;`2q;yM>dwj+YkFb82cUZ$|5YQFj3^4!Qv3kl!J{pdiq#LPs1K!tonE#!O*KP zMNH*Bh(UWAz>9pHnLqH!I;q2C>TIv!KP_C5*8r2f+uBJrDDII*@W@8%P5(S?!TMvn z%T4B1y>cE=aTf#qx(rQ$uet^LIYwlEA*g|a1YFeCsNpOz6l1GfKOhe4kk3@f(x8Kk zz1IXW!;W%mCuV{5bLw-0`0<(xUUHdikPz*3p|NK|GCe^G*A+7-^BY?UJTRX?y{9b& z6e0x|XmF0`zrfcAro$9t9Q$}`WId$*z$HS&Iq?`oj`xX&8vKfTJ$>CRdOa1Y$|<#( z@hBXlQ-J!CT-Iflte0a5fbb5i{}5W+-)q(t<}2Ko6x1HWhoRr&IYw?}bsmlhYY-x8r=9W|io8qPj~jM23TF3?%DHKPs5n9XCO$6AoEo0= zGN|`4eW6)S#^-|{N5^h-kTT*egotCJL2Z+eXkY0SNENADY*#17O222M-^3a44J0p2 z^+x|eA8F1>XAxiCQZ3HT0{4Qz?iHv|zxg(YSt zx$$0$L5*TjEHmO7WSdkG#2Kj$)j#e^C3Uq-85mr{| zOjnc5fqhB>g<6%ftf?s7lyJ`7whE)t;NMSApY2aa70l{{%m_J>T?cB$Mhw)9#E$MF z`U%d-dK|N!T*4O_%=_pQiHGKauWELO>!W{+hHHbcQIq7>%M5}rqo^7xSA5uA(3hDv zX^O(?#1s1De3GFP3-PVo7@MqnGjLr=xI}wD=a0xPov9pncA6E4Znnz82A-$LP$%%c zeE)!Psi01e*3GX(F(O`o#K5x=;h2z?A4T*|fR|77R&47rxeYrvnM25qI59!h-DfkG z(Kkpq6m`V&V%R8bpXx9*d=`DP7S`Q0BIrqYD#48H|J?EF7Fk+qJXQNW8f!K~BC=?pyx~moYdwz!3AdeUc&P3OWqN zBF6f0lItY$)ZVm8Q~JFOgD7NUht43kqm5g%%ZBOzX^w(UEt;VkL#ZhoKWmaZp!n-< zLOj{N>SB(`hbse10jCoawBNpRBjG-XU;qZ8jxV2NK{0*gvwN!u$=jgboQE@u>h|-(+Nw?diSznk$_uv(avG^#lM1?wugcLKpE*{>-@gTIp&TU8kQCE{jIRSUl8K9+00?0OSu$dCcVRBGA->x1vC z0c%VZEr=9M_qK8W{fJJ}{i|5F@AAh!)b&H4<^LLD&2PZ-u7b?sW~p~KcKR#?4z*F|JwSJdm%Z>k-!wmaqr)b+PZ!A=<%AM24D-?=I?YWd}c{|>{%SY?$Ql;fA zRfLd-vV#WEk9SpAmm24T=B+aRmQbND8IoX+@Bzn3Heh4J2fckPH7qNJxo2SjHlkT$L+(ih7kmTHeN zm4OTnnc@q7kywxtOnd-pJxWXIb?SAtWU4qXYKiNJoPKVJ%p)K^Dl;VL%W(iI&PH4PVK%qLu>qd|-nc<33NJL}_@Yh6D4Y^pt$O(C(IXqT zB7u>ehppim{3!-J=A22Vj_bF2C3ma3`a|yn*Hj6xPigu&KRrx13Ar=yFidiCmM?2r zLQ>hD8BkGryb|b=EcOQ}_EZEUjPjydjZoRNYjmO{PI_N63~wTy2+UcQ3(>QZ%gadBcr)m=du z?rV6LAavx8imxy!o*##fNw&D|)7@B_HbPDNm;##`RyWr|nIG#`PI>h0IqVXsML8|( zBvDPUKFTS1o(m-(6K#;46`FhhM$80!s2g-J-mT6|x`;M{ap0AxJ zjP@h38wpoEEHd;AMmWM9caGRvf7HX>&^BoRk(>|+2NChiA8m;;uQXbBTYOfvGN4p* zr=CqDe|UxOP}nx69@zbqZHhKd8O`3**-SpvuKNxnHAOOb1774_vq(vZu7m2}{cw6m z`r8%cH*X(u*)qh?L++I=lSPPpWd6KpJ62X13zcAf@;+myd|R^4iCQV8tPixnCpUAt zQXM8GJ3ZwR5{bZHs@N`N(;zg~z3SBh#fXI$w!bX=p}`J90bF|e6Ys63GMQcw0`!xR zP|S1{?SqpqGoTy?tNcFwrwZ_fdIPytdBoKhthd-pl}#NtEf&&6Hy_DG{Cvfyq(hpd z8R0}^fjM|ZHS(xpI@I^OVk(um!G63#5yQ*nfCj@^p=;Oc3!bPy1{Gl=ML<=BWRvKp7+CG)uBN!@UU;Yd?hOa&VscT`$2+t>N~yc4Qd#nKZfT~qW* zlqJ%ov+lMCU816}MjW{oPX97jO3jxj$``gE|EiaWEnL@@DIOEu@&i&d0UI`4Mc02B zlFt+~lUh{4+n^L*uf?dDt*tipgFjghbXf7T^5}y zv_4kW;@3LOTbG(V<8;|ccvO-sTvY~W`GJn1vhQ+7$XT)bV53Q$trr%7b;RZ8M!@%S zlu7|gF0;nWyh3Q3iew~c?mF&zeS<*V?=r+9D~x2LTsN(893P{QDQ8CIW0&wkEPWxT z)^l}^$&6LlmH5Xmmcysp{Hzq#e!JtF0@{lCfjxQ3b`7_Mq%?&>H$?4!>e!9wJ2uDP z1ZH3iEW2mS-HHeLO5MD``0xSisGq@f*SnV;Y4B&yf~3ga>rHNs?Yy@i50}TeEeS~a zpiQEyc3aeo+nb&X)*tMP*}q!$SHgvON|NklY#J~1_&dIvPnR^6o$gG=PaJ)pe<^

    7{Ac@@iB}iJgC>xRqGW-!yz)4&z5F045TjVKfmt4kl(bd zAoOK`Q=q*f3Qd4raQKxC&&E@-`^@(nJwD`kRMuH@AJwiil`EoZ|BCSi4Vkg|k5AQu zP7(LYybB#h#&%NcY-1H3;X0;UX@KE*#JE8K4897I&6IFzYErSpUU@t?G z>A$3Nx`*(nfLo7eER z^Hn>qa`-}=kKITCJv1_0Z8S?66}{C=cDNIqER}x4)~^UrBS79kmvCDsC%d)J zZf+dX1gbC6hFz311RxpF3b*$m1uE^y%uu!*wo`Cadl^yU5+VqPS~6x5*%d}}M~KiC zS_%+=3FE;Y#s{sW0Cd?&eME$@uJqUHe_v6!!52Iw*fp<*vy8tzUSMtYB#N`iMWr5~ z`t@PQ)L*Uk{reChN+=WKP<|lQreTGw=WsWQxaW=K<#R$4|Ms1+Q2WVJ*y0Bz71xF1 z2P>rYXI*Z(nj7rrns^NSO+Jx=JP7`Q!=YDFFBjn&r(IVgaa@!`0we3iugpi3z7Q#l z*6$869r@db_8U6W(kX{|nh2Xvu^-PmOY54TnI)$yXg46l155v}>Ie!aKhzlNm{Cu= z_WVRren^Tg$S_btdS%LXlC(B4yjpGw6-AUFp00d_lsWR2UldqK#LR@)Ox~Ip+*=y4 zSxP(VD*tGC0k{5LFwf*Ggt@>OACrK#FWyh|q9EE4uV`i#0;v?Hp|bi#z{S+w+|B-5 zy$4SCmu8Qn&0Sp#;!u@#iZN;%Z>>t>>CIPEEV|)6{GezG7X$RQcAR33A%+XWHQ6*Q zIw67?rB^O8j4$XBpn_#b2EE=e&A;1DM=;jY@+zVD`UnuyuzcpK$lJTE>5ev*rRo*j ziKERbW`bw2jkdxP=XI?Gpoqfh0vcfXK%`>qxkj(Quw*Uo*DvZSf*N2e1lmYFT0qJ& zMN>E9_wU+Ev5vq;~hX-=>~M{ zLLZYjX@2W>{_I-A!C4xdd!Bwb!WGx5PEisds+31sVy7(K=R4kyu|6k$y*&?yTqW6h z*iPaw)6f-`5*n#-_1iZlp!e#Kcq`WXU7g7h^Ovz@31q)UL?4PhJq+EvEE#5TzIf2k znq%{D2FO7;1nKVR{>HPrkS*3b>iM+rLNekaM1a_Cq=i~Tcs*DxxA)1p-e)HxlM?tx z9_(PK)?Bw#L(ZzArhVHQ+L^BfkhFu~6`q$2mXGbO#e=}@*wCOM=zS=L$g$z>U?*Q@ z@)k-@7}_YIbH6m!ZlTWUd~L%>2C{zRm~Blq3cDXhY58&J55IF|Q{HQfZ_w-2_n()n z>~Y6dp6Z%k2b%K+`aCgHVqIf&8}-5~=OUDWpAUTj?>4Z#^^Of2n=^nm((RQV1P^u)mb!R#Yx8Y99iBZa5GcBP;0LrYKfWNzEXHaiyzNIUqI zDoBm??Cl7k05;?2IeDiPSIm`(HptA1tjK~%<QDZ)aKi`;FM3>L*GxsUNpM?ay z?mK|9&2?Sx%Nc?+1n;lr2fnfWlOG2WE3osvO1KaUJUAV&_r*tJWmJ$@k{E*#i?xk? z631CS(!uCa)&5}6aLuwo;wWmTZJ;y$q(YPy=o0#rI4OouP%!bAw`JbD1Nxy6*Zbld zFT+7PU&Xc!Ocq!tE>D$)6a=aF7*JIrSIU*d&Sq0JX{3wTX4~5ILqRQEk!7^IqN|gd z!lkia3_#Db_@MAxb+04C`H%Es4pmhil$xFev|!~o2HZ^C{?MM|y&aDBS0vz2H-R+9 zR_(QOY0WB8-Qns~{?fQOs2PD)m-aWtMUOsR=1Vz#WX%Grd>-W6SIe*l9m|hs5FIdnoFl{C zog~JUD<6H3Z@bnLzNVgp$EfKI35$rUQ5D!O@$HKoKOK%y`u*F{XEmr@N^?SnCXwv#R*xJj)c557{@yAbm5~`yUuRVdc zgT#R@DJ(25yx%8KDV0jYR{r%Dz*5H8bc-WWg>*}9(Sn~j;WXmlSil#!EPUwmcMUZY zo!Sp8 zbtxyU0cs8Y({BW?#X<9^a4hoE2r%8NqRptKyt^nDfH1A#z+i5FZ73y$m0yN~MzXt5 z@R@;G66nsEp1WMN(?^3tEl^0gi$N5NRs)&60IpRr{XSs`L8n_@^*z^2fH6aE5T%9= zj0o$8oW8J|O$QzzOOf2#(Vajk#M-a=AMN!+r^O(4<#( zi4!s~Hzwsp4IXYGQ!p}a*<_Qq4ZH;#>QBH%*fR|AW_2~WM8m{L-10aQpC(3lUpKYS z=jf_s5Mu56CG}A3q5XCz!9gG*yXSZ#-A!)v74JYW9Zud3z)5Idsu3<0YtOTq+Yo@SVWS_ zWlG%1m`rsb_#eA!S;&UknfPTVLomt*m4<(g3DdjT&Rl z56eZ=F7LPjAl$(V)2dRbeS~NGDkTAye&Ghk3D(KB&x*xv>)`2bJrilz_jx1jQTibp;}=Y2Pc%5Qnh*&yI8m810@rx;)BHK;N`Ug^s6x^HfgrvJ z9l^frwZfm1=S^k>%wL(Xl|k{fJ_{-C-+WAI=1zZguYLCz85h!WZ{(=#R(Q)%t*E%| zzr8;iu)Jo^*d=M26PEl#ao7)i-&_+)}lCi#fv^RMPwCARbc=aH41j#NvLLVK#o6Rh7x1xD&~ zA2XVlZtL4DPe9YJmi&e9yS&Y+t^qE``;lj{Cw_!Rh4_(nlAE6nBHTQGSroFj@8UkU zi1UQ$dN&^cv(zD0tY#_PvseKBi>Pm3d7%JaZx3 zzUu*mx8EngbCM;0>r|;7DsTyrCvLJf` z{=pyy)NO-(YH?R0WY$6BxZ}X(D^13h*av%y6!y~OK|?dBt-qnhvs7ehU|d*68U7Nc zPLxpI<<>GzExHK-u=ewilY$ca4rsX*7yqI+@$<*cfw@Ej51ZNbkEXa;fp#WvA|=he zhD+Grh#W(gcd|dKho& z`MEhfm``HypBR3Rny9HjqVX_xBp?Ui*ONHr8RcpD3is<}aMngKy(pgdbEA6Tvy3~r z7uo*`-W7V#`<0I?_4{V2_^IP;KVB+u@ud^Ot_I^%QhZ$_pk+l^C#dp*#pI6`oA^8(O2v>#m2MM=F{{p6OR zZ+`VvxYJJArUCAUNQQ|s5}VCf*2B=k_P4|aq4+rYFqB>Z-@WwJ4R_8683|2jStgs@ zr^XlIok%UY74b>k2`B3qL&%4KHyQnh9C%xj$`?-EY&Oilo&Q`@2>cvVbWrSg;Q~xq z>8^}U>?7cOFMw<%NCS^N#5$6}mV%?$>E%l!Y*A%UAXgH!R?oVxlWbeR$ovN$wX`}M z`UfHZ9!+OuJ{N{Cu91yUNq8g}Tk()ESS?3Cp$7hfm zC6`Uss*+H>jQcznU@6&_RG?)aOn#3f#=Js3tkI08Y&j9L)VDWpY4yamuOFv6*^$Un z3+(FjG1ZT@{-*h^xkzUbG{?0*^^K!UX&^q}Q6W_;Xxi%yND|qrzQH@&5${;Exb|me*_> z2Q(*xy&twL!{nRpzVv-6T5wM!=?*S%yv7D!XOx^@yJwLz{yVoVNuK)j?o*Hh#c3oi zJvkX{#f$qx52&P?dgXQBSg8pg$TtdyKtJx~4?^eRf}%N6x}y25Z*$hh+I+#5LDb>M z-_sThnmB%kar<|l!7CMHPx!P`(-{WgWLi|lJAA<7oYqJC`UE!$PfF11ZuRwmvp>`K zT$80vnj5XVUP-aD_D1*O%w~}>Ynrd?q1fa*d7^Cl!I&k z2qiiAXOIUZTJ87V6IyMUYNmL9{mRPTSDZ@Vq^<;<2?mP!cs?xB6B;M2Bs!s-cqGL& zbsD_MlA-4L3wIofN8P*-Vcq;TgKMse@kHH6W7YKZ#*=?@!Qh(i#ZyrP=VS83f}DtZ zprFN#c-vvx{Et%Z;A?}0I_LD_v!~@QxV8WR5|}7YML=HQu5_uA zv-81A66+^c!sID`VU!*Wvr{&JLl`837&NCq;jEF+%Qa>9g>OZL$HfbBjBqiu3x3%> zqU1OHyFq6eZu*ojrymx96dlkE1Wrvx9IOD@06K#s@#>$h)Z20yt_r<4xy#y$jqc;T z-v1P-2P0IBIifgAIV)p3Wp4USoTXxDD6x$D=mm%h@D>$1?lXT+3nsH=4$s+g*QhB~ zmc6mtEj;G0$8Dfxe$eFr#P>+`T~ zqYKelLbT{11ks7MNVJH$SgdHVt41e?6212p5iNR;-lAJ|C87q25(2r z-}lWv$2t3~nR#d4DQD-M_pHK*@3gD$qb!??Y)Q*L)+(`E->pQ35B<&Dc~+bc~NSs zZ=GMaSXQG_`mR%Me&31rr`E#XRiyef~7qX11Vlh2GFuNPU zW%K^Iz1&<)E$fRKXLCvV-)s!MGgu)tS)Y3DyJ{wJC~ww0ILwzcsBm1fsnq0iPlU*)29@F=sftH zMJ_w40jGXvC`HKmLH(`MzK7CDGd(Xb&ED=^!lCC06OhG@plo2?WffQr^KLCk|?MY<_PhA z(3ID7NehTklbdG)If^)g?kfD22v7tQQFdT;>)?+K+U8gUg%7U#rXlQ{Rr>^691vEn zu~IWx+2@zOM*HTP0Q0;J!$AEb69I>|yhl)wk=gDW<=5|xDb0=iQc%@9ux3!PoTE>+ z8TwWO?Q7C#$E%vUkFMFH;u^Z|L>O9kVcEN}^fcC1LyJ9~Vzof~@+0H{vO7KdlSu)$ zjYQ+l3o&L6P&z@!X!#JVsXlw@G*G-%Gvau|RwamQ-6eOL0_j-ey;vqt=JWeq8U~KD zD$1Y>38QAes|nTVh>GS@%62nm#z=K33BHAD=za?@t#rCpY3}7xqWV^0lsC|>Mj>qc zFmEj_NuYu4xw}K+tfA1d*o@Y!3#rJ*>E_ew<5GRsV-=f?G~_Yz@TSZaw!42kgGGzN z|AKHuUTUWKnf_%A6sRa_D3r;W1!$>Z<4|G%004|+Djfy%CqIAybpeBW*g;@??)G+D zjB~MbwTCUH?RVKTj{IX^OqLatPN#H5(ra#YMT&YKnyDz8gJKw>A3*o-oJaZ?Jh~=J zmfaR!t;!(nuGfX>}*Y3p2vm|N8uS3pXjMDHx`!)E#|Ew3~`oa*yUNm6mZn8X^ z|7qlcROng2Qor6EVWKsVKoBADQW}Ac0+l_(iD!UWYId`XC8RuCz{To`yZxTMB^CcT zx6CvrpgNl-qxce)$l&_61>o2;k~_7^13U2zo|Xu_gb+9OP{#t_QJh8K$;<*TR|59~ z)ICGOrg<~Kj#~_Kk>v>|8;Cjgox^q3J|n7YjKM3la&$RY=M7vFKCOFS><3jhD7>?H z(sL)K$uAf((xNLNSFb;dE^?YngglF{D6E&0nHtoWZ8F>8tQ zI2v45l=H~CV`U@O+lTId%J)dj8kc+RfMFb>ua&Tiu$%D@qIz~Trypw(;zmyh2V>!3W)hCOD^Q)6FzHYa+$8p#F;_XxAU zEJLX;GcIsk;eG!JKFxiN?K8kJ9nLqRakkSmoKB|n%Q?p?L}v;d7$vI*usINM08aNr zMFagg(R33a9iEkJ_pz^|K<~z9*0xv~;hM=AS9zeJ>p+pTAE01=CHJMtk2NJub%j2D!6wMXfarNb1g^ zZj&*ECC{^x-|Br!zh;G#ifQC;+=UP^w|q8E=MSg&%8EJQ+r-tei}^;rgix=4i%Hrg zPPp(HEWLi^xQ}J5!@jnCuGMX~Yo^JC)Gcr0%bWMM^jYyrn}Hu3D0@bS?k$AuBHyub zo{6w%NMmO3()j}~`S>tWhB(*eP05H@ID0C(GoA{(ujfHjW8GzcBu7A&oga6pHx2~KPXL_FtSX8tswK=shLa^ov64*fJSHax4WQpu-&P`b-VY)04SIy3a;7Te zyl0LRi*<*A*qlmvJVGFvb_*+g!Psz!FEE)%a8{RUitTQ|w$d$RJHb7?yg-kqH?0@T z>u1vnZh2GrySHFJJOciOuPu6B&pBIChz%!pb4mCu~7>3gb;aZjdW7SNF!FF{MI2w^vu^Zep3*p?|;IglClv$fpIbzouy7oV^~m%n|126D;7eZ%MpQ++Rh3DS5L( z5*))GhV7^7Tlt)$>qwEglY}Ye+O7?uP)D!AOnp3qF1MlItF9(;qebG}qZ+T!jzc_D z|7wr4$4hDwvY;eZllf5irk(Rkwd1tqW z{jxDlRj%BoszW4IS<>374af{&qc>ZTR_Y*F;@;^Ak`ZdV?eiIW^ZXzhM^jv?c15oz zVEJV8O;_*@$Eh&#A`V(@%~;qHxy7|DA=269O6{!_v$c8j zMI`$q6!U~O4%NkZ(;wylOp_V7OH%fJcF(Uq65|_?rTnUg8MMOo zSr25LL6=ddoA<#+t|P~0?f(6T0d>hOq}Y4P%DoR)V*HO_0P#6`GV^DlA0C6g#3$<8 zlmakeI?3${I|I7qz4G|;2@suvnb`%6+Ley?4rb;fOJF_^Bi{RZm$YnUdwSo=^F<9A zAm5u|$x5=o0mW+fHI_ zpHWrbLdvtpl75uD@~~Qq2lLal)I)DI3G;PhjL~mXgL&J#(PxMSxD+<&#?`h&haft8 zMi{Gb%!nV83>X>jJ!(+P)BwoCwO=)QL%*?n_f2kYa0>%6P#E=#h?h1w%+rs8f--%g z#DbPH)Cd#_L}pjxgUP+vJWMoak=CkDpRM(bS~z4x=6*tcCO&?SDA!z=j>cv@#w@$c zreVeNmXRnXz|SsaY4T|y0kms5%#?$P;LTvqeo^n7`*tR=Nxk+N7tqLC9bX@qXlcra zc-tS#Nt9mx{2*(}9>Lg0vf(o(&!Ku3m$3f^XLzj6dl|zr_~7-2rWE;fsr191SBNP& zY>L@Lt|#_1eQOK}H(P&a>N}KrIK7#2IIUjTnklQs+Z@+zFp_Wj+`_RzGQ+3g=)p!3 z1ul%bP@IYmsB81Amad?52dS|<(@@*F!L}HFQ%n~tKTTg(1+_!Ra&2VwRh3yr?xLK> zWe{Thgh5v}coTGLcN)GM?|BnxcWN-1j#vVzwS!WZ$(>75CaTq!zroxgm z)3t<<`>#S$?#prbstT5_zwF8bNXXt#b7BN8K-y%W7ON@CB)uAmXFfew3Co9QKc}(9 zjN`7|BKeePS-Te6{iS>F!73n=I%VcFqQ*ZRil;g&ZUJ!39@jT{Ll&{aU; zn@u;gZ|BESn+@Ng)F+aAT(T_3HCjS+=up@_}x57GCW5(x9G!BLObgFu>N1cY9Xif4(@{5V+sS<^2d& zar*5Jw=5(@bkQ?J{0hSro*RNuCh^5VcZ8{~M_jtlGB8bj(^%e|Gj86Q&~X;lVY|>b ztuh)l7ozGFnbb|Yy^#VsCgJeN%!Xr|tJj^h-4fF9xrJ?Is>!{re-HLP^>NY)FWu7o zwQjJ{OOB$1N;2a-o#Qd~QoaP2w-*Nw%2^e`AvmKfwlBEB-Wy6e*iQHLY4cPnrI_zM zuEAA!I_jbfUHT|zseA{IzRe=Xjg4ftHhDG8Jdww^;XY{fllI%<=SotDU^kxPy4RB* zN}5e(@zll;LB%#}G-)g9;hrqkccS?h#IsEgMEJ7(1bA{L@DMkV3#_58w`jh!R4pIs zms&WSPAiSrEMB|qHd&%v?)l;_=2)TJ_RB+(40fnj2V0BD?J~NT7h9D=wokQNv5I^Q zXuEl7#e%+0^MPNQ^-(X*fI2$eD`6%SI%~4!xTMe4Mzn6bq{|vuPMkoZ-^`gchSu$W zGVh_5MLHCYJ(*^LQRC)73~U<;OJWZyRVPHmyN}Mk9q{M%72@F;>ZVh}h4kbhil2k| z_@)NoeGzXX%9G{`3YF%ALNgY~vt-%E)K{e_XIP>&uGsbEW?^bWCqZSl7xRUWq+b!f ze>N5oXiU(4proTFFdb{oxQ!57G^TsMl?%A%S)sN_Tz+vw;Eq2RA79*tr|@=Sd7*x% zgK?VF7AyWhaQJa?MJ1-PE4T(m>596ev@p|kbDL#9@KSrmZO(ZxY<*63iSrI#1u{qX zu(U#Pkw#0#E}F%>E?lTv%^QH-Cq>j3qPY^3ht+PKE1csyhgigR6$cRecE`D5nb9<;X2HiNc%l_PGBQf7^x z=wtc$&9%Ci$f;TvZOrl$7YxR3PsNK#_#E!*G03UVi;{1?YR6+WUXC@k{(O6ljo|kM z=Nw*FsTmHmN!MNzYiFgt&_p12njsd|%5^$0po>rFS`&gGTncH1jWF@>G0-1d1LWqE#6>Z)PP$nr%fpcc_R z)KW$!-J$#55kY+N;DKR)bUDvipm%R}a836y$$AVy=s76BDA6|>d${*-OO{Rg^Lxz% z1whlJ(LC+0EGG3Fm3kFhsR*<4f)*ikz>(@z=H!4`zFxuONEx`ul6#&;Vb=WtWz76F zW`=Y|!7KV%qgj<5I?b`}buP0kLYUO>=lD~0Itdd8<6oA1$d0H0_A{{<43Z0cM%i72 zW$Ze<)Pjf{Boku8T^tC=E6x!x57EFj6K)lYDB~x|OAGH@@9qXy*Na6YQisHd-sVu9 zWTzbw>jwve9Gb5d6du?hxaf>BZyR4z(eU{++472H#o~4pGm^aIi~N`%Y#^PziAeP$ zMYv9oS`S4Q{3ezwU^W%BBi$=ItSUi4gpcmW$c}I9v_Rm z5pJyR*7tP0OJz=3h)5B|4Nrh7c{+s$((phhJrJd$;}~4|1-x%}QaqYX?n_cr*AAIP zB*9qgcDV#@tns>-0-uy7Ri zxMys5YuiZ}M-u~H-_DxVf+RGOYnU|ilOWAds0UM2ySpQKY(W@iS?q8G-J@O8^PSdV zJ8|Rss-ok2LBSPxR1z)aAH3wS_TG5VOUuQ_EV20xHhx%;RZs}VU8;x}c${HZM|QGe zx3$c7&3tPiBirpcMwXFRS2ZS;X9Cg3m3tekrk5hJvk)z>=}#oOUKhD~vjXmSOhdU} zh!s@~32Jb^Y>^tZsUhol5SjG03{oew3z&2SOni(4&FB!|*Hjtx`{!M~u~ZRSqS$$X zsilSwz#%ZK<|W6#zzV~_`1c|U5vs^y4|afBL11t`XG^Q0xORs?0ixg?Nkz(GGP5Lq zg4;xglJ=U>PezpjX}YcA>r4~%v?n{+U2bpMe45@F+1nX95+m7^mk>64m{~|`jpSaB zcsK3!T*_l*jvZNFR&Ii1+_w!+D7W=tPUU7vgs3EiP`));ff$69kSWHvD+Ux_^HAsM zX?{vW$W*GdI*58a`svG6`avC7zRPH`=P~o`aA*cx>sF+IL_uqaYqkLHQ#^{~YGMR0 z!TRI8>OO>AL~6cYS(Itu;V@BZxF1WIn2$x%^|6E3QHEOkFL=*mdd>A1*`(C&tW|v( z=9N6NWyMXDG^y{AR&4GYun$U-n3s5@$*}`ub+bK*vdz^*D=%!f@&X$Z10xXohw?B0 z82_kH(V&zk@91C!wRUj^!=a82Fd=@pqobWU*qQ&k%Kuj^dx(R}|2vkIog)|y`N8W~ zH8hT2j1X*L0kMOi2JGm}Z{gzX3~_*?3vAdZE5SzziLw~<9~At%2td@Qe-|8T54MKD z_~oE*d$1GiKjf$T1u_f{hP%N2TLZtsLu=a!>;SR*4}J{4;OFG*XzdJv{eN(Da&&TW zLQmK49Dk+tD=3a2MIBjQ6%8f+KfDX2;~E{1V<$6F%Z|Q+QK1Z7&1q=rkwDQJV$_`ndW1G;1g#@P$f37x-%B!-g8-Il{*sDFEv$s@PwC| z6n6dYG}#L=I+a$^&VF8lgZpB%a89iU0NkRE8ovbXF|2#Lw_C*oGMWi7Zy8FmS-*Zj zuY7v`TEcpIEV(+Nnm45$&)K9_3z~9oTCU%6j;@sL5NaNBMH=uSN&HrOW-?74xFymx z@Ln48y3HO{+I70>1maK@sj%+8VMWyh9mD!XIDO=}+cIaoJe}&O>ExB*95Hi1R0pxl z#Ibh0#4FrbH+=8uu-p)4b_40XO#uj^aC%wNV|Z`YR=nwg5&t96nS9FYsrvGd^bZP0 zJQ;>|KfIa(9pHyX6Bbd@tQ)UA37fx|*Y{m++^q-+4a8v*(N6+kpBSBeS)|HBo9lU7 z=Lrbqrwq7gbH&7>#GphiS%3FblO7==wEd%x-|QN7{t5O_dkEaa3G#QW(HPPU1QP}Z z`at{lPXM7Vb!=Sh%^ko{I~YIw$0eVWgY^$8KdfO6=LInyYFz0kUqXl2pP+~G9Xqgx zqYIqZ0&HRP2mc?Kx~41@+hrISdbxNQgg?Bq}>V;9zuo_<{99z4EMUJat)^ z80drdF9W5SK}`nK0`7wHFn&P+6bK3Yb`lW2c?JdYXU!p^h0-lj@o}!f$vkSzofYzm_LO1$>Hy_-W-PYk5KnB#{bpg{+-I+FR1*C z`Tr{w&hUSZrNbTZPksG4WBfZEbk6t*=D(ox*9`LSl>RDN`mZScDWiO+^J5PG9No}4 e%@baAj^}Z)0_BWo~pXbY*ySP)h>@6aWYa2mpnZPDB6z00000 z00000001oj002;FV{~}p zaBgR8x&>6!-4`_sBaISL(%q$WcXxv{A~|$-2!be$q;yJmHwZ{~cXyY>4Brg;{NHb_ z_g%|jF*5ge&)sLAefGH!rlKVM3WWd#1_tJptc-*j3=EtV^o4`~`5#|w-C`IR+#oA) zaTQr{aWWMrdvhxrGZ+{T*kfG_4V>YG(zfJ5>Rq3H(d^i`tyJe&GG0o2iD3*Zb!knQaz2chGqFk6;z^t@~AsGYkIlxskH-x|yrX;=T5C@Cjoxc_dHQ1yGb;j(; z-?bo^%%;Hx(b~_d{(21k23}OadAW)K^Baz9%nRIU7y4(5l*sc7rC5;I`aAs4x#>ap zlTbNhCL$Y?e6&pqm^GyI_ILe<;yxGL`6Ty4Syv43Y z#RVdXL4w2*DnYwm{tgu*h%j7)0j(uLK}KeXh~C>UWCbvL7tXIx(VhfxGtme+jzm%B zLKOmt9bUka0U`nTnJ^jwG-EG%I{h*hER_;Cj{&8sHB^ zuq30N)@t3?w-EPq>|5*CfACe8gZt z5)9_;f?W?p5|bc*jfsbG_eD+O)dov8*1Inrfk{$65;kOL(H>O9v0nr}eHSeve-%?F z?+k^eV`Ymyi$e8lF5@ZQUYncC2t~9MMjj%r2IY!#0rGAr29ns!~jG)mB^J%Brz2nW3od& z1bj$;o&B*uBeN#!Wx-IEO)gRXqr&Hc*O?R9PC0V940#9HDftTp<~drqbp?_6EV*`h ze&Vf)-4c}2rt(;d>N1m3?6TGJgHpu`hZ2O!dQyw>%_5@IJk&q`Io2sQSKgr^>B@r7EVnzk;_quadL6 z)wHkTTlHckZRKob`;Lgy7l%0qDyJ#O7V_*b8xr0do*&rH1!>dOLnh-dUt93+qTmrH z5@=)0x|WHSG20p1IiGl(c%8Tlz>#>8*r)rX3#BU>k{F_{NUWHzyce<-;%qZ+b82(+ zqiUyW=YKK-`+=EZ$zi<%Q32@iZ75F2x+v**HaL$=zsNt*xG3$ljTKNHNe@L*k$O6O zR7{eeljBirQ1=j*Q2C`wCH+z4qw-bK&w9(4J=AwyvATzWUS!&u&V^526eoBeaO;~8)Yi)|S z*Sx+ZNF_KS&?LyT3Pexnh+)b@<7gx48WN!HN|Nm3cOaa=#j;tUf-e>n1)-h3MQeE;nwo+&GfK3j_m zcO3Jj{*G>frj|vWh?~}pQl#F9N|}P46^WIh&dQKk>!AB(*xmk}aCvGAn?9M5%6l1u zH+p~ei>{|vfUjr2mSdGk8yGQEF?ne)sp_kVsXFCvIT!lwPqN)r9XRb=)Lf(y3USjg zzGPTnlw|y7uePGl(5Sj?czvI+QhH-uc~C{rl=3~rs5Y?HxxUm+xRl>;R-aYHzcsLE z-KX1bv#>WWA4_p_xM?`eJ@<5}ZP5AlK=8o3kXc1uW3c{VSis-%pcmyoIzSmEUEQkGsvc!a+J3}-N_fnD;LnxG zeYO>L6W1m>+__S4pzNJqD0oPsMtne`MR?*_27Vm>(krw2^JcFjX=Se3G3Pu6Z->=T zX-+|*&BcfJVE{Be0DPKVT?uZT_ax*FOI1jw$QbbKyDHlg9DO*j3foV>-%jo$eJK<^ zx-dL4ayR6g5oIXCl*>B7WT>}cP-K)~aPt10j_2L@-DaP%Nd}rwLFq(!LK$-T@>BM? z*;aA)Y`ne6D&{I{X?2;l{cjtA6^_-%Gs?3*@Mt)5Lg|5R<1sCN9sgiEg}Y-jy!R(> z^qcG30yF@)7vOIi*k0MOsdn)-Dp-OL202a)=?$d`$tOH>Vx`XTE&{3-d1Bv?ynhj~!RLjU zcgvWxIx3&1!&y0*eDy7Qmtw=mdC%KRmd}gpJHuATi3Xd^Zh@xFeXDJVCL|7a2&CwQ z&9d)$Nzo?>`gPIsK#dkjFO!~N9dDSp9nT&YrAimbo;*3w%_%+JO$sfx&C))ooADdpcKR)w-2N)tY??&ey=CDq zJF??DF(JW8FKDrzJ5GXsmm#s#K{dKQQU5sMFrMRW~yD@**5kdma9v`A<9S}5qu zUB_GoIs*O44_^2+kUQa=*Wa`IO}#9CCqFMQV;HG@&42tM);-@yOUBJZ$)U_Y{m`t~ z=a_K<{_!)Dc40YYSx%Wft|H!T;?#HZ?|0u1S1^h)fBsSB^}h6-9xA;%h~hM|ZeIcG zb89{|WR<*Yrf+ZD7-?-5zcttMtJ@%bTYFyT?3T$VMXKdO<9g@He?2Eyb?EAGG`Bl- z%C~m&%WCYPaD=^(Jkn(8Y<9O?nonB3cO;U(B|0rLS;w3Av1t7|p4(!zNwG-TQ32$` zecxuyXVrThbW^fN#F<*{Ri{$-rYg5hp<1AR;^KUwAak_0*ru3u=CM71wcjYYUCCeX zsjV@+p1f_mejgOH-&c@vxH!`8g@)$$kO89;h+Tnzyhbt?ppog5bjce*MW&}xFz)t7 z&xYa=!7@%MHcvfCrBbzgEMemCZTP$WciNRDRgM*?j=wSDd0iWo9750ZH%hm?yPjmD zwPen}Bs%2(79UsM2!DMb4T>~KIEqb4>>T_$u;1^^@QcBmA)cPQYyOaYI?DTXLY zb5gSfl^%Njq*i{_jKt!RCyWYPRnn2ym%DecWANN~bQp-6TB$+YSHzFUE7MnK#ZJeM z-TrZ$?o2T&p!`s!-?oNx50L2G?FuVCo|P-7#k<2M{Qf1L?fd$mtbMemik8}HZfSO_ zq`IPkxPiRukE+O)^pe0D%++9E@3QFfd{eW7eNEo3pEGbf2xxnE>`Cm2UhabHuIV~^ z>mqP)n�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%0Dfl~_Sm#a|l8C{Xh(fprBJ7R4 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 diff --git a/Documentation/SOGo Mobile Devices Configuration.odt b/Documentation/SOGo Mobile Devices Configuration.odt index f50348e194d0354f9b266f6147fa2e430ac89edf..bb85b0b93f9ee3b8a8bb9e55cf80394ca09e3add 100644 GIT binary patch literal 24268 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

      _skRu;V3mFvPMdxY;~#gc&% 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 Rfs_dW;VNLsHPZ{k0|3tCL_z=n diff --git a/Documentation/SOGo Mozilla Thunderbird Configuration.odt b/Documentation/SOGo Mozilla Thunderbird Configuration.odt index b47b7f3123c8c14c080ab3e5388c67d89716439a..5f73e81c1d77627afbb17b445e4cc54d5030f3aa 100644 GIT binary patch literal 25123 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 literal 20880 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 literal 28478 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 S`82erzk;Wc%iHq#=>GtN6;;Oo diff --git a/Documentation/architecture.png b/Documentation/architecture.png index 116059c9a17ed41244f4e8833beaef9d9a2598bd..ef5cbf446ab62a6f213ba747650a390c03e21c0f 100644 GIT binary patch literal 410886 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

      @X@nXZ*Oa0gP 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 z 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

      9F2CV^s*FP z7H^({Fueb`DtArDT4l^@J%LoQ{mcq`?oSln`b=I_<{VVsRtLg$y9C@>$9DSJOIASO8X9eJ=(mQh}ZlVkMstjjT2zwbdzRhY9f&@|Q4Uk7H zy?yTVcE&iG>K2EmUVZjNMQGAbOthjugf;S;XOy^B%xJO$1< zc6WMh>{RWm^UJznn@Igniu1P3w{Nof60Nu%Vn6Hbz2kpLr%LS4*gy>*1~uv7Y~>Rg zaKW)i^r4~Q!VKe-;S+I|LzVw=0f%!)tr_J!>+C_N^RlArX>i5b!@kE zcHzb|JHC<$TP`!QfZwkh!S`>)pUXn2ny(7o=lS=-E}*&6jh|Fs*_!g z>fOpuUm2A6s*O3s3M3p-5$+=;z>$(?mM~1(+KGBK2(N995g`0~DBm`Sx7dd_m=+#n- zAS;}tBupZ9f_uu#w>?a_ywa=JU`S07z0##}U91>08h^scCnxpr!+rfj>!rQfVIxOB;}+lFHl`be=?HS8OMO#dZp9X zH_rJ6DLe>S!AKe=$6{y#UkszWd=n$>d{mhN&iybr#uKVvxKQQh9mz`I7~thoP`=~5 z^$FW+Vam6sV`OL^;mcP3#mi^P_6AWF+H^r#{z&slpI6D9rejKKc)S4d|I{BS-=Tnii_bQ0T4|b7Ku%dZz0(}!VU40h zqw*`+(d4BYQZo$lzDIdZMt49sVmel)I|V(o1ijhY#edUeb7be~Q~f{zZ!mAZCPJF; zh4xk=qo^oB9bw2w`3|pf^ru&KNnXB-NBH|Pw7QmJ(?S z2)+AA;cZC(rkt|TRffK)tJ`UKy;V}>8If1h^(r!Z!bybAb|gjGv$re1*-)klkA&rl zV>T}ynIBy{H`xm32LTYF;WKewNSHCv2qaKI^;UevVtzf(`S5U!58lw%aC*FvByIJ& zPXPxhVy9u4Z4wVcPle%Ar=wKnqz2on?WSMo_|v&A_1afm&+)l*1VKheCaek)H$MCU zXTupo&8zzHeE678#gnUs+)X6Co=-C3Tnis1(sHz84$LHc6Kk&z$Wc^&vA)IcmwOyu4{a1hp z2X2*wvDZ9V!vIb-CjW*HL+j26!(!y3Ln*V@rA9?w)k&St5$WcXbL-g=4K|{ zCX1WPVT8Y*cxG|ZOgGT+=l4@wK4l4mFu}@+1`!YNZ2Q*oXk5}o2fyLyi zu$?+cghwH#rWA=kPrgTBP+ou8)%eq)M9jG~OGv*+61tc3$32Dxe69~U;w*%{tE667 z+qF0QCQ9!ym<;2@o>DMfwkeyNVo<=3a7kbr?Pn`8?9Fc5RpP~M#8kyn zV}*T6vI5!ybpOvqf&p`I<}t6kpkZzGn^Pl?EDWrFpU4u#w!bn){;LicSK-!_RYul+)jRxm@y}>8n)`{vEajMnfA_ zy-G)~q+@hMrPnH-x(<-W(O8w0D>Wb6CP>QkzL<0C2S4-)TOi_X(5Eo`B}rvdPGv6d zQV^|CJZs6$XU1Szzg|bDzc$j02%R`TDSP4K*p&~5*|bh)ljXSu{2I#_ms3Zw13o8| zza-~i5|%xX>@M$;F87|KL?gm*-Dx%;sCM0|;aCTjJ1i=uPC#&bjY4+2C5I>pMNuTq ztdsBK;@67LW@mTgI4>p7QfOlrvB-)$hmRjuK&f9wWF;t@p`lbTX7-<1IaT;6{r0+9 z_14*!60`*2yPNpR54J~4i}P~Pg*$G+-!*?suDI)LH)XF#5>H;s!prsgl8jC{9r0{P z|9roNnRPElzbUn4)6eg3ZIoO_m9cZO+hv8-tqn@b&Xw~opz%BcO7E#P5And{Ce&=y z;`ENpRPkHCJjfHbd^GS>xM9Q-&5vOy8^3>Pu@CE;ii&OLZCW`Q)IgT2;SwL(Sj4lD zF0E*dwor=D*z-qOgM^}kYvT5hL5;#N{${czw*H{xF}nZ}r~df-KW0ktWLuY~q_#pp zEA2IN)mk2&3L;~v1+`Hji6KQ8l>PZq(1Dh#bl@a-fM`A&xy zVgXI+zN{cOc=LuZ1IkVhaPicOCj3rixqK9Wef_#s#2&8h z;+GKtlZ;-Joyfl%g0|*BSK|g-dV2plq_s8p4zo3?#zrPq5p!RstR6%^sr@aGz=95Z zdZNx@poEl&a%I)5YCM-VK*0wPp4BBsCdea~pm{!MDM~l=NLr6F$`qJ^tR45Q(uut| zaqrKT!+MHVMR)U8i&Ux3dxtqO5O(pTNsK{K;)5|dvYVdNNz#9c9)3t>4c&nPdaaKc ztvRQycgQQADhEu)_JY5s$$6kP%$m+a(2Crmnw@5~{qH?V{;o`QC@8s_M zt5=*&X0)zL_*oy;EF8Q!UQR&$#~{O_LAWwfP_=cInX8Pqy5uN7IBmKlCHqz=KM5iM z0c2sd0s=P3!Abgy+z4mC^amrW_2y~M&Rbsau|TjPjqc7f9vf#ko=1yZr$eJz{0z<1 zrn1LU-{%YH@6^X5kT=ep!?oq*Whc|T!&9_cGtu+8A_$m3GGQO#f8*?aK&95AbMa6k zFL?a%C23h5q4?h`+C%rw@}tk;)yQR)=K5m%4(GG?`Ir`}HMp`rz6L?8*QnqnyNq(S zvPHvW!XJg_N67F?&ot_t?D!(`TG!W1^pd8C48K(u9^`+lQ3n?kz#zj@&U_V!RhC}ZGk!X zC!pG^0N%|lhOEI8{PG^0UtJ>V?ur|#>xC4N!^Z=pp7I&R1ezu(>%*7TrCRYxLinyK zvD=3u)ur7s2Io_LcXw&Xr+f&I`bP`u9KtnRBoM13j)^*=rX)W?A2!1}nMW6mvt%BrIrYspE3Z{Gau16-w{XY3O-cylrLl2oNgbRU1W zXC>-E!kX#palzd3A5(*XM0q#U5gPE-g26Fh8caI^*?GZ8yo724C@#2(r3Q!jWYOx7 z*P$o}K=Xi0V|0r3??LbL)t-yP*k3dJHHVJhC9V5OJxEZ#kNoFwq_rm8g`^+Y~SVYyhN}Q5bhuVCn#YA1YJoycO~V%ct-+nTjv}r-0_k zFezEX)cv%@gsQZ9C6^=R{^uj08vDOHhe}T1cnr3aO zTVYDSuS<0N%j8GnwmBP#D?A(K**Ajwe=qeP(E$&1(ggAUYQ&}xBuP7HEjJi?vzv)R zH`ooRl~T>T^}iRR3BQd@Tzsp0h)s*^dnXR+6b!U+KmIHQBt|6Q>%l96&cxtL zsaON*<2l18i4A=s5=Lsg3*z-$xO8VSvUB?r*417Th6r=VaYeogDSETz(8()*=Bt4X zuet?JnQes|nq$Pmg2x{SAPN^TB+7n>{#bYZC_d}&d;D`<2O8kI#@a8EL%MHD-!U|r&S&O0^7aNF;VwCa@FUeT`l=&UQp$%f z+mFXydU&WD>Q4J<9?2!KNS;L9NjO7Z|27;K;N)n1Cy8#4B5{5%)mff&w&M*Vrg|@f zO-)Vg(~Az4+u8P3o)SQFMB!r^+`{C~Ch4!cD4XY$G1pBur zfp5$S_e%DLZhVcl^OhpE{C4*HHEtMEF$0=>k!-bH7a~-Lw(1P}zVy#1Pdq%AI9{v< z=f1=y`<)-!ISlj&6z5mVq?M&6xDu*!yysrFKzwiRZdX7MKbNCOtn2s+r?N~~6+4~o zj9Ko_$)Avcc!qE0A8IACwddb;T+}LuWEeVsb(U*S&|_c!Wg#3|gC$VYjvjrm@^m5Q zj+v3%;!fyd72Dh2Vsh?b6g7NBhyBiHJXt_lq-VI(o0G*Q9KFSeQ(8n^k!SKb&WFYp z!>TeXO`v7Oe_b-Gd`mi`ccgg+4|>hH<7$VFYw*JpLg=_w(B7=?;c!%!L^hNOGWK|H zg`bHcyb6!qT#t{(q4QD8`_knk>7s2?RYj%C8BX zNxq1wTIZp4JyaC`pRHO;0**z~xa;hTEj72GejPL)SX81)OLATEUiPXVV&Mgh7g$8M zDo#Ju9nGUQZuI^Z=Re|qBnuiNZf#c+po2sc7%$lHadK?;3bp2NtTFl) z3P;zCrwTsqqb;6*g{ps$+?-;AcVa^y`JhBx0{oc)+=#ujp`EzVbKq&PA~M; zgBYAmJr*KV>HovDcLGJ@r?a1KL4LXzKh-q7LokLnwvW|BIEh`fa^>rRbv?&~X$;pD zQY}UJUaBR+agtDfHJ z!G-i9PCJqH8T7MEWcu;h#BNb%3#eg3^K&&xm*S&od22voPTRM9I;i*GC;5RV9sa~4 zhuj=^QfIqs#?cUWOWDsBUS)io)8gM(3q#}MvChm6=j(b)b=YFO?L(!QT7*EoB>?w+ z?sj>hnCO|JH}p9UV7SXeRZt}>2I`H}5xB5Lskm@x)t3s{pHUvMP1ITa3~W6RFA z=u`G{PK-|%X)yytq~|Ue28#K`{mxHSexDom;??c(kFeg6K2wgERqvB3DJBJS5L)xM zW2tePd?K#4`8M6AIy?m0_O#o|8cEZve{m7J9|PSVwrINt^{{W=M4OS=j{doim{t?; z4s%l1U-IOBrdxdWZ`@hnn<;M=SI4+SW=`8OiTh7=5u+zdvAvcPe}oU%kMkuJz_^u! zA+Z&MVpNi%pnLR^jo3DWGDWIr~1iFXP*ne)wPT1Nmn-HUCA9n+73~(Ap!ea32f`4%r!cO}`cevGdCO zZa(f{{yjLBvwV%3<562H6*VQ(Q3e}VS-zcgS=GL$ys^pZBlni`_Ufi36f&5Li$UHa zH-=wUHE2cMtz<`TxtQCb;FI%VPsQNvvxgo@*NklL`4IT+raDwoRLi9B6w0yq(4Q`T zlK$&~YtRE-zlcE=HrErx!C5QH_9@uLoAfvXBW)8iVtk!qgH)>Kf~08Q87${B$(-hg z28qp7^D0V3Hrf$2VXLmObo}V-o=rQK@RuEt+ zBOP}Gy>N=Qhi~;|lcv9WeE2X|p?e~IrZPb6ZknEHOmwMf`Oi~?5|4QLgGgGx-OxT2 zGXd~r=s#f-`d1L6T!?tp1?3iK&tqd5H2E}Pp2iV8v??yTKPV15KM>#%>l`O(!N-Mf zVA)XId~?S;rqt%!O0}U3guGHz?oX8U;qfaW$~QVMH?)6I`3|2g2tRdhVy+oG#)bln|Rr57Lf@V(hufe?*hNLHRhTMuoB$H zqUWLGfOZfpxF$lD>C733kOExO%Fz_7V}6uJ_|b>p&j;JyV~=SmxwPnBpkI{6xSY~p zSRb`%JM{XP$Jp3h_37^S-6CVfaM9)S^v@t~zXOWaUpK|i_@8UAzS0I*Xj*%TGWI}ef^S`=Ip5%Xvk}lo!?@j;;&o^%w)A{2xt5mu~~zwKnzP1IlovqJ&^p| z*{~%b`Ed7}Pj-b)=8+|-v8-bW&J%>|<**?a$bCU;0bNXdBA!eB z{Pqg$|2-3U2adJbuh)RAfoD>iQFktroGO8WEi72t!LT$t+!6tqV8XZ?enYt4?osHq zf`VHS7B9Q1bHcOcu-Y{qg$HRG-SNXWu}Cvu%q|SV(LJAIfc_U~4bO_uLVga;dlR@H z%azZS%N=+9Vq7=eySFm#(glU2^?C zS*b&mchD4EVN*Z1`k47c^>wFfFD_Nz!g?yQ5%dgcyq-nnR5_Lx{v%;^dZBWRQC3pd zYi#PrS@ik8mDil2a}SfYpEk6AI@`-TrEwCjX!)vj9UhAvHeUNij0aK73V!AXKEOG= zR|@D^riLP}YFGP@ZIO}F>ubOrY$eS0E#i}}j@}mYEvtQn3zacp1fn7OtT$Q&Yb()xKfY43A$_vNk6@u!cXUi9QFp~r zI%1O+VJr;+5B_~JmIe@w?_9fjP`wB}5)uvK5zCzDrsE8iVHKV>M&5@SB`;6X%()j7 zDA;ki&807)JJa7JxRvZ#%^|!x#;W-Ku-<9J1qQ2FaU&N^IeL@!C4+zm`n7X!;dc+4 zTPHeuD;7IkaknZH^m@wmyQG70Ll&%Dtq)>S(~gtp2bbOY<16idzl6-Pc>P@^vWllQ zqc(5 zx_YJ4C&jy~53{Xfzx%S1@g&WhG|7@p6`e)SdKdR!IDG!t3V`nGRDV8n2ISr=;*S{G zYL99+mfcS&H?Nfh7^Gc?O6@ppPK!B@Z&8kw(Ss*!S=2|3le~uR{EBGSB1!X|7LvVF z-<#AuY#noY1}66~rQPB&7B|l7`{x`E>G)^xF>;>Hhi7!@0MQlE!Zv?^r#OFnRIf3s zbvLHfCB%(o@|KU}gH>BTW})%inz^422q%=)!P-txxjeVVo)MgKWc_aaWL@sjU*THJ zm0YwzgJ7Gp=wo~pZ98k*$#k<$MYgiJtlA1x`V<8LrG?6F`<_qVoh+Lw!<<-#u?$zk zJC$fg>j4M*j<>hmsBS1aeBC|etxk?pW;-@{AAMkHzorw&ao%Tcr2-d3Je_2HCSGoL z_6Dd)XBA94k!`}Yy-3J z9lKBnJ#q-~E92Xkf8WM*5T0X?L)Vi5!%vN$_g8f3q_)J+d04wuS4O@y*^Q)r_PAX2 zb016bTy#I{Vq8f{T5E;9pxxp=^SS8a0(=}7sJGgtWbxT`Y2xn1YJKhtb&3#7!s20<&Wq>IkyJ|<>=2Ja=eJ<1#Fm$-_{|@`*o$?YKU_6WlI8 zAz9ptDRM-uctHii%@|Q7B5T(ErFl^s%chZrw?sTXPF>FN57|LeB+bVt8O68 zl_GFR26LO~As#JTGbjB;2~2FU$1kKHtd^1$x4;;mb}6pz!*a>4p}u6QyQ@7>S6S1_ z1?yO-OtLpeGy*a} z0k<1FA=Z@FliU)0##gN0mddY-LpC4p!2*hvTC-0HQ6SgPTP?K++Aup|W_v{Ec82aG z4b}6MHy@ozBmuC@QePPd3BtI)J2Z{%GBa7pm5B1u7!`_8pca-^QI{;{i6%2m)937} zZ93S{I(?tGfRet!FNcYmM={rR?5%uUH@ZX+TTK^Zw#7uxE3dmdgj7L47+s0Eim$f z;%(=b$jY5}UimbMuNlqyv}QRuuirS{@F65hH`y^7v-$f|>NbktmG=L~-djdx**)>X zkBAB)h#)B4B8?y+t%!7YmvncRB8YSeNJ~pecPP>&-67rGdG>YlJPN+=I^WK>|Cf6$ z;=ZoEXHV^!-^|=FfJP1xqCSPAS*3AwnV?b%sS%h*uKKAc5`Y-EDR|~{&xg%v!=b~< zY!{yfSa4ZBDj5~^nb5PvA66d854}6$Vpc~}r)D;zxJE_}HUyOXWE(nj2A5TAD$@%0 zHgqn-8-QoyN(L_fxv6hq(-{y3pC=TjygDD;^ivz#&hNl>&XL^Vl+O!bjYoD7IFXp= zYMvW!1+E{~yP5EYrFjfCiHZrm&IFPHI4s0qHnXLFV!2J+=lt7)NH}_JG+1(&iwc(( zXPtIxqm_#yzFV-68bB4Zzl}{5aHh&w!W^IuNkBwyN4}c@^PzZi*HwWF!Nos+=b1QS zgOHXwJ}HU3-jCI4c`2N zKYPCbw7K$K+R@LIyu03X+vu117j*;5^|*3!-a&zWU5f(K-5|!}Xmy^+W-=MYrnhk@ z+?lV*c>mO59w%utg}e{QLEeN`TYEk$PbB zU3q>Y78aKnD*p2BuzLAjK#$15c5V|~z8%{>tIKf5KApTjZ@`sYo-sT)M=U==Rf46L zvu!16B^t;%q0ScYbdNgD`2PDqym4_xuQY6KX{M*`cE{4n%~pb9iTJ98sz@xD>DgmK zNEbTy_ZrSY#%`s?s;=om74vB5^`UTri@GD*K3&5erryHLwKR&p$9sD__XzIgW*GFu zrX6PO?b%}VJuq}@=fX=LGK)Emi3gyh-roM+p1Mtk^TYbT8MP>|OiWIm^O(&6&q*8cIye3PHO{~|%|!u#q|Z9l~@ z_3~^5aU5lt%E~==L;r{wi{AnQ6BUm~KTFPMF!VpoyoCvmJI=L&hsOp(j`LXP_({_Y z^ZKU!&i;b<^Qk(WqhPFx?D-(|{NfTKjR_5<8MU;HRgs}z&xwI)pr)&B91WA9sfm=8 zlP>^V`S%dPNzRywjP>r)fD{wEoPtoMnmAgKnhA@z_;uz+eP=*9* zGiyU*1Jd7k^F!Q^gvoW=d-AXfAXLjl@&kPAoSlU`^F#j6V>5lm^jB|*B2g{vE*&|a zTJ3VtjHpfBBGH2SWWy)```}pzhqi{N7x(7k#|QukzrB+i+sWPuddMXOakLIjX?=Y4 zC?KTl6rO(_X@w%Ai)wkRu$EPRm3sD_eHHf&j(eBI;)Dly2LvK;ycdF!ki_#`wHkB9 zq1hqzRjQ#ExQ_QfeiS{T!usOWO4&PLx@3F46Gi4BmH&3kyJ-+PSc$o<{g<2*134%6 zgOw@(1=ooXhIM?mrsy1b9t#UIW3w6EMrP@?D6`rR7FJjNPL8MV9oxBO(f}B%K{35v z`GbtY5bDdJP|8ah6U1RaZYJM}g!n>~Hjn_i?Nv6N>M}?BHL_QvcodHUh2s+1BF|i( zh`HgvR1{5;TYJp(q5hpxVVQvPUAe<;bF3?KhzNhq0}FfXeEZ?Qq#Z{D+^;|MEv2Jp zh3H#wf~27KQ_3#Z&{sw;zdx>L)2dqL_(zGUq|hKKkF0)4HASf)v+Y1JHMXAVS`Ze+ z)E{PqC7lOP%=21C(ouM;;Uq+$uCU*Vn zZQT3p0;k#q;h5p6u9Ax%0^hGcT#}Dpj#etH$r3wmF)T_;mQ%jn_QoQ-_~Eca4zZDcvmxSiPfxFeA5`uVf03YG8m6m~fHsIh|_FP6GOj1D1Do09;@pjAHyyts( z5F^Jhi<#?W<&W96vbJxFh;}-0(zeQM@$ajfGguQ>QQJP8-x_{3OYntTik=y%k*v=j zfB&yL<3Ap2AO^e^N05E7FE9YotN-TwhgrH@CEM`V3IdUz>yj|=rzGt459amWANCM= zZ#qS8mStDv@gV{-anl%sEGA}uYPX;GY!lhNl;z7%bAMRvg01z>uAr>sEc zjom{oiB+X%LXy9#pMO8!BLN`RaCg+N{d4J|SC;a>1^kZ! z|D(YFDDXcD{Eq_v?2|(84+1e{FCQiM z`*pq_R#r&@)fgmts?wPt6JO=X?EjY?bL592E3Di1FHD{>5i0N$3)8Jr_;B=OK1umA z5)nVQ2(Yimng10(H@~p)F!PyeGDQwAjz65GqG)J~5zd8I|60XJ<~d*0UUMepIP%d_Q2CWXj3L zIXHk`hm4=8)uT8%{T9$tw;fs6Zf;7;Ic+`EV>fI8nF>}XFZEkNAK-{K6{z&XI? z$I*6>3v+Q;sQ?}~+n59X8W<^Lb|{_nzEamNN^YI92YY(dV5RP_3Dblcs=&*(p(4I; zLpG>DVIL`8IGbXq)FUJ3mX|sWJNucNySo~=zY^IT6~1g&+MdlPJ=vF2%S)2+wYu$J z0QuUxyYvpA82XY+3~FEQ2c0@PKK%EdbdFB1ZqCBxFg4FN-AjROY%HwVnEm)HLUP?r zh)Iqzo{?DV-%|7?P|^-{A4vDWA&^b$2HKg~xl-&6@fbzfK0%l~)ba z?E>)`dCk+a2sZ9hydEnv4^>@9CFTumD;9a)sVT>&fnd4cDjlWs0crUq#1L@IRw#fE z7PsAy4%3$>FeIM*4CHU z6vOo@&5etw;D0__tr>8mkK1MFQK8>>XkgO&HjwYcr$t3UcRzD_=>yR<-kvGz?M3aF z`EMT_s|>S5&gQ?kD4DJ#{&g(yz90~;5oNFi3&U@)dqi$LZ10Fka!}l60y&8Z|4v*9 zBjwB%oK~4Jm2B+klZj5sX)Aw2f1`Gjc7TySJTW#qTwiY}+LL?t&NGT`--&a-2mRA_ z%Mz_0y_)fZd%7_Voj)FWOKFk#Gk$mYbc~+%!{w~ZO{!3fZdM1~y#Mn*wb9UNSEFsjyD@CbzS{Zs#!i6b`S@k1--F5a_PF)YfkEdd zYU=o~&;gy)a}y|ZAlogG+!Cy@bLWvD)9u!` zQrb^T)mP@ZrQ754u%qs!bwwe5_<*pCUJkk=9M#`Ix9L1Y-}%?$PS8Df15?jI zDFssz({8iMp)cQS)zAmc-!gddG_k+u%yg1hq`LK+l)ocq{dH3!m-C)T(WD$63%aPG1mUCDpLJ3_JM zz^!gr&WDE{G4dEIo_Rwgmhr$jpA{t}3q3>)9~Wx?jt-fm;rqn|UUk&x+2A7Gwg z7q5Dp(#X$-RJq-#r(d0Sqn-!UrpB?hRfT|JnlEcid%~_ubz?{E%E~rh^ApMO`L2{l zxbp-;x6LO?Y_Plx0;b2pSN+&03%Ie2GaMk{v!^h8qv#Oiv$|R3*-KLB)!iF^mGM~E zBw5vHS#@e{Ka9o7EqJ822vtc~z2uJ16$|jSTxgKyU#8Ud^{sI(6s}P!m38o5;v`_D zxnk%*q90&hZ!K`3LAQEBdU&n6>6l}jcpYQed-LztgOdTarhjP)LrJx;`*5lP-$5YA z?vt`Y_NblZuJZH>fMai`qWrwkb8F$plf~P2x5tnUKNEkqUOkaKszLW&UT@u7c%Bqg zSyIT{v?~Zf)_*hK38dL;I#H)#W^aT2T7kLq_)nym%mD50+Rj|nReer{g&IC`7}*jQ zF2SA0X>}bp+Grk~ZG01(kHVe)2~s4x*-^aKA$fg#`srqSq5%kZt*VXJD;n?iSW)dS zjSpBoCbi=t8@&Xc2e<~P@UIcQb{eKqS4dFt(Q66I_1hDAi zL*K$Q#}XF_IQwMprBAzUAF4X6cq|KPqd8?F2v}YwF`zq#6p?VqOvEy_J(jrJukBm1 z9ARcG`EFC>YKpZs9@4u##`Ku5-Pd45#y;bZ2&jC4^(2Z5M_X9gw?EuDYu~@GVXhOn zDDk_Z{M8ur`_$Fv?KB-$a~m?M7AF!e(~-|X4amaYTVg!T^4Xm{26@ux%;0#Hd}&e8 z_IJ!g0anZSo4oN5A^?#j7H0F{ztj#UZ^}v$piU`{UWFXHyOky}W*H!B*m;za zG=5K^C{tw4VVav|VWhxop*)n|z}a?RJuVXMK?XlW3at3HkkkC+ zEVK5HNxk2BEtN~ZTKt}LYvIT(YoOI=d*#}<$Cm>vgc?w!t4$^Z0eU}3xorm6gE1jO z?En->L_{=hJ8eABJDkktu)Yw^Ntcn8m!<5|HCPRYVblKV-ZTEd%IHiZaqNs}F`OjV z&0sb1uvpxrb1?FKd{`mDC{8)8Dy2wmpO5#F6av=`9k_0B`uBXHJp+K9Re>0TTF5?> zXSSv)@%ngkI>jDocWL}a<-=U%5RbmWQQIkxcgnlRd?Pk}mBD})pR@?o{Kq2>4PiASVDZ6)_Hn~tedLmgAA8zp`XF%Ner~r7m1{b; znai80yc)6Mc>m0f$D|Yc4VeC=yP~I?r?G|xCfkml1^g)n(^YAU$K-dm%kN@eHC=1) z3LYzB?~h>|a*YHP4>Nn+|1{AmcY2Mq2(UkdjaR0!Ebl=!d8?36S}rNiSFMLLX_MCY z&X|~#_8JaeZu=v28ifeGGCYqzybf_4JLpYiPX5CMc5=!{o|G~Xex)Kck)X9}y|z{S zwETW$7D4vGwR&x3H=Gl@4dD_DqodA=9vV7h2@`E!`Rl6>2r?qvtYgmX53TvUw)r`7 zQ4OvDL)GtT+}M&AD23fmP#?q1`EHrAEinVXerP$YSk}0YzzV;o`cswK{&QaVEQG?s zqUDnHnWYH=f}h$GabK*`P`-ArP(9&}WPi~E;Mzukxj)CH)V}Ux5MF^Hy7R+Pi*LU7 z)qw4!0>MudJJ%beJlKCRvd9W}krCP9Z ztQ58%Airwh=}rd^u++JE+%Cd_)e)H>dlpzB65#(6ho!BHjxHwsYY=MSNYB+kEd7na z?{C&&s0lFi@`q>RQn?R{!K)*YT+1(}U;5*VIdU-gS}P$yl{1aRNbeV%v$E&8*_{JD z6Y+`9GxG2`iGMuCop9Z=$78RI2WZ-G${f?3bk1*A&Kdx64pA;lgeQ-#b*d}Vv}Uev z0B!mHt*%s>u#NpvVa5kFJ zDR-S}2gz5Cj`^Z0BlUm^si39TWQtIbD1X zfAurI#7gB(681Njv^v78Yige#_!WqCK+@HI1GMn*iGx~O_%iLnm(=Ckr9e41e_h3|-Y)Do{4}UNA%HRC7m-1gV81urd4ct+m6k0Yp8X54)Ph=gaQbJ51oUX+nYUy&|WC%L6O5!B}F(6$(_0NrXu zDYMuYER?Yc0qE)m2J)xl$z#WZSQGraHb+12yVxHKF2yel-PR2xczFep_Z2D#e2b)8{H~-q9G?R=p(ETzfG7m=IIrtpF9QUgl$>!fKVIKc z`Q6mlA*kLsIS#$v(bvQWkWC!Vyg=y&UClHpNDHqEGHP8qMjpai2!(wB zABqpuvWA^U;%1%oxu1709b0>n3`#%dLUA99fz{!oz~Os-JcI~YL#jDgHTD4aNXa2Y z&i?Eb!RZdEC|1~vbotrlg!PfZ8jA_qBN^;7c->^A^ zR_nooHYhKbHndOEUlH$6yl$uTB5b?fk8c3+0Qc?nYllIwCz+Q)HR~M8R(7! zkWaR%rz>n@XWg$@g4HWcFoP$KH&y&s<2UMYPOgA%obG&|z$nXOGNMI7UA2zF2MmlHf^-EoJTvEQKoRYl94twfw3ajy# z8=#_YxIrEVH@_dOmKYm~9_eikhCY}pDlS>_iJ4gRcgel!kM2V}nO%!6Y`X;NXwr+a z+bti=`R-y)u*oY5O8zYt9wcC?=5rw;koYMhL8^JpV4nh1)L7z!=*H1%!>ytpgZq&n z%9n-6QDT`(>*)Lr)cj{N(SP?nQ?q)32iYy08uCEhDH zTH=I6!V(|!S1NZq>V2xa3}(}G}1 z(djm1>N6Wbm(mST9e%{yu|Bj7dz8Wh2#epL&h_!IhB32oy_$(n54Uf^kk#VSvj{b$ z0oO3cvU2dBT+|l=ZxClCLvDHA7kKgFHd*9Hcm%Th zZ@=AtYcl$6%rcy&d8uk(j3wy-`p9tKsOoBtt?l`=czkl%eDOr&53X{q9>u#3CkgPg zTvscM4#805==G>PEr@%1;at9J&5To=Q*GYcY&o`{t>vDHB{`Ra6^nA9A8eD~nptx* zkzT`nfJeK2W*@gB{9bAeI<-Iaj1+c<&o7I6kO|$rMCi;%N=I}w+6ZS|oIl61xgJgm zw?H+SJe}~aWzK;oi%F*~Z|{it1j|>ueeqPJX>qw)PqhsVSnn**N`csB@dhonrH_bs zd`4wpY&d&id83;QY-yDw<|7j|Vf!TyDDN_xy(~Y`YPSEoqKyMgNNC^AQlJ2f)iAtv zn&KdjTp{Oh_Z>3-th_Qom@R*WB>^Z7t7V778*bg9J>PziPg0}gP|MzdNA^GzKOI;6 z>OOhFKA***XF`!o5t<;>;K#z`<21~fq6P%JCSZ0)1b66Bu_LSmvi2CxrhV0Ne4Q&| zYU$DJxA+QIub2@0%)cH9U;Pi_Os(6iEJ)|j7rD!3Ssov-lRaZlG$2^rvt6CptdknF zm!XIQ#l#!2JZd^gDjNre28Oc75&s~%5YH45w0&GKFCxG^G@bRkauXd#1GBqn1RG!x z4Rgwkc1`)_(lA7^k(e=O%l-J*db75AqNBY3c&MQchAC6Xa~G-MDk&m`8@+fHa&kB# zE%UbA-z3G9K3==fJJk z108sj^6f1b=k>?`fRlHJx18j{k%N?aq*8*o0zsM0N?^TK-s4r0lD!0us(Cu0JkU14 z{rtw7i;H*Gu=Hn+O>}wj;BU6mwqo|(X)EloJpMtmH?CK6uoCv@ z{_vUDcx%d^k!u=u1C+!7^0pYJxY_rj4DCbnrX>A z_TDp!%I*Z{2qxf7?QN4RIcJ)ALuSvA8jnm&M6O)V#?b+raSFeJk`XVI2x&Rgsu`zl z>b%u)ivNhVgiqyk?>$cfqRi967Q6FeNe4x{ICh~1iIx{bzM$gpH>KeC08b=vAofG| z)ku}e;d=wZDlcQYX^X>5Lc(uQh5g&o!QPEO_+&QpR0!$L-GUbN+}KC=^Chm-hl8dV zfKv2Qro1I@%DrS&q<(1ZKH;*g} z>x*z{O+eZ$H8^g`!PX>KtDDy>n&g&Hc}8x>P1Khyd%*}ANKcDxoBG7FLs2S}IJebR znV)x05np$b&Vqqd|6_$}OhS(nrW@)orD;!W-W5c~z{<>nQUWy&GlmPYu zD0Bk`auj$r%hu&cD!Ca*`&2ql62M*y3Kuy_9?5e}D1RwTB%r}2!UF2)>S!>ND z-D)N(>C`)dx4GbLFNrLexfsNQ^2WOf6Jm8YM3oquj34@fufv78UE07L`$QV^2^{w1 z#FR1AZ(4axbgb`;7he7$F@OgW@xYa_^hQD0Z2ClZ*Q0}#Z}Sw{D%=h+(pAbZ4TzxT z@%fXk!_Fyg3NkJBh`R0_QMtdQ>x7&KZpf{_4O&^G(&R~-nSixI;V=B*)zz)3Y8@}A z7a5N}!pU3}rZ*DdHg z?miPHB}~%4(f#~6Otf#5LM@YHMSdqJqxXeeBJt%4{Te{lJsc)<$b`&cK!=pQXW{qj z=BMH4neeyg^nN6eZWGoRT2dKuDSTznvu|-*vDpV$!>6b9$_4=3#lsqdopZrcqrZ+2Ya+B$m;Y42_kI*GJg>TwAg|h+HYusb_j?v>bFfw zOWa|8mjMb0SjI(?~Fv8}v!8$n7)!<6~_+07>P(R>3>-%dS_9$W6P25Nmwk;FkQE zGAHAutSD+Z5N+Q5p#rFgsa8V6w#FgkVbtq~1G;9RELP__525x!p2fA?1M{F!4;wGM zZ#^+LhgGTOU)|N5fW@h1(S-&r*A~Lf>!>9Z?g6cy{G~|ff?rgxRbg(?jgMu+o43ah zg`nc){MAF|Knxu9x-k~ib&9^I_PuAYrO=yAM4r=~O`I4m=G_9_O@ssK$rL)2*2Hed zItuNi@3ZA)iZC_;Yy6jI+|2-Sj{76JAXU|Ko4TV?!eG_t16SyWIm-(b;9;BnaLbIl zN%BppES0uq(c^blTLy7KUKNRg7o=d?sDtiDQ5PI_$PItrsw@e==xi5&$Wb%*wfAW; z{&D~8d{&{tGq)+8h}EZm*cSLt>(DyJBe5V3>OqX*w9oTYth+N1D_x|F(vN?^aj2|n z3Dqg8XM2Z<(`IESN5y;%Db^~ssn`Bk1JI*~8VF;f=N*V+;3M4ow8Ht`g7x%P#Bj-3 zLVZ)pZ*y#Rx#k(oQv2ofyxI*9KAraau73sbOaSr!J?c70*XUwI#<0nvk%Zof$Q|HR zlh1FUhqXJZjp8wNcw2eeC#ff@x~9tR9kFQh{1>bQ!*xD~KQbWP&W2yprBksxiicgE<|7JKBz;NR%IY8KG(qM@ zrN53?KITLW7c13)X0YHLBp!NP-1_&shg?@xS`;2XzjsMXx<`N$a>5Gx1^pu?kat?ONiJJPaOGR@cgAFb=3LPnoY3zZ+ zoNvd81)JoaUHj%*8ddgb!FTccoYN`DH>f20YP?I7l32~@^!~4529ul+AqrkY;0|!r zV?2)gQg|kgM4_Gt&j(cLW2DNODghy*Xyj?V*J(|)KlJ}y(|@Y1)(I$pD!pa_uo8EJ z8#fzYH`PWy_gdywC{W*83VaBfeu7n&lKeEaYZ6w+1^4khg_)_0hI3^dR@7^kXhE0& z7*#Rq1LX99zHYjEvDt-X;z-Sv z8XsRA-uA8|S{CmAd_f1@)XXXlGZ%`q zK+)qMMOL^+_w2Q;Ji3K4-ez5G9jgYM(G`qWH(^3SMK7J`{I0qJnQXbOLQoFWF{i?= zUWXXSUPhcQ*6Kciw;5r^=8s`c;L!o|!(+(wn->$`|LO|EaNJ-bdDHAPZk=e{J1-CLyKw(6xMznA2DD{uOTj zi4NqBvnz=X+PRhoh@;(+SMOCIO%XLDzlMAZawt&Ec{NgAVEOiz3ScqPfAg0_glx+1 zleYu1++=1m||5F&{ zfa^Js{XXAi9l8V7oA8L9 z!@^TjLsmE?j49&ZlRgmAIQ?c>m&kutAm|{S{;yN6Wdz@kE9-)elRg_VV=D*JcLr*5 zb#pcEK$LZ-yU|aOMUOjfSkzRQ*!!H>6Jp%o)Vd34YXp84=%}*bqVjl2yD@c2om=D| zqCpyp3sXXna9KD3B|ne=zV1(q+OrU7=pfem+>%XzBv#zd=JqwKxyyf1_2RI8hhq; zsAJ-P8%7`m)Vj7quW%bsd-ATwx7*}F+e?85+7vM8-NV}pI@Er&z!yup`2*)&7f>|+ zG4(%i_`v($`^TRaTDIbisqfQdPZ+w)4-ZL$ko}>C$>#_wY=$vB{qhXDggVqG+b<&_ zwR!Pw!d|dw?_qSk8o-p@a9DX*LdWy)`Djq@)X7^OobQUJei{_E;p1Vj?L7S4dFeM|B?@nZt6=s(=JU<2q=b%vk-ZG4j3z>HSz!3Byh0rO^OdCZf6ZaaYMqzu0^lgj&M;BYa)Wb1n|8g()jR2Xal%f$)*hzog zVbYO2GrZAY{W(A^rgX#Jr;rcJG%>5Jjo#}Y_!p`g`bvJJjW1bseul>C*wBcLlrBcq z-g_6Zut);LaEMXE@zOGW`U8G8HP?qo@kWp*1z4Mj{M2rZ;o=b|p8>ShPHKC}EX;v( z0X{x?Y8r?qf|rA5Q5ExKgE~#w@vv5S%XC~>Y~;=CTwR1;1eLBX+gOKar%6bf z9G>-Xe@}Fv>J!OocC+*zO?-Q+G>&S^_#Wnh3F>si`xRqEa+xV3+2(L%%J|rjhy5=} zHw1wFNVefMBtvFZh<2S@I?f$C<=XjJCI`DCgRAb-~(KEk5t za7+L7&D#2M)YIb}h|63FG$IU@7><%WD0(D1r8=AI<;!wYX>M5#VvE-UH_7ehcGV|m zXrV{R!#Uih>u#Nd&(A%;`WHk3$Ux``*u#6HPH!1JND0o-L_H~!nTm%@OeBNg*}Pr*_^Byn(qwXSHOs1LgV-m3QGn&B)} z09Kn7V){NhIH znjS`G+ah=8EWV}DT|v1MiL}-2!XE|P=uMKvj~6qmR>Zk?RYny^vu)So3Jc%!O_89H zQZOhU3nf>UsW?^?3R;SIzD{ctdMEdNQX=YTQLSoX&;t<+v8OPw2u8y&4c#ior0C(= zd62(KaXTi2Mh;n7UHkmUf|y;^xLMhEALXKRdiYm_cKEG>FvM6yX}!R*O=r*4;yPdaiF(zDHD;sO;(V+Kxk zESfjqK&miH{#U+&oHkK3vRH4i{&QXJ)8k+*~$x z!Lg!3MsFeki&oExqD=E&S~h;);dEp$Q_+b-Qxd}^0!7>_zhplNqYKAwDi2iq{syu= zzx8P)`Q(v8!2X;D46*N_hPhzX?IR`MidY}9z^6c>qdPH_BQWC|!W64RTupi2tvkic ziM20TAWw6#aak`kK3okC9TURm_fnkoSDtTLFLeFVJRLgV)?D~4|4>h_j6>Gh(pkJZ zK0KB<8egH;Wb5EybGj(BId_yn*)(#!(ywJR@7sxuY?4yh$I|p1Zev8<2YZ*2`tG?v zKOQSZZUVF6@ee9OLEM4(v?@(T-}u}Y3jK9(w29%y3rbSYC(IqBhX&Fd28_sqRaK>> z(tHd<#`_+UPjI_T5-UDEhzT{raV5y%Tpnql!H7;d?x|3;;GI3oxNAcpugU6xX~n&ye~%^m= zzSvs>u54rrBjsEa+pK#DsbnN};90;|KK-H~)p#viT@&l|BgqNI+ZIDyPq~z-o>{zW zwXOP99?aqpv(q2in?`zP-PYL-r>^Mb#x_e^*!!<*=o93DP8096XR<6##j960_hZvs zYTUjYEZxs^6;g_?3l%PjTKc?}Pd*)$9XLkRJ+8^30>)2!-?>G4$rN~?f^-7zRL!+P zQ1asG#S_W58gE@86m&CFO2xhs%;K4{bXxu};5^npI8Mk;RpNGf+N^FJ@t*6M-0ZQy zh>wkmFShT@^qadn+KY}E-D-w<){AueRyO{^afI4MmJcZ9%l1O5`%#LzuTf5yeZbPc zr0d*=)6ULMAOBj24E)zhMgX~jZyl+}Ue z0T%JHr5R;%XSc6=?k85~zWL%#Sn43|t5Bq_xXC;FMRTBh^c?ZJ{bn>ug(}L&e&0Po zLu_&Cysf4XM6}dc6H*5_ireJW+#ZhT<7Av!|Pyi&JaPetivRg)LmXEE)qqW6w+W_ z=C;zX_C?k5JhkGr@L_7lOrGmR&S`gO3-^R&u5;x1S)N3^3vI4Zu(J9naT-^t)KtxW zxnJorCzeg8ljR8a*)eh5lj~CzqF<^@ndLhit;2g}@~Sr`D&t8WaGaI3&S#L%nJLdy zG2r<&?1T>0Rd5Arzc<V46H02PSrRyt1s2 zg7r4FYr99qG1beLL7q?wCYmRe$Uc#4t z$|2=YtCbPj`1xJ+pR;jkEQZQP5Q?BbEg*s|uSVZ5qpE6Dlih^FLxa&oRIEf<{Q-pb?H+;mk;i~V6@E!ptP>&6i6yrH2< zL<*f*pK%QNaiC3aXwkYU4ac5IMCU|YEZMjt(a63ycS`F)qiHWwQS;P<>m#ONJ^6uE zIyW+hn<*?RyU3}>VP6qa)0)-(7>qVzutRF`4>nMMmlIWj%LDfX8Fjhvo?MAcEB-2J zPJt0`^MejkyYW`BhmWoocHbK>t)`sV+C|impI-DC&!1zEZx4AmRFrCNw|p!^717n( zHDk$9m8fWRzMa!p;lEiZDSpz?6Vh0LWQ6Rk!1^V(HByheGhAx*enHD_>n!<4if7g0 zBCjLc9)7Ysp$V+P?`P@InRw8T|8aP3t+lb&V3mcVqIvdVV)xHfb2vpeA`)0j=>P7m z_Tui`ntyzQuk3#694T~abakkd@^*ApBMRj?1;%d~eRq}cX4Y~Jud77VFXT)#n^a`l z#yGbw?%NCt>e%J%=nv3Y9P{LH)c1eLeaTI94mZfdGG25?7Y1u8d6vkY*NtqgSwnH;fN{!j8f7PkhOG)N_e8^p`PVZu3 zC0THEz-jw1hJ%~yWA3G^4^OQEp*6#e2F#a`T6#_e;-shI(}5F(h8e!o$B~=Mi55c) zk8QuUrnpJwH|Qu^Xb0nFu&?C1nAY5&9T_!9H_ev3ZDyCwsqFIA^ZiS3H++UyGB!@@ zu_LfbDeZB$udp7tTmSYpM5qAs z6b1&ogQ6x&aH}6uD86U?T6+75)$+{!9j$zBeAbv`S-Vcf_}9c}>84Zdn@wLm?~U!r z8)TVfN+ViPrJ5Bk=id#d!7%lg9h^Lcw@j2fSC|#@@i)inA08*FXKJS%iDj~uS1zq6 zi}9abQIk{3Dj12~50GOrq%)GKc>&l}_k>?QoUM6j>gDBpsQdObeJM=c!-w-k+m_4B zN@a&nL#fN?Z~cISbDGN$nH_gvC*C_j&|?hSnIamQMuuO zI_|;}<$CJJ`~ogME>@2$r8uHzkGh9K*w!)Rn99O~`q(k_T~t)Z+GoFXHt!ddQ>X{4 zFCOh|H%~82tkZ3t-NlS)M^E1;23fbIBu&*nn&ml&ct3kjK&uRa;sOvQzE4GZHVw{f zhTuk>OyH2agk#4(^1T^v)vdZ;9ou6TN8Rc$tb?bs|7u&!TE%nO@{T6vzF2&TZK0!? z<~deIv0yeXzg6@y+KtVwwN>7DHm(+%__aBy8v;Hyu^Rz*N-|J-um*aU9M?^eUw3PO z8b`B-oH9veR#_hLe`u zW#j)#=B;!eIUR9!bi`&X?(*t-1$#zJ7MYPY@u+YMirC_`r4JxUevcq>*=&w_H_PMZ z-BEJno_sv_l690ntBQzPa?BQEhwl;%2lxGvl$(~QoYut`rOc2%0WGzc z+@$ZkpUsCMenG!KrNZ)RO8NM&lVW0`!qG%suEWzJG?LlmS=SdS4JbdNRBWRmF#C$; zgGr4v^5Rc38z_+%bS1Y$0*k9@gIKBW_JASsC3k(J#q7gUPT>ky(k~;fTd}J z1MNtFS>%{qPO0+N)WI3&>F^q=VnJ@(EPY8l=XafvW@HvR+(%D>bI?QM*KIgEo3+c1 zs#TRY5*Y^0k;g5|m8QUPnr`6VtsdBeZ z@|oTDf6{tHn*>6v8uvlF%nGrO%XlPpSzAebb+G}76QjZEG-b2Mv?F5%gVG9Ab;r-# ze17TlFwW$-nS_2f9GGR;>1pKVv&Jt`;(cQ6UW%&c6XV=>D@k#L2Jn#N&p0?VJ@0(LTY0J` zuF&Y!DC82o+><88ezY;i?tMCZy-=FXB)suWQ&Rjtp)l9r90PNY;^ z6~fUqW|cejnhvj1}$EN?OR&L+oBbegNI+xkPKNb12_PCNA`1;9XV zr7MvCVX`2gi-?=>ACEwhE)~QD#Menwk>Z4%1m>SwS6PZ!S|VnnRg3KgzEiFgMF>M6Fk1Uk3wWI5awQv4tEwajg-E-ad_4s@1 zh*PA@PcsC|fq+{|G-bsyDwASA+1f1HL=KEQd5u=thf(8((}Kth0~I@;DZ5pvbK)4c zGP@++QiLNSk{F@)(K^Q7pGF3gs@Dei^D5czCc%OXJNZ1ZQgF|TBjgvO7kiS9Tbh1! z(cT(B|6;Po9I-maWZWx8Lx<&9)*9q+Djs?lNv_m*-QR0||5Oxo$H$27o3lQeX?k5| zcu*uZ0=GCv(rV|ccBYy9@xHC?B3=4%JW_+TD=RLFfkA<=jOR9I{OEbZJhM;%=6d^b zTCQohRpCqX$o4}3tujhWbhB85Hxt8>(I#sIQK5AGgqxNUoc7EYMdy$j__++%aelLB zxmD{Tr!6Z2)G4WU1IU&<^7nswtcVd-9Q{S!#Kwri-pY~EBR$gIkaq$ zN#GPSobSh9@=uAUPm7zZnp@oM9v-*&?xHub(5cSkaMGrCOXsk7ZJC@sx^6*DOfr@u z+kY(7NLfu*yga%*R|wHJwcj?E{7lrpVd|1Qb0wj7^IAB1li+Z3k49xVm3r6U+bxX7 zEatEr?meA|PRA)JagAHUyWgwz$kGf;_*;ini=?55SKyIjMNh-1P}#yJQ+HN);YP!5 zzFhIt+&m|h-e-pM*j&?4y1j@DPg@_wsuCI3z4chtHSZSWQ_tcqSxNE3+ax5zmlk9W zrN%3?en5)o5k|VPg^SSM;72rKG``#s91(fBQ3)*E=wFt?j))%s*tgX-+zWZE_j&)Z zT|})M*2IG+?RcWGbgd(Do8iiJ1X)9LHA6@5tp}ZS=lYXxep_FE9Af2q9EF>0`1HN? z*r;Yn>-4bjcJ*%Z-to6JbG*U2kL7c=t2z$x%^?3chHcRLOQ=l5i9$o!+pg8HwCKGW zN{5Kg6P4$hHlY`J0GN`8J|^RU1>CQE4*_>Xs3iJdJ1kf0WDIYjz-?Xrk z7jKcr#jyi8T?2h1R_G4EJC#pL!d%dLI$qs1+C|Mha>Bheuj&>w+&^p@(UU{wH_@p~ zYiFiH*_Z7h|LVD$;MmuA+K6Md30fxqr8J4%;ih#nx-g%87eel%M)|3_(anMCU7FSW z1(wX21|6J~&(+6{RVJ&phppttIvsTcf)=9N1KOTb53nd)?v%JBkM6p8d&MID_6;E; zl?IoC^nwj}{t?{VgM)?-R$D~{I&a%*&~4q_o!}g4#zBN>_-oJg=(XV0aAo9a1O!?S zdf`YASs<3~NwqseB_d*w+$kS&beZQZx;4A~Sv;jU`YlH{+0h);gz3-xf|804 zn{%h;(R^Z@WU?LD1L}|Nh=qZ?sbCM+=kF#`Y6HZxO5M!4pC!4*Rf!4o(;|e6oT_a2 z^yzxpom99LIV{{?lQs%CIw#987k+RJ*=wzn-MX8d{7R87C$~f;rhVj~7tJSN;q0_C zuqvKJSpAnS{VMWzZ*snk+* zJ)vP&S~{t_VrLdY;DC9Fl(SSjyOQ5Ov&5rW{Yh`aXM%K)hD-hm6hCAY;hT+FXo_N&QY3>vG3r929hN%%Zx-;vjRAitg#d9hv~QqCSs{fzCJkcLVr;7tlmjaI zIXS(q#+zSphS_Z!hF2emwf&=T$ngC>DwtN+?+V-isH;7ho`{)&8AB`eIXAnc650 z$cy1T$gdtj-ZfDL-}SbHyZca1Nc%0HRAwx>^bQnwx7c_W!%tV$pEod)+gIhLg8;12 zfq~H1ga`mO?S}T+{F4xc``By!%E`_|pW!|fwsD5I0u;LcTGe?au&QP@OHkcUiSuKH zX%;Y%Rm&tQG)BA9qj)glNA1Se6p8wpJyig<-{_76Nyvfc5>M2&jDiaBX@ax8)JgG- z19nrdBrahQEACvp{Jlk>y!mALNTWw7nJ@0UK7?v*v$mohp*I?|cA2UPx53;SF8#SE33v zzP#cq8J@)}b#701LG~Idu+JW((}N^G_vm!m1u=N~ob|&t&0L!h2T+@){`H7w?*aYUA(I z$_nJl>XF}9GHA{QgjQKy_b#V5-3tSKh_H}TfDmFQr6gzN&s9C{w>2zLERg583;o&~ z<258GeSxnbK}jJfPcUl~CQ8md_bJ1bvi*|XcK_Em6fY4S9Iqjvex0|x}}$xB^T1LgnQCo*!@?UII{ zKEe8kzt3|rbeA|4_$eZ5Njhaf=V=3@UOpbvAei*LWcGm;|*sGE}LCSWTxQZ7S z@gx!N2fpn_DCe{jLZlKQVm!=ZcaUmI%ytVuuPUS^VY0E1iQmglxTFa*R}c{uv>v=! z67s6qrv)jfYz%c#_!Fln?(X6qRpE;7iPg^zOHR^r3gKcE0SXJC)zyMA(Aw7%T#C#T z?7JF$QR#isb-^7t+4!@{_;=k#Y8^t8xJMGqeE$z(_*Nce`+lWIRfho16v< z8>4tC$??$A?!9~wJFpbjdA|VJgBzZ*dn&2cpefapU~E4bZrCffc@@-yPRa%OhZk4< zIIfWk2pf)c85jOS$(1sJF@ysHAmtjZEs-BkU3xG%#`O&s!1ds1494>FSKmu=mmU;j zRR2?SB25J|mt3yTg`j1Fm*Jo$4NCj7MZ(P$uTsn8U_2ttE=9p`mMRtQRyNWgyZy<(WjeY6ORM7cq+`R{_kZ=e% zO57hawm3mRz}qM3xWyiNQuynRc9W21=raxBG&4zk((u62e)m-FoxnK=0lZtXdQb7u zUr(LfGa=8<=TOUy9oQHz*=2xYmVeok4P51@28Xqs=k|}UrrGRRBtGFoHoJb^d=z=(Wsg2uChOl{1VgMrrlQ513i>YZ zo61&Syl#!SyG8R~>zIY|2XuE3Rq$E-oF8|PuNKfH$0n>SL8e^e5@OdW*qaE%kD2yR zmD!=_&DXaEg?D)A*AVP3WG23i=!0m@3<`}Vg8?tVl=>-%A?}-^{K;LnCNPUfIZyM0T z-T(_ra-Zrfw6JNF@E&xiYFVw_x={zOknr8?o#R=#faedG5vm(Cv|f!9oetXlBPMAi zLe}8Ub=*CY1w(ngiowEY5dtsRe!>pzlP!=D%fuGSQwH=^1tWi&6vb z`C|_D7-@j~WWeeyKd;3^-h}kslzS>Scsl1T83=XllngOX1!4rxp}Pus#C!8Uk$Y{K zziD(lyC%;i8g9|ZR_bcK_k2BJCw)vG+1rCA#ju8!@T+qc}jW}2xGwU20M zAp!vEAMLw{lpeBp7kII7LQ{$lmT3{Uedsx@hp4p_nZJ>}#}XKxystb&nGz?4nUsrg zFD+pf2i*I0pDMA{OoPG)+ke#dE~X(fU_l!; zjQfeAHsJ6(`uiJ##bpp6&~Is1W)u!kVN8}zZWN*#^Vy-7MBzczSFMqa5-aiYtKuHh zmobM8{zMwU@@4@%%|k#&`n&Z@|?X?A$ADZwJDoKWbvdfng2u!fP|5-{rN& z5wxRfM)Cd@lYQGufN_{N$rhgW-F)i*G)&P?-v(<7pZHc5nwiyq{l=WsB(~PUqfE~! zkE;~D_Z{G4r!Ub(ONIXrY!4bjlbwP`#4Ja zgUCZLdB6T53j3mqx|wv28566Ghe1b9Gd#r>Dt6!mpFd#_m{WOP$oSI=xLHNQwVUAN z&}YX$jSzTCygiSuS3O#dD7cWk?GD_^Ydg~sgL@L)ME!Um%WiEoQ_klS*Hf#YzR$(8 z1)&&*!b}W01qi$ic0|pJOp>0iIEppfyrKx~-V(m2M>qbnXUF;bimHZ!dkruRe>u0~ zv|x;~k>+&h^jHww>%E73A(_RI;pIFmCuBJ<^qbfQ<=QkXVJ)h~`rW~7)Wo+_pOF1Y zPyu~k#sEB3%I`5yCpg}cN?}$ti=Fynpr!-7`4VYmw=tfB1WBTxQ$m9SlkE;c>Kklcd@Lx^2t6Er z3AN_8386**rZYlrh+A!(7Nl^0982fe(j;!DQ|qbKo$+x!rOLWvfdCz}TU>coH+^Ne z6rj7-t4m6nO0*y({_hz{JcTrO$dRT?&_D)+BKc!22^9wvk)Q4_kudk2%_LI*5a;L{ z5?*?vVV%lhPkCe8Cgu=u1DfRHRbHqTnbG_=5!DqUOwVob1KtUwtSDEw!zLr|C3)zEJ3I@J zQ`;PyQ8)y#lnycm$5C)X08I<-j2T+{9}i-sW(Ii9pOD`#jW{NOkO1zx;;L1!%AS+w--W27JmH&)&=-} z7vAEpUcd4@Lt$h*i7S)(e&P-%aShMuji7>QTxe?EcXTx%$_tlXRw42SzU7`8!;=Cp z=`BJSiDlb@d$~*A1YauYIhIXvLQMAkJ7xaONG)+ZMi{S&Txg%ykfw>>oM?r-cFzo! zhKsX-b3iT6qRlFgg0bQ8r04H(g?rJuYq`J*1In%gyfcD{P)sM!VQX3B+=rhB3&wvOIqW(!nNx%DqEOKIJ?e zd&&fHAfFx&d0U{)+H0F{{?g~?e_jt9S!mfAPwu32Q}G=A^gJujf^BWB2|rC_0RHb0 zBjqkNnaK|MO{v&rh&PF#dxp4pbmGLVAMezMWh`zy+BcvrWC>-Oq`-s$Qxej0lq;fX zrQNn9n}GoeG#S`d1525e0M&^4>GabwdVA$DjaG!@#PeSs_rBo>z4sUxNwhE#TO;s3 z246+}3dum;+t%$j&985Jwkmf`D#5?C2n1*FbENd-tXTtBbncw13XjYK-4Y;h=wF8s zbbetDKD1c;kpogyOL$&=>%u9Z8r&nBqfWBEvf%Xm_GUGpn!-6hPH#~0mA(NEM`Qu< zdPmsQyQF@)BI-LP`!}I-;OB{FJ9{uM6`zxI?R6iT4VgJ|i?uGIs(j}~*E9?#x|xu} zDUT!A+EwW0&VRUxZ4~im$?#Nxh#87es)I)Za#rQb;T9x-E=8=`-|tA`WAcc^vhfG$ z;Xh7KvqZX|&q$-Xp40r*SORq60ojzps&H_f^FYPIUA+8S; zm)_|*P*(W?vw-U1&Sm-bex;4J^1ngC;X)8qfdunzk9@Df0pNW$)D zUXKp4Q-?m(x8QKn37MV*#Or$Tu<#FRJG~{G@Fwnudz20ltq#!K1p z_Uw&c^Wk|G_WgC#J8cl=2)9seL^;MihRDwabSa^86(6Plni+2paOf6AIMtz^G12;! zvmYB1dp+5aO~?i}tyeB^cTi2-X|})*r++P^ecBRfc$iRGl=$5R5+f{R%76!4m?Ot_(idnOX~eW^61=MTLEiy&32)LWwrY zr{Pd_lYft@#O26)gT8FQu0+dzz6M?%Fbpp1MsWsNu!RWIOtMkf(m42koAc5hXUJB? z-{P{X4mj?zA^fBIPAew^wE;l;W_p-DPVdjcz>WsUvS9ISzgH3OI*{pj(UTpJb$;@+ zG7@zi0u48mw1;UI2BM+PDM@{P68NMyPJsySfXhuci`VU`ks=+kWpgiRQ7B)Le4?jN zg6{X809q{Q^D&cncL)-hbpmj6m~14yi;fEuXmb*&T%^eQPHCtA%R`u5&3HKqR2vne zucL!}8rA7T{RX=G(UtpI>o*8LY+q+QU(m>keFolj32~p&B&#q~4#57~ufE$fRvSKp z?NQ_X01l#j#6V$FM4esi;sMZTpt2q>RV8NZg?8R ztaSY=PifLc<4eorbize=m#-?HxQ2{4`#umW=&h=%NhP2MGx^4b-v!7Dx6ilS>?W5xtg9gwG zA`>GrC}*$xaj({6Z{O3XIxw%a@XIL1>(LlG+3Dl$;I8 zHG;&`jv!T=1Bq#JQZ#wsgF3fNIn{s3Cgqjrnl7}aAj#3$)D&7VAkdgWIZA$8uzsRq zLk-1AEgA8`19!|eXv~d;To-7}d3=Rfg)1uOItx0^!&&#`37ANxMvuFLT?!cSNm8Sd?MA>HHBUh9VHb9_d^(76khS^yFy)gj0uYzFkI5%2=X)c>a!AgM0E^hU4PhI)cF|}H(kOfpCld@UDq!&Dd;P9 z&eJ*ViduVBD;5TTfqj#IT^Rialu8EO-cLhpRKm0HvWr3xfbnabJ;lao^84#i21;IP zx6Y|Ps(JK+VK7s|Rrj5{Yv(mBKI@MTDFPtNHY01cA(QP}K738+QJj{!PZ`m@lR4 z6>HI9wT#=sga>eB3Ii}%>lGC4*aJZtkLP+FQ6k6_0ZI>r>d`b2=SWnxUnr@>PN<7N zI?0<``Q_#Ws=CZf4gjlkdN1Gl#ju!%xNtG3{|@MAw>K)dqX!^?mx7{CKoG0Xj5m7J z+G3=dvsxZlO5QZOY2W#76A_!NyHjoe?G!h=nGlbYjsXMoCBu3amKj#8jTHeM^!_We z2ccoNTB2#8VXrdXXus91)jVuCbFgs57;uGira6)D6cTxWHrDYVlBqn7cmJjl>g7sK zsccp>v(cqhjB{aby!NOlDjT73>7`Lx`u^L$xCVa>@NSh}e!tUsY|t3~sX)8fX(TQu z$?6A|6(ASGTp_wlMD?2Y3vc8Bz$@o9l_<5sbe}8!+7yMH*xWRBk{_!d8GdP+YZZls zNd8tb-fw{Q+@yLnfj!NxJm33TnJd;%V<`P!!Zsw4XCr#FDAxf~pnq2J2o$|H#Khzb z!KHyev&lB~M#n?0+0!aQO|XEVr$CbgM|A=AI1si2u4lNg)H(@0kgj)eZ81RDy1hPK zQkD7ZrvLF=-})1YHj%w-eJr3qSKp)}FCLtMl-4FpTu)RQgDKM@J4H3x5lTbs*SERh zxZXT)NkPZ2Dx-X#@JWml6|D*eeqS`I#lF))o_Rp-y49z~EKcQ>EafL%lHVhQ9<2vp z2$UafP<>#7waqfi8Tc=ocCk~Ix060 z0_?^3V>4_~ikHZWr}zA-RjDM$%f|j+k@{`JW2#<^oi9pn0$p#jntTWkL-x@E_PBJc zv^8h;7r&?iT~ud2r02pB*%fqW7Wec!@GqDlD~!0B19ekn_(?$ANgFEMu`LIhjN8Y4 zNnjamZYhk7l5CH$?$1=PCeG2{@-2#d%!w0OC7V_GQH_U7C4{y7YZ zmV23C4Nj%#0KAgIZrhdtUPiBur5k~A5#Z+A&%GB$&Q#gDzT*WgdOR;KI^`ITBk$zT zdxg+3w$)GJb+%A*^wNpwDAPucwsvhaqD)2CLTETF=Rb(Y{n7kj(s=|Q;50ogZ~7rk zdzCG|;)ZSauVfa`D!lK?O0BjYLd<67rq}0Rg}!=Bt{#Yr>5atcjQaa&;-3kf6%C~- zF0W5rR5khhp`7kSN~bVp2sAtcJiMj99&_NJp7+S@EitUkAyj}nuvnT*eClP+!aSAT zYz$}&g`hfuFUqAio>V&v9F8NMmtwfZd2=DxzoucuuX*LNi~GCMtD_=YC+qL3&>ir= zeT6}M;PLG;#k@hAdnn2f?m)|lac=!gw4TThX`w6C#0ZR~G@q)cJ8_K-zmN2?wXv(& z@Y+FcIL%4Z2Z>`|k{VX9(0USghFB5}^eU?Xt}X|JRES4Q8fb%+&{0zJ{KC39r!5)G z$C1LepTEXi6HYOOAy$Z->d~rnp$9zBCoQ;O_L6r&qgI z7?GT16;WNWsl-98tyk0f$ESmSDq@m2VeAB`V33L8&8STFp|5Xlm_a2jD4Ku*UC_z} zc88oTqZI=aX^g!Ka!~wTW=2Qi{qZN27vSS|v0I4gllGm%H_52UJ*NwL-#8&O8gHv) zhRqOMv{_Ap$n}37_Z=h{5wj1?v1*Bs1Io%lTFHJWSP{`+q@h^Uj(!pcN^Fq50u3D+ zE&cREkS@0Jv1QyJUUdb`5peaK)_8M8icX(T|1e9*YC`RZ#+cn@1VoW=)9>Zso>>`* zU4yc^d!7dA{Bz&~XYumw^aIzzrx_0RqW8QGpxj*IbY6bru*OBibE2RSOBr3ZF=MXC zs1L&_91p5}dw2erQj0<) zQv5aBn|ls{ZZAbVjjS^RN}LGlM+Ud8tB9d=%kDz}eOH-bb%V)pCsrA$$Y-T<;Z`1)eo{I|m_PD-V+sHw#~KB_E-4!I5$kp~2Y z-WdDR+?wSu;btn9W3sEu4W=4%+!1pY$$?Ik9j+!KhoS88pZ)2BdQJpVWMjqgD(ptP zHcOC=o0OQ)r&~5>9CDYYe&psHdVH53;Wy%$P-Zt*g1U;a*9s}rT@osKq{zVfg|+ir zeJBW$bY+%;RvSh+CUp>*8in-(V&d=6&X4zT(MWL+2pEg z@pJLaJ{XAwk|UM6x0H|dG0w>XXAFmW5B3cfAN9(4vo01T58zi;;}Q0bHFt;#eOJu~ zK#?Oxd=Sw7paxkvhSFxⅈCdWJlV%z3`0G{a+=Pk;u}qk6a3BhrO6huZH` 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 z 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

      8(Jhi= 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%0D*5 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 diff --git a/Documentation/openchange.png b/Documentation/openchange.png index 30e3df855d80deecfd61733f74cc7c7c62850457..75c8f30362dfaa80173cd37d14dd51120c79a20f 100644 GIT binary patch literal 318538 zcmeFZbyQVb+XspW0-}Nba#V*v~;uY+@AOK z?Cm+<{k}i%7}qn#8DqPcYsQnmC*}%NkQ2Xoo!~kG0>Vv6iN{Y75Kw6l5YX6AuYo5& z7L9@t5UxKo6%kR86cHg)u(LKYwJ=0Lkhq!j&iVPXah!nOTJGAuJLF_k`vh)iWCQ#X z*ho(TC0{5Y`ukBkJw_J0dz((l;CaIp@c?pt(YxrrFZD*zb}igX+oq^$OJXBM|Qha&8gIYY5jxhq)ejQR6NlzI|5G zg3ks)>e!E_WAkTa!%0JXpG&^@rNH7adzqoSJvN5=TN;6C4}J|ta!9qpOgzYJVeNCtc!Z@R+QGr&L>UB@yK&lGE7WNgfo!68@wWnZ5fM<|e&MaLyA^!G zYm$uMl4blY2q{ofFYESbtm)GCuSTakCC^UuSQ*|n%g(=ck?Gwpy%ENO`=Y@5o#+)R zRm(V&h|N5r%}v#jWs{To@mUhDXBPrr-Odzus5g3(ABH5W&RT5bGS}iD98#(!5SP?N zDz_Sbb-R9~H8G_#n3CyeSt};m=nhGNoKNK7TBFH*+#mU#q24Tp@tq)1= zC6~=L4J74;n>Oe-UWf}{_ivPDxiaHpiu&>gCieS>pWfhPV8lHd!6Z~ebrpH2z;pL% zi%8%b%t+yrKI#v6^uC|cL=*(}DI5r@P&Iu|Q&IZJIIdk>@$|bLi#Vuza}440i}6B! zB2@9F&bh}f*oi2(4U_Xy6*z*o%A0WK34b8mf2G|Ng)00N^=iME3M%2w<412)D6ibU zXC6VGf%s80{>`ln!pcyI2-|O0uLY#(#^T|$;x7iMhRo|J>5k}0u?)xR$12I-E^`@S zviqF8%+wn$%2J`p6>>u3x}6Zp_(e%4Tt~eyrs(RJ?gl^6t+odI1tJ@-3Oo%qE6#kR za*WZC>KE(HH|ME$Tx#fN?ry)tXte*K=W(y@x;K$G$!s`jYdy^yG&Lmiml*fnkx^Pu zKF1_LT|vF@yWPa`#OH&&1Gzt@>lY0@x}vbLhc%K!)N)aGCH*OJpHkArmHIrFG$Yrf z7ND-Z7uC*ZAZ~}JDy$`+PnkldO@$FDr0|xO`mVebk?5mwIbNwsVOL>Sk<6zzKUfW^ ze2T3~Qj@QJ>?!5REFQ%kvlp}2o)?u9VII96<4z_2b~MI0Mw=;xM*E(()MeIr1>%!N z;l^h^>4i#ZV)La<0Wm+uJaa&!_ji^e3dDHUpH?tZ01v92|1oHGhl&Bb|%a!zC zX+|=sb3ZKCD1YYsNM4#*g;~4c$#$CHla#!ajC%2Ub?=UbKC%g&;D-r~AJT%->UEQK z)93XmK1Jm8)2FMY^SAQof3^+U5nNQKE(}bPjFb#*mwh%iH1k}is<*WFhWWAyHAfC- zb=&*GDOJ^6v5{2X<_BLr(p?iy7|;cRRf3anrg60IZ{B~#xPG5hl};5|#j8v+S*Q9 zQ;4>UP1=y+Wb~ri`e~Q!Xy}U57t1fxV*=wB6=w_>(ijoq!EJA|qgDud(Y0R36eve1 z7nDaH>1~^BXAANP1`37>V%0g-<#;k5>s}yUIGs-Kjs93U9X*pr;z7zq`+hwGNeoE| zMG&10?GCadQgh>##_E@(%mdn#8bdgUkIqG$UOhnLyrGGGYLCZspCgxg!?i-u#mmJR ziBV7VvB;NdiSVxjU&Vt%ainpa#oEPNM2E#?McqYXM5SX??yHu36AMubAqx>PzNJVoNR}%0Dcdb1c^0_4)Sk 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 z zp(CfWlsp8L*4_}+9q(g>=;;_lRdMy6u$@xt{DYj60ENyWs?CqzA~>S0Q#J7O&QlNH zG5>{WVW4jj?qjV6R~0|tT8C8Ut_`OaKh#`7_nb^WFYO7?oI8BvqN3hcqtkM>0! z(yH6FE01Ox>L$r}*4Qw(8#WFQzRZLLVVVx5oP)Ww2^P#Pnu5Mg8X~$$^qx}|k3iVwc!Tit|Rh440UfPs#vEit~)r3mp|F9ix zX6D;AVNKcu&a#%S-5w@Szel#Y+^03m^=S8qx9xU)W`1lbhN&|A;pYH0OqsEH))#u+B zRHZY5l-xZA6mx3|DkhWW1Z26REUoxSw`U1OxG`ERmi? z%d9XvTt-)w=QH4OGJ9(-bIpzC9V-zm@!2+e^`0&*h&R>NUoe3=TE*ZAj_TzVu}TP8-nXY5@EBoDiA$rr16n&np7tYPRuS%5GZ<=` zYrY+b#XbYpjl*>3WZh1sLR~d7jYZ0uVEs9xoapSLI9{1{G-}-K`HC$?s#hmVPtoO_ z2g7S^V4EFui&De_w@7eW?NBz=v@th)m_9+(;Z1= z_T#0R)53~mnQ-~DS_r}C*Q$SI5Qyb~Am9zk4V8m{DSY$k?Z+RV&V$C(Wk<6KcFMq_ zUz2u{yB}HV%)}jZPJ9!GId>|dm^?mj3plQ^%`w^SMV5NB-J`McbF>2YtnNzdrx$@AeKPPnhRO6f+{SyP);CZEK==k^cdhc{usv&#z{ z%gCbOeryYdA!T_uhpkWx2U&ZdkEU`M>O}SPy&KA?y zCeM+3Fda|*ghxZ{IIiSrKQ!o=`F@)Z?j; zC+VA90odQZn<3BUR9Z$Bm!Jp_j-6AbSm~_s8W$6fxe`|_i0o*)XPoeioZ{BxuoQ9} z;j(J|h#4BpUJ+lm7`bnK$$+;&QFS2~o-qHhUGm0@-^3(PI=^S@RC|3(Zxj-X`%wN9 zdR+g6{l&csKaX~TfgqH7D!MEfsuu2WGM%`9@6#Y0ue|s&xlTS# zaAMAS^p$sy8ItWj4%V}k@SnD~@b};52vD74`xzB$`)=}Nsp4Tvg;>$!9U_YQMcG_Z z+)b6!7thyI<+aV8KFAOjR?i{kq<4we7+S0-@id7%(tBavgNOJ%itDV}JR*kxPg$R4 z09N_0thi2@hr0DWJkx$4(u8ioI%JRMfZ$c; z-y1J1NNu*|y&HD{+N~?7zkr<%BLXfR;7~{$%&o3bKXlVe5cJdOaqqoMIPiAR8ha{&7n?WQ z{-bliT$w`-PdP}cN8u~RLro-d$B*I4XF&NEIQ zNt()Gm@IV`J4N%-v?oYf#M6&FzH=L<$L~k?Ju0$k*b4j_ogep5VwiBPjeTd`iX-}d(Y!ntkw%|e4|W> z=vCjPLR2hZ4jA1~eeLo>b?CW-tL2D0oL-znQp7U%w!dXo!&@W>t&WiCaC@WbqD`9y z@$KSVC@S0sZMce`IAx=puDqgf=2Q!2Ph071d+P$KWf)XgOa^a~ow#aeG2!fb zK~oDhEl0z-2czUT<4Mnvx=&*00$+AgdWSPr(s>4+-%>;p)h>bkXv93y9%MGX`IZxs z?U*`)BY%)f*X?YkzgJms*oK^S;=Ryr`#G#-I)d{0lS|_Nm(-~$D z=mz?#UsK+jN7oXRXL*udDDX6`SjY6>L$5$)&W~yYhB(q#ho0@KWp;eXUOIYDY7_Q| z-KV{zV&je}b>;bObdyLUaP=@xb+Sf)O>R#hABp{z5zmYupMyvTv&WHNDtJZjNvBoQ z9H*1f;QRK{pP%RM-%k{k(QhNui`5<7C}NpManhA;*RDo7-g(qgA?^9R`a3M7%@8PQ znR#R-@nI;3D4>EDd_RVZHK`t%xUbO-d>(4Pnv>es=lW`|^kW+9car143p$7Q^Ytjm z#Tu>cK;5FAii!e@#T*g(@mnH9Vrh33&L%vXc&pV2PErKJ8B|eQhpx>LmW7uh+W5ZQ zg~k!vn-=bn$JkJDtow=$xE%u?u(xjT_8z2*f|MPqq>m|3$y~@~c0`>{`$v5UhvU*( zY&H``GPHHY%+hLbFy&ndCS2Z)i?nX0;Y!jH%xX|`&!&#_hsf7XuBWgP@)bNIjM8-8 zi`^mmw6T9Ew8`Sdo0oN86}@*~&gkA0{S<+Eoxn55yp0K@RS%u zcQ{r#&j=hk5)-CV(U+&0Ir!goBkw^zYNf<1)=0s_3l^-U${5G1K$(X`)+X)Vfd*QQ zUh)KkD-YeoP=rTc=?n%qVse1wWBa%d%gTO+d?mu-+G%D}&T#ZDP;~bx(IjHLRTK91Q-o{=zl1eU{JzE zG@XLpFkK1{GW_5>@78%z!7ULSww`m2Lbie)4ul|^ZGB!VL&FbyLN*Rq&*LpyOYr_5 z_TKt0s;+w9 z0iV2Y{eIqm!1D{Q85qu-v-aL=ueGjgUHe`dGoA+AL7ll!hcV#(Agh_5TT>|(Ay8O( zwfv&it@(l*V|}Q}7D!xLn}0@m^LFT*Wg>fi7}pxIa^U(W8wfKkn(gpr1%ZYlk9fI3D{KJyWK4r$DUn-GBoDsHGfrHe3)?W#H9Q~ zRYPlUTtmjfS=D>e8@g2*wjbgw+2M=w|0iu zy*kwiZSh$oEYWE2#ErW>344>-knJe;q z3DV(b(dT48uY(*Sl2+BBT}K4FE+e8;iZl=0UZK4l%QqLBpB53;<~({m9QED zFe1y|LYSg^0bUWNGMd$4wFf@KsQiuu9F3It!QBzE$$};q_`B>6X z%F>n3RHxZC`%8$7mtMm0i_r%JzG~`3jHJ;dt<|kaJs}StNjH z3?C{z(f8VgrI|D1GsHaz{*{8S)&Cya%d?k>gjGmczLwXKAUJ z;mB$v%An=-#SrTnxaX&Lx{d%hlF7aL#}6N)H8LN33?L#)VK(JA|J_+WkeWW zq=#Yb9$R+~tW6mhpg#`G?CiytrRJCg%K1Si933?ZjOEVK0a`OO>LPnN!>_~3`T)vU z?u2K_J5q%^U*jC2x)~+a(Xit(ho+=)X*T3&WK4FFQ=StuIV{#XagSM@YZh}?6@Wa@r9opUxk#$|1MCBR2 zNQ>#d`-p{~l@Fdi3PEICb(X42LWu_T%RKkUesVg^>dwMP2QNJ`i8sUaJL{}o;6~X3 zm$SB{+ur|Y@b<4#Nj9Z-@Tzj(>`M=KR8S?aqtDL+PhrTX^pvBsqYWcPmxWL8siP+e zC$o%dk$#&Nc+qS55I(YS*FNuV$Hbh?s=~D}A%|#@nNtT!h&iNx|5KpUwz~9q_6Br% z@TYOmiBv5l(*}OGPIVV~a+~Pu^`eDTW>UIN!@0As<~OD9e+etl1h{V?vIH@d&kcX4 zNis}sK1*08?gr}E+jRkm2EZPfx&jkt{E1o3RS^Xg3Wk=S zUB3FnDDj^pgam0UMJr)ExRjqM1+F^~Y74krrpI#*)Nm5Av8rLtZ|W=rz{VYQ83cMF zk9yhj6}Dhzhu)8vZM}nfeNYJjVL?+nDKFw;@hR{D`zOOJZCdN!J=Gl}Qu`WT>3yarybNG@Gy|%ht!e|5ZzOZ_H&rHE^sf;GRy-~w5J{OVn(4hH2?Yd??WeKs=CrvBn9wseJ?&wVNS zADmvw!6#iW?hA4bA8T*#t5978Y9G!U7bS!k1pW=@{u^xIV7k)i*aJVD>F5UaYtOM6 zlz+}?kYd#2J!;oQG1m6|oLGzLwZK?@q&tT)eENAU4Zbs;7=9AhB83DmmwChl zuRGzw1mnRBsCPG*qWj<>;Qx5jkLq6}9EZR*_(X2I`*2qVE>8sw#R5%m;j`YGx&YyI zj}}h(aAT7VWCa@^oGyBGLq9&Ou>P&1Akl$Dz0v2*!Jk)1WjO!{-!0u!Yim&F4Q2rV z-Ld_rQ$ObS-J8I;$z8$EOn<@{k-7iheR|mXbCU zl#a?IG|k3<5KfZZ0h}*-p$@yGOz0Ru!^W#&L0hj_`;bV$sBb0tyh8@y@)HB(;D5G8 z{dIZA3}Kak$QV)ey!&fIGEcG-dE(y6VX#<_?dz*gt%p2SP7e=_t`uk$yV!~O5{R&1 zLPfVq_q#zjWCvdq66|y9iyv2#N{D#m^DK;X544!6S#DU0HZnR$wB$d7#Wg*)S@o)b zt8h;m<~82<*#Yh+Zn7cMPiSsZ{?N7_Oo=;|m|?W#H*SI-)#82Iyvyi2+ho2rsG8TJ zMyj~$pjN>X3DS(NYZxW~S78(bJbT!8Yt^3@gM+<9ravImnmFWD{Lg4$RVWoM;s|b@ zc?UlV2r!e2;Y#spn`kf-=0_!iG9z5yJxsCO zLl9^qbZoip%&oj;S`v+sz?FU$dEo<8>6BHT8NGS*JBM)nb<%qx5EJ4c6}#*yU73=3 zL;*fs6e+t^J*eC|V$lcnWgK)E;2~2#kap#wCJOI zS2I~zJ9s`n{6$vpT-?AgC~Q#9ax$jQc<>w5UC_dTM6m7-yG7l++~pF`h&Ebt%7z%a z3U{txAB5`dc!e^l)EXNs&c!C?spKXk3rp=IEb1ehE22Z1!>4M_ajSqwj^m|Z{=vXQglb2aidUVXKq>1VHu z1tKpwQqy{dC8aqU0|QZ>guKN2&}yv{NTBO83oO%Bo?$(}#VZlVY(lG_`8W)Yl(;Pj zEl66y2M>jf1wUcI4oY8Gi-?PMUOT3zU^E`bJ=>Zj6ox^dH*naGtZR^l1&8}3>N=^U z!y2OAS zR6n_LUYq}6?iQ^RY1jHS;-EK@Z zLPvRlSp4-_CPKoGzsYshpZVMmznZaAd&IlAT3u}>fGfSwA_ol zPYy0yP_YadPnx0Hg6D`zdqvgJ)bS{9F*N}Asc;y;Yx3b6KnEDYc@t@YjU~>A@0S`% zHrsh(3v=Zn{mpQATM%wqjdtreB#5%8pANqWdAbi&CP|fTKYnqjR(h;g5Nw?LRKMF{A17sAFD_Iwbzqdb8SINMuc4S=eIb7y?Gu~?{Oka~ZK<05W^FTp8 z^b?V3h+`7$uRblXPRw>*`!Ei}ZYFAhFwQ94-C6b!tkmc%H4fI01=+m=gW|ew*b!9#+MmB_IE$KbOr*a9J^z+2`+l7FN7bjXt*XX`k{F##9trPuv z8g=Z@+Y$4~2y4ZT`L^`Jl!uPxr#2(1R@JaI6kwfMx1ouh)ehEfd|7NWFL4OT;VhJa zZ~+MVC7$ZWg$;Xo8M{S6IED#az8{@~2`+{-{P}xp3Wm{9ll;Gq@OhL=sGjWE<7KgN zEfu@CRH`1-;c)(2$tzmg2zkHtcW0%cmM7e}IC2jS`d*e;>}0-r{UYJwI^(ne=!y`M zm-hKhCa>I&1#Eg_xSeDxlCzSvwDP&G)q!}Iaip2{CY#M`+neWyM>?#+fmTk=p4dm9 z#5}PeLDp*q>D=0DLw}>eD2hC%`)V=2TDtxplr`c_8~qe)4I;7+Xm$dtgeN7}q~L&B(IYH?5%g>} zDPs&lRa#KMycSP~MSrK5IU^G}H`1`wLhxGYAJGVdvWoG_8@|7q<|2D}-Sj@ENx=&K zL|{l*>bNltPE~L!{zL-jjx6EzPxVO{*W=^3Mibe#PlpX^`l<5UqHJizvz+=n!Yfob za*RV|OHVTL;$tuH$y`N%5}Ui@$3^)&f4g;m(|m>{xUJH$7^#y3`lgTZHTiIz`YVHh zajebKoso%ahzc<{Jr-eNSZyj&-& zZ;=ag{PhP1srNk6i%OBR2WT@Tx_;<*Qnp>OH^Vhl6LPECV`S!3jwsOo;XnRMjObkU zpdCLt<&QmruS=Q%z9ZOiKHy)ZwrrQnST2an{7NgD?lmqBK7xBhu!w}Apvf%}7yc9A9s!OyNxHRCx z6geNK-2VMTJuvnDG(@sIT_-nk(?~BoF?fnT$DK>f!Z`FxLaro!uZSYW4+-)&a7fO` z)C`H>6Wx)SVQvyvhW40-#fV8$vGknA=am&;MSnYdinkt{rdzg}hovj;biVKOel}UE zm%w>iiIC$sv@StzEcaX)8G2VIQY82|-P!SCDjN8lE8^g|Dm(tde*bNo>a~;Ka^LVl*sW#R{nh|?Vz{vw zjODKxsVTKB=Yv7h}j~6#DB*Fgv zoC?%H8v$s9l_J;=_4Dr3?A@6n4=gf%S0SO1jP;ZR66nIvNS zt4sdpjT#a0{euoZ7yZubuCu6Jyf)B*8^WK5h`PG)<^=(aJbBF|AjU0W%u5$*fY>hK zbGqrAz60c?>?ivQ-bYzxRSM;n($Y;Ck^qfCXdXq$!!On5TGq&GQBmX<$;y>slCZ6H zVE?eSD5ic?8x`%{=-U>H-ClbQIvHrukZLsZNNLd+s&!!1epvBJfUDq$8d}C`*w=XM zP#NN6soZdy31wYYaMh@t;nryY2MTQ}~h#R6(#;aQn+Z(&C4X-OmBua(pF2neO5iP?V36nrnH=5630%P0;C zSS#5XDO<`nb36AG<0w1;uq8;ajr*40YBO}$)q;!1TGlRI7_noYxgMA6jk}-v6iK;1 zfFQbs(PJzu`kIJn3N(E%r(HAi#3{wCEtqtp(MM1ipzDrM9n}j>J69@U?NTs{wq+OT zXYony2xxjlewcxG)dd}|AGA%v+YT03gemlU>Z~j}7H2C2_zS(SxQ$&|?=A$hXUq@8 z*uuz*&IqL{1czGM1?Y8lvY zjHUi`o|8vs7x`nyilbbk%u`>#B$=utZ|&!CKzf0qFZZipd#}cGU8*|4q!48DG#hko z?`acn$wEldP|}h-kQTG3;dFzwS z`2IWo*#2pGM8e_+E0YT;Lxvilok`&b{-xI6?$QRYu^Gio{ zz6W=Hztpkt%z*_UAwx*b%}&z~@lM5c&z|e=14MJG==X>|^Gv1-$a<=S(_#SfDX;cqLrPN+yb$k>Kwfe5fYJ*xj2<;|t6c_Kn-SlcDzg@*)LAM0yfF{YeneJ^hRv zfrJ(JIwk)(`htQ^Nf@^MxQg3qCXD;5PFfQnPb_m-o**l%e!^kvlSj> z)X3VYc%=5p^e1Eg$`ywbF;dAaxwccS(IA1wG{>ovIBv{Cj|{3giWip6Ju9&rbHikJ zC*u0fEZj1M256QXxT8Hg4)=U$zf*KK$85H9osQlUcwKe4ImD?LQYDbwdzodN{!G|+ zGBk#i*j0(W913e1Us5?f$e5vY3IBJsHlM3`AXbihHM5ukr1SSU1hAs z82_U|DEtyFqa)3mKj>Jx5OBPr>+ocZ=!`K%rAD#k+YgdSs%Sz04AC zx;NNu4Yb(wv3OYDGzNdJ@~T~u4>hdS-mh!ibb4U!9#;Ll=jsXlu`&v#mZkMo`+H}< zh)2(HDmE5jZBO-%w?K{UVY?f)qxovFd${MQU}WgdYYp5=mNAnLMT&JV8YT+RZuh-$ zuT_>i&9w@Ieb1P#+EX;M6lK^Q#ptq1r=q0e<*ysP-XEsvqq!oAYeum&ZSK1ek2&Z4OdmS zww^IvEvZ!X5S3@EQ@}RV__ZK60Wyn(DIxN=0od15ECxOrZd8@vnX|rLNuMfQY0Y4V zuOSp!9YGw=0DjRh!)#EzR=31h%abvj(nkjIl)=7jRdh6qgMc~aUPm7x%hxTBU+*U) zci12&g+&FpOVGWbM|SbzT#eRVi;^a}O5>Lu+{ic%*OjdZ4akyqTk+ zpgBd#T6B79%0$a1ymTyxzhfTPmGBZKTvU7chO{Tu^D%NOs!*Cz74;i(yTkaZKV2Oy zJA3dcMTC!Si(nZ~GPgF4+8~bo0^kmI_x|vFoc7V+3F^qoyENpS{HAg{wK9f^wsrCe8n?wBc7KEb$F~yVxqk5dzaG)20xXro#WO*utv_8t^z1hF1r9*b9DrDSQIm zb&cX?!RVXeAR)qe>wxqeXm0Rxnia_L-$Xlk-@We1B<6J`3L=xV4dQ!v zxsb9Z;rKz~FV?4q(Z)ab8@5W9AqlMq`a+Avp{@9nCcg?P-fBQf`18?k=jwa0g)4z4 zib&2UqeBi+#?cnk}!Y49-r=`kS-g`4QYsA(NA4{_nU#%UbUi(d&+3< z7)U-&;8l{gl5O`B$$lbC+nM@u>^yaFu6rMs{oAs6OAysVS~EsOOyf$+J9P4VenSOf z+^My}=y7O#ym4s4ZWp$sX~eTicP(5z87hP(mv?Mp7$ZVsIM7_nb8Lfgy)hYGQ5>Z%^;N;P*2C;O736Um~S)AnWL`LQ10JwV8l9ZK5!KWEsBh8s4E4} zD+Iscw3oS+BPC}-m7c~BKb`n=V;%_(vHXY)k+QFD-Fwl%B3e3Ex$Nv=ji`k~NIen= zr;S&wr_B(k*w5%YZUuSjC2FQ7F{0JdiGmOKUmT3W zb*ogik{US=bG1=Hviub4NMVF}gXXa`Y}YWyfejXu-n%1eEi6Ac)iuP4@5 z`4?%`+eWdiz9&&fkUx~3&TtgwYwUt#?>OH)pbTWn8|8lTc+Mn8f6g;aU`tFPZ&#)L z*=QxqS`a0zk!a)aadsnzF3 ze*UZhGEdBA;su9KH_b_V7EuaqSl+gj{!i8}!|LcN6fGm#oYz zJ|lO13m0F3>t+1DM|F}MkMDRgo<0d|i&Wc6bE`E$0pj88`*k+%rh`pLEED#?SuUVr_uhT;>dCC*u}y3IvF9(_XSO(>z7DQfIczv^ZV!R0zM$az z(dbz;BcdJ{KNL>X3G58sEX3E}+ATnTM|uZ58J%=<=*`>yo)(p#U+r{<`d&VG`&M|D z=)jFG&uDh>!|ecI<5Gop)r7Jd)hj`h@lSg@WKXNrtze@+wBGYr^WI)zV|_?+(C1~b zP+1jiJV?a&6TiXrl#%J1Qzp5+o;bQhB%h>A;;wHBL4E=~wrOn($sD_{3I40J5NU!{ z919v4rfh^V-r%jnLY%?8f5aPWbz;E%nJc}`s1=~5AB~26t`O#E5jI2Ay%t(&ldW~s z;>?6!7FXl$dQ@87f}3!^sZl+_(q?A#^z2e5*zC#D1(!3~SIp+K_0vC9MnPB|+h5VU zHy3brS+j;~x~wf}WIzw@tLAU9%CmR2reRh41x7f_!JIvY@i^@DEcN3u%!XE8QF(BD zLXZ=lDeqag*NI=Uo`*oUJ~?X3oz2hXkjM@2N&8gn%3j@&QGJ()Gj0Xjb)(pSQ;;~s z*fuE&Q$9T#V#1wvyBk>_J$?*^n>Dx67Jwg^JFP?Az*RM|q(wt@iyu=~I!;uOMHuxe za}1w>sS4&7)Cqo4*!$z;SP!gOvs=E7jd}4i8#l;gR96mpv3b2M zIrly9e*9sE;1YasyU`d;P;kpnj#K>et|^m(hl{+!Ta8eCM9zBGJ$6ag4*ew14ACB zn+*eSGvK74FKhS&Lr`j^$3OG3a)=cSzRi!_z9z;;8gH<}TZiX({RQUEZX;)}huvl& zf%D;)f;wrL+t;w-Xkm6mIP=7I-)m+*FW`gFy87xK#g$rvsA7nuq9K;L`THKx_R9Kf z^wrH8K{-9QCFa`G{=(9%?M89dxVK(Z+NNnTq@23f7^_u(A{w@G1v{Qrwli!lUDl<4 zb3u2y1Qgl#NPd%}o-eJ&8{2_Jmku(6osxMK2+PSiRK?Vdk2Um-M!&f^2xnCg;X9AV z>LE$YXF+byN6~M{fX)&K*$BVqd#B}(3B$pWXL2jIY*rv?+O@Kw)w&%K zQgdQK4YNV`JQmBH+WNfE2z=VMoVdano8o3i)&n|^!HMWP1>!8@gy8f&qJ-Tgh>eW+ z^{mLDdzYROIm6aBTI;sodBDlz?>Nq4mfE{8rKX6&%6?DR1w-ppZH;w-(Z!1+?` zLXisT$s&bqh$F}W%4)@>z}1M#l4?G2p>e8lzEz8>NnKaflIMNuPDoJ2Or6~K3l#q{ z&NMB1$?s>^Wt=cJ+vcDO$uPYHU^lP~2^7S7&j#SD)8jC0l$*N)IqH++0x|Pv8KSTC ziywxGo{>t~+P>D^FRGOsohU*#G&ZIeeG60JQ~Lb#tkG~Q2sRX!1;&W^GkX%N(DQp| z>_Gc6xR$rWkk-0+g||1y@EvH;SfxUx^ZLvk8WgH@kKZ?ci+P_J7!vU&trya8?v-W7 z{5b{b4Fq`6&Pkx3IC>SOVGwe^V98YgR>n6>FhH1*k*o(;<8GnXrs_bm#8XcykH4BElU?hPKbd?#P!fap%qZT^WWyc{%VdZBEV_mqF zc`qNF6ta&r4Ecu^!OR|<@!6Wf)G)aP1lQlO+4oIbFvZzvycL{c_BeW{J%d`r3H7DX z<-Ufa^UTRz4+=x&s(ehzQTgs3B$#mPAN_a<0Jyhl_5F8fD^LZKjcWGhg)sDNPjx4_ zLEy(ayjlE07Cv=03PLIZ)%@TR#?K2YC-8?GL}nx_GY%V06o6+ul_fR0CIxB8=X+ZD zlH=+COZ2iPtt30j+>yO^SGCSq>P?1;IiBtC!vpR30K>=MW3q<{^R=bX%Uvf(yqaDV z6f5S>Y?RCIUYzI^b@ zL6idpzag6z(%<_BI&FhRWmJcjbv3Crofjyuk#oBM83yg#(m6zH>ATZA5*A6`^_Ci0E^Yaq6<183UB+mA)7hUyv{EoS#%ue)Vq*o?kiBR~>I41oXo_VR_|e)I^Hf z#1-Fg3&MGX*R%>RMRnta+Rvz+6b?2_v2xMAZV1h4_m~zvrPoj2@2D;fNz#4v)W!1k zJn2-Kz&jOQ3sbXkoTpWAf1}5Kss1nBe7#<}lL!}l<9R8=K0&s=6j%6C&|SBpv}%Hz zf^hqtS0tSi{^SRyPzJe~1y|K>jqlL3&Pzd^oIuQ9-=6IKhk&y6%QD&D=aQGO zL~vJEXH$79f)l9;mq~?N8XmI!@RJR|{xRC+)=4A^%X1hQ+G>4qNBh9GGt*_h5*be5 z`FKhjf+B6qC+Yb7yZZHLH+f!L9`B^wkR-&4Fv+om~O@L69SSG|FGv^n~~oyg)VM%KNquY(P{ zeVVZN91W!Y+Kv?%|FxYlsqnXTiy?NbU6q+@fr-?jVW}iLk}wn`yY$JY&HgS?%hF25 zdHsl+(xOAwPeox4)0vJ#5F9Lg@Jyy2esv4hI-a5$OUtJww^}A$9lMluurJ~FfKdJ3 zL`FgUD^&b8`63-opqb1@FLsNDjqzoY`_OFMq;39}W5cys^W$;(JC|>;wqz_P4r)X% zlWf3hM47_si>U#9p-&aDYM}T}(cJX?Uuz}#dn96P4sxptd*4PCEI9p`BUu>xfx{+N$g>+>4HjFVH`uX!{ zclI*be8vXbLA=$xec*c~{)X)|*_`aYtTlTxB4?Ymx5m z%O$$8T=-caWb2bYf`q@SLKiN-qcSL6(G0UF!?74PhVE{3kskBl6F1t|G8(q`Elr_{V>53ZpJ|imnzF~As@nN@4c)qO zOa~l+<1q>Te%t*(B8{j#B!2i6O0WR*`t$1q-kZ!yqtFMt5Nrm=Aw2uZ1`CIc55l{e z#Nb2I+Ig)g3=q(ZrcalGbsG|!qiAnHIfwAxtm zYmpB{irJ_OPW|bOF*;Si{szrCj4(yi!dCxYS~(kGEs44iMyTOsgM>ZS3t5|a!LS+f z2sgp!A&QW=#fdMY_AlM*4o%#GYZQ?Ao@E~Typ}-0=l0C}h)`w4l@PPNXE2q~x$>N< zIUo`rjvLY+YCL-#bQM;Q2+8dSz1~s})8At!p@VmS?q5l7r_6fV**ic%HHwm?X(v4h zmK~rkJ?mDdLDy(Udo3GEC79xD75bw1Je|`j2#jLES+v#wylu6Sz6NRC z&2&?)wNUa9PAvN&6=Q(h*S}GxK^2*xp3Td<$w>N!qVU(+DS}6ia?~{tkxD(uH&CUMO2u5VydW`L{{Yba7JdK8G5Gbne{BR9+G1cQ zwBL(2FNOK)Z{kTi|8#9&G<`94miUNO9JfJ2uGbenlE_ogHFcjoA!T1f|IJKIp%LHqjRdRFIPZUgL@*=1pZZjam zI^JDW5hmbjc$>1AD1DChf!8Y`>!`$l1+$wBo6N}@P%g}O9R`8RU${MoJX&W5eKt)^ z7A)}8{Oo|B?m^r*lcv(50G>a;>fna5uv6nbr6guxli7+Gm|NP|5Ujmy^L1pbmn~8e z@ z3_*#H!It&cF42{VSPoiRH__I#hajh;H3+LQx9(9D@D74T@7{Dv6lf8)SvBF$Saf{h zjccPld$bLkm`hH(-#1+ARy|W-F4@^Xk&(X_p==%47KrhK_9z|Ka&~?LFva{~{HM-}1LA6;)k(7mHYEW#@&8q$x7yo)seUSG_UG99r#++_hd7=u!9COz~ zRBB?b`EyW;1Lvg3W9^A?=SZGH5Bf5Ef>G{gNj^!r2!-L}*|4pAPRy(=&)7IROdnlc`X(VOAid(2(u zD3Ijk*#51)?Imx|JK5T(c*s^`tscSss5@+;FA+O4s8D4CAMIRRp;_<>VX^ayX0lhhJBLvpS1@!22`{8AD%Tm$!|G6Lz!20= zy_df+eiOzHdZJ<|N3c3#h2F?Phd_1JV9*yqu4)$Z%mJi0g%{widUr^%$=v0 zY<5g8C}*@!7%K}eYje}2p4Ii6-_aDJ(9B>U?Kj`ue>3b3iL zf6Hq*uNn3cKg!{gYdd=Onz4zQDu0@)qW>{aAEQy`^6=K+r;p&K){i(I2epRAsQ;WoRwfxh*!*@t@ZRDlzZkIG z_q9ohOWt}{fGe^>Zja(pAivz>NRTWtpu4!x=A-8F+Z4|xf4_jv%N?N0wC?!Z?_DK9 z*{30^#7Xq-YH)$Q2im|W=QaPF`Y5n1o8TE@Lqz!V!&uSuv?V3MKSDq8_o0LW?~DI1 zctDD?j)j2PgtcsVXvd-`==zn?xbx@2)`e4#pfr0qQ{W$%PNiEs6MQX>=1xUBv-P>+ zqwi`a9Dm)nSn@Rhmvn1hy7PzS^Ik0W#`e1|3gML2>o?4&@5d&HV2zIlKSh2!H0NOb zb(Uwd=;ciC-e7F(uNC=6%U=AUOAh$L(jVoczt_3@%Oy^LLvmY0EiVqK`^%sH_LiC% zC^&WXj4EaQ2?hDjIl2c(BIBIp=lqG#^Pf-QoexOFJ!F0%nDEE({g00W=I|jrDa&N| z&#(KBzyH_FE`0^CQuBp&97+E<|NivJ^XEMSqQCzc`k!|FpP~P2&irpi|JTa;pX>N9 zPx3$4@t+&U|6IraT*p7Rk^k}<7n9_FuH%2M`zJv+NonJF;8#mZTX3+*$T`Ur3SD;! z1$QSSKG-P#L5Lmb2D^oIK+H~QNveI@`B0#k$EnnA*7;lhggxVzNf*kl3O8YwI6d|G zpkv?D*3^LA7Q6Z-bA+cNlv`hxrO@9WA`V6%ncIMMmXzw z?mMsfv8VxJk;Bf<-21+3su$uuAhFIhg(1X*u@~_Vu_eNRECsYm-08c_K3`Fg+AqP^- zce@^6MqM*gQ5G@DZpGs{4x(mvw0xVIyD+8C1jlA(P&2T`;;vG zQ!^g#ta7oX{+w&a)gnlaJNuX#QHFGHE$E{jzEhU_&%EF~be@>OBFM$Iz@0hx{Kkg? z_JNdTF+k*EqFQxzp5J&Kx)ILJPD|S zp5n6T)$qW_qc@ks%f;ZuK3(FfegZ`*gO77EjLN-u^;3c%g(6tn>Jzn=`Y7{o;M zZeGDzdT`j@m4w@G%0WaZm1nyluQ0yu^3)tQ&lDBGlA=7m7Jo_^7p@$(6rAw#f*PfZ zt}Ub&wR(Ww4-#!jTEfjmyx^NCj^SO) z0-G*dp6KD?c*atFg|li`_9fhoIWL@cS)3=-$A_b?I449gyr7m00k27X@Ma*n=$#{+_Jmxq#WQoQGW_60CsU6yG$v97z^ z&CbnzY>~#Ls>#r!?1h0IyxML;#-;W^m6P(A)c{jD= z`}HC7)kUd&o2swe?vBMdoFx!GI7Gz8Qtc?o;oUoLF-^|~c!5lAhGxWAP_|@ACsjUH z6C>Nader?C{$VFic&qql+yOLXM z?9ru{jb9~CyiY5-wgCk%5u@B}VHJz(>kQ^&V3fdKVM5*8!TE-LNB+yMeURDr4Yiq> z>p3|0r0)WT7SjS$1HKYx`AO4!6~Pja@cAa_)e}pP0m<5%Th0qvM4C zny4Q?A@1+(4HSzBV$?NV8!GGpHLdWu59A(u+l#*VQJhB7y?ZH=8SiXeA3aJ*PNv?? z)zOJwRqEY73{Qxb5y8nn|yfEF>l(~CJy zA5BVC^i%wRjZf%>do>)|KMH&La*a~scB>o3W()BjwgsQ&lcSrad{2KeGjly9*&)eD zqg6-{coxie!eN)Sw*zlaAXrA=k*%%$f9zfLU)1aJmlc!{X;6@olJ0Jik`AR8q`Mo5 zB}AmVOG-kP?i8iFJEU1UrN5u$+~c|Te$V+2?l1dd6+SV~%seyic|SApx{=)6R#Djk zHO9Tptj@c0oSfdfdpF9$z=b0i0A~_KB~y!R7}>&kg#TW1`Jq?QP&VY1v&a5otNoQ- zN4F~aYpDQW-#D=vNE19fq=$Ap3MQ)gRK79Oytb^DiM0O~{U-bS%ck6iFr&}s*W^gXEREeAH0R3HfO@KE24}fYSO~!;@bHRjYb984KIuW00?&gW!8F{4$ zS>`}9Rav4=+(|o;O?O@1Eq>C2njS>E-BDQUZ4U4^*e1?p@WvXn^btZX*UE7bAIKw8 zLG)_Hy>5%)-WR0ARj}wF>;w)w-v?B((WM3*lm(q$^c}?0J=aQgMm<_67Jlt!SMP`Y z57G;Yi=DCGzCik?J{^t78=PG&?c57>I^S!X;NqFv`@_5hDYrK9x?XN9?*f$JaPQy%;AD@FP%_*Rhm|tQ%Ia85xoZ<*CqDg1AG)}!-bn(OasVX@V&tq1%v&J** zVWdWq_ule)v$33+z#*@2daNHyq%kmcHk)=uQF-u@8vfIG-iRlV zS740(fu88i5&D&wXoaYhl$7rrEJ!kTdAFWk*Jx$tW4bv_k8gSvc>-i$uXo4q95KT?-|%=;o@bwQfc3RtX_AMdLzOUx5D_+w_)MlDp!(Q(o8>X~$$I?51J$KU2f+ou^higB7 zdwD+jgJ4rzKkp+EZL*w=gCYq%MHb;3b*o#ies~a61&jQJ{6&x(qQj$^D(+) zxv*orzlqI&s3(eEQAdZ^)#dWCc^EBx{Va$2ENLSJZ2%)QLrXDYA^!6)lT8}*Le z@~NPCjOBENbW(Ei<#3?g+tX)R6MlOmuvU3p)aUStc!TM1rOXp@qKJ?H1&HUknEG!6 zt#%F*SPfRT3X3BmDI`yG5-JAxRsC>spRtP117*?end)ZdYhL}cUBR{qsP|246Yfj! zKco<3ntHu8D8j>2CU~pt*?it-W6VzLDR~dV0q7%nr~-+cWD7H-_K5CQhQiS1W3`Y$NN)Kvz{YI_QRze#CsbU!!*lG{y<-jzg>Ni!j{={ zv?jx^*P6N_xvBPL+8paIY5PB$d3qe$OGfZ0-^T?(d>T$pX9THsb|y=kZ`C2M+<8m#$XUqMpMfpBfa3@=I$7?^3>Z2F$m|q*@I08SF;v_I^ng><7g3W z?q`?zUsZv72%$1)R+zpraOgSWgHDPbsPfw``V3+W0sig4aG+a&-(@#OcflilJIG<4 z_1do~{|n1)4Uj7woBb>+`kpuPw<~X0+A>RI!w`w#e5C??NJ@gy)&jY|+TFt(O)mDJ zBU+ID2p(GQ)|%vOhaI_>2&vRikRf% z;N-Ig`uP_BcWob}R~u?y>iJfeuY_f=c<<7DKM6J|eU7t5lzhXT*0A!snbm)+HgKHE z^|mejJ5jT=P8Z%Id@3Z+bjriC{%0=$SnG4=F9w9(jrOarC8WJE~5`B2Cm6D&v4Xa?Cg{TrpkpB02d^i$|la$ zbdWnbHuhtg^(4U{-1{uxWIzx{!T9hW?8F(RH@$h0PIBAj=jKUCrkK$#XZj$l^#`y7 z7Xm=0NGmBD$-OX3Sy@?m;2PrL+1B1bFfM%SDv;O(@3Zy`pd9-y{2UDw`GnS6Sdg^I z;~c;>a@0xZ=eSXq;{5`A*7n@=2m;tc z>&pZqwBbsbmY)73DfURJgSK8k^`|<&BJ`o~2AOHH_h(_}!-gum_G8pU7O#d0%j`2UTezxaN6Q~aP((S3 zh^g$ab>h?iy@vVtppJ5Ly@7q*TLQBJF55KG{`(TRJaXQzWwO*@r9#ETtrJVWVB+k4 z82U|bYH^!`F&o^FgitV37I8Sn$RfHy6TQ&7SKcKltCgX<;n^DOCa!%F7d(ja>7Gd; zPgtLar8v(w6cl{oVT<~MrS<>xiA_| zR=xl{kM4%JOCZ7o&Yd;?Oqsb$+z-2_JVWYHKqP=yFKTnh~o2dPxI25+CHEkC50Y)V!oiGiwYKYS9*qlJe_$7BfM$EcoPi|sicyCbVfQWM-Ne1 z7aoTXmYzC*wcL-DB)hYNa2kv$JVA(IDSTALOAQ>@7dO1=!fq8cQcX5x`0rN@@c|PEGZ*|jwv?X zBI2c-P$VRz!^rU7)2M(76nq|7$jFb>wbl{+9VG{P`hl~U!0&&riV>`!qcuhWV2tDG zFu9B7LiqsShz$NPwfbU(20MVCe7DHI4{S8hv!tM7;0hvTfD%Ymv8+-=e7;MOO55jG zD&6u@`D9*y3T}kIGSUNJyU$B`AGMDC6>mUkD2<-{{@(`5$l2LGcpXP4t;=D85|0U& zHqWbKwmtZ`>4b%K<-?aDqN)Ao<+~eQo3k#{005du1NexwR26rBfYXE_^lP8Wz1&?{ zHb@Hxom41fslLI7igo9B6Hoc=+qJI`==0vbWlCCO#L54Ayn}2Gsi2_XF%AWR$EKu` zQe=wrbUwH&f=e1CNzD7EJ>==~S4Uz_-WN7++zCtI*!{f|lmrMu+!6o>-=j`M5PK1m|#)I2}IV;vFt} z>dxXMo;^zix4}-_1lPH1vtH1Y5y!wsGaZY!jNE>_P{wk@5+QR!TpQ5k5i1g$mkDk+ zS6!PdC81z%R29)207*Wxs{w$gvls=*o?jc^0?<0#x?k!4t;u0ZX#u5=0d#EE3D-># zGqa!?6~2<}FdzQ1gUo0e4~vLO94FjWv<9Q+Kp;XEApl1eOk}!{vx`Iqrwbdoia+~K z-D^mq;%_9P(qi4gg^ne(uPw%c*(3jT|U zkkIgD4`PD;$(o$+@?2U8V-K@mfF;u)A*DUg+*cMbyL_RzWOt0%NUCV*y#33Rw2+D) zE?`VRz}VlU$dR)neU^9f&ms38c47sR#z_$OHs#jcs@rBIHZm}h2tNdOQ#1a96@3u# zG&qWNci>y|5QT`e9JMLt4~=Y_{Q&ZVAH+M8J^I8BvGK>*aL!j073R@xMAX>5Zs6PP z9m0ANxbXvQE?~c<%F2gvPi70X2Ixmm%r~WS|0}YvgkVr4eEa)G0Z8TVU5=R-6 zPr<>0VH0kD1wl<25rgv%=#Oo|hKWdWPy^GBPqo+mozm?m5d8 z1E(<%xE6?D!>dFfI`QWb-$3OJ6;=fkc?XTS^3(pPH4d%BcE8@Gb&rx}<+*o@{F6x% zA#|{&72nDU8Ah#G_<&^GkzE_Tpeon>vf*h%uYpQ|A)qB}=i9^Fh@TMwuhm@?Ymnu9 zQn&RO{YR7#D9t-WlV2t9X!r@zKNR3PIS>rC&A=BcCl{aN%cPTCA#E7^s`mEw`poKi z7h{)*4?EHzG4Pl93Acp?TB_#}QJ~fgRns>8n;bUReZ8kVwtBBm10AV(GI6A5rD?g2Pxy@;Kb`s;JJINcM6!|$BvXhgh}Ao(abNzU z)gMz=%hK_6-bF8U`pNdr9KE;yL`v>+x(gbr2x05@gvL{g5< znU`pW!@2i~%^cUf5Wzeu4cznnjsHFl^f72aq6r~}9n|T2JAUHhM+qSjEEs7@bKanA zPTR#fR>i;TW8n%Y#7D_c0p#pVA3TqWc;oP=eVr)a24$+R6B*dc2M&>R*V)8>dk?a~ zMxP0o7Z^(KtjjKWh5Kar^E%(N{^k*hSOdb&*VUdTnB@hu~RG>KLnsHhr zFg_m}7uTI3>ZdO!Ux$lr8>rjU*LO1boE<`%MN%X6w|zK)QbU56zLl|QojS?e;8^;c zVLUwiZn&LP(0cd8G0uO`+E?Z?14Io01243J^sx=u&{sr^g=a`cSR&-fE)}ntiWC_Q zjpPS(B7BG7qDmwi>zQ_zr>wz|f7@OcGKvqcA?Y>la`TM8jf;<$5fv3J>XMGv2ek!u zcnMBg)p>EX=cyBz0=-QQBZ1IL!?A4B{1lakaa_grC2tmW_DNt)!|d`G0(8dc;kq`C zf7o)KgZlcgkG`N-=e822v_v(5z>=cYr4W?O87)m9j@V>cG}_*C+@s%-B(p#QNl^1~ zo$l60mN9J7FP@O%aA96_bmMH!7{Gt`&qWgXfX3jZ_l09j9y1HFKECl|Me*Ln6CLL9 zlb1W5nNMi3S$EyRA1nq1fxJ0cr2J;ibg-G=BC1L)wb%xaKKXdBml|co5?gY@g2@|d z^CprA@KbVRm;$ewJ6M_1NS!~`8e(6ND+&#!j!m`c6Z_%_*hbo2ngghYk5qXXB>iYVlb$mVllSg~`4JOqO7>c5OGzt+E zEe!WFntK@6Mo%DlK+~W$|(7PqB|4VS+zVeN_P67t|ea@zc=&?hCmA8Y*OZ z&*tMH=pq%x+JWhwadaAF=fr=LPIg3qwz+Bq^0r5LDS!DlC<>AWJg0Lu2eqyyd)=F#742nzQ(q+Pe0+z`Un;Ti#a!n0i2FB0=gqV9Y(g>i2)fh+vX<@=?wK( zmHuPmqQGw{A{ZDpfN{dyXi0&tE35`NdM}}^C>JHu3Ao!2uxAYQj!Y8i--)`hIPds>PfX3F>qY0xuc53lKNR)_pbA2Fi z7!Vn}-Vc4x9UW1`8G4~JpS7?#C(%n%>Rc_fdXNdUpegQhqvBQr*Di}@*#tNWG@G)nK!SpY>PGrb339A~IYN5i9M zohOS4rOGTzJ_tthnns3ib9FGB5nfLCpSYJ4e*kA%v`IK`s7gQ+p1IYsaG$N-Rlh%o z1Cgy1yg^tHeojLS)*#WLajWl-4jycQp3+kaiS42K(`}-$`4-y^(_hU>9{jte!ZDl{ zweIV2RGvtOhlhfk;AVPjk$%xMww(9+*Xu?w7mbN;U(p*i%t{%Dhbis*8oG4|OZM$s z5Z}U#7CSyXdRDVmHDg_;4=^+1EY4VG$}<~b+7ox%wDHt;6Mi~xGK3X4kiFKlYE_W<456nLnS1hF)F9UloQVVKZTl){@)Yw0=cl<{m*CCCv<-?x<{^ z?f@awLUVJC#d6OQZ~m$k{i0N~x?kqDDt@sy%4~|e!;o&C1D`RHL5kQ*-T3s%00oyZ z+K6;+0s}pxn*leW-gF3YX4JkmEX^(V3BQVs1imr3SbE+2Wdb3Z^YeKU*DaL*L-`sX z55dVsrrw`#TDAv?a>8X=1O&bmt+-S#cwK^_R1ts|ZGhtneZix&bS%&U^IWS^G>#`r z_KlM&NuT>bb6&6k(oAG#!Te^Xw ze61MdUq@f>cF;wgjKlfhlaBMg3!5>qMiXjyKgEbDkO!xf=DCn|}rm}bP8Cq_wl+U*Zt4NUWnZeq#gQJdL4f-lCghRRnsn_&+ zLA#h>-K#4T19^pSqqvJ5ra$|GZ|Zv+KOP3o`kc2OuJ)wMX?Ml^aYzQf1w;&iV(G*2 z?5sz;q5b_EUc*ZFx=kO|KA>+r>QccK)UacqhSZ`FkkB&r%O(9%_GHQ9 z$(5ztQt}BLb6=58_7lDuQpnDPsF%D-Woe{t&@f1g1GM)6na+KZ}~-5Qsq~4 z7w1B)!&I5m)S&LgUk9Er16w{{N=nIGdv8ghpdEkECJV#vg!gPP{M;fe4oZ*4Q!DEF z-anMLg2td;viQqbvME>8o4~?qc0!8GP3c|c`x}RJX}uuaF;b9l)3u4RmevgE8xzM= zKKF0(JBwC+4`OcoX-U~GR7ZG8k$$DugiorDasOF7yxyg_<~CQ|E@_ID*xf~h!vYgb z;L*8vr+Gmw1M#!u{4RCP$?8$$8KS7(rM!ovF3h@3Tu)b3sQ=n`lTiJ0ZEbJVw1he2 zJVeUj(Fi5#Mkk7db#xhmZsg2>jjX;nZmKBATJfcfV$)X@?v!-Vx!3u{wt_r4@{+Tm zOYXL_j;uzbk+{wCIa_%|#79|+r&z}fO6gc(g9(3Bh|kaww7Ky$;`{N4AT7E_Zu571u!W}GT&7C5 zS1VR@yEG7D+L6#JboC(cLVj|k@ABI zzUTXExpMXcjoKJtK9p|awe_0&v81Xton8n!tX?!_^<&jkpf(*r#$L-Vw!p18CZf03C$U zlRoH=VJCM>VMbB1IDgKk`R&%+_9ZxKW;T1(W^4i=OT_aSS0ft6&sR(p?)6>BM_5KF z-1|Wh5eXuE$2^X%8i6p~EP8R4qy4=`;ltw*PlMye7n|2yYhF(^Z%}GipMB_*=X2gt zQ`B&~78TX<&bzVMDH^r0GOmb#wIh@MmBq!oL!6NDN*H;cH!|z3P*Nuex%|L~}HsxVJ*T z$vuZu|KOQH5s`}G`0?CFfSeFv2_CcaD@ zDo}{o56R$ZHmpFr6}o4w_l?&i{l|&kZD%w%+C%WykgzZ{a{~}vWE)7n$;kBL6nhx2 z>pf#tJtnzh44|NO@aT`|iSt>wkNh%A?o=r~C!dF=cSTDhYkGS6_CxSRmWj?pV!AHb zuC{8&Glz<2Z27{HWIJ`9+j1cQ6=FW(1g0B-;r#xEoLp!SEyoWTpnwqB-hKlsl<1p( z3oymtu}Td=EIiiySD?!#opBiSlDI{$c3z;Ct#!^m&uB6O8vnf$_WW@(70x4BJD?!_ z5VHRQ4d*y%PL*-h))Vh6v!b}HsStum8k5WH!LKaZBAh>qJ z9}IvMY?3ViBhJ(`;<~c(a4C@g1m_co;ne{%u* z%;h@P1t8?C1?n3_cTR6b; z+YRwV|IpMoU?Hh6zC$VAi!T&LK4Bp(@NM{*67$gmqqYyBndg)9vlY_J=rsG&C9E^{ zp@M3G$L^(hT(*z?%IyM>3e?tmsMj$r_QsE}2fH;rKbyx2IbF$O7k{A6aKnXHM!u6{ zqADY&eD$W0{1JKC!q7e{9mcB=2R>K<4#IZhLe7r}6zsD%u^JT;O5BX+0!L?k5YOEA zGXv%0W@r6%%=>YjFM#V1Bbqx^%n^XE;)}eO#HVT zon2X1H$7r}vpL-5A?5lvJo>m|X(( z7STscwe%fFAp$2{SRSalV(_%Xdof`aw#;Z%ch@<2M~B)pU|Gb0N6ZFCxpy^7ue2Je zDG@*#)DaOx-!zORTyQ9D`>qPy+(nJWpMP@5(l_Z(VKR^imw#m!0~dMct;wFy;&MU1 z|E;jeC}WTK?p%8#fu${i0beGKkJU%U9xfRA5>@iHarxA)=dIT5Uh;PGs$85=kR2J) zGi79QL}ldEdkD$q21MLR=(}=p9A^y!PoMw%{Isu@ov<(Ud=8^6WG(HY@o=NRc0e$% zv{cFK?5E7(tiwPsntG=zyK(dUxm|y?+E>kZI}O~wkgEuO$i?1up8C1$2RyGY^SNb@6VA(aJ^sK z(C(&cNY`=MzKQL%6-5CGW3jP#iTILUz-B~7zCVAt*Mp-V5L-zWpe}nO8}Isyt^t{B zAAUOdMz6K-8GupM9qSXtryJMBh*cNsto{sUj#|n??|BEyM@2yVB;A5UD{wwKayWa$ zY}hdC*PpT96cgLubP1%=xY6XEf1FeX9RG9rlH;@-?8!GzD;Fl$kDt#mA3q*i3+X0j zhp#3tWbz66Zr#h|Ia;!YrF~?X>xKwj7FlrMt!!IgzktDq6wmQz;~2q%rFr?tuQUMCtWZp#_W_z6O>Uy4 zL@)KGD(m|0jP*>cH1Epq*TFP3flyh<6X19&GZ(%2P?Rs-e0C#cBI`HYYGrxVV_A!z(VzCZi=`r;&7VI$Ps^U~Nz z{G)6VoJ92k1aTE$8W6bDa=S=0$*$#1lMW}63p)Qk=Q4i|lSL(G1_eArV*lW>Sf8(CG&B}y8H#$44a$8x4h$L2kn zAhohZQu07D*U47>c=0v5%fRZ-MWx>j^B3t$enQf)Z5;gq1>cu@#mqm8NvPGLoWy1l zu7zLnC00o&c69uY_E~kk$^5I1?rUhf(GCU)Gj6Q@R!0)2#cQyKL7N|80t>rk^PDBh zdas~Xam|%-em;t4v)1HR7vPb_=@yHH(MbfP0HPA(%<+dxilz7)#vz||1^HCAWr!0D ze3c=^yU7J21+e9PRwU+WExpz5*c{T``Lm1%)FCKZ6P;KThD*M%Y^`eRcfn-vPO1@+ zEj~Bbs}=9s4131E+HX&mmKdE>mo=aDz{a-@xh(&T`GHxMG%QO69w+s%5XBv~G8I4U zrkr#3wEJAD*M@L@)S&{|FH`))@03kqZJYzWz>I<`&HK1jfjtVvVc1`a3T{jq8x8Cx zFA56_jczI@D6Lf;L{Z_F7b!;KbK0WBp^=Zc|L}2VF~-Xdd{uRW^;GZqS{I?q?ef`@ zIGCT5ryCUzcYuk*zFGHXkhk3^Q5ZroW@HG6J%Z$C-e_tPRv{n4!37PhFZub>y`M`Q z)|sa2ZFDEu6w(Dwj?tN+o||JOND+7Q2=79x3}VDMFB{1G)Ug`5%zO?zbxn(Z8~IT* zoJsaV8^NI3Y~8Voh+W_njZ^F^UYUL!+dzR!Po^#Zd)prwg16#zKdUI*-8l|Qq;2#Ep?2Dn+sY;+9)5Ejq4q>Z}A;+ ze--^7Hd54SS6faYah2TWIC-RhtOIx@+V-U>tOo9q9I0?JKIAQucE%{cl`y=$xz408 zKDmGJ(@Z6Aw%U1TTJY=JZ^?fxQY~K1X5L&*{!pJao^k&M2IoSxe9 zL8=HA0q&h`5>8TPH(UWHHe+&V-(=i1?fgGgySkO#eI5+amQL_K!0* z7TgW@akM$6$JD^&DtWSDHK0C#mG~0ZHeE>#Z0EMINNZswS02l0J(c|OI8))zcMw@Y z410F*sXu9u=2iU}wXrM<0z0*T3k48);wJi(Dr~-3g0`JZdx^$Dc`3BP0EbJYgI`vU zu&Iz8B_Qcg?=U;aeup#N@WGrmG0PT^-7zD$v`srrc)jlK?ru1&q#TDCRRgK_d#RoQ z0SZM+pw5jugSF>#Lt6N~2pA=Hd3{at z#7j#Z!en1)K&K==BI--B(dH!I4c^qwpq8IGG6SPhQ@4e&Zs~Gh`-1?sci(=cR7Agq z`y5#$pjJV5dAbv=Q!j+96qEQ>W@7dl*pWz(|AP%Sg_&ReUF?2TD^Ka3-j~y zBQ2ok*)ef!L*-E7O<-K^6UMna7rdUAq^i;5euME1cRB&BsD`7K_3@X2BFk!L zC1747+2A~gK-V$TzxG`p;nC{F#ej>&-l>uh=$sM|q7ZQ?$Xup;u1eKJZUZ(##cebJ zcMNadywBUWqX3HiE9oM8^NlOt(3tkE6Y%(*x}sKJnY#5v{+>nEDbn)5doy*Wv)rA0 zM`!Q7;ax^#s?(AXc#?G5I_^U4Hu2hf$|9a}s%M55fAAoLSKlbjrV_rDK6w0WF*y{_ zO&<|3N)6F?anr?XfLf7^(5|V4Q+;XEU)VqR1aVpep!hmJU~2!VR;;aIUUcoS&@_-B zqyu1iD}VkqDnS3#m}TQ^($e#5KJ63xi|Yl60QF3S43ga+a6&rynOGYBp(yf??ei-t zBD#C?^?=q~?3Nr+kyK@}XDtpgIM61h4!_RCH?JNHMO4E^7UVa~-o z40YbxMk(Lgic5vX{yTAF3DGxWUO3BBIUZtqIv{yBJrgntI+$>}^~fJdDRU`csJFSG z-8+4>mDIpT8h9mkmjq2nX{-iy$6Hgs#f5L%!>8?f z<2G;g2y|(}N6$N9*|^$?DURSZl;t{lSkuS!`t2TB;>O6U>fA{nLwjEqfe$#Bk0CzE zX(d1q1m5A)XHu_oq=n78=Ksb0*vFl$T6@{YI>;RFrkzI|ez{71S0)#k2DMw`)6Wdc z?_m?xf`#gH%hgD*P2@6m*OEOpT=!#zkeqk58BGF`FJ|)yhvC};@$<#Fixb`5iN{lA zMi0w3ojb9zhPC0ve~SYUbl`z=qzwTt)(IYkAPD)Dbc=XT|3QkNXx`zcA79TMV=kn% z0JQ*~7|@MQ6hvo;Niq>7e$i2{nEf3(ri);Ze%h^X75XexcP%#Xy9N&OW0G1h+EEhr zSucCP9{yYrF#;-36?~7&;}Letwg&m$2!*a1ESTYdtbj7eU>xS<2)=r`v0RV@7qcwC zANBSKpnt%z8U_5j$B)EGV0qUtIy&lFspZ$W)xZ|<7eS^)p`{ba>*;o(yNPMJF3BAO z2H6$uyJ6PakddPRmj%;-l-#f->XQS)X5e&WRK7}{VL8$r*J~ve9!?l;M394b%H9f{ z1TeqP?54*F!ups2l;^MnOwXrR(yz9c(3~=I!xb*y?@^!9Cf{jb6LQTI&g|i1p=3OM zu2R)71?s!!{3CkErcv}>kh;Fvst$R}aH{Vf5Dg?^_!JkQ(PwEq3B_iG`W%HX$a|59;EB;&qAB8+i)=c#g&TfE3^hERzXF`x?*218UX zJ`2|_CzY|BoXJx`ch#+zcQk(7k1YTUe4WP-q6M8YMfLw={hLt1i}^8qPc3MUit8rr zPYL-GlrZtMy07ff^z0^XN2X;@VVZvO2-T`d=1$-wC)$Un*-DsCxE#M6Zz#dWMqAvO z1=rsQ1z~l<)6B!A7r3%SArp)JfI5GFqQcUcM*+7?Is_NBmJKB@1Pwk9--&hef{TCa z!)n{$bD}le`h@!j4-w!id_?*Yw?)5h=|HzYJ;RT|dKyxe*KtyWy!tgYM#Oh1kUo~} zL~8>V#gQY3oGHaEGm^&~*kNAnd|Wm2h-c7X)fQ%H%>ACi;`Ki5^n)>cC)uH3vHQHf zo)+8X1W?(tJT=Ag|5y~@cC2WVP*ARL-slr(UchUo@D!MSSpJK@vX`MKIdBi^*^2pmxao+G>Eo!SKm!Z9Et zTqy+wH)gx+frT`r;Abjcf%Q5UTa{H*mPars9)_pDq9Jg-0saU6VTC+;`z2W(cRnvv zwPVjZuEkRL1|58Nz;Z>TMYCDMBE)u;|6yQG&ZoA(a5I*Vj8^BhU)SYR`MUN;|tabS_zaRwhY9e|clTg=M$c4#3{=(f2h-Imbv)MC9Hxxo`F|lA+Rv39`&d zwH86{r$W#Prz&NLAiWp9Es8Bii}AJoz3CHE=p{?Iy|MJw0dGo&z~vJ`1!;*rYEpX_ zh;iPRzVn7BD4c*rf1TvkK?@rAn0WXt_T6L>Bw7~Nl8H|n`mY*_tMMoaQ|U|ry+pkL zDj*K@Z;LjvRa|q3t$^g`Igrlv$}N9^yZTOcNT%3TQ;1e+)_9SIN|ec52Jdf4I3k4{ zr1CDcZ8*op!Pf$dfMuLnr1t?3(kw>6k~Z9Tdc#igyIlmn=ULua`#Hm4v#u~Lqnroc zv!Q`Wa8Eolv~OK#hzpSo&VIlVJfubp255BH-W99s*9 zQ(zOxQ(FaywLO_aPwzD64<(6s+0y+H*F#~>XlGYtVTJh4^`;q%m`UWAG+7T1@OD@MTcikD3X%Ne5Iy=`?E5|Fgih#%={CxD`dvyxyc1 z;qENzE18x#*2QuSoU;`7$vnrue5N=}h769oCAIS?1*i1gUQ z29OVC1?t+qB=Zv03&?!M47@Ph6$9pgUGkG4g=~0Ko-tGX?q8}9i#RG`SH54zE&Ah# zPH)n{oXV5d594-5jX%K=BtH2TZXVJ1@thM<<%)ScqxBkHdud@Rk6N~sA? z#F0NXtxj)fr!^O}88)qct8y35ih|~@O>k)@i~Yjz#;TfuooUBLd!KV-!mnQ_wWy%r zP+DFSZeNRt1%=nv<0Au8NxotkV!!oT5=DL4j?FlMGczj;=L8-Npdb*C8FPw|?|ikG zrj>pIZb@PiO5|6&{El=HBMZM486hb33L1RS`ZQEbhF%PS;xIv>3^XWDV0bA&1n;Gc za0M@TQHZ~n!;>-VzK{LJ}hPb|`t&~kxRBe9d2!uL^su@#RIQJ}jt}R^-L2&Bj|^g@;dI{CP;Vff2n+Q64A8f+LA&K86{E1}CqSzA zvvatU1z0qHC5izQP^&b;LTp`B@F!o-St2J@;MyC`roDhbOr#<{Xc>HPecAw0)HvT-B171kpBtfza;Qq zU;n2e{}af6N#MV}{!c^xpFk7|^T&tp;_u&a++RV>J;*m~mfUj0(qer}wbIW67r!=Y zmH9Q_sHf&||Bh}C;N`1^4k6V60`G(1G3S9atWsnCVZx`h`VTEc=U(DTz?%~msR_nw2 zlo601lgQl*a8MXK^^HtL$tu4?kAoz4{YO~yYMd6`<7cK%u((^L4E&TN48MdaI5O&E z*TIYa{@DA(7+}@r<0^H%>X`&f4l1f-J~dU#Jb60&KYIaOwR1Pwy--~>d`T7#WbmC? zevvkE8da7Wx4A97l@LKKSr&N(0m*3{(#N(tk7jRw*)RT4BUS`S2&)QK(Ov)aj+P;< zQCOq~+9B*!2E(>oOfx1WSl8ZAoE{V$9(LF?U!P(Kc2m**fk6BzJ^(Ozfk{8|Eil-L znF*Fx}2X(;a8bK4O)ZYSZ{K^E?h$-v>jAa`=B(Wd)>4>Stn+r3En zzeU&v;|~BA^GWyFb1gwU4ab@IdF;*gu?Lb%QRXUreW~9^jlSzKr|$NWu7{){tY(F~qQRwaSUF>a3Go?E_du!X2LyXC|L*^ddJeczGXA9a6xr3}BZ`8SCk6 z>JJ|tzZ;mC@V3v+9NI$Jg7F#es|Q7Pba(5A&)Ibl^Yb_4aQyfBeMFR{iJW|~v;X9} ziBCJ-=~0rD|NAQ>^-_KDfvnI_hm)7_VJJPk4>3qnvv)@Qj7|nUM}Nkxzqb^&f)|rN z$%zO@Uv8N=>Ru-Z$q47FNr`1`pj*y-Weq3tjQO#0@TTys)eA0y3nE4!`~2+GP&PkJ zWYb`$C#Lc~6TDPMZfcrx5s2#LeR>|q?Fz?}$s%q+5(j(Uea}8l z8!NQY)%|jvt2=}TK76|N z%*^y6{D+ea>ClVmJ?H%5hV+vz)IGfsivN7zbr2WVt9U{Iv5u!5rgN;+Qk~~mQib0x zE@ETtrrZOxS>9bW2}KPPAwbC zsksN8KdEGzb@aDy!Hw=G?Vrgrvi{QgyPq^LKW^51PAwwfH#U9Oc;aD<-`)Eb>r}7m zHJ!ixEL)SP!AN@hPL+{+f;noY!tq@Rs70)$8&^&+hu8F%TBF_01a`S@Ev%oPbeM|l za5KDGGEhnr8IHAlQ?ks$aB}MDN0;4S&7k!fl9cA(WzTD9_#8T3_AksNTnGchMaqOz zL~i0X2G5R_n@O|mI57A7)y!Ps+r~li&`jn3kn26jN92uR^v~r-R7{Qu0>mrqP;ta^ zo#a~A^Fx$j+*{?rLC3}iQ8meUe3k|RHEkRD07`x+n?cdxM-228NJF#->s${{ILiK_ zr}%(=-VZc7B035QS_4RIttd$D5hwSls?2&$6}CG1bP>4{GSm6oN>8??D43^3Dc~y< zhHsl5=yAHeIcRJe;j4B3ShG;(x~6j~f%W$EtIb#UY%wD7)&G*Q8#QL(=!4XpLnpswbyjC~tr^{GCGD5M^DY=~&NmDm&U3(!sTP@Igk-7htuKbswV z+iX6frFAQ9GSOK1-SK*0tnhZA>Al@&;sEAFrq?BS2`!&^88yN;-2rZt)nyJjq zE2v%l`qg7u7URky@P4^KM2{QJvB#BEBigBn9g(+e_?Xf3J#^X5aK?pp;X|>2w{U0~ zb!BP&op7VuPWrO*?V7lg%x&QOams@CdhkJfuE?dfa>g}XxAoYBch%naE}SMN$aNCv zxQE+62&cWLD3Pfp=`R1z06Jft?#$5CJ9|dhJQ2H3Pfx9oIBhUJ>NZfUb7?8o#2In= z8%2JKB3pYJoYd@)WW@2QbRau1&JYm3$UEeXm!tYJxtnqdXvc(S>N~18xsE(+3pO&ZZ2smGTzkQ0aJ?Ea%zB0p1w%mH|{K^z4`8#Hdkc2-}%kRnYINfP> zKCH-3)&I0TXmJW#Uf@Y2SD4zB>LH%oGD0 zQQ8lPzyaj@f(6pvF5&hoQn!;Hy0#vbz(yY7x zxV7h|z+7`8SAHs{?+g9&jgFCIrEMAyHqCdW=I4H8FDN8C3Ed-jKlmkmnNWcG@}zO% zd&100KN5x{=>qhj)5!@p;`kMF<;Gq-J9qw5jQ&veNn5wRPP#{FSgCuuXJLWnVUzs3Z!xOO?Vimv9B5h?_KQOda>IOii`cJ zW{?s%`ULNPhKySw!jKD?#3ofx?R4L4f0aeHbbPq0#zgZtKc~TrQ#+w&r*mnkm9kEq zn0{>Fim*^-D>7nVy>2T|&wgZ8)v-Ig?Bv{Z^}6n0v8;@3b2J|ZSU-D3Q-BG!QrU8_ z+$tGPf=5shp}X9gD~)h_TkxsOy9Ve$H)p|xSVj$?KjSYPbQN{3*|@d7-408N7n|=* z=L9=KcbF>YPBI7PPHKU&WRRY}y&!@UJ4H>j(w~L+*{(1Av{s`c0qq7IhEOJiQj-Dj zRJ{vyd%m3J;Qjt$W-r}A=U19XfpS5$=f(VcS8U#(Q}C8SjGcUa{wa1U+3yO$ESFL(Rciw|;>t+%{3 zY}-=bZohd-5cm0Bb%QoQ3oze;N(V+wMIiV#0g}^p<2Z9F#Qp2DBLL zw@1H2*2ys6E+))>uUg)zHtGng2Gn71Z+2>zooS=;8wH`_FB2Ci*hy>BIT{193_z?r zUsgX;P%HYF{Ss`!l`cW0cfbp?8p03wdB#lZ|mL87WxvX?~=tOZ(Fi5y8 zztkjR!^?nxy^${(Yr0;hx)@$xpa%sKky=CLOq71*I~J&Womo}ym_zwqRP(@VUxRke zJv@kz>w@Cuw@H1*^=8!{(23~)X8A~qKUUC5Yng_S(Os~x0?x=>N+?<=0gm@xqfh0Q z(^s@P>W1=p*^THFszJLw_r75LxkYq}0HMbtpuGXSpnwU3>S7aoN=Vv1>#&SUIR7wt z$ZvE)b7s_h^^>l&*n0E1#kM!>(R}RGZf!D^%WO?)PzIv$|50_7VNtc~`V&D!L?r}i zq>+;D5CmyNkPfB0J0%3^?iA^+A%;e}bI4&px^ozsvqt^)-sca0xUQ-7zE9pUFjUL3 zhJ51&0^0#GODI@g*JlN5_Hezs^Z1#D%~v)7S^2)HVl~*2CGZQkWh0{!WstklO_fg! z#d)zMcU@7{hdf0QoxDup@HL_;3|S3iu+P9C5p;c@;c<)RX0`_|$&A~s(e?2_)a_sQ z2=1^C{YRxN2D$2A2o!oq@%|hIB8MNWlQET=8HV}@5mom1$Y*VMhYV7f=}`B=`5t*? zmu!N!v<>IE+MYh7`w*$WFy0x=elkcnUaD1x0{MY-R}{6wtZ6l?CU1bUuI89vJ{_UFCPOx!eQ;n?|DEk*!<)LJy;caB8X_`NpB z9rV@tC_m~mQ}TP^Oo~9*zzG;AI%NSO5W_0G7{X|7-xUpUu?U#R^_6oKykq3d>qZ_uJd`vPRWA2X4&V zl3z$hQDmfp*G+$aJ@is2y>@5YlCwH5uX<2mgM_er!l?n&`RA;LD7Q%rm+90gWVrs4 z?t}0f@(;rOt#!?3L$QTtqx`!hh0pKV^BOfw*P)HyU3u;m2zCOTa8XXTbDt_CX ze3!4U??Y3((Hhgt&ajoBWnDPqu{2r-mjqcX{l;AEWj&0u=E@5$ydNIi3U65k*1BKuc}vJQXAS~x9GooMicC-oG)8Yml&9lQDZ z%f7M@Z zEXOO5*7g2TJBFKU95f7L$a$XXGIx1bE|urH=Cl3sR{|+3#C|fq1QH<+ELWe;G&m#* z9*64nN7TWFn}Q_CSh>VmfkwbceEq8u%D+wU=o26%*W7<4At{#?ITPdS?%PmZt5vR< zBE#0M)cj_>qD7dAjjy1*E)+Fw;@xgr#+-IK|5QKL}XK> zm=kp&4CCsI+?|)$7vts%5gW=Ja@0BAswi|5Mk0{#HQ1I*^mAv$ zcY>Yqx8bEzJsuB9SVe6+j)>e2-G@@RXr5l5ekb1y-u#%%nV+34CT!Oy!EU`fBNqaI z$dUIC8>2)AQFZ+*u{9~uga@yPNGgW% zsTd~a)Sp5{wC>|bn$L1EOnBFDJo|C)kt!s#vfQG@-)!}zv@phtbW^_9(`K<%Y`o`G z3_Fgo3wBe(p4^> zPbKEq2Ss4`Aj)h?HFNSQk`>2N?JVdiGSOs?8|=DfYC{y#ZKhd0c?`#02%dZVgku_x ziemYh{83P*koRrzy6W8=`(bz$QMdLjBgwcT90~xiGZUvvy z7N9i>bWh9@!8>+2wy3G)SNn)b*EA(T3FGpiL|Ks-?r&}%dnuxSG&tBk zQZ%sTS~=^iX?f)}dE0_TbqdF0GcHiCmYuhi@_Eu=M&TE(lbu{X`p$>Bm2${0tvKad zZI|4%36|=&<{wOEt~na_`{p#VR?SO4i3P@+wuNc1z`(aQYh50W##psy&t7mEZkArM zT1e9xAvTp5F$o3}m8hUS=zovW7Dj#U5>$Q|u)wIYx^lMTcx6~2e|;2rP(I4GtcT=Z zgd!7`Ab)RYBGb*gn+U{(T#Dm5A;)SFBTJ&f$9;i6jr~6;-YDt(PBDG4w9?|@{!NIC z#ggaVslsN*cw@0+JskvZ6#kRdNr78#iax1Lko@ogZ$7C7^AzTBzS#v8HNJ;9YcEfJ zSuu2O1%)#?iW{8$p0lx~m9xZ(lN~EPoUGDC51jlA5;*wMs7~GD zj>giVe_#NY?tA`DjSgG7eAJ(80#xPu2faXTpQ|>K0ieo_G5ki0IR;Y&jpjU9%RPc) z$12eMJ^!2-iYPB2?^M~OoZ!qezgSw$*etnk9QOddWD4_yK_O%wB*apX6*;`}T1Nl4 zsKuJw!)qSqWXc4C$SE`yfh+8Is{duGcz+sGqSd78;@krSWBb-F2(^OBX+@fY6cKP zr8`d}C!VBh@a*PISbFJi$4&UuSwm%$%b#P{Vy_NZ+$+=HXkXT7a@^{2U#2?^E@&KZ z8pE0%I9w*`9R6+n4hRgQYS--M+o;p;cXI9;TOEd9UJ`G79a0qj_Xq%amtVE*Z2WS= z$&wfcgovZSwj6aGbE|cx^ft zmTO`Svk$1NhVSod;G%>ku%wfsuD5pBtEj5>!!ZeZ>+SfzWBfhe8aTE*rRf|9%ZBa# z0S*jLMhwgAMX<=_4lGe9f^6ZMMlx6DEnHhfb7<2j%n2<)e)NQG1o$OFLOT$P?udPw zY1SlGK(B4ltq*t^WI6z&2)R%8$ABe{n>|`t$vqF>fM;)`hUaeI5vR1|`W&!K9}RG# z3*JSgtNlI8UqqeJmhxQj!tPsDn|^}hc**z zuLv*<$hDlHG2g)%=^Z2U&8&;|F9POhyBaCvFr$U@9x#ZB?V z;BVx&ykYH~{gYz;A$w9*6WUO{>`24Z;nioUw6w!G)_no?7cH20!KoH-b>}A^OW9au zoGv7e;fi}t;xpxRQP3kfJ(W2gpY@+!bpjK-n6D@0u_-CGLHu&*f8=-R6?_5dHYqQt zegonP(U&3Q(S+^j^lc)N%;NIh&^f_ka^L$=l)@H6Jjb4s?+*9TpWX;q^^Cu^vh&3V zwXT1|?_|DnWt=qrn_5Egr7aj`ZEfurr7@3{w=B>K+5Z|o^(MMlxgzI1KL#geNVD=G zkz2o;0sudhWDiI=_igD;nN6nl@%fnLi(|LUbdp|eP>4WT877G!fe%fU$t?SyK@;cZu2pxW#wUr(tK)x+5Qu7t^nLMT*54LXc?o{POtOia} z^5SdL)Y(Nqb)tP}nm;>jK}kG0*_WOTd*&#(9rxVVii*qcN_0!?e1e*I2$Cw!CwKq~ zTYA$;%pZKa?`uGXH=dtXkoz>LqFZq|MbK(HmbF}`kw)%jl|jxoYQpn5tt5*F$aU)j zg67iZ=j2v`y)6eVaEk-_6v+OB3NeiOR)J~OdIhkvycdVsamQZk>8yU?I69_tK$bDo2(tPDO{JPVeY* z{q^cGc0qBYU5xjfXBVBKtY+P0_LcCkt8M7RKf8qn93&(d?W7!wE3`4gxQDs|aP?_v z;#S+s&A0|+^uFJZP=XHeAV$?s56q_)In*4tCxdfI_?MEDXpr}=?HvlxgeyG$Rv-HT zCa)+tkW$)U0zj;}THO9uwpX;!>Kn-f1Lt26#xbxVAn)_}ck&Ka7lSziN7DDlgnN z`$*dV_W@Fj4x?DReO1x=WRGiTvAeG_G#WZqI=E#`n>TC#8zsa&%U76~Tl}>1Za}Z5 zmh~tDajrTZGqcS4X-#ZMWiM07q?4YDpqKO{S)UJ8H;IXSe->fX%*)ZuV`FAkIM}*R zv^C~`^hrzHig;HZP&u&%5o3u|e3G>))(iDWh)xvyD1ci#5!DYfmv3R<~3k-GD4;-0|1 z|0iQSr`Sd&qfv_?roEu3p}!+gDpVx!VaV2Yo7n>L#H_g@66UqOqPEC72*%TJl;QgM zaRN_tua@z(|D<=3%Y`Hg0~=2-DJIvaugnA}mp3j+4=y|zL*4W0XT>N%roK>a+kij!f#f$zAWwN^Wq70~xq4%t{;ft?4hWQJ!= zhN3@<2jQn-kp8wp`c~Ek6fQ<*CCSH=6W%Ln)^6x#<}DvRyx%x_C=UD=A@@k3EoD;e zpVC>z?)9ws;AHHW$XP;%-A+krW5-SJUmkSVHRAI(!x#tW*Pl>aIu2aM50r(?#2;=l zhf1lt1Nk4bpjTFDqUrl**jAtF?K|At*4_L{Q#&Me{49N^>DR4#~xEC@H2oXRCH zJg_$Yx>BpYt$`bM9!^58#?A^DC28`!pP6rTlJsWziGTeApk@W&t0Rjbq9j|8%{}Yd z4u|!Oy+4#1AR?{4T^d)^X5!*XZ{B%Sa?zLzjJ1!4r2_qMfHwVIki*6C8c5&Y=d830 z4Av}bx<0O$Fuqd#S7x~hb)o8snjUZ=K5ki-Wu!jX^^(XxHaBY49`Td8rf{g~sx>CoW{XFNH+jYPF@5xxXJd+7E~Z2Emn5 zswr&(tb{;xEiAUuZdp%l0NTPb$Qp@^jErY>%pYAo-?WGIl}qoZSxWcjNFMse@bSr9 zXkoNt@bPo^r0m}1D<_;D77ptiHXMfxkIKet9tMt2}#wN2S~KLz*vHr$73%hbRd1Jfe$sk0*4Hfix> zBtnpDzMFUH+c1Y>xVC#=*LZ1hcUHw8pmu+d`t?Tk z{J|!usm0sKs2X~<(ZWp5V_gzPD$xChZv~v{&1d)ORu58%dHVOE9^++tJ^lue&ejq_ zYbgO-3``lIn3x}+%IxdZHIAVCorFYtFw+DMNHkiP<;_e@56$Ef zo3EZO<`CWv(c%6tPPW&#?H*hE2&e0E`r{pbSroovIC~Qvm)CNfy?)`Wng*Xyb^u*59uF}Il}l-X{|REcqO5E4?`Vu|rZ%wLCg+>=2f@m7 z23AE3x2bTH!r|LCe7AdyI*zlE47WG0Gh=NAMOHH-Nj{?iNdF%k*{FJ_Ln1(^(OImk zw&DJhQz%Bi12UMIwEN3-v*UoIvf}k|6!<-|)7_wQ18%_GcRj=A;aBKbMAW#nVKy5H zN`il82eSl8+)g2FUVkWKz^gW4*B@S=bPi=NH9+h2yB^gw5o$#vNmLQ&+ILD$k5I1oGGB!) z3cDYDCHTwA1CF;F)zWQ*j-%4IRs+cG1+e+$W9>_&lK$^WjUc73yw_8@t~Yn#H#`;jen7HQ-_bYPwlzlE4$ z<|{yKn!ecsaoi_{1fK)p=2+&_Xqzv)`=nGkw?-w^qPxX>eiQqDnQ_3+po%t#?R6y@ z(le%74LZwf&dZmuF(D`9)Yzrlf@v& z!ppi5*go*l2{D;8s;)hCWV#rm41ru^KUeXYa9aM}pE}hsr%eOMxK&ju#o-_b{}o^J z*gTK21=^8r0P3}ZIn`vPr)d#(gAxIQoQH!;>Tt?di^bo7^~}mQnPVgl%f|Y2JK%Px zNr_`&AEr@0yH;V{Y_;p3?`i#PK!bw`mRgW|hMQW*ljz9rjj$^>&>u?HT!gGF z4xGsr4@jB5{tC_aeRer&VgZ{#aBqU)W|Kxw%raKDP$uO4NoFXSpQXkfzsMZtnJ7?0 zzuk+gbNc~B`-Q`VC^by*_A&lDAKOOx7$47W*MaJGl$$udAHw3#xinLGE|Id_Uc(Xn z`WQJ7op`BTwHn#oV>Mxz`3tI(XT6R4cjS=G@;b}MhfvTo$`V#dwO6)jyL}NVa+190 z0&|`(176^NRA_-_f_5}{+Niv97nh&0-Gb!BLeobNOLPKZ#j z5APa{W%r^DPB3$>9RG(=&5q(6sk@+;+SE|1a-Yzh4hHKcGdS&N7D~9rPJ59wDruL$ z%YCNf#p>OE<>P7)bH;j&CF7f3+D7fmKOmm>*NicA8r~*+t$z| zW(l*mQEc3Yj}&aNt8OmOtQh=E{#+CvjOc00kZ!Zg^pI!pr zJqBWZ>e;HN4ApCf`O>Jg_5XY|)B-(FlT)m%-a|NTg|5!Kmus!WB>v2RplZJl4i2}l zQX5Bvd1|TZwQ_BFJJ+O&e!6KHaXwg-2bBDw)_dPS{dsSGu}^s$$8dLf5G{)q>)yB8 z4<Z6Tk3a&}!h5mh zMMW~|T7&PxYCfZRLM|}0&@Yf5aRseAjEouBobGj7@iS% z_=%pw*A?gk$rYZxJ~K~eVcoOZO=4RlupVbg3y@&=tr`?TDzKXF0t2KNoTYz`Juu^S zmiu*7KRM}`unz^xBIfpgLGB7mOXIPBDz3Ox(EBKFa-!_9zE@IuN%ih=BAj?puCb~u zshI0XBtP9Z;7^$R-4YtU`eaqT8Gp8_73Ha>yNf~eR)434p)b*0NI-LohgZptk0& zc=pp;9X+hqz}EF%d+xUE!rDKa-WcP2z0@xLi)^0D^}Er|cy8!mGM6%~e2P?*7^X}@ zM(d?dOCHDT3{7<-qud403Gz&^zsoavQQxDL9yc_)O_3BcK%=`@17tqcj_XHFzd_U8n&SWoALF5v7<4jEDSsbL!hd8w%5O&olBE1_ZaQN$}^b?wHy}&ng$7c(aA3x0GXiXsdep>zG6rIYvI!U6?xQb z>QRsd!4|AFv#FS8G_P@1bQn?tkXJGBmmSII>aq8Yo}`kYu9IZqj#=w8_P5=;Z$Bee z^y;ne&DGQ1o2P;l0CZHLV4sxNR+P;B9NTSu7S^A}S8W6+72!-AJ**u>BO;0bX+D&F zRNLQ?iuUTY{<*Ck2R+FIq4xNK4AK1`_XUnmI45HNE2@SRbkHYCdzMpQvAM6W$W&2nhqMq$DY78IEgruzmILH*IYX%OTHg*GnvZv)YR{( zGM&DSB#NYoywnlntjug{^!!GhH>fzivngK47v1~zq|klhy*!u(ock1t^Ud;Mz;oA| zaCk7Gz4Dq5uqHJ+So9ii_NY_oo0-0c0uW1Myspkbnhwgq1y5v_VJ&Hwq$tEf-6S#Kv1y-8y&u{bf`6?SivNxR(O;t$B)56jRNYBkl3_YYNAY zhJ$hx`#fZVK;u(bQqo(ZU{3&QD=u$NP`%Uhp@NE_n>~L=2?W+Q*-xhh(YjluTod>J zR=UJ(H5Y%V6P3>JqTcLT^K@4npqXgcfQF|ghXSbXcuafh#X!@^A-_ri;0GBq4_Rao zvmdh4Z^J+lZ@OD-NdER`Q?~VVGN<2>{t(h9V`8bZ~BKpk0VZ6n#Ry^O5^Qnm{ zYQsGKw|KL*Z!neOyj3-;MA?ut>SXf<5xX|4@S7!UzS$em-zn?dEaT4d6ywU(dV1GXFefU^kB zn3)cE@*5j1_TUnv#@*oN!37|E_F>)UtZt;wbqH4dE;4Rw1}XbgL-YI67mZb2JtZ+^ zG}CW=vLDCA$(dOwBABB30OwCz{X11fHGH{>*-hX!wc4SCXqO0(nOd3LHs{|%wSItR zQEM^3zV*XF(#lbmPyOm!0`^D&341=>r$GuGW2&2>B)xp#9?as+fSq<+nae%EMye_* zQUFqFLSBI%RRP;|?Ro1*CtWwV)7C`(2*cVTvKWiP^nK(105B8FyK6A&8t#*5Eck(> zefDOzVi~3>+AX?7UjkMhegx``+!t8Sti2Ee!gkV>6>VtLHMQwnCbjiz#NOvWu5v3Y zD?!x3Mx@$81Zh6j#aC`f%;6#SixQWhrekyW9ZIl$sr0oD4R1So^8c{!m(lc{Ls8k; z%Gm}id^7w zisqo=RHIyrLsBjM6HigDWpCGNl|8PBW2oQhCkOR7<_pW|g_pi4R4ZI)I-cqg;(XS= z+4jZhDc0L>R)DQAGrv~Hcj~Xl&K{4{i`y}1Z;14BTct(V7^)evc#7S;Y)DIBp|j5( zG9DK7V39LB0q`TKS}Pcfc+g`rw@_rYNnwHl7zlpQ(P0jHn%^MU0J>TD&!v0=`bz4It=5#&?!zkCAr%nwE3nkCc9f>Xg zr34x>VJCqVVCS=a%(yn*P)%IjHw4MDMh1F&E(f1_sN9R$h2ymu!)nF2=UDd+T0K-H zC4QLHAa%C>)|$Qr4`&cGv(Pz?JcTthd^+(G~8={Y;uyxdh5eL4&k;zSY*i?aZSb$OVg0wV$JH~$Jgv6mWv{ru6 z3!#IR#p}e-e_X{b#li1S~?nEslY8 z=3HQ2iVr95!mk%ohR-!s z=ihxsqpJAW^Y|&L`OWYOvgpy^=f3nOzb%-$wRUyz*9H{K7I{R4u6tQ=25vL7O#y8W z!|u}w5pO^rSm?M@S+P&RrZu+y+wIX4FE(U9oV${uOsfb;>=muJxHS*MXV!rdVHIhC zDWA$SP-``>*q}5Dm4keQ>ST4yuo*a}c{J78X#Hbtc?AI8;sB)**M8SZ;#9Ki>d(lP zFl`t@)9O0TT!$RyYS3)yZ6P~88-I1W#cc2{5@`+}+K8Khb&uS49|Xmn4jUiBMXkh6 z0S2s&?UYFoO94!zH8eigJ^q|u%Gja5c(LWxLL5smI4uH=Ytxi4Kd_o?lqp<~J zyv_cbwa=u`FWw`Lj6`8=ROue!&Pktbz{$atcZH=_Up*| zc-p8%sY1Ul2psu_Rk;b0!F@ufhC{g*s~^?e&{S(a82(~5xy7}rX5^VYTMi-*@esV4 z-!Oy>asbN>4Kwt2tJ^cw76J!UwoRf&MiRe5H;>+k_Z)~^fV@v1>onLK6$;1rY^J9L zXa4_lK#!?DMnl?Ei=|sAo%ZqG&0-2bkv&QI-n?h_O=;0U< zW;7W|rs6P`vtia4N7w`R+Stg}0HP>-p;FA#2jZLzr>P6Gvze{>NapjaFQ5-tkr)dO zd||w*?8%IR2_u@y$|k|ZjSRLY>vcGh1l|aNhU+R>T!U-oJ=u+mX2fEw-tD&1?9ti0 z6)j*mkXYYiFgLR0zPm9bBye;EF_y%k$U=cOI-NLt3&vFV#P|srU!81IQ=4zA8l_%x zqjo&XN#X9->0GRGDjt@5Jz0FNsOuH4cA3z*pMB$Upb=Z|x_F#1a|-E!=4CIvyTVa;hEm+8p#|Us+3v3JP>8kd-D?mJ1EpG9wW{6KReI} z(ddD^ybrz-I9}d|nt^8FV?z&@{TSEvT;x-gUDgIFrHdV?UlI9|5$W8V2^{3i>S+O0 z1LSjxt3e8()SqtrH3Kl`^$3u?=Ar|^kk552dJJSbrfh8% zP3roWTB`!;E2LYh*${iwPNn?D^-pqGX8jUueBUusM~nPs$ly5p0XJYF>o-~r0~-;O zUC)XKYY>l@&JR@_rXMU)g^GB2%~ccC&qk7aZf;mDn!4H(FWC9qUJw`ppiHFjBMy&_ z2r(dT<%rN`*Y+6!M#`96zpf0hZG09vVGr0x^V#-)Jtju^jK=Sx(403#)GT#CDF|gk z+iPf$8b9zpSR4gpvFnC(N*w9le&!)aPqF?aCQGVlidqu7;KV_jL!2}kGcAE-GQLPr zar~1Un&}Muzj=R_`QDK~`OW!xoq}7sV$XV9_mQL$=6OcgHm9zxk6tKI;_z>oq2E0< zP%NCHl@uOr2LJ<7S6?HJqn0g$$~D>swOns(E*n6vXB(@n)sD0RYf!YDG<%4l(UQOtZvYils5{5pGTs0? zdFJivG*TD0ye%N%x~#>c)km**fT=FW%+32vBK~ckBKhePIn%y_3@BER1!RE$oY|Au zwbMaR0B_cqztpi|_H6Iic?n2u@aGYY?83Xg7iVx*ynLqGmhPCRIo}8Ud;meciqvY& z`1Z+ZfEg%CURydzpOk7L>yJ3iho&u&1#sYon@e zNVJT8LP+g6s1}CCQ%~Vvk(ye&GZfy}`p@b>CC0qS@$<4TTA?E*9Nh;8#fr0kS04X% z4#)4aI;!Qjf~KcsTfJ{$_HC?! zFuQrZ9h@2)tD%mXrKO?Ho|*(Rw#TZ<%2Yb1l@8Ox+=^ux6J{lziKDy?Eh|3zlZDEZ zAs4H{q?vhZpj2l4$zJ6|?!kP6iE-5oY*TD{R#qFgWJooaFYtA09?@X`r@Tc*h^RUg z)mBb7rX32J*;Zm28>{2u&$Rmla(YV32ru4NcUcR5nI#|~FxW)cuaq-u85wN6EU`!Xt=3|A>*Om)&AL zxs-b#oab)y_DXp;X{q}N3ir4!tfLdt=U$chJC!_HCoRH9y*#p~ zNFPUz9JB&U1l4_xZu-iY`=5(mDz2mWV&*CO@Tz;ZJ~deslc7iT<$;tdy0gvd(3A5n zbskMC{g9-^Qkbc=^3WHo1AX~Yp?d!kkyw37c^&mq+)=QWnoZ#{f(3R3G@$*&(%n8f zI@SwQ%(9-t3)PB+{L==hiXtbw3|73i;eEi?xB<}Z{Jh)rrpMpM^X~pJB!RhyPG}jF zdh~0-Z6oba7c3GsMvTkadWxIxXd+;nyw1C=YUQJnEBDgx~#1(}7P z*9+9fDlbYcVjFN-2tGxbJ1E8W)!MCe*AgWyjW>$CWpU@wuobKN5@hHEYC6b!pn1JT zjI&b$YTDSg$1cU(&|@rCh0&A_#f-){7i5U)<nu_AD_*o01Vu23(>AzjKl(lmbDwURha>h#5&LJm8(JP~TC*|oq0~~ZK2%lF zD5)sq6ub@Ld&h<=NAc#L&PfFRi-1v~O`^fa#t-h?GhP~li;IeVgiwvaFz@0czBg)P z%nlPbfzMsUC$qak;VcM;pQ;|L4)d4mJS~f>o<)tm7K58(SdsS4%R8}(8*ZRau9s0d!-5||4~7~TpcSXZ#(oM!N-M*>*BH|N=Nu8aM<;1qR{E&6To0F zzSF``?EZts>Qg~}G++9AE(*NXwqiermXt^7Ah-EQE4_qzd)sxZp9ry) z(fB3AqPzjzmG}+#mrThNk#D2@)OL4hq%f?-AZT~e@`cysDIb^#7BMvDdxU!LIlX}< z)gt=e!vlarXg;uR%%fHPJf-v(BO|8^3>1yVtPwP;QW`Pw6jrq1682Ooc+1fgCa9Nl zAcgG_W@9VH3cm^#4&-zwnVf#QZD3WsW~cjPTE=B-B{UW{NYiSR{OP8_^!G&FyNp7R z&G@^O$>IIg9euBBX>!ozA+wsffBDuAyMMl=GENSqUKR*9$z&zts+MWe%yU`fgY-}t zP~V6Fg1waY;StB(xhkxK?}5pbEx~slQ+&Sy`|)79TJ^OmhI-2fN(6%hOxkhLOQ?0} zJMh5bZXS0o@&y(!x|ugRK!_9fX}tWT1>Z&Emi)*9q_rX*DC2$YqLgl*qEXHlo< zpOe2?$}6xXr1^!v;Wj2gkXPazXv`q>Jk6G3RU2;I+`#f`^Jnft>+x}U-hweOnj>O2 zY&u%k`VQBAfZ>NLW~T0{-ge_7<8)$*OV3WnxlG?p0L-X13$}Yk%7k?;7WuX(c$@?h z+JJ<*+T#LcuxWy;igWv^IOuf6&o)y6J_)lb$R%3?~!-Pdj`>1U5s-`!aEZo5y+quc6rb6%?RO_rk5e7N6u9FO-&x zywJ4S7?$B%Pcjgj{>m))#wNyrrzZDRv-_E4Zx}E(e#rQFqevO8;W06{igtyxg;AJp z(6>hl>aB}i*-Fp8;nRoPk>)7vKwwefuTE+XQ8im%sk&ZGvQTmB?-2Rem|8u9vu&uF zm6Ah%uajhjx&G*5_3*>lZ+t2hUkPE zu^e{n>46kju~oJ4ocL+fdT7%t$MRg!I$9{6A1qdx{Jqcb3s8hgbQ3wg^1F8fR5>)} zPh4U}cC$5EN5!lebUSZrS>$_9w=f8K%FI$(&AEKmS}(bj`m+LoxjJa=_FnaaFX zKKbo*SdCcmT)#>w9;+fTo3J1HPLueqRI0KG#I0tkRlXEpHD4Q{P$@K9V`dP$6mWUT zTE&=S-ouX?@sLRyk2GzGy_q}n$+DC{-9DUWQSi8`OEJ;!Zd{hdx^ls!y+Da2umJum z&(&7L3b8wjtLbJDQs^&E%&D0a?2xLY@pQo$AfC>dS}ZF<;|a#P?<-<2YL z3i^UbS_&8>6)eXy-^wc+S+LzIe1QgZ(6k#n(DQwzk08Z-Q*}BE_%bDdPDqJkNGkCF z8eY9yz9u7J@>r!%2XZ?x29U|cmQyv(*29I`apN)Laj6XQ(K0QG4_s;rbL_^)C3t#n zD%M*}9}^0yCzL;o>~@*puTh;lnW^FChPW{Kg6F^ypr5<{nxf<7w2`e?qvj#I$vuis zj$prT7f~$1k96riEo-7ELQm~WX!%?#YZ}YKJf{6HpV<;(u$ayQb^mveJu<_np;NYXrzCiC{6>_)agCbcz$;GeCw&@tnc&EX7H-cLzLb9uqJ-z!bgLPboH7)tR zFfgriDWB+3JRK7xZ)$vWnI+8W6sBee*U9s5JRQr|7{I!`^fey%)uf#pul-M#{N*O3 zz}H`+BvOP+6Cbf9SLzxs+>#gBy~PEMuhqD8RUy}18!z`>OO9t$U98cu8Lm7FEqVAR zDyrQ-h_f$ciNCBcxaHwC=<_R=hxZbp6h(0^`%Iw`g?r0t-;SU+w-6B&;ac zj>(|V^7M0>DNZz{Wc|p~j3I|qu2NJ<-VJR6z4`i;;)o=a4iKX0hmd{j6nYWWbR~*! zMHq4PD+o^7vtVTsMr0vl=NK(0Okkuev1(*0<>)Vp>pOh;*}P^LbB!!f+fzwgWpkU$ z!f3H+#IUPBUVfX~XIZ!c{Ir_oSFN3$&wJgBBblEnIN^yWO-{bYENi7|<|k}9iu4UBS?BZkoM|h^h6p@=?Eio4YGow%0b7;$|Bk> zBqrN&@M`%x6K3n`ovo8wrNt-HItq2f;*Z1Ow2TCrWFdI!~t? zcjJswdU0De5m zc}~4(DQcqiZ6c3Lv*SUB5gt9AigJ0P*fCn64MMr+*LY|5G7Xd~Z1S@KQL0C*LEo$M zn#%9$@xJ5zyIrB6LfKiHDW@wnvuD))fHKPfH7X^P`XnY9w*|!X)o2H+%lPs&4AkEBd8w|`3H1-=#OVq97j=`;L+=M(M>3SEpo@cYLzWZ>K3 zPx1xor`MmwR>_0c4`ye{2hF%%fA>IGvpe>_C*(BEdb|nK+n6J!$j!|i*95a3Q^F@&doT6)3ssp#WwFk*s>-1%O3)OR@xGo3{!k7<2s z_mfz(@+7WzXx`7O2Ha6Dxt}K*P3P~*M|XW!&acAPS=(MP2F!xAEE|td2vo*OwN{di zh{~BuHqr-DJJ+}guk8%FrQAZ`@~`q;$BNa=NATn|KCS|GCI=_;;^MY`2o08CCXTNB7kL75aeaZhnymFy`P@CcK4;vc7qj$#{o5lAHyW6Kkx+m zl<&b=)i73 zgB|>gCaugaKwIEMmrZ0I=o4nquBR_uLQV9VmTz3L77JDWAkQ||(6lvK*C1Fo3rG|& zOn80kKi1HB+m5luzviIA2cL{x%fVF)(;Tu#ont~;JGBZ6me*Z6DeQS71p<`cy?n_i zh+@?I1CxVG?vmljJ%UQY=V=w*H+m88o-Sy1KUR};uq5#0Oy=Yi}9 zo# z0j?V3vEk<9|H2WGKSOWJm!rmeGRmL8OQST4Nq=18;HWxwQRX%McP zEp}m@1v_c2yd?2zF`HP&Ul9OTjl~k&9_z2V!5PczwX1PBvD!>0IZYHBT_Q8?_3qID zyaNF|QhRX$mkTtynYNPMsQ09%`TkF8$~B-UTnu52z(Q~C*VxtwRqiEphTtofVTb;Kt@-D@=sJd9BP4+s2r z0LKgbQaR>A7jST|9b=hALyzBjq267HrsmatpmvC>3mrF_uL=q#XX=}>5KI#F+65iR zA*)@rz~GgocmF3$9xU6Hm>q}IaE@_qvLKHZzzu6XRI|x>TFr%?wG~b67BzC7^uF5UWLsK}YM=O!*!&gi-tyGvn zSftLYh4p-W*)pxhV`ZP=!qZ{*@URImn!T=^rH$6BGzKr|-5-SmJb5Xg&WyCTw~Y93 zNc|Me`Ct~8P@0TeTi!5bk!Q7HSpENRW$^sIunBY$HQ(#+PM!B1#Mtvx3HP=ERi1or zwDeo^e^7gpH0#;&sD3H_W3k%1CkIIe5z*}#2bq_bIe@o2Mb*gHQ2c>Dx^%n-Ve_u5 zYU6(+~I9?NrWh$%()x8-GJPV&N5{WTf4ol=*GCd=aqBc0n@`IQu= z6*QE0sGc0?Xc&mP_z#0f1jga!Hcz0@<NBxNb1 zpScj&tJ`50vIw+Kmp3Xz@a37Am#o7P2QXIF5m$)>rtpk`!Q9R5Qiie!JVZNN(XKg- zL}X~UPQ|CsDh@Zo`FEj@N^+8U-?&Wm|BMu7;aNNsB7B{-c7TGoce`bh5lbqN%~7gt zd+R1&!^l$r>B2fFzLLU0*_TDnA%5G~LmL-h{NQ0CJNJxh?ij>kw zw{$m1vp}U=x^qc)w{&->ba&@_E!6wI_dfQ1p6~nr{E$OnvDTdP8gs-s#yCgkK|9G> z-5w!_SpZK%rSa(ISGwAIIkZZ`>_o>?&Z?VJ)r?x3H5?slFwQW9pE@h^jCW^5PGv?d z3Xpt*L?#8k=p*g*URDIOv2K5c20ADjK-kyHF)xNI%4Bl7z3LxaPYn1sgKIlCEfTFf zp9V;gYK#Vm-a9 zeNfOPl1XE+Cv=2$xOdNl-X+{sj#Z6Xh1B&(wD<8PBo+!na6a!Yjkyh+%V=gwPK zdsTI1Td}N2JOP|OFIdoF0s$OKATe3y0I*i=UkF=a1Or{vfpO)Z+?pIE7(8lT%zj@? zHDh>n=K`2z5q}zUVipbr#cbIElCQ{lc)kuSf)j34X!dBl*FNz!yPV9Q76edb@sj0U zeem~JvYVu1Hyg7t#b}jSv+U}m;!y4`GWyZv&x1L!Uqy*`_=4bE@LR4ouKb@QH5l~7 zCuxHMm(pCDQ zt4Q@4hwg{&=V|fIeVoi{dp!`O>j024 zMNmCUj)muXUB|jp2)A<}MUcP~YX;8g%>7~opM@NP@yf<{`5s45{{3Vk!Glfe;u4W4L zvuS8{gX>?&+P)#O@dljubt?`hZ-eWa`tf{Kh3!ChJ}(kw)C`EBF6X=KwvNC3?j>-ATv>9Sri0cr)m=v4gjCeTtT;%?`kjxb z$Y@=7Y^&E83-$->%ojI@64?)&<~?}S)M9V*B&)8^mxBBO#0wRdUgg{A7h8_jeeS(_ zs=W?p>h=Mbl}@MnNxdyIjj5%XRUupr(j+5Bp$}uo4r;`X+Xr7$s!1^%ZfnY{Co^!j z4!R1uEz(2+M;`d66a&7-z)t|?6M^D#hl}qSOp?X=zX}8-IJMVwlZIwjEz8&v-C>y-v8vY}fOfqG zQ0K4mc`hf869Y8*H+Ii4y#8`gLG(93DBvo9=fk$F_5;hX~R#yu7L8QjQw2 zQ7dBp@nMs-0l+)}wyNW&r*KG3$ulAm7lIv5EbF^*U~ukcP64vnB=H)%dZbrLACDm4_4?8P6PpGe z6{9vVwA*@<8p3KG$O^|lyEs#nN@}8+r}hW_%G_3qEoBE=a?qm5KLu}T zpquAL=C3aOs1UJYJwit{1ldo;FFH}UW|1hyL70@{6M1J|eJ7Loahp+|0ybbcE_w40 zRvcM@k~Z(W$z7`-Rb=_aWpkKQ1AHYp1+~x2Pbg1jY+E^8&bVds`P1Gx$4}QTFZ%25 zC%={v^sB3FNG!OUb7+`Fuf?d5c}!cqg~&1c$?G@(-zUu2ke=~pCNNy8j-MLwEz&tW zm1xK(s%(Zx++ZLThR+kZ)E-<=_OZ^oq=3Tt4ScXb`*v4GL-kdDjqdhDq{ASD)*9%S z?o6ndr=&M#&92NvR#dmk7)N+{_H)g9z9Eb3$*6jKFbzXJkKl~j+b^;K{j-k(?YrQp z&WSmqn0~eq)>8o^eoaQ?h9OVmGKp)u(7fN#Fw^`v%qZMT0Q^1&U#+!ZTiB- z+5OQ-YZsu&0L3ihgrv(c$Y)5jooZ0Y-fHkh}H`CLK@xYiRGj`V2^aAi8JWPESx_; zjKRo^d4gZj;x*D;8Wa<8@!{o zpU);o^;-n3VrTIR?Q*Hy5zCFdKTL%-nA@D5#^H1uE!}#puOo5BTV?GaqMJVO1SU!c zQ>@d^{)tk#OVxa2;Cv@hLtoY(mNWp?Y6p?{PWaG17q%#7;>rz=X%*+;^Je1X)f? zJ4cQyeqxn~5EyP&iLx)V767p2P)@T7EJkB-yk#S4(Th@}dx&rx1yrq8q?jF@h-lOt z^{vI*l&gJjdSsqG{VIdE&#d~WfPX;zhd&NOD95}D?aBy3;91k`g2QA+6xK+U>6ym) z7)L$5L4wuSS`L%QT#dTS19~Ao2QX@sainj!r16zAvo(3{3j%ONj)H$2<#Y4Fp5v{~ zbV9|P!YxN}4TTAA0J)yGZYRQ}K%>-w5Lwx<-0W!H$#-#&*s$4`%khBdpP4PSNkAvz ze&w7y+nyz7Loi&TRd11KVi ziUrrwX=q=D1L{w7zTTCPFS@F#p-OJ>L8>X6}?Yy`$RT=DPA3GpN7A7F~jI`e!Rphp&4QTUIQ| z;<}eNMSFEd6kAv8FL^N|UqJQI8-N?H#%diy05OS;e`Fwg^noR_iklmm)n{D^KfMYz7gZuJ~i{zT?#e1u4IRvm0Xtz1> zYGIAIiiTVy0R1dEogw69v*}6PZQ@XI8d8rYy48{@>}UTl3Pv)JckAD=f;U{4nCoFs zv{nfGi?_4&Q3L)pf~?LzV#`b563UYJrh*gm#=l)@2u%|>=ROxoJN2TUs(&kYx`!J# zQ_$^Tq6lChb>)I9sZR>qIFxF68wWxSXh%2^QY@2iUk_htN6Q2<-F|u?Eccp<@u74 z1xi1w3}EEAKKWrA+W{z~%W_*ViRM+Bs)f5;+F=7u#TFb2E`aIc`u{2sfTLLO+;@4V zi?$Q*nvrZD*7O&pEMh67(Yg8n$fyNAEac5-t?OyhbMmq|i}WgYej8>%q;Bp>Ofa)A zzq9m7J(DA)GH6@v=3sk}D^!Y=l+37ql=SmbX_wYcyPng)N3=Uj{xbe)##giXxdTx) zc2`?y@}egei#$7&qu+3*TSnZ&vJr~Fl8zYqmX#4!awh9aVfw(O`Xp?t*%@p{#V%Z6 zQQ8(8&Kj*No< zpDEr)bpaV)YTvi1M8e&azrur#{6-)*kRkaH%jKQX8;z4Jso5V;vUZeq`ocq>uY2u} zB}EPRAasx7=zsq~W#d%Y7QxVkqutYJk=ji;{J$)F@)9y$&C)*HE#ku^W^7h|}QIX;m2CO^e(r|SY&K`eI$n-^%kj}#9bGI|JP0dr70B4G?#;S^fO&7T*0v{#kvXkY0wn? z#KGE1<4%!l(wK$ml?(hCK!thv;g3fNN4DRoR(H`2!7H&k-v4QF$(r&HUlReRa7-d^ zgFZwgqWC*@Xt&v-X&q?+?j7$#%-nU>CryDv$1{bCL%eHsh}9ze3kh-8kZl$v--fPQgcbxh&Ve*Ugt8hkO4R0mdmP zRZ&FF_2MIt4v7imXYr&x6m&#cA9lOha=rYrg`bqqA9okCJ-vqAzc9>e_ggHg1XlVI zifuQT3wDex=hL`^!sa%F{$hp&G8I7{-2tS7lc)h%zQf&vT$CyJ*o#u5j-?5GuB2g= zVho!}`>n;LNf9Pvo~o>kT9&$KZMCT}`1T_CxcC{kWvW3LWGJ2+B$ItzbV#PdSri~{ z{^I%xjp~Fk2$ASi=#au4>cA5;3V?$(kaPGMaMB`TTdXv`) z^ICK8q1N)F-wakgh&_on;KaB<_weB9Z0duntC*P3A?U=m-;KFV$VwYg*4ykG%(N|Z zKpZn+VWM{@wvbo%f#F%OZ&k{xQLYWh5+SPq8PAcI#F(E1Us5r-N&e6$58<_2PuZQL zoI$f5_PWW{6P&F)x-q>$gXp}Ljzq0gvj8!S>w%A~L>6F--oyp@pol3~_mxr4E_{p^ z66aDf=eN0&_>=4jzZMdL25pmBOu+Bx;Fg2jf(1rhUU_g52&OT-;GFu1Fxm56rdfY; zHp%>Pw0g~_0Yo4azqrkW1yQZh2!fy)Q`3KbooM$z`raClE1Nl3_Ejn|GBk)!x1RllE zfTC&Kf;gV{o7*t`K4M>C$)2Mb_O3`6b2w_Nph+@P zdt$zg9!l{wD8U`0AEL19jVwPsTss`z*pPTRq|%=ojAa;2JME)b+VrHCT}fFPf0By! zSH$t+Iaq3~FFclDek=YfH4*X#sex850M9*O%0-b7bCqro;CoU|Zye+Q;_^KF!#s7G zN-;1|4_fqb{p4J$@9F%px)Yyb=E}GRK(z5!5Oa+^Ag3~>Hqgb2?9`;ruB$~dQ>w## zT%>-5!aeO&mH*x@$gE5ZNgl zPne64;W|TgORO3E`u`*}bQeV}bM48zgW1FnWzN z8=wJP5F(yxjs-?k-7~i$dyj4LIidy_HWmu>Pi_Tvlkf)aj8t-Q5RzX@o|0&kSP2pS zdOk&;@Gi-);&sVSdkoQ&)+}}S58{Lp(S3J{4RFNAlMu93mlva>#P|rVTz^y=C;CL4 zL2%^@<%W;hUGF^kFUwNc|CV$NWLpf(r&f&As>-Dn>ty zD-#KRzEa6R!{MwiEAF8EQjUvt3E9=C$2+B4j=uCRVjGDXTwFYKy2T-MH(afiInk;| zlsi+!V(&`x%gzH$lQwIvl+I_D&tDEpRS}GEX#e=Ub5Y43Ks^Q%eV9__G$&bYEK$yu{(AJAOf}1w+sM3STbUxZ< z(Fa>qdeI5!#$53URXRHks(E+@8e`WNP%~{2S4^uIt6twIZje14wN`I=LhGdqxgn`O zO?qZr_zDGduj-xn&iPO7x*FPc=4Oq!mLg&fZwT94&ED|BT0gVwY{l(r@_Ko9{Oy~i zGBp)~M|M^qHl z+6x!p`rb=?5rL}mbnG^5=46@taN&&4WR9qygeqAX#$8b^>bi>9!`!N(*y)5ox!5)) z{*$NwQ3`1Y2}qOcY~~sdF%8fowYX4L`3x1n$?|ivbtuN4xb%k7#R%&NhyKC~fp@nA z6R2NT>c13CKqal+c~_T=$H4g7v(KsMd}80+HVZo#<;QN{rxMy~1{NOc1XYanU1C%#@?n-IwmfT6o9$VF306~ust#F`!C8efh(k*Tdkloo)`kMxY7(HKA-Y= zZJqAFjAWmPMUEv@sB>U zvbhxG6Yor$eZ&PzWsCrIyvYVsmAOMRJ@L0U=|eC5l-d_XVF1&qn(LxG#&uLi8|i(UFB^!HbGXKKZz!hZ=3@N)k|;1@lx@ zb+6D7m8Ib#EUh4~^pRvp$HM2)>YML$k3?#g#cW_|grjmz>Ptt*6>fuPcwLopPQHgQ zfwSc9_N(*-V>YK#P%iIWmW1c^eact_w)wg0TX%!c5qk=z^cqcB8KC95gW95^ z8~lcEFJCA10x68n;eH<4vdeJK`wl9BdSqZ4bcfvKS(n7tf*h;K54Yj0?S_lee>%M0 zxC1q3C(r6b%PwsaZ%4R0cXTeVVTw8*^(dR1w&Sp~b7?h3k3EEqwdk1Q?ZtIH;A$$JmH={{1ae7%;HnN--mUR9tWa#cJen6y<~_~YASZJMG;d`Dh|y0(a1 zV5CSV6_AVKX4B|7+D85seds>;GX30r*7{0JLjMpT5flUX-@7B|ez~N;0JQQg+s7<+ z@1D(nY^i0lJ6tw!otA0%bieDOc;*!;l!xREC$lrB0GG)M{+t-D3x}ZVFMTwGa}K1R zI`h>B@eR|s*vD?CM}XPwf+lHPx}1O8#h)ljSJnFb=kmvbw-uswiJD>x>-`4D5d8;* z?@tW$PiLcJCx~LOI8v0h+%YE7jl(~x1|paOuKUQj^^y=-Kjz1ku8@@j9OW9);#4+G zT`5G*!Jj9#ngMi3n(aelaA78Fqz2|&C$Xc2r)rZmSM~bu9b<&RetuURTb*ZjyERB0 zbpJv=Vy?{4zaIMb~;7$p?Dj*3V9hPsjgz@3~tbhFiwcR9i# z&JY~6LamgZxHIL)B3+rkgw}^@f3Q8NBP^qP5x`@+edq|;j9Ur_UoQT0+MCl}d5y@4M|B3bu2&ynL^N2n((WryjjxsKun^k5nb8V{xH)UqWVib25G_>0Xd=$&Xn* z38e5l;?ejYski?gW;Ug|Am1BZ2q4_7Uooz&Hb)Su7Gl1tF|m=oBJ&nGy1m*fU+^#$Beu+c_5@v!Nk>@Yd1tbT zDraGa9gOu&kgQp<2b@xcG~ik5cYp$oA}iO@5TnEaCP1hZjk} zTLTTmjZh&nPB#DNvBMc&uidOPWrzZq z8!Dikvg>JZbnh?YIv}exUA}X8eoU27KPREMrFhJ`k^~WtS-zI zDv*D!l`D`}RO}`X=B2N3*faN*DG~d1H6J5w14$`jSC{IiKsQoSOY|%S_#(?)P~~@A zcHh`#0YYUF&-Evkw{$zM);9?|RZ|ap=KtE-tOQ3wQ{{>cXrrs!_@PwL_ryfFJ$te; ztPGvcm$IQ%t;pB=!kJQlQF_8K^@f^S`wrFrL737Lb`z;X?u+Rx!!N$pI^6~+>#S$vS zPAM404&sSCj;+d6Br8g9x zydz~XmVMC8aUx`^TZB}<%UkDFwA&Z6-+!VIs~kB{5FFF#31K0g-)GVA&$Jb(UuPs zpsR-*qcY9`31+KFfYRBq6(^2mHp&)8mUw4y6cG`@)!J;El_eI+$(RuI=WZgyIJCC` zbMivE61e3?{4_Egd}koTguK}5UTlB71mMwPMGKH7ZTRGnib$+N+p!wfPSEi6P06#a1%kGZ)z-{iTy4m^Jr<)j6G5fR=b zuHxClVp$2*CS$)Mk%2dj5-*o;cPktCH?X3rO^&}~@V|$=H2a75(4h*$Ap{QPq;6Bp z-#BuA9(L|0%Bbe`pzByIq-}>XXmCyEgm|;2>}G%c)V@H{3*B}11-@F2S=vLwfZFsO zHZa5``6N}YOEqVh8`cf@*ZF12pm_#oaLJ;!jm{MB{gMz*e~5>xF!xlVz5%4W=@S1i z9M=glnW#?;u$?}>Gq`cv2ED88j?7bC!MM?=PYS4>vuC}}@c}av^u(i22gr*hAhx0a zfHqL-=Q})P{5~xez!p=8&~|`+b5-?7Mh?U5no?^Wi@91M;vr3BdHM8X;SS|f0s#E}%Tbs7@-mZ;(!2dAHko1QcFib{@ zAa@_d^=90OZ(a4WM6t`YWYv+W(+8`vsWX=Bb_8qZ#QbtOR&Xnv;H{RXn9O+I<=3Dr zIa)h{ymIrtLHR(O(!+1mL@F@v+{=o}2s{oe?L&4Q@@;h8M@@T^2QFEkZv=-$(j?FO zqs8`Ra2N&1>T!|Aoj6~7;3e74yv_LS|4D#%2tpY3rUZ=;C=D6skn7;HlN_lLS)oUe zCDNxU5zA_1^uzF*OKhtUE$?whnh``!%%+6(o%i7<&9zF!FcgDuq z>+V+|IVy1_T%Rgl$=O0K^Da%?SJ9M^eb&NK)*o9Qhsng!q|5>bH< zKPI`%`xM3o?YkIWP3_{vQ33XMrsmtGbQl*ib8CX%HlFOn0 zmHs^wwioBHjgvRUl%~4>PN`a9^2)PFT@BJI(T7-bQZY9%Co$(%4F%M;D zW9npkIdsjPwR!O!b~8*S2$+PWQm1U!`bVat1G^tHz9S(XCTGR>g?}84b__Z?;tHaq zt^cGgIm#8~a!`H2QldD`pRyz9i9Yk;QQOYd!fGBt9dXJI|LAz0fhQxX-K9yAlO(MW z(<%j#l*({y=6Zy@Hb|J&Bw+)RBTEuqSneHJb<{c^#$vHf*MN7H$#d{_gpjEkVXWoJ zz){oQ=EVZ>rTfyg5^Ah`c217TE0UQ!RSx_C%{#*1f@0_;;ObgedwNNT8m!BF!++;g zGQ}?y$GmZ7hKDTSujbK%B9zb9p?1tpVI!jjd;0x8=bt$xmj7v}Zvf(yu)OQ@3Ofzl%v$u&X3R53Bkq=C`eYs zkD0f9?XNh^)~9XbpF!6V)R+?PDYenrlwmgIQFiy7fpR{A8xm|J$ImKB&1lxul4PWH zH}Wk)Hkaqqe)9E7YZL+TE+^bCIMEiC1}KH{18SB5jUO+0lx7Cfaf7UVcDJ*IkwQnr zupHd{#`C1|YPaTn4%!H>PHX0E>SR~6H!2~`{Ou}7y23+?u`bix!0UGXsV|^ZEUfLfk_f>DPZLk4Y}fqGk)ne2LEsu{ z!|#*=czOJ@&V3Ti$!Kz^uMw}<9tf1+J)eDQoWmBa{bi0fuK=Zpb$hMfj-T5*=vKP0 zr6y%dDVi6CHWr4=D!jg6ia@PU3Un0Ae38koZ&658V{o&pR&0GT1!2u!-ZBe)bvmK5 z%sqdZc?@uKy__Am=iW^ALaKaJ%}{skH!?O>Zq^^@Xx-EClVfwf%;&{)xt-M3B6MaM zTJVaL`{nSVSwxNgdS{sbG&2uwwB-tR6tuc?BGTN@AL`8wz`*h)a7(f5)n?iFj+UBP z1Ujxo^VQ|opUpYT&H9d(n+*{B1-tnJ4u{!b+Dp(+5PPMd;v=&vS(Z1jrxjeyEs2p^ zN?~>|X<){&Yw3p~!ljO?ZM83+%ur)5b$AZy_e2uuZn{`1E5|@t!=XhVMyc46Hx=LX zk)T$;5d+NYeA)rf;nBa3q~|Vvv6BQyxN4n~ea&V4)vn1>=Sr!!Kr`sc0_M9!VmiQz z*tkpVXdZVre=#Fk1Ul-MV{`Ju0AH`HjCShYNyLh21S~5Xv;9}onTc{!Bvd-#xvkl> ztFlY7ZFEF4sN5%sn8j`ehlX+ z%iHj&#GLW@rxs^CZdU&v4ITTp?qLU-WO9idnw#*uE`|CduCG}(HNI8rZ<$=3@hjw4 zUD5yyywY0{S>XF~PJx{%ttaWZke+jPj~pq}Q<*0>7M|N3%GxFbN_H&qn_eK6(f}S# z&f6WupQ}kXxjD1tH_A64D@Rok8QHK96oyKHzN^Ei=b?rd>P2}s!}nbB$%U|LvH2DA zj#7M==Q?7PEFnhS9kiEZ$J3W&r2=w;IAaGoe^}K3T?$a9dWgsYm2RE@P&k^QZE`%e z19`i-=AEyj{TNQ1s;DUt@E<#ROh@R(=#crNsF!ZTVs6)0d_3S^*k(b)L#xX#)33IiXLxp`8? z2?!(mgOANB0s&HTwX4sk8J(V(vWJCFz~`XX26Yp>3J}!Fchj(B zJFJ$R7bG9k`E-f=t?AL%nV82nSc?txOo!WQGevGm^oAskn8&DyeBCPORjZtO1qqTZ z1u0(v6R1{z2GFrA;yy}IGR)*-=o7?BZj5C!S-DXz(d(Tm!zXmr>e&+xe0u9}=|KC? zp+d_CkdDH|B=`bv&Obe7&>Z%)0Bf3MrRZDKehJw5#a7T&Y_qf&(h ztR3t7A5_dDa`y5huLdIXV@pTTo($K!-IP@X6LJJ$21)3Cx|bf{JRE5O;g};PfLC|` zTs}!))c8=cm+Z}?kVrfY?^?~rumbEx4ZB>jsRaY zu@n*2=dacXzhsLhLlod`T)oIvnJC*|AST72jU61k{t^>gacSY9K@YK-4GN6d){nt15zR-)eU?3l>Tx2cZe6fH{tLW#Pu#t-U zO_5M+hShHKEi;84L50_eh~*m?;{7;)H?}*LaRmL)Bdf zH*h7b4SFN}q(~(#J(+4+C$3s4P5jZ4J5D>`cR!wSoLH$ToNf<%L)$Z&mlBn}HHbOx z&3)T%pttQfw$bY_YZsQ6<1U-a%SkAR;wb=hCzG`Y;=d#p4hZ3^b2iXnIfgQ5l7_qn z7;w+JW6Mkk`;Zt^%hdq?iDklhI6okis*5|~=F^YQNHuZ!Ke0i#fM}h^tqA$o?A6z3 z+DXik1D9Q|9ATuwBIzqB+*yxunN z-|gBPRPj&Qiv8vl^8k&WvkDO@_Me~<>;f(P&Ftz`)wPJoWM^ z4fhigzzpAvWQE^N80*oHqRV+mVKJo~7EPTWEO|xbjNj%2?cfrmqc0l==;`U*yW8W6 zBsZ60^L(!9wePFGInYP-tt4dFKqSLNpIfs%Er+6fSP358P79g(-^bd)n-7bn(zIx4 zY4xs7cbten)@)D6Py-Ng)y$qso$q22MBziF(U%v0sc3CrwypF;d+=aIfd?C|@qUwN zk!-5b=<&yr$sF8x^-S2n$j9tHBNpcKFvTaOaN+~1EM;yY(`aHfXh~l)f7Y?6&U5UE zk?x5ZBp@%}TFLXN+m2Lo%-gqX8tI2Qvx%nI2ziKL~#M^#kxnEW=kMYI4Jt^ydP-FjmSKK-n4Ke-kbHYXwALp}AV3;U6yk$Nt|J`W z7nQ>F7`Wu5djJ-y)g4t3f(n$Y&Bnr{l(V}RCvAEURHV}#gd3spRleF=z(fD*vIGHs z)yDThAlBjX^r&H*i}h#SUY4DmeLC;B%uMSOcdETID59mX!KkqDiH73EEENUY)iQF{ zvn9`tyoxzqE~70si&l+14M&+*B=NZ3;Maiof)SUGF0?3e$AV$+Ad11}clr3XHiQ^5 zr0v1ljwE(DUsA1!tAachVdPl8ms!X$~zdA0hp54@ET>%0)P~zU1FBaep5=K5p<;jxvVc zq$0#)+_(Y%IeT4=-4LeTH=TS$^N)MyQZ&E!CZ#X7;T~D%Die( z=&EtWyXl|k}4~GI^ut|BnbJpFOsO7Rp zNd#aA|<9N8%0p^^)fpV=^63*jtlYI(L*bw0mAztlVtG}LpxEc`1; zN=ggTmFz&KO#nEJF_5DdJ|%4aq?s+Lzi4pK&wk!@2e3@ZK?pXKRuY|eH;PQo=I-*c zsBTrxc-rw9WL0hWUX`JlUH$8gyVy(ilHUf5oR(~*NlTQzs_ zab~X8k!0t_bZ%w?lH_=bQ0-2&u47rhy#}4gG?4sy2;#8kg8yU*3I$C`Xsu+A9<~u$ zluw^Fv*(fsXhwamx=8W!n|Ht5fQ)L}{oVbARojR^e-*PUSP^|CL)+Hp_xtoikqq@c z1^7m?h)=ibzU@BMF(TeuP%1(|=&q$o>Re*d*E6(P?a3NEYGO#R>YMC05uPQh4qYlK zPGRL*aj_&YWCgBGDt1TzQByG+qNn>P^;7ek;iTKjbi;$mqS_~jhsLarD0M(+^5QNR zDb(Q&&tET^I2CQ&1lY~A1x3=SPqh&nLKBr(-U56#d?VsW3?|Y)z6@td)?cS|h99k3 z2wOchItBd^qk9PKg%(WRRNnA(4@TUzR9)VXt7dNZd|gpRhgq;@T*FfLZbznM{P~8U z98ErhM05!o!`W~(n?&ZoEk#nFduanaIS}Cm(S=Agpt0rMa-s6nLNw>+$TJnhFVBGZ zuwNqP?Q3ADBn9UrGNBO%3~qWdq5B1pe80<^*0OC@Ww$Wu?=68!2&n}u zkh)Gu)MDYw!L@XmpANx;VHR zpko7H$U7=`HUkkt$C5`gR!A<*CqNk?-=eoogN?$e8uHmR8&-n2`zjE2)V=w?*$0nv z*_36U%IoE`I6>VVWToUAHZl-x1dwf#*0o0K%#wk5lh_nXk+>LYWIVEu!g~id@ zjLiZjwEs5NYo2{rVa{Z!&$iKBOm2Xsl#FfB<0PVysh?P8Ot6S$*l1wNRD5^32( zsiy8Fjp}xYFb7;$tskZ_gRU&75OxJ$>(mbgb#X^0j_0Wn6zVuH4-*M2{;s zNh*o&CMnVVpfx9tt-_dV&jL{Vl8&#`zJ3OzlQe`3CZWqANR)BZme$>LYR|oaTyS;> z6=a430FJ$%zf6KPqNfVT-6wc=tGDvW*z8U?ws3v6*qk=s$EF6J327562t$hwo?;Jp zz;Z}M$Dtj^97<*cukYRLh$tQc{qp}g{@}TjE{NnFYu!3v;z31IHk$t zxRsvX1Q2rMYn-)6I36sTRou81IF+nXnuO1f+5EuWDn4ACcz=Ii)(1dbfdxIogd-Y^ zdKANt5g>Mk==Oa4aFvJ&N$nJnG^hP01derh_YGpetrIz`POlRuPb?S^_(FS((%Q*M z^oZ~tEfrO4+(hWFip@M2{fwlsGYnbd2Eu;}yXu6&$N#o$7=EyBf(DlIcQEqhtEb-m{ruBSrbqFI*BL%@pb5X%$=b2-Mcu4e_9=BfllxoHzDR6>-cI2vCdcJ5$sej`3_xF~x0@RtVA$p1SV;GcyII^q|CNFpDvmhR5hFmOK=$7w(@eii}&F7WaO zxN}W=1FlGgXx_6KtqLeKzm;*%0>J8iguo&)4}sSxhR*@^8tQO&xdHB`g?|8w_c!(x zjTY_6qJ75KXFa^tqO8rH6B?H)UfAgsbLbf`D48XE)SVmzxGi@C!+p z-a^vU*C?pL&74@r>~e%pA>EZs*{{&JoWDRXKOh`L;sR+h)PEe--#`2>-wK>U3mp<) z^8S;j^}qg!2Qqqmo>-1Q!+-v0GB|LI!+ zOVHl`_Go`?rz0EKoAOGA&A-dZf7~tUEAZL>{^`&a>BF)sXb^afo z>Oa=@f8u+8jspKDzV{dE|HSu~ZTUa#`^#hbgYW*I_Wl2;gziWh{xupFG12WUbH|$DM~}dWF!j13jfJo3Jv20qs?(y-(hkhB0Gzm$ zdck$vqXI_XfxqKVL9cIHHa0L2}a?p(lmL;p|JQh8Z=;bw0gAg+2R48%hi+8Hy1=e9>G_)_kHH4 zTtYSUKn9VvzaL+gQD3&lYQ_tl(QA4Cb`p|jVRNNcVTm%Bh&NiM%?c(Mfi+6UgEE11 z+-*HRGgV8wv7iL`w5y86{7(ns7JwWKT1WMTR2oR_jWY(G)a_VQAZ(PTN|aN);YwM>!@yCV-k*r??boo<#aND2}(lpWw}J8m?-fpCdYu{utxAhs~kBfzVdW zOaqFduB737TI(19L+YS>LZF%uA|j;YaMqNuYVc?G;ROSujh$WlzbxyEOhE5q$V2ed zl*$3>5Df#v*;QYd*Nqk?qAqlfwYZr5g4-^TDIrKOFx687ndIfFSMZtJZ9?mggeVI2 zceomEnDmR_JvIuIf7k6nMNk+PwB(S=fIk0i5g(uOR}&p8;_;a^qwg1>IX1rB17k_A z&I$EQJv~rD5ZI9+7&XbAzEgMm%2}u%uAt%W_9_S234+f9qJ}2iG?SZ|7(d>kOp+5;h+67qkZ`lIZxWedw!A9rz$%ivvZlrVE*) z8yL=zz)8yRb~AtVBtJ7u#=}f01e3AcgDgpCBV)25?AYa8?y6&5o?-Gt=wou=NqBRP zOwP*iN*q=9<3twtBp5b9RPP_Z<4b8xO$J)UO9`u|qWdZudstq-ruG6#3|V3UZGJMl z3BE=LZTg)-5i{eT?kHW+#(>i;A8MlO+9@UO5Jgufr81|$%8^wl*J5%S5}j)Oj7^jm z2M?h%5g0nmJ|+3F;_c&d8|9dBhHhvojw{o?WBy@R2N0;!f}qKT%}wLr`rf8|b?#8k zCc%Jg-~s${KE=V4Oj|_R`g-Y#t~B=nl&(Ny(7{$q&tZ<#PB~%#F`r8$CC(H{MR0XB zmvXJH*v#e#bPs-Sw1!uEi*-aY#_M5a4>J`X(vVAQ0Z~8J1Wfn%PswOT?Qngm{YzU; zckpvrjvXCA8P&dE5(}P9*gHgeA%3 zD9@iH0+X{qF&lHCof8hgFGwLEF;1ZhMFRJ@%y+`i=YlnpVq-8E3(k*A+-{t*W~zpN zHL!p^u`T7U>D5XnEUx3xPLERUUjqTJbcpv$euMyNE!&OHvvC_~M;1^0@ zPGGJ;r|yu&b%w9^4T1DuMt$Lue`xqvyFL4%q2_G6 zv**D&H0|9X2V;`gbNHxjC~KIXgwuMR(6RdcBNT7|Fzh^p=^d9f2+TC>@*EhtwOrEA zv!-=6`QTp5^PmI0q297voPmK%P2YI%xCH--!2OgO`If3|Tu)T@Ec@9%+#?J7IE8CY zY)oO_h88#r*gy2e3uw{0aM^HVhw?Uw1OOUb+6Uy1%OIvhKzOtdBsqEI_Ha@k>+G%r z!fSi%An^5!KZF@KUdy%G)nd#v>!{XnZJ7UlA*WcDua!t#kBj!uv%9f&dzQca<%25ckBeD(eD7zo;%#fe} zXm*%ss$1MU88P`;7!J5SlFYz-%wMOJj1IR;qDb-acAL$XHjUNUQ#0GD z096{wC9u8#l!tuSbEY|vWdzz(0HrGf22vgc!g8U`dhWKkyZW_@cF3G*I+-lcdk_Z# z*gZS=A9QzY`}rXc1sEJP4mivKlb=I4yi;_)x)#)G%7T22t9Z%qE9HlDb zGCGao5t9&tg$O!YriNqVw}0KX2jF8^&(h4HYP!0>L1d^NAT9IQ$N(c5WabZ><}pp{ zRx)M?vP7yiu$CVcoVW-F_S-8KD3b&Aork~L%1QU&>>-XU=5IiK2x~WkdLA)=IwX?| zJGS|tHMQJn;fqla&ql9unh|B-Q>MZ4=IJaY)ChoGFfAva0HsGPf!dQB;gk}G{)VDD zv_SR>x(MhOX|NbaZOSC(n4>bQt`wtA?bQ8=36OsEs8XT5NGM=umTwC_l2F9cq5E)v z5zTdimPB}yvpL*0>UvVfkzQRr^{W{OT#NllZ#Cz3IGT{9A@$?pkzb!k05oC=tDSAddeP!(``O}muwgIcZzL9Tm zSvYV!&Mk>jes?u2uYC9lABiS1rfBq;H~j>C46_yuOZ{cI1=leA{`-op-sIW9e^xHv zvtCPBc9}<@_oAJXcI%c`11xZEj7dmcY~x2KxT{T`3cyE-26i6L z52H&0gb;`QXA3d&(BEJ{FYh?KJ*7toE3tz_+}a^Pq~)c{i@!XisjMJ2-G z)z7)|;7!)M28_zra1VmB3mvb2xOap&r(7^(31t3BNDfG(0^-Bxx8;ioBNbx1UXe}oT%(WgH^A;{ z)HxOW{Zcb4tElOmiyi=UnKbitV<1y5KR13oG3)`*CJrzteGi%kxtp|N4tBwj0H67|&6j zyNf6s^{(-Hi?~e-!$bBU3RLwGg}{cvnjgF;scp44vpi&krIf5L`b|ySu$-crSL3s@ zjGPf!U73A_B_9hp!{F#i$&e3Z>W(mP%614O!FHtX8=w36b-EQ0SQsXvAIA-C2OfJyw-!rjlcS&7Mtfd}xD?xZGc7y7>!|Am28p`CHOVn+(n<=O#ec;KY& zA@;WLdN0~~e6^?}h;V-#a8snJdpod-9YH^XFdzuc7r4o1H`N>n9;!{c?|8!yO2AYY zLDBgz+IlWF_Sps=w%r6mc{C?xa+c|n!BNM4K90UFhX8^yX97hg~d$_tVw zxPfRSa(T_Eckk_EQw`jwa~N7~uWkFTdPHS91y`o5XqUpOV>kz>9F8#yWCB=BDe4+m z4v(SY34fh@z)G#YS*F2Yy)On1tr>=OExg#E z5`Be46G$c`QN)GLA-W1QNHuO1fQ52es4r9G@dfn&<2DD6kNeEJFWfusNH~e;9})c8 z&n0Ma*nC@6;T6=0f*TG9>!aH9? zSbK^C$h_h+1e$%lhX(_(w$<)2aw3+NfssiI+sQFcrtmMP+w~v|sRa3Z!|xWGb{<5@ zL^Jj|mF2+wvrSd~i~Y>X438Uhi+k352Fi9B$=oacvmZVf1vGw0W-$>Z=R=r?j@H%B zca_bmL&e1%DKk~Lx{zt4?>ya#NV=~AXFwVBYwp!3Tg%Bx2@|6nlFF5ze{SNg?LUxT z$gDRkML+*%_yTxeS7o!@1qscW9D2p{9oqgjoRW*J2M=19zx6oj{TxtNE~r*<)PaPH-L z+TwRB;x!ky$nefV2Mw$5Z491U8mNuoZUh>EfD+(k*HMC6Y&-D8M!$~R^p(8fUk0$WZYq!9goH)6iO^-Q* zu6}LHbLzwCRdGUyqtJ)bo;#eIaX9uLnM>xf@1h+bb}8V)4GJM7+5DLMPXh=0NeJ`3 z*X6cI>cn-ETk}y{?%0Q0?9WbY4?K1oXB=>wFu#YOQ(S4#F0Ii3A%U~K2cyTVrjz}g zUvJWd+l=x<3=9k~n?c95qk$uy3=R@LwP7RN{9$o_PI+@V1iQ9{q_sPWR@8JNo0ob~ z+HRGul{)S5UYRX~NKY{9e8d$cg%2sTdAXK1C+T^`9^W&?yJSX?CimRD{p&@#kY6(s zdCKa%jlkm(TlmRZ2rpIVHX}*&^oi{2hF%r#Cm)f^?`J14!sX`@F@G!T2iv6#&*_8F z7lxHmO1md^8^s`*j{CV0vgSCke9q@~4f<9I_%2F=B2`uk^OcoQiZ4$nC7wJoGWeFt z83CL|G@aDOMqyId)0E@kA4R?!Th!)vxvAD`MBUG;&&OWt$ssa+v_x4Ax?@kV)>jxP zFJWD?7Hv&jW$7W(X)2f`ofi-gu*RNp8<}`>R7Ooo+fRcha|}4&8wj_mItqekful@E zEU7Y9CsanXs;}o`HR)D=6~cB^gQnPDmRjDZ5NTtXoi|mUYd|aK7g*S4B9G3M@51j@ z@w+(0x#;unH4^Y`5Bt?IP9grPI#*_o>m(Aw396l3wgx!PLLvrA4kB+L=TYb^^`PJv ziR7O=(2wX5P|`)4n-s_O#xH8N24w8*?WJG7)o-o0)(IG3U}0HERu(oA2ktn)Q;Z-X ztgwE+qqVTDwovR|i|1~aYbCT>Ja1(Y;<0bmbL-4mabqZQJ0k$+T-Bah%l8I zNN%B7m8`&6h1=J7ho%Ebf*zmq7eXOE0&dt&8vNroDr#!Zg+KJz+&+Iu0MwwhZo2%p z=4_>J5RNKM9hpP^GvX^V*!XRuS_4{Mv5lTeJ{mjJsXRUDsZ>11;10sW8m`0(VQ++1gi@NuyKx! zB*ZI-fhM54Gt1qEZXh>Boff`uFQj@qtxgNo?7co z6`)u7>N$Ec=1-ukCU1*G-L&1IdsXa7HpyPWo20;zgBzBsInCMeEYc#G=C&SE{sObq z9fE~xte`kb>M5WLd?3QQqE5#d0>*%XN8&&imGbjdWjdjNJ22M$ZQN;9EiK{{07l_8 zrWCWI@@!pH1A4YI<1{qg87w3Z^!Pdddf^J^x0;M;&g@HA>$|e)e%~Nz1q~*FN@H(w zHYi%v(9t#8wpPCjK)?ghARfcvA^h_-N?X$aUA#MYl?&z$Hs(fpU7rN0tIrd!*>}TD zUP3&X3S@qr_n2*B_CG5D)9?XeG?{Xxc4Kehyr7I4r5sje)a3_>Z0iHw$mdO;GM-H5 z9XNGemU+4)H`M&m;ksBmA0cE%88d^@C>A^WDMl1XPGp%g#=sh$@O0_D#h;khZ;%)c6$jh6Qh#f z%XGT&uQ}38zujA8scvf_9+*Ly@8M{cgb%A`L(E>qUWFnvPzVk$TKqhDxNPEt_r^AZ?JNFwcuy_qrCl)>NynMq;^FI5OxBT_Yq%F{{IwSkp znR>j(tDXQLxM~lMj>ezLFl^GQx-@JBW`se^-31t$zCyZ*C4F6|`v=T>bpnQtimV8a z2qZg0wtR60uZvMO)!JXmL>E-cWhpm3C9pci6c0GVpCJD%G9@ityXj{6rQ19!iN5n8 zsrIuu=4#JzCJoAy^#*2u6h3-=y;WU}d?-HjRnW&XOcDE1!ZHC9<6a-sC>48Up{PG< zqv29uB;Smwc(^-9q#D})>>|U>K*1Zg7yA*5y;YVG{4yg!pz%z1nWyD^wuF1LFTFCQ zbCTXxr$d7mvnwmXPDe$A0O0T;Y4@Maelu+4(MXwSGAocY)p{1m_NK%8+mUnFTZS7# zgN^=#*NQ7Gjd4OWvuR*tLJYx8qm9i#)Rh&J=Bm8hp4h7_9NKvi0AwL}?<>yWz2Ty# z`L8oDcJOLD*4}x`105o+mXY*A!^2f$6#ER*eH{yGYBWe;6A^%UXd|A#He_A+=)^y= ztti>$V(v%U9FArPFt?v#PF}1BeiR{C1V+5@uMoIMpcy1K$$HGEM{DAuBDV%)66Eje{XSf9wbSCHAvfx4MrOE#q8NV~nUb7D>( zZV-<3Vr?~IwUtG;*~J$7m6FtQ2r_KPk9O^h`!Qz!z99Puh5X585S#M7HvQzp)SrttsU$~L^4IhS=5JjFXC_A1NjVL~TDW(qUR5p-_ zVTQ5joNQ)oC52J7KGQJcU1`w(^&8*?BAY&PS5R~NI?X?lVK(XWZUx`C$?2^ac{~tR z6SHr^6U#gMP%eon>7^fZMV2(qptCcM=c7ZPRKE?7ou`5!2@y=g2)Cm;5n07)pmC=( zHXFRSOF7^s6H2Jy%|ZD~NrA{O5WbP_Qu*m%z7=(7ID25zVL1}vV^I;^haJJ>=D39~ z;94g48a&Cw_H8H5H6J-_Ne4&*tVVqp>dq>N+`Nz`U@J*>ThKai-?88o711JZUDDXJ z@zyoxRn9Gp5C2q~O-YIH{Y!}84Ewy^8M~{vSp1VK6Wyyb2BX78;jjaVug>~grN+wa zaYZAHo)6=n;zO;%PN724@4C`>)z&@%7p`jw@kt%dH;It_h1umBDO06t>Lz!h;CT|S zSuA)b`0qoHH6N)j&O`TOstA}KCZ+^Rq3`;(uV#7Qe{jiO_LSO6{7;S*K)#v~JNg-; z*K1RDP#d()d~}&RHL%fU^0{Hj81VZe1*B~%_N@OZYOAB3M%f`qRi|aK{q|h-Zqw~P zBN{{D#L;4kR@is6SV{&RQ~nnWy@W+RM~i_tO?u#t3xPM%{*8T>s0R^;cka@HwQtRw z-ahkt^q9@yG)7?OMhR0oTI8c}wN+iqx*m4^o@EEKT9J5>Zl9 zSB!qKauAg941$6)YiqgdSVgd#AfWgM11{|lVlDVB(%#omM+)Uhat*JJ@sUT$m} z<;mL76>V}tis>A>oO8U>!9zJMGf7);M@PqE zT=!HQsLT@<$P%1@L;LD=Fgfd2cKZ2W$r#yG$adChDs$F0?%D;O`oI>PNi;O^Ls$l{ z#dlX_*Rc>3S;^r1K@|X_?D?Z@JJ)6luSZnOz&RKBo-W~~BFFx86j+(=`3!=boZM7l zsqHqqNeNpC8^H4OL`Gj^Y1hduo(G)PiznBOlCGyeS^VbqG}5bT{C1@_%#iuf&W+*( z8Po-0K|hPFh0}W{9@AZDsHYuyYc_;erB$A(NZT9RQ%^~$geJ*Y1^?F)lcLVPn=;w! zTT|AAK7Di$0&zdPj8@aI`{68gHEzdc#jNC3b%wcd} zs}dzNe)|zVn_fouM6-)#Yu6op#dmA9S3?7}<7~v*rmdI#-PKy^?M>FE9s8|pE#R<+ z!s|kZKS(~BA{fN^R685XzqlYC_}D&^wqQb&?e$LcfYOwWoab1qq^&X^+4(ae`r#4+ zxjfG?ema`l5brwY8W=$NoUb5}6ZyB2B3HbFp!S_KqJ&)`Y`r$2q6(JRq~?wfD%yf0 z6$XVtodl2+2elU7CXk`Y5<{<{$;8Wemw8SIVVxq25rY$R z;DZD7a_q#z#+Q*~E~Fd%BW18&8WNo3C)_VDRMqBg?A&_NfmE6q3y`{V#~_tZPOXLP zYfK+%0Q{X*f~T7+1e=y<6OS#LvWL(m#7jkatQ{y@gk^)Bg?q-JN~Mr*jB9piC3i61 zza8fMsQ0QNC(}JsZgu%g!VCPEi0m^&C;A zWQt(2Z1uaLW|>z6z~-JDTYPTs27>SiOu3M@pmp!zz|t$pj0pqU!+(Hs2T`&160e!r zC^5#nez4)V_Y?66SVNnX)pR;=Bf4?I0TjZYF6tr(!C7ZrZ|#btW~(tpTJ%R1XX@7~eO`fWa zVDX6r97A=`z>i`I#m5MqxK{aJ&3$!M1l!#FC=7Z_AY_AYI^y@;>`Ln%HGFKBb`A<= z=;nSTfOSydAziCi<#{2Lkxsp}dewnyxh2jcK&avqc4Al)6HKH*t@s8pk?25`ys*IzJXT=Lg?B z9M4O~tl-6;w4%MFnsHxKwOrj)d@@px zB#RqGOa^c$%=TC`13={9ozEffWihK+WVuc-7V34~F1DjA?S?hDcgC~F9?UA-b? zKT8HKYT6VquBkeA)1884w-Feqk9w|iud<1ertlXX|fKr>hU6olU zB;;ZYOM06FqyWPoRXeqH`PC+lR&=MIjc7xI@-pH_jbW`bx**EBpA?Yi? zqV|2>bcZ{;1xe90@>Dl6w8Ii?>VFxx*GeD;5PWu5doL{4U{b@}8^qvGx7im%w75Q!EyBG7YCL5T8Mklorm_cja}` zgiX~r0v!9Jc}sMYRJCg~^<-{)*9CKzp8^KJS5WV`-**FsnabL}w)pSKN@s$Im3;k) zsSEoI=SmM);J6VDI4cE1uj)sDlyli2n(s*fS_^8;oL*}wsdr+ChgU)Y#6W{ z-w_UUOLp}tuHS#QNOJ)u1xi1Diwk_vilDQ6^t2AAKbl7*?ENc1 z_s=IFq6b$8Y~oI|39bN3Q|(9Ghz#l-yh?}LTl*>hAdUU-WcdDrc;WkzMPp2Xr3}Y0 z6mfQNJe{crvIGDbkF2$c52M=Qb}}Z^(*hgzPi%2(|5zu zPU+OZy)FG72-}Gu&~Savs1WO^HTy)n_w$?cOXO1m4o@Sa|DmOR>8lUTw}_{!11C^- z8@(cS(t4Jt!=}o&Q8Ti&G#%}4mlpEMv4EU4aP*okSQm)z7dqdIj?-9V5hLQcLm z^aGzI%3oXnDAmjZPq?kw-}FJ}lp%#2HBexAeY(S&( zy(=`v<%t~_@EGjger0=p0k@-^d&K^w_kJxSN&`qkLnF_32KN@7ppgXPIn<1ac-`#t z`E&Y;LL26*n$5I;bq_@Zc*q&N3lv<3de{TrnlnO&RZnKsyk=-!rE*zW^T$uccHkfpCrTx90!*Nldc2nrW|CA3Squ;6r^}nzIl6QUBa>k~LGN|A)f8BoT66xCdye zH>8ZHjPI+lazBOA*lg5vQWt>6~wSL(wQ*Y45yl%X)-EvqoW%r7YQEQ@%ZWUeqNY|QwCgbeHM zaBAgn>InpR=A36YZ zfZwZm%X0R&k?^lqf=rNldV1p9%E3a#>x^H8ol!o#8hzPv!&Y>JvvL|LPF)?}?ovHaZ=(E9|J95Nm7h^UiN7 zbD66U#0r=eUfxAx*5ZF9Yx@!Xr(QAycFrg;`r{*%tY)9%<0$doAIt^lcEu~og67`n zz@4Up&-{L-;10tG&Fy&=hIQN@x&6OS;NPcG3Fk4FrFyHhWv)zJ43ic!F_)!7x5zXj zDq>BnqPGgZnpzNW9%z)|ypDr8fTNytd`N@fO0VB$PG6LnNfXEJteb2gR;N|epZGL+ zgU3zGyL_~y1)-rC86COOccR6c0jJdzO8 z>F4hnDFcEnyRFQHK!LZZ{3In`15PaH{Cd8HAfzv#{P%a{E+t{ zIdyz#agt2?_=+G`KxhRihB3XbxH-Y5KSnNri)Sp2@3sZNZMDnC{X7mvaLVQf%gP)G zZ}6WzZ*Lko-zt$ho;hJRku)?kJSLQkV*@j3Rrw1geEN|oB;piDI(J~(EvosysuZqX zeH%el%rB$Fjml&c)*Eg=1Lu7nm^3@}Adsk65P~M!ZB6rAJ2)iN zdNv0StcZf>7oW&?;FxA?Uw;t|08IjRwzajwo&|S$9>n{d{!3#1R;>V``AfE|0JhSZ z4DP&F1>sfrjJCir=0Hb`dpThvqHR!>QA3CO1%4AU0&nW^!TkVoK;n37_xZ8wR0gsq zzyO%+G7K!x$g{RGG>}>UIILhL0f%)fCC;^;#hq!=ktT4%SJ#Hht zqGAkyy^K&Vh9E;%TA34qky-L{i4HjIOJ%NpUV9(m;Y!uu_b97=AVw2UAOJF!w-EMP zFJTLSsF(w-5jxOIT~F{Q!Y!40uX{Lgw*G0a{kk^E2N0J_7KjWrwcRQ_Iv=`1;!Jf) zL%HM-P8?`fp32M?@swdhGxkjrGEEd8z|S=opbCe@rG!z$RP;rR*S_<*w>D{O!FtOE zO6t8CH2t?;7ivF+GoIPgu^Hxa(7RRIi~l?s|D5h0TMg1hon`lYpH#8#G$G%Y$jLV- zWjEm_2?PJk%ILM240$*jj9vPXMYd4^XOo;CP*pyrdV|>T)~x;kwqpRn^g9V>0e@XVVDaSI9?cD^o^~0xpGYB;6DN_Yw0f z%)N{t{?3fAL3PeD0Qnz4%!3tUnT|oeh)k2OQ#a0I%7_nr=crb5()+j{FYJ%TD*t1* zP*Si0Fz3vX&&efnMLv*R8SfjMwFEA!@CXIo?x)1&_fW2P{Ib%myRkPCZy9TGXjEsn z{y0vcXvA0^3YkGwZ_p%Cts~uS&ZDWt>3(=K<9QeRMgUpG2Q+bEm%wMz+zmBUP&UNJ zBm&@H`-I)Ufmm7f{nt?d*Z}gdnpHg`huFM6&r6w)v-UfWWBy(A_ep%`H>rVgrd@haP^lt_s=J= z2v&9>sgO>aYTfymCIcovhunCf)<%5PX%dR%Y_(M8tb0>=B@M4s#X*&WwwL@wc=*i4 z4RaCP0$GAz@BGk@(eRuTfQ%V%U}_X6PGf&oZ3VSPO( z===KmpzoVT2!b?lc7|>s@*}{V`M;6`Xd~QukW^TWMxe$v+R*SYWrfOq)ZPqm2Ug6y zh9vPh_pH*X7+>tqLEWHtisIZxGB$Go+bH@T_3BU3j12_FozN2<&^;`anC5zovdR=U z2%%$b{dd-h=quXc7$!Yt+9a2cxOjLqCbT!CcVTx<$v7+A^qc0U+8(dO#cK1G)L%1g z^cwwhseYYt0D%&N4;Q67o)cD70dW5_Y|BFuwax*T6>D@rb zgcDA0tBUR8Mnl>_GMEFJ8~~yR^bRMWcS^n1_h^=*>$uUEGC$9 z^0X*BF?e3pI&3Y+H!O}oAC9N;El(Yb-z$o>auAjp>T0?h{qDkDA$|hNTh8;yzO3F|B z-BiYNeGrU%3Y~rc$dgL$jk>q%4O4Vw{(x3W&c1(Z@Up#^{OTvXYgPJ#F^Sz%g$5Kc zkp6uA)Q$qN8-%jN?i1GpPi#&FCxs1@I(dWJSvXbj3rYlmemR_l_x6pmutm}3q9J@+ znKrp=|LyIbn0xEAa5(C3)(f|~Ig!V{GKKf_RKuWeOnQm`#EEh#1eqmL^dXN}Fzx!)I=kneQhy#y$atUJGy2VTFq#dH6kVDA!L?^CBy;?^ry8=b+a7fD&br6+q-{GTgG#VwZNnf1Zs^H?auc4>FxOogW2XAP5 zPMmc;_BdVFr?!?A?4x^3+O7>n9NR10Kt%k#Tv7K!|7g|rOO5>bbo^>@`VkfFc4W~+ z=CH8Wx{tjOl<;bmwjZCQQ#K>JYdwkk!0~D#LLs9x-$rX8%BE)#e6Nt6f#C!ozyA)D zTrDES>NPA1A>4uIn7k0K2a^TFH&Kr^!he(;sNRmM0Xyq6dlDj5`fjDegSKbn_01Gj zF750$6=#76JN=K3U7Ze7Z>dmayGAh4=YFC5{-OKGI}th`?g~wleUZ%|yhYL+;D;uv zZdGscS&XMEtF9hH%AU&R=0r){Ua4<`QF)oYHYt$xB=kjA1@ChJkPu!JT$5N$WW;0u z#&wKf*crSxRb96xoFu$dziPk7mqAA7-Z3~bLup#)xKnu`=6d*6RMZ==uuq;JoK1`j z6AOXTwI-Hj0D8=-tPBv^@1sfZ;9+S0k$%%d?VkOHR0yfSxssM=J<#ri8jg52 z>5pehj)71k2O@8DZhX`Q_+R1NK!;MmR87GNHjOnuDoOZgH5v4r`|Cp<%+)$Y*$>?0 zKM=U#@M}Ld6(JC!pA@=thAEbikZ>_{a)*UbWo9Ro^gF<1c%FHuru&cnDt~FdU()>o zwLA#frl?5Xv3ucyo{5e*S|RB~iU+zIBBP`<J;*fPV}74 zQC3zCFEl9A?T7n;=ZQ5$v8*ycq-pq7Q$NSi7gRO81w*C;v~ zgi!#GYqg*Xzb8CHW~B79I&}M#yqu24#KqC^r4@9-^|!$b;5e*`022OV@!{{rVC{)#d{I7j0zjG(hPKIda`7H?_&?iI4X;`C&5Ir1n zDF}HHQAU4RMpa*C5|po9BmJsClgVPdaL9L3jHYh0D2%O8Ya$%R2>8-bL;lbHi?9ZO zQ)_CDSBz<0@jW`|xHA>ezl==(ew9i>W+9}Jk90Q#9ctJXH+?92MCB&X$8O)54UjI>-ki@kzu%P8g)75<#8d&eRJrcN;}S1`y3D(5hz7QJy7?_Q z{5z&ly_H<)e1qFogBRcE7P;faKFw6ERUW{QDQBYvhcg4L-zFMOZ$zhKEH>MW^I|8@ zE>vI7&PWmc17H0Q%?rF%gaX*<>>}6kykg2P#@~c*k1>DZ^oF=duUpiMg_r@-_Nw%R z#R1`NZZ=VUT9rN16&53n+TU-9GHADm9O4&k6!LSkr}c<*;Ys6TDIl)$ zemdb435>U}kL&V7>6o zhvFW^pMf}3ey~%|c^M|N1b1@+?tWf)zv$mklmAO*feYlDc+fV`OM+Ij1Qz`x6EM9i zbc)Y!tBZp%p=FHam6h9%ZOej@sw5)-!8UA(OU76NJ>=DDeFC@bQCB*ccojA0e-8U4 zeArVFr}w~EXaEm+2btSyieXR%ET$lP3hVikYN?L=2{G87MCaSlB4vOX>VNeyT-6O> z55_qJ^{3eenXXP4Sf!X%2)Y-H`H@xn#ijtx6|BFsv~+xTOcq{5@el30+R*$5W|GD; zv+UVyYEsaK$CrrR)ccg>n=yweZluF2Fm)M5DUR^pzZh_{3+v9ty>~O2ghm6#8?)}B z>xj%vGIGgxdJAAoKi0$LhJ7pBum`G^Cv9o$7D`Utv3kBp8^9)7zvV6bL? zwJ_7~o~_~}kgMV}*BYsl#CP5Xjd4bS+LT=g5SPo zf*~E7)Tm4c$E5it0};NV8PoE|;4XA+Endh%klb}uf4Z$xC106S9}$oO3Ie3Z1NdXd zS{56&MPuU0R#JL=WO73b#8Ra|2#W0UD@^ zhgmzNlo#!myWBW5fnH}f_W`ug?^W0{Eb#E~j)H~gSORb=3Jr;-C_?78dwWY~FLCdUNJS!tQD2o(vD zWi#^PpDf>g>Z0N=J7lG%wz6)Ls}~869Exd>uY{Q^b$s0eoG=mqlJxGRA~P%_gZs8> zW3P7DzeY3b5+YV>aZ%r<`_k!s<3z&Ul*=;eOkppARTCfs*VdUsQKOE zfa`H$6?Gex`OfA_3_EWfob6B6#x0031@-g-vdYR{eIuK;@oSr3`M$RxvsJ=Y#tBO= zY(I(z%JSVErH#Yj)t+7UfI>fhk31rPm`1Ir=D5LYb&zsB<7n9NATqj5jflrRic~b2 z=-l%$Taje%C~jwZWm=kn+~kZ5^uGqBjTRXbV>1C^0KSHM);67k%S$Ie7&+jkyfON? zcYy?b^KpKt^g>YBr|CAS%=By%IG|aXE}$MRp%g&bucD-TLL(&>1=!Ddp+PnQDg)!P zTkXQp5~xwUhu1%*fhw4HRQTmnDuadN5^EAgi)_sD1hrC!$ts-D{fjw4Dao5!KChZ!x_#oO4tz9IMw8PP2;L#w@ zpL62hw`>SK*C})?hdBPHnnp2FNX^|YT+>YOO33EUDJTdM0yZyGMcMtahS92OQG1@;1hAhI|6?_Ql)pEYEMT2qtQ=h$x_McApzQiD^PU{* z5g0Ir4mMp5g&g@Wzf7+-WQ_+&l9~NSZ0qm+`p=F0|3CQs0snvdy6hp{il)epBzO(L z0|vj{=g=kuSfP%)qD|AV*2VQ6jli!!6-q+$*fjaf{<@IquYdf%Gfn19t-qCBD z!iQTAT^S&iFFkyM2Zvk=zt0E(^QEL8ocub+M3Q_0|7{TY55V9sB23%{9Z#1yf+bf?xo$rxoljLqV$Sral zN|>K1G>}z#)4W?0UX~RHl6giAIt4%HRfCt!qQOWxBG6uyZp%S5c{k z;j|OrR(3E?Y(6?MzUAB_?counUM3Aty`FAY$a=cJ`96vTXLZT*Z(@5KV<~O2YyZ*5fz~j=5rP3dtol1l+8U;q=QCE!_XXS zTdI7O5X`oOdtOiy?^+X#JTQ2o%$}~E9P{oq^XP~BFh>BkXA2~{TOI|jYG4(QcV%~r zp6Q<$1gY0aHth<1MNT?m9MyiI_LyBMw{W@5VQKfM!JRiPGrrlUK}y-n#9j6O9oV$pH~J&}H}+I&Gh&B4pLRSE^N232E?Cc;_2Uy|eT29jX2aIFvLKP}K-4UE z7OU|^pN%v3Z9$&u4R1SWJKwO*-8G8PB49aJcanoNo35WtuBiwXJt|%pWU&__U&_vQ zq_ErLJPJsEJ82kZ!Hpp=r?1-gGJG&%!!iz!wHDE5Qi2*ER;T(PA#AGW8Oi?&o^SEb zYUa9lmNE3P&s&yJuuMaG?d<5Bx$aooOr!5Qg-wy(XQZgkR8+IPhVkWRu+bSKp85$6 zlgXgN#`LYf;Dx1nV5N(P*hLkpnEVo(!n7)Odj$0NY#yI{=ufsazb~EH#fly|K3n8v zL*&{YEpWF?GOz$BGD21Myqew}lli+^|1Yfvs7GHUX$!%^71gRu*+{*KlBG1PDh{vs zj#%5*v?F$4cwa<$it@&&ARRG}&G<=XJX@G6?7Jlidp9vs*L z)24ja-esc-$k^Uqu~Xu7TvtqW7^W0>K@|QSAJ=y5b{O+EAFpI49nwR9_V{Dr|0FR1 z{^Lvb&B8=GKWgj+wT}b1^rHQczF6D-O?%BFUm^i1>ySQkVzdG~s^t5+auMpgRlWII zW_&5Pq>|)LsfhIMkuPujRGzd8kthCk;D~+TP_?J3J7hY7e zT}bC&BEtztw7EY)9(BRHK-Y}2_|!^FBr>8x2?P$Q=@|o|bw5I}>4ao3WzkGd?%`bD z`EBH+X7X5tP;#ZOc%t>h-MOF6ln=7rnQhE^C*CjhdGlYk%F$f(TTXvXUk?IpE zJL-r1+FYM%A9Y26C~jyY8CF{Joh_{tk}`KfhUx85WKoVJ$V*Nav8tGH{OQw1ub zFOuz)-BkZMIiESPZ)b4K<;%tutbFH{*EvdMF^c-k%NPNe7cV}4im})CQWZ0aKg)ku>O0TazFeDWF#;_#~y<1f1;jfK_Vc+CLEYb1E}5P?vq5@eZI z*+Mo!AIkRT8#_gLkonUK!eeaD!LI04Yze_AFYDBm^^lvZl(5!G%|sSO#(cJ=$`d;A zP9J+)`5*qeAnT^0jWOoXu!;%Ewc;wY6;UY`^gsRL^gP(a#FH$&)QHozdBQFF<2!4Y zFk$P#8OsjL2`8%JK0{2-Nn}*=kYhKUeo8BsU7IB<9 zaTZTKmJaJNNaeOm-z&cC9VN2C6nYyY->4qHXLJ+3AJ#(3z3FvF<_z7< zFZr1^RmV&^?Y`iPACP&}mrZxc>f>A1eJafI?h@~@J)G#OQ&Ma z?IeX@aGh-Rh2^VLiDXg8dufREhY_wl7}uj4IcT!Cmks|7x08>{JR8KaxRF)zpw2iQ zI<8B{=afkI&4MNT===6_W#mu)aHanWRtO_mdt8%a$X?b3kLhBU``%kU@y2k_o@AcT zV0pdWaG%D-Jw^Mx)8d-#jn}Zx$Jt(|ENd+u`4ORmNZMMziMJy+ID2~2BcI+jEI?1n zHiGIKPTEogrrrcJ@R4qZQn7>+v3y;i3Ia-AvM+Y#$uQ6POvPA?*gH4vIB!m`M?p8O zTSZ0N`N-x#&WTyqAU81f`d&`sv9md2TpAWi5}-oA&OCi&G3Xm#;&krrHXSGL5eEVq%@&bZvGUaT5dST9N5>Gt-+448ejbg40YPOEh!) zL>>x!tt^!zJZwcf4=eOQY0E)xWv_Gm8`&)uec0mYBn9MR115K+RAD~5TM~Y#8>yti z67A1ml3Akf|CwsB&CvZ<^NOt^yA@ zpWrq(by&X2TIC~R_p}wEu+kgp_f)fSTdrYJ{2B@=^r#@S-znC8+*4Tvn)zhu^eH({ z^J@z_(WGIm#Ydd8Tk0Fl?V=FJ4=*sZW}ait+cTmQb8iL_l`A~dlWb~qfb8=?i?_gv0S^oLlLfP*`ttBq+Zq7&Szi zJ}0Fs7CC)8S0+MUq16m9z|yiWy_`E5MC?oz6JPhckZ;&zdB&xE1dIg#UHU@{6q!X*c*yXFng+zQChFJr*v+0ItuH3!^HMoS!fmx^qw(&zAI7| zF|AU>M0W@3dP|tBQ>Z#y(J5=r;?MZ@UJAUp`Q~XVKSDM&qq1K$rlFKC8#z49lA(={ z^qc5MA%daB{hdJ60kbF^_XBm-)ocg`0OHT-BSh&zeWv17L^48;j8{;&nJxU5OElI7>hxP=1rR1^&$DBA@g5_(a=>aH-(og z_$f0~grW_2jDGT9{ySLlknynKi@Q{SypFZi!adr3j&^zy;u;y7k&67)PF6mqaPG0; zz4X$G6o~>X#9e|!H*+Iz6*ueyy=E8Q4r{XTSZ*bpjM~xf6{Y#>RnVe9XDr`nc=~Bt zuf}388|Xqu$u-8(wC5&LsOgPOI*~n@IqOKXU~zukwPGCnf7pBLzNq(ge^^G4k}jnY zl$7p9q@=rB>F#bsKuWqnI*0B?K)Sm{V(1=VhYCjA>Rj<)VfXKE=NIfg~ANxT zc8^5UKTOK_iHKd{QQrGqpJP51@tubs*fwTDYL#1-|)6fAP4)Y(XO$Q45x0`>GTfc?Z+AE()@R=&B<(w|LSuUoZ zn+k0tP zu1t3X-LY;Wmza9U#}H50PvqeL?Th32QJus@8GF9e=z6If6kCr3zGb=T=TU2u5b1;r za>!?rFDdq{Cc8x>deFJ(7}!!Ihh~OBw9A~mlnWI7m@GuP`zo|3kgo-JkHA(rL0i9J zx@UiJ#PYfOFRqkKd9;9a#PJF{Wh+_wc6rc>qvz`aa*uc0_fE2h1A>|)%5xh)%li3&Ld z0dKtR0ZKqf+P5VfB0dQ=P;ke@PKKtV#-gs4)=}&P1OqKDQwAyMEmX%v?|&NO%xOI2 zyz7Fz&$_&haZ!6^{&tSu|1_4i!LRnBX;qCE&tUV#b6v+OWm4=A?JR2^e9tg#N@pp= zjXca&kQz~uYKK`(DHP;veDl16wD(rCcPb5&Tj=@kGVdP=fcdhqpq1s5&7YZz*VwV| z&}0hb1uLdZ73$uA_ zpoL|;1O0UtfFkS^EIb)f4@h)9>oOQ1ausyLjOpq5N(Bu1#0)}>&@rg~L7NX|HCA2s zP?)nKQF?_-nV5{zw&6zaUdP)d?pfiFcgW8mpGlJhtJ>@NyqBX=tnm_DcW^_wetUj$ zbGQ=Y;9<2yql)D(Bh~6}_|!iq7ZWJd9$v7@vr-$RnTobb_O3u;hB!WbaeP%#b-8-p zHGXe%k^0gGBt@drVKe^xgA?a+795I0(dW|E7jAby-$K_#L9-DvLM^qB80WH;^cymb z=uycWJ>-3P*=oTS5{6F+ubol{q-9HW$n!Y#nUK=Gj((nA5Nf<%HtAxndUICV@0wx< z9vzu_6x{c?c6?!U;JcLilL6^hzq3+StFZaO@Xa~ff&ROjN|rNdDnO(aIzY=nB@^OT zzhqscPn4KHvp1p0_8~}yd_BU!GG@NW7nr(q8qNFCzwY^m7K^*`CHz9-z2%WpbpM~< zaRL71)ES~c;{&=zNMbxyTPZi{2Gc=kdOl36)$eA=J=&}$WM9Kr|PZ1j{>m;;N zvD>~agmnatwDM=pABv2PFUfynIU~$wdlR|zRyB35{mrd~Qi1~&Bx*jtVdRbGXBB>{foMVA}F|R-dtsYGpQd8 z@***ClA>GGZGlsEBfN6u~Tu9L$DQkxVQdQ~s|? ziES=mh^&7Wd2ml&kqocE)B?%cvx88>pf3Q4xi!a>-u80Y;rnT9#{CDOa*(DGE zKqN@kD$AL#%n*IA-YL_+Eh+jx*sT8!{W0f&e$zO*ohDNk@*nr&+wZFYRy=sjb(*sk zzJo<*GkPy5Ek>ONaLT^*)mWB~_Z?)`d(vZ&GOjY~JfI^sU*uX}eyC^2m23CA(3{=l z)`PZe@J!&V;FD8pVt$W-T6vxT4C~s6OAqVRjZ)I-{W=8{jS}f+a|P*(CYv3twK}0*nis6N9#yN+!A+D|_#iF}$!xuD?gS!)<`#94~pmVf({`c0V5GjQ&t` z`hr7K)+*CSu_UjgeHJ8Xr0WnLO?L)Z(b?ve`B5<9{xvpxqrucCgTOMCqx1f|eLa;^ zZ>)QyyJQBBzc0wO0wU8iGq~NpI%KZw0A102Ce3Y{h6QxnA2Je1b`JMs;(tJmE!1#r z*xzKfmgXyU299OW56(Vx36SwrF^=i@7Tl9$?CStoY%K*7jO{-T8huP^`RS!#@!=Cx zFVcjU<SK!-TuDvM3U7idZ^Zbjn2h$uUwdx=OHyCMM$op($Gwh(KM2hCECr(hX@IzwvzhPHHI=C{V|)oFN&`Mu)DBgfEmc(GPC^C;LrnO)Pfpj_L@S}rAh}HkL>Sh3x8AL8We<9-{A)PP zYDO6&X&q3)Y%on)yYSZSvE6_@TZ~D+P)5T*1s%FbyWZV>=cO!1B$e)=Vh;;{%?rpV zf7rUsOmUH)EeBiWjbt4kjf3_CwLR+FZdOcZpvqRll}MFMCrA5%xb(3}j$AGarG}ov z=G%^e@W=~ND!#o@*P%a1E)Bc?cx~VAapvB$E|+xs_)X$B5Y0;2CSN@V8@;Y(<=&Y~ zrxAj~r}x3SN5dJ+Qe=Cq_3kyg`i^OrTYVz}VacZHXVDbWP_>y6YflCR+yBnM5p97f z2@4hDu1;wjEtd(-4K@`DNPG4j!z061NtfjQ4w3X<9RcVDgRB!wtrou34w#!3>; zP|?>I-gho&dLG_wk1xHmWSkV;4Xf+G0+ZI5F;CzwXOz z{a$qFM5bz~JT#W!wG4272(s;r5&PQBa#mGWJziFJ`ON&(#&HnmW{UUY0%u7_zsEzw zSp7_%zZw&rRplnH;8Y2pymmsFq z-sG^X`G53&8yHL??;sINccf+g)44!U)3Fj7>iqsDhRAW#31%VE%e-Z54!y*EG)r{k z&b;uYv(R=TrYAJJ9<=G_jgPLo(t0w*Tz!&=o)uc>#R6yTf1IVA5xURtU_7s)AH%=> zkk6-Tkr&0k=`oXPM~T{aT=?`{mlTGGH3PA~xPg zYR*DH_%$ljG44dTm7K$h^~n}N_C+O5G8ocH7cka47LR5t0I1{s-KvyxmrNsqv(%sd;6uVRF~K5f+1o#7zU(+@2Gb!^f!^#_ zKkJ}6B>uZu*2j7`V4@qg5*(j8(H18plv+KchK(K79}GPPx6B_8rblvFn}vt`qpQCB zQsh+dM)7l09Y{lM^9IbRCwd>6TMY+Xp8F5lG#6WLor87-3r5m-4pI);98K~~nmpx5 zTwl91>R1y=amKN5a!Nlpj@BIT(;R*=79e7TljS{lHF~tQ=n(p8=zC%^6LjN2MeOI# zo*OGfncw5y*gx1GJ=N3n*}e}e4;Lk@ZP##Xxf}XPEb0HvMy2^3I;x5z73saPM%xdv zZaXJuSwM*Z)~Au#^4rLP`?HZjuzElqA&38m0Thj!riFX0qRXQdd#$3|_rIZ1_$N~u z#AC$sYM?fsuc3lJN@vR&nVboDd^dN##=lzZI<#J;X(#hM7h4-_pLra_r$#5alQnUn zc@sVXsp$TRq@gvQS-(k&>*9O#lRZHT%S<0CoR?+!wjv?tvx)i28wg|7z0VPQQxjQgGid@(!Qseb#E_v>+hlTv#bFu zrE5o(190B?|LXGl%3`AY>xZi*lYr>HQ9v@(d^Xk8H6l$jU!>cO8>4gx0G?_+Gm zpKINEP{lhs%p!~!*tO)Hi_(21zqbBGl?mOq=EuQHFa;mL8@drR8@TjXOY@~byUHN{ zx9en${6Ifdy{R#IdMBFr5sW@2wB`wkZVq~(dH3i0$@F#y#qz4&%S`>lle`ooOkk3T z6wJ&f)8rcfQz9=s20V2ffbzEqAhx$_()0=DZ7=;?C^~q(YKazn|edy3J z9wZuU5FF>^@1=-sJDus_>*%Rmq!%0exyb=-QW(j*szyaY^wK|H(F43; zFeFDmA8TY^_it+9ZBrQ~3j#oAyAAjLk<@y*E_DrLUzdHeBo}Ohgqof8OoJ=b(>ut3 zDNLib!8NDeVmX8LlRdcohbY2Q`nxsomqg5PsGHEPcy9ZSNWZQB8v;O0Y6m&eKH3Kf z*|ASe@#=`#pqlJlzs5t*;@wNIk_#CM-m-Sf;m0o`44allQJnDQy7o4bceV@PlVf_= zS#3XPivv=h=yhbio_KX& zN@;)Lw42#G@d)2aUy<^bT(nNQ&mLb2*mf3&GnuBpg+_Gg6w|R%j)g+CTza8wyEi($ zt7LrH=4q^_1(FJ>BA+kkdYuP1Z7$>xZ5EnuuJD@vik!$5i_&nIpY!wbAbLR{>|Ms% zu~sE>G72&FTc4Egp8bTqsV9|Wl%CCLLgH!COOa$?y_CoRx$tFyxLZ-WdBN9_sexwr6$6hKu9RD+Dg|PCWW{t!B2P@a zIOrcluNI1VaA>U;j+$>r?(pJ{+k*xoO@HEVKaE`t!jDMGLX|svX4l2K48OE-#CD(a zb$Qdzh3yLr2>w6i6%O9yQ%9n$pfEUc;OTU`M1ASZC}ujyGihrSv_^Wk^JsY#J^uXi zc$$o9-^|x#SBBh$)pHYlnN4p-5pK&BL0bRFOy7m@DI6*u$9vJD-u>m7d2pV}%lG10 zY*4?3*D+PkQRKJ?q*jGd4I9Lj^KMylZRa_tLy zG(L`TIq<$m{_YIW9lN~so{ggAR$Eu+-jqa~E5mLz$Dys@`oV`yRnyE>8vvbvu1~^A z8_U3L{L4#WCh-6uE}6xBu>T(YmhiI^B^J+TJH@t&4YDfR}ZQLFb_D8a9oK5I+#Hz7QW3vN_9yp?`m|e;CInCVf4reTh1# z?n7Iud%YO_5f5cSVUttRFN9v<3_2qM`$Q?yJog7 zgxvlPIr^As%y!h#Pa>f0cg!}OgaD)|Mh5y^_ z_CN8VumLuL9Ia}-c4L8yG@jhnJ?fP{s>Xw-VVaeFk z8Y2Azp1KCeA?A?3$Btr|#+p^#bN91i@u*}4vR@kHb8tbbTB8RR(qNE zRM`z*JV;G)@fXm(KAh?KnTRJmb`bNzN$}Q1*X$nStAVE@A?+VFktZbpNbwVR88@<% zl=PHeIlgoW5aRXUBFzt}JRE}#R>)<2);qc}EjDn%U3Rs&3v4Z~*f<61+FKtF95h9F zN%nmRvI8Cx2(kFz%{!ALOz7sNd@!_uIX78R0A*vORKWlR=wiY5$YxGVsO=~jrK-Es z=X3;`>8kH1ImH4zu2#EN&Y8MS@xT^$_|xv%8aK&^-Ls{W>pg^)<}HPmw@XRwccc2v zj%ph1pmYl`F_g|1CPTr9ak$Dl7V)Z0G ztmWDbw)v`5j0NNHI+e(o-ad{OHR}o@M|9tQmW63jKmCRcx?eNk#pHYF0t)8myN}gP zQ)AQ~&)N{O(*mZET91u&E6NoMZjXx4&O8?)*C|TNl}OZsTT^=0QubCA%)qwn#a-Pu z663aA(E`Mg0;fgCwe%jdiVwA_j$KW5#UHzQCHlM~7aZysYer{+_38`E%|t-jn?BVh zvuZf-72cmZrLV!jQi#)?U0WV)G&XT7~<_oiZ)wzHF*qH ze=zRbbaL(MEeZ>1()J3;>j_yc*S(&GR_Rx7yk%=BuXzN%*S!M|5j|$%wIXgtE9}s# zEoohYH`NM(69{3Kh9;I^7j;u_~=f7$mD#28NUDv zIo&cnK(lQv^2#DsQ`-c^O!e#F>hCp_kZ|I!RHo?l%KR2pXx4$+_oHoNxA%8n2_)u>JDdp7>1I;!0uI_pS93< zGeVb$Z=c%tXArQImzP2R8hnG+){ctUAeVCo92;$9LCQfDQ~u_M%bKERO-RrT|bXXb?i*Zl%49*f@_a(M7?-n8v| zQ}DMqw1f_>fRh!9yiB}AbxN)wty-V&CokJ4ccpg+sH>@`^A|5Xs_8csk^Y)5`hP|- znl|eZLjBQhc8!qADNC~E!t&02XoV?6%<%fcmo&iwHyEfn95L&H3VPRuhL+bdciiYp z)_%J;Z#bF)3`&o0SIB!Q&eU)H1J$GB&=chqXt}VfQ8gAOK~Arjud$5MYg1dH0OeWm zUe)>h4SKRSk$SNt$f-<@VF5VkWTBa#j!w=x81Ji|a9q~~2(22=lMLw(pcDFtV+H=&;MQm@wnj=pfA({TpNjqj-`$BIcc=vte zJaglA*urmR9q2QA&~&J@3w%p|A_h6M@Cyi8o$X9xTYu~zr2SzjyNJ|goW1iw&})w_ z0)MgoLxhD#vtG&o)&8M&Sq`2qG#&^zg7`WC)xm?!HQ!=B2R^(7_7g^Yl}3ESf<(@Y z167Pkp{D7^;#ma%^Ww-030%0W#Pm|bj+L_ASDf$~^^1I;{E_izXkEY=26zZ=W)uwB zi>B$PztQyf-^nFbi^D%C;X-+BOdaa2-VDfoKpJ9)^VPzt z^O(1%D0@Pi#y$zJMQr<2#O+-tF?c87^kr-HAJs3EgC0{w@A?-*b){grxO29Ae~8Kq z*+*~B2WFk>ABj!WH>+JCv8i3E>Z(t6viK|qGFPhf=jt}AdD|X%a^tIc>8V_q&=B{z z)Q;-6O(RwL2?}2Em?`)EdS;}{xT4L!j;0s=FeonEC(2I@{ZdsmM7BAz^e&6=_W><>QiVj zqq>dY{xX)RS=D28;QB{#eQ=mBh1K#Yp6u#acu{2ij^ODa9UBZdt+UUaIIjvz+ zreoyqaR~I7{XrDWUh-$Q?9HOYBI{S>q;U|XWv;uy3e(XCyz)jpWqhhtjB3;6XKg3_ ztIo9#we@fXm-`q36o13S+xs(?}Oe=1qi& z3lya>`c^T5)B+kP1RP_9+?b&=%c)CMj8{njQ^w?yQA$&%6IPM?g2tb@?vXz&E#{Hy zjnET$MuoH05_MNd5Y3V&0&S>k*{i2mv~PJyPr<8wqEa3mlLuJLUAW=?Dq4;F1L4XT2QqrVTT6PPK|r#=HZDr>Nd+Hf>! zh7v`uAd-V(cJjV*Mt(|cW%1nSbKO(bdijWl9SvMNtS-kUGo743ch$c9@e!j9PtQC; z%RgI6n0PZ9fbKljWH3HlQ#+kG+S~4)xv5|17K<|VQ0=?Bs6+Es`ZZ7(qFdED-^;so zpwP)X`CXUkI|(jQf(Zcvi`-A)&X(Y>$Gb$PAW~c3o2emoS%=M#VsJzTG1;$XzF3;E zOd(0?lSf5_aPav_etGtCl@Vbvtr7%2j=0ZDKxAEtO-Q=LU*5;8U=V($WECU2O0~#b z*sC07q9r#BTp)Oi`?r)gXNYdgS2S+V_N-6bBWIeSkMtO8?&-d7!te~G8 zsbnVZUbA;w++{(eNsg@yX_(MFNx+P%zRu0fSaOEb8J{X>_g+m~K;a&?yzLw|THeO2 zj0`myR0gCWO+JO^9?Sy)JqC|;hi>qv z&+=#V)pSwBCAmPl>Kz=?`aosN-4B28#(&w8oo2uM%G%?zHBtFJJrJVm9gDY37hsuQ zP}{jTF-76-==hzpE;x3BWNEo+xU{)>8ZuamBl=#zgi}p?Xtl2gS7)6lf4Bwk*6rU6&3Oz&kJ{;%WU(^>z#Mg?5-)TcuELV8e&*=FkrOb z3O&ERO9rU9D=xMdc~%vevj>BB1xrY2jLqet%l`0f)P=iJPCS`&rsCJ~l6U$$|(P^hEn6-Ka6-)IO2I`m$QkLDb)uyP!-UTW_B{hhA? zTk`Ng{yd@*f*t2j)<~I%==Q;cTS?1Njd=@>`JGxPUW2;fQIElOTJ#u+Xe~D zW5OUKJL8h+J{zK-@DoOaUen31m+@~I;@2Mgo}e}iuLW+86@2w8(4N}w z!(%>n(>)VNE+`^LM;5JPR=FjY1!5KiCb8WfR^#a~7u>LtP1Jd7t>y>^3eZU$rKok) zl6uwGwH6tC;yQ2BTy&-Nb_+dv8pa&Z2}3GlwukcPD;vo_^y2H9 zjZg8zN!Qay8#DuO^~R78wFuj0SsD!3$H?;|%A#vn|1Tio{&8^cvW@fL(LWx`%LQ#@}4TI(9b(EUB zs}RGoS$`9SL4P59guu`9CY}M!L^=QxLov66>1D%w$8^8iO`3P0vVh-ei$tNT?hSU5 zKO#~uTmQZ$+E++%c43~eP~%&na)7*8+a^F|STbYW>~fJSz*)oXMwgn!ndBAV)pg$~ zi-8GIE3+l_arg3-U7Yz;_SG2{VHhkx%XQ2LalD`70uv%a361ph8N|g7j7sy=MQxAw z7IQD%hqDmOYkS!>szeSv=#qqZ);ZB2X?YHeNJUIaM6Bo~yEVedC$&xtQ7>)#K{f}c z6@XVCwG%73V4LIpi)f(XF*IXa^S3@U%x_G>_0JaDwR?!;T`_(nTrg;bfTWX^K00ez z3&1;6k?<<`Fuh+O3|~)QBjOK7h(p0fll2O6W%0EmDDS301)^UBZl22bKXedXjm5#va0UMsMhg~36J6A(||?T6^-Hx*vyc>Kh&8uG>}6;`(qL0-@fb< z4f4nY%v)oN^?k-#2T3^i#9~SxMaeHj>~|vD$^uCw1WJ(43(g(zi}}XYU^?9#!-e9ImdA*rnhieVzpfD=kB3AI`hxdFi&t4TCm!tQeV;DbSe?N@$ z5|xOgvD%KHg@FX~wV+LuCp*kL6g=Ag$odNYIM68v^H`E>e}cBGHNSOpdJ831^^H%+ z8D4sD2+K$^g+*Pf_;mP#s^o~UUGvPfu;ksscGS#YTQL3)gA3qG%8h+OZlB$Fhi}>R zNnXv=m_|8fF?6@#q0j~7v+d0>ChQN_iEgt@1^IM3WSb5QB*ssGCu*t*6qtu$hd!f$ z%XfZOI4NTM=eX%#^z|3Pe#Wb#jG~i=UwhWEw}*o3rlm||g}${oT_mIpAuaSy+|7Fw z0^K-iLQVew;V|m79$54U&B23L77n~LYi(Gl72C9(gz(oYLp+EeMRzutljFX+5DyoQ zeyIf?BbS98HBaR-FBRuDiqv|Qd`sx?Yi*mt0gvhdj|02uRx_k$;ejQuH6eKfHXdVu z0xQEI$YIO=W47XzL>8}6m(S~6A61YLazeQ+3eK~``-gZVqD%Gd`*;r_AU93NN?s(S zPi3a}2X9FwHj9~&jeT1dd8l2zUQ~#}yx@%BBrY~7y0SK|hJn3Gz}FZ8bX0Q(n~H(J zWM}tJ%6dOv;~|hOXax9PD|;H2nmDOM^dyhX(=8d;zJJ!kWpBvH+74 zc9OBQ%$I#D?>PgS{we1G2meHtT(cPc_GNHc)o~E-?L!k`l0p*8a-Jf<2fCkjFTPAE zi6dxGJC|NF2QA1>#a>W5hqt}FZW*ZlRH;yNqIIE85!5~fSp_}QE0-G5YLyXrGK_JD zZmVn{GGgSCgAT5&>6KbPyv`!XB)<{ccZ5p3+jVd>3OSMLlYEp7O z_$~uny{d}bAX+&0xZ7HgPg$X;b)B*)Dlc&Pv|`F-O}0`Y=8r7DmCIpU{zN)xdKlSQ z8y{X8KhoO>#;r+4(1e0aC62h`KT*#=19eW}DLQv~R)z}6jgTeJ3t=_5EqTk_fbHrp zz4h0@8+#F!{m6to*)(n+t3Dm#V{+jl6a?%!*3n3``Tu(Lh<1T2{*n=OP--Q$eEHt@(>3JlRqi!~Ca+-9Q+gpW(GxsJJYWD_(BBoWp7sxu5eu13UGZ zm+V2-$X$(lF#`A{59G5=o2ygaZL`2v@0HBzOu&;L?C2aK&x>ql>(chuj}2T}#O*Xv z6Dd4BZvt;$RD%s*@chhpuzVqkX(;D!t!@9yB98#xIFi_^@j`il^U5il*=LG4;!)jR zwc_#`yf>Ag`}_k&WI7miVLF zpoTt(lU*iQq0Pfgg856#2M5D{v;a$Cm^b8j5dRLh_?JP) zMRH40k1p0kyDcl1;aiKh-Yo?dmS^wZ$Q&HsY^|-XaYwI&(RB1fN~dh9+KT4x;_qsZ%-mHPjc1B&?%M|!_|~w(0^mL z{^$>W`>t$7f2@f?dHr8rAM~zbaF5I-W#q42%|n&n{$v_HsK|BKKDf8n3hCDv%2Xup zyeRgNCn)BUy{LHW|C~(8s<$0EA#FaGl@_H}NN+fp1!)hX~X|I(6TCB@yufwxqprUZ+?1hI6UV(10m;bw)h9~c@9wX2_ zbuN+#gR$c)Sbapwut4b_ZzGJrKd(7f^)`JI6=h=Zr8_r`FQTnYNOHcycU_aH>}WV;i`}fU7ssGb{O)_0GJ20Plrl6>MD#y|`r})5 zzz@0N)_+G=>+>9UdfL-Go7XfjpqsL|u7{h3*`?s1a6CZY`0|pzlYWt%quYX~3_W8A z)uhkzXJB6OJ$Ebm}>%{irUF0xNo`%5uTTh z(;%TpOKt^CMJ4vQd$gAI6rzOCjIIxyS@z?6Q+H<)MEK=JbL-x*4bNy!eQKCoQt zmI-NGNX}HH;K|DbAR-ut{b$MLi1xwYoM4$PtB`zao)Ma z)D@|K0?(hb_t4Z zTU-v1wtO{bO{%XQ1|k#eWTOo2&4O6N#otz(FLoZt*Q$>^!z`{gJO9Kw9Ru6hu#*FQ z9`A4YzfWxa$Ke>fLvqt7aoK`ylLdk92d6^YiZ_hy`4mMS_5D1uO`Wc6&!ZJ^x%5=< zd&6BvYwgy}pO*=ohB!=UTh&dX^4@1Ejfvi+VHfEZ035|FC2eNDV_?)4GE>g4s_1ly z*KX{5ertVtS6yEXD=9v+@=yCz(rLq9_J_&0|B(5eY`<$l1dJ)yZ?meVEOr#WH-Swp znq>P`rDYq7Mt6;a%8j%vod-q{8DpJ~n?fUt?0AEz*>;x`Dy`jOA@+^tuW|U>F-E&1 z6PjaxwJiwy-wMq=si_OocV}wygd-B*xa-xP-0C|*7R$1gd1F4Zg7ev&Ei%S+UCdS(;cCpcTPm^9v6X?16 zt0EZ(9TPVkNUwUnVo=Q;HEn()eTyvxjkI;?Ki{MA-{>t9KCnrcJD&SQui*I?8K&vP z#F?;sb*Ob&B4n$Cdc^YRs^Lr%*L+gjD&sk|+q!$Tv){WDL&GX$IcXM^o49?d&fUR3 zDT|M;WL`QB7i^`nPR@P$Pgm$aL{-Ka4%qUQ+>hI%YY`QF^X+m8boE!WDn`_u8hFFf zc41~e|Is6iBjpukOHPxre2SCiJ)1j|O;-IfNGFPug1+#fQ2{N8x%QyX!&eIH30fzD z)K^myc{N=Yjjv`wfdVKp4b;_y7^7yMVnFDW)~MoIcTAJ~o#+Qoj_S{q5iWiUH=a#L zX}0eTV;3O3bBv`hO{NUnhf3>IWwtx^HTtIDJkeo4?a(Q?EIb~y=Iq*|Of9P`onI1D3+Ob69*ypbR1Oa`%YxOn%~l^f z%e#ag=Jm2_F>Te?&R&)0&VthESu&kq%Q~_zD84V z!RLDGKP=3sH!h|eIL9PxjD4@d+^-3X4TZ-~kP16o&hdY6m(Y}#UPfJI^S%s6&S&aN&Sq#Nr zS&Rsh?7bEynlM*4i|7Z_esA{|@uv1n~}+-zN74)7CUC`ZC^BeQ2qlJkhH2d3y36$~25 z5}ZgO(45y`qZ|o$9K02a@=@`uBULN0Iw1`?s2bgKwwu@O|9$56U*b2!?|)8_7L%dRK+EA@?>Vcufy+H;Nm5}R=xWVGETZ@1|J~S#a2r3t2361-%4!gD4x8! z&55*^P(~qw9-u!hRYwiF^3MC=mV9*ca_aVXeamuFep_ZJ^7O3s)%O7_<>=e<3t-`c zW)&s`?wXw?PCm`+RUm58VqD?}O!y`A33rvTPb2U4dYljIcZefQ7VnzG?M4QslHl9AxT(i^q zY0|*L+*i3To{S0+5~2RIj@l}D!g0_fO3G15mG?fMK}vpiw;}H;H3)F5lt&QJVwc32 zJBp?@u4D4|?JL0m(v>mq^Y+=h^Nnd_-=f1F#@9oc=?$XbgCpgvzyNG7SC<6zI;~ag zE@R$E-|_EgOnd3SVm*9VW+8l%n*`&9W^ub!A}(oiFm+rxPq`M_S=`}-*f)80=WaHS zhtHR^yM=8!AbUNU1Sz}*86?+`32u5sY7d z24dBH{5C`XTF|ONG1GHuQ?FIXD{*&b5I>kbEtm6~BI(pfWg-AeMw#jxWUyQ~=zZBC z7f>~|iR+~(u^2^=whGvqPHcUhU}HC+Dv>tDzLN1x z6PHK8JVWi7fv(2Rn-}B3vLyy#0W)~7R0~8t5%?qS08FBGm38Y>FAiQWm6e1NR(4n! z9;=AT(t6ZQ8s_tR*DqwOvQCcaB$QiKd+BQ2a5){ee+6I+GpbDTqWlagap5v#JScC_m(8d8*V28t50eAJj{`16yhu~DeLwX zow@nXgfMaNf8^2n?BPX6)i2sf&)0VeGV58%zf5C9ZB?ffyvQ%M_yBD-Rd1m=r@m0? zvq=qyrk~S7OtPP z0{XBUc9MdT@F-%_3)5VK)Ss%}1v4P$M1bLs6N{pI{1w5LmE+Z`yR!j$G;LJD%VSqn z1$wFf@Rxp5fgMix&km21Mlm+ zq7_^^(aEe5Cp%IvIAL(k_tDrhEvjaJKBA#Zpsx)4XhO(EDSc&-PXnmI+| z*q*Fx630ZER)m+E`h**XQo9(as^yfBy0uEj`|6==V%4G?IGx~>{#0*<-qs@oe^T;i zJTL}(!Y+?@U^S0;dgbhM+R3OE8cBX4H33cZX2{L0mU!E~Z2mabMAn(Qkj+sb|{hWgOlQCBVsx z^d`;K5RRMDvt5>~e0M2hW(6}!?reVZ_=nO0O61)2d(8Nn;JGlD`3T*zwuC^8P7skGO*Cpq_?hQK`L_rps{oKp@QszVZPH3eqP^HW>p&)7r&tm6=r# z^8En`-urdp+KrY|h=rRE2H9*D_Uf4XXHh102A3>O2CF#@$Vsr$B<|GV^V!!C{%ANz zHfA);Qj7`R{ZItTYi|9B>rw!2TREpWYjxU7Ios%uOf=3vI;kj#=^;^cK|dfowRpCN z^E_llGdK}(nB_ACRdCNjM>-2Oi?CFAb)Wonoi;z4|HtfG5&-ZrVGil%=4S5j5CTsXpL%|)c&ySG}Mui>EU1ns${jmM8R-gr@QBam#0O(#%o z+igB_Z9Qz_ID3L4@*u0=hky?2Wu?taT2hYAE;i?RYKW+*KQd)mBqgC4RruGJwT|%x zM9?p4=Zbc}9a-IkWu%|6_&syNDahS1D0))sbO|BKT~$St82QIW%MKMRgP%b~4*4eU z_ymUN`BlL63#9z*h2%i1NrmH+(2KMYcV)ho!l2%o&vL5a2>U8Li0mdKxBHiR!-vOi zg>_{tA>wh&khl!YQFGvFYU^|UT9{864yY~G{*;j$)OG%%EIoMf#t6;g8nH9rs3 zn(puIQ_gHoB!%tsAt;jnn&{BiB!I z+ANfZJx4 z4|r7yEG2QjM;}`7GJtbbOwzVqSkC7-UXr9A5%gk9=m4QPtqVK55^>GFD}m= zIFjyN*lF5dAfN9?uFF{r+IFzE7|T1;{WFkOiv7Cf&%R9e<_6Rppk3F$G^9Cc`UDE?D2B+EB)z&kJPIr?pyQ+r3Uec5@0jP z@`Ww#8JTKStv&Twh#0wO#FLoTA*Jmb5sy=$C!eMmdpeOj5m~s`*RettHlFDLd9U7h ze^2gxVIsXjgEQQTOraU)IWkPDzBcG)@P@&}$sQd2bUDW$L0N)}qlF;KVm!L>(3okY zQN7@lySzN33FH2)E4qzF&iXpQ%OOG`He+Z_A{xgJnH_iBf-;sQdYPqaE7kZ`aoUR)zO)t+D|#t(T^o~UXfX&J^TWPh(XY2H>)6YC zK~(6#RWn3$?Ui=GCEe9p-OVjpCVxxz-I2wd*4emx>GjxF@d1)(UDcIFH&9hW&ept^ zP}Y5{LPKevw7~gUY2J$meO%7|+w87$6-vwZucgM@Z(F#Ns4fIF#n5f5KhsK{Iz|;+YbwkM|U0dRVW*d4g--v&pM6pkm=AD)rlm+unJ&4h3py)iU+qn#K1I}I=k z2|i(neDg#euktTd%S44Unuv2 z1ThPx=|C8jSy(`6o`Ykpu^@eso%UD7TMi}BdSCHY-tGU7y|;|2a$EmE6$wEk1nEY) zyF)>`q&uZc>Ba>rD5ZdOcXxMpcQ2&78y4Jmx%WBee~z;6=R3yz!ho?B?>py{zbEE1 z*Zfvd6b*kq^z=Rvu&8cZj2*1(Q%N*9@KQV7wcH+kCeZzj&+wHN#h*6ch2?)vu*4oJ z|8cpLt?1u}K&WYe863daiF5U)uy~_UQg*fHnTmQza+4|Os4?d~vr8|@pRF*AXX6|_ zv#;nh$DdIL?z1*M)!H%}ECAp5e^x}|edDPkval2Kr4dgt0ED3tf9GZg#uQ$REp;B4 z+A5$SWUb(`rrk8F$feOYsO!_<{S0Am^X7{mUv@vW>u>3`#%k2LED@I&;wLJxEsYAa zGKnE;MN$3Ad+AxcAU|5o!%n{5#(BCGhcH@(&C|JGk&(Y2oj%wtoSI|ys_iVY`C6wO zd{!LyguM#(-)#L4s2HLH!4tH*xvM8$THiEe98>GX<4e?5GDFgo zuf1gDH`X0sV#UmkhkyaskBdv|PYqwD5|#~cMzq$u#8oA)BrX29K|Jh0+8UM05sr4E z?4+@i;IMneXWS-Il6*;eO3`d}C_&PKeiSd{RVDz5G(;V!CQMqMvaN$STE?)FduBuS zL(H#2709>^NW9e?AMAQek+qx!&Cq=3{~bUzRSBOiv|fl${9CyZp)FCQf=+ui!YPX% z%aVM@bL9OC6J6@Z7Zz{iyh}ry5ho1I?mlC64ig{o?)IM*Zd=Qows{Il4un5=da5F{ zrjjMfG~F8gF}`|tFsEkTdLm`+=P)Ha6?gNi>f?n15hX$QSh1%(dZ}OI(q72UD!gNi zJ=-1mtQ%)9eP*h%SmF?E0cVaHV*@V1BM%ceuerl|#OjC=c zdW8QNdM%h;!NS@6D{2Ig;X~9}&9~HeyGbsSHOe9K>evoDnG7>;)S?p1Y!BPKMVwBP z*PJbC$K~t4!NSpJV(g#VeNo~}>uyv$=vrsj zZ0XLiIJ)iI>*ir1s84gj3=(s;m)%w{#05<4m$eX+`3xbVz4B2GQORav)6{6!KMWzB z!Sp}JTN3bd*$4d_=Wj$jAg6MW4z;U!pP~+lUuTz|;Px z2}IFaKA*sw<`B>7O^6(j%4B(jNvH7)<35+k5UPq%39|wbF6P4@hRH{>BmBG5)ruGTK1?;tRgwD>b;WY?E%c)AqzroxFB~U8D7*-sw$i zTTf>Lxxze#@nPJZZ!JeL&vujMK0HFL#or2U#+we99+m2nA6&?F&Ar6$$EPv~xRkzv zX+t@y>uefS?z|r4Lm`oXko`z>-g7pC4Q!12m^zTn>Kge>6OPgh7G*YRzc+w&8s}Na z{`D)4$K;t)%`zjqO^|L2mim3Db}p>sO1WBvv^`av z$h3Y-s_Kg&(d!kzIj6$z?=o6X`ulVJ5ojLmFd}qg)P8QUoj9dxp@4>~u7y-3+ucD19Aq72E_ucXSmvz|q z-h{c?v^6}ew4;v{Rrn@z$BfHT44(m>ks$i}&>CfJ9=B0m<4#J_moXG;OQuSmEm1*U zA=@h{PtBV0Tl-xqOBR9G)(bSHx5@_6^Na=XKA0vwQZgs?hrXqXViivnzWFhY+mhI7 z`tIWC>=SRnVBn$l)UQYo1;L$c+v7dLSm?>`4?Rmcx88W{`aFI%kk({wpSJbGAFdwy zPbEY64&cE?A_qq~!y?|+{1e_RBNE}GCbB2z8?XP9l;fT4OY(Ju%HAgno|fd7-AK` z`KOmi9pa>2{Zo}6TkR}awJ`V@h^EP-B@X0l`s<~-h;f@CI~88**?QSRY<7OpT{aiU z*E+`J|M9JV3iCH&AB^&z1jT%nLVR)dP>2E|eM^7T;QF856kwHdD4^!XZ-Za?&*msPN4{K*d%|4Cktq?9|2VN`jn< zdRnM$)~yL?B!12mQS|&ORNLTXd-{#b!Uu)ilVg9Ic|wK>xe2$I6Nj!rcYWhyTm}75 z;v?dr!`l~BI;X490MEDcMg$Gt0Dw&0wi= zl#b=Y_f;JW?o zZ<#^zcom;~o~sleznmL_0Vmt(DY$Bo3%;<}SHWA;bNswRH3XbA^AyT(TXsJ-#1f~) z$!qs0_o2a*dA7E~)hDMEBZed4m3JPAnTD46I7=f`bbaYTroGDRVtxrD{8Lu!ZgU|z2MH&Cs7rv=* z9ChII!9?3B&a3w}2gyuX4SeNyMmd&gYMRB*_NaOnecc8(FI3PI1Q`n-YO%Y$HWX4~ z1}a|oYvY?w8nXDW$4DFBOfYS!WBM-!y!Ecq75Q}CDOwtP3ZB$l+qQ&v=V{~>(gCN} zIyRinTd4EHQ%*IG9Ad}4nZ!2wh85)TQ^a}GMKBIb3zy=e@a}s%*fehB)kD0WB!s57 zjJxT5MPLXkoSK!Ud6({zxZ>$Klan0p=0>1A6PbTuEWRB+Z4Vl027tBD^(_BR}C z2ZBV*>uH1@lf@#D;$|SeVQA&GRBlyo@bC-e(fy703T;E z2^ppyr2=ENLuVB^|GD1*-~$*4dQ|GQk$6syEJaQ)o_S^4-mi|cU*~UkUyq+Q>Wuj} z`G2rgMA!+s8e)Fytp=LNDLs!sjKJxf1_L+uRhUbCS>klLXy^%%55}e^;@d>Uul{C@ z?(sI(_L=$PWI*3D;M>JYcs_{KY{M|FKe6iZ3})yRAC zJ2}EcG5>?5xET1gRA|yyz>R@=QOUN}`d6w>jjnut#qC0unTixR|Y%1b=5RcEaoB zBllJ_5+6kRS4jDv*yBS})8n*V1geiKQy_EBzuW1PplyE?MO}b6ZXT0L-pMhzBunS} z%WK{#6OM6Zi0Xvmj4inOyIqo@+&JGd(dp6cAH5Yyp%>5F#z*e+MVfZ65! zYCZekH0=<=!``ZO(_I9Dvg5SzP_snroDr_E_YF4(MI>|;XA2ZM$dOn(sh0L9l~Ed%7d+uE zSwqM6xW_-u`byP_7Gkim8e6;R*jVVTcIUN$z$V$jT&~Kx*xC8(+bSkgCCZnHW9REc z^^Nq6*~L*pDf^oli`@w0i|KGd6Njz@1}mmpbHs=>MeE^radDn{wp~H|p&2zu65W7YKwOZGZ3_qLEZlE0nh{Vw`pYIkqe&JnEJ&$mkma zt2}ug`Ws{fYEo{bi-oykt$0$pN$!RSn}VwN2bW1ZY6l*Jm)v3T@2EM%gl@-ujK08^`SeAtwu@$APTI8!TfS6;O z-J_kf91O3iJu3WhSIS+ovyswe^~cZM-CM4D-D~-Gl6Rz)fx!c>9Ao@y$EfSA-bje- zybZx#x?&8hAA6&>8yHMDf+Q+2K}&6rZ^cXCm`sP_9kx9*quz-oJ}Kc4-1>%htyOs< zSu;e*t}ffiLw5eGIJM#Sg5LAh=HZX}w^z=q>a`97%j~Fb?d^uzK3=mK=8Q}GCJx!< zxwp6C7bp<&uTEkODlqmEVS^0(Pz`5QEwM^?5a>Kbi>_fqUJg20`36 z3sL3LR>#IXFSSx|c3;N_zbk%^zuW~d#0G%sD;UD37-;_X?WoQTIgeCP;p=Djv_=!$ra4<*fBMn$87GI% zM=q75{f;tjFInqnJ{er*yiMkI9=M$x6_SUPq|`%ZRw9tE(KNDmB)yvKaq$#Lb6FAJ ze~_Ba%0P5h-xdAoln;==97ovDRR&3KBb}~r%T8ap%vW@vN^+~dd>rK5>UftMkB*J^ z#PZPfqG47$=pC=xdBW*C{UL|$_bU@bfl}I2;cqKoSh3*c9Sh}Cb0!3vl&kb&zd!^B z)b%_rSjYW~u^42PP9o~Pr`L)(i~~~b)jbaER}6}{f0S&-Z8bMFFnl3mJ{3{c@n}*& zT`UG@ECb92G@y*P4*u2E$Nf;p-wmh7O4Tr1>}JTHoB^v4D0*|{`<}^PI~s#il3)Ds zv<%6^LP4JspNWVG_q5J&?}4juGlx$ZnJ&6GDC%Z`8eKDu;}u)}DW30C~;i-Tb{!%bgBQ@csMmn#89m{u*s_AI*#sdG<~W^E`36xPw-`ugQ1L0J!PJvTHCn& zdn!H_IK|$6a!O1ZYh$in+*&=u8p+{H=WgThtgMl%`b%Kc2`Tf9A2^U(8Rgf_g}_`0 zMzvVRE-SSyBwC4vf^4iM0*~o{Spo{}=y;sUE9pz~wEs1!zx)O>B1{IO#yR+@^U%bE ztvEHc{(#H6gY`^TjpfS6j&>g(4ECC4QLNEhbC-}Ahv2Wc7Qxipd@_zi8RyRM z@=IZNsI)6fx`dPJI3n{zsl>^)AkVsU0n!YO*48tx7W1T>K$n|VwV?$$jUZgC6C)P(XL@deA(8l8pNF|FU- zLYfKsrSTF%oddGtWLKvV%1V87S+@z9CR@oohom3El2!}7*c8gmUsl=)UeD7zPFh41 zO7Swfc^m6cN8XGmg1uF?MYJa&EM{*~0Z1M4vo1Um4|qaBzpv0Zk2xEdq=G$0d>4H6 zfiY=W$SEdr%jvrAS28PS4>rt&odt#aL2ra zgmwrcIKnyCOby+9n<=MV@_7Co9c?IQkz2H}-Zm`|qPfZ_bDj)V%e-i}u54|2wyINb zRVr?jm2brw%oZ$+-V!<1&|WS}qaH$zd;@}kJ!(XN;|rmB8lP-eFuKkuwu}Rowmjs^ z(Dzx%wT_YonKnYDW)AX zj(<84KdoU;6WLc_Kk+*m`BV;xKBKFWnAA3JZ$^b15B=j&MqyOA&zWr2L@Z-@i(YEa z5^X}{rzaVo&kJpPoD6Z#3*$8;!Du<}O-{trd*u-g-I+Nl;%hOOjll~Q2E{$q7(3kk zxx6(rxPKfIxP0=q7>2Vz)u+_?dt zmG9RQ(x9wG;vAZA=(vj{-a>Tbzc8pws4!lq`E_JVkHAhLod%?}tw5ou+3&}Byj#0> z8po|jUIUKw{={pSfWw|G=YMC7{#y?`F%Hng`Lp!qjuIWt+3BoPGhXM9VJj{vS;TNQ z)uKl+D`v;%T)T+>Fl%<1V3$cE*CNMosd`&i^trs7XTXJt&0Trw^BRYD*`sm>ciy?R zzGbbsU{!^eaXrcS0U3h_xj>sCXVojm+6?&jaDm|{eH&u6G>?GZH+B7q2bDn?zdCCB zU>^n?M^YS;3BVINSXPT;H?_Y+ozMAV_a~T&wjtWI12^Bwo9m?}q)ASyz9zzz!0|OJ zHxMP#BC}Kvkcm1NZAp3BL*v!y6wY=Ue3Xf8%zCV?AN5u71%83Nxc$jL4PMOBC!Xe< zKZqvC?^!cd<1QI*nJsrxQ%aEJ8CZcWPjy8K&gl5$$y;H~+W{wKL2#LTXn(xmsKsvg zaXM33)r%Q49oszmwC6m>DL!|S433R}X+4e!LpvQq1!5AxyuL;0vU88x98w=c!|d1c^g~nrB&a`x}C@E(fh<=jGG87U!8`L_wk7 zstKa2%jbhkLOv!T#Js90uaPd-J#}y=(BZh0uo18E6Y*`oy@4O==9WW6x}w&!%D38A z))Mzv-hge8SYK9j++w1eVdLs=*(5#1;Sa6kPqKH5-5Qs`=lK38qHU8~Fe4tNe{LAE z^lhrJe7~XZ#14PC+f}3x=R%Qv-nLq?8`zYR7_{%!KF5q2YH0f5^6YZOF5M(1)7Ljg z*u?@ZdHpIPb*?&xFlNr>bhK@4-I-Yb*hb5&0kc<_#pYJY>$&U?yWD$l@)S5P;Pj2P zEpr<`g8S-KrZloo)@E7(L&wg0S?upRPH|EkxHaO0KV6#<+sO&WCPu6F4C?pxAwb^N zpIJfd*suKZL4IB3`^xWwrEguo@z#TL!5jE;M*?pbi(qWW zxykK|f}!n^8G#v1`CXmrb+!wmqib^~9^OI83mb{BLfU$RldoGu$3L7@f%B8o*OhZM zB93>jI@4$*Jd`4R2sBlt;DOG4=$t3`DGV}_{Ww$?{`*BJywI9mmZyWRdxXnpPPDGWw3Z3X=TDzXq zxA;@YE}SF+nz~EK65(y5d0-L2{mKWdS4vvI84`mwhPeO3`swA&T~r$>;O55nU4as<9uvIxA6YMyOm(wA@{J&;F=U`dr%{M(9R#mG)Nd?PR@d z=e6|@h-O||(bMT`=xK(GXkjs`ZFas_CNYd7pJ3JMo7{N#LLgkZtSSRW0@GvB@9mnDRRZrVe(04)98mvr zB3E}2ww`1u)5fGm69ltPx_r*t?=;)ujV?oPGaR(=1I~vPIg}MW+jr+sY^ijpi!!A`lxt5%h z27c#{=tmO55FZnOR&s0W^!uQ?nU~6QnNSck9}kiU%r0Vk~7#??n!8Mtvh-)j#6=| z!Ani{QS+fMIT@=)+;tB3&%C}c|GpQ(q3(lM-c)E3E%n{=>j{@P6*dDr?uCby`vP3+ zdA5bGKRkE{1N#__MEKvo=yz4~OTa%RFQ#M;%8~aSN&bCLr zqjK-h(EaS`%fDsd#tms>Ip;7m@_W^xL~ZSebWV0CtrXKdqO-dp2xo_ApxJ#{gvAFI z#)*j*SCs6h_TMY~_fkJR05Kx6?}Zp6*#z`B%_X&rm@)1iw3c_;EpWhp;tEDm$8fFz z^Dn==@}up)P7`yJYm?l;_cNUSOtW|6P3?)0puE{|c50e)=2(@O9^*FgacoDAaB5Dw z!7wM-%BAjmg-e@!S1S$KqJGURf3(Nc&zk*KRjXt^Xho;XkJ{X)Q2VZ|9;lCC* z^cwVxjb!DiFNR%kGzJkKb?|z~luaJj5XAommB5VAnEAUN;iFl3aNFV;X7sE_)k=q( zr;Y7Too!QdMsJpJED$wEh4!B7g}6T3We&UTj5(LmSa_y1UhX+t=>G21X+izcxPiCycU^^qVDPHu&t^5-C8=Y>;CNui7zm zRq_-DgJ`&{1k&Mmb?jJqJ#7Y0ImeOyx`0Svwfa4Y zDyQt2a^P$VI}caZa&-abSqHOjfAk{em>9+3;R!tj%dv6%RXgJIjoiV@p2%dbKi zKWxAj?e?yQ3PL~Gk%!fseyr)+Q+iFafeF;Xt<#V=o z%I+N_DBn$#w90MUMCv?_FpZ6Sg6^Vj;!*)Ah-&x{jgetXLGiyP@ZZZzg23?1qkW2y zL?Uu;D~>ZEiu*Q_BOZP|1hT00OOU&IAw-%^3qO=Ovo&`pq=IYBw*c{4yU`oI`k{1A zB1Gl$Aoz>EPf$chmsSSr*_Lw88>RL5EtzVr0hv?#H|_EhOa3}hS2Yn9UTLnfH;+3? zFv50tUy|2f-KV|E(%ea%K+17oeT#R*Ke2_$-?4#P~2eIG}SZ* z+=N$slt<}Zdxq9e!5#y8G~0Jj<3-Wq;<*!MttA?}fM#98zI9;$E6jiK2s1J#oT^O` z1EF*Irkk}uKow6Y#=`J3%`x{&z%EO|0zTJg3GIH;*23`Yc`(I3k*i|KSWk28f0`l6lnSZ!z8rqnd&03oh9O2D?gsrKv_7s5%7!LLmp zB}@5T4&2el-koMV;}!>2yNLuSZ9%xheOBxNC>W6)umwWyVeOTsl73k!a~Qs3=o<<| ze6Kz2m$dtmz9ryUf6WZbupo-Jg8wufma*5}tb1BI?EfK{N$f$_`{CUyHpvwS?i!o^a^)Ri&t~rzPR6x zMQM|OnJ*8Y28%rqiLIEsa0tijl^k23B%}OU_gLBtB|*O8wZ6!LMG1xg&qS$L1YJuO zE3M|(~3ED+-BH2^ys~u$oC~<=urx?q8i0ApMn4Zw0;H@;V32A z|1UoHw{raYMH8zlXqIf>Gq#Jkmo9A+mf0%B|5X0RtkHv;8*bLiy2sm8o)?#2)nOI` z!>J6XeN1j?DngAmKM?eaoU~5#dU1MTHN#|nZgKFH+6#8Y5=4La@H>Ne}nla8QWJL7{Wojv! zm$8mEk3Ah&MPPaCX-_-e{M~FY8zZACwz2JlYYho}gOQ~FT0~*s9l!nVsQ9fZ7)RUt z6)dy%ZI_Y&_sFQ%XWL-VZTR^YW1<91Mt47Hdy_AYTxf;<>&~Jvy~`KpOIL-l<^~I6 zikAyjL`sQr#wyym^5UN0FQV6-4d;~43ca@~%)s6qZ&8Ib?vmC4Ni&NCf-xsaTEAa5 z@J}Qj!t7dIXK}e%4>Mem3=woGdasI1I|;U1mj0eyU0DL*UG2bSQEgCryFk%`<`l@e zgEkmDdI`pbRB?PBj(xP=|MJAIa_-`No!MTPZCG%8=VZpLxNWQ@BP^rmIGuC$f%z?RiUet&_B)s~)bzPuZcnCO)SA9J0Y$b$Y_>RgWJ^5p=}fPe)=`rzQ0px0d) zow}qV&=1x2NTZs~2dx30jm*P&BaG!$CvaBJuhr>##2sUPhf+T|D%l6j}fy=}RoaF+vYLjqtMHfS1q5dXxXzf|+H z#A0O%(_mtmP|&lNaN~^~taz2OZVj$QD?Eo_H5pgIAF&yN>&Q@VsFhTm6$DkSd)Eev zMp`*Kmc<+oj}Jea{8Z#2qYNe>#2x;jUYExHX-*uGD3;<={HrclheVa%HI?WTlEG zL|~UEqD>_z0tRX{_iwpL0coWpGDQz;VGnLdP&9`Zm;yW=a}g9+sQu?3H}-1Clcfr?^I@gwBNhfa6BV>Ka;=px7l>+?51NK7clySU{*#>_7Pr zn}waBQRs1z!Vm&n7(zuIcxwzkQW?3P6qU*H`8O_cQP>@@}{TQse3Uh5g${nvte!%Q4nWF-=J*|C7jJsyo2@B{}4>3e@*Xc+zL#pynXFbSYkS znDjZ#)Mk6d><){x$Z)7Q&oC-v5L2rj)ms6Ers|pbPr*0~~|_ zMMO|QDD1i^)wCYiEG{3BmVthG7b9zA;1sD>ZA_Z!-j@plffR73l`XFeg{o2HxP?P^ z?SvE)3-ncG@<}T-&4@xadaF`o_rAW25*RYhQTel{+_Imaq-M7`d;JyWkL z97^;eNl@J+rM#^ND;F%4mDSR{YZ-C`2%$r@--;B;s2gv0^(H^!$5Gken+HWd3Ae}$ zk9lawQ88@vibiisk$HL!mZIxEJP-s&)mkWjv^t6{%}+ub~z; z1!66S4#xv20d76KpoVhQR%tKu{F7(Ur!>jHCTP1$`Y8^?N`5*5q~)I7%uoOX)(Q31 z9aw6|V8M7bKaJrOQ0qd>wV^ZV1-u&hqc9Cq!Sq1w=$vPxCR@nL{em9+7ywLU-8%e%HZr0e%Lv7m5mlktFNLKx^I2IpWK!Jx$7HXAj)?m zbN*{}jZR@wJS0AN71{Cf@KE|r)d`a~vi~UAUBf7dBwHuW7!9s>s3%XjpKfln0NpZg zJk?znF2PE2jRn&sJm_)n(pCvAawMVfu^&mfKb=6gZ2B!e74@nwKJn50pb97+1M3^x z@2rU=eCI7gtn00inwEN!8VEJ+P zy{kjpC<1^0$|F>(!`@&%whWBMvQK9r?RifEjNm_A`C2e2Q$7LK_!+nokq~n~dC(?X zulg#!?Bv5?#8HpveS1dRNP<3f3B_Z$bd*m?&T{KKweM@wX9^h1t={gJADaB1gl|1( zvG0GPsnoTeJ{nSAR96cnR2T%|VOWcVLV5BR z3hm(KV)B$$CiCo39&kd=QSd)6&<9u`BMGX*^Gv48ZS{D1LdmCeKv^MFBXp2ooYInM~yYM7%Y zwZq}|%1n*%6dYl#c{{xclse!9VcBXv7;$d6ngfM)utB8HcQv!8(@8Ei- zjFiY5DPS6O@#4)O`|k!O(|Aht;v*Ps1m0P_dtMIBp8atzILx34gxBzSsWG$gpwW

      ys4jssN+X>QrY^Na^3#;B0IlTV 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

      7zcheGWyJMrZy00 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

      I!TaCj=njd3kdvZF9oy#%LW>>dFeOL1 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 z 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

      6GFoa)S!Iw0y(tin5K6SasP^L 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 array( "application" => "thunderbird", - "version" => "17.0.3", - "filename" => "sogo-connector-17.0.3.xpi" ), + "version" => "24.0.4", + "filename" => "sogo-connector-24.0.4.xpi" ), "sogo-integrator@inverse.ca" => array( "application" => "thunderbird", - "version" => "17.0.3", - "filename" => "sogo-integrator-17.0.3.xpi" ), + "version" => "24.0.4", + "filename" => "sogo-integrator-24.0.4.xpi" ), "{e2fda1a4-762b-4020-b5ad-a41df1933103}" => array( "application" => "thunderbird", - "version" => "1.9", - "filename" => "lightning-1.9.xpi" ) + "version" => "2.6.4", + "filename" => "lightning-2.6.4.xpi" ) ); $applications = array( "thunderbird" => "{3550f703-e582-4d05-9a08-453d09bdfdc6} - 17.0 - 17.*" ); + 24.0 + 24.*" ); $pluginname = $_GET["plugin"]; $plugin =& $plugins[$pluginname]; diff --git a/Version b/Version index 2e7fd0f5a3..f260ac6123 100644 --- a/Version +++ b/Version @@ -3,5 +3,5 @@ # of the executable. MAJOR_VERSION=2 -MINOR_VERSION=1 -SUBMINOR_VERSION=2 +MINOR_VERSION=2 +SUBMINOR_VERSION=0 From 070d3dd825fb81c5c05e8f2bbd760a1ac438a81c Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 21 Feb 2014 15:48:41 -0500 Subject: [PATCH 208/214] Extract node value with 'textValue' --- ActiveSync/NGDOMElement+ActiveSync.m | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ActiveSync/NGDOMElement+ActiveSync.m b/ActiveSync/NGDOMElement+ActiveSync.m index 7fb792e3cf..527486605a 100644 --- a/ActiveSync/NGDOMElement+ActiveSync.m +++ b/ActiveSync/NGDOMElement+ActiveSync.m @@ -145,7 +145,7 @@ - (NSDictionary *) applicationData } } else - value = [[element firstChild] nodeValue]; + value = [[element firstChild] textValue]; if (value && tag) [data setObject: value forKey: tag]; From be36e0ceea2e2a9c6aa1099a7d854a65a7b75765 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Fri, 21 Feb 2014 20:35:54 -0500 Subject: [PATCH 209/214] Fix view changes in calendar module Fixes #2613 --- NEWS | 4 +++- UI/WebServerResources/SchedulerUI.js | 4 ++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index a9e6fb41c9..e30028e73a 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,7 @@ ------------------ New features + - initial implementation of Microsoft ActiveSync protocol - it's now possible to set a default reminder for calendar components using SOGoCalendarDefaultReminder - select multiple files to attach to a message or drag'n'drop files onto the @@ -12,7 +13,7 @@ New features Enhancements - we now automatically convert into file attachments - using CIDs. This prevents Outlook issues. + using CIDs to prevent Outlook issues - updated French and Finnish translations - XMLHttpRequest.js is now loaded conditionaly (< IE9) - format time in attendees invitation window according to the user's locale @@ -48,6 +49,7 @@ Bug fixes - replace slashes by dashes in filenames of attachments to avoid a 404 return code (#2537) - avoid over-using LDAP connections when decomposing groups - fixed display of a contact's birthday when not defined (#2503) + - fixed JavaScript error when switching views in calendar module (#2613) 2.1.1b (2013-12-04) ------------------- diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index 98449b327e..5efecbd572 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -2526,7 +2526,7 @@ function restoreSelectedDay() { selectedDayDate = findDateFromDayNumber(selectedDayNumber); else selectedDayDate = currentDay; - if (selectedDayDate.length > 0) + if (selectedDayDate && selectedDayDate.length > 0) day = $("day" + selectedDayDate); } if (day) { @@ -2542,7 +2542,7 @@ function findDateFromDayNumber(dayNumber) { else view = $("daysView"); var days = view.select(".day"); - return days[dayNumber].readAttribute("day"); + return (dayNumber < days.size()) ? days[dayNumber].readAttribute("day") : null; } function onShowCompletedTasks(event) { From 2b6428efd084f7b09833cd7b854a737feb9f0f2d Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 24 Feb 2014 07:55:21 -0500 Subject: [PATCH 210/214] Always check resource conflict for new events Fixes #2541 --- SoObjects/Appointments/SOGoAppointmentObject.m | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/SoObjects/Appointments/SOGoAppointmentObject.m b/SoObjects/Appointments/SOGoAppointmentObject.m index c2dc463e3e..8fa6a1174c 100644 --- a/SoObjects/Appointments/SOGoAppointmentObject.m +++ b/SoObjects/Appointments/SOGoAppointmentObject.m @@ -813,13 +813,14 @@ - (NSException *) saveComponent: (iCalEvent *) newEvent { // New event -- send invitation to all attendees attendees = [newEvent attendeesWithoutUser: ownerUser]; + + // We catch conflicts and abort the save process immediately + // in case of one with resources + if ((ex = [self _handleAddedUsers: attendees fromEvent: newEvent])) + return ex; + if ([attendees count]) { - // We catch conflicts and abort the save process immediately - // in case of one with resources - if ((ex = [self _handleAddedUsers: attendees fromEvent: newEvent])) - return ex; - [self sendEMailUsingTemplateNamed: @"Invitation" forObject: [newEvent itipEntryWithMethod: @"request"] previousObject: nil From 9ed1d57ec2c22a3382e02caaa4f13937e6863b11 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 24 Feb 2014 16:07:55 -0500 Subject: [PATCH 211/214] Fix auto-acceptation of resources as attendees Fixes #2541 --- .../Appointments/SOGoAppointmentObject.m | 95 +++++++++++-------- 1 file changed, 54 insertions(+), 41 deletions(-) diff --git a/SoObjects/Appointments/SOGoAppointmentObject.m b/SoObjects/Appointments/SOGoAppointmentObject.m index 8fa6a1174c..6deb4ca10f 100644 --- a/SoObjects/Appointments/SOGoAppointmentObject.m +++ b/SoObjects/Appointments/SOGoAppointmentObject.m @@ -545,51 +545,64 @@ - (NSException *) _handleResourcesConflicts: (NSArray *) theAttendees [fbInfo removeObjectAtIndex: i]; } } - - if ([fbInfo count]) - { - // If we always force the auto-accept if numberOfSimultaneousBookings == 0 (ie., no limit - // is imposed) or if numberOfSimultaneousBookings is greater than the number of - // overlapping events - if ([user numberOfSimultaneousBookings] == 0 || - [user numberOfSimultaneousBookings] > [fbInfo count]) + + // Find the attendee associated to the current UID + for (i = 0; i < [theAttendees count]; i++) + { + currentAttendee = [theAttendees objectAtIndex: i]; + if ([[currentAttendee uid] isEqualToString: currentUID]) + break; + else + currentAttendee = nil; + } + + if (currentAttendee) + { + if ([fbInfo count]) { + // If we always force the auto-accept if numberOfSimultaneousBookings == 0 (ie., no limit + // is imposed) or if numberOfSimultaneousBookings is greater than the number of + // overlapping events + if ([user numberOfSimultaneousBookings] == 0 || + [user numberOfSimultaneousBookings] > [fbInfo count]) + { + [[currentAttendee attributes] removeObjectForKey: @"RSVP"]; + [currentAttendee setParticipationStatus: iCalPersonPartStatAccepted]; + } + else + { + iCalCalendar *calendar; + NSDictionary *values; + NSString *reason; + iCalEvent *event; + + calendar = [iCalCalendar parseSingleFromSource: [[fbInfo objectAtIndex: 0] objectForKey: @"c_content"]]; + event = [[calendar events] lastObject]; + + values = [NSDictionary dictionaryWithObjectsAndKeys: + [NSString stringWithFormat: @"%d", [user numberOfSimultaneousBookings]], @"NumberOfSimultaneousBookings", + [user cn], @"Cn", + [user systemEmail], @"SystemEmail", + ([event summary] ? [event summary] : @""), @"EventTitle", + [[fbInfo objectAtIndex: 0] objectForKey: @"startDate"], @"StartDate", + nil]; + + reason = [values keysWithFormat: [self labelForKey: @"Maximum number of simultaneous bookings (%{NumberOfSimultaneousBookings}) reached for resource \"%{Cn} %{SystemEmail}\". The conflicting event is \"%{EventTitle}\", and starts on %{StartDate}."]]; + + return [NSException exceptionWithHTTPStatus:403 + reason: reason]; + } + } + else + { + // No conflict, we auto-accept. We do this for resources automatically if no + // double-booking is observed. If it's not the desired behavior, just don't + // set the resource as one! [[currentAttendee attributes] removeObjectForKey: @"RSVP"]; [currentAttendee setParticipationStatus: iCalPersonPartStatAccepted]; } - else - { - iCalCalendar *calendar; - NSDictionary *values; - NSString *reason; - iCalEvent *event; - - calendar = [iCalCalendar parseSingleFromSource: [[fbInfo objectAtIndex: 0] objectForKey: @"c_content"]]; - event = [[calendar events] lastObject]; - - values = [NSDictionary dictionaryWithObjectsAndKeys: - [NSString stringWithFormat: @"%d", [user numberOfSimultaneousBookings]], @"NumberOfSimultaneousBookings", - [user cn], @"Cn", - [user systemEmail], @"SystemEmail", - ([event summary] ? [event summary] : @""), @"EventTitle", - [[fbInfo objectAtIndex: 0] objectForKey: @"startDate"], @"StartDate", - nil]; - - reason = [values keysWithFormat: [self labelForKey: @"Maximum number of simultaneous bookings (%{NumberOfSimultaneousBookings}) reached for resource \"%{Cn} %{SystemEmail}\". The conflicting event is \"%{EventTitle}\", and starts on %{StartDate}."]]; - - return [NSException exceptionWithHTTPStatus:403 - reason: reason]; - } - } - else - { - // No conflict, we auto-accept. We do this for resources automatically if no - // double-booking is observed. If it's not the desired behavior, just don't - // set the resource as one! - [[currentAttendee attributes] removeObjectForKey: @"RSVP"]; - [currentAttendee setParticipationStatus: iCalPersonPartStatAccepted]; - } - } + } + } } return nil; From 761a7e2be11aed9cdafe7cd76e52fab19bc5dbd5 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 24 Feb 2014 16:42:59 -0500 Subject: [PATCH 212/214] Update Microsoft Outlook Configuration guide --- ...Native Microsoft Outlook Configuration.odt | Bin 32721 -> 32716 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Documentation/SOGo Native Microsoft Outlook Configuration.odt b/Documentation/SOGo Native Microsoft Outlook Configuration.odt index 944f3a64d2fddbbbc1b0f3c0d8263f4feafab329..eeb4d18532735499f46c969cd6a2732652a0da00 100644 GIT binary patch delta 18087 zcmZ6yV~j3Lur)gN?6Gazwr$(C@r-TTwz*uZjZwzXJBZwTXkhtC_tk zy{Db+jo+5@(Rkzjr$4wlio5I9VQ!LS?8=$t@+DSi_e#_F3mGp3Dxo6j0R%7{y|D|s zyUEW!?=}A>lK;-$efe~{t+_gyVn+g)pz=<$#L;~W6lzt|fAOf__t~xhtK$PO^*8LC z9Z@RZ;9txz=_osyrjO%~*<*!}_EN0Mj#K%6X8^e8H>D>It89h`8ax_c-$-%BR2)|a*d@-@j{!q_PA;|m> z$nNc>{bXtbFR98`*l8jFzyPjCm%(coc==kG6@8oN&W=VFc;R~fsoQkwvZwcyUCn9d z9yqQSwKMgLZ_h^iW@~4PM{mGE!fNN5my>PLYgVL(B5YL=axEASel1oki14*n4II_5 zit)~_7K~gZzTX=huWh{HFu-PD-J?OT6>z=U^(R6*>(oT;vU`*49V2vYo z`HCc|4)$LKOZG?;jfs9GTXwUI`l9++c2!v?-8Nsy*m{#Cd88eL_>;1>PyuLJ#`jBp;iWXpf%YiU|PVY_9akM$~_K1uQ z4$t#uh;?2Opf`>2ETe->PI@r3VS6ma-m;702;BCF#Wkw#ob?=rJVy%eTyZ+GkKAF! z)9=`eR>E)8B37ypQ48A;LC`?=I@;b@_g4bzrsLMJ`TJfJsO0Aqod4^BU!5YM8d_w9iYi$AQVQC&=aZnyZ_E4oUK8$|B#EZ2x8yKLW72;ju$tq`;BKq=TJl5YDhUKz5VAC0 z=Q_=ukEmvn2_kZsQoP4{N3z(J=_)&aIFVDh>@p17XTkP5>^%dZFWcBaCooY3m(M-- z0MSA7S#{WfC)0*srB~U`N#SC$^?!^7*CE8lH~=Qgh)^)Nni+6>e`*L0oXU?v zshG#c;ODK~EOumCR@bkSJ@x#HzI$X{@!%_9VWmAI&FB!`CxFu<@`6?;eYc!7MKo3L z)+#~vFP7#NY1J$&D|#ZsU<}Avm+M4DEFd!}Wi5(u2rT%s5P;aXo*CkV4Lm@0b-;lj zApvC03LKqI22IV-^DLXzk@~|x1GuDtW*-}Sx`v@mPO?9rhIo$~NlxNC6EI>pSTMiR zz4SlqGY&AlaX9m@Cu`Q4Hnl}kmZ6S6=?2y2pEdc~3{J`q;L>?f#nhjiu03BvkvL(N z4t5;jA`HtQYi+VO)$HHR>0;?VJ-pmJHvsN8UmNg)ve=0WL1!^QqLP@WMv(t%Z#$o#aX!1glH`&s!zrF zuI^}jGAyO~y?0%R6z!yO&+Zy(an;ta$K`5I(#5B(8+0p3v7#v9wJ(wrGi?FQS2x+W ztKNDBC^s8u;Rhx9EZQd^$=<*mfKW>ZF!h_Nx!xNGF)3ta1;Z-9Uzg!k@XsLxKwZ*_!Sk)H zt?lwby;k?GR<0pMOuCjtM{M#`tvWU(Sk@yan=bDU8S8DA_Y0>7y92Icb*XbSlQW0S z5vK=wI!M~CKCTuK)ZC~y%KYXlQ%jMUm#52^gP$kI8)u%gcxQ3XWK7=f3+HSkxZ6J6 zrg<*(mY@t|hLpTuMf^KApv5%+>tr}ImPHxj2icbBD2K68;9SNwTP}IC&9+nO&PC}T zeoXLD>GsQ)Gn4ww^j=peO^oi%{oX8Z+oyr&IH!3Q>%2BdklT?`JIQ&W9{9a=kYL<6 zHP7j&mxpK%5{D+`l=F$m2IH8Q#&Ghi6UU(!F{)ZJ#bv?yJWB;RKteTJs5O{Ipi$b_ zbLNbP@emIj87t}6>p1Z*q;Yn@8)*&qoq9!yA-dv#y3b1;#Ff*ooFeRL>*hPkT-hd7 zet6ebp1VAxns|*nFGlP-8wFYoriwtjv1y=G${q;LLi=Aa#33^NiMt1hFSB#^As0~G zX+1;11*MnTxoeOs!1DHUErFh_iVDAkhNe*PAwGKAU3aguEOy(89`5@zltD}ENMqW^ z+7t=A3gq04r4d&~E;Q74s%MziRWE+XBuReeWPRpbM)6nP{WpH!Dh4bbSN$RhV_ewD zaHTWxcDnwc5R(b~+7djCE}Cx`v^1*l^vn`k8jr-HLi_d{;L0oDd73F^sP=3#muCSq zO!=ZKRQ_{2U!(JqI^OV>>RvC!i#s`eIL+ zqLzPv5CKWL|&xf6r%J-}h=gwuXmHO^*gNU3pX0 z1E$smy5?TuEk4J7f1{smf8W6A)|$VMFj_SKLk-rQ`L+c7nf{j$`@cl%{}S{6OK4R; zgKr3E+f=7VVQ4;(`~>Fzn-BxG0lQ^AzSv5Uiy@NnA1;|8H53q?mYOU%C3wt}rMb8D zTX8H-5WWE)kqkltc-^$&ffp*Q{2;;dxUr{^>3Lj%|7>?AuYJ{FX|F$P{(JO+v{7qe z|9d;YtVp@M91h7#Eo~%X-tnl(ZF=qG9!GRDBcC0`dT@uP zUUro`kuNhfjH5Q2RZj7^pbLiknw<;mCry2GxF?IHALPpaw1x5M+kn~5 z+NIU56m}q?!9IE?N>UPep zWQ%^|U+#?s&?eu+NDv-tXwVts$mA zG(q{1K2}L#G9e6FbPa-CCbH^U9RJLmm{DM#5D%~bAVl6_W5mh{_ICZ}ci&>H>cvEQ zSsem(cz}6UNlRU`^x(Tzb5qTS>h4eEjI%K0_IWcvMU&B`VM8(dsoxc zIoEJ8m}1--fh&;W8Q|g`9&iYnf$DV6wM0pV!5PH}eLDtaxgQ|~QU@K#aMppo{i z(b7=?3<{ZCNIQAPE-hfSl~x=;WHX4x-!kkm8U%3`y~s=BZEOoITE-+fHw`YW`GAkT z%{GVKhDd^oA8D1onyz5#nwc;^y|NiSz!lXB9dD_(Sa}LQDE#7;5{DrMKC>ucG_$(;C{4Y0(#~u`hEU zP$z~*_)&pbD7MDpnEADWtj^d3U}nQ6FUI8}iXv+{S@KS!gWn(OB`xze;x(PN%@`2; zyF|-x>pGutcyMx;yMOsuU(xCV)v`qB^2pYMVqM6wo|Y7DZ#?mp_j8Z|;qiT;1(#W^7MP`a#xeI&F6!r;)uMobcgojsbncD7tSH~$4Q9SM znJ2CEigAJpdZjxn_OIJ$f6BNASvjS@QXn7nxboDk_Nr+NEX97S`T?va-cx)ni7DN~?QWxw&Q4tgNW7cWO5H|LvU2 z28#yyqs%_=!ov5xR$R_D(_zKK1`_X602#_JM@S$=k((h)mavtpV!+3{-CRk#@#DC8 zwlv($9! z$-g$~{h8oe0*=?YpSKdg%7yzgK_Y(F=hn*Lej2WOo7kIiuKhce`$ZH#`HJsiXu-{* z?(~yep8YGNMy$Yby3uJ;ahAUxA__HSsFNBZ&$i-4VT$`$(=p;H%XFcqq^uLmzcuyl zIL_x{b;!6G9`L^P08rG4$G-+g2;b(}QU-4;EXyh?EimuESjKgx_}+C&k8?)>LsCz8 z6?)OtSGN4a$&G`vOwsg+@C%1H3kdl^&{Gvb5f)Aq zx(Up5d4TY()NVUjvoOT{Zk_UYDN2VT3c0m1Q(#tg;Wy*e(V*gGW5yq`VeH-ozD@6E z@Y=hsFECS~s-Y{EwpKs)$jK1Ewpf;N5t01|7Wgd=9h2LD^{?ze@zYoU?U>vRIqEhH zCLC|LAE0Urj%S!uV(Cc>(Gu$KxR)uc<}aanQGbT7U6sHfV4sro#OknnN^re|f`$$z z0$7sVdL4aIM#yxUjc=dY@3Y*;k&YhjCka$dBj9bwLJ24)%&#d3u{_BA)x_?}e%c_L zJEvvbflCrfk{!b9~rWReK;FEW30*tsC8gu z;u0!@8P6|&;QfVRZ!jlL|NATcSG6Q2u>?)etpoz8ZzI@~HXp=;?r?`E>*8k|HwQP6 z05B+pw*N(}ihm{KeN7G^1`H`j|NpR_6D>D zrM01MT@86PGx+ad{8Vvvm`kd<)2-h$oG@pR_aXs-0m1-x>aW9EJ!HwauR=6!N5;EI z)0X{f+{2#5+nxNUr;R(kFbthfqM=vu&nH`xr%LLB*x1mE5E$+L-S2@DWr8XrmIIhCLEj zhqd6uBi=pE7PvfcYycC_3yh^=H@NIftIRxiKqMlXp2WC$mS8*<(@emIyrT-JAHcd1 zLitLRfxC6B(k)bb+z>GKU?mQ##HlrM^wx6e#2W@lsarrlDn_j@3HjP#Wz>jdm~MN( zt@mR3g6z6;IW2fFDH42MqVQ0=jkWhB`JL8>Wp>1WA2eKCwON+EeOdS znmDii%SByWqV6zcFIWGVFIkO<4?s6YX&gG}khCMkqAZx9aA&hOYCLQRH=z^b!b!5P z6L9*nbi53yI~c4CCnzYoQJF{ZH|`L!bfGedOHw>%PY?>Z2c(=IL_%g;mIgAq1aqSZ zI0qe~95hF+1V7!Xm}EJ-=P&AbD;f;?-_5ytkq0Ud<09_Z3bIh0C@;b)0uUETG+8N* zVP%{ZY5yr_B&DFMoX>(kM5w2>c4(gGFp`EriBUEM0o}D%!X!gvOZ10s0>Ln%Tl-HzHtH`!z7!|&oOmZz zD@Kb;ht$#YQ$U%bz1?HR0qinbYa2b^d$)cwi$tS;i)1W9e$#8e7eUFL*y3PwdXa8jCftlpE*oKakkV^?!#dT@!j z*iAAJ1)TAQ%v+WFw$lrt23No2DqtjLlkez=G_Y^9a;p#YHr#P0Kn_!o^5~7gQz1Ar z3bug@ap{yBv~>s#;R9JhazH@84*A|pTT8`&KjLKkum_o_-XOIy8)@a4QQt*mRmr2U zFiDxGtfe6M&fzJ$>ZI*xWnifIKeIm^{72Gc_4BG(lGHPotMH*=<_k?yIEK8qlNnt( zs18tXt^bWVX=dVa0pU2Xhn2~uad@TXB(nlkBD>TaaoFm)zTfFM~B*%l#TbG+8dXgB)s2bVA-zmG;5~gqy$~T zkO}vJ0{pJw2om+!|5TC4YE0V=&ryW%^~#6(SNT|0D5#zY09c2?CW&ctNY@fYH!cq! zuBLW2B8;|dtNAw`0yO|W*RjTPN!1I+UXj4-pHuBWze2gE!=OuInYWmsFnT_IYOyNi zZ6I*slZvImwR4@GfaGMC|%q{+3s%8vDtS5>i+# zOXx3*r2_sP0G+{#^y%g*b_c(fEMQ@=)I&)<8*i6-v4j^CaDYoUOz$?BYLhG&KFhgi z2smF_9=-kkQN`PPdEeThEfhwDU>)6Rq`J15o51fA06}>KD5oqf$CxT;{$tCXcrOB0 zTr4Qk7apGgh#Ev%;Jn4gIz6rmFChhg<{tOS7rh`M7i#}dc4+kNC2?7NJ4^ZP6qz>w zyouDFzGkaknucIem7&Yl`dFr!(Hc|{x1T;_)+id7;tYqjOir+&cOTN2kQF)ySVU&Q z!sG)BknX4iA}HqG7o6Ogu){M=TmVD*6T7KTjP6M5xFf($1Lj+id(5(siTaV$8-jNq z9`TM|#{eP|@C)Axv-L6F#^ie)sM`#Nz6WirF@JK=KOAEFNMVS1%Z!-jcgm~nD48H{ zV9-l!0v!Yt5UkxF;+mf7Op$12qIUV0TD77HFr;6a#{^|B8krI(?v=j0ouLDFqO>h9 zv&POs0u2>e;d!KNTJwl<$!KTjqAmVgMf~zgy_M z!o;=9Vut;zzBzoBZkR*LrrQlA0t*lf!1eN2PIB4@nE`F>7P9{knDYNhYQBXjH=-Il z#6ZG4ZN>r$PMQ%9zY0L8%CWGXBP*HfzI6l$Td@Bvr+jWITGry4J-Y>~4MX)$!c3T; zq1O{l*Kmku<6OMm^~Xfg1$6Y`f1kWW0YJZ*C6}`FwC>9QQvKQl zV(Qe@{xN_ah=F-Wky0TF`+3>PEty75O9843ISf%0)vyv70z$|l*#a4zvEc~ifPcQP zOHp4s=RFeX!6P85RwY?Ek^87)c$tksn7)^xPn1D$PJu!WSa$iKy4o=!4-ZBI^QxBM zu)Oerc)=A`-OZY7+nbTC^L$4DU@uzVe406fN0))Rup#}{yP*D2rGqV~h7|oznA1;R1w*kig;I}I zf!1D*W$THpDPEU=h_y&jr=+BKuvlk7D=EnhxFRUOH{%neqCdShEvq(QSE3qiQ)tT2 zzwX$Z3^9cNkuf!huu9?dI4~LVr{hg6#h(%n8>3JAmbJ-&NaLV_VN2;ESkrqwI12PW zSJj`war#;uf{C1$cVEP$SHe~`nMG1tQ@Mp(t8PA!xP!T!vDW0;6YfB$EC(Z17Q|9i zbO{^*bQ*Jm5fxp|hVu+(j7mioOj8o9pRrRh7HRK0?2^0fPk?8iGJ?Us zbhB<$!M!swL(mNE$l!&y+$(8%wI#u3lKYC7`)X?D!}W9Czp15V*Ih*woo z<{%rg<+8bz+!-d{yb!cib)>4gK{EzofhUG4HN3-Z6X*k+eFQW9{C#d#W1e4-LMX!jZRWT(JzT`e)6;FHtki3$-#p%K&^U=U?oZq zf&R?SRvY_I%C4;izW>5QkWlb{Jn29=#~i}jA?E;!j-<8U7k59ug_gZt-oxvAgGuma zGsCkX2deOa#t@uIcnRMZP`>tw5Iw&53UqMB*Pb*yZyxDW;gJcqxo(*Igj`%aYvok}q8<<KflCHAbB6OF}(hYpsj$&ZvtcGR!SAg~DY z33fUt2Cob3q`54X{82+~$ahi1S%$o6w<<6Ax4|Yzh~!HzD#+s0A=={jzh6sxpnvcm zXeZ;v|3x}yJp@`cM_7(F!fK-d`PE?E6K*%9LJn4eXxd8A8gn`=*^Y=T1~0Ds;VuVA z)X%EaPBn_6P^uz|F*iv?iy8y{vIvEwiNKp_sUr-?5+TSHU0&2hC41JCSDs=j>g__F zgu=&U#PXt~m0oHfSBPseIu*>Ggjm$E$-a!o+sQT<6!2LQ=^Hg461*+&)6ra+mU@#< z=0Fk4H}FMied-pX_WKA?cq^86uZjRrTqcS8mpmf^y;7vnXP1bkk@fmr%DOl+_)Zms z`cK^`&taaZa`3RTmb|dXQC*8VaV6ajAHl?H_csL4~V%|W_ z&lI8PGIL$2xlxDAom|4WX}E~MD&S-=^znd-78-IO5H!xtc5l|S=ev%U1TX-w|9U_p z;EVTp@#nswa@NX>Wd{+IFS9jWt^H;sWaI-^i*MTvgIf^^Y6E(AatUwcM`nrJfnb#^ zRXj9k*Wahp$}VCygj#it>ol+sxSh^u6DgXi?&Frzd=>s7e*nA1ET!bsPOg70+jDP) ztG9%GTXL7rVGsM;4QI~(WBm(ITMp9INR3GztRuZ1HeEcthHxj!y2G19A06hI=&izu zh|~fAs~-xDX5}$J>&X#Jy=Z_xIM50dTzYO(S}JeEqh>*K6V;UqSBW~4N`7r4#cYLO zn@*y{{@k-`6h#oUUI8h;sonF<=vrWp>e>&oGWaIJ@bU#J{0ttO5TNsh2WxWB@ z9Cv(;+>(@E;2&Xk$V0loDNdeoJz5K*D&V13^jlV#*T=%$DZeSBykMtuK}}KuU#Xwfvux#_ zzW`9f;v(+DgA)Kt=1gF!X&7cY8iaqX5hEt?P&wQ3#0|`k$12U5qsTX$O*hZs0ug&Z zE~{f&$~VW+U_%(u1V8zJ=TCq#AVA$PJku^Z(-Qg;p%_~Bm=TJ5nOZK}@59xoetfp* zEfWr>ApsFS0vOGI=TpYV^u{hZ#ziu4Xy|()lg)^EUjhMiL7`k+^7x#A zWizUAd2C3M!0y=#aTiQ&t)HN9HCwsq`WA;s4XT`aT5T5HI`x23 zLGnrVhA-~9FZO0P1Y{wL^v3y2G4Lp(k}Cm&-fkbC9vKf^h|YP`ch~e=Ty%L_j`;?> z(K>a>HG06MJlLZ2@1+=9w!cw2q(xFDw$**4f8M4mmFF7 zt1g>0>MTq5iU@%?nGN0ERS=U|bnmJ!RNTF`Ckw#k#0uLj7zwBsYWE18MRICUEZT-o z+oo5S*>awJcSvse7QNBgMcbzt_VXm`rfm*NEVmhUtIT=MkWr?%S<9Lc*3@Q0jG3M0 zXcIea;KOVK*eK5sGUgqejNxAv+Te$Qh9D_MCm{aew*K!*o?Ms&TQy6^cZa?B`Z=#l zyd6LbVmcoJ6&mCaq~RC?Ed`9$h=^72V9@d7+TKq%J4|M|+ia^3`w&Q!f0Du5&*^h- z7>^vn8sAtD!Gxsuc&j`5@X0?ghV7*{i`ZUne+C}^r->#yylUAEZgXZls2HK*@}Pye zfPu`9RQ#sQDH={ZpfDrsuw*#6rl2AKB`&~q(+WtQ1?Y=Bg1pZQgpu2dahBOoSI)wN zxK$f8;tzsC`-0j5mg)Wg>W@Pp^Z8|Dc|du3m_Y66>u&VJ56fiPL3OPz}8v~;}i=pdWGSr!+th zu*+y5mS0C#7k=!Ih|dl8b>AJ!szY^(x-igHn-b7xH0^&=WTu;?EUr3&F*Ju3R)jcx zy}iA@K7n%S#)V^;wbyS|u$9Pjh|(CW{r5k$aD!&yNHAXtzdz0?_7wEVV^TQ0&}#>*DuU3? zO#I+7su82NRb!$)j|lr`29$?nTKfcd?qNp!JEqTCPb=&xOo{)#z>ti<0K5ZU$`naM z^6Elfv!6m*eAZIe1gRlth8;gux|h^{FRtabIJIE6XLh>77s4GzU)R>WD#CE9ZiNc4 zSwCzFyZiv34M%2zq=FN0pB+>mcGB~tqIQvAXt<%S3*9&r!!mG zTQ)b3&sRQ(!7UEEeZPMAfL`|SyJNJO-1Ekqg8}J=ir-z?1($ufQf7D>Gl2GzkIZB;*d@{@W;Tc_6#m zRdOse!mD8SuHxubC%JC@ysO*8rzy1*U;Fz6rhqw&sM+lMU=6W}EqMg7wE4NLWPhO6 zM##N3oJ6xwM7VgvsZ_x_{&zUp#0Z4gqwDd9M)I`O=66_a!H&<_lMFyV=CDk0-^4G! zpQ1t|+~WaNU#S8b4IruDgwz|+K;l$5b(++F8o!&8=25OZ<=uB8z0bfh&Hk)(Ucsmt zV3WVHxnzEfkfJ?gUl}aT)~!o}#Trl%{cLHNqeIz{M|@H6DbKb4tnuOI#e##h=!u&) z*BArfSQPDZz|)vU!}lM~l;K1orJa1QNcw0bNDiwY1lTFo0(gd5b|*l1haD^b2J(i^Q=-Vk)++YkN|kqW)NpzP+(JeV1{hzB zNRvYMPdpPB0=VbwqVI2qEOQ3=cQ=yZWHs1rua3GO-t0@4}DuO{u?EEK!27tYa5H@{3p|nP4S-oa}`@t z{jz$xk&CK1Z!-53275F<$U>MhH1DC+oD!H}0*aZZ2FMhTIN`WTfbDpe)cs>ZhTBoP z?Vg?17xLj9UQ2nucCdW`NN*A=xTDCN`hQpaX+M z$bBoBfRw+Qc;ks9UczuOv2A{4tHv9?sPerk?u`eZWh!F~zSm=%(&(bGs2$XADlp~O zkwt`22Cz4Hc*&93ra%b_D0p6r%YumX*QUxO>^P&fe{6u#TarB{#b#nJ}nh%sMglYPabq3 z^{8=rMaC z;flf20C2p*`N=&2RR8; z2b6Ct2!8lVxoJu%CceTIK%p31j~W;q!tIWt%jkE-i#c1VxNc@-9desDr~^e#fqXPW zJ-w!~yF>;O+Aw40=gyfUp?{7%NJ0@s7%}@FKS(cIHA=7Ymq)G0UMnHO857;`CSqFM z^1d&}g3tm*a|3lAM35B63;{NDn-4P$0Vr#r$o=c?rz)8uW0c4ljq=aMHV?=W&Vgc9 zCU$``%#e986OB1}=j^)n;{{$$+Laaj7CWUjlFkud*bpLNddWpDtA|wy$NVxvA|?8d^iGPz{eAC>0TK3v6DFk4 zr2&ySN?w&Aq9|Iyh0DE-QzarMz`;?dZR@NNtkvUM53!C?S{(TZ!#+7L!kUn%a z2&Mifd&lP$mKJc@!5Uc3 z)$Hi6#N9xo69A6%V8io;4KVCBm>XQ=2(4o{O}bI4JS)1fqWX-LRs!gF^At9;*PE&t zX8nme+z7f-D}u#qEAbCN_pE1o_)Fz}Xqz2bgR-}8L_W(zEl_L%!HkD^kixBY|!SD`lF!+yRscgs%;{-4st+|doOTzERGJ0tg8^n0zifq$&@@{%+Z&c?BG=^+b zDYKBIxW*Lz2xH4-a(Q6kwl4J?--h;4c_Y2admq{HK4#)i0y7B;CryPuA{r}x+z+N> zncOV!ROFA@X9YK33;p$+f$=7GR2>^SgIB3KmY>{eHQ1qm!G`$EYzx?Cpkq73Lx%`{ zHWS;>?4#_UY%t}V)IZsjjgagmJf#oi^XPE1%!z2_%0PBY*K(E0sDT2wgpXl~QADw! z=fJsBj2afmhl4IW8?J|s(V&o*xo;e1$mGW^1(E-9W>NUz})#^i1)~^avB)ciiBBZfwQCY`U(eibpk^N5i!g7t; zH@NUvd1n4NU|pg>lYM8ZiO6_cHh#!qea_>@86KxfO%vcHOQ9{}KBQ4&uJL<6{}cF8 z831uc9sGyJpb@O$$f(mzxN(WMN`3~=H{m9vGz!DvGRl11cK`&ITR`G4;k@pUe~~{c zFi6P+yXc$1W9yy;YltvInq=?M!JDHgjI3;ny{d00BwdhQrJJrGDO9rbv3@zwDrNG< z=_%PyTR&c{D9cK@e1ot{ltWj325o4~s?VxA`D5$FeZ6Zu&=ogDwq8E@2b}Z?D}*Ig zf6UIP?(8u4iUT+XqbwEo-xY6EvML;JSbYDloMMJ0I02N$l;dQiI zBWs-3wZX1l$Y`?sh13iy!Z*AnF&FJct6QD*-`X6sjRSy#a)SA$yE3p+!@LwHk zcVkUhSL?Tjuh2l-1CFroFxYG=jr)e4E-t|nL;Th+N}!;VXA!uoZ8IK>&cxR;VDY9_ z@w^ZMz=TCJ#tx^prgZ$RDr8=Hagxjk{2NWsWu1hWnjP5JAd_z_9w?MB7vbfSKxlh6 zK>vEgH31NwfK1p#Xz8$6TaomXx(=zhA~2SbOJUWAXJp^3PzbB{<)yj~QVr~>WzGmt zi^uz`BBnow&$%~D02Z6({_U|oT7UZVS1TA2Yz5Yp1ZSe{)Wk3r4Zg+1(@KEMN~@=( zTH3Fhk+fj*$DAL2#h?#;GVaBWFbhlB-X=ogMwr@(b2~QTi5A2~}GzU<|Al4_nJxN32#P)LK29G0?-OL#l!P;B|UxR zx9&m)UkZKjMe%owKkm@)TCL6{>H&{)V55&~qYmV=`bjvVKLpW7fNCfDuWfw+<`vuhwg&Kf8Ozu;Z&Nu%}1dn_k zBjZRN_P0p5DsX=N=3&8ULXH|)7kkp;L(%f{u>(q(|+N zZZH4LxD=*5Dm>Y4n^4IL%m{(w3tcHqi4k-**M!iO8KBq9#CG;r+cmdBU^WOVy$zXElkK>Z!i@6En=BnLjg0`EUvf#G8dK$E24BKx zAw7C{g~?-TqdVC5dHq`4faij8Vp`k)AzFqLnuIxlgR==6%@;%?2R7~dmr8U&S4DT5^A1*2)uN1AqtV=n4B@|xA zd#MQ-#TuOwje_yuQg0h`!IXv_I*5CoSYk#8k#nL+NdlpoJ1`X-*4D(2L1SD%Z=RdR zMG;|wX-X}(+&D8_rLNF136&PYSinc4dL{IgwCT!XRe(wo;jxJ!&7IA`ZA;QEv_nnm zzag)m4>%>`ccXW^_+zX&9bk*4fgs3kcJd{vVi0}BKH@eWl+r-FIg7n^GN$x|8IK^#ZVi8V_;}@nPGmJbks-H}9Cd+$$)bXmE^WB0DvV+w zysSTnT`W~vTUjlR;I*;;pgv+6_ggg=e5h;KE)6vjFbv!+o8dNXTm0h2s|-`p?UI7q zCSbO_9;Wh{Jd&&Sv}p20Ys5YNg}KR)2C2RZji=w4Lp3U4@U)d99RSsW;ZOksU#XA| zoaYYc&tgr9Q6}Ey%?@btvuZ3D^QvyurO!qUy%nW9oeoHx(J{8tQTYx(<<(u6sHbL) zt1N(-uS}|OEyriDHrx>H>}6`l?_5GE0l+xPy(1tC{JkYP@pxxRKNc4fh*r+qkCGGa!ig<~tM&In)L;oaF`M{qtcb!$`vs}~bL zF^q5s){dbkAASrXft}$=&-_ z>)d_N{HwoRBM%u8iqTAy$O)&q!Avcp`3q;tYmaLlLS?4#nWtUkS|DBKMc8G8Yxyg? zb#+{3@5!P2&h8kpu~Igri@y8-jy~UTYh`MU>Xl?deJp^plat!yFT$*Pw(n7vw4%YM zk)8jydnw_s%Pc(UDu+e&n7fS!aAi%8V@97h-TL#++@5dob0G-(Fso)C(^SeXR7!Gz zzg}fZy}itq@gIzxz{U-#&qL16IbQaq+#s4e2WknJUl3pBot~RXu~ubzazDlqF9PF1 zEY@;ac|m}KB_!D#DskTQ^qx_zl&BcZO6l1#6*Iq9kG4XBrZTLh1)hV)2e73xifRUJZV=jCzrOl z{d>_kQK;4Djsu)yZxs{~5i3F`3Lka-Jucht!gm!4=S>BF^41 z^+a-q0SQ3#C9o1Y9sd|0EsltgmZjeURmU&uNbL*#n+U{Lmf^P2W9*_KEnj~v6&Eo! zi}}1T7E_~~_f!+akIwl@=$F7qltsJ3r--!TBYgYZT7Lbb#~2k&Ax}6C;kdB|Mr8Y? zP+wN>wJottt6-|F$e_W%ud4y8d_mD^N%a29L&^Bn!iZ<+?)Zv$TefdiVa2X2Dk>Pt zTr>;u&|FknMV1yP^d{J-mLt4$M;gUI$|aIE9a);-tm&yP)LY< z$SX?ch%&bB7hsn_CE>Z&I{Lsx zfG6d#4mJFJsky6RbQ{c95#9rOy};KxlFANXXZlxTC6mwSQwugMW?A)r_IBa3ZH2!B zpZ$5RwPO8CnJJ~S_Rdi}|MYljwcpg`HAc4Tv)Yw5vx&EuRX67U-0B-{#+oJXvd;6T z^R+w1r$Ux3?DRae?VLZKz1J;)^#6PY!GRwSugpt(Q|i_(mnO zlK{b6e^JO_{WrEXWqQka-V-<`GP2}$#W&knR2$~n19GSCN3Aed;8x5+^he1sn}eZb23g% zdGb%I8z)W*N?u%iQhu3+#_QUZKXcqS#P>`)%4}rdomAdm!Jj;hQ~z`9oOq?OxhhAO{Q6U#ZN3+uxS8|Kvf1^dXTqM;@~>FtDgIpcc}TE0d+` z{rhJd2poO?SES<`m)S9a4GnukLbXe`PBqhht827Pamx|6W0BkL?|Zg>QVGB1r)TDM z`EJUa+P??C-ots<-0NB11Ly04lQi$0uqu!Lc7M;2S`E9@RjZ`bIKto52wkdBPh624 zo$CKA=-s@nDqY`v{Z(u`=SjGQs6V;oq?c(VdA9yk_3ab(JF88WDKqdKe!#zQeF<-q ziSNOX*uZmU>#SdwEwW%* z^0;~V^XrGE^_~2NWqKXX%dh4i%DucifHMvRff=L+7k(v&xRY<=yhB z`BF{rVw0$pvMsu2IQH&soh+g6nmOG@Mq2q-pV8}Y^4ym-$_^U6+__y;Z!0?9fKRpRGagGS{{ft z$>fLC+VUVFVnsM>u*)@{3AT3=VH~nX3WMF7!W?(=y)}st)Mq*xOT555LUQtRK%pAC9>!q1m z%O~F}7XyYLIAA9`0)=*$PmZfsLIep==wtch`xP>pD9!*ku7J@52Ea^>1k@+%*O`HX zV_lszW8LIab$Vdl#~PsN6_W!hYy_T5tnWD<|{S qs;EE%!)5mU@~t{R?=J+V7EvTOFfh!moV>46eDdyk0XCj$kPHA;l1icg delta 18162 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 From 5f2920db9b1c7fd89af8019d8a007bfddb20a742 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 24 Feb 2014 16:47:41 -0500 Subject: [PATCH 213/214] Update translations --- NEWS | 2 +- UI/Common/French.lproj/Localizable.strings | 2 - UI/Common/Polish.lproj/Localizable.strings | 2 + UI/MailerUI/Polish.lproj/Localizable.strings | 8 +++- .../French.lproj/Localizable.strings | 1 + .../German.lproj/Localizable.strings | 43 ++++++++++--------- .../Polish.lproj/Localizable.strings | 33 +++++++------- .../Russian.lproj/Localizable.strings | 27 ++++++------ .../SpanishSpain.lproj/Localizable.strings | 17 ++++---- 9 files changed, 72 insertions(+), 63 deletions(-) diff --git a/NEWS b/NEWS index e30028e73a..85a4018fdc 100644 --- a/NEWS +++ b/NEWS @@ -14,7 +14,7 @@ New features Enhancements - we now automatically convert into file attachments using CIDs to prevent Outlook issues - - updated French and Finnish translations + - updated French, Finnish, Polish, German, Russian, and Spanish (Spain) translations - XMLHttpRequest.js is now loaded conditionaly (< IE9) - format time in attendees invitation window according to the user's locale - improved IE11 support diff --git a/UI/Common/French.lproj/Localizable.strings b/UI/Common/French.lproj/Localizable.strings index b2e50cf6dd..65d42f941f 100644 --- a/UI/Common/French.lproj/Localizable.strings +++ b/UI/Common/French.lproj/Localizable.strings @@ -103,10 +103,8 @@ "Location:" = "Lieu :"; /* mail labels */ -/* Mail labels */ "Important" = "Important"; "Work" = "Travail"; -"Work" = "Travail"; "Personal" = "Personnel"; "To Do" = "À faire"; "Later" = "Peut attendre"; diff --git a/UI/Common/Polish.lproj/Localizable.strings b/UI/Common/Polish.lproj/Localizable.strings index cb43b8fa8e..a041733e56 100644 --- a/UI/Common/Polish.lproj/Localizable.strings +++ b/UI/Common/Polish.lproj/Localizable.strings @@ -69,6 +69,7 @@ "You cannot create a list in a shared address book." = "Nie możesz tworzyć list w udostępnionej książce adresowej."; "Warning" = "Uwaga"; +"Can't contact server" = "Wystąpił błąd w trakcie komunikacji z serwerem. Spróbuj później."; "You are not allowed to access this module or this system. Please contact your system administrator." = "Nie masz pozwolenia na dostęp do tego modułu lub tego systemu. Skontaktuj się ze swoim administratorem."; @@ -101,6 +102,7 @@ "Due Date:" = "Termin:"; "Location:" = "Miejsce:"; +/* mail labels */ /* Mail labels */ "Important" = "Ważne"; "Work" = "Praca"; diff --git a/UI/MailerUI/Polish.lproj/Localizable.strings b/UI/MailerUI/Polish.lproj/Localizable.strings index 0c6894604f..b427b01b1b 100644 --- a/UI/MailerUI/Polish.lproj/Localizable.strings +++ b/UI/MailerUI/Polish.lproj/Localizable.strings @@ -97,11 +97,12 @@ "Reply-To" = "Odpowiedź do"; "Add address" = "Dodaj adres"; -"Attachments:" = "Załączniki:"; "Open" = "Otwórz"; "Select All" = "Zaznacz wszystkie"; "Attach Web Page..." = "Załącz stronę Web"; -"Attach File(s)..." = "Załącz plik(i)"; +"file" = "plik"; +"files" = "pliki"; +"Save all" = "Zapisz wszystkie"; "to" = "Do"; "cc" = "DW"; @@ -280,6 +281,9 @@ "error_missingsubject" = "Brak tematu"; "error_missingrecipients" = "Brak odbiorców"; "Send Anyway" = "Wyślij mimo wszystko"; +"Error while saving the draft:" = "Błąd zapisu kopii roboczej"; +"Error while uploading the file \"%{0}\":" = "Błąd w trakcie wysyłania pliku \"%{0}\":"; +"There is an active file upload. Closing the window will interrupt it." = "Trwa przesyłanie pliku. Zamknięcie okna przerwie tą transmisję."; /* Message sending */ "cannot send message: (smtp) all recipients discarded" = "Nie można wysłać wiadomości - wszyscy odbiorcy zostali odrzuceni."; diff --git a/UI/PreferencesUI/French.lproj/Localizable.strings b/UI/PreferencesUI/French.lproj/Localizable.strings index e5dc32c7a4..b3d49aab2d 100644 --- a/UI/PreferencesUI/French.lproj/Localizable.strings +++ b/UI/PreferencesUI/French.lproj/Localizable.strings @@ -265,6 +265,7 @@ "To or Cc" = "\"Dest.\" ou \"Copie à\""; "Size (Kb)" = "Taille (Ko)"; "Header" = "En-tête"; +"Body" = "Contenu"; "Flag the message with:" = "Marquer le message comme :"; "Discard the message" = "Annuler le message"; "File the message in:" = "Placer le message dans :"; diff --git a/UI/PreferencesUI/German.lproj/Localizable.strings b/UI/PreferencesUI/German.lproj/Localizable.strings index 3f167aa808..d00f5ac26c 100644 --- a/UI/PreferencesUI/German.lproj/Localizable.strings +++ b/UI/PreferencesUI/German.lproj/Localizable.strings @@ -111,19 +111,23 @@ "personalCalendar" = "Persönlicher Kalender"; "firstCalendar" = "Erster eingeschalteter Kalender"; -"reminder_5_MINUTES_BEFORE" = "5 Minuten"; -"reminder_10_MINUTES_BEFORE" = "10 Minuten"; -"reminder_15_MINUTES_BEFORE" = "15 Minuten"; -"reminder_30_MINUTES_BEFORE" = "30 Minuten"; -"reminder_1_HOUR_BEFORE" = "1 Stunde"; -"reminder_2_HOURS_BEFORE" = "2 Stunden"; -"reminder_5_HOURS_BEFORE"= "5 Stunden"; -"reminder_15_HOURS_BEFORE"= "15 Stunden"; -"reminder_1_DAY_BEFORE" = "1 Tag"; -"reminder_2_DAYS_BEFORE" = "2 Tage"; +"reminder_NONE" = "Keine Erinnerung"; +"reminder_5_MINUTES_BEFORE" = "5 Minuten vorher"; +"reminder_10_MINUTES_BEFORE" = "10 Minuten vorher"; +"reminder_15_MINUTES_BEFORE" = "15 Minuten vorher"; +"reminder_30_MINUTES_BEFORE" = "30 Minuten vorher"; +"reminder_45_MINUTES_BEFORE" = "45 Minuten vorher"; +"reminder_1_HOUR_BEFORE" = "1 Stunde vorher"; +"reminder_2_HOURS_BEFORE" = "2 Stunden vorher"; +"reminder_5_HOURS_BEFORE" = "5 Stunden vorher"; +"reminder_15_HOURS_BEFORE" = "15 Stunden vorher"; +"reminder_1_DAY_BEFORE" = "1 Tag vorher"; +"reminder_2_DAYS_BEFORE" = "2 Tage vorher"; +"reminder_1_WEEK_BEFORE" = "1 Woche vorher"; /* Mailer */ -"Label" = "Schlagwörter"; +"Labels" = "Bezeichnungen"; +"Label" = "Schlagwort"; "Show subscribed mailboxes only" = "Nur abonnierte Ordner anzeigen"; "Sort messages by threads" = "Nachrichten nach Thema sortieren"; "Check for new mail:" = "Auf neue Nachrichten prüfen:"; @@ -199,7 +203,7 @@ "Contacts" = "Adressbuch"; "Mail" = "E-Mail"; "Last" = "Zuletzt benutztes"; -"Default module :" = "Vorgegebenes Modul:"; +"Default module :" = "Standard Modul:"; "Language :" = "Sprache :"; "choose" = "Auswählen ..."; @@ -261,6 +265,7 @@ "To or Cc" = "An oder CC"; "Size (Kb)" = "Größe (KB)"; "Header" = "Header"; +"Body" = "Inhalt"; "Flag the message with:" = "Markiere die Nachricht als:"; "Discard the message" = "Verwerfe die Nachricht"; "File the message in:" = "Verschiebe die Nachricht nach:"; @@ -287,22 +292,18 @@ "Flagged" = "Markiert"; "Junk" = "Junk"; "Not Junk" = "Kein Junk"; -"Label 1" = "Label 1"; -"Label 2" = "Label 2"; -"Label 3" = "Label 3"; -"Label 4" = "Label 4"; -"Label 5" = "Label 5"; +/* Password policy */ "The password was changed successfully." = "Das Passwort wurde erfolgreich geändert."; "Password must not be empty." = "Das Passwort darf nicht leer sein."; "The passwords do not match. Please try again." = "Die Passwörter stimmen nicht überein. Bitte versuchen Sie es noch einmal."; -"Password change failed" = "Passwortänderung fehlgeschlagen."; +"Password change failed" = "Passwortänderung fehlgeschlagen"; "Password change failed - Permission denied" = "Passwortänderung fehlgeschlagen - Zugriff verweigert"; "Password change failed - Insufficient password quality" = "Passwortänderung fehlgeschlagen - Passwortqualität unzureichend"; "Password change failed - Password is too short" = "Passwortänderung fehlgeschlagen - Passwort ist zu kurz"; -"Password change failed - Password is too young" = "Passwortänderung fehlgeschlagen - Passwortänderung ist zu früh"; -"Password change failed - Password is in history" = "Passwortänderung fehlgeschlagen - Passwort existiert bereits in der Historie"; +"Password change failed - Password is too young" = "Passwortänderung fehlgeschlagen - zu frühe Passwortänderung"; +"Password change failed - Password is in history" = "Passwortänderung fehlgeschlagen - Passwort wurde zuvor verwendet"; "Unhandled policy error: %{0}" = "Unbearbeiteter Vorgabenfehler: %{0}"; "Unhandled error response" = "Unbearbeitete Fehlerantwort"; "Password change is not supported." = "Passwortänderung wird nicht unterstützt."; -"Unhandled HTTP error code: %{0}" = "Unbearbeiteter HTTP-Fehlercode: %{0}"; +"Unhandled HTTP error code: %{0}" = "Unbearbeiteter HTTP-Fehlercode: %{0}"; \ No newline at end of file diff --git a/UI/PreferencesUI/Polish.lproj/Localizable.strings b/UI/PreferencesUI/Polish.lproj/Localizable.strings index 65b5c14efa..788db6408f 100644 --- a/UI/PreferencesUI/Polish.lproj/Localizable.strings +++ b/UI/PreferencesUI/Polish.lproj/Localizable.strings @@ -111,18 +111,22 @@ "personalCalendar" = "Kalendarz osobisty"; "firstCalendar" = "Pierwszy kalendarz"; -"reminder_5_MINUTES_BEFORE" = "5 minut"; -"reminder_10_MINUTES_BEFORE" = "10 minut"; -"reminder_15_MINUTES_BEFORE" = "15 minut"; -"reminder_30_MINUTES_BEFORE" = "30 minut"; -"reminder_1_HOUR_BEFORE" = "1 godzina"; -"reminder_2_HOURS_BEFORE" = "2 godziny"; -"reminder_5_HOURS_BEFORE"= "5 godziny"; -"reminder_15_HOURS_BEFORE"= "15 godzin"; -"reminder_1_DAY_BEFORE" = "1 dzień"; -"reminder_2_DAYS_BEFORE" = "2 dni"; +"reminder_NONE" = "Nie przypominaj"; +"reminder_5_MINUTES_BEFORE" = "5 minut wcześniej"; +"reminder_10_MINUTES_BEFORE" = "10 minut wcześniej"; +"reminder_15_MINUTES_BEFORE" = "15 minut wcześniej"; +"reminder_30_MINUTES_BEFORE" = "30 minut wcześniej"; +"reminder_45_MINUTES_BEFORE" = "45 minut wcześniej"; +"reminder_1_HOUR_BEFORE" = "1 godzinę wcześniej"; +"reminder_2_HOURS_BEFORE" = "2 godziny wcześniej"; +"reminder_5_HOURS_BEFORE" = "5 godzin wcześniej"; +"reminder_15_HOURS_BEFORE" = "15 godzin wcześniej"; +"reminder_1_DAY_BEFORE" = "1 dzień wcześniej"; +"reminder_2_DAYS_BEFORE" = "2 dni wcześniej"; +"reminder_1_WEEK_BEFORE" = "1 tydzień wcześniej"; /* Mailer */ +"Labels" = "Etykiety"; "Label" = "Etykieta"; "Show subscribed mailboxes only" = "Pokaż tylko subskrybowane konta pocztowe"; "Sort messages by threads" = "Sortuj wiadomości według wątków"; @@ -261,6 +265,7 @@ "To or Cc" = "Do lub DW"; "Size (Kb)" = "Rozmiar (KB)"; "Header" = "Nagłówek"; +"Body" = "Treść"; "Flag the message with:" = "Oflaguj wiadomość:"; "Discard the message" = "Odrzuć wiadomość"; "File the message in:" = "Zapisz wiadomość w:"; @@ -287,12 +292,8 @@ "Flagged" = "Oflagowane"; "Junk" = "Śmieć"; "Not Junk" = "Nie śmieć"; -"Label 1" = "Etykieta 1"; -"Label 2" = "Etykieta 2"; -"Label 3" = "Etykieta 3"; -"Label 4" = "Etykieta 4"; -"Label 5" = "Etykieta 5"; +/* Password policy */ "The password was changed successfully." = "Hasło zostało zmienione."; "Password must not be empty." = "Hasło nie może być puste."; "The passwords do not match. Please try again." = "Hasła nie są takie same. Spróbuj ponownie."; @@ -305,4 +306,4 @@ "Unhandled policy error: %{0}" = "Nieznany błąd: %{0}"; "Unhandled error response" = "Nieznany błąd"; "Password change is not supported." = "Zmiana hasła jest nieobsługiwana."; -"Unhandled HTTP error code: %{0}" = "Nieznany kod błędu HTTP: %{0}"; +"Unhandled HTTP error code: %{0}" = "Nieznany kod błędu HTTP: %{0}"; \ No newline at end of file diff --git a/UI/PreferencesUI/Russian.lproj/Localizable.strings b/UI/PreferencesUI/Russian.lproj/Localizable.strings index 980cb70075..29a9a21377 100644 --- a/UI/PreferencesUI/Russian.lproj/Localizable.strings +++ b/UI/PreferencesUI/Russian.lproj/Localizable.strings @@ -75,9 +75,9 @@ "longDateFmt_1" = "%e %b. %Y"; "longDateFmt_2" = "%e %B %Y"; "longDateFmt_3" = "%A, %B %d, %Y"; -"longDateFmt_4" = "%B %d, %Y"; -"longDateFmt_5" = "%A, %d %B, %Y"; -"longDateFmt_6" = "%d %B, %Y"; +"longDateFmt_4" = ""; +"longDateFmt_5" = ""; +"longDateFmt_6" = ""; "longDateFmt_7" = ""; "longDateFmt_8" = ""; "longDateFmt_9" = ""; @@ -85,8 +85,8 @@ "timeFmt_0" = "%H:%M"; "timeFmt_1" = "%H.%M"; -"timeFmt_2" = "%H h. %M"; -"timeFmt_3" = "%I:%M %p"; +"timeFmt_2" = ""; +"timeFmt_3" = ""; "timeFmt_4" = ""; /* calendar */ @@ -111,18 +111,22 @@ "personalCalendar" = "Персональный календарь"; "firstCalendar" = "Первый разрешенный календарь"; +"reminder_NONE" = "Нет напоминания"; "reminder_5_MINUTES_BEFORE" = "5 минут"; "reminder_10_MINUTES_BEFORE" = "10 минут"; "reminder_15_MINUTES_BEFORE" = "15 минут"; "reminder_30_MINUTES_BEFORE" = "30 минут"; +"reminder_45_MINUTES_BEFORE" = "За 45 минут"; "reminder_1_HOUR_BEFORE" = "1 час"; "reminder_2_HOURS_BEFORE" = "2 часа"; -"reminder_5_HOURS_BEFORE"= "5 часа"; -"reminder_15_HOURS_BEFORE"= "15 часов"; +"reminder_5_HOURS_BEFORE" = "5 часа"; +"reminder_15_HOURS_BEFORE" = "15 часов"; "reminder_1_DAY_BEFORE" = "1 день"; "reminder_2_DAYS_BEFORE" = "2 дня"; +"reminder_1_WEEK_BEFORE" = "За 1 неделю"; /* Mailer */ +"Labels" = "Метки"; "Label" = "Метка"; "Show subscribed mailboxes only" = "Показывать только почтовые ящики, на которые подписан"; "Sort messages by threads" = "Сортировать сообщения по нитям"; @@ -261,6 +265,7 @@ "To or Cc" = "To or Cc"; "Size (Kb)" = "Size (Kb)"; "Header" = "Header"; +"Body" = "Тело письма"; "Flag the message with:" = "Пометить сообщение с:"; "Discard the message" = "Уничтожить сообщение"; "File the message in:" = "Сохранить сообщение в:"; @@ -287,12 +292,8 @@ "Flagged" = "Помечено флагом"; "Junk" = "Спам"; "Not Junk" = "Не спам"; -"Label 1" = "Label 1"; -"Label 2" = "Label 2"; -"Label 3" = "Label 3"; -"Label 4" = "Label 4"; -"Label 5" = "Label 5"; +/* Password policy */ "The password was changed successfully." = "Пароль был успешно изменен."; "Password must not be empty." = "Пароль не должен быть пустым"; "The passwords do not match. Please try again." = "Пароли не совпадают. Пожалуйста попробуйте заново."; @@ -305,4 +306,4 @@ "Unhandled policy error: %{0}" = "Unhandled policy error: %{0}"; "Unhandled error response" = "Unhandled error response"; "Password change is not supported." = "Изменение пароля не поддерживается"; -"Unhandled HTTP error code: %{0}" = "Unhandled HTTP error code: %{0}"; +"Unhandled HTTP error code: %{0}" = "Unhandled HTTP error code: %{0}"; \ No newline at end of file diff --git a/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings b/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings index 60b8197941..efd2588e46 100644 --- a/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings +++ b/UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings @@ -111,18 +111,22 @@ "personalCalendar" = "Calendario personal"; "firstCalendar" = "Primer calendario disponible"; +"reminder_NONE" = "Sin recordatorio"; "reminder_5_MINUTES_BEFORE" = "5 minutos"; "reminder_10_MINUTES_BEFORE" = "10 minutos"; "reminder_15_MINUTES_BEFORE" = "15 minutos"; "reminder_30_MINUTES_BEFORE" = "30 minutos"; +"reminder_45_MINUTES_BEFORE" = "45 minutos antes"; "reminder_1_HOUR_BEFORE" = "1 hora"; "reminder_2_HOURS_BEFORE" = "2 horas"; -"reminder_5_HOURS_BEFORE"= "5 horas"; -"reminder_15_HOURS_BEFORE"= "15 horas"; +"reminder_5_HOURS_BEFORE" = "5 horas"; +"reminder_15_HOURS_BEFORE" = "15 horas"; "reminder_1_DAY_BEFORE" = "1 día"; "reminder_2_DAYS_BEFORE" = "2 días"; +"reminder_1_WEEK_BEFORE" = "1 semana antes"; /* Mailer */ +"Labels" = "Etiquetas"; "Label" = "Etiquetar"; "Show subscribed mailboxes only" = "Mostrar sólo buzones suscritos"; "Sort messages by threads" = "Ordenar mensajes por temas"; @@ -261,6 +265,7 @@ "To or Cc" = "Para o Cc"; "Size (Kb)" = "Tamaño (Kb)"; "Header" = "Cabecera"; +"Body" = "Cuerpo"; "Flag the message with:" = "Marca el mensaje con:"; "Discard the message" = "Descarta el mensaje"; "File the message in:" = "Archiva el mensaje en:"; @@ -287,12 +292,8 @@ "Flagged" = "Marcado"; "Junk" = "Spam"; "Not Junk" = "No es Spam"; -"Label 1" = "Etiqueta 1"; -"Label 2" = "Etiqueta 2"; -"Label 3" = "Etiqueta 3"; -"Label 4" = "Etiqueta 4"; -"Label 5" = "Etiqueta 5"; +/* Password policy */ "The password was changed successfully." = "La contraseña se ha cambiado correctamente."; "Password must not be empty." = "La contraseña no puede estar vacía."; "The passwords do not match. Please try again." = "Las contraseñas no coinciden. Por favor, inténtalo de nuevo."; @@ -305,4 +306,4 @@ "Unhandled policy error: %{0}" = "Error de la política no controlada:% {0}"; "Unhandled error response" = "Respuesta de error no controlado"; "Password change is not supported." = "Cambio de contraseña no compatible."; -"Unhandled HTTP error code: %{0}" = "Código de error HTTP no controlada:% {0}"; +"Unhandled HTTP error code: %{0}" = "Código de error HTTP no controlada:% {0}"; \ No newline at end of file From c6b227160c70db0fb892c2df1f5bb64caae45fc9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 24 Feb 2014 16:53:46 -0500 Subject: [PATCH 214/214] Update ChangeLog --- ChangeLog | 2363 +++++++++++++++++++++++++++++++++++++++++++++++++++++ NEWS | 2 +- 2 files changed, 2364 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 393bf34863..7a29bd637c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,2366 @@ +commit 5f2920db9b1c7fd89af8019d8a007bfddb20a742 +Author: Francis Lachapelle +Date: Mon Feb 24 16:47:41 2014 -0500 + + Update translations + +M NEWS +M UI/Common/French.lproj/Localizable.strings +M UI/Common/Polish.lproj/Localizable.strings +M UI/MailerUI/Polish.lproj/Localizable.strings +M UI/PreferencesUI/French.lproj/Localizable.strings +M UI/PreferencesUI/German.lproj/Localizable.strings +M UI/PreferencesUI/Polish.lproj/Localizable.strings +M UI/PreferencesUI/Russian.lproj/Localizable.strings +M UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings + +commit 761a7e2be11aed9cdafe7cd76e52fab19bc5dbd5 +Author: Francis Lachapelle +Date: Mon Feb 24 16:42:59 2014 -0500 + + Update Microsoft Outlook Configuration guide + +M Documentation/SOGo Native Microsoft Outlook Configuration.odt + +commit 9ed1d57ec2c22a3382e02caaa4f13937e6863b11 +Author: Francis Lachapelle +Date: Mon Feb 24 16:07:55 2014 -0500 + + Fix auto-acceptation of resources as attendees + + Fixes #2541 + +M SoObjects/Appointments/SOGoAppointmentObject.m + +commit 2b6428efd084f7b09833cd7b854a737feb9f0f2d +Author: Francis Lachapelle +Date: Mon Feb 24 07:55:21 2014 -0500 + + Always check resource conflict for new events + + Fixes #2541 + +M SoObjects/Appointments/SOGoAppointmentObject.m + +commit be36e0ceea2e2a9c6aa1099a7d854a65a7b75765 +Author: Francis Lachapelle +Date: Fri Feb 21 20:35:54 2014 -0500 + + Fix view changes in calendar module + + Fixes #2613 + +M NEWS +M UI/WebServerResources/SchedulerUI.js + +commit 070d3dd825fb81c5c05e8f2bbd760a1ac438a81c +Author: Francis Lachapelle +Date: Fri Feb 21 15:48:41 2014 -0500 + + Extract node value with 'textValue' + +M ActiveSync/NGDOMElement+ActiveSync.m + +commit 96f2552b45cd788b784afc349af96ca79c1bff8a +Author: Francis Lachapelle +Date: Wed Feb 19 21:57:01 2014 -0500 + + Preparation for release 2.2.0 + +M Apache/SOGo.conf +M Documentation/SOGo Installation Guide.odt +M Documentation/SOGo Mobile Devices Configuration.odt +M Documentation/SOGo Mozilla Thunderbird Configuration.odt +M Documentation/SOGo Native Microsoft Outlook Configuration.odt +M Documentation/architecture.png +M Documentation/openchange.png +M NEWS +M Scripts/updates.php +M Version + +commit 2948920e0b68057cb14b2b26dada0dcd8aae51c1 +Author: Francis Lachapelle +Date: Tue Feb 18 16:13:40 2014 -0500 + + Improve display of contact + + Fixes #2350 + +M NEWS +M UI/WebServerResources/ContactsUI.css + +commit 212d7149ed20175a4f047fce88bcd760ff6de9c9 +Author: Francis Lachapelle +Date: Tue Feb 18 10:13:34 2014 -0500 + + Fix display of a contact's birthday + + Fixes #2503 + +M NEWS +M SoObjects/Contacts/NGVCard+SOGo.m + +commit 668c7e8b4948ddac12ffbe6a6026af1db2ea2eac +Author: Ludovic Marcotte +Date: Mon Feb 17 16:08:29 2014 -0500 + + Correctly handle email invitations as attendee/organizer + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit 9851c32a1e5d5d584b350a22605a12b800fa0634 +Author: Ludovic Marcotte +Date: Mon Feb 17 15:49:22 2014 -0500 + + Fixed the handling of organizers + +M ActiveSync/iCalEvent+ActiveSync.m + +commit e7f27427c87498185d95e6a4c0607175c46b5fc0 +Author: Francis Lachapelle +Date: Mon Feb 17 15:42:55 2014 -0500 + + Add missing import in UIxPreferences.m + +M UI/PreferencesUI/UIxPreferences.m + +commit f0a29d3ca27a9166dd789288d3f2064c809ba1ae +Author: Francis Lachapelle +Date: Mon Feb 17 15:05:31 2014 -0500 + + Fix debian dependencies for sogo-activesync + +M packaging/debian-multiarch/control +M packaging/debian/control + +commit ec0a5ac4bfe65a1aecf225830c16f6c7e1d7cb22 +Author: Ludovic Marcotte +Date: Mon Feb 17 11:30:41 2014 -0500 + + Properly handle event updates/pull when we are or not an attendee/organizer + +M ActiveSync/iCalEvent+ActiveSync.m + +commit 4ca8b9d0aa0eb276cedd53f566f0ea1767f10ba6 +Author: Ludovic Marcotte +Date: Mon Feb 17 11:30:00 2014 -0500 + + Copyright updates + +M SoObjects/Appointments/iCalEntityObject+SOGo.h +M SoObjects/Appointments/iCalEntityObject+SOGo.m + +commit d560d0e4703cef7bfa0cb63e2ebb5553de0fc06f +Author: Ludovic Marcotte +Date: Mon Feb 17 11:28:06 2014 -0500 + + Always return a response avoiding iOS crashes on no-changes + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 401320e08be253770d783be6f55af7e4b9f46341 +Author: Francis Lachapelle +Date: Mon Feb 17 11:12:09 2014 -0500 + + Contact: fix display of urls + +M UI/Contacts/UIxContactView.m + +commit 8083b41092d672d620e3826e66717d974925403d +Author: Ludovic Marcotte +Date: Mon Feb 17 10:01:44 2014 -0500 + + Added the context everywhere + +M ActiveSync/NGVCard+ActiveSync.h +M ActiveSync/NGVCard+ActiveSync.m +M ActiveSync/NSData+ActiveSync.h +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/NSDate+ActiveSync.h +M ActiveSync/NSDate+ActiveSync.m +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.h +M ActiveSync/SOGoMailObject+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.h +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalRecurrenceRule+ActiveSync.h +M ActiveSync/iCalRecurrenceRule+ActiveSync.m +M ActiveSync/iCalTimeZone+ActiveSync.h +M ActiveSync/iCalTimeZone+ActiveSync.m +M ActiveSync/iCalToDo+ActiveSync.h +M ActiveSync/iCalToDo+ActiveSync.m + +commit 9218c7f253ae94e3b5cfc960b28612c764aec671 +Author: Ludovic Marcotte +Date: Mon Feb 17 08:46:05 2014 -0500 + + Added missing recurrences support, improved MeetingResponse, added WindowSize support. + + Also more bug fixes regarding event invitations, and ServerId handling for + calendar objects. + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalRecurrenceRule+ActiveSync.m +M ActiveSync/iCalTimeZone+ActiveSync.m + +commit 4d1fdb33f586ae9b06a4e282fb51fba38ad583fc +Author: Ludovic Marcotte +Date: Mon Feb 17 08:42:35 2014 -0500 + + Deleted wrongly added file + +D SoObjects/Mailer/SOGoMailFolder.m.orig + +commit 23565627784460fddbfad09b4173dd1f38a894a9 +Author: Ludovic Marcotte +Date: Mon Feb 17 08:41:12 2014 -0500 + + Added method to get synctag starting from an other one. + + We also no longer fetch vanished items of modseq == 0 + +M SoObjects/Mailer/SOGoMailFolder.h +M SoObjects/Mailer/SOGoMailFolder.m +A SoObjects/Mailer/SOGoMailFolder.m.orig + +commit c686e3294d010b3f8af8ae4cb1b88d8970e4ff7f +Author: Ludovic Marcotte +Date: Mon Feb 17 08:39:48 2014 -0500 + + Added method to sanitize calendar "ServerId" + +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m + +commit 1ff91f7b592a1aaa8960d8878ff2389b1f61f174 +Author: Ludovic Marcotte +Date: Mon Feb 17 08:38:34 2014 -0500 + + Added -activeSyncRepresentation to NSData objects + +M ActiveSync/NSData+ActiveSync.h +M ActiveSync/NSData+ActiveSync.m + +commit b34c6324cdf6e55583114c6110f89a4d3e01bb37 +Author: Francis Lachapelle +Date: Fri Feb 14 21:31:32 2014 -0500 + + Fix custom mail labels in Sieve filter editor + +M SoObjects/SOGo/SOGoSieveManager.m +M UI/PreferencesUI/English.lproj/Localizable.strings +M UI/PreferencesUI/UIxPreferences.m +M UI/WebServerResources/UIxFilterEditor.js + +commit 75c8362df833bc4204bf6a83cc037eaa719d20cf +Author: Ludovic Marcotte +Date: Fri Feb 14 16:39:26 2014 -0500 + + Avoid over-using LDAP connections when decomposing groups + +M NEWS +M SoObjects/Appointments/SOGoCalendarComponent.m +M SoObjects/SOGo/SOGoGroup.m + +commit ae07de5f6fa2127152761eb8732fa116ee5cae4d +Author: Ludovic Marcotte +Date: Fri Feb 14 13:46:21 2014 -0500 + + Updated the Active Sync documentation + +M Documentation/SOGo Installation Guide.odt + +commit 06d2364ea255462262511b4f38f3c556d7fcb7f9 +Author: Francis Lachapelle +Date: Thu Feb 13 12:56:24 2014 -0500 + + Improve display of toolboor menus with checkmarks + +M UI/WebServerResources/generic.css + +commit 29e081ec5629e06c5f0839e5bc1d21122100fee8 +Author: Francis Lachapelle +Date: Thu Feb 13 12:53:07 2014 -0500 + + Add more parameters examples to sogo.conf + +M Scripts/sogo.conf + +commit 113b02fd71e4c88eea5ece62bc929f38285a38e4 +Author: Francis Lachapelle +Date: Thu Feb 13 12:12:31 2014 -0500 + + Fix encoding of contact ID in Ajax requests + +M UI/WebServerResources/ContactsUI.js + +commit 35b108e645c3e3dd7ece038c04b72a2819aa4b8a +Author: Francis Lachapelle +Date: Thu Feb 13 12:11:25 2014 -0500 + + Contact: fix display of links + +M UI/Contacts/UIxContactView.m + +commit 70266155d3a4a015462223c5fc632219a8ad1e71 +Author: Ludovic Marcotte +Date: Wed Feb 12 21:55:09 2014 -0500 + + Fix double return + +M ActiveSync/iCalToDo+ActiveSync.m + +commit fcfd8be7719a1670bf2574486e057e3db8eba82d +Author: Francis Lachapelle +Date: Mon Feb 10 21:49:49 2014 -0500 + + Improve URL handling in popup of events + +M UI/WebServerResources/MailerUI.js +M UI/WebServerResources/SchedulerUI.js +M UI/WebServerResources/generic.js + +commit b91032db8e9be48162934b586edd35c4ba55c36e +Author: Francis Lachapelle +Date: Mon Feb 10 16:23:16 2014 -0500 + + Cleanup common English Localizable.strings + +M UI/Common/English.lproj/Localizable.strings + +commit f4874600fe195e86ef3652a4c0096529f9a72e89 +Author: Ludovic Marcotte +Date: Mon Feb 10 20:17:54 2014 -0500 + + Bumped to v14.1 + +M ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m + +commit b14e99b32a609063d484eb2472684831e4faa214 +Author: Ludovic Marcotte +Date: Mon Feb 10 20:16:43 2014 -0500 + + New prefs for intervals, fixed missing events in meeting requests, bumped v14.1 + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M SoObjects/SOGo/SOGoSystemDefaults.h +M SoObjects/SOGo/SOGoSystemDefaults.m + +commit ea4b21e9916877aa182a5a8dfa32c519b04ae821 +Author: Francis Lachapelle +Date: Mon Feb 10 13:49:02 2014 -0500 + + Decode HTML entities in JSON of calendar module + +M UI/WebServerResources/SchedulerUI.js + +commit 0307b8339a9de48340eb11a4a81176315b7fe69d +Author: Francis Lachapelle +Date: Mon Feb 10 13:45:51 2014 -0500 + + Detect URLs in popup of events + +M NEWS +M UI/Scheduler/UIxAppointmentEditor.m + +commit b5f1d3a19a295bb1a642b3d08d8b2af37dc1a23a +Author: Francis Lachapelle +Date: Mon Feb 10 11:25:38 2014 -0500 + + Guide: add SOGoCalendarDefaultReminder paramter + +M Documentation/SOGo Installation Guide.odt + +commit 8225f76279e54dc2e8e9ed2162428569f8c81f47 +Author: Ludovic Marcotte +Date: Fri Feb 7 16:17:11 2014 -0500 + + Fixed globalobjid so it doesn't contain \n characters! + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit c94595ea7f0f843c2d7abf25df039b2bbe707625 +Author: Francis Lachapelle +Date: Fri Feb 7 16:12:14 2014 -0500 + + Escape HTML in CSS dialogs + +M UI/WebServerResources/SchedulerUI.js +M UI/WebServerResources/generic.js + +commit 3a5e44e7eb8b390b67a8f8a83030b49606956501 +Author: Francis Lachapelle +Date: Fri Feb 7 15:53:39 2014 -0500 + + Decode HTML entities in JSON of calendar module + +M UI/WebServerResources/SchedulerUI.js + +commit 80a09407652ec04e8c9fb6cb48e1029e69a15765 +Author: Francis Lachapelle +Date: Fri Feb 7 15:52:43 2014 -0500 + + Escape HTML in JSON of contacts module + +M NEWS +M UI/Contacts/UIxContactView.m +M UI/Contacts/UIxContactsListActions.m +M UI/WebServerResources/ContactsUI.js + +commit 7118bbe0ab7790db0321122fe2b6462a204bd4b9 +Author: Francis Lachapelle +Date: Fri Feb 7 14:00:36 2014 -0500 + + Replace '/' by '-' in filenames of attachments + + Fixes #2537 + +M NEWS +M SoObjects/Mailer/SOGoMailObject.m +M UI/MailPartViewers/UIxMailPartViewer.m + +commit eee5beb6987e763e4a99b5a7baf76b1e1944a389 +Author: Francis Lachapelle +Date: Fri Feb 7 10:51:42 2014 -0500 + + Add message-id header to appointment notification + + Fixes #2535 + +M NEWS +M SoObjects/Appointments/SOGoCalendarComponent.m +M SoObjects/Mailer/NSString+Mail.h +M SoObjects/Mailer/NSString+Mail.m +M SoObjects/Mailer/SOGoDraftObject.m + +commit 3363b253ac9f7e2643b66390467c6c78a750393f +Author: Ludovic Marcotte +Date: Fri Feb 7 10:45:09 2014 -0500 + + Set additional properties on meeting requests + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit 4070b9222d65b265fc67b54c5af095cdadbfaef9 +Author: Francis Lachapelle +Date: Fri Feb 7 09:59:45 2014 -0500 + + Rework HTML of appointment notifications + + Needed to simplify the HTML so it displays properly in Outlook. + + Fixes #2233 + +M NEWS +M UI/Templates/Appointments/SOGoAptMailDeletion.wox +M UI/Templates/Appointments/SOGoAptMailICalReply.wox +M UI/Templates/Appointments/SOGoAptMailInvitation.wox +M UI/Templates/Appointments/SOGoAptMailReceipt.wox +M UI/Templates/Appointments/SOGoAptMailUpdate.wox + +commit 5ea56a6f8a94e356912d7dda51f391c5a20edf8b +Author: Francis Lachapelle +Date: Thu Feb 6 14:43:40 2014 -0500 + + Enlarge the note field of the contact editor + +M UI/Templates/ContactsUI/UIxContactEditor.wox + +commit 379258de59df7cf47364ed4037d609d31ea5677f +Author: Ludovic Marcotte +Date: Thu Feb 6 21:25:08 2014 -0500 + + Pimped the doc for AS support and dropped all references to Funambol. + +M Documentation/SOGo Installation Guide.odt + +commit 93b3685aa454be981b6184ff49850bb60874f8d5 +Author: Ludovic Marcotte +Date: Thu Feb 6 19:35:23 2014 -0500 + + Added birthday support + +M ActiveSync/NGVCard+ActiveSync.m + +commit c4dc4d4edacc959cc0c3d7f6b16ed1ce59e94d78 +Author: Ludovic Marcotte +Date: Thu Feb 6 17:59:33 2014 -0500 + + Fixed compilation warning + +M ActiveSync/NGVCard+ActiveSync.m + +commit c6d104fac51a9b981a125c8d7adb725b8b56be1d +Author: Ludovic Marcotte +Date: Thu Feb 6 17:57:01 2014 -0500 + + Fixed contact sync'ing on Android + +M ActiveSync/NGVCard+ActiveSync.m + +commit ef79c09642009cb7eb74d5261e60bb48e5c2d6b7 +Author: Francis Lachapelle +Date: Thu Feb 6 14:43:05 2014 -0500 + + Don't use the HTML editor with Internet Explorer 7 + +M NEWS +M SoObjects/SOGo/SOGoUserDefaults.m + +commit aeb712083a1bbb77d4b2483a3301aa73240e4e1e +Author: Francis Lachapelle +Date: Thu Feb 6 14:37:43 2014 -0500 + + Fix static array retain + +M SoObjects/Appointments/SOGoAppointmentFolder.m + +commit 2c678101fcb5a73097cd409a832710bfbc9c916f +Author: Francis Lachapelle +Date: Thu Feb 6 14:21:36 2014 -0500 + + Fix handling of ACLs with multiple groups + + Fixes #1854 + +M NEWS +M SoObjects/Appointments/SOGoAppointmentFolder.m + +commit b95362f96368dcc93a4fd781c24c1c6bd7b25944 +Author: Ludovic Marcotte +Date: Thu Feb 6 14:05:00 2014 -0500 + + Now make use of a NGMimeFileData object to avoid broken SOPE behaviour + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 3175a9169f136a4c87480403f9b8035f3d06da96 +Author: Ludovic Marcotte +Date: Wed Feb 5 20:56:01 2014 -0500 + + Mapped lots of contact properties + +M ActiveSync/NGVCard+ActiveSync.m +M SoObjects/Contacts/NGVCard+SOGo.h +M SoObjects/Contacts/NGVCard+SOGo.m + +commit 9311f05cc0a96f6ab731030a4d6eb276549320c3 +Author: Ludovic Marcotte +Date: Wed Feb 5 17:30:34 2014 -0500 + + Fixed the non-filtering of recurrence exceptions + +M SoObjects/Appointments/SOGoCalendarComponent.m + +commit 78cbcfb560a3ec8142669f575442b13d3509b633 +Author: Francis Lachapelle +Date: Wed Feb 5 16:15:12 2014 -0500 + + Update translations + +M UI/MailerUI/Czech.lproj/Localizable.strings +M UI/MailerUI/Hungarian.lproj/Localizable.strings +M UI/MailerUI/Russian.lproj/Localizable.strings +M UI/MailerUI/Slovak.lproj/Localizable.strings + +commit b8610b3eca1a73a5e2eb689e63e013a48cbcafb8 +Author: Ludovic Marcotte +Date: Wed Feb 5 16:12:08 2014 -0500 + + Extended GetItemEstimate to GCS collections + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 1a7fc2a0e90a19dfb1fce292ae5ff53aa513ade9 +Author: Francis Lachapelle +Date: Wed Feb 5 16:02:38 2014 -0500 + + Escape HTML in JSON of calendar module + + Fixes #2598 + +M NEWS +M UI/Scheduler/UIxAppointmentEditor.m +M UI/Scheduler/UIxCalListingActions.m +M UI/WebServerResources/SchedulerUI.js + +commit f7a20d0a83f5be75d157e1a969fb0b7bc63ae2b7 +Author: Ludovic Marcotte +Date: Wed Feb 5 15:23:09 2014 -0500 + + Fixed broken encoding of single-value element + +M SOPE/NGCards/NGCardsSaxHandler.m + +commit a1cf0668282e9c0227f48d944de9f79ceb97e87e +Author: Francis Lachapelle +Date: Wed Feb 5 11:43:25 2014 -0500 + + Update translations + +M UI/Scheduler/Dutch.lproj/Localizable.strings +M UI/Scheduler/Finnish.lproj/Localizable.strings +M UI/Scheduler/German.lproj/Localizable.strings +M UI/Scheduler/NorwegianBokmal.lproj/Localizable.strings +M UI/Scheduler/NorwegianNynorsk.lproj/Localizable.strings +M UI/Scheduler/Polish.lproj/Localizable.strings +M UI/Scheduler/Swedish.lproj/Localizable.strings +M UI/Scheduler/Welsh.lproj/Localizable.strings + +commit 359b6a99aa2ef31f356ea6e8246e6a0ff2d47945 +Author: Francis Lachapelle +Date: Wed Feb 5 11:17:22 2014 -0500 + + Encode HTML entities for inline forwards in text + + Fixes #2411 + +M NEWS +M SoObjects/Mailer/NSString+Mail.m +M SoObjects/Mailer/SOGoMailObject+Draft.m + +commit 826537ed018053dcbe0012afc60750bb0b68b9f0 +Author: Francis Lachapelle +Date: Wed Feb 5 09:04:00 2014 -0500 + + Fix caching of DN in LDAP source + +M SoObjects/SOGo/LDAPSource.m + +commit 3950e9d4c33417cbf821f5554e566e6a68b7d0b0 +Author: Ludovic Marcotte +Date: Tue Feb 4 21:03:11 2014 -0500 + + Moved DN cache to SOGoCache + +M NEWS +M SoObjects/SOGo/LDAPSource.h +M SoObjects/SOGo/LDAPSource.m +M SoObjects/SOGo/SOGoCache.h +M SoObjects/SOGo/SOGoCache.m + +commit 9885211a5b804f885c5cc8edbc88b8f03f9ffbe8 +Author: Francis Lachapelle +Date: Tue Feb 4 16:48:06 2014 -0500 + + Replace VARCHAR(1000000) by TEXT field type + + Fixes #2516 + +M OGoContentStore/appointment.ocs + +commit ef1be5dc5f6b746162b8cda5d0222a74ebcd7514 +Author: Francis Lachapelle +Date: Tue Feb 4 16:25:52 2014 -0500 + + Improve deleting occurences of recurrent events + +M NEWS +M SoObjects/SOGo/SOGoGCSFolder.m +M UI/Common/UIxFolderActions.m +M UI/Scheduler/Arabic.lproj/Localizable.strings +M UI/Scheduler/BrazilianPortuguese.lproj/Localizable.strings +M UI/Scheduler/Catalan.lproj/Localizable.strings +M UI/Scheduler/Czech.lproj/Localizable.strings +M UI/Scheduler/Danish.lproj/Localizable.strings +M UI/Scheduler/English.lproj/Localizable.strings +M UI/Scheduler/French.lproj/Localizable.strings +M UI/Scheduler/German.lproj/Localizable.strings +M UI/Scheduler/Hungarian.lproj/Localizable.strings +M UI/Scheduler/Icelandic.lproj/Localizable.strings +M UI/Scheduler/Italian.lproj/Localizable.strings +M UI/Scheduler/Russian.lproj/Localizable.strings +M UI/Scheduler/Slovak.lproj/Localizable.strings +M UI/Scheduler/SpanishArgentina.lproj/Localizable.strings +M UI/Scheduler/SpanishSpain.lproj/Localizable.strings +M UI/Scheduler/UIxCalMainView.m +M UI/Scheduler/Ukrainian.lproj/Localizable.strings +M UI/Templates/SchedulerUI/UIxCalMainView.wox +M UI/WebServerResources/ContactsUI.js +M UI/WebServerResources/SchedulerUI.js +M UI/WebServerResources/generic.css +M UI/WebServerResources/generic.js + +commit 4e42d5d41045be78cd0879054ed5649707ffc35a +Author: Ludovic Marcotte +Date: Tue Feb 4 15:07:23 2014 -0500 + + Disabled debugging... + +M ActiveSync/NSData+ActiveSync.m + +commit 31969d162d9bf4747367807c863c0d311d4986b9 +Author: Ludovic Marcotte +Date: Tue Feb 4 15:03:02 2014 -0500 + + Properly escape some control chars (and generalized it) + +M ActiveSync/NGVCard+ActiveSync.m +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalToDo+ActiveSync.m +M SoObjects/SOGo/NSString+Utilities.h +M SoObjects/SOGo/NSString+Utilities.m + +commit 2ff3b5ef5f5542cc53c668f6ed4e65ec6ecf046a +Author: Ludovic Marcotte +Date: Tue Feb 4 11:19:33 2014 -0500 + + First pass at 'push' support for Ping and Sync + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M Apache/SOGo.conf + +commit 7fe48a1555414406bd86c7b986596e929e0bfd05 +Author: Ludovic Marcotte +Date: Tue Feb 4 09:02:40 2014 -0500 + + Fix for bug #2544 + +M Documentation/SOGo Native Microsoft Outlook Configuration.odt + +commit fcddeb4224308f80184000ad34add7ffc3dcf3c2 +Author: Francis Lachapelle +Date: Mon Feb 3 15:15:14 2014 -0500 + + Visually identify users with no freebusy + + Fixes #2565 + +M NEWS +M UI/Templates/SchedulerUI/UIxAttendeesEditor.wox +M UI/WebServerResources/UIxAttendeesEditor.css +M UI/WebServerResources/UIxAttendeesEditor.js + +commit f1cb87aa02b606b7be8457bbce08128974072a09 +Author: Francis Lachapelle +Date: Mon Feb 3 12:03:51 2014 -0500 + + Convert JS alerts to CSS dialogs in aptmt editor + +M NEWS +M UI/WebServerResources/UIxAppointmentEditor.js +M UI/WebServerResources/UIxAttendeesEditor.js +M UI/WebServerResources/UIxComponentEditor.css + +commit a6424680cc112b06c7a96d766c5769dfc8e7105f +Author: Francis Lachapelle +Date: Mon Feb 3 11:56:00 2014 -0500 + + Respect max bookings of resources in freebusy data + + Fixes #2560 + +M NEWS +M UI/MainUI/SOGoUserHomePage.m + +commit b3dc645282e5fca0cac9baef2250e979e2e5cb39 +Author: Francis Lachapelle +Date: Mon Feb 3 11:09:03 2014 -0500 + + Warn user when dnd failed with resource conflict + + Fixes #1613 + +M NEWS +M UI/Scheduler/UIxAppointmentActions.m +M UI/WebServerResources/SchedulerUI.js + +commit 2f0419c18a17e2d88c0c43771b92541aa2cd645b +Author: Francis Lachapelle +Date: Mon Feb 3 11:03:23 2014 -0500 + + Warn user when overbooking a resource + + Fixes #2541 + +M NEWS +M SoObjects/Appointments/SOGoAppointmentObject.m + +commit 9e9407cf30ef51c3ba6e5e6f840d4a0433ad73af +Author: Ludovic Marcotte +Date: Mon Feb 3 10:24:33 2014 -0500 + + First pass at event invitations support + few bug fixes. + +M ActiveSync/NGDOMElement+ActiveSync.m +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.h +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.h +M ActiveSync/SOGoMailObject+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalTimeZone+ActiveSync.m + +commit d709a1216b71995b25087356f7b968f7d3d7f65f +Author: Ludovic Marcotte +Date: Mon Feb 3 09:54:21 2014 -0500 + + Updated NEWS file + +M NEWS + +commit 588352be7d22f23602582e07650454a7634a9f96 +Author: Ludovic Marcotte +Date: Mon Feb 3 09:53:47 2014 -0500 + + Fix for bug #2587 + +M SoObjects/SOGo/SOGoCache.m + +commit a40d7ca342248d04e33baf303c36203239af1846 +Author: Ludovic Marcotte +Date: Fri Jan 31 15:11:13 2014 -0500 + + Updated NEWS file + +M NEWS + +commit e4ce687e29d6232228e6bc9b6943f4e4a0573786 +Author: Ludovic Marcotte +Date: Fri Jan 31 15:05:33 2014 -0500 + + Update the content when the request is from Active Sync + +M SoObjects/Appointments/SOGoAppointmentObject.m + +commit bcb0764b1901f8ea9ee799a80594ae554e80e827 +Author: Ludovic Marcotte +Date: Fri Jan 31 15:04:49 2014 -0500 + + Fix for bug #2505 + +M SOPE/NGCards/NGCardsSaxHandler.m + +commit ddd7be433346fce2d1f6c6ed52ead56c1f289f41 +Author: Ludovic Marcotte +Date: Fri Jan 31 15:03:40 2014 -0500 + + Fix for bug #2187 + +M SoObjects/SOGo/LDAPSource.m + +commit d9f4a9935a741e6a537127a4f3ed992b86f2b421 +Author: Ludovic Marcotte +Date: Fri Jan 31 10:33:36 2014 -0500 + + Properly escape all foldernames + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit ae75fee512ffc410e920e47d9382b07749970460 +Author: Francis Lachapelle +Date: Thu Jan 30 10:37:36 2014 -0500 + + Update NEWS file + +M NEWS + +commit 8cdacd065f5e0e6b0171c60199b71618c0d3af23 +Author: Ludovic Marcotte +Date: Thu Jan 30 08:25:55 2014 -0500 + + Properly escape the filename + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit af6a69c9fc504eb569971091fec5c1b7c154c58f +Author: Ludovic Marcotte +Date: Wed Jan 29 11:21:36 2014 -0500 + + Expunge immediately after MoveItems to force the Delete response + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit dc41e29f05f431ee73563fdbf8e32a866dcc9fd0 +Author: Ludovic Marcotte +Date: Wed Jan 29 11:16:58 2014 -0500 + + Fixed the MoveItems response + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit afc7519beb60d52375102af71886f77733f4348a +Author: Ludovic Marcotte +Date: Wed Jan 29 10:30:31 2014 -0500 + + Properly escape values + +M ActiveSync/NGVCard+ActiveSync.m + +commit f2d5a7691115390c5f0ead5b8276c248504fb7e8 +Author: Ludovic Marcotte +Date: Wed Jan 29 09:44:03 2014 -0500 + + Type fix for recurrence rules. + +M ActiveSync/iCalRecurrenceRule+ActiveSync.m + +commit 342ad84a2458320e698a6273bec7b0d6d7a240a8 +Author: Francis Lachapelle +Date: Tue Jan 28 15:36:48 2014 -0500 + + Fix issues with contextual menu in calendars + + Creating an event or a task using the contextual menu will now consider + the day and hour of the menu position (fixes #2557). + The next/previous day/month menu options have been fixed. + The menu will now disappear when clicking outside the contextual menu on + the calendar area. + +M NEWS +M UI/Templates/SchedulerUI/UIxCalDayView.wox +M UI/Templates/SchedulerUI/UIxCalMonthView.wox +M UI/Templates/SchedulerUI/UIxCalMulticolumnDayView.wox +M UI/Templates/SchedulerUI/UIxCalWeekView.wox +M UI/WebServerResources/SchedulerUI.js +M UI/WebServerResources/SchedulerUIDnD.js + +commit 9580a8f8ee92b4b9ea7f6d592a059ea79a4e33f5 +Author: Ludovic Marcotte +Date: Tue Jan 28 14:26:35 2014 -0500 + + Added initial support for recurring events. + +M ActiveSync/GNUmakefile +M ActiveSync/iCalEvent+ActiveSync.m +A ActiveSync/iCalRecurrenceRule+ActiveSync.h +A ActiveSync/iCalRecurrenceRule+ActiveSync.m + +commit a96380a0dc6dbf8c3443560eec458ac0d22d7820 +Author: Ludovic Marcotte +Date: Tue Jan 28 13:51:21 2014 -0500 + + Fixed SyncKey issue not being updated during the sync operation + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 2fed02da5988a9a78ee1b4ecf1c8efb724286546 +Author: Ludovic Marcotte +Date: Tue Jan 28 13:21:34 2014 -0500 + + When creating a new object, mark it as new. + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 84dc08adb60c2a3589be74ed7067918753030015 +Author: Francis Lachapelle +Date: Mon Jan 27 15:43:48 2014 -0500 + + Fix display of folder names in filter editor + + Fixes #2569 + +M NEWS +M UI/WebServerResources/UIxFilterEditor.js +M UI/WebServerResources/UIxPreferences.js + +commit c160edf20abdb728135eb624e28ad490b8892153 +Author: Francis Lachapelle +Date: Mon Jan 27 15:09:22 2014 -0500 + + Add support for Sieve body extension + +M NEWS +M SoObjects/Mailer/SOGoMailAccount.m +M SoObjects/SOGo/SOGoSieveManager.h +M SoObjects/SOGo/SOGoSieveManager.m +M UI/PreferencesUI/UIxPreferences.m +M UI/WebServerResources/UIxFilterEditor.js + +commit 3b7a3c94d429d74e6a027b93dadf19664191f811 +Author: Ludovic Marcotte +Date: Mon Jan 27 11:30:43 2014 -0500 + + Properly escape fields and improved data dumps. + +M ActiveSync/NGVCard+ActiveSync.m +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalToDo+ActiveSync.m + +commit 7b97e28cfffa271ebc09f495d893ebc3225d7905 +Author: Ludovic Marcotte +Date: Fri Jan 24 16:33:31 2014 -0500 + + Fixed compiler warning + +M ActiveSync/NSString+ActiveSync.m + +commit 81bf1b41e9d7e353e03abe336b8276ae61e9270b +Author: Ludovic Marcotte +Date: Fri Jan 24 16:28:08 2014 -0500 + + Fixed the rename operation to force a FolderSync + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit ea86f136b757a0668d2aabe8e533547f81a9bd23 +Author: Ludovic Marcotte +Date: Fri Jan 24 14:10:19 2014 -0500 + + Properly escape folder/file names and fixed date representation in emails + +M ActiveSync/NSString+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit fc0c580fe1179852ca7ab207bbd863a8506ecca4 +Author: Francis Lachapelle +Date: Fri Jan 24 13:45:29 2014 -0500 + + Fix validation of subscribed folders + + Fixes #2583 + +M NEWS +M SoObjects/SOGo/SOGoParentFolder.m + +commit 42a7bcb9ac8ccbb2ab9f7f3f88875ff06fdb01ff +Author: Ludovic Marcotte +Date: Fri Jan 24 11:44:12 2014 -0500 + + Added verbosity in case wbxml <-> xml conversions fail + +M ActiveSync/NSData+ActiveSync.m + +commit 9669f2bbbaa4be60710154eacaaef2723f2e5592 +Author: Ludovic Marcotte +Date: Fri Jan 24 11:09:37 2014 -0500 + + Added more props and fixed the NativeBodyType preventing OL2013 to work + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit 25634088722bbc269e4d1d61c956923c3746f240 +Author: Ludovic Marcotte +Date: Fri Jan 24 07:38:03 2014 -0500 + + Improved the README regarding MS licensing + +M ActiveSync/README + +commit 0f9d8cdd2c7bf44e3ab4274b047598f6ab745ded +Author: Francis Lachapelle +Date: Thu Jan 23 14:48:36 2014 -0500 + + Remove xml tag before doctype declaration + +M UI/Common/UIxPageFrame.m + +commit 5105dbb3428e586a5006770d6a08b4a175df2b63 +Author: Francis Lachapelle +Date: Thu Jan 23 14:39:03 2014 -0500 + + Make all attachments available when re/fwd'ing + + To do so, we save the draft to the mailstore. + +M SoObjects/Mailer/SOGoDraftObject.m + +commit b26e767a106e604bc13c6c5bfdd1a379739f7999 +Author: Francis Lachapelle +Date: Thu Jan 23 14:34:14 2014 -0500 + + Respect signature placement when forwarding a msg + +M NEWS +M SoObjects/Mailer/SOGoDraftObject.m +M SoObjects/Mailer/SOGoMailArabicForward.wo/SOGoMailArabicForward.html +M SoObjects/Mailer/SOGoMailArabicForward.wo/SOGoMailArabicForward.wod +M SoObjects/Mailer/SOGoMailBrazilianPortugueseForward.wo/SOGoMailBrazilianPortugueseForward.html +M SoObjects/Mailer/SOGoMailBrazilianPortugueseForward.wo/SOGoMailBrazilianPortugueseForward.wod +M SoObjects/Mailer/SOGoMailCatalanForward.wo/SOGoMailCatalanForward.html +M SoObjects/Mailer/SOGoMailCatalanForward.wo/SOGoMailCatalanForward.wod +M SoObjects/Mailer/SOGoMailCzechForward.wo/SOGoMailCzechForward.html +M SoObjects/Mailer/SOGoMailCzechForward.wo/SOGoMailCzechForward.wod +M SoObjects/Mailer/SOGoMailDanishForward.wo/SOGoMailDanishForward.html +M SoObjects/Mailer/SOGoMailDanishForward.wo/SOGoMailDanishForward.wod +M SoObjects/Mailer/SOGoMailDutchForward.wo/SOGoMailDutchForward.html +M SoObjects/Mailer/SOGoMailDutchForward.wo/SOGoMailDutchForward.wod +M SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.html +M SoObjects/Mailer/SOGoMailEnglishForward.wo/SOGoMailEnglishForward.wod +M SoObjects/Mailer/SOGoMailFinnishForward.wo/SOGoMailFinnishForward.html +M SoObjects/Mailer/SOGoMailFinnishForward.wo/SOGoMailFinnishForward.wod +M SoObjects/Mailer/SOGoMailForward.h +M SoObjects/Mailer/SOGoMailForward.m +M SoObjects/Mailer/SOGoMailFrenchForward.wo/SOGoMailFrenchForward.html +M SoObjects/Mailer/SOGoMailFrenchForward.wo/SOGoMailFrenchForward.wod +M SoObjects/Mailer/SOGoMailGermanForward.wo/SOGoMailGermanForward.html +M SoObjects/Mailer/SOGoMailGermanForward.wo/SOGoMailGermanForward.wod +M SoObjects/Mailer/SOGoMailHungarianForward.wo/SOGoMailHungarianForward.html +M SoObjects/Mailer/SOGoMailHungarianForward.wo/SOGoMailHungarianForward.wod +M SoObjects/Mailer/SOGoMailIcelandicForward.wo/SOGoMailIcelandicForward.html +M SoObjects/Mailer/SOGoMailIcelandicForward.wo/SOGoMailIcelandicForward.wod +M SoObjects/Mailer/SOGoMailItalianForward.wo/SOGoMailItalianForward.html +M SoObjects/Mailer/SOGoMailItalianForward.wo/SOGoMailItalianForward.wod +M SoObjects/Mailer/SOGoMailNorwegianBokmalForward.wo/SOGoMailNorwegianBokmalForward.html +M SoObjects/Mailer/SOGoMailNorwegianBokmalForward.wo/SOGoMailNorwegianBokmalForward.wod +M SoObjects/Mailer/SOGoMailNorwegianNynorskForward.wo/SOGoMailNorwegianNynorskForward.html +M SoObjects/Mailer/SOGoMailNorwegianNynorskForward.wo/SOGoMailNorwegianNynorskForward.wod +M SoObjects/Mailer/SOGoMailObject+Draft.m +M SoObjects/Mailer/SOGoMailPolishForward.wo/SOGoMailPolishForward.html +M SoObjects/Mailer/SOGoMailPolishForward.wo/SOGoMailPolishForward.wod +M SoObjects/Mailer/SOGoMailReply.h +M SoObjects/Mailer/SOGoMailReply.m +M SoObjects/Mailer/SOGoMailRussianForward.wo/SOGoMailRussianForward.html +M SoObjects/Mailer/SOGoMailRussianForward.wo/SOGoMailRussianForward.wod +M SoObjects/Mailer/SOGoMailSlovakForward.wo/SOGoMailSlovakForward.html +M SoObjects/Mailer/SOGoMailSlovakForward.wo/SOGoMailSlovakForward.wod +M SoObjects/Mailer/SOGoMailSpanishArgentinaForward.wo/SOGoMailSpanishArgentinaForward.html +M SoObjects/Mailer/SOGoMailSpanishArgentinaForward.wo/SOGoMailSpanishArgentinaForward.wod +M SoObjects/Mailer/SOGoMailSpanishSpainForward.wo/SOGoMailSpanishSpainForward.html +M SoObjects/Mailer/SOGoMailSpanishSpainForward.wo/SOGoMailSpanishSpainForward.wod +M SoObjects/Mailer/SOGoMailSwedishForward.wo/SOGoMailSwedishForward.html +M SoObjects/Mailer/SOGoMailSwedishForward.wo/SOGoMailSwedishForward.wod +M SoObjects/Mailer/SOGoMailUkrainianForward.wo/SOGoMailUkrainianForward.html +M SoObjects/Mailer/SOGoMailUkrainianForward.wo/SOGoMailUkrainianForward.wod +M SoObjects/Mailer/SOGoMailWelshForward.wo/SOGoMailWelshForward.html +M SoObjects/Mailer/SOGoMailWelshForward.wo/SOGoMailWelshForward.wod + +commit 940f85fde27e19fb772b5ef8284bbdb1308d5513 +Author: Francis Lachapelle +Date: Thu Jan 23 11:25:14 2014 -0500 + + Add missing localizable string to webmail + +M UI/MailerUI/English.lproj/Localizable.strings +M UI/MailerUI/French.lproj/Localizable.strings + +commit adee80529e66eea9acfef9e311a9ff3365114690 +Author: Ludovic Marcotte +Date: Thu Jan 23 11:09:32 2014 -0500 + + Added more event props and fixed date issues + +M ActiveSync/NSDate+ActiveSync.h +M ActiveSync/NSDate+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.m + +commit 295dfcfdd5598b488a3a68aeb545349c901bdc58 +Author: Francis Lachapelle +Date: Thu Jan 23 10:19:25 2014 -0500 + + Webmail: allow the backspace on any platform + +M UI/WebServerResources/MailerUI.js + +commit aa18abd8428e5154e045f3dcb844ee152ab60721 +Author: Ludovic Marcotte +Date: Thu Jan 23 09:41:41 2014 -0500 + + Added more props and cleaned up the code + +M ActiveSync/iCalToDo+ActiveSync.m + +commit feb398d59c20f1a72be40a276f97792c53168f29 +Author: Francis Lachapelle +Date: Thu Jan 23 09:10:17 2014 -0500 + + Fix IE11 issue with mail editor + +M NEWS +M UI/Templates/MailerUI/UIxMailEditor.wox +M UI/WebServerResources/UIxMailEditor.css +M UI/WebServerResources/UIxMailEditor.js + +commit 19b404de45941cd1913fa5ab36c282cda1e35d51 +Author: Francis Lachapelle +Date: Thu Jan 23 08:17:02 2014 -0500 + + Update French translation + +M UI/PreferencesUI/French.lproj/Localizable.strings + +commit d1a384e539e52bdb40e326ef41149fe7b28fff04 +Author: Jean Raby +Date: Wed Jan 22 11:40:04 2014 -0500 + + Send IMIP responses if the event is in the future + + Avoids sending responses for past events when importing events into + a new calendar from thunderbird or any DAV client. + +M SoObjects/Appointments/SOGoCalendarComponent.m + +commit e7f38f940ea02849b6fb8b1a2898066181969495 +Author: Ludovic Marcotte +Date: Wed Jan 22 11:27:27 2014 -0500 + + Moved the cards' logic into a category and added support for more AS ones + +M ActiveSync/NGVCard+ActiveSync.m +M SoObjects/Contacts/NGVCard+SOGo.h +M SoObjects/Contacts/NGVCard+SOGo.m +M UI/Contacts/UIxContactView.m + +commit f7ba5d2346cfb0e60ae41087963432fd11154d0f +Author: Ludovic Marcotte +Date: Wed Jan 22 11:25:18 2014 -0500 + + Don't add DateCompleted if none exist + +M ActiveSync/iCalToDo+ActiveSync.m + +commit eeddf43a781aab6648c18c9751dc54fce21f9f0b +Author: Ludovic Marcotte +Date: Wed Jan 22 11:22:52 2014 -0500 + + Add the milliseconds + +M ActiveSync/NSDate+ActiveSync.m + +commit eabe829236b7c25c3cc60eca481d9a1fc156e19b +Author: Ludovic Marcotte +Date: Wed Jan 22 11:02:12 2014 -0500 + + Don't add empty and specify the folder Class + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 762b841249fdff7cf3412414f703ab465c15583a +Author: Ludovic Marcotte +Date: Tue Jan 21 16:40:57 2014 -0500 + + Avoid crashes on broken configurations + +M SoObjects/Appointments/SOGoCalendarComponent.m + +commit 3090448fcb1411f49776bd8fd2e23c2b5b60775d +Author: Francis Lachapelle +Date: Mon Jan 20 15:43:33 2014 -0500 + + Update prototype.js to fix IE 10 issues + + Updated to commit @8c9ead49ec of + https://github.com/sstephenson/prototype/ + +M UI/WebServerResources/prototype.js + +commit a3e1d4813acffb17d6495a5b68ba20e5a9ebdf0a +Author: Ludovic Marcotte +Date: Mon Jan 20 10:21:33 2014 -0500 + + Removed debug + refactored NSDate class + +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/NSDate+ActiveSync.h +M ActiveSync/NSDate+ActiveSync.m + +commit 046a64511900c58433cd72068b185508db6e9888 +Author: Ludovic Marcotte +Date: Mon Jan 20 10:13:16 2014 -0500 + + Refactored the code and added support for FilterType + +M ActiveSync/GNUmakefile +A ActiveSync/NSCalendarDate+ActiveSync.h +A ActiveSync/NSCalendarDate+ActiveSync.m +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.m +M SoObjects/Mailer/SOGoMailFolder.h +M SoObjects/Mailer/SOGoMailFolder.m +M SoObjects/SOGo/SOGoGCSFolder.h +M SoObjects/SOGo/SOGoGCSFolder.m + +commit 343f2d8bfef38d0dff74dc122b12ce4c2ff2ad3c +Author: Ludovic Marcotte +Date: Thu Jan 16 15:13:09 2014 -0500 + + Fixed the GetChanges detection and added FilterType decoding + +M ActiveSync/NSDate+ActiveSync.h +M ActiveSync/NSDate+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 65276f7dc005625bcdc72b5c0e09e418c3eb9252 +Author: Jean Raby +Date: Wed Jan 15 16:37:24 2014 -0500 + + Add dependency on tmpwatch. The cronjob uses it. + + Fixes #2577 + +M packaging/rhel/sogo.spec + +commit 24663682d625e61e2a67a1c5bce4e427d8411e3a +Author: Jean Raby +Date: Wed Jan 15 12:08:29 2014 -0500 + + New package: sogo-activesync + sogo-tool fixes + + Added dependency on sogo = %version for sogo-tool + +M packaging/rhel/sogo.spec + +commit 57cd315f2a37dd4355eb3753f50f1a12131c1ea2 +Author: Jean Raby +Date: Wed Jan 15 11:07:14 2014 -0500 + + explicitly list all *.SOGo folders + + Otherwise, ActiveSync.SOGo would be listed twice, once in sogo-activesync and + once in sogo. + +M packaging/debian-multiarch/sogo.install +M packaging/debian/sogo.install + +commit 29fcfda1183dbd6c6de6e30d43c9d83004b46380 +Author: Ludovic Marcotte +Date: Wed Jan 15 09:36:25 2014 -0500 + + Implemented FolderDelete for mail folders + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit ada90677e1129df102591882a1266205bdc63631 +Author: Ludovic Marcotte +Date: Tue Jan 14 16:08:04 2014 -0500 + + Correctly update the SyncKey when creating or updating folders + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit b71180b0064c4634edfc96741566dc8cb9d158b4 +Author: Ludovic Marcotte +Date: Tue Jan 14 15:47:33 2014 -0500 + + Use the right DeviceId + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 1ed41e28317258ca9da8cff93bd22d4aa28719a3 +Author: Jean Raby +Date: Tue Jan 14 14:39:51 2014 -0500 + + New deb package: sogo-activesync + +M packaging/debian-multiarch/control +M packaging/debian-multiarch/rules +A packaging/debian-multiarch/sogo-activesync.docs +A packaging/debian-multiarch/sogo-activesync.install +M packaging/debian/control +M packaging/debian/control-squeeze +M packaging/debian/rules +A packaging/debian/sogo-activesync.docs +A packaging/debian/sogo-activesync.install + +commit 948553dce3d6d968a2e85c335aff54ac5a6dc76f +Author: Ludovic Marcotte +Date: Tue Jan 14 13:50:17 2014 -0500 + + Properly extract the foldername + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 74adf784461325eb8962214e77cc7c89e9957c9c +Author: Jean Raby +Date: Tue Jan 14 13:37:51 2014 -0500 + + Fix include directories for libwbxml + +M ActiveSync/GNUmakefile +M ActiveSync/NSData+ActiveSync.m + +commit ee0ae8a1c01b239f5c5fe1b8e67279cfa91537ff +Author: Ludovic Marcotte +Date: Tue Jan 14 11:44:33 2014 -0500 + + Correctly add the folder type prefix when creating them + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 38c649751c530d57c76857e58a9185b98754aac9 +Author: Ludovic Marcotte +Date: Tue Jan 14 11:41:26 2014 -0500 + + If GetChanges is omitted, consider it as YES + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 645c718dfa24a82e921eafd6ff128dd2bc802423 +Author: Ludovic Marcotte +Date: Tue Jan 14 10:49:55 2014 -0500 + + Fixed broken comparison and added stub for processMeeting... + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 02992a70181512a1d02f2f4afb7797aed9db4935 +Author: Ludovic Marcotte +Date: Tue Jan 14 10:42:15 2014 -0500 + + Correctly decode base64 text parts before returning them + +M ActiveSync/SOGoMailObject+ActiveSync.m + +commit 0ffa0649c5c933e7f2b4ba3d0afac74ff7ba67b4 +Author: Ludovic Marcotte +Date: Tue Jan 14 10:09:10 2014 -0500 + + Wrap Fetch responses into tags so iOS works correctly + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit 7c7cabe4329207a124dac3e4fcdafacb42f3dcf9 +Author: Ludovic Marcotte +Date: Mon Jan 13 16:25:14 2014 -0500 + + First pass at organizer/attendees support + +M ActiveSync/iCalEvent+ActiveSync.m + +commit bb9c4cf0396cef689dde5400e9d28409780c7e2a +Author: Ludovic Marcotte +Date: Mon Jan 13 16:24:15 2014 -0500 + + Handle not found objects and correctly get all "Collection" + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit c252f5b7a861ea79d671397e50400e4105f17fd7 +Author: Ludovic Marcotte +Date: Mon Jan 13 11:46:32 2014 -0500 + + Fixed the license indent + +M ActiveSync/ActiveSyncProduct.m +M ActiveSync/LICENSE +M ActiveSync/NGDOMElement+ActiveSync.h +M ActiveSync/NGDOMElement+ActiveSync.m +M ActiveSync/NGMimeMessage+ActiveSync.h +M ActiveSync/NGMimeMessage+ActiveSync.m +M ActiveSync/NGVCard+ActiveSync.h +M ActiveSync/NGVCard+ActiveSync.m +M ActiveSync/NSData+ActiveSync.h +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/NSDate+ActiveSync.h +M ActiveSync/NSDate+ActiveSync.m +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m +M ActiveSync/SOGoActiveSyncConstants.h +M ActiveSync/SOGoActiveSyncDispatcher+Sync.h +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/SOGoActiveSyncDispatcher.h +M ActiveSync/SOGoActiveSyncDispatcher.m +M ActiveSync/SOGoMailObject+ActiveSync.h +M ActiveSync/SOGoMailObject+ActiveSync.m +M ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m +M ActiveSync/iCalEvent+ActiveSync.h +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalTimeZone+ActiveSync.h +M ActiveSync/iCalTimeZone+ActiveSync.m +M ActiveSync/iCalToDo+ActiveSync.h +M ActiveSync/iCalToDo+ActiveSync.m + +commit 2e44ac0f9b9b513b40e1b490ac1d48e846108d5f +Author: Ludovic Marcotte +Date: Mon Jan 13 10:19:00 2014 -0500 + + Fixed MoveItems and also fixed Ping with no content + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit 2a9ccf8122fbea723785737482ce9d48813803bd +Author: Ludovic Marcotte +Date: Mon Jan 13 10:18:20 2014 -0500 + + Now able to grab the command from the URI + +M ActiveSync/NSString+ActiveSync.h +M ActiveSync/NSString+ActiveSync.m + +commit f74066c9a6421abba4c370ee7dca609f4404c74a +Author: Ludovic Marcotte +Date: Sat Jan 11 19:31:39 2014 -0500 + + Support for more props + +M ActiveSync/iCalEvent+ActiveSync.m +M ActiveSync/iCalToDo+ActiveSync.m + +commit ee49836f2ee5a90b203367f9d386a16c494bce91 +Author: Ludovic Marcotte +Date: Fri Jan 10 16:49:40 2014 -0500 + + Disabled debugging... + +M ActiveSync/NSData+ActiveSync.m + +commit bf798061d3e2aae345cf2cd7ba0d3105f3e215c0 +Author: Ludovic Marcotte +Date: Fri Jan 10 16:48:39 2014 -0500 + + Fixed timezones support for events and added more supported props + +M ActiveSync/NSData+ActiveSync.m +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m +M ActiveSync/iCalEvent+ActiveSync.m + +commit 834e05bab1f925cb2a9dbeb48a24cd31cab7e7ae +Author: Ludovic Marcotte +Date: Fri Jan 10 15:29:57 2014 -0500 + + Fixed typo messing up adds + +M ActiveSync/SOGoActiveSyncDispatcher+Sync.m + +commit e8438a6235f0a37f5126c7253700dbab3dcff4d1 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:53:49 2014 -0500 + + Don't write decoded stuff if not needed + +M ActiveSync/NSData+ActiveSync.m + +commit 68dafdfdeb15ac2d33c21f00a7db521b7d400e72 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:25:00 2014 -0500 + + Removed old comments + +M ActiveSync/SOGoActiveSyncDispatcher.m + +commit e5bc46710c715a9dc2e1801bba236fa7e7848b3d +Author: Ludovic Marcotte +Date: Fri Jan 10 14:12:53 2014 -0500 + + Initial Active Sync Support! + +A ActiveSync/ActiveSyncProduct.m +A ActiveSync/GNUmakefile +A ActiveSync/GNUmakefile.preamble +A ActiveSync/LICENSE +A ActiveSync/NGDOMElement+ActiveSync.h +A ActiveSync/NGDOMElement+ActiveSync.m +A ActiveSync/NGMimeMessage+ActiveSync.h +A ActiveSync/NGMimeMessage+ActiveSync.m +A ActiveSync/NGVCard+ActiveSync.h +A ActiveSync/NGVCard+ActiveSync.m +A ActiveSync/NSData+ActiveSync.h +A ActiveSync/NSData+ActiveSync.m +A ActiveSync/NSDate+ActiveSync.h +A ActiveSync/NSDate+ActiveSync.m +A ActiveSync/NSString+ActiveSync.h +A ActiveSync/NSString+ActiveSync.m +A ActiveSync/README +A ActiveSync/SOGoActiveSyncConstants.h +A ActiveSync/SOGoActiveSyncDispatcher+Sync.h +A ActiveSync/SOGoActiveSyncDispatcher+Sync.m +A ActiveSync/SOGoActiveSyncDispatcher.h +A ActiveSync/SOGoActiveSyncDispatcher.m +A ActiveSync/SOGoMailObject+ActiveSync.h +A ActiveSync/SOGoMailObject+ActiveSync.m +A ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m +A ActiveSync/common.make +A ActiveSync/iCalEvent+ActiveSync.h +A ActiveSync/iCalEvent+ActiveSync.m +A ActiveSync/iCalTimeZone+ActiveSync.h +A ActiveSync/iCalTimeZone+ActiveSync.m +A ActiveSync/iCalToDo+ActiveSync.h +A ActiveSync/iCalToDo+ActiveSync.m +A ActiveSync/product.plist + +commit 7355eae1dc7a04eac5cc46b4e95e57a461a71db6 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:10:53 2014 -0500 + + Now able to set Active Sync metadata in the user settings + +M SoObjects/SOGo/SOGoUserSettings.h +M SoObjects/SOGo/SOGoUserSettings.m + +commit 1d9febb51139924ac7563c43e7ceeb9d2f54f4b2 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:10:16 2014 -0500 + + Correctly handle the Active Sync requests + +M SoObjects/SOGo/SOGoUserFolder.h +M SoObjects/SOGo/WORequest+SOGo.m + +commit e21b30d768c06b2507dba6e2b35e511534affab0 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:09:32 2014 -0500 + + Code cleanups + +M SoObjects/SOGo/SOGoObject.h + +commit ae200360ba17719e8794231b5d43c4f232b4aa71 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:09:02 2014 -0500 + + Code cleanups + +M SoObjects/SOGo/SOGoGCSFolder.h +M SoObjects/SOGo/SOGoGCSFolder.m + +commit e217ffb6c4896c10d6ddaa784880a74d6e19fdcd +Author: Ludovic Marcotte +Date: Fri Jan 10 14:08:12 2014 -0500 + + Code generalization to be usable from the ActiveSync bundle + +M SoObjects/Contacts/SOGoContactFolders.h +M SoObjects/Contacts/SOGoContactFolders.m +M SoObjects/Contacts/SOGoContactGCSEntry.m + +commit a4a3a735b47d14af91ca2b822eb74292f9930cfe +Author: Ludovic Marcotte +Date: Fri Jan 10 14:06:53 2014 -0500 + + Moved the folder metadata generation to SoObject and added 'tag based' sync'ing support for IMAP + +M SoObjects/Mailer/GNUmakefile +M SoObjects/Mailer/SOGoMailAccount.h +M SoObjects/Mailer/SOGoMailAccount.m +M SoObjects/Mailer/SOGoMailFolder.h +M SoObjects/Mailer/SOGoMailFolder.m +M SoObjects/Mailer/SOGoMailObject.h +M UI/MailerUI/UIxMailAccountActions.h +M UI/MailerUI/UIxMailAccountActions.m +M UI/MailerUI/UIxMailFolderActions.m + +commit 13721b961b2224b3918b421c13816d045c86e322 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:03:50 2014 -0500 + + Add an easy way to get the personal contact folder, just like we have for calendars + +M SoObjects/SOGo/SOGoUser.h +M SoObjects/SOGo/SOGoUser.m + +commit 689a1e94e0e8b3e8b60debcffd413765629c8d94 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:02:32 2014 -0500 + + Sample Active Sync configuration + +M Apache/SOGo.conf + +commit afcd92fb719ca01767519d19b61320f8e8315e05 +Author: Ludovic Marcotte +Date: Fri Jan 10 14:01:39 2014 -0500 + + Load the ActiveSync bundle code and bind it + +M UI/MainUI/GNUmakefile +A UI/MainUI/SOGoMicrosoftActiveSyncActions.m +M UI/MainUI/product.plist + +commit 7260c07628c90450035381f975141f230522dc1e +Author: Ludovic Marcotte +Date: Thu Jan 9 21:10:48 2014 -0500 + + More cleanups + +M UI/MainUI/SOGoSAML2Actions.m + +commit a24d809e4061056be6082b310bae1b9d8edb6883 +Author: Ludovic Marcotte +Date: Thu Jan 9 21:06:31 2014 -0500 + + Minor code/copyright/authors cleanups + +M Main/SOGo+DAV.m +M Main/SOGo.m +M OpenChange/MAPIStoreMailFolder.m +M SoObjects/Appointments/MSExchangeFreeBusy.m +M SoObjects/Appointments/SOGoCalendarComponent.h +M SoObjects/Appointments/SOGoTaskObject.h +M SoObjects/Contacts/NGVCard+SOGo.m +M SoObjects/Contacts/SOGoContactGCSEntry.h +M SoObjects/Contacts/SOGoContactGCSFolder.m +M SoObjects/Contacts/SOGoContactObject.h +M SoObjects/Contacts/SOGoContactSourceFolder.h +M SoObjects/Contacts/SOGoContactSourceFolder.m +M SoObjects/Mailer/SOGoMailManager.h +M SoObjects/SOGo/NSArray+DAV.m +M SoObjects/SOGo/SOGoDAVAuthenticator.h +M SoObjects/SOGo/SOGoFolder.h +M SoObjects/SOGo/SOGoParentFolder.h +M SoObjects/SOGo/SOGoUserDefaults.h +M SoObjects/SOGo/SOGoUserFolder.h +M SoObjects/SOGo/SOGoWebAuthenticator.h +M SoObjects/SOGo/SOGoWebAuthenticator.m +M UI/Contacts/UIxContactView.m +M UI/MailPartViewers/UIxMailRenderingContext.m +M UI/MainUI/SOGoRootPage.m + +commit ed97407578d74351e8e2fb2002a949a0168039f2 +Author: Ludovic Marcotte +Date: Thu Jan 9 20:42:16 2014 -0500 + + Dropped old data types + +M UI/WebServerResources/MailerUI.js + +commit ca541d7299f4aa93dbf8eeaced497ddcbebfab19 +Author: Ludovic Marcotte +Date: Thu Jan 9 20:41:16 2014 -0500 + + Cleanups in conf file + +M Apache/SOGo.conf + +commit 2d683ffc7791d766f353be39391cca20c012bcde +Author: Ludovic Marcotte +Date: Thu Jan 9 20:40:25 2014 -0500 + + Always capitalize HTTP headers + +M SoObjects/SOGo/SOGoDefaults.plist + +commit d603a8672e72aeb0d3d51decd1455f9dfc193cac +Author: Francis Lachapelle +Date: Thu Jan 9 09:13:11 2014 -0500 + + Consider 'background' attribute as unsafe + + When loading a message, background attributes will be disabled if the + user as chosen to not automatically load external images. + + Fixes #2437 + +M NEWS +M UI/MailPartViewers/UIxMailPartHTMLViewer.m +M UI/WebServerResources/MailerUI.js + +commit d51e1da57f6ce9f9dabffcb5cf3480a82be501aa +Author: Francis Lachapelle +Date: Wed Jan 8 15:02:41 2014 -0500 + + Increase height of signature editor + +M UI/WebServerResources/UIxPreferences.css +M UI/WebServerResources/UIxPreferences.js + +commit 80fd439dea8a87727f0bc2f6a947d12450a68006 +Author: Francis Lachapelle +Date: Wed Jan 8 14:40:39 2014 -0500 + + Fix message forwarding as attachment + + Restored the filename of the message source in the body part + content-disposition header. + Also forced the mail to be saved to the mailstore immediately in order + to have a clickable link to the attached message. + +M SoObjects/Mailer/SOGoDraftObject.m + +commit a0d7f184fe793f103ab1f05e49ea0366f4d4e738 +Author: Francis Lachapelle +Date: Tue Jan 7 11:51:35 2014 -0500 + + Update French translation + +M UI/Common/French.lproj/Localizable.strings +M UI/MailerUI/French.lproj/Localizable.strings + +commit fe2826ca76cb3963c2fdaaedeb751049824813cc +Author: Francis Lachapelle +Date: Tue Jan 7 11:11:39 2014 -0500 + + Draft: Improve error handling when attaching files + +M UI/Common/English.lproj/Localizable.strings +M UI/MailerUI/English.lproj/Localizable.strings +M UI/WebServerResources/UIxMailEditor.js + +commit ff9ea3b779b27baa9ddff5b7a79942980ab0f28a +Author: Francis Lachapelle +Date: Tue Jan 7 10:28:53 2014 -0500 + + Don't alter the draft when saving it + + We must not extract inline HTML images when simply saving a draft. The + images extraction process must only be performed when sending the + message. + +M SoObjects/Mailer/SOGoDraftObject.m + +commit e70793e7aee7fa02141fed97a174778304d4834e +Author: Francis Lachapelle +Date: Mon Jan 6 15:09:09 2014 -0500 + + Don't follow link of attachment not yet uploaded + +M UI/WebServerResources/UIxMailEditor.js + +commit 0fdea48ce85afe1598cc199590f3b8afab4df30b +Author: Francis Lachapelle +Date: Mon Jan 6 15:08:45 2014 -0500 + + Restore CSS of disabled menu options + +M UI/WebServerResources/generic.css + +commit 2b53705d449089a66f23cd055f6c0c92a01890c9 +Author: Francis Lachapelle +Date: Mon Jan 6 14:32:58 2014 -0500 + + Untabify + +M SoObjects/Mailer/NSString+Mail.m + +commit b716331d8ee99123aeb3e9b51a13baa8dde8ba66 +Author: Francis Lachapelle +Date: Mon Jan 6 14:20:47 2014 -0500 + + Append tags when using a sanitizerContentHandler + +M SoObjects/Mailer/NSString+Mail.m + +commit 586d66b1134889ba1ff97ea2b0d55cdf3b3d82e7 +Author: Jean Raby +Date: Mon Jan 6 13:28:47 2014 -0500 + + Updated description of SOGoUIAdditionalJSFiles + + Document that the files must be placed under the WebServerResources directory + +M Documentation/SOGo Installation Guide.odt + +commit 5756defbf1d3fac4d6923732a0a7986f9ce6e9ec +Author: Francis Lachapelle +Date: Mon Jan 6 11:10:28 2014 -0500 + + Mail editor: don't give focus to file input field. + +M UI/Templates/MailerUI/UIxMailEditor.wox + +commit 7130cec4d1eff93ce6acc84e4fda5258878e5082 +Author: Francis Lachapelle +Date: Fri Jan 3 16:56:51 2014 -0500 + + Move & copy messages between different accounts + +M NEWS +M SoObjects/Mailer/SOGoMailFolder.m +M UI/Templates/MailerUI/UIxMailMainFrame.wox +M UI/WebServerResources/MailerUI.js + +commit 009cfccb2c8ea94e5a235964c4214553ac54c299 +Author: Francis Lachapelle +Date: Fri Jan 3 14:33:27 2014 -0500 + + Fix JS error when saving/sending plain text msg + +M UI/WebServerResources/UIxMailEditor.js + +commit 09e14df79b4ba9cd9a319b41f2d386ba50a5cc63 +Author: Francis Lachapelle +Date: Fri Jan 3 14:32:48 2014 -0500 + + Preferences: fix display of calendar categories + +M UI/WebServerResources/UIxPreferences.css + +commit ba29e7620d895ef183898465c6757dbd211d1daa +Author: Francis Lachapelle +Date: Fri Jan 3 14:32:01 2014 -0500 + + Update French translation + +M UI/MailerUI/French.lproj/Localizable.strings +M UI/PreferencesUI/French.lproj/Localizable.strings + +commit 32516b162e5f719ccc86e0dfcc40654a8eb17390 +Author: Francis Lachapelle +Date: Tue Dec 31 15:52:15 2013 -0500 + + Update textarea before saving/sending HTML message + +M UI/WebServerResources/UIxMailEditor.js + +commit a8e780516bbac198b68c75638916ebb93c42af2e +Author: Francis Lachapelle +Date: Mon Dec 23 15:54:22 2013 -0500 + + Fix display of "edit draft" and "load images" + + The buttons were placed one over the other. + +M UI/Templates/MailerUI/UIxMailView.wox +M UI/WebServerResources/MailerUI.css + +commit bd7ad5be16b98848ac14e06546fb2db8a7927182 +Author: Francis Lachapelle +Date: Mon Dec 23 15:51:36 2013 -0500 + + Fix initialization of arrays in NSString+Mail.m + +M SoObjects/Mailer/NSString+Mail.m + +commit bed57af0157cc167bda6d2651b8f07b23eec3f4a +Author: Francis Lachapelle +Date: Fri Dec 20 16:18:19 2013 -0500 + + Improve display of linked attachments + +M UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox + +commit 5f369f201d0020c3d4720fd710eceaebe7dd10e5 +Author: Francis Lachapelle +Date: Fri Dec 20 15:37:01 2013 -0500 + + Add links to download one or all attachments + + Also removed the contextual menu over file attachments and changed the + label color when moving over the file attachments. + +M NEWS +M UI/MailerUI/English.lproj/Localizable.strings +M UI/MailerUI/UIxMailEditor.m +M UI/MailerUI/UIxMailView.m +M UI/Templates/MailerUI/UIxMailMainFrame.wox +M UI/Templates/MailerUI/UIxMailPopupView.wox +M UI/Templates/MailerUI/UIxMailView.wox +M UI/WebServerResources/MailerUI.css +M UI/WebServerResources/MailerUI.js +M UI/WebServerResources/generic.css +M UI/WebServerResources/generic.js + +commit dc21c723f695524bc8d2bf9088f3575b518b1e46 +Author: Francis Lachapelle +Date: Fri Dec 20 15:20:16 2013 -0500 + + Move method fetchFileAttachmentKeys from category + + Moved fetchFileAttachmentKeys from SOGoDraftObjectExtensions to + SOGoDraftObject. Renamed fetchAttachmentIds to fetchFileAttachmentIds + for consistency. + +M SoObjects/Mailer/SOGoMailObject+Draft.h +M SoObjects/Mailer/SOGoMailObject+Draft.m +M SoObjects/Mailer/SOGoMailObject.h +M SoObjects/Mailer/SOGoMailObject.m +M UI/MailPartViewers/UIxMailPartHTMLViewer.m + +commit 1f7994d1bf9302e02940de5fc75c0a53a9911d75 +Author: Francis Lachapelle +Date: Wed Dec 18 22:16:28 2013 -0500 + + Respect locale in time format of attendees window + +M NEWS +M UI/Templates/SchedulerUI/UIxAttendeesEditor.wox +M UI/WebServerResources/JavascriptAPIExtensions.js +M UI/WebServerResources/UIxAttendeesEditor.js + +commit 7369a82bab05f5044432343de49c70a7600166e5 +Author: Francis Lachapelle +Date: Wed Dec 18 16:36:49 2013 -0500 + + Improve upload of attachments to messages + +M NEWS +M UI/MailerUI/Toolbars/SOGoDraftObject.toolbar +M UI/MailerUI/UIxMailEditor.m +M UI/Templates/MailerUI/UIxMailEditor.wox +M UI/WebServerResources/UIxMailEditor.css +M UI/WebServerResources/UIxMailEditor.js +A UI/WebServerResources/attachment.png +M UI/WebServerResources/generic.css +A UI/WebServerResources/jquery.fileupload.css +A UI/WebServerResources/jquery.fileupload.js +A UI/WebServerResources/jquery.iframe-transport.js +A UI/WebServerResources/upload_document.png + +commit 1a900b05d9cb6def48849209cde72225ab65fcff +Author: Francis Lachapelle +Date: Wed Dec 18 14:12:29 2013 -0500 + + DraftObject: return more attachments attributes + +M SoObjects/Mailer/SOGoDraftObject.h +M SoObjects/Mailer/SOGoDraftObject.m +M SoObjects/Mailer/SOGoMailObject+Draft.m + +commit a8e3418a4cac2812c2fe1234ef0c95b88100c9d5 +Author: Francis Lachapelle +Date: Wed Dec 18 08:38:03 2013 -0500 + + Use the UIxMailSizeFormatter in messages listing + +M UI/MailPartViewers/UIxMailSizeFormatter.m +M UI/MailerUI/UIxMailListActions.h +M UI/MailerUI/UIxMailListActions.m +M UI/Templates/MailPartViewers/UIxMailPartLinkViewer.wox +M UI/WebServerResources/generic.css + +commit 59ce12a51b352bc800a3347b00df80a296a84e62 +Author: Francis Lachapelle +Date: Tue Dec 17 16:39:30 2013 -0500 + + Load XMLHttpRequest conditionally (< IE9) + +M NEWS +M UI/SOGoElements/SOGoIEConditional.h +M UI/SOGoElements/SOGoIEConditional.m +M UI/Templates/UIxPageFrame.wox +M UI/WebServerResources/XMLHttpRequest.js + +commit 08ab36244c1b7e4144f06948fb4c981540032248 +Author: Ludovic Marcotte +Date: Mon Dec 16 17:48:23 2013 -0500 + + Improved the logic behind refusing too-many submitted mails. + +M UI/MailerUI/UIxMailEditor.m + +commit 9ea880e80bc041e538d038c7a3246861df9bdb2e +Author: Jean Raby +Date: Wed Dec 11 14:36:28 2013 -0500 + + fix backup path + +M Scripts/sogo.cron + +commit 7d0a9aa1b7f88cfb03353a1fb18b8d74e9f8f550 +Author: Ludovic Marcotte +Date: Tue Dec 10 20:09:32 2013 -0500 + + Cleanups. + +M UI/Templates/UIxWinClose.wox + +commit 2fa654fadbd6a7a8086329c0a4435b6b7d091ff3 +Author: Jean Raby +Date: Tue Dec 10 15:55:44 2013 -0500 + + sogo.conf: fix typo and add AD/Samba4 example + +M Scripts/sogo.conf + +commit 4a98e5b521dcd64fef7d08521d10d5dd32e3817d +Author: Ludovic Marcotte +Date: Mon Dec 9 10:31:34 2013 -0500 + + Don't append unknown objects to the REPORT result. + +M SoObjects/Contacts/SOGoContactSourceFolder.m + +commit e5103faed49fe86e222c86d88bdc8afda7061ba0 +Author: Francis Lachapelle +Date: Thu Dec 5 21:33:09 2013 -0500 + + Update Finnish translation + +M NEWS +M UI/Common/Finnish.lproj/Localizable.strings +M UI/MailerUI/Finnish.lproj/Localizable.strings +M UI/PreferencesUI/Finnish.lproj/Localizable.strings + +commit f9ad9ea8150ab123ee3d353f78d8d144d4eeac6d +Author: Francis Lachapelle +Date: Thu Dec 5 21:10:03 2013 -0500 + + Bump version to 2.1.2 + +M Version + +commit cfbd53e374a75a70e6d16875d5eb880d3de03d23 +Author: Francis Lachapelle +Date: Thu Dec 5 09:00:01 2013 -0500 + + Fix initialization of preferences module + + Don't try to initialize the tabs controller on the mail options tab if + the mail module is disabled. + +M UI/WebServerResources/UIxPreferences.js + +commit f2beabec8887981ee91362295b38db5a62d933c9 +Author: Jean Raby +Date: Wed Dec 4 19:50:22 2013 -0500 + + document organization and country ldap mapping + +M Documentation/SOGo Installation Guide.odt + +commit eaa0fb3cf1ec654e79a1a9522376a4ad2902c285 +Author: Jean Raby +Date: Wed Dec 4 11:11:10 2013 -0500 + + Update NEWS CKEditor is in 2.1.1b + +M NEWS + +commit db56d1fa6ce2736b1cefd0f931d5747899a7860d +Author: Jean Raby +Date: Wed Dec 4 10:33:48 2013 -0500 + + Bump version to 2.1.1b + adjust NEWS + +M NEWS +M Version + +commit 37de8c6141a04fdd76f5d1b439f937aab1d2ec0b +Author: Francis Lachapelle +Date: Mon Dec 2 13:41:39 2013 -0500 + + CKEditor: don't filter tags + +M UI/WebServerResources/ckeditor/config.js + +commit b0eb34f6b72f0619f277ef34d9ef3ad7584709ca +Author: Francis Lachapelle +Date: Mon Dec 2 11:58:28 2013 -0500 + + Add 'div' plugin to CKEditor + +M UI/WebServerResources/ckeditor/build-config.js +M UI/WebServerResources/ckeditor/ckeditor.js +M UI/WebServerResources/ckeditor/config.js +M UI/WebServerResources/ckeditor/lang/ar.js +M UI/WebServerResources/ckeditor/lang/ca.js +M UI/WebServerResources/ckeditor/lang/cs.js +M UI/WebServerResources/ckeditor/lang/cy.js +M UI/WebServerResources/ckeditor/lang/da.js +M UI/WebServerResources/ckeditor/lang/de.js +M UI/WebServerResources/ckeditor/lang/en.js +M UI/WebServerResources/ckeditor/lang/es.js +M UI/WebServerResources/ckeditor/lang/fi.js +M UI/WebServerResources/ckeditor/lang/fr.js +M UI/WebServerResources/ckeditor/lang/hu.js +M UI/WebServerResources/ckeditor/lang/is.js +M UI/WebServerResources/ckeditor/lang/it.js +M UI/WebServerResources/ckeditor/lang/nb.js +M UI/WebServerResources/ckeditor/lang/nl.js +M UI/WebServerResources/ckeditor/lang/no.js +M UI/WebServerResources/ckeditor/lang/pl.js +M UI/WebServerResources/ckeditor/lang/pt-br.js +M UI/WebServerResources/ckeditor/lang/ru.js +M UI/WebServerResources/ckeditor/lang/sk.js +M UI/WebServerResources/ckeditor/lang/sv.js +M UI/WebServerResources/ckeditor/lang/uk.js +A UI/WebServerResources/ckeditor/plugins/div/dialogs/div.js +M UI/WebServerResources/ckeditor/plugins/icons.png +M UI/WebServerResources/ckeditor/plugins/icons_hidpi.png +M UI/WebServerResources/ckeditor/skins/moono/editor.css +M UI/WebServerResources/ckeditor/skins/moono/editor_gecko.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie7.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie8.css +M UI/WebServerResources/ckeditor/skins/moono/editor_iequirks.css +M UI/WebServerResources/ckeditor/skins/moono/icons.png +M UI/WebServerResources/ckeditor/skins/moono/icons_hidpi.png + +commit 1cf696f57c7347040bff272a7873d7a5ac8d9fbe +Author: Francis Lachapelle +Date: Mon Nov 25 09:52:18 2013 -0500 + + Mail composition: add text part before html part + + Fixes #2512 + +M NEWS +M SoObjects/Mailer/SOGoDraftObject.m + +commit 2114a48222b73c1edad3e2dbdbf39898103b23eb +Author: Francis Lachapelle +Date: Fri Nov 22 15:03:57 2013 -0500 + + Update NEWS file + +M NEWS + +commit 384d998c471f52eeed24b749f64873374e46ebfc +Author: Francis Lachapelle +Date: Fri Nov 22 14:42:16 2013 -0500 + + Cleanup wox templates + +M UI/Templates/MailerUI/UIxMailWindowCloser.wox +M UI/Templates/PreferencesUI/UIxFilterEditor.wox + +commit 2211f6d168e84cc9d0157e400276cfdaae242647 +Author: Francis Lachapelle +Date: Fri Nov 22 14:39:24 2013 -0500 + + Move mail tags strings to UI/Common + +M SoObjects/Mailer/SOGoMailLabel.m +M UI/Common/Arabic.lproj/Localizable.strings +M UI/Common/BrazilianPortuguese.lproj/Localizable.strings +M UI/Common/Catalan.lproj/Localizable.strings +M UI/Common/Czech.lproj/Localizable.strings +M UI/Common/Danish.lproj/Localizable.strings +M UI/Common/Dutch.lproj/Localizable.strings +M UI/Common/English.lproj/Localizable.strings +M UI/Common/Finnish.lproj/Localizable.strings +M UI/Common/French.lproj/Localizable.strings +M UI/Common/German.lproj/Localizable.strings +M UI/Common/Hungarian.lproj/Localizable.strings +M UI/Common/Icelandic.lproj/Localizable.strings +M UI/Common/Italian.lproj/Localizable.strings +M UI/Common/NorwegianBokmal.lproj/Localizable.strings +M UI/Common/NorwegianNynorsk.lproj/Localizable.strings +M UI/Common/Polish.lproj/Localizable.strings +M UI/Common/Russian.lproj/Localizable.strings +M UI/Common/Slovak.lproj/Localizable.strings +M UI/Common/SpanishArgentina.lproj/Localizable.strings +M UI/Common/SpanishSpain.lproj/Localizable.strings +M UI/Common/Swedish.lproj/Localizable.strings +M UI/Common/Ukrainian.lproj/Localizable.strings +M UI/Common/Welsh.lproj/Localizable.strings +M UI/MailerUI/Arabic.lproj/Localizable.strings +M UI/MailerUI/BrazilianPortuguese.lproj/Localizable.strings +M UI/MailerUI/Catalan.lproj/Localizable.strings +M UI/MailerUI/Czech.lproj/Localizable.strings +M UI/MailerUI/Danish.lproj/Localizable.strings +M UI/MailerUI/Dutch.lproj/Localizable.strings +M UI/MailerUI/English.lproj/Localizable.strings +M UI/MailerUI/Finnish.lproj/Localizable.strings +M UI/MailerUI/French.lproj/Localizable.strings +M UI/MailerUI/German.lproj/Localizable.strings +M UI/MailerUI/Hungarian.lproj/Localizable.strings +M UI/MailerUI/Icelandic.lproj/Localizable.strings +M UI/MailerUI/Italian.lproj/Localizable.strings +M UI/MailerUI/NorwegianBokmal.lproj/Localizable.strings +M UI/MailerUI/NorwegianNynorsk.lproj/Localizable.strings +M UI/MailerUI/Polish.lproj/Localizable.strings +M UI/MailerUI/Russian.lproj/Localizable.strings +M UI/MailerUI/Slovak.lproj/Localizable.strings +M UI/MailerUI/SpanishArgentina.lproj/Localizable.strings +M UI/MailerUI/SpanishSpain.lproj/Localizable.strings +M UI/MailerUI/Swedish.lproj/Localizable.strings +M UI/MailerUI/Ukrainian.lproj/Localizable.strings +M UI/MailerUI/Welsh.lproj/Localizable.strings +M UI/PreferencesUI/Arabic.lproj/Localizable.strings +M UI/PreferencesUI/BrazilianPortuguese.lproj/Localizable.strings +M UI/PreferencesUI/Catalan.lproj/Localizable.strings +M UI/PreferencesUI/Czech.lproj/Localizable.strings +M UI/PreferencesUI/Danish.lproj/Localizable.strings +M UI/PreferencesUI/Dutch.lproj/Localizable.strings +M UI/PreferencesUI/English.lproj/Localizable.strings +M UI/PreferencesUI/Finnish.lproj/Localizable.strings +M UI/PreferencesUI/French.lproj/Localizable.strings +M UI/PreferencesUI/German.lproj/Localizable.strings +M UI/PreferencesUI/Hungarian.lproj/Localizable.strings +M UI/PreferencesUI/Icelandic.lproj/Localizable.strings +M UI/PreferencesUI/Italian.lproj/Localizable.strings +M UI/PreferencesUI/NorwegianBokmal.lproj/Localizable.strings +M UI/PreferencesUI/NorwegianNynorsk.lproj/Localizable.strings +M UI/PreferencesUI/Polish.lproj/Localizable.strings +M UI/PreferencesUI/Russian.lproj/Localizable.strings +M UI/PreferencesUI/Slovak.lproj/Localizable.strings +M UI/PreferencesUI/SpanishArgentina.lproj/Localizable.strings +M UI/PreferencesUI/SpanishSpain.lproj/Localizable.strings +M UI/PreferencesUI/Swedish.lproj/Localizable.strings +M UI/PreferencesUI/Ukrainian.lproj/Localizable.strings +M UI/PreferencesUI/Welsh.lproj/Localizable.strings +M UI/WebServerResources/MailerUI.js + +commit 32ba01315f13631ff40d00081f4e481c3614af72 +Author: Ludovic Marcotte +Date: Fri Nov 22 11:29:24 2013 -0500 + + Init local variable to avoid potential crasher. + +M OpenChange/MAPIStoreGCSBaseContext.m + +commit 682ed767d956f0650de36e352ff3285856fdc0b3 +Author: Francis Lachapelle +Date: Thu Nov 21 08:50:24 2013 -0500 + + Fix the Sieve filters editor with new mail flags + +M UI/Templates/PreferencesUI/UIxFilterEditor.wox +M UI/WebServerResources/UIxFilterEditor.js + +commit 5536f8967eea7c441d4e89bd246d1c113d0d8445 +Author: Jean Raby +Date: Thu Nov 21 07:11:05 2013 -0500 + + don't escape html in label names + +M UI/Templates/PreferencesUI/UIxFilterEditor.wox + +commit df3e9033f3723e63235ff4cc8fa9257fc2c6f176 +Author: Ludovic Marcotte +Date: Wed Nov 20 17:42:11 2013 -0500 + + Added calendar default reminder support. + +M NEWS +M SoObjects/SOGo/SOGoDefaults.plist +M SoObjects/SOGo/SOGoUserDefaults.h +M SoObjects/SOGo/SOGoUserDefaults.m +M UI/PreferencesUI/English.lproj/Localizable.strings +M UI/PreferencesUI/UIxPreferences.m +M UI/Scheduler/UIxComponentEditor.h +M UI/Scheduler/UIxComponentEditor.m +M UI/Templates/PreferencesUI/UIxPreferences.wox +M UI/Templates/SchedulerUI/UIxComponentEditor.wox + +commit f167475c91d9481914e7ccfb930ae05963db2bd3 +Author: Francis Lachapelle +Date: Wed Nov 20 11:17:42 2013 -0500 + + Update CKEditor to version 4.3.0 + +M NEWS +M UI/WebServerResources/UIxMailEditor.js +M UI/WebServerResources/ckeditor/build-config.js +M UI/WebServerResources/ckeditor/ckeditor.js +M UI/WebServerResources/ckeditor/config.js +M UI/WebServerResources/ckeditor/contents.css +M UI/WebServerResources/ckeditor/plugins/image/dialogs/image.js +M UI/WebServerResources/ckeditor/plugins/link/dialogs/link.js +M UI/WebServerResources/ckeditor/plugins/table/dialogs/table.js +M UI/WebServerResources/ckeditor/skins/moono/dialog.css +M UI/WebServerResources/ckeditor/skins/moono/dialog_ie.css +M UI/WebServerResources/ckeditor/skins/moono/dialog_ie7.css +M UI/WebServerResources/ckeditor/skins/moono/dialog_ie8.css +M UI/WebServerResources/ckeditor/skins/moono/dialog_iequirks.css +M UI/WebServerResources/ckeditor/skins/moono/dialog_opera.css +M UI/WebServerResources/ckeditor/skins/moono/editor.css +M UI/WebServerResources/ckeditor/skins/moono/editor_gecko.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie7.css +M UI/WebServerResources/ckeditor/skins/moono/editor_ie8.css +M UI/WebServerResources/ckeditor/skins/moono/editor_iequirks.css + +commit e4aedbac080d85ac4f927acb9e015b9e8839891b +Author: Ludovic Marcotte +Date: Wed Nov 20 08:56:29 2013 -0500 + + conversion to file attachments + CIDs. + +M NEWS +M SoObjects/Mailer/NSString+Mail.h +M SoObjects/Mailer/NSString+Mail.m +M SoObjects/Mailer/SOGoDraftObject.m +M SoObjects/Mailer/SOGoMailObject+Draft.m +M UI/MailPartViewers/UIxMailPartHTMLViewer.h +M UI/MailPartViewers/UIxMailPartHTMLViewer.m + +commit 6587f4f19319aea549ffdd8b4e6a8752c1b3095d +Author: Jean Raby +Date: Tue Nov 19 13:59:20 2013 -0500 + + Update ChangeLog + +M ChangeLog + commit c8a4ea5548e06de1341312a1cabb00fb0ef232e8 Author: Francis Lachapelle Date: Tue Nov 19 13:57:18 2013 -0500 diff --git a/NEWS b/NEWS index 85a4018fdc..88fceeb4f9 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,4 @@ -2.2.0 (2014-02-XX) +2.2.0 (2014-02-24) ------------------ New features

      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

  • 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 V)IqpsKcm2WK$vVW9dR~k{{t)uFU0@= literal 157625 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�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
    %@
    %@
    \n", @@ -93,7 +94,18 @@ - (NSString *) _cardStringWithLabel: (NSString *) label { return [self _cardStringWithLabel: label value: value - url: nil]; + asLinkScheme: nil + withLinkAttributes: nil]; +} + +- (NSString *) _cardStringWithLabel: (NSString *) label + value: (NSString *) value + asLinkScheme: (NSString *) scheme +{ + return [self _cardStringWithLabel: label + value: value + asLinkScheme: scheme + withLinkAttributes: nil]; } - (NSString *) displayName @@ -115,7 +127,7 @@ - (NSString *) fullName - (NSString *) primaryEmail { - NSString *email, *fn, *mailTo; + NSString *email, *fn, *attrs; email = [card preferredEMail]; if ([email length] > 0) @@ -123,26 +135,28 @@ - (NSString *) primaryEmail fn = [card fn]; fn = [fn stringByReplacingString: @"\"" withString: @""]; fn = [fn stringByReplacingString: @"'" withString: @"\\\'"]; - mailTo = [NSString stringWithFormat: @"');\">" - @"%@", email, fn, email, email]; + attrs = [NSString stringWithFormat: @"onclick=\"return openMailTo('%@ <%@>');\"", fn, email]; } else - mailTo = nil; + { + attrs = nil; + } return [self _cardStringWithLabel: @"Email:" - value: mailTo]; + value: email + asLinkScheme: @"mailto:" + withLinkAttributes: attrs]; } - (NSArray *) secondaryEmails { NSMutableArray *secondaryEmails; - NSString *email, *fn, *mailTo; + NSString *email, *fn, *attrs; NSArray *emails; emails = [card secondaryEmails]; secondaryEmails = [NSMutableArray array]; - mailTo = nil; + attrs = nil; // We might not have a preferred item but rather something like this: // EMAIL;TYPE=work:dd@ee.com @@ -164,18 +178,18 @@ - (NSArray *) secondaryEmails fn = [card fn]; fn = [fn stringByReplacingString: @"\"" withString: @""]; fn = [fn stringByReplacingString: @"'" withString: @"\\\'"]; - mailTo = [NSString stringWithFormat: @"');\">" - @"%@", email, fn, email, email]; + attrs = [NSString stringWithFormat: @"onclick=\"return openMailTo('%@ <%@>');\"", fn, email]; [secondaryEmails addObject: [self _cardStringWithLabel: nil - value: mailTo]]; + value: email + asLinkScheme: @"mailto:" + withLinkAttributes: attrs]]; } } else { [secondaryEmails addObject: [self _cardStringWithLabel: nil - value: mailTo]]; + value: nil]]; } @@ -184,22 +198,19 @@ - (NSArray *) secondaryEmails - (NSString *) screenName { - NSString *screenName, *goim; + NSString *screenName; screenName = [[card uniqueChildWithTag: @"x-aim"] flattenedValuesForKey: @""]; - if ([screenName length] > 0) - goim = [NSString stringWithFormat: @"%@", screenName, screenName]; - else - goim = nil; - return [self _cardStringWithLabel: @"Screen Name:" value: goim]; + return [self _cardStringWithLabel: @"Screen Name:" + value: screenName + asLinkScheme: @"aim:goim?screenname="]; } - (NSString *) preferredTel { return [self _cardStringWithLabel: @"Phone Number:" - value: [card preferredTel] url: @"tel"]; + value: [card preferredTel] asLinkScheme: @"tel:"]; } - (NSString *) preferredAddress @@ -228,27 +239,27 @@ - (NSString *) workPhone { // We do this (exclude FAX) in order to avoid setting the WORK number as the FAX // one if we do see the FAX field BEFORE the WORK number. - return [self _cardStringWithLabel: @"Work:" value: [card workPhone] url: @"tel"]; + return [self _cardStringWithLabel: @"Work:" value: [card workPhone] asLinkScheme: @"tel:"]; } - (NSString *) homePhone { - return [self _cardStringWithLabel: @"Home:" value: [card homePhone] url: @"tel"]; + return [self _cardStringWithLabel: @"Home:" value: [card homePhone] asLinkScheme: @"tel:"]; } - (NSString *) fax { - return [self _cardStringWithLabel: @"Fax:" value: [card fax] url: @"tel"]; + return [self _cardStringWithLabel: @"Fax:" value: [card fax] asLinkScheme: @"tel:"]; } - (NSString *) mobile { - return [self _cardStringWithLabel: @"Mobile:" value: [card mobile] url: @"tel"]; + return [self _cardStringWithLabel: @"Mobile:" value: [card mobile] asLinkScheme: @"tel:"]; } - (NSString *) pager { - return [self _cardStringWithLabel: @"Pager:" value: [card pager] url: @"tel"]; + return [self _cardStringWithLabel: @"Pager:" value: [card pager] asLinkScheme: @"tel:"]; } - (BOOL) hasHomeInfos From 113b02fd71e4c88eea5ece62bc929f38285a38e4 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 13 Feb 2014 12:12:31 -0500 Subject: [PATCH 185/214] Fix encoding of contact ID in Ajax requests --- UI/WebServerResources/ContactsUI.js | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/UI/WebServerResources/ContactsUI.js b/UI/WebServerResources/ContactsUI.js index 93360260a7..935daf3c9a 100644 --- a/UI/WebServerResources/ContactsUI.js +++ b/UI/WebServerResources/ContactsUI.js @@ -244,7 +244,7 @@ function _onContactMenuAction(folderItem, action, refresh) { var selectedFolders = $("contactFolders").getSelectedNodes(); var folderId = $(folderItem).readAttribute("folderId"); if (folderId) - folderId = folderId.substring (1); + folderId = folderId.substring(1); if (Object.isArray(document.menuTarget) && selectedFolders.length > 0) { var selectedFolderId = $(selectedFolders[0]).readAttribute("id"); var contactIds = $(document.menuTarget).collect(function(row) { @@ -259,14 +259,17 @@ function _onContactMenuAction(folderItem, action, refresh) { } var url = ApplicationBaseURL + selectedFolderId + "/" + action; + var uids = contactIds.collect(function (s) { + return encodeURIComponent(s.unescapeHTML()); + }).join('&uid='); if (refresh) triggerAjaxRequest(url, actionContactCallback, selectedFolderId, - ('folder='+ folderId + '&uid=' + contactIds.join('&uid=')), + ('folder='+ folderId + '&uid=' + uids), { "Content-type": "application/x-www-form-urlencoded" }); else triggerAjaxRequest(url, actionContactCallback, null, - ('folder='+ folderId + '&uid=' + contactIds.join('&uid=')), + ('folder='+ folderId + '&uid=' + uids), { "Content-type": "application/x-www-form-urlencoded" }); } } @@ -334,7 +337,7 @@ function loadContact(idx) { } else { var url = (URLForFolderID(Contact.currentAddressBook) - + "/" + idx + "/view?noframe=1"); + + "/" + encodeURIComponent(idx.unescapeHTML()) + "/view?noframe=1"); document.contactAjaxRequest = triggerAjaxRequest(url, contactLoadCallback, idx); } @@ -498,8 +501,10 @@ function onToolbarDeleteSelectedContactsConfirm(dialogId) { for (var i = 0; i < rowIds.length; i++) $(rowIds[i]).hide(); triggerAjaxRequest(urlstr, onContactDeleteEventCallback, rowIds, - ('ids=' + rowIds.join(",")), - { "Content-type": "application/x-www-form-urlencoded" }); + ('ids=' + rowIds.collect(function (s) { + return encodeURIComponent(s.unescapeHTML()); + }).join(",")), + { "Content-type": "application/x-www-form-urlencoded" }); } function onContactDeleteEventCallback(http) { @@ -876,8 +881,7 @@ function deletePersonalAddressBookConfirm(folderId) { } var url = ApplicationBaseURL + folderId + "/delete"; document.deletePersonalABAjaxRequest - = triggerAjaxRequest(url, deletePersonalAddressBookCallback, - folderId); + = triggerAjaxRequest(url, deletePersonalAddressBookCallback, folderId); disposeDialog(); } @@ -1593,8 +1597,11 @@ function dropSelectedContacts(action, toId) { && fromId.substring(1) != toId) { var url = ApplicationBaseURL + fromId + "/" + action; + var uids = contactIds.collect(function (s) { + return encodeURIComponent(s.unescapeHTML()); + }).join('&uid='); triggerAjaxRequest(url, actionContactCallback, fromId, - ('folder='+ toId + '&uid=' + contactIds.join('&uid=')), + ('folder='+ toId + '&uid=' + uids), { "Content-type": "application/x-www-form-urlencoded" }); } } From 29e081ec5629e06c5f0839e5bc1d21122100fee8 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 13 Feb 2014 12:53:07 -0500 Subject: [PATCH 186/214] Add more parameters examples to sogo.conf --- Scripts/sogo.conf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Scripts/sogo.conf b/Scripts/sogo.conf index 05f3991036..df878f8114 100644 --- a/Scripts/sogo.conf +++ b/Scripts/sogo.conf @@ -33,8 +33,10 @@ //SOGoMailSpoolPath = /var/spool/sogo; //NGImap4ConnectionStringSeparator = "/"; + /* Notifications */ //SOGoAppointmentSendEMailNotifications = NO; //SOGoACLsSendEMailNotifications = NO; + //SOGoFoldersSendEMailNotifications = NO; /* Authentication */ //SOGoPasswordChangeEnabled = YES; @@ -84,7 +86,7 @@ * c_name - which can be identical to c_uid - will be used to uniquely identify entries * c_password - password of the user, plain-text, md5 or sha encoded for now * c_cn - the user's common name - such as "John Doe" - * mail - the user's mail address + * mail - the user's mail address * See the installation guide for more details */ //SOGoUserSources = @@ -105,6 +107,7 @@ //SOGoForwardEnabled = YES; //SOGoSieveScriptsEnabled = YES; //SOGoMailAuxiliaryUserAccountsEnabled = YES; + //SOGoTrustProxyAuthentication = NO; /* General */ //SOGoLanguage = English; @@ -115,6 +118,8 @@ //); //SOGoSuperUsernames = (sogo1, sogo2); // This is an array - keep the parens! //SxVMemLimit = 384; + //WOPidFile = "/var/run/sogo/sogo.pid"; + //SOGoMemcachedHost = "/var/run/memcached.sock"; /* Debug */ //SOGoDebugRequests = YES; From 06d2364ea255462262511b4f38f3c556d7fcb7f9 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 13 Feb 2014 12:56:24 -0500 Subject: [PATCH 187/214] Improve display of toolboor menus with checkmarks --- UI/WebServerResources/generic.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UI/WebServerResources/generic.css b/UI/WebServerResources/generic.css index aebf5c76a9..c1e5169b86 100644 --- a/UI/WebServerResources/generic.css +++ b/UI/WebServerResources/generic.css @@ -275,7 +275,7 @@ UL.choiceMenu LI list-style-image: url("menu-nocheck.gif"); padding: 3px 3px; margin: 0px; - padding-right: 10px; } + padding-right: 24px; } UL.choiceMenu LI._chosen { list-style-image: url("menu-check.gif"); } From ae07de5f6fa2127152761eb8732fa116ee5cae4d Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 14 Feb 2014 13:46:21 -0500 Subject: [PATCH 188/214] Updated the Active Sync documentation --- Documentation/SOGo Installation Guide.odt | Bin 168181 -> 158462 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Documentation/SOGo Installation Guide.odt b/Documentation/SOGo Installation Guide.odt index 33d9975cb77e90a9d69259475aff63560c30a594..a72c11dfbb35ed9bb13006f4c06b6b23f26fc80b 100644 GIT binary patch literal 158462 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�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%0Dfl~_Sm#a|l8C{Xh(fprBJ7R4 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 literal 168181 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 z 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%0AXv;d={{fj<;vWJOK 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

    ;as+*NIB+`6=*AAqm*Q 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 Date: Mon, 10 Feb 2014 13:45:51 -0500 Subject: [PATCH 177/214] Detect URLs in popup of events --- NEWS | 1 + UI/Scheduler/UIxAppointmentEditor.m | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index cd582679f0..0782818e90 100644 --- a/NEWS +++ b/NEWS @@ -29,6 +29,7 @@ Enhancements - moved the DN cache to SOGoCache - avoiding sogod restarts after RDN operations - don't use the HTML editor with Internet Explorer 7 - add message-id header to appointment notifications (#2535) + - detect URLs in popup of events Bug fixes - don't load 'background' attribute (#2437) diff --git a/UI/Scheduler/UIxAppointmentEditor.m b/UI/Scheduler/UIxAppointmentEditor.m index 2c371c5fe9..5f40e2396b 100644 --- a/UI/Scheduler/UIxAppointmentEditor.m +++ b/UI/Scheduler/UIxAppointmentEditor.m @@ -530,7 +530,7 @@ - (void) _adjustRecurrentRules [[event summary] stringByEscapingHTMLString], @"summary", [[event location] stringByEscapingHTMLString], @"location", [created_by stringByEscapingHTMLString], @"created_by", - [[event comment] stringByEscapingHTMLString], @"description", + [[[event comment] stringByEscapingHTMLString] stringByDetectingURLs], @"description", nil]; [result appendContentString: [data jsonRepresentation]]; From ea4b21e9916877aa182a5a8dfa32c519b04ae821 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 10 Feb 2014 13:49:02 -0500 Subject: [PATCH 178/214] Decode HTML entities in JSON of calendar module --- UI/WebServerResources/SchedulerUI.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index c7773c337b..35cb004c32 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -789,15 +789,14 @@ function onViewEventCallback(http) { para = $(paras[1]); if (data["calendar"].length) { - // Remove owner email from calendar's name - para.down("SPAN", 1).update(data["calendar"].escapeHTML()); + para.down("SPAN", 1).update(data["calendar"]); para.show(); } else para.hide(); para = $(paras[2]); if (data["location"].length) { - para.down("SPAN", 1).update(data["location"].escapeHTML()); + para.down("SPAN", 1).update(data["location"]); para.show(); } else para.hide(); @@ -1924,7 +1923,7 @@ function newEventDIV(eventRep, event) { textDiv.appendChild(createElement("br")); var span = createElement("span", null, "location"); var text = _("Location:") + " " + event[7]; - span.appendChild(document.createTextNode(text)); + span.update(text); textDiv.appendChild(span); } From b14e99b32a609063d484eb2472684831e4faa214 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 10 Feb 2014 20:16:43 -0500 Subject: [PATCH 179/214] New prefs for intervals, fixed missing events in meeting requests, bumped v14.1 --- ActiveSync/SOGoActiveSyncDispatcher+Sync.m | 63 ++++++++++++++------- ActiveSync/SOGoActiveSyncDispatcher.m | 64 +++++++++++++--------- SoObjects/SOGo/SOGoSystemDefaults.h | 9 +-- SoObjects/SOGo/SOGoSystemDefaults.m | 41 ++++++++++++-- 4 files changed, 124 insertions(+), 53 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m index a2f2b3a445..1fe7660886 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher+Sync.m +++ b/ActiveSync/SOGoActiveSyncDispatcher+Sync.m @@ -73,6 +73,7 @@ #import #import #import +#import #import #import @@ -155,15 +156,16 @@ - (void) processSyncAddCommand: (id ) theDocumentElement NSArray *additions; id anAddition, sogoObject, o; + BOOL is_new; int i; additions = (id)[theDocumentElement getElementsByTagName: @"Add"]; - if ([additions count]) { for (i = 0; i < [additions count]; i++) { anAddition = [additions objectAtIndex: i]; + is_new = YES; clientId = [[(id)[anAddition getElementsByTagName: @"ClientId"] lastObject] textValue]; allValues = [NSMutableDictionary dictionaryWithDictionary: [[(id)[anAddition getElementsByTagName: @"ApplicationData"] lastObject] applicationData]]; @@ -180,11 +182,33 @@ - (void) processSyncAddCommand: (id ) theDocumentElement break; case ActiveSyncEventFolder: { - serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; - sogoObject = [[SOGoAppointmentObject alloc] initWithName: serverId - inContainer: theCollection]; + // Before adding a new appointment, we check if one is already present with the same UID. If that's + // the case, let's just update it. This can happen if for example, an iOS based device receives the + // invitation email and choses "Add to calendar" BEFORE actually syncing the calendar. That would + // create a duplicate on the server. + if ([allValues objectForKey: @"UID"]) + serverId = [NSString stringWithFormat: @"%@.ics", [allValues objectForKey: @"UID"]]; + else + serverId = [NSString stringWithFormat: @"%@.ics", [theCollection globallyUniqueObjectId]]; + [allValues setObject: [[[context activeUser] userDefaults] timeZone] forKey: @"SOGoUserTimeZone"]; - o = [sogoObject component: YES secure: NO]; + + sogoObject = [theCollection lookupName: serverId + inContext: context + acquire: NO]; + + // If object isn't found, we 'create' a new one + if ([sogoObject isKindOfClass: [NSException class]]) + { + sogoObject = [[SOGoAppointmentObject alloc] initWithName: serverId + inContainer: theCollection]; + o = [sogoObject component: YES secure: NO]; + } + else + { + o = [sogoObject component: NO secure: NO]; + is_new = NO; + } } break; case ActiveSyncTaskFolder: @@ -205,7 +229,7 @@ - (void) processSyncAddCommand: (id ) theDocumentElement } [o takeActiveSyncValues: allValues]; - [sogoObject setIsNew: YES]; + [sogoObject setIsNew: is_new]; [sogoObject saveComponent: o]; // Everything is fine, lets generate our response @@ -845,12 +869,13 @@ - (void) processSyncCollection: (id ) theDocumentElement - (void) processSync: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { + SOGoSystemDefaults *defaults; id aCollection; - NSArray *allCollections; NSMutableString *output, *s; + NSArray *allCollections; NSData *d; - int i, j, heartbeatInterval; + int i, j, defaultInterval, heartbeatInterval, internalInterval; BOOL changeDetected; // We initialize our output buffer @@ -859,21 +884,21 @@ - (void) processSync: (id ) theDocumentElement [output appendString: @""]; [output appendString: @""]; [output appendString: @""]; - + + defaults = [SOGoSystemDefaults sharedSystemDefaults]; heartbeatInterval = [[[(id)[theDocumentElement getElementsByTagName: @"HeartbeatInterval"] lastObject] textValue] intValue]; + defaultInterval = [defaults maximumSyncInterval]; + internalInterval = [defaults internalSyncInterval]; // We check to see if our heartbeat interval falls into the supported ranges. - if (heartbeatInterval > 300 || heartbeatInterval < 1) + if (heartbeatInterval > defaultInterval || heartbeatInterval < 1) { // Interval is too long, inform the client. - heartbeatInterval = 300; + heartbeatInterval = defaultInterval; - //[output appendFormat: @"%d", 300]; + // Outlook doesn't like this... + //[output appendFormat: @"%d", defaultInterval]; //[output appendFormat: @"%d", 14]; - //[output appendString: @""]; - //d = [[output dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; - //[theResponse setContent: d]; - //return; } [output appendString: @""]; @@ -881,7 +906,7 @@ - (void) processSync: (id ) theDocumentElement allCollections = (id)[theDocumentElement getElementsByTagName: @"Collection"]; // We enter our loop detection change - for (i = 0; i < (heartbeatInterval/60); i++) + for (i = 0; i < (defaultInterval/internalInterval); i++) { s = [NSMutableString string]; @@ -900,8 +925,8 @@ - (void) processSync: (id ) theDocumentElement } else { - NSLog(@"Sleeping 60 seconds while detecting changes..."); - sleep(60); + NSLog(@"Sleeping %d seconds while detecting changes...", internalInterval); + sleep(internalInterval); } } diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 60082b451c..0b4e7bfa2d 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -79,6 +79,7 @@ #import #import #import +#import #import #import #import @@ -735,6 +736,7 @@ - (void) processMeetingResponse: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { NSString *realCollectionId, *requestId, *participationStatus; + SOGoMailObject *mailObject; NSMutableString *s; NSData *d; @@ -758,8 +760,6 @@ - (void) processMeetingResponse: (id ) theDocumentElement // We fetch the calendar information based on the email (requestId) in the user's INBOX (or elsewhere) // // FIXME: that won't work too well for external invitations... - SOGoMailObject *mailObject; - mailObject = [collection lookupName: requestId inContext: context acquire: 0]; @@ -785,22 +785,29 @@ - (void) processMeetingResponse: (id ) theDocumentElement else participationStatus = @"DECLINED"; - [appointmentObject changeParticipationStatus: participationStatus - withDelegate: nil]; - - [s appendString: @""]; - [s appendString: @""]; - [s appendString: @""]; - [s appendString: @""]; - [s appendFormat: @"%@", requestId]; - [s appendFormat: @"%@", [event uid]]; - [s appendFormat: @"%d", status]; - [s appendString: @""]; - [s appendString: @""]; - - d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; - - [theResponse setContent: d]; + if (![appointmentObject isKindOfClass: [NSException class]]) + { + [appointmentObject changeParticipationStatus: participationStatus + withDelegate: nil]; + + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendString: @""]; + [s appendFormat: @"%@", requestId]; + [s appendFormat: @"%@", [event uid]]; + [s appendFormat: @"%d", status]; + [s appendString: @""]; + [s appendString: @""]; + + d = [[s dataUsingEncoding: NSUTF8StringEncoding] xml2wbxml]; + + [theResponse setContent: d]; + } + else + { + [theResponse setStatus: 500]; + } } else { @@ -919,28 +926,33 @@ - (void) processMoveItems: (id ) theDocumentElement - (void) processPing: (id ) theDocumentElement inResponse: (WOResponse *) theResponse { + SOGoSystemDefaults *defaults; NSMutableString *s; NSData *d; - int heartbeatInterval, status; + int heartbeatInterval, defaultInterval, status; + + defaults = [SOGoSystemDefaults sharedSystemDefaults]; + defaultInterval = [defaults maximumPingInterval]; if (theDocumentElement) heartbeatInterval = [[[(id)[theDocumentElement getElementsByTagName: @"HeartbeatInterval"] lastObject] textValue] intValue]; else - heartbeatInterval = 60; + heartbeatInterval = defaultInterval; - if (heartbeatInterval > 60 || heartbeatInterval == 0) + if (heartbeatInterval > defaultInterval || heartbeatInterval == 0) { - heartbeatInterval = 60; + heartbeatInterval = defaultInterval; status = 5; } else { - NSLog(@"Got Ping request with valid interval - sleeping for 60 seconds."); - sleep(60); status = 1; } + NSLog(@"Got Ping request with valid interval - sleeping for %d seconds.", heartbeatInterval); + sleep(heartbeatInterval); + // We generate our response s = [NSMutableString string]; [s appendString: @""]; @@ -1513,9 +1525,9 @@ - (NSException *) dispatchRequest: (id) theRequest [self performSelector: aSelector withObject: documentElement withObject: theResponse]; [theResponse setHeader: @"application/vnd.ms-sync.wbxml" forKey: @"Content-Type"]; - [theResponse setHeader: @"14.0" forKey: @"MS-Server-ActiveSync"]; + [theResponse setHeader: @"14.1" forKey: @"MS-Server-ActiveSync"]; [theResponse setHeader: @"Sync,SendMail,SmartForward,SmartReply,GetAttachment,GetHierarchy,CreateCollection,DeleteCollection,MoveCollection,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,MeetingResponse,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients,ValidateCert" forKey: @"MS-ASProtocolCommands"]; - [theResponse setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0" forKey: @"MS-ASProtocolVersions"]; + [theResponse setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0,14.1" forKey: @"MS-ASProtocolVersions"]; RELEASE(context); diff --git a/SoObjects/SOGo/SOGoSystemDefaults.h b/SoObjects/SOGo/SOGoSystemDefaults.h index cb705f5600..3678516ff0 100644 --- a/SoObjects/SOGo/SOGoSystemDefaults.h +++ b/SoObjects/SOGo/SOGoSystemDefaults.h @@ -1,9 +1,6 @@ /* SOGoSystemDefaults.h - this file is part of SOGo * - * Copyright (C) 2009-2013 Inverse inc. - * - * Author: Wolfgang Sourdeau - * Francis Lachapelle + * Copyright (C) 2009-2014 Inverse inc. * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -95,6 +92,10 @@ - (int) maximumSubmissionInterval; - (int) messageSubmissionBlockInterval; +- (int) maximumPingInterval; +- (int) maximumSyncInterval; +- (int) internalSyncInterval; + @end #endif /* SOGOSYSTEMDEFAULTS_H */ diff --git a/SoObjects/SOGo/SOGoSystemDefaults.m b/SoObjects/SOGo/SOGoSystemDefaults.m index 0457fae4b4..52a35f8687 100644 --- a/SoObjects/SOGo/SOGoSystemDefaults.m +++ b/SoObjects/SOGo/SOGoSystemDefaults.m @@ -1,11 +1,8 @@ /* SOGoSystemDefaults.m - this file is part of SOGo * - * Copyright (C) 2009-2013 Inverse inc. + * Copyright (C) 2009-2014 Inverse inc. * Copyright (C) 2012 Jeroen Dekkers * - * Author: Wolfgang Sourdeau - * Francis Lachapelle - * * This file is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) @@ -582,4 +579,40 @@ - (int) messageSubmissionBlockInterval return v; } +- (int) maximumPingInterval +{ + int v; + + v = [self integerForKey: @"SOGoMaximumPingInterval"]; + + if (!v) + v = 5; + + return v; +} + +- (int) maximumSyncInterval +{ + int v; + + v = [self integerForKey: @"SOGoMaximumSyncInterval"]; + + if (!v) + v = 30; + + return v; +} + +- (int) internalSyncInterval +{ + int v; + + v = [self integerForKey: @"SOGoInternalSyncInterval"]; + + if (!v) + v = 10; + + return v; +} + @end From f4874600fe195e86ef3652a4c0096529f9a72e89 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Mon, 10 Feb 2014 20:17:54 -0500 Subject: [PATCH 180/214] Bumped to v14.1 --- ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m index 6e21a426dc..9e3ccfaf44 100644 --- a/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m +++ b/ActiveSync/SoObjectWebDAVDispatcher+ActiveSync.m @@ -60,8 +60,8 @@ - (id) doOPTIONS:(WOContext *)_ctx [response setHeader: @"private" forKey: @"Cache-Control"]; [response setHeader: @"OPTIONS, POST" forKey: @"Allow"]; - [response setHeader: @"14.00.0536.000" forKey: @"MS-Server-ActiveSync"]; - [response setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0" forKey: @"MS-ASProtocolVersions"]; + [response setHeader: @"14.1" forKey: @"MS-Server-ActiveSync"]; + [response setHeader: @"2.0,2.1,2.5,12.0,12.1,14.0,14.1" forKey: @"MS-ASProtocolVersions"]; [response setHeader: @"Sync,SendMail,SmartForward,SmartReply,GetAttachment,GetHierarchy,CreateCollection,DeleteCollection,MoveCollection,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,MeetingResponse,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients,ValidateCert" forKey: @"MS-ASProtocolCommands"]; [response setHeader: @"OPTIONS, POST" forKey: @"Public"]; } From b91032db8e9be48162934b586edd35c4ba55c36e Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 10 Feb 2014 16:23:16 -0500 Subject: [PATCH 181/214] Cleanup common English Localizable.strings --- UI/Common/English.lproj/Localizable.strings | 2 -- 1 file changed, 2 deletions(-) diff --git a/UI/Common/English.lproj/Localizable.strings b/UI/Common/English.lproj/Localizable.strings index 4b60dc35bc..365cc4363c 100644 --- a/UI/Common/English.lproj/Localizable.strings +++ b/UI/Common/English.lproj/Localizable.strings @@ -103,10 +103,8 @@ "Location:" = "Location:"; /* mail labels */ -/* Mail labels */ "Important" = "Important"; "Work" = "Work"; -"Work" = "Work"; "Personal" = "Personal"; "To Do" = "To Do"; "Later" = "Later"; From fcfd8be7719a1670bf2574486e057e3db8eba82d Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 10 Feb 2014 21:49:49 -0500 Subject: [PATCH 182/214] Improve URL handling in popup of events --- UI/WebServerResources/MailerUI.js | 34 +-------------------------- UI/WebServerResources/SchedulerUI.js | 1 + UI/WebServerResources/generic.js | 35 ++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+), 33 deletions(-) diff --git a/UI/WebServerResources/MailerUI.js b/UI/WebServerResources/MailerUI.js index 2ba20816f0..9b98b8d146 100644 --- a/UI/WebServerResources/MailerUI.js +++ b/UI/WebServerResources/MailerUI.js @@ -1239,7 +1239,6 @@ function loadMessage(msguid) { } } - configureLoadImagesButton(); configureSignatureFlagImage(); @@ -1330,22 +1329,7 @@ function configureLinksInMessage() { if (!$(document.body).hasClassName("popup")) mailContentDiv.observe("contextmenu", onMessageContentMenu); - var anchors = messageDiv.getElementsByTagName('a'); - for (var i = 0; i < anchors.length; i++) { - var anchor = $(anchors[i]); - if (!anchor.href && anchor.readAttribute("moz-do-not-send")) { - anchor.writeAttribute("moz-do-not-send", false); - anchor.removeClassName("moz-txt-link-abbreviated"); - anchor.href = "mailto:" + anchors[i].innerHTML; - } - if (anchor.href.substring(0,7) == "mailto:") { - anchor.observe("click", onEmailTo); - anchor.observe("contextmenu", onEmailAddressClick); - anchor.writeAttribute("moz-do-not-send", false); - } - else if (!anchor.id) - anchor.observe("click", onMessageAnchorClick); - } + configureLinks(messageDiv); var attachmentsMenu = $("attachmentsMenu"); if (attachmentsMenu) { @@ -1595,12 +1579,6 @@ function onEmailAddressClick(event) { return false; } -function onMessageAnchorClick(event) { - if (this.href) - window.open(this.href); - preventDefault(event); -} - function onImageClick(event) { popupMenu(event, 'imageMenu', this); preventDefault(event); @@ -1803,16 +1781,6 @@ function newContactFromEmail(event) { return false; /* stop following the link */ } -function onEmailTo(event) { - var s = this.innerHTML.strip(); - if (!/@/.test(s)) { - s += ' <' + this.href.substr(7) + '>'; - } - openMailTo(s); - Event.stop(event); - return false; -} - function newEmailTo(sender) { return openMailTo(document.menuTarget.innerHTML); } diff --git a/UI/WebServerResources/SchedulerUI.js b/UI/WebServerResources/SchedulerUI.js index 35cb004c32..98449b327e 100644 --- a/UI/WebServerResources/SchedulerUI.js +++ b/UI/WebServerResources/SchedulerUI.js @@ -817,6 +817,7 @@ function onViewEventCallback(http) { div.setStyle({ left: left + "px", top: top + "px" }); div.show(); + configureLinks(div); } } else { diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index e5b6693147..89149d9a0d 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -334,6 +334,16 @@ function openMailTo(senderMailTo) { return false; /* stop following the link */ } +function onEmailTo(event) { + var s = this.innerHTML.strip(); + if (!/@/.test(s)) { + s += ' <' + this.href.substr(7) + '>'; + } + openMailTo(s); + Event.stop(event); + return false; +} + function deleteDraft(url) { /* this is called by UIxMailEditor with window.opener */ new Ajax.Request(url, { @@ -1763,6 +1773,31 @@ function configureLinkBanner() { } } +function configureLinks(element) { + var onAnchorClick = function (event) { + if (this.href) + window.open(this.href); + preventDefault(event); + }; + var anchors = element.getElementsByTagName('a'); + for (var i = 0; i < anchors.length; i++) { + var anchor = $(anchors[i]); + if (!anchor.href && anchor.readAttribute("moz-do-not-send")) { + anchor.writeAttribute("moz-do-not-send", false); + anchor.removeClassName("moz-txt-link-abbreviated"); + anchor.href = "mailto:" + anchors[i].innerHTML; + } + if (anchor.href.substring(0,7) == "mailto:") { + anchor.observe("click", onEmailTo); + if (typeof onEmailAddressClick == 'function') + anchor.observe("contextmenu", onEmailAddressClick); + anchor.writeAttribute("moz-do-not-send", false); + } + else if (!anchor.id) + anchor.observe("click", onAnchorClick); + } +} + function CurrentModule() { var module = null; if (ApplicationBaseURL) { From 70266155d3a4a015462223c5fc632219a8ad1e71 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Wed, 12 Feb 2014 21:55:09 -0500 Subject: [PATCH 183/214] Fix double return --- ActiveSync/iCalToDo+ActiveSync.m | 2 -- 1 file changed, 2 deletions(-) diff --git a/ActiveSync/iCalToDo+ActiveSync.m b/ActiveSync/iCalToDo+ActiveSync.m index b4e5117469..b458d30068 100644 --- a/ActiveSync/iCalToDo+ActiveSync.m +++ b/ActiveSync/iCalToDo+ActiveSync.m @@ -111,8 +111,6 @@ - (NSString *) activeSyncRepresentation } return s; - - return s; } - (void) takeActiveSyncValues: (NSDictionary *) theValues From 35b108e645c3e3dd7ece038c04b72a2819aa4b8a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Thu, 13 Feb 2014 12:11:25 -0500 Subject: [PATCH 184/214] Contact: fix display of links --- UI/Contacts/UIxContactView.m | 71 +++++++++++++++++++++--------------- 1 file changed, 41 insertions(+), 30 deletions(-) diff --git a/UI/Contacts/UIxContactView.m b/UI/Contacts/UIxContactView.m index 486fff1075..0930912486 100644 --- a/UI/Contacts/UIxContactView.m +++ b/UI/Contacts/UIxContactView.m @@ -67,7 +67,8 @@ - (void) dealloc - (NSString *) _cardStringWithLabel: (NSString *) label value: (NSString *) value - url: (NSString *) url + asLinkScheme: (NSString *) scheme + withLinkAttributes: (NSString *) attrs { NSMutableString *cardString; @@ -75,8 +76,8 @@ - (NSString *) _cardStringWithLabel: (NSString *) label value = [[value stringByReplacingString: @"\r" withString: @""] stringByEscapingHTMLString]; if ([value length] > 0) { - if ([url length] > 0) - value = [NSString stringWithFormat: @"%@", url, value, value]; + if ([scheme length] > 0) + value = [NSString stringWithFormat: @"%@", scheme, value, attrs, value]; if (label) [cardString appendFormat: @"