Skip to content

Commit 6e9638e

Browse files
Create delegates_client.css
1 parent d2c282f commit 6e9638e

File tree

1 file changed

+86
-0
lines changed

1 file changed

+86
-0
lines changed
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
function($scope) {
2+
var c = this;
3+
c.form = {};
4+
c.editing = false;
5+
c.delegateField = { displayValue: '', value: '', name: 'delegate' };
6+
7+
c.$onInit = function() {
8+
c.data = c.data || {};
9+
c.form = {
10+
approvals: false,
11+
assignments: false,
12+
notifications: false,
13+
invitations: false
14+
};
15+
};
16+
17+
function pad(n){ return n<10 ? '0'+n : n; }
18+
19+
function localToGlide(local) {
20+
if (!local) return '';
21+
var d = new Date(local);
22+
return d.getFullYear() + '-' + pad(d.getMonth()+1) + '-' + pad(d.getDate())
23+
+ ' ' + pad(d.getHours()) + ':' + pad(d.getMinutes()) + ':' + pad(d.getSeconds());
24+
}
25+
26+
c.saveDelegate = function() {
27+
c.form.delegate = c.delegateField.value;
28+
c.form.starts = localToGlide(c.form.starts_local);
29+
c.form.ends = localToGlide(c.form.ends_local);
30+
31+
c.data.action = 'save_delegate';
32+
c.data.record = angular.copy(c.form);
33+
34+
c.server.update().then(function() {
35+
c.data.action = undefined;
36+
c.resetForm();
37+
c.server.get().then(function(response) {
38+
c.data = response.data;
39+
});
40+
}, function() {
41+
alert('Failed to save delegate.');
42+
});
43+
};
44+
45+
c.edit = function(sys_id) {
46+
c.server.get().then(function(response) {
47+
c.data = response.data;
48+
var rec = c.data.delegates.find(function(x){ return x.sys_id === sys_id; }) || {};
49+
c.editing = true;
50+
c.form = {
51+
sys_id: rec.sys_id,
52+
approvals: !!rec.approvals,
53+
assignments: !!rec.assignments,
54+
notifications: !!rec.notifications,
55+
invitations: !!rec.invitations,
56+
starts_local: rec.starts_value ? new Date(rec.starts_value.replace(' ', 'T')) : null,
57+
ends_local: rec.ends_value ? new Date(rec.ends_value.replace(' ', 'T')) : null
58+
};
59+
c.delegateField.value = rec.delegate_sys_id || rec.delegate;
60+
c.delegateField.displayValue = rec.delegate_display;
61+
});
62+
};
63+
64+
c.deleteDelegate = function() {
65+
if (!c.form.sys_id) return;
66+
if (!confirm('Delete delegate record?')) return;
67+
c.data.action = 'delete_delegate';
68+
c.data.sys_id = c.form.sys_id;
69+
c.server.update().then(function() {
70+
c.data.action = undefined;
71+
c.resetForm();
72+
c.server.get().then(function(response) { c.data = response.data; });
73+
});
74+
};
75+
76+
c.resetForm = function() {
77+
c.editing = false;
78+
c.form = {
79+
approvals: false,
80+
assignments: false,
81+
notifications: false,
82+
invitations: false
83+
};
84+
c.delegateField = { displayValue: '', value: '', name: 'delegate' };
85+
};
86+
}

0 commit comments

Comments
 (0)