cablegates/static/js/pandora/UI.js

32 lines
966 B
JavaScript
Raw Normal View History

2011-05-25 19:42:45 +00:00
// vim: et:ts=4:sw=4:sts=4:ft=js
pandora.UI = (function() {
return {
set: function(obj) {
if (arguments.length == 2) {
// translate (key, value) to {key: value}
var obj_ = {};
obj_[arguments[0]] = arguments[1];
obj = obj_;
}
$.each(obj, function(key, val) {
Ox.print('key', key, 'val', val);
var i = 0,
keys = key.split('|'),
2011-06-06 15:48:11 +00:00
old = pandora.user.ui;
2011-05-25 19:42:45 +00:00
while (i < keys.length - 1) {
old = old[keys[i]];
i++;
}
if (old[keys[i]] !== val) {
old[keys[i]] = val;
} else {
delete obj[key];
}
});
Ox.len(obj) && pandora.api.setUI(obj);
//alert('set ' + JSON.stringify(obj))
}
}
}());