diff --git a/DnsServerCore/www/js/apps.js b/DnsServerCore/www/js/apps.js
index deb1f284..098d09cf 100644
--- a/DnsServerCore/www/js/apps.js
+++ b/DnsServerCore/www/js/apps.js
@@ -50,6 +50,7 @@ function refreshApps() {
tableHtmlRows += "
| " + htmlEncode(name) + " | ";
tableHtmlRows += "" + detailsTable + " | ";
tableHtmlRows += "";
+ tableHtmlRows += "";
tableHtmlRows += " |
";
}
@@ -87,6 +88,15 @@ function showInstallAppModal() {
}, 1000);
}
+function showUpdateAppModal(appName) {
+ $("#divUpdateAppAlert").html("");
+ $("#txtUpdateApp").val(appName);
+ $("#fileUpdateAppZip").val("");
+ $("#btnUpdateApp").button("reset");
+
+ $("#modalUpdateApp").modal("show");
+}
+
function installApp() {
var divInstallAppAlert = $("#divInstallAppAlert");
var appName = $("#txtInstallApp").val();
@@ -131,6 +141,43 @@ function installApp() {
});
}
+function updateApp() {
+ var divUpdateAppAlert = $("#divUpdateAppAlert");
+ var appName = $("#txtUpdateApp").val();
+ var fileAppZip = $("#fileUpdateAppZip");
+
+ if (fileAppZip[0].files.length === 0) {
+ showAlert("warning", "Missing!", "Please select an application zip file to update.", divUpdateAppAlert);
+ fileAppZip.focus();
+ return false;
+ }
+
+ var formData = new FormData();
+ formData.append("fileAppZip", $("#fileUpdateAppZip")[0].files[0]);
+
+ var btn = $("#btnUpdateApp").button('loading');
+
+ HTTPRequest({
+ url: "/api/apps/update?token=" + token + "&name=" + appName,
+ data: formData,
+ dataIsFormData: true,
+ success: function (responseJSON) {
+ $("#modalUpdateApp").modal("hide");
+
+ refreshApps();
+
+ showAlert("success", "App Updated!", "DNS application was updated successfully.");
+ },
+ error: function () {
+ btn.button('reset');
+ },
+ invalidToken: function () {
+ showPageLogin();
+ },
+ objAlertPlaceholder: divUpdateAppAlert
+ });
+}
+
function uninstallApp(objBtn, appName) {
if (!confirm("Are you sure you want to uninstall the DNS application '" + appName + "'?"))
return false;