mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-05-19 02:15:36 +00:00
(js) Respect user's settings in Calendar module
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#import <NGCards/iCalPerson.h>
|
||||
|
||||
#import <SOGo/NSArray+Utilities.h>
|
||||
#import <SOGo/NSString+Utilities.h>
|
||||
#import <SOGo/SOGoPermissions.h>
|
||||
#import <SOGo/SOGoUser.h>
|
||||
#import <SOGo/SOGoUserDefaults.h>
|
||||
@@ -261,12 +262,14 @@
|
||||
- (WOResponse *) saveSelectedListAction
|
||||
{
|
||||
WORequest *request;
|
||||
NSDictionary *params;
|
||||
NSString *selectedList;
|
||||
|
||||
[self _setupContext];
|
||||
request = [context request];
|
||||
params = [[request contentAsString] objectFromJSONString];
|
||||
|
||||
selectedList = [request formValueForKey: @"list"];
|
||||
selectedList = [params objectForKey: @"list"];
|
||||
[moduleSettings setObject: selectedList
|
||||
forKey: @"SelectedList"];
|
||||
[us synchronize];
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
if (angular.isUndefined(Component['$' + type]))
|
||||
Component.$filter(type);
|
||||
vm.componentType = type;
|
||||
Component.saveSelectedList(type);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -45,11 +45,22 @@
|
||||
// Filter paramaters specific to events
|
||||
$queryEvents: { sort: 'start', asc: 1, filterpopup: 'view_next7' },
|
||||
// Filter parameters specific to tasks
|
||||
$queryTasks: { sort: 'status', asc: 1, filterpopup: 'view_next7' } //'view_incomplete' }
|
||||
$queryTasks: { sort: 'status', asc: 1, filterpopup: 'view_incomplete' }
|
||||
});
|
||||
Preferences.ready().then(function() {
|
||||
// Initialize filter parameters from user's settings
|
||||
Component.$queryEvents.filterpopup = Preferences.settings.CalendarDefaultFilter;
|
||||
if (Preferences.settings.Calendar.EventsFilterState)
|
||||
Component.$queryEvents.filterpopup = Preferences.settings.Calendar.EventsFilterState;
|
||||
if (Preferences.settings.Calendar.TasksFilterState)
|
||||
Component.$queryTasks.filterpopup = Preferences.settings.Calendar.TasksFilterState;
|
||||
if (Preferences.settings.Calendar.EventsSortingState) {
|
||||
Component.$queryEvents.sort = Preferences.settings.Calendar.EventsSortingState[0];
|
||||
Component.$queryEvents.asc = parseInt(Preferences.settings.Calendar.EventsSortingState[1]);
|
||||
}
|
||||
if (Preferences.settings.Calendar.TasksSortingState) {
|
||||
Component.$queryTasks.sort = Preferences.settings.Calendar.TasksSortingState[0];
|
||||
Component.$queryTasks.asc = parseInt(Preferences.settings.Calendar.TasksSortingState[1]);
|
||||
}
|
||||
Component.$queryTasks.show_completed = parseInt(Preferences.settings.ShowCompletedTasks);
|
||||
// Initialize categories from user's defaults
|
||||
Component.$categories = Preferences.defaults.SOGoCalendarCategoriesColors;
|
||||
@@ -162,6 +173,16 @@
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* @function saveSelectedList
|
||||
* @desc Save to the user's settings the currently selected list.
|
||||
* @param {string} componentType - either "events" or "tasks"
|
||||
* @returns a promise of the HTTP operation
|
||||
*/
|
||||
Component.saveSelectedList = function(componentType) {
|
||||
return this.$$resource.post(null, 'saveSelectedList', { list: componentType + 'ListView' });
|
||||
};
|
||||
|
||||
/**
|
||||
* @function $eventsBlocksForView
|
||||
* @desc Events blocks for a specific week
|
||||
|
||||
Reference in New Issue
Block a user