parent
663a0b60dd
commit
ef5728dcaf
1
NEWS
1
NEWS
|
@ -20,6 +20,7 @@ Bug fixes
|
|||
- [core] handle properly mails using windows-1255 charset (#4124)
|
||||
- [core] fixed email reminders sent multiple times (#4100)
|
||||
- [core] fixed LDIF to vCard conversion for non-handled multi-value attributes (#4086)
|
||||
- [core] properly honor the "include in freebusy" setting (#3354)
|
||||
- [eas] set reply/forwarded flags when ReplaceMime is set (#4133)
|
||||
- [eas] remove alarms over EAS if we don't want them (#4059)
|
||||
- [eas] correctly set RSVP on event invitations
|
||||
|
|
|
@ -431,36 +431,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
|
||||
|
|
|
@ -309,6 +309,7 @@
|
|||
to: (NSCalendarDate *) endDate
|
||||
{
|
||||
SOGoAppointmentFolder *calFolder;
|
||||
SOGoAppointmentFolders *calFolders;
|
||||
SOGoUser *user;
|
||||
SOGoUserDefaults *ud;
|
||||
NSArray *folders;
|
||||
|
@ -318,9 +319,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
|
||||
|
@ -317,6 +317,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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue