223 lines
7.1 KiB
JavaScript
223 lines
7.1 KiB
JavaScript
// SETTINGS
|
|
var lieuxConf = {
|
|
type : "lieu",
|
|
baseURL : "lieux.php",
|
|
// LIST
|
|
list_selector : "#lieuxList",
|
|
// SEARCH
|
|
search_selector : "#lieuxSearch .searchGrp",
|
|
// VIEW
|
|
view_modalSelector : "#modalViewLieu",
|
|
view_btnSelector : ".btnViewLieu",
|
|
// ADD
|
|
add_modalSelector : "#modalAddLieu",
|
|
add_btnSelector : "#btnAddLieu",
|
|
// EDIT
|
|
edit_modalSelector : "#modalEditLieu",
|
|
edit_btnSelector : ".btnEditLieu",
|
|
// DELETE
|
|
delete_modalSelector : "#modalDeleteLieu",
|
|
delete_btnSelector : ".btnDeleteLieu",
|
|
}
|
|
|
|
// MODALS
|
|
var modalViewLieu = false;
|
|
var modalAddLieu = false;
|
|
var modalEditLieu = false;
|
|
var modalDeleteLieu = false;
|
|
|
|
$(document).ready( function() {
|
|
// LIST LOADER
|
|
initListProgressLoad($(lieuxConf.list_selector), lieuxConf.baseURL, lieuxConf.type+" list");
|
|
|
|
// SEARCH
|
|
$(lieuxConf.search_selector).initSearchGroup();
|
|
|
|
// VIEW
|
|
modalViewLieu = $(lieuxConf.view_modalSelector);
|
|
if(modalViewLieu.length>0) {
|
|
initViewLieu();
|
|
// VIEW REQUEST
|
|
var id = getUrlParameter("ref");
|
|
if(id!==false && parseInt(id)>0 && current_page == "lieux") {
|
|
modalViewLieu_clear(modalViewLieu);
|
|
modalViewLieu_loadDatas(modalViewLieu, id);
|
|
}
|
|
}
|
|
|
|
// ADD
|
|
modalAddLieu = $(lieuxConf.add_modalSelector);
|
|
if(modalAddLieu.length>0) initAddLieu();
|
|
|
|
// EDIT
|
|
modalEditLieu = $(lieuxConf.edit_modalSelector);
|
|
if(modalEditLieu.length>0) initEditLieu();
|
|
|
|
// DELETE
|
|
modalDeleteLieu = $(lieuxConf.delete_modalSelector);
|
|
if(modalDeleteLieu.length>0) initDeleteLieu();
|
|
});
|
|
|
|
/***** MODAL VIEW *****/
|
|
function initViewLieu() {
|
|
// INIT VIEW BTNs
|
|
var initBtnFct = function() { modalForm_initBtnView(
|
|
$(lieuxConf.view_btnSelector), // BTNs
|
|
modalViewLieu, // MODAL
|
|
modalViewLieu_clear, // CLEAR FUNCTION
|
|
modalViewLieu_loadDatas // LOAD DATAS FUNCTION
|
|
)};
|
|
registerListProgressLoadCbkFct( $("tbody.progressLoadList"), initBtnFct );
|
|
initBtnFct();
|
|
|
|
// CANCEL
|
|
modalViewLieu.on('hidden.bs.modal', function() { modalViewLieu_clear(modalViewLieu); });
|
|
}
|
|
|
|
function modalViewLieu_loadDatas(modal, id) {
|
|
$.post(lieuxConf.baseURL, { 'ref' : id, 'action' : 'getDatas' }, function(jsonTxt) {
|
|
var datas = JSON.parse(jsonTxt);
|
|
|
|
modal.find("small.db_ref > span").html(datas.ref);
|
|
|
|
modal.find("td.nom").html(datas.nom);
|
|
|
|
modal.modal('show');
|
|
}).fail(function() { alert("("+lieuxConf.type+" - load modal view)"); });
|
|
}
|
|
|
|
function modalViewLieu_clear(modal) {
|
|
modal.removeAttr("view_id");
|
|
|
|
modal.find("small.db_ref > span").html("");
|
|
|
|
modal.find("td.nom").html("");
|
|
}
|
|
|
|
/***** MODAL FORM ADD/EDIT *****/
|
|
function modalFormLieu_init(modal) {
|
|
modal.find("form").preventFormValidation();
|
|
}
|
|
|
|
function modalFormLieu_loadDatas(modal,id) {
|
|
$.post(lieuxConf.baseURL, { 'ref' : id, 'action' : 'getDatas' }, function(jsonTxt) {
|
|
var datas = JSON.parse(jsonTxt);
|
|
|
|
modal.find("input[name=nom]").val(datas.nom);
|
|
|
|
if(modal) modal.modal('show');
|
|
}).fail(function() { alert("("+lieuxConf.type+" - load datas in modal form)"); });
|
|
}
|
|
|
|
function modalFormLieu_clear(modal) {
|
|
modal.removeAttr("edit_id");
|
|
modal.find("div.modaLoader").removeClass("show");
|
|
|
|
modal.find("input[name=nom]").val("");
|
|
}
|
|
|
|
function modalFormLieu_getDatas(modal) {
|
|
var datas = {
|
|
'nom' : modal.find("input[name=nom]").val()
|
|
};
|
|
return datas;
|
|
}
|
|
|
|
function modalFormLieu_checkDatas(datas) {
|
|
if(datas.nom=="") {
|
|
alert("ERREUR : merci de donner un nom à ce lieu !");
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
/***** ADD *****/
|
|
function initAddLieu() {
|
|
// INIT FORM
|
|
modalFormLieu_init(modalAddLieu);
|
|
|
|
// INIT ADD BTN
|
|
modalForm_initBtnAdd(
|
|
$(lieuxConf.add_btnSelector), // BTN ADD
|
|
modalAddLieu, // MODAL
|
|
modalFormLieu_clear // CLEAR FORM FUNCTION
|
|
);
|
|
|
|
// INIT SAVE BTN
|
|
modalForm_initBtnSaveAdd(
|
|
modalAddLieu.find(".btnSave"), // BTN SAVE
|
|
lieuxConf.type, // ADD TYPE
|
|
modalAddLieu, // MODAL
|
|
modalFormLieu_getDatas, // GET FORM DATAS FUNCTION
|
|
modalFormLieu_checkDatas, // CHECK FORM DATAS FUNCTION
|
|
lieuxConf.baseURL // SAVE URL
|
|
);
|
|
|
|
// CANCEL
|
|
modalAddLieu.on('hidden.bs.modal', function (e) { modalFormLieu_clear(modalAddLieu); });
|
|
}
|
|
|
|
/***** EDIT *****/
|
|
function initEditLieu() {
|
|
// INIT FORM
|
|
modalFormLieu_init(modalEditLieu);
|
|
|
|
// INIT EDIT BTNs
|
|
var initBtnFct = function() { modalForm_initBtnEdit(
|
|
$(lieuxConf.edit_btnSelector), // BTNs
|
|
modalEditLieu, // MODAL
|
|
modalFormLieu_clear, // CLEAR FUNCTION
|
|
modalFormLieu_loadDatas // LOAD DATAS FUNCTION
|
|
)};
|
|
registerListProgressLoadCbkFct( $("tbody.progressLoadList"), initBtnFct );
|
|
initBtnFct();
|
|
|
|
// INIT SAVE EDIT BTN
|
|
modalForm_initBtnSaveEdit(
|
|
modalEditLieu.find(".btnSave"), // BTN SAVE
|
|
lieuxConf.type, // EDIT TYPE
|
|
modalEditLieu, // MODAL
|
|
modalFormLieu_getDatas, // GET FORM DATAS FUNCTION
|
|
modalFormLieu_checkDatas, // CHECK FORM DATAS FUNCTION
|
|
lieuxConf.baseURL // SAVE URL
|
|
);
|
|
|
|
// CANCEL
|
|
modalEditLieu.on('hidden.bs.modal', function (e) { modalFormLieu_clear(modalEditLieu); });
|
|
}
|
|
|
|
/***** DELETE *****/
|
|
function initDeleteLieu() {
|
|
// INIT DELETE BTNs
|
|
var initBtnFct = function() { modalForm_initBtnDelete(
|
|
$(lieuxConf.delete_btnSelector), // BTNs
|
|
modalDeleteLieu, // MODAL
|
|
modalDeleteLieu_clear, // CLEAR MODAL FUNCTION
|
|
modalDeleteLieu_loadDatas // LOAD DATAS FUNCTION
|
|
)};
|
|
registerListProgressLoadCbkFct( $("tbody.progressLoadList"), initBtnFct );
|
|
initBtnFct();
|
|
|
|
// INIT SAVE DELETE BTN
|
|
modalForm_initBtnSaveDelete(
|
|
modalDeleteLieu.find(".btnSave"), // BTN SAVE
|
|
lieuxConf.type, // DELETE TYPE
|
|
modalDeleteLieu, // MODAL
|
|
false, // GET FORM DATAS FUNCTION
|
|
false, // CHECK FORM DATAS FUNCTION
|
|
lieuxConf.baseURL // SAVE URL
|
|
);
|
|
|
|
// CANCEL
|
|
modalDeleteLieu.on('hidden.bs.modal', function (e) { modalDeleteLieu_clear(); });
|
|
}
|
|
|
|
function modalDeleteLieu_loadDatas(btn, id) {
|
|
modalDeleteLieu.find('b.name').html( btn.attr('nom') );
|
|
modalDeleteLieu.modal('show');
|
|
}
|
|
|
|
function modalDeleteLieu_clear() {
|
|
modalDeleteLieu.removeAttr("delete_id");
|
|
modalDeleteLieu.find('b.name').html("");
|
|
} |