MCPcopy
hub / github.com/alseambusher/crontab-ui / editJob

Function editJob

public/js/script.js:105–146  ·  view source on GitHub ↗
(_id)

Source from the content-addressed store, hash-verified

103}
104
105function editJob(_id) {
106 var job = null;
107 crontabs.forEach(function(crontab) {
108 if (crontab._id == _id) job = crontab;
109 });
110
111 if (job) {
112 getModal('job').show();
113 $('#job-name').val(job.name);
114 $('#job-command').val(job.command);
115 if (job.schedule.indexOf('@') !== 0) {
116 var components = job.schedule.split(' ');
117 $('#job-minute').val(components[0]);
118 $('#job-hour').val(components[1]);
119 $('#job-day').val(components[2]);
120 $('#job-month').val(components[3]);
121 $('#job-week').val(components[4]);
122 }
123 if (job.mailing) {
124 $('#job-mailing').attr('data-json', JSON.stringify(job.mailing));
125 }
126 schedule = job.schedule;
127 job_command = job.command;
128 if (job.logging && job.logging != 'false')
129 $('#job-logging').prop('checked', true);
130 job_string();
131 }
132
133 var saveBtn = document.getElementById('job-save');
134 var newSaveBtn = saveBtn.cloneNode(true);
135 saveBtn.parentNode.replaceChild(newSaveBtn, saveBtn);
136 newSaveBtn.addEventListener('click', function() {
137 if (!schedule) schedule = '* * * * *';
138 var name = $('#job-name').val();
139 var mailing = JSON.parse($('#job-mailing').attr('data-json'));
140 var logging = $('#job-logging').prop('checked');
141 $.post(routes.save, {name: name, command: collapsedCommand(), schedule: schedule, _id: _id, logging: logging, mailing: mailing}, function() {
142 location.reload();
143 });
144 getModal('job').hide();
145 });
146}
147
148function newJob() {
149 schedule = '';

Callers

nothing calls this directly

Calls 6

getModalFunction · 0.85
job_stringFunction · 0.85
collapsedCommandFunction · 0.85
$Function · 0.70
showMethod · 0.45
hideMethod · 0.45

Tested by

no test coverage detected