-
Notifications
You must be signed in to change notification settings - Fork 50
/
Copy pathsettings.js
54 lines (47 loc) · 1.39 KB
/
settings.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/**
* This file is a part of MyWebSQL package
*
* @file: settings.js
* @author Samnan ur Rehman
* @copyright (c) 2008-2014 Samnan ur Rehman
* @web http://mywebsql.net
* @license http://mywebsql.net/license
*/
/* works for confirmation dialogs transparently */
function optionsSave() {
for(i=0; i<arguments.length; i++) {
arg = arguments[i];
obj = document.getElementById(arg);
// ! may warn user here that some options could not be saved
if (obj) {
if (obj.type == "checkbox")
val = obj.checked ? "on" : "";
else
val = obj.value;
$.cookies.set("prf_"+arg, val, {path: EXTERNAL_PATH, hoursToLive: COOKIE_LIFETIME});
}
}
jAlert(__("New settings saved and applied."));
}
/* works for general purpose settings to be set */
function optionsSet(name, val) {
$.cookies.set(name, val, {path: EXTERNAL_PATH, hoursToLive: COOKIE_LIFETIME});
}
function optionsGet(name) {
return $.cookies.get(name);
}
function optionsConfirm(msg, id, callback) {
ask = $.cookies.get("prf_cnf_"+id);
if (ask == 'no')
return callback(true, '', false);
return jConfirm(msg, __('Confirm Action'), callback, id);
}
function optionsConfirmSave(id) {
$.cookies.set("prf_cnf_"+id, 'no', {path: EXTERNAL_PATH, hoursToLive: COOKIE_LIFETIME});
}
// resets all confirmation dialogs
function optionsReset() {
$.each($.cookies.filter("prf_.*"), function(c) {
$.cookies.set( c, false );
});
}