#workReportModal.modal(tabindex='-1', role='dialog', aria-labelledby='workReportModalLabel') //-form(method='GET',id='holidayForm' action='/employee/holidays_byperson/') style(type="text/css"). .aaa:active, .aaa.active { background: red !important; box-shadow: none !important; } .modal-dialog(role='document', style='width:1000px;') .modal-content .modal-header#workReportHeader.bg-primary(style="background: Primary") h4#headertitle .modal-body(style='background-color:#5f6b79') form#kabelform #form-group input#wn1(name='wn1',style='display:none') input#userid(name='userid',style='display:none', value=user._id) input#id(name='id',style='display:none') input#modify(name='modify',style='display:none') .row .col-sm-12 input(id='datepicker',style='display:none', type=text) .row .table-responsive table#workReportEdit.table.table-striped col(width='15%') col(width='auto') thead th(style='text-align:left') Résztvevők th(style='text-align:left') Munkavégzés leírása tbody hr .row .col-sm-12 label(for="workFlow",style='color: white') Munka leírása: input.form-control(id='workFlow', name='workFlow', required, minlength="6",type=text, autofocus, readonly=false,style='') br .row .col-sm-12 #buttons(style="margin: 10px;") h4#arc br //button#submit.btn.btn-primary(type='submit' ) Rendben button#sendData.btn.btn-primary(type='button') Rendben .modal-footer(style="background-color: #2C3446") button#fmodalClose.btn.btn-primary(type='button', data-dismiss='modal') Bezár script(src='/bower_components/jquery/dist/jquery.min.js') //-script(src='/bower_components/bootstrap-validator/dist/validator.min.js') script. var workers=[] function tableUpdate() { const workFlow = document.getElementById('workFlow').value; // $.each(data.reports,function(i,item){ var newRow="" //newRow+='' $.each(workers,function(i,employee){ newRow+=employee.name+'
' }); newRow+='' newRow+=""+workFlow+"" newRow+=''; $('#workReportEdit > tbody:last-child').append (newRow); // }) } const form = document.getElementById('kabelform'); function handleClick(identifier) { const state=$(identifier).hasClass('active'); //const d=JSON.parse(decodeURIComponent($(identifier).data('item'))) const d=$(identifier).data('id') const name=$(identifier).data('name') if (!state) { workers.push({employeeId:d, name:name,workFlow:""}); } else { workers=workers.filter(obj=>obj._id!==d._id); } // alert("data-id:"+JSON.stringify(workers) ); tableUpdate() $('#arc').text(JSON.stringify(workers)) } function textChanged(){ var length=document.getElementById("workFlow").value.length if (length>3) { let divElement = document.getElementById("buttons"); $.each(divElement.children,function(i,item){ item.disabled=false }) }else{ let divElement = document.getElementById("buttons"); $.each(divElement.children,function(i,item){ item.disabled=true item.classList.remove("active") }) workers=[] } } $(document).ready(function () { var wid = document.getElementById ('wn').textContent; var uid = document.getElementById ('user_id').textContent; var selectedDate=""; const title=document.getElementById ('title').textContent; var picker = new Lightpick({ field: document.getElementById('datepicker'), singleDate: true, inline: true, numberOfColumns: 2, numberOfMonths: 2, format: 'YYYY.MM.DD', disableWeekends: false, maxDate: moment(), onSelect: function(date){ selectedDate=date } }); document.getElementById("workFlow").onkeydown = function() { textChanged(); }; $('#workFlow').change(function(event) { //do stuff with the "event" object as the object that called the method textChanged(); } ); document.getElementById('sendData').addEventListener('click', function(a) { const workFlow = document.getElementById('workFlow').value; if(selectedDate.length) { Swal.fire('Error', '', 'error') } $.each(workers,function(i,w){ w.workFlow=workFlow }) var dataa={ date: selectedDate, workId:wid, foremanId:uid, workTitle:title, employeeList:workers } const response = fetch('/workreport', { method: 'POST', headers: { "Content-Type": "application/json", }, body: JSON.stringify(dataa) }) .then(response => response.json()) .then(data => { //console.log(data) if (!data.response.ok) { Swal.fire('Error', '', 'error') } if (data.response="ok") { Swal.fire({ position: "top-end", icon: "success", title: data.message, showConfirmButton: false, timer: 1500, backdrop: false }); } else { Swal.fire({ position: "top-end", icon: "error", title: data.message, showConfirmButton: false, timer: 1500, backdrop: false }); } $('#workReportModal').modal('hide');//.modal('toggle'); $('.modal').removeClass('in'); $('.modal').attr("aria-hidden","true"); $('.modal').css("display", "none"); $('.modal-backdrop').remove(); $('body').removeClass('modal-open'); $('.modal-backdrop').remove() }) .catch(error => console.error('Error:', error)); }) /* if (!response.ok) { Swal.fire('Error', '', 'error') } if (resp.response="OK") { Swal.fire({ position: "top-end", icon: "success", title: resp.message, showConfirmButton: false, timer: 1500, backdrop: false }); } else { Swal.fire({ position: "top-end", icon: "error", title: resp.message, showConfirmButton: false, timer: 1500, backdrop: false }); } */ //}); $(document).on('show.bs.modal','#workReportModal', function () { form.reset(); let divElement = document.getElementById("buttons"); while (divElement.firstChild) { divElement.removeChild(divElement.firstChild); } selectedDate=""; //var foo = document.getElementById("buttons"); //Append the element in page (in span). //Fetch workReport fetch('/workreportUserList', { method: 'GET', headers: { 'Content-Type': 'application/json', 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' } }) .then(response => response.json()) .then(data => { console.log(data) $.each(data.users,function(i,item){ var data_str = encodeURIComponent(JSON.stringify(item)); $('').appendTo('#buttons'); }) }) .catch(error => console.error('Error:', error)); }) });