(fix) dropped old calendar sync/tag properties
parent
b4f9b9095d
commit
406e9a3df2
|
@ -166,12 +166,6 @@ typedef enum {
|
|||
- (BOOL) showCalendarTasks;
|
||||
- (void) setShowCalendarTasks: (BOOL) new;
|
||||
|
||||
- (NSString *) syncTag;
|
||||
- (void) setSyncTag: (NSString *) newSyncTag;
|
||||
|
||||
- (BOOL) synchronizeCalendar;
|
||||
- (void) setSynchronizeCalendar: (BOOL) new;
|
||||
|
||||
- (BOOL) includeInFreeBusy;
|
||||
- (void) setIncludeInFreeBusy: (BOOL) newInclude;
|
||||
|
||||
|
|
|
@ -437,61 +437,6 @@ static Class iCalEventK = nil;
|
|||
inCategory: @"FolderShowTasks"];
|
||||
}
|
||||
|
||||
- (NSString *) syncTag
|
||||
{
|
||||
NSString *syncTag;
|
||||
|
||||
syncTag = [self folderPropertyValueInCategory: @"FolderSyncTags"];
|
||||
if (!syncTag)
|
||||
syncTag = @"";
|
||||
|
||||
return syncTag;
|
||||
}
|
||||
|
||||
- (void) setSyncTag: (NSString *) newSyncTag
|
||||
{
|
||||
// Check for duplicated tags
|
||||
SOGoUserSettings *settings;
|
||||
NSDictionary *syncTags;
|
||||
NSArray *values;
|
||||
|
||||
if ([newSyncTag length])
|
||||
{
|
||||
settings = [[context activeUser] userSettings];
|
||||
syncTags = [[settings objectForKey: @"Calendar"]
|
||||
objectForKey: @"FolderSyncTags"];
|
||||
values = [syncTags allValues];
|
||||
if (![values containsObject: newSyncTag])
|
||||
[self setFolderPropertyValue: newSyncTag
|
||||
inCategory: @"FolderSyncTags"];
|
||||
}
|
||||
else
|
||||
[self setFolderPropertyValue: nil
|
||||
inCategory: @"FolderSyncTags"];
|
||||
}
|
||||
|
||||
- (BOOL) synchronizeCalendar
|
||||
{
|
||||
NSNumber *synchronize;
|
||||
|
||||
synchronize = [self folderPropertyValueInCategory: @"FolderSynchronize"];
|
||||
|
||||
return [synchronize boolValue];
|
||||
}
|
||||
|
||||
- (void) setSynchronizeCalendar: (BOOL) new
|
||||
{
|
||||
NSNumber *synchronize;
|
||||
|
||||
if (new)
|
||||
synchronize = [NSNumber numberWithBool: YES];
|
||||
else
|
||||
synchronize = nil;
|
||||
|
||||
[self setFolderPropertyValue: synchronize
|
||||
inCategory: @"FolderSynchronize"];
|
||||
}
|
||||
|
||||
//
|
||||
// If the user is the owner of the calendar, by default we include the freebusy information.
|
||||
//
|
||||
|
@ -2983,12 +2928,6 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
|
|||
|
||||
refArray = [moduleSettings objectForKey: @"InactiveFolders"];
|
||||
[refArray removeObject: nameInContainer];
|
||||
|
||||
refDict = [moduleSettings objectForKey: @"FolderSyncTags"];
|
||||
[refDict removeObjectForKey: reference];
|
||||
|
||||
refDict = [moduleSettings objectForKey: @"FolderSynchronize"];
|
||||
[refDict removeObjectForKey: reference];
|
||||
|
||||
[super removeFolderSettings: moduleSettings
|
||||
withReference: reference];
|
||||
|
|
|
@ -29,9 +29,4 @@
|
|||
SOGoAppointmentFolder *calendar;
|
||||
}
|
||||
|
||||
- (NSString *) originalCalendarSyncTag;
|
||||
- (NSString *) allCalendarSyncTags;
|
||||
- (BOOL) mustSynchronize;
|
||||
- (void) setCalendarSyncTag: (NSString *) newTag;
|
||||
|
||||
@end
|
||||
|
|
|
@ -52,61 +52,6 @@
|
|||
[super dealloc];
|
||||
}
|
||||
|
||||
- (NSString *) originalCalendarSyncTag
|
||||
{
|
||||
return [calendar syncTag];
|
||||
}
|
||||
|
||||
- (NSString *) allCalendarSyncTags
|
||||
{
|
||||
SOGoUserSettings *settings;
|
||||
NSMutableDictionary *calendarSettings;
|
||||
NSMutableDictionary *syncTags;
|
||||
NSEnumerator *keysList;
|
||||
NSMutableArray *tags;
|
||||
NSString *key, *result;
|
||||
|
||||
settings = [[context activeUser] userSettings];
|
||||
calendarSettings = [settings objectForKey: @"Calendar"];
|
||||
tags = nil;
|
||||
|
||||
if (calendarSettings)
|
||||
{
|
||||
syncTags = [calendarSettings objectForKey: @"FolderSyncTags"];
|
||||
if (syncTags)
|
||||
{
|
||||
tags = [NSMutableArray arrayWithCapacity: [syncTags count]];
|
||||
keysList = [syncTags keyEnumerator];
|
||||
while ((key = (NSString*)[keysList nextObject])) {
|
||||
if (![key isEqualToString: [calendar folderReference]])
|
||||
[tags addObject: [syncTags objectForKey: key]];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!tags)
|
||||
result = @"";
|
||||
else
|
||||
result = [tags componentsJoinedByString: @","];
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
- (BOOL) mustSynchronize
|
||||
{
|
||||
return [[calendar nameInContainer] isEqualToString: @"personal"];
|
||||
}
|
||||
|
||||
// - (NSString *) calendarSyncTag
|
||||
// {
|
||||
// return [calendar syncTag];
|
||||
// }
|
||||
|
||||
- (void) setCalendarSyncTag: (NSString *) newTag
|
||||
{
|
||||
[calendar setSyncTag: newTag];
|
||||
}
|
||||
|
||||
/**
|
||||
* @api {post} /so/:username/Calendar/:calendarId/save Save calendar
|
||||
* @apiDescription Save a calendar's properties.
|
||||
|
@ -121,7 +66,6 @@
|
|||
* @apiParam {String} name Human readable name
|
||||
* @apiParam {String} color Calendar's hex color code
|
||||
* @apiParam {Number} includeInFreeBusy 1 if calendar must be include in freebusy
|
||||
* @apiParam {Number} synchronizeCalendar 1 if calendar must be synchronized
|
||||
* @apiParam {Number} showCalendarAlarms 1 if alarms must be enabled
|
||||
* @apiParam {Number} showCalendarTasks 1 if tasks must be enabled
|
||||
* @apiParam {Number} reloadOnLogin 1 if calendar is a Web calendar that must be reload when user logins
|
||||
|
@ -152,10 +96,6 @@
|
|||
if ([o isKindOfClass: [NSNumber class]])
|
||||
[calendar setIncludeInFreeBusy: [o boolValue]];
|
||||
|
||||
o = [params objectForKey: @"synchronizeCalendar"];
|
||||
if ([o isKindOfClass: [NSNumber class]])
|
||||
[calendar setSynchronizeCalendar: [self mustSynchronize] || [o boolValue]];
|
||||
|
||||
o = [params objectForKey: @"showCalendarAlarms"];
|
||||
if ([o isKindOfClass: [NSNumber class]])
|
||||
[calendar setShowCalendarAlarms: [o boolValue]];
|
||||
|
|
|
@ -99,7 +99,7 @@ _intValueFromHex (NSString *hexString)
|
|||
NSNumber *isActive, *fActiveTasks;
|
||||
SOGoAppointmentFolders *co;
|
||||
SOGoAppointmentFolder *folder;
|
||||
BOOL mustSynchronize, reloadOnLogin;
|
||||
BOOL reloadOnLogin;
|
||||
|
||||
if (!calendars)
|
||||
{
|
||||
|
@ -119,7 +119,6 @@ _intValueFromHex (NSString *hexString)
|
|||
if ([fDisplayName isEqualToString: [co defaultFolderName]])
|
||||
fDisplayName = [self labelForKey: fDisplayName];
|
||||
fActiveTasks = [folder activeTasks];
|
||||
mustSynchronize = [[folder nameInContainer] isEqualToString: @"personal"] || [folder synchronizeCalendar];
|
||||
|
||||
[calendar setObject: folderName forKey: @"id"];
|
||||
[calendar setObject: fDisplayName forKey: @"name"];
|
||||
|
@ -131,8 +130,6 @@ _intValueFromHex (NSString *hexString)
|
|||
if (fActiveTasks > 0)
|
||||
[calendar setObject: fActiveTasks forKey:@"activeTasks" ];
|
||||
[calendar setObject: [NSNumber numberWithBool: [folder includeInFreeBusy]] forKey: @"includeInFreeBusy"];
|
||||
[calendar setObject: [NSNumber numberWithBool: [folder synchronizeCalendar]] forKey: @"synchronizeCalendar"];
|
||||
[calendar setObject: [NSNumber numberWithBool: mustSynchronize] forKey: @"mustSynchronize"];
|
||||
[calendar setObject: [NSNumber numberWithBool: [folder showCalendarAlarms]] forKey: @"showCalendarAlarms"];
|
||||
[calendar setObject: [NSNumber numberWithBool: [folder showCalendarTasks]] forKey: @"showCalendarTasks"];
|
||||
|
||||
|
@ -238,8 +235,6 @@ _intValueFromHex (NSString *hexString)
|
|||
* @apiSuccess (Success 200) {Number} calendars.active 1 if the calendar is enabled
|
||||
* @apiSuccess (Success 200) {Number} [calendars.activeTasks] Number of incompleted tasks
|
||||
* @apiSuccess (Success 200) {Number} calendars.includeInFreeBusy 1 if calendar must be include in freebusy
|
||||
* @apiSuccess (Success 200) {Number} calendars.synchronizeCalendar 1 if calendar must be synchronized
|
||||
* @apiSuccess (Success 200) {Number} calendars.mustSynchronize 1 if calendar synchronization is mandatory
|
||||
* @apiSuccess (Success 200) {Number} calendars.showCalendarAlarms 1 if alarms must be enabled
|
||||
* @apiSuccess (Success 200) {Number} calendars.showCalendarTasks 1 if tasks must be enabled
|
||||
* @apiSuccess (Success 200) {Number} calendars.isWebCalendar 1 if calendar is a read-only external WebDAV calendar
|
||||
|
|
Loading…
Reference in New Issue