Uses angular-locker to store settings in localStorage
- settings.js now has its own module : 'jamstash.settings.controller'. This makes it easier to test it and identify what dependencies it has. - Renames 'jamstash.settings' module into 'jamstash.settings.service' - Adds an angular constant to hold the current Jamstash version in app.js. - Adds a way to upgrade incrementally what was in localStorage : in 4.4.5, DefaultSearchType will no longer be an object but an int, so we must init it with an int value, otherwise a blank option will be displayed. We detect what version we are using and what version was stored using persistence-service.js and run the upgrade accordingly. - Refactors almost completely persistence-service_test.js - Unit-tests some of settings.js's methods.
This commit is contained in:
parent
f98740d613
commit
a97e5159bc
17 changed files with 383 additions and 150 deletions
|
@ -32,19 +32,12 @@ angular.module('JamStash')
|
|||
$scope.loadSettings = function () {
|
||||
// Temporary Code to Convert Cookies added 2/2/2014
|
||||
if ($cookieStore.get('Settings')) {
|
||||
utils.setValue('Settings', $cookieStore.get('Settings'), false);
|
||||
persistence.saveSettings($cookieStore.get('Settings'));
|
||||
$cookieStore.remove('Settings');
|
||||
}
|
||||
if (utils.getValue('Settings')) {
|
||||
$.each(utils.getValue('Settings'), function (k, v) {
|
||||
if (v == 'false') { v = false; }
|
||||
if (v == 'true') { v = true; }
|
||||
var exclude = ['Url'];
|
||||
var idx = exclude.indexOf(k);
|
||||
if (idx === -1) {
|
||||
globals.settings[k] = v;
|
||||
}
|
||||
});
|
||||
var settings = persistence.getSettings();
|
||||
if (settings !== undefined) {
|
||||
globals.settings = _(settings).omit('Url');
|
||||
}
|
||||
if (utils.getValue("SavedCollections")) { globals.SavedCollections = utils.getValue("SavedCollections").split(","); }
|
||||
if (utils.getValue("DefaultCollection")) { globals.DefaultCollection = utils.getValue("DefaultCollection"); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue