Sourcecode in SkinMgr/objectFunctions.js:
1: function saveSkin(param, usr) {
2: if (!param.key)
3: throw new Exception("skinUpdate");
4: var splitKey = param.key.split(".");
5: var s = this.getSkin(splitKey[0], splitKey[1]);
6: var originalSource = this.getOriginalSkinSource(splitKey[0], splitKey[1]);
7: if (s) {
8: if (param.skin == originalSource) {
9: // submitted skin equals original source
10: // so delete the skin object
11: try {
12: this.deleteSkin(s);
13: } catch (err) {
14: return new Message("update");
15: }
16: } else {
17: s.modifytime = new Date();
18: s.modifier = usr;
19: s.skin = param.skin;
20: }
21: } else {
22: if (param.skin == originalSource)
23: return new Message("update");
24: s = new Skin(this._parent, splitKey[0], splitKey[1], usr);
25: s.skin = param.skin;
26: var originalSkin = this.getOriginalSkin(splitKey[0], splitKey[1]);
27: if (originalSkin)
28: s.custom = originalSkin.custom;
29: this.add(s);
30: }
31: return new Message("update");
32: }
|