forked from Simnation/Main
ed
This commit is contained in:
parent
48a36209b5
commit
884f3df7cf
262 changed files with 223207 additions and 2 deletions
118
resources/[jobs]/[mdt]/myEmergency/html/js/modules/LawBooks.js
Normal file
118
resources/[jobs]/[mdt]/myEmergency/html/js/modules/LawBooks.js
Normal file
|
@ -0,0 +1,118 @@
|
|||
class LawBooks{
|
||||
constructor(){
|
||||
this.name = "lawbooks";
|
||||
}
|
||||
|
||||
static allowAddNew(){
|
||||
return userrights.has("lawbooks.edit");
|
||||
}
|
||||
static allowEdit(){
|
||||
return userrights.has("lawbooks.edit");
|
||||
}
|
||||
static allowDelete(){
|
||||
return userrights.has("lawbooks.delete");
|
||||
}
|
||||
|
||||
static isCustom(){
|
||||
return true;
|
||||
}
|
||||
|
||||
static CreateCustom(data, isEditMode = false){
|
||||
|
||||
let retval = ``;
|
||||
|
||||
if(!isEditMode){
|
||||
document.getElementById("currentpage-content").innerHTML = Form.overviewHeadline(this.name.toLowerCase() + ".add", false, this.allowAddNew());
|
||||
}
|
||||
|
||||
|
||||
for(let i=0; i<data.data.length; i++){
|
||||
let row = data.data[i];
|
||||
|
||||
let buttons = ``;
|
||||
|
||||
let mbClass = "";
|
||||
|
||||
if(!isEditMode){
|
||||
if(this.allowAddNew()){
|
||||
buttons += `<button type="button" class="btn btn-sm btn-success lawbooks-add-crime" data-parentID="${row.id}">${getTranslation("add_crime")}</button>`;
|
||||
}
|
||||
if(this.allowEdit()){
|
||||
buttons += `<button type="button" class="btn btn-sm btn-warning lawbooks-edit" data-parentID="${row.id}">${getTranslation("edit")}</button>`;
|
||||
}
|
||||
if(this.allowDelete()){
|
||||
buttons += `<button type="button" class="btn btn-sm btn-error" onclick="Form.openDeleteModal(${row.id}, 'lawbooks')">${getTranslation("delete")}</button>`;
|
||||
}
|
||||
}
|
||||
|
||||
if(buttons != ""){
|
||||
mbClass = "mb-2";
|
||||
}
|
||||
|
||||
|
||||
if(!isEditMode || row.laws.length > 0){
|
||||
retval += `
|
||||
<div class="collapse collapse-arrow border border-base-300 bg-base-100 rounded-box mt-4">
|
||||
<input type="checkbox" />
|
||||
<div class="collapse-title text-xl font-medium">
|
||||
${row.short_name} - ${row.name}
|
||||
</div>
|
||||
<div class="collapse-content">
|
||||
<div class="${mbClass}">
|
||||
${buttons}
|
||||
</div>
|
||||
${System.GetTable(System.getClassByName("lawbooklaws"), row.laws, isEditMode)}
|
||||
</div>
|
||||
</div>
|
||||
`;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
if(!isEditMode){
|
||||
document.getElementById("currentpage-content").innerHTML += retval;
|
||||
Form.initTableButtons();
|
||||
|
||||
|
||||
Array.from(document.querySelectorAll(".lawbooks-add-crime")).forEach(function(button){
|
||||
button.onclick = function(){
|
||||
let staticData = {
|
||||
data:{
|
||||
lawbook_id:this.getAttribute("data-parentID")
|
||||
}
|
||||
}
|
||||
loadPage("lawbooklaws.add",-1,"false", staticData)
|
||||
}
|
||||
});
|
||||
Array.from(document.querySelectorAll(".lawbooks-edit")).forEach(function(button){
|
||||
button.onclick = function(){
|
||||
loadPage("lawbooks.edit",this.getAttribute("data-parentID"),"false", {})
|
||||
}
|
||||
});
|
||||
}
|
||||
else{
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
static GetEdit(data={}){
|
||||
return {
|
||||
"name": {
|
||||
"val" : data.name ?? ""
|
||||
,"type" : "text"
|
||||
,"mandatory":true
|
||||
,"isRow":true
|
||||
}
|
||||
,"short_name": {
|
||||
"val" : data.short_name ?? ""
|
||||
,"type" : "text"
|
||||
,"mandatory":true
|
||||
,"isRow":true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue