|
|
|
@using NzbDrone.Web.Models
|
|
|
|
@using NzbDrone.Web.Helpers
|
|
|
|
@model string
|
|
|
|
@{ViewBag.Title = "Jobs";}
|
|
|
|
|
|
|
|
@section HeaderContent
|
|
|
|
{
|
|
|
|
@Html.IncludeCss("Grid.css")
|
|
|
|
}
|
|
|
|
|
|
|
|
<div class="grid-container">
|
|
|
|
<table id="jobGrid" class="dataTablesGrid hidden-grid no-details">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th>ID</th>
|
|
|
|
<th>Enable</th>
|
|
|
|
<th>Type Name</th>
|
|
|
|
<th>Name</th>
|
|
|
|
<th>Interval</th>
|
|
|
|
<th>Last Execution</th>
|
|
|
|
<th>Success</th>
|
|
|
|
|
|
|
|
@*Commands Column*@
|
|
|
|
<th>Actions</th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h1>Items currently in queue</h1>
|
|
|
|
|
|
|
|
<div class="grid-container">
|
|
|
|
<table id="queueGrid" class="dataTablesGrid hidden-grid no-details">
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th>Type</th>
|
|
|
|
<th>Target</th>
|
|
|
|
<th>Secondary</th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
@section Scripts{
|
|
|
|
<script type="text/javascript">
|
|
|
|
$(document).ready(function() {
|
|
|
|
$('#jobGrid').removeClass('hidden-grid');
|
|
|
|
|
|
|
|
oTable = $('#jobGrid').dataTable({
|
|
|
|
"bShowAll": false,
|
|
|
|
"aaData": @Html.Raw(Model),
|
|
|
|
"bPaginate": false,
|
|
|
|
"bLengthChange": false,
|
|
|
|
"bFilter": false,
|
|
|
|
"bSort": false,
|
|
|
|
"bInfo": false,
|
|
|
|
"bAutoWidth": false,
|
|
|
|
"iDisplayLength": 20,
|
|
|
|
"sPaginationType": "four_button",
|
|
|
|
"aoColumns": [
|
|
|
|
{ sWidth: '30px', "mDataProp": "Id"}, //Id
|
|
|
|
{ sWidth: '70px', "mDataProp": "Enable" }, //Enable
|
|
|
|
{ sWidth: '80px', "mDataProp": "TypeName" }, //TypeName
|
|
|
|
{ sWidth: 'auto', "mDataProp": "Name" }, //Name
|
|
|
|
{ sWidth: '70px', "mDataProp": "Interval" }, //Interval
|
|
|
|
{ sWidth: '150px', "mDataProp": "LastExecution" }, //LastExecution
|
|
|
|
{ sWidth: '80px', "mDataProp": "Success" }, //Success
|
|
|
|
{ sWidth: '40px', "mDataProp": "Actions", "bSortable": false, "fnRender": function (row) {
|
|
|
|
if (!row.aData["Enable"])
|
|
|
|
return "";
|
|
|
|
|
|
|
|
return createImageAjaxLink('/System/RunJob?typeName=' + row.aData["TypeName"], '../../Content/Images/Gear.png', 'Run', 'Run Job', 'searchImage');
|
|
|
|
//return createImageAjaxLink('/History/Delete?historyId=' + row.aData["HistoryId"], '../../Content/Images/X.png', 'Delete', 'Delete from History', 'searchImage');
|
|
|
|
}
|
|
|
|
} //Actions
|
|
|
|
],
|
|
|
|
"aaSorting": [[4, 'asc']]
|
|
|
|
});
|
|
|
|
|
|
|
|
$('#queueGrid').removeClass('hidden-grid');
|
|
|
|
|
|
|
|
oTable = $('#queueGrid').dataTable({
|
|
|
|
"bShowAll": false,
|
|
|
|
"aaData": @ViewData["Queue"],
|
|
|
|
"bPaginate": false,
|
|
|
|
"bLengthChange": false,
|
|
|
|
"bFilter": false,
|
|
|
|
"bSort": false,
|
|
|
|
"bInfo": false,
|
|
|
|
"bAutoWidth": false,
|
|
|
|
"iDisplayLength": 20,
|
|
|
|
"sPaginationType": "four_button",
|
|
|
|
"aoColumns": [
|
|
|
|
{ sWidth: 'auto', "mDataProp": "Type"}, //Type
|
|
|
|
{ sWidth: '100px', "mDataProp": "Target" }, //Target
|
|
|
|
{ sWidth: '100px', "mDataProp": "SecondaryTarget" }, //SecondaryTarget
|
|
|
|
]
|
|
|
|
});
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@*@{Html.Telerik().Grid(Model).Name("Grid")
|
|
|
|
.Columns(c => c.Bound(g => g.Id))
|
|
|
|
.Columns(c => c.Bound(g => g.Enable))
|
|
|
|
.Columns(c => c.Bound(g => g.TypeName))
|
|
|
|
.Columns(c => c.Bound(g => g.Name))
|
|
|
|
.Columns(c => c.Bound(g => g.Interval))
|
|
|
|
.Columns(c => c.Bound(g => g.LastExecution))
|
|
|
|
.Columns(c => c.Bound(g => g.Success))
|
|
|
|
.Columns(c => c.Bound(g => g.Id)
|
|
|
|
.Title("Command")
|
|
|
|
.Template(@<text> @{ if(item.Enable)
|
|
|
|
{
|
|
|
|
@Ajax.ImageActionLink("../../Content/Images/Gear.png", new { Alt = "Run", Width = 18, Height = 18, Title = "Run Job" }, "RunJob", new { TypeName = item.TypeName }, null, null)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
</text>))
|
|
|
|
.Sortable(c=>c.OrderBy(col=>col.Add(g=>g.Interval)))
|
|
|
|
.Render();}
|
|
|
|
|
|
|
|
<h1>Items currently in queue</h1>
|
|
|
|
|
|
|
|
@{Html.Telerik().Grid((IEnumerable<JobQueueItemModel>)ViewData["Queue"]).Name("QueueGrid")
|
|
|
|
.Columns(c => c.Bound(g => g.Name).Title("Type").Width(100))
|
|
|
|
.Columns(c => c.Bound(g => g.TargetId).Title("Target"))
|
|
|
|
.Columns(c => c.Bound(g => g.SecondaryTargetId).Title("Secondary Target"))
|
|
|
|
.Render();}*@
|