dynamicweb/hosting/static/hosting/js/virtual_machine_detail.js

82 lines
2.6 KiB
JavaScript
Raw Normal View History

2017-09-15 16:46:56 +05:30
function VMTerminateStatus($container, url) {
$.ajax({
url: url,
dataType: 'json',
success: function(data) {
VMTerminateSuccess($container, data);
},
error: function() {
2017-09-15 16:46:56 +05:30
setTimeout(function(){
VMTerminateStatus($container, url);
2017-09-15 16:57:17 +05:30
}, 4000);
}
});
2017-09-15 16:46:56 +05:30
}
function VMTerminateActive($container, altText) {
$container.find('.alert-danger').addClass('hide');
$container.addClass('processing')
.find('.vm-item-lg').attr('class', '')
.addClass('vm-item-lg vm-color-failed')
.text(altText);
$container.find('.btn').prop('disabled', true);
$('#confirm-cancel').modal('hide');
}
function VMTerminateSuccess($container, data) {
$container.addClass('terminate-success')
.find('.vm-item-lg').text(data.text);
$container.find('.btn').remove();
window.location = data.redirect;
2017-09-15 16:46:56 +05:30
}
function VMTerminateFail($container, data, text) {
$container.addClass('terminate-fail')
.find('.vm-item-lg').text(text);
$container.find('.btn').prop('disabled', false);
$container.find('.alert-danger').text(data.text).removeClass('hide');
$container.removeClass('processing');
}
2017-09-15 00:57:59 +05:30
$(document).ready(function() {
2017-09-15 00:57:59 +05:30
$('#confirm-cancel').on('click', '.btn-ok', function(e) {
var url = $('#virtual_machine_cancel_form').attr('action');
var $container = $('#terminate-VM');
var text = $container.find('.vm-item-lg').text();
var altText = $container.attr('data-alt');
2017-09-15 16:46:56 +05:30
VMTerminateActive($container, altText);
2017-09-15 00:57:59 +05:30
$.post(url)
.done(function(data) {
if (data.status == true) {
2017-09-15 16:46:56 +05:30
VMTerminateSuccess($container, data);
2017-09-15 00:57:59 +05:30
} else {
2017-09-15 16:46:56 +05:30
if ('text' in data) {
VMTerminateFail($container, data, text);
} else {
VMTerminateStatus($container, url);
}
2017-09-15 00:57:59 +05:30
}
})
.fail(function(data) {
2017-09-15 16:46:56 +05:30
if (data.status==504) {
VMTerminateStatus($container, url);
} else {
VMTerminateFail($container, data, text);
}
2017-09-15 00:57:59 +05:30
})
});
2017-09-15 00:57:59 +05:30
var hash = window.location.hash;
hash && $('ul.nav a[href="' + hash + '"]').tab('show');
2017-09-15 00:57:59 +05:30
$('.nav-tabs a').click(function(e) {
$(this).tab('show');
var scrollmem = $('body').scrollTop() || $('html').scrollTop();
window.location.hash = this.hash;
$('html,body').scrollTop(scrollmem);
});
});