parent
6ce64a9a27
commit
ba5bd65ea3
1
NEWS
1
NEWS
|
@ -4,6 +4,7 @@
|
|||
Bug fixes
|
||||
- [web] fixed confusion between owner and active user in ACLs management of Administration module
|
||||
- [web] fixed JavaScript exception after renaming an address book
|
||||
- [web] fixed Sieve folder encoding support (#3904)
|
||||
|
||||
3.2.4 (2016-12-01)
|
||||
------------------
|
||||
|
|
|
@ -67,6 +67,7 @@ typedef enum {
|
|||
NSString *otherUsersFolderName;
|
||||
NSString *sharedFoldersName;
|
||||
NSMutableDictionary *subscribedFolders;
|
||||
BOOL sieveFolderUTF8Encoding;
|
||||
}
|
||||
|
||||
- (SOGoIMAPAclStyle) imapAclStyle;
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#import <SOGo/NSString+Utilities.h>
|
||||
#import <SOGo/SOGoAuthenticator.h>
|
||||
#import <SOGo/SOGoDomainDefaults.h>
|
||||
#import <SOGo/SOGoSystemDefaults.h>
|
||||
#import <SOGo/SOGoUserSettings.h>
|
||||
#import <SOGo/SOGoUserManager.h>
|
||||
#import <SOGo/SOGoSieveManager.h>
|
||||
|
@ -62,6 +63,7 @@ static NSString *inboxFolderName = @"INBOX";
|
|||
{
|
||||
if ((self = [super init]))
|
||||
{
|
||||
NSString *sieveFolderEncoding = [[SOGoSystemDefaults sharedSystemDefaults] sieveFolderEncoding];
|
||||
inboxFolder = nil;
|
||||
draftsFolder = nil;
|
||||
sentFolder = nil;
|
||||
|
@ -72,6 +74,7 @@ static NSString *inboxFolderName = @"INBOX";
|
|||
otherUsersFolderName = nil;
|
||||
sharedFoldersName = nil;
|
||||
subscribedFolders = nil;
|
||||
sieveFolderUTF8Encoding = [sieveFolderEncoding isEqualToString: @"UTF-8"];
|
||||
}
|
||||
|
||||
return self;
|
||||
|
@ -461,7 +464,7 @@ static NSString *inboxFolderName = @"INBOX";
|
|||
NSArray *pathComponents;
|
||||
NSMutableArray *folders, *flags;
|
||||
NSMutableDictionary *currentFolder, *parentFolder, *folder;
|
||||
NSString *currentFolderName, *currentPath, *fullName, *folderType;
|
||||
NSString *currentFolderName, *currentPath, *sievePath, *fullName, *folderType;
|
||||
SOGoUserManager *userManager;
|
||||
|
||||
BOOL last, isOtherUsersFolder, parentIsOtherUsersFolder, isSubscribed;
|
||||
|
@ -550,6 +553,13 @@ static NSString *inboxFolderName = @"INBOX";
|
|||
flags, @"flags",
|
||||
[NSNumber numberWithBool: isSubscribed], @"subscribed",
|
||||
nil];
|
||||
|
||||
if (sieveFolderUTF8Encoding)
|
||||
sievePath = [folderPath stringByDecodingImap4FolderName];
|
||||
else
|
||||
sievePath = folderPath;
|
||||
[folder setObject: [sievePath substringFromIndex: 1] forKey: @"sievePath"];
|
||||
|
||||
// Either add this new folder to its parent or the list of root folders
|
||||
[folders addObject: folder];
|
||||
}
|
||||
|
|
|
@ -1622,14 +1622,6 @@ static NSArray *reminderValues = nil;
|
|||
userCanChangePassword];
|
||||
}
|
||||
|
||||
//
|
||||
// Used wox by template
|
||||
//
|
||||
- (NSString *) sieveFolderEncoding
|
||||
{
|
||||
return [[SOGoSystemDefaults sharedSystemDefaults] sieveFolderEncoding];
|
||||
}
|
||||
|
||||
// - (NSString *) localeCode
|
||||
// {
|
||||
// // WARNING : NSLocaleCode is not defined in <Foundation/NSUserDefaults.h>
|
||||
|
|
|
@ -146,7 +146,7 @@
|
|||
<md-input-container class="md-block" flex="50" ng-if="action.method == 'fileinto'">
|
||||
<label><var:string label:value="Mailbox"/></label>
|
||||
<md-select ng-model="action.argument" required="required">
|
||||
<md-option ng-value="item.path" ng-repeat="item in filterEditor.mailboxes">
|
||||
<md-option ng-value="item.sievePath" ng-repeat="item in filterEditor.mailboxes">
|
||||
<div ng-class="'sg-child-level-' + item.level">
|
||||
{{ item.name }}
|
||||
</div>
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
var defaultEmailAddresses = '<var:string value="defaultEmailAddresses" const:escapeHTML="NO"/>';
|
||||
var forwardConstraints = <var:string value="forwardConstraints" const:escapeHTML="NO"/>;
|
||||
var sieveCapabilities = <var:string value="sieveCapabilities" const:escapeHTML="NO"/>;
|
||||
var sieveFolderEncoding = <var:string value="sieveFolderEncoding.doubleQuotedString"/>;
|
||||
</script>
|
||||
|
||||
<script type="text/ng-template" id="preferences.html">
|
||||
|
|
|
@ -12,8 +12,7 @@
|
|||
var vm = this,
|
||||
sieveCapabilities = $window.sieveCapabilities,
|
||||
forwardEnabled = $window.forwardEnabled,
|
||||
vacationEnabled = $window.vacationEnabled,
|
||||
sieveFolderPathAttribute = ($window.sieveFolderEncoding == "UTF-8") ? "name" : "path";
|
||||
vacationEnabled = $window.vacationEnabled;
|
||||
|
||||
vm.filter = filter;
|
||||
vm.mailboxes = mailboxes;
|
||||
|
@ -51,12 +50,6 @@
|
|||
//if (vacationEnabled)
|
||||
// vm.methodLabels.vacation = l("Send a vacation message");
|
||||
|
||||
vm.mailboxes = _.map(mailboxes, function(mailbox) {
|
||||
return { level: mailbox.level,
|
||||
name: mailbox.name,
|
||||
path: mailbox[sieveFolderPathAttribute] };
|
||||
});
|
||||
|
||||
if (sieveCapabilities.indexOf("reject") > -1)
|
||||
vm.methodLabels.reject = l("Send a reject message");
|
||||
|
||||
|
|
Loading…
Reference in New Issue