@@ -1,5 +1,19 @@ | |||
$(".modalCompanyAll").change((e)=>{ | |||
e.preventDefault(); | |||
selectCompanyList.preselected = []; | |||
selectCompanyList.preselect(); | |||
selectCompanyList.render(); | |||
selectCompanyList.load(); | |||
selectCompanyList.renderOptions(); | |||
selectDivisiList.preselected = []; | |||
selectDivisiList.preselect(); | |||
selectDivisiList.render(); | |||
selectDivisiList.load(); | |||
selectDivisiList.renderOptions(); | |||
if($(e.target).prop('checked')){ | |||
$("#modal-form .modalCompanySelect").parent('.drop').hide(); | |||
$("#modal-form .modalCompanySelect").val('All').change(); | |||
@@ -12,14 +26,29 @@ $(".modalCompanyAll").change((e)=>{ | |||
$(".modalCompanySelect").change(async(e)=>{ | |||
if($('#modal-form .modalDivisionSelect').length>0){ | |||
selectDivisiList.preselected = []; | |||
selectDivisiList.preselect(); | |||
selectDivisiList.render(); | |||
selectDivisiList.load(); | |||
selectDivisiList.renderOptions(); | |||
} | |||
if($(e.target).val()&&$(e.target).val().length>0){ | |||
// console.log(`/api/divisions${(e.target.value == 'All')?'':`?filters[companies][id][$in]=[${$(e.target).val()}]`}`); | |||
// console.log(typeof $(e.target).val()); | |||
var filters = []; | |||
if(typeof $(e.target).val() == 'string'){ | |||
filters.push($(e.target).val()); | |||
} | |||
else { | |||
filters = $(e.target).val(); | |||
} | |||
// console.log($(e.target).val() == 'string',filters); | |||
$(".modalDivisionSelect").removeAttr('disabled'); | |||
$(".modalDivisiAll").removeAttr('disabled'); | |||
var getToken = await fetch(`/session/key?s=jwt`); | |||
if(getToken.ok){ | |||
var token = await getToken.text(); | |||
var res = await fetch(`/api/divisions${(e.target.value == 'All')?'':`?${$(e.target).val().map((i,idx)=>`filters[companies][id][$in][${idx}]=${i}`).join('&')}`}`,{ | |||
var res = await fetch(`/api/divisions${(e.target.value == 'All')?'':`?${filters.map((i,idx)=>`filters[companies][id][$in][${idx}]=${i}`).join('&')}`}`,{ | |||
headers:{ | |||
"Authorization" : "Bearer "+token, | |||
} | |||
@@ -32,7 +61,7 @@ $(".modalCompanySelect").change(async(e)=>{ | |||
$(".modalDivisionSelect").append(`<option value="${i.id}">${i.attributes.Name}</option>`); | |||
}); | |||
if($('#modal-form .modalDivisionSelect')){ | |||
if($('#modal-form .modalDivisionSelect').length>0){ | |||
selectDivisiList.load(); | |||
selectDivisiList.renderOptions(); | |||
} | |||
@@ -49,6 +78,11 @@ $(".modalCompanySelect").change(async(e)=>{ | |||
$(".modalDivisiAll").change((e)=>{ | |||
e.preventDefault(); | |||
selectDivisiList.preselected = []; | |||
selectDivisiList.preselect(); | |||
selectDivisiList.render(); | |||
selectDivisiList.load(); | |||
selectDivisiList.renderOptions(); | |||
if($(e.target).prop('checked')){ | |||
$(".modalDivisionSelect").parent('.drop').hide(); | |||
} | |||
@@ -4,13 +4,20 @@ let list; | |||
let attachment; | |||
let removeMedia = []; | |||
var selectCompanyList = new drop({ | |||
selector: '#modal-form .modalCompanySelect' | |||
}); | |||
if($('#modal-form .modalCompanySelect').length>0){ | |||
var selectCompanyList = new drop({ | |||
selector: '#modal-form .modalCompanySelect' | |||
}); | |||
} | |||
var defaultSelectDivisi = $('#modal-form .modalDivisionSelect').clone(); | |||
if($('#modal-form .modalDivisionSelect').length>0){ | |||
var selectDivisiList = new drop({ | |||
selector: '#modal-form .modalDivisionSelect' | |||
}); | |||
} | |||
var selectDivisiList = new drop({ | |||
selector: '#modal-form .modalDivisionSelect' | |||
}); | |||
@@ -282,9 +289,22 @@ $('#modal-form').on('hide.bs.modal', function(e) { | |||
$(`#modal-form input#thumbnail`).closest('.form-group').show(); | |||
$('#modal-form select[name=company]').closest('.form-group').show(); | |||
$('#modal-form select[name=division]').closest('.form-group').show(); | |||
$('#modal-form select[name=division]').empty(); | |||
$("#thumbnailSelected").remove(); | |||
$("#videoSelected").remove(); | |||
$(`#modal-form .completeData`).addClass('hide'); | |||
selectCompanyList.preselected = []; | |||
selectCompanyList.preselect(); | |||
selectCompanyList.render(); | |||
selectCompanyList.load(); | |||
selectCompanyList.renderOptions(); | |||
selectDivisiList.preselected = []; | |||
selectDivisiList.preselect(); | |||
selectDivisiList.render(); | |||
selectDivisiList.load(); | |||
selectDivisiList.renderOptions(); | |||
} | |||
}); | |||
@@ -663,10 +683,10 @@ $('#modal-form').on('shown.bs.modal', async function() { | |||
obj[element.name] = moment(element.value,'MM/DD/YYYY').format('YYYY-MM-DD'); | |||
} | |||
else{ | |||
obj[element.name] = element.value; | |||
obj[element.name] = (obj[element.name]?obj[element.name]+',':'')+element.value; | |||
} | |||
} catch (e) { | |||
obj[element.name] = `"${element.value}"`; | |||
obj[element.name] = (obj[element.name]?obj[element.name]+',':'')+`"${element.value}"`; | |||
} | |||
}); | |||
if(!$(`#modal-form .completeData`).hasClass('hide')){ | |||
@@ -756,14 +776,15 @@ $('#modal-form').on('shown.bs.modal', async function() { | |||
.serializeArray() | |||
.forEach(element => { | |||
try { | |||
if(element.value[0]=='{'){ | |||
obj[element.name] = JSON.parse(element.value); | |||
} | |||
else{ | |||
obj[element.name] = element.value; | |||
obj[element.name] = (obj[element.name]?obj[element.name]+',':'')+element.value; | |||
} | |||
} catch (e) { | |||
obj[element.name] = element.value; | |||
obj[element.name] = (obj[element.name]?obj[element.name]+',':'')+element.value; | |||
} | |||
}); | |||
// console.log(JSON.stringify(obj)); | |||
@@ -53,7 +53,7 @@ | |||
</div> | |||
<div class="form-group"> | |||
<label for="modalDivisionSelect" class="form-control-label">Division</label> | |||
<div class="input-group input-group-merge input-group-alternative" style="background-color: white;"> | |||
<div class="divisi-group input-group input-group-merge input-group-alternative" style="background-color: white;"> | |||
<div class="input-group"> | |||
<span class="col-9 input-group-text"><i class="ni ni-shop"></i> Pilih Divisi</span> | |||
<div class="form-group col-3 input-group-text" style="justify-content: end;"> | |||
@@ -64,8 +64,8 @@ | |||
</label> | |||
</div> | |||
</div> | |||
<select name="division" class="form-control modalDivisionSelect" disabled> | |||
<!-- <option value="All">Semua</option> --> | |||
<select multiple name="division" class="form-control modalDivisionSelect" disabled> | |||
<option hidden class="hide" value="All">Semua</option> | |||
</select> | |||
</div> | |||
</div> | |||