Mercurial > hg > orthanc
comparison OrthancExplorer/explorer.js @ 2583:1b6a6d80b6f2 jobs
OrthancPeerStoreJob
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 14 May 2018 20:43:16 +0200 |
parents | b3da733d984c |
children | a3fdfb6979ed |
comparison
equal
deleted
inserted
replaced
2582:b3da733d984c | 2583:1b6a6d80b6f2 |
---|---|
1149 cache: false, | 1149 cache: false, |
1150 success: function(jobs) { | 1150 success: function(jobs) { |
1151 var target = $('#all-jobs'); | 1151 var target = $('#all-jobs'); |
1152 $('li', target).remove(); | 1152 $('li', target).remove(); |
1153 | 1153 |
1154 var running = $('<li>') | |
1155 .attr('data-role', 'list-divider') | |
1156 .text('Currently running'); | |
1157 | |
1158 var pending = $('<li>') | |
1159 .attr('data-role', 'list-divider') | |
1160 .text('Pending jobs'); | |
1161 | |
1162 var inactive = $('<li>') | |
1163 .attr('data-role', 'list-divider') | |
1164 .text('Inactive jobs'); | |
1165 | |
1166 target.append(running); | |
1167 target.append(pending); | |
1168 target.append(inactive); | |
1169 | |
1154 jobs.map(function(job) { | 1170 jobs.map(function(job) { |
1155 var li = $('<li>'); | 1171 var li = $('<li>'); |
1156 var item = $('<a>'); | 1172 var item = $('<a>'); |
1157 li.append(item); | 1173 li.append(item); |
1158 item.attr('href', '#job?uuid=' + job.ID); | 1174 item.attr('href', '#job?uuid=' + job.ID); |
1162 AddJobField(item, 'Local AET: ', job.PublicContent.LocalAet); | 1178 AddJobField(item, 'Local AET: ', job.PublicContent.LocalAet); |
1163 AddJobField(item, 'Remote AET: ', job.PublicContent.RemoteAet); | 1179 AddJobField(item, 'Remote AET: ', job.PublicContent.RemoteAet); |
1164 AddJobDateField(item, 'Creation time: ', job.CreationTime); | 1180 AddJobDateField(item, 'Creation time: ', job.CreationTime); |
1165 AddJobDateField(item, 'Completion time: ', job.CompletionTime); | 1181 AddJobDateField(item, 'Completion time: ', job.CompletionTime); |
1166 AddJobDateField(item, 'ETA: ', job.EstimatedTimeOfArrival); | 1182 AddJobDateField(item, 'ETA: ', job.EstimatedTimeOfArrival); |
1167 target.append(li); | 1183 |
1184 if (job.State == 'Running') { | |
1185 AddJobField(item, 'Progress: ', job.Progress); | |
1186 li.insertAfter(running); | |
1187 } else if (job.State == 'Pending' || | |
1188 job.State == 'Paused') { | |
1189 li.insertAfter(pending); | |
1190 } else { | |
1191 li.insertAfter(inactive); | |
1192 } | |
1168 }); | 1193 }); |
1169 | 1194 |
1170 target.listview('refresh'); | 1195 target.listview('refresh'); |
1171 } | 1196 } |
1172 }); | 1197 }); |
1208 target.append($('<li>') | 1233 target.append($('<li>') |
1209 .attr('data-role', 'list-divider') | 1234 .attr('data-role', 'list-divider') |
1210 .text('Detailed information')); | 1235 .text('Detailed information')); |
1211 | 1236 |
1212 var block = $('<li>'); | 1237 var block = $('<li>'); |
1213 for (var i in job.PublicContent) { | 1238 |
1214 AddJobField(block, i + ': ', JSON.stringify(job.PublicContent[i])); | 1239 for (var item in job.PublicContent) { |
1240 var value = job.PublicContent[item]; | |
1241 if (typeof value !== 'string') { | |
1242 value = JSON.stringify(value); | |
1243 } | |
1244 | |
1245 AddJobField(block, item + ': ', value); | |
1215 } | 1246 } |
1216 | 1247 |
1217 target.append(block); | 1248 target.append(block); |
1218 | 1249 |
1219 target.listview('refresh'); | 1250 target.listview('refresh'); |
1249 { | 1280 { |
1250 $.ajax({ | 1281 $.ajax({ |
1251 url: '../jobs/' + $.mobile.pageData.uuid + '/' + action, | 1282 url: '../jobs/' + $.mobile.pageData.uuid + '/' + action, |
1252 type: 'POST', | 1283 type: 'POST', |
1253 async: false, | 1284 async: false, |
1285 cache: false, | |
1254 complete: function(s) { | 1286 complete: function(s) { |
1255 window.location.reload(); | 1287 window.location.reload(); |
1256 } | 1288 } |
1257 }); | 1289 }); |
1258 } | 1290 } |