var default_preferences = {"pbkdf2_level": 1000,
			   "account_url": "https://gpass-demo.soutade.fr/demo",
                           "always_disabled":false
			  };

function save() {
    var account_url = document.getElementById('account_url').value;
    var pbkdf2_level = document.getElementById('pbkdf2_level').value;
    var always_disabled = document.getElementById('always_disabled').checked;

    browser.storage.local.set({
	"account_url":account_url,
	"pbkdf2_level":pbkdf2_level,
	"always_disabled": always_disabled,
    })
	.then(function ok() { alert("Saved"); },
	      function err() { alert("Cannot save your preferences");}
	     );
}

function restoreOption(preferences, pref)
{
    var res;
    
    if (!preferences.hasOwnProperty(pref))
	res = default_preferences[pref];
    else
	res = preferences[pref];

    var element = document.getElementById(pref);
    if (element.type == 'checkbox')
        element.checked = res;
    else
        element.value = res;
}

function restoreOptions()
{
    browser.storage.local.get().then(
	function(prefs)
	{
            restoreOption(prefs, 'account_url');
            restoreOption(prefs, 'pbkdf2_level');
            restoreOption(prefs, 'always_disabled');
	}
    );
}

document.getElementById('save').addEventListener("click", save);
document.addEventListener("DOMContentLoaded", restoreOptions);