fix(calendar): Fix inaccessibility to personal calendar on Mac OS X Ventura. Fixes #5639

This commit is contained in:
smizrahi
2023-01-31 17:39:00 +01:00
parent 7e357f1bc9
commit ba0d4a51c0
5 changed files with 9 additions and 9 deletions

View File

@@ -2548,7 +2548,7 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
XMLNS_GROUPDAV, nil];
[colType addObject: gdVTodoCol];
}
if ([nameInContainer isEqualToString: @"personal"] || [nameInContainer isEqualToString: @"Personal"])
if ([[nameInContainer lowercaseString] isEqualToString: @"personal"])
[colType addObject: [NSArray arrayWithObjects: @"schedule-outbox",
XMLNS_CALDAV, nil]];
}

View File

@@ -190,7 +190,7 @@
- (NSArray *) davCalendarScheduleOutboxURL
{
return [[context request] isMacOSXVenturaCalendarApp] ? [self _davSpecialCalendarURLWithName: @"Personal"] : [self _davSpecialCalendarURLWithName: @"personal"];
return [[context request] isMacOSXVenturaCalendarApp] ? [self _davSpecialCalendarURLWithName: @"PERSONAL"] : [self _davSpecialCalendarURLWithName: @"personal"];
}
- (NSArray *) _calendarProxiedUsersWithWriteAccess: (BOOL) write

View File

@@ -200,16 +200,16 @@
selfName = [self realNameInContainer];
otherName = [otherFolder realNameInContainer];
if ([selfName isEqualToString: @"personal"] || [selfName isEqualToString: @"Personal"])
if ([[selfName lowercaseString] isEqualToString: @"personal"])
{
if ([otherName isEqualToString: @"personal"] || [otherName isEqualToString: @"Personal"])
if ([[otherName lowercaseString] isEqualToString: @"personal"])
comparison = NSOrderedSame;
else
comparison = NSOrderedAscending;
}
else
{
if ([otherName isEqualToString: @"personal"] || [otherName isEqualToString: @"Personal"])
if ([[otherName lowercaseString] isEqualToString: @"personal"])
comparison = NSOrderedDescending;
else
comparison = NSOrderedSame;

View File

@@ -144,7 +144,7 @@ static SoSecurityManager *sm = nil;
- (NSString *) defaultFolderName
{
return @"Personal";
return [[context request] isMacOSXVenturaCalendarApp] ? @"PERSONAL" : @"Personal";
}
- (NSString *) collectedFolderName
@@ -173,7 +173,7 @@ static SoSecurityManager *sm = nil;
{
if (folderType == SOGoPersonalFolder)
{
folderName = [[context request] isMacOSXVenturaCalendarApp] ? @"Personal" : @"personal";
folderName = [[context request] isMacOSXVenturaCalendarApp] ? @"PERSONAL" : @"personal";
folder = [subFolderClass objectWithName: folderName inContainer: self];
[folder setDisplayName: [self defaultFolderName]];
[folder setOCSPath: [NSString stringWithFormat: @"%@/%@", OCSPath, folderName]];
@@ -241,7 +241,7 @@ static SoSecurityManager *sm = nil;
}
if (folderType == SOGoPersonalFolder)
{
if (![subFolders objectForKey: @"personal"] || ![subFolders objectForKey: @"Personal"])
if (![subFolders objectForKey: @"personal"] || ![subFolders objectForKey: @"Personal"] || ![subFolders objectForKey: @"PERSONAL"])
[self createSpecialFolder: SOGoPersonalFolder];
}
else if (folderType == SOGoCollectedFolder)

View File

@@ -1059,7 +1059,7 @@
- (SOGoAppointmentFolder *) personalCalendarFolderInContext: (WOContext *) context
{
return [[self calendarsFolderInContext: context] lookupPersonalFolder: [[context request] isMacOSXVenturaCalendarApp] ? @"Personal" : @"personal"
return [[self calendarsFolderInContext: context] lookupPersonalFolder: [[context request] isMacOSXVenturaCalendarApp] ? @"PERSONAL" : @"personal"
ignoringRights: YES];
}