|
@@ -102,6 +102,11 @@
|
|
|
}
|
|
|
function updateWebServState(){
|
|
|
$.get("/api/webserv/status", function(data){
|
|
|
+ //Clear all event listeners
|
|
|
+ $("#webserv_enableDirList").off("change");
|
|
|
+ $("#webserv_enable").off("change");
|
|
|
+ $("#webserv_listenPort").off("change");
|
|
|
+
|
|
|
setWebServerRunningState(data.Running);
|
|
|
|
|
|
if (data.EnableDirectoryListing){
|
|
@@ -160,18 +165,46 @@
|
|
|
});
|
|
|
$("#webserv_listenPort").off("change").on("change", function(){
|
|
|
let newPort = $(this).val();
|
|
|
- $.ajax({
|
|
|
- url: "/api/webserv/setPort",
|
|
|
- method: "POST",
|
|
|
- data: {"port": newPort},
|
|
|
- success: function(data){
|
|
|
- if (data.error != undefined){
|
|
|
- msgbox(data.error, false);
|
|
|
+
|
|
|
+ //Check if the new value is same as listening port
|
|
|
+ let rpListeningPort = $("#incomingPort").val();
|
|
|
+ if (rpListeningPort == newPort){
|
|
|
+ confirmBox("This setting might cause port conflict. Continue Anyway?", function(choice){
|
|
|
+ if (choice == true){
|
|
|
+ //Continue anyway
|
|
|
+ $.ajax({
|
|
|
+ url: "/api/webserv/setPort",
|
|
|
+ method: "POST",
|
|
|
+ data: {"port": newPort},
|
|
|
+ success: function(data){
|
|
|
+ if (data.error != undefined){
|
|
|
+ msgbox(data.error, false);
|
|
|
+ }else{
|
|
|
+ msgbox("Listening port updated");
|
|
|
+ }
|
|
|
+ updateWebServState();
|
|
|
+ }
|
|
|
+ });
|
|
|
}else{
|
|
|
- msgbox("Listening port updated");
|
|
|
+ //Cancel. Restore to previous value
|
|
|
+ updateWebServState();
|
|
|
+ msgbox("Setting restored");
|
|
|
}
|
|
|
- }
|
|
|
- })
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ $.ajax({
|
|
|
+ url: "/api/webserv/setPort",
|
|
|
+ method: "POST",
|
|
|
+ data: {"port": newPort},
|
|
|
+ success: function(data){
|
|
|
+ if (data.error != undefined){
|
|
|
+ msgbox(data.error, false);
|
|
|
+ }else{
|
|
|
+ msgbox("Listening port updated");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
});
|
|
|
})
|
|
|
}
|