(fix) dropped old calendar sync/tag properties
parent
b4f9b9095d
commit
406e9a3df2
|
@ -166,12 +166,6 @@ typedef enum {
|
||||||
- (BOOL) showCalendarTasks;
|
- (BOOL) showCalendarTasks;
|
||||||
- (void) setShowCalendarTasks: (BOOL) new;
|
- (void) setShowCalendarTasks: (BOOL) new;
|
||||||
|
|
||||||
- (NSString *) syncTag;
|
|
||||||
- (void) setSyncTag: (NSString *) newSyncTag;
|
|
||||||
|
|
||||||
- (BOOL) synchronizeCalendar;
|
|
||||||
- (void) setSynchronizeCalendar: (BOOL) new;
|
|
||||||
|
|
||||||
- (BOOL) includeInFreeBusy;
|
- (BOOL) includeInFreeBusy;
|
||||||
- (void) setIncludeInFreeBusy: (BOOL) newInclude;
|
- (void) setIncludeInFreeBusy: (BOOL) newInclude;
|
||||||
|
|
||||||
|
|
|
@ -437,61 +437,6 @@ static Class iCalEventK = nil;
|
||||||
inCategory: @"FolderShowTasks"];
|
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.
|
// 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 = [moduleSettings objectForKey: @"InactiveFolders"];
|
||||||
[refArray removeObject: nameInContainer];
|
[refArray removeObject: nameInContainer];
|
||||||
|
|
||||||
refDict = [moduleSettings objectForKey: @"FolderSyncTags"];
|
|
||||||
[refDict removeObjectForKey: reference];
|
|
||||||
|
|
||||||
refDict = [moduleSettings objectForKey: @"FolderSynchronize"];
|
|
||||||
[refDict removeObjectForKey: reference];
|
|
||||||
|
|
||||||
[super removeFolderSettings: moduleSettings
|
[super removeFolderSettings: moduleSettings
|
||||||
withReference: reference];
|
withReference: reference];
|
||||||
|
|
|
@ -29,9 +29,4 @@
|
||||||
SOGoAppointmentFolder *calendar;
|
SOGoAppointmentFolder *calendar;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (NSString *) originalCalendarSyncTag;
|
|
||||||
- (NSString *) allCalendarSyncTags;
|
|
||||||
- (BOOL) mustSynchronize;
|
|
||||||
- (void) setCalendarSyncTag: (NSString *) newTag;
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
|
@ -52,61 +52,6 @@
|
||||||
[super dealloc];
|
[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
|
* @api {post} /so/:username/Calendar/:calendarId/save Save calendar
|
||||||
* @apiDescription Save a calendar's properties.
|
* @apiDescription Save a calendar's properties.
|
||||||
|
@ -121,7 +66,6 @@
|
||||||
* @apiParam {String} name Human readable name
|
* @apiParam {String} name Human readable name
|
||||||
* @apiParam {String} color Calendar's hex color code
|
* @apiParam {String} color Calendar's hex color code
|
||||||
* @apiParam {Number} includeInFreeBusy 1 if calendar must be include in freebusy
|
* @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} showCalendarAlarms 1 if alarms must be enabled
|
||||||
* @apiParam {Number} showCalendarTasks 1 if tasks 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
|
* @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]])
|
if ([o isKindOfClass: [NSNumber class]])
|
||||||
[calendar setIncludeInFreeBusy: [o boolValue]];
|
[calendar setIncludeInFreeBusy: [o boolValue]];
|
||||||
|
|
||||||
o = [params objectForKey: @"synchronizeCalendar"];
|
|
||||||
if ([o isKindOfClass: [NSNumber class]])
|
|
||||||
[calendar setSynchronizeCalendar: [self mustSynchronize] || [o boolValue]];
|
|
||||||
|
|
||||||
o = [params objectForKey: @"showCalendarAlarms"];
|
o = [params objectForKey: @"showCalendarAlarms"];
|
||||||
if ([o isKindOfClass: [NSNumber class]])
|
if ([o isKindOfClass: [NSNumber class]])
|
||||||
[calendar setShowCalendarAlarms: [o boolValue]];
|
[calendar setShowCalendarAlarms: [o boolValue]];
|
||||||
|
|
|
@ -99,7 +99,7 @@ _intValueFromHex (NSString *hexString)
|
||||||
NSNumber *isActive, *fActiveTasks;
|
NSNumber *isActive, *fActiveTasks;
|
||||||
SOGoAppointmentFolders *co;
|
SOGoAppointmentFolders *co;
|
||||||
SOGoAppointmentFolder *folder;
|
SOGoAppointmentFolder *folder;
|
||||||
BOOL mustSynchronize, reloadOnLogin;
|
BOOL reloadOnLogin;
|
||||||
|
|
||||||
if (!calendars)
|
if (!calendars)
|
||||||
{
|
{
|
||||||
|
@ -119,7 +119,6 @@ _intValueFromHex (NSString *hexString)
|
||||||
if ([fDisplayName isEqualToString: [co defaultFolderName]])
|
if ([fDisplayName isEqualToString: [co defaultFolderName]])
|
||||||
fDisplayName = [self labelForKey: fDisplayName];
|
fDisplayName = [self labelForKey: fDisplayName];
|
||||||
fActiveTasks = [folder activeTasks];
|
fActiveTasks = [folder activeTasks];
|
||||||
mustSynchronize = [[folder nameInContainer] isEqualToString: @"personal"] || [folder synchronizeCalendar];
|
|
||||||
|
|
||||||
[calendar setObject: folderName forKey: @"id"];
|
[calendar setObject: folderName forKey: @"id"];
|
||||||
[calendar setObject: fDisplayName forKey: @"name"];
|
[calendar setObject: fDisplayName forKey: @"name"];
|
||||||
|
@ -131,8 +130,6 @@ _intValueFromHex (NSString *hexString)
|
||||||
if (fActiveTasks > 0)
|
if (fActiveTasks > 0)
|
||||||
[calendar setObject: fActiveTasks forKey:@"activeTasks" ];
|
[calendar setObject: fActiveTasks forKey:@"activeTasks" ];
|
||||||
[calendar setObject: [NSNumber numberWithBool: [folder includeInFreeBusy]] forKey: @"includeInFreeBusy"];
|
[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 showCalendarAlarms]] forKey: @"showCalendarAlarms"];
|
||||||
[calendar setObject: [NSNumber numberWithBool: [folder showCalendarTasks]] forKey: @"showCalendarTasks"];
|
[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.active 1 if the calendar is enabled
|
||||||
* @apiSuccess (Success 200) {Number} [calendars.activeTasks] Number of incompleted tasks
|
* @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.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.showCalendarAlarms 1 if alarms must be enabled
|
||||||
* @apiSuccess (Success 200) {Number} calendars.showCalendarTasks 1 if tasks 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
|
* @apiSuccess (Success 200) {Number} calendars.isWebCalendar 1 if calendar is a read-only external WebDAV calendar
|
||||||
|
|
Loading…
Reference in New Issue