@commonLocalizer["Cancel"]
@@ -586,6 +599,15 @@
minimumResultsForSearch: 0,
width: '100%'
});
+
+ $('#scheduleDispatchDate').datetimepicker({
+ format: 'm/d/Y H:i',
+ formatTime: 'H:i',
+ formatDate: 'm/d/Y',
+ step: 15,
+ minDate: 0,
+ defaultSelect: false
+ });
});
}
diff --git a/Web/Resgrid.Web/wwwroot/js/app/internal/dispatch/resgrid.dispatch.scheduledcalls.js b/Web/Resgrid.Web/wwwroot/js/app/internal/dispatch/resgrid.dispatch.scheduledcalls.js
new file mode 100644
index 00000000..79168cad
--- /dev/null
+++ b/Web/Resgrid.Web/wwwroot/js/app/internal/dispatch/resgrid.dispatch.scheduledcalls.js
@@ -0,0 +1,70 @@
+var resgrid;
+(function (resgrid) {
+ var dispatch;
+ (function (dispatch) {
+ var scheduledcalls;
+ (function (scheduledcalls) {
+ var scheduledCallsTable;
+ function getText(key, fallback) {
+ return (resgrid.dispatch && typeof resgrid.dispatch.getText === 'function')
+ ? resgrid.dispatch.getText(key, fallback)
+ : fallback;
+ }
+ $(document).ready(function () {
+ resgrid.common.analytics.track('Dispatch Scheduled Calls');
+
+ scheduledCallsTable = $("#scheduledCallsList").DataTable({
+ ajax: {
+ url: resgrid.absoluteBaseUrl + '/User/Dispatch/GetScheduledCallsList',
+ dataSrc: ''
+ },
+ pageLength: 50,
+ order: [[3, 'asc']],
+ columns: [
+ { data: 'Number', title: getText('number', 'Number') },
+ { data: 'Name', title: getText('name', 'Name') },
+ { data: 'Timestamp', title: getText('timestamp', 'Timestamp') },
+ {
+ data: 'DispatchOn', title: getText('scheduledDispatch', 'Scheduled Dispatch'),
+ render: function (data, type, row) {
+ if (data) {
+ var d = new Date(data * 1000);
+ return d.toLocaleString();
+ }
+ return '';
+ }
+ },
+ {
+ data: 'Priority', title: getText('priority', 'Priority'),
+ render: function (data, type, row) {
+ return '
' + row.Priority + '';
+ }
+ },
+ {
+ data: null, title: getText('state', 'State'), orderable: false,
+ render: function (data, type, row) {
+ return '
' + row.State + '';
+ }
+ },
+ {
+ data: 'CallId', title: getText('actions', 'Actions'), orderable: false,
+ render: function (data, type, row) {
+ var html = '
' + getText('view', 'View') + ' ';
+ if (row.CanUpdateCall) {
+ html += '
' + getText('update', 'Update') + ' ';
+ }
+ if (row.CanCloseCall) {
+ html += '
' + getText('close', 'Close') + ' ';
+ }
+ if (row.CanDeleteCall) {
+ html += '
' + getText('delete', 'Delete') + '';
+ }
+ return html;
+ }
+ }
+ ]
+ });
+ });
+ })(scheduledcalls = dispatch.scheduledcalls || (dispatch.scheduledcalls = {}));
+ })(dispatch = resgrid.dispatch || (resgrid.dispatch = {}));
+})(resgrid || (resgrid = {}));