mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-03-01 05:06:24 +00:00
1
NEWS
1
NEWS
@@ -8,6 +8,7 @@ Enhancements
|
||||
Bug fixes
|
||||
- [core] fixed calendar component move across collections (#4116)
|
||||
- [core] handle properly mails using windows-1255 charset (#4124)
|
||||
- [core] properly honor the "include in freebusy" setting (#3354)
|
||||
- [eas] fixed opacity in EAS freebusy (#4033)
|
||||
- [eas] set reply/forwarded flags when ReplaceMime is set (#4133)
|
||||
- [eas] remove alarms over EAS if we don't want them (#4059)
|
||||
|
||||
@@ -445,36 +445,27 @@ static Class iCalEventK = nil;
|
||||
- (BOOL) includeInFreeBusy
|
||||
{
|
||||
NSNumber *excludeFromFreeBusy;
|
||||
NSString *userLogin;
|
||||
NSString *userLogin, *ownerInContext;
|
||||
BOOL is_owner;
|
||||
|
||||
userLogin = [[context activeUser] login];
|
||||
is_owner = [userLogin isEqualToString: self->owner];
|
||||
|
||||
// Check if the owner (not the active user) has excluded the calendar from her/his free busy data.
|
||||
excludeFromFreeBusy
|
||||
= [self folderPropertyValueInCategory: @"FreeBusyExclusions"
|
||||
forUser: [context activeUser]];
|
||||
ownerInContext = [[self container] ownerInContext: context];
|
||||
is_owner = [userLogin isEqualToString: ownerInContext];
|
||||
|
||||
if ([self isSubscription])
|
||||
{
|
||||
// If the user has not yet set an include/not include fb information let's EXCLUDE it.
|
||||
if (!excludeFromFreeBusy)
|
||||
return NO;
|
||||
else
|
||||
return ![excludeFromFreeBusy boolValue];
|
||||
}
|
||||
else if (is_owner)
|
||||
{
|
||||
// We are the owner but we haven't included/excluded freebusy info, let's INCLUDE it.
|
||||
if (!excludeFromFreeBusy)
|
||||
return YES;
|
||||
else
|
||||
return ![excludeFromFreeBusy boolValue];
|
||||
}
|
||||
if (is_owner)
|
||||
excludeFromFreeBusy
|
||||
= [self folderPropertyValueInCategory: @"FreeBusyExclusions"
|
||||
forUser: [context activeUser]];
|
||||
else
|
||||
excludeFromFreeBusy
|
||||
= [self folderPropertyValueInCategory: @"FreeBusyExclusions"
|
||||
forUser: [SOGoUser userWithLogin: ownerInContext]];
|
||||
|
||||
// It's not a subscribtion and we aren't the owner. Let's INCLUDE the freebusy info.
|
||||
return YES;
|
||||
// We haven't included/excluded freebusy info, let's INCLUDE it.
|
||||
if (!excludeFromFreeBusy)
|
||||
return YES;
|
||||
|
||||
return ![excludeFromFreeBusy boolValue];
|
||||
}
|
||||
|
||||
- (void) setIncludeInFreeBusy: (BOOL) newInclude
|
||||
|
||||
@@ -317,6 +317,7 @@
|
||||
to: (NSCalendarDate *) endDate
|
||||
{
|
||||
SOGoAppointmentFolder *calFolder;
|
||||
SOGoAppointmentFolders *calFolders;
|
||||
SOGoUser *user;
|
||||
SOGoUserDefaults *ud;
|
||||
NSArray *folders;
|
||||
@@ -326,9 +327,12 @@
|
||||
|
||||
infos = [NSMutableArray array];
|
||||
|
||||
folders = [[container lookupName: @"Calendar"
|
||||
inContext: context
|
||||
acquire: NO] subFolders];
|
||||
calFolders = [container lookupName: @"Calendar"
|
||||
inContext: context
|
||||
acquire: NO];
|
||||
[calFolders appendSubscribedSources];
|
||||
folders = [calFolders subFolders];
|
||||
|
||||
max = [folders count];
|
||||
for (count = 0; count < max; count++)
|
||||
{
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/* SOGoParentFolder.m - this file is part of SOGo
|
||||
*
|
||||
* Copyright (C) 2006-2015 Inverse inc.
|
||||
* Copyright (C) 2006-2017 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
|
||||
@@ -323,6 +323,12 @@ static SoSecurityManager *sm = nil;
|
||||
int i;
|
||||
BOOL dirty;
|
||||
|
||||
if (!subscribedSubFolders)
|
||||
subscribedSubFolders = [NSMutableDictionary new];
|
||||
|
||||
if (!subFolderClass)
|
||||
subFolderClass = [[self class] subFolderClass];
|
||||
|
||||
error = nil; /* we ignore non-DB errors at this time... */
|
||||
dirty = NO;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user