commit 10/10/2025

User Management
This commit is contained in:
2025-10-10 10:03:14 +07:00
parent 7f647fe9c3
commit fdc7556dd7

View File

@@ -172,41 +172,20 @@ $(document).ready(function () {
let APIURL = "UserManagement/"; let APIURL = "UserManagement/";
// add / edit modal elements
let $addmodal = $('#addmodal');
let $modalindex = $('#modalindex');
let $modalusername = $('#modalusername');
let $modalpassword = $('#modalpassword');
let $modalverifypassword = $('#modalverifypassword');
let $modallocation = $('#modallocation');
let $modalairlinetags = $('#modalairlinetags');
let $modalcitytags = $('#modalcitytags');
let $modalmessagebank = $('#modalmessagebank');
let $modalbroadcastzones = $('#modalbroadcastzones');
let $btnShowSoundbankModal = $('#btnShowSoundbankModal');
let $btnShowMessagebankModal = $('#btnShowMessagebankModal');
let $btnShowBroaadcastZoneModal = $('#btnShowBroaadcastZoneModal');
function clearAddModal() { function clearAddModal() {
$modalindex.val(""); $('#modalindex').val("");
$modalusername.val(""); $('#modalusername').val("");
$modalpassword.val(""); $('#modalpassword').val("");
$modalverifypassword.val(""); $('#modalverifypassword').val("");
$modalairlinetags.val(""); $('#modalairlinetags').val("");
$modalcitytags.val(""); $('#modalcitytags').val("");
$modalmessagebank.val(""); $('#modalmessagebank').val("");
$modalbroadcastzones.val(""); $('#modalbroadcastzones').val("");
$modallocation.val(""); $('#modallocation').val("");
} }
// soundbank selection modal elements
let $soundbankmodal = $('#soundbankmodal');
let $citylist = $('#citylist');
let $airlinelist = $('#airlinelist');
function fill_citylist() { function fill_citylist() {
$citylist.empty(); $('#citylist').empty();
citytags.forEach(tag => { citytags.forEach(tag => {
let value = `${tag.value} [${tag.key}]`; let value = `${tag.value} [${tag.key}]`;
const row = `<div class="form-check"> const row = `<div class="form-check">
@@ -215,12 +194,12 @@ $(document).ready(function () {
${value} ${value}
</label> </label>
</div>`; </div>`;
$citylist.append(row); $('#citylist').append(row);
}); });
} }
function fill_airlinelist() { function fill_airlinelist() {
$airlinelist.empty(); $('#airlinelist').empty();
airlinetags.forEach(tag => { airlinetags.forEach(tag => {
let value = `${tag.value} [${tag.key}]`; let value = `${tag.value} [${tag.key}]`;
const row = `<div class="form-check"> const row = `<div class="form-check">
@@ -229,16 +208,14 @@ $(document).ready(function () {
${value} ${value}
</label> </label>
</div>`; </div>`;
$airlinelist.append(row); $('#airlinelist').append(row);
}); });
} }
// broadcast zone selection modal elements // broadcast zone selection modal elements
let $broadcastzonemodal = $('#broadcastzonemodal');
let $broadcastzonelist = $('#broadcastzonelist');
function fill_broadcastzonelist() { function fill_broadcastzonelist() {
$broadcastzonelist.empty(); $('#broadcastzonelist').empty();
broadcastzones.forEach(desc => { broadcastzones.forEach(desc => {
const row = `<div class="form-check"> const row = `<div class="form-check">
<input class="form-check-input broadcastzonecheckbox" type="checkbox" value="${desc}" id="broadcastzone_${desc}"> <input class="form-check-input broadcastzonecheckbox" type="checkbox" value="${desc}" id="broadcastzone_${desc}">
@@ -246,17 +223,15 @@ $(document).ready(function () {
${desc} ${desc}
</label> </label>
</div>`; </div>`;
$broadcastzonelist.append(row); $('#broadcastzonelist').append(row);
}); });
} }
// messagebank selection modal elements // messagebank selection modal elements
let $messagebankmodal = $('#messagebankmodal');
let $messagebanklist = $('#messagebanklist');
function fill_messagebanklist() { function fill_messagebanklist() {
$messagebanklist.empty(); $('#messagebanklist').empty();
messagebankids.forEach(id => { messagebankids.forEach(id => {
let value = `${id.value} [${id.key}]`; let value = `${id.value} [${id.key}]`;
const row = `<div class="form-check"> const row = `<div class="form-check">
@@ -265,7 +240,7 @@ $(document).ready(function () {
${value} ${value}
</label> </label>
</div>`; </div>`;
$messagebanklist.append(row); $('#messagebanklist').append(row);
}); });
} }
@@ -296,13 +271,13 @@ $(document).ready(function () {
*/ */
function modalshow(editmode = false, index=0) { function modalshow(editmode = false, index=0) {
// event on click btnShowSoundbankModal // event on click btnShowSoundbankModal
$btnShowSoundbankModal.off('click').on('click', function () { $('#btnShowSoundbankModal').off('click').on('click', function () {
$soundbankmodal.modal('show'); $('#soundbankmodal').modal('show');
fill_citylist(); fill_citylist();
fill_airlinelist(); fill_airlinelist();
let airline = $modalairlinetags.val().trim(); let airline = $('#modalairlinetags').val().trim();
let city = $modalcitytags.val().trim(); let city = $('#modalcitytags').val().trim();
if (airline.length > 0) { if (airline.length > 0) {
let airlinekeys = airline.split(";"); let airlinekeys = airline.split(";");
$('#airlinelist input[type=checkbox]').each(function () { $('#airlinelist input[type=checkbox]').each(function () {
@@ -322,7 +297,7 @@ $(document).ready(function () {
}); });
} }
$soundbankmodal.off('click.soundbankselectionsave').on('click.soundbankselectionsave', '#soundbankselectionsave', function () { $('#soundbankmodal').off('click.soundbankselectionsave').on('click.soundbankselectionsave', '#soundbankselectionsave', function () {
let selected_airlinetags = []; let selected_airlinetags = [];
$('#airlinelist input[type=checkbox]:checked').each(function () { $('#airlinelist input[type=checkbox]:checked').each(function () {
selected_airlinetags.push($(this).val()); selected_airlinetags.push($(this).val());
@@ -342,21 +317,21 @@ $(document).ready(function () {
let airlinevalue = selected_airlinetags.join(";"); let airlinevalue = selected_airlinetags.join(";");
let cityvalue = selected_citytags.join(";"); let cityvalue = selected_citytags.join(";");
$modalairlinetags.val(airlinevalue); $('#modalairlinetags').val(airlinevalue);
$modalcitytags.val(cityvalue); $('#modalcitytags').val(cityvalue);
$soundbankmodal.modal('hide'); $('#soundbankmodal').modal('hide');
}); });
$soundbankmodal.off('click.soundbankselectionclose').on('click.soundbankselectionclose', '#soundbankselectionclose', function () { $('#soundbankmodal').off('click.soundbankselectionclose').on('click.soundbankselectionclose', '#soundbankselectionclose', function () {
$soundbankmodal.modal('hide'); $('#soundbankmodal').modal('hide');
}); });
}); });
// event on click btnShowMessagebankModal // event on click btnShowMessagebankModal
$btnShowMessagebankModal.off('click').on('click', function () { $('#btnShowMessagebankModal').off('click').on('click', function () {
$messagebankmodal.modal('show'); $('#messagebankmodal').modal('show');
fill_messagebanklist(); fill_messagebanklist();
let messagebank = $modalmessagebank.val().trim(); let messagebank = $('#modalmessagebank').val().trim();
if (messagebank.length > 0) { if (messagebank.length > 0) {
let messagebankkeys = messagebank.split(";"); let messagebankkeys = messagebank.split(";");
$('#messagebanklist input[type=checkbox]').each(function () { $('#messagebanklist input[type=checkbox]').each(function () {
@@ -367,7 +342,7 @@ $(document).ready(function () {
}); });
} }
$messagebankmodal.off('click.messagebankselectionsave').on('click.messagebankselectionsave', '#messagebankselectionsave', function () { $('#messagebankmodal').off('click.messagebankselectionsave').on('click.messagebankselectionsave', '#messagebankselectionsave', function () {
let selected_messagebankids = []; let selected_messagebankids = [];
$('#messagebanklist input[type=checkbox]:checked').each(function () { $('#messagebanklist input[type=checkbox]:checked').each(function () {
selected_messagebankids.push($(this).val()); selected_messagebankids.push($(this).val());
@@ -378,19 +353,19 @@ $(document).ready(function () {
return; return;
} }
let messagebankvalue = selected_messagebankids.join(";"); let messagebankvalue = selected_messagebankids.join(";");
$modalmessagebank.val(messagebankvalue); $('#modalmessagebank').val(messagebankvalue);
$messagebankmodal.modal('hide'); $('#messagebankmodal').modal('hide');
}); });
$messagebankmodal.off('click.messagebankselectionclose').on('click.messagebankselectionclose', '#messagebankselectionclose', function () { $('#messagebankmodal').off('click.messagebankselectionclose').on('click.messagebankselectionclose', '#messagebankselectionclose', function () {
$messagebankmodal.modal('hide'); $('#messagebankmodal').modal('hide');
}); });
}); });
// event on click btnShowBroaadcastZoneModal // event on click btnShowBroaadcastZoneModal
$btnShowBroaadcastZoneModal.off('click').on('click', function () { $('#btnShowBroaadcastZoneModal').off('click').on('click', function () {
$broadcastzonemodal.modal('show'); $('#broadcastzonemodal').modal('show');
fill_broadcastzonelist(); fill_broadcastzonelist();
let broadcastzones = $modalbroadcastzones.val().trim(); let broadcastzones = $('#modalbroadcastzones').val().trim();
if (broadcastzones.length > 0) { if (broadcastzones.length > 0) {
let broadcastzonesvalues = broadcastzones.split(";"); let broadcastzonesvalues = broadcastzones.split(";");
$('#broadcastzonelist input[type=checkbox]').each(function () { $('#broadcastzonelist input[type=checkbox]').each(function () {
@@ -400,7 +375,7 @@ $(document).ready(function () {
} }
}); });
} }
$broadcastzonemodal.off('click.broadcastzoneselectionsave').on('click.broadcastzoneselectionsave', '#broadcastzoneselectionsave', function () { $('#broadcastzonemodal').off('click.broadcastzoneselectionsave').on('click.broadcastzoneselectionsave', '#broadcastzoneselectionsave', function () {
let selected_broadcastzones = []; let selected_broadcastzones = [];
$('#broadcastzonelist input[type=checkbox]:checked').each(function () { $('#broadcastzonelist input[type=checkbox]:checked').each(function () {
selected_broadcastzones.push($(this).val()); selected_broadcastzones.push($(this).val());
@@ -411,24 +386,24 @@ $(document).ready(function () {
return; return;
} }
let broadcastzonesvalue = selected_broadcastzones.join(";"); let broadcastzonesvalue = selected_broadcastzones.join(";");
$modalbroadcastzones.val(broadcastzonesvalue); $('#modalbroadcastzones').val(broadcastzonesvalue);
$broadcastzonemodal.modal('hide'); $('#broadcastzonemodal').modal('hide');
}); });
$broadcastzonemodal.off('click.broadcastzoneselectionclose').on('click.broadcastzoneselectionclose', '#broadcastzoneselectionclose', function () { $('#broadcastzonemodal').off('click.broadcastzoneselectionclose').on('click.broadcastzoneselectionclose', '#broadcastzoneselectionclose', function () {
$broadcastzonemodal.modal('hide'); $('#broadcastzonemodal').modal('hide');
}); });
}); });
// event on Click save button // event on Click save button
$addmodal.off('click.usermanagementsave').on('click.usermanagementsave', '#usermanagementsave', function () { $('#addmodal').off('click.usermanagementsave').on('click.usermanagementsave', '#usermanagementsave', function () {
let username = $modalusername.val().trim(); let username = $('#modalusername').val().trim();
let password = $modalpassword.val(); let password = $('#modalpassword').val();
let verifypassword = $modalverifypassword.val(); let verifypassword = $('#modalverifypassword').val();
let location = $modallocation.val().trim(); let location = $('#modallocation').val().trim();
let airline_tags = $modalairlinetags.val().trim(); let airline_tags = $('#modalairlinetags').val().trim();
let city_tags = $modalcitytags.val().trim(); let city_tags = $('#modalcitytags').val().trim();
let messagebank_ann_id = $modalmessagebank.val().trim(); let messagebank_ann_id = $('#modalmessagebank').val().trim();
let broadcastzones = $modalbroadcastzones.val().trim(); let broadcastzones = $('#modalbroadcastzones').val().trim();
if (username.length === 0) { if (username.length === 0) {
alert("Username cannot be empty"); alert("Username cannot be empty");
@@ -491,11 +466,11 @@ $(document).ready(function () {
} }
$addmodal.modal('hide'); $('#addmodal').modal('hide');
}); });
// event on Click close button // event on Click close button
$addmodal.off('click.usermanagementclose').on('click.usermanagementclose', '#usermanagementclose', function () { $('#addmodal').off('click.usermanagementclose').on('click.usermanagementclose', '#usermanagementclose', function () {
$addmodal.modal('hide'); $('#addmodal').modal('hide');
}); });
} }
@@ -508,7 +483,7 @@ $(document).ready(function () {
}); });
}); });
$('#btnAdd').off('click').on('click', () => { $('#btnAdd').off('click').on('click', () => {
$addmodal.modal('show'); $('#addmodal').modal('show');
clearAddModal(); clearAddModal();
modalshow(false,0); modalshow(false,0);
}); });
@@ -552,17 +527,17 @@ $(document).ready(function () {
return; return;
} }
if (confirm(`Are you sure to edit user [${user.index}] Username=${user.username} ?`)) { if (confirm(`Are you sure to edit user [${user.index}] Username=${user.username} ?`)) {
$addmodal.modal('show'); $('#addmodal').modal('show');
// fill modal with user data // fill modal with user data
$modalindex.val(user.index); $('#modalindex').val(user.index);
$modalusername.val(user.username); $('#modalusername').val(user.username);
$modalpassword.val(user.password); $('#modalpassword').val(user.password);
$modalverifypassword.val(user.password); $('#modalverifypassword').val(user.password);
$modallocation.val(user.location); $('#modallocation').val(user.location);
$modalairlinetags.val(user.airline_tags); $('#modalairlinetags').val(user.airline_tags);
$modalcitytags.val(user.city_tags); $('#modalcitytags').val(user.city_tags);
$modalmessagebank.val(user.messagebank_ann_id); $('#modalmessagebank').val(user.messagebank_ann_id);
$modalbroadcastzones.val(user.broadcastzones); $('#modalbroadcastzones').val(user.broadcastzones);
modalshow(true, user.index); modalshow(true, user.index);
} }