Skip to content

Commit 2defd93

Browse files
Create delegates_server.js
1 parent 6e9638e commit 2defd93

File tree

1 file changed

+69
-0
lines changed

1 file changed

+69
-0
lines changed
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
(function() {
2+
data.delegates = [];
3+
var currentUser = gs.getUserID();
4+
5+
if (input && input.action === 'save_delegate' && input.record) {
6+
var rec = input.record;
7+
var gr;
8+
if (rec.sys_id) {
9+
gr = new GlideRecord('sys_user_delegate');
10+
if (!gr.get(rec.sys_id)) {
11+
gr.initialize();
12+
}
13+
} else {
14+
gr = new GlideRecord('sys_user_delegate');
15+
gr.initialize();
16+
}
17+
18+
gr.setValue('user', currentUser);
19+
20+
if (rec.delegate) gr.setValue('delegate', rec.delegate);
21+
if (rec.starts) gr.setValue('starts', rec.starts);
22+
if (rec.ends) gr.setValue('ends', rec.ends);
23+
24+
gr.setValue('approvals', rec.approvals ? 'true' : 'false');
25+
gr.setValue('assignments', rec.assignments ? 'true' : 'false');
26+
gr.setValue('notifications', rec.notifications ? 'true' : 'false');
27+
gr.setValue('invitations', rec.invitations ? 'true' : 'false');
28+
29+
var id = gr.update();
30+
data.saved_sys_id = id;
31+
}
32+
33+
if (input && input.action === 'delete_delegate' && input.sys_id) {
34+
var ddel = new GlideRecord('sys_user_delegate');
35+
if (ddel.get(input.sys_id)) {
36+
ddel.deleteRecord();
37+
data.deleted = true;
38+
} else {
39+
data.deleted = false;
40+
}
41+
}
42+
43+
44+
var grList = new GlideRecord('sys_user_delegate');
45+
grList.addQuery('user', currentUser);
46+
grList.orderByDesc('starts');
47+
grList.query();
48+
while (grList.next()) {
49+
var obj = {};
50+
obj.sys_id = grList.getUniqueValue();
51+
obj.user = grList.getValue('user');
52+
obj.delegate = grList.getValue('delegate');
53+
obj.user_display = grList.getDisplayValue('user');
54+
obj.delegate_display = grList.getDisplayValue('delegate');
55+
obj.starts_display = grList.getDisplayValue('starts');
56+
obj.ends_display = grList.getDisplayValue('ends');
57+
obj.starts_value = grList.getValue('starts');
58+
obj.ends_value = grList.getValue('ends');
59+
obj.approvals = grList.getValue('approvals') === 'true' || grList.getValue('approvals') === '1';
60+
obj.assignments = grList.getValue('assignments') === 'true' || grList.getValue('assignments') === '1';
61+
obj.notifications = grList.getValue('notifications') === 'true' || grList.getValue('notifications') === '1';
62+
obj.invitations = grList.getValue('invitations') === 'true' || grList.getValue('invitations') === '1';
63+
64+
obj.user_sys_id = obj.user;
65+
obj.delegate_sys_id = obj.delegate;
66+
67+
data.delegates.push(obj);
68+
}
69+
})();

0 commit comments

Comments
 (0)