Sonarr/NzbDrone.Web/Views/Update/Index.cshtml

61 lines
1.7 KiB
Plaintext
Raw Normal View History

2011-11-22 06:55:09 +00:00
@model NzbDrone.Web.Models.UpdateModel
@{ViewBag.Title = "Update";}
2011-11-22 06:55:09 +00:00
@if (Model.UpdatePackage == null)
2011-11-14 06:01:51 +00:00
{
<h2>
There are no updates available.</h2>
}
else
{
<h2>
2011-11-22 06:55:09 +00:00
Available Update: @Model.UpdatePackage.Version
@Ajax.ActionLink("Update", "StartUpdate", "Update", new AjaxOptions{ OnSuccess = "updateStarted" })
@Html.HiddenFor(m => m.UpdatePackage.Version)
2011-11-14 06:01:51 +00:00
</h2>
}
2011-11-22 06:55:09 +00:00
@if (Model.LogFiles.Count != 0)
{
<h3>
Update Logs (@Model.LogFolder)
</h3>
<br />
foreach (var log in Model.LogFiles)
{
<div>
<a href="@Url.Action("ViewLog", "Update", new { filePath = log.Value })">
@log.Key.ToString("MMM dd, hh:mm tt")</a>
</div>
}
}
@section Scripts
{
<script type="text/javascript">
function updateStarted() {
var expectedVersion = $('#UpdatePackage_Version').val();
var errors = 0;
//Pool the server every 5 seconds for a change in state
$.doTimeout('updateStarted', 5000, function () {
$.ajax({
url: '/Health/Index',
type: "GET",
error: function (jqXHR, textStatus, errorThrown) {
//Handle the first error that occured
errors++;
},
success: function (data, textStatus, jqXHR) {
if (errors > 0) {
//Kill the timer, redirect
$.doTimeout('updateStarted');
window.location = '/Update/Post?expectedVersion=' + expectedVersion;
}
}
});
return true;
});
}
</script>
}