????JFIF??x?x????'
Server IP : 79.136.114.73 / Your IP : 13.59.50.189 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/labs.astacus.se/POCKETLORD/js/ |
Upload File : |
// GLOBAL register var Building; var Floor; var Room; var WorkType; var Priority; var InstallationType; var Installation; var ErrorCause; var artikel; var Customer; var Workgroup; var Workstatus; var Performer; var WorkorderStoresArticles; var StoresArticleLocation; var Worktime; var variabelIndex = 0; if ((navigator.userAgent.match("iPhone"))) { document.getElementsByTagName('html')[0].style.zoom = 0.4; } // GLOBAL Workorders var Workorders; //Only used in AO-List in index.html var Workorder; // Used on all other pages inside a AO. function updateSettings(_nbrRegister,_nbrObject,_serverHost){ localStorage.setItem("nbrRegister",_nbrRegister); localStorage.setItem("nbrObject",_nbrObject); localStorage.setItem("serverHost",_serverHost); } function saveSettings(){ updateSettings(document.getElementById("nbrRegister").value,document.getElementById("nbrObject").value,document.getElementById("serverHost").value); } function initAO(call, page) { online(); if(localStorage.getItem("serverHost") == null){ updateSettings("100","20","http://vgdb0381/api/v1/"); } if(page == "fu"){ var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); // alert(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%201|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); getJSONVariable(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%201|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); //getJSONVariable(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%201%7CworkorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); }else if(page == "lo"){ var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=serviceunitguid%20eq%204400668077|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); }else if(page == "ko"){ var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=serviceunitguid%20eq%204404958141|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); }else{ if (localStorage.getItem('localAOData') == null || localStorage.getItem('localAOData') == "") { //var r = confirm("Vill du ladda ner dina arbetsordrar och register från Landlord?"); // if (r == true) { //http://vfast.landlord.5d.se/api/v1/Workorder?where=ispreventivemaintenanceGenerated%20eq%200%7CworkorderStatus%20eq%200|serviceunitguid%20eq%204400000013 var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%200%7CworkorderStatus%20eq%200|serviceunitguid%20eq%204400000013&take="+nbrObject,"Workorders","getAllRegisters();"); // getJSONVariable(""+serverHost+"Workorder?take="+nbrObject,"Workorders","getAllRegisters();"); //} } else { // ÄRVER ARBETSORDER if(getQueryAONummer() == "0"){ Workorder.guid = 0; Workorder.WorkorderNumber = 0; var x = 0; for(t in Workorder.Worktime){ Workorder.Worktime[x].guid = 0; x++; } x = 0; for(t in Workorder.WorkorderStoresArticles){ Workorder.WorkorderStoresArticles[x].guid = 0; x++; } } if (call != "") { call = call.replace(/#/g, "'"); // Replace # with ' eval(call); } if (page != "") { page = page.replace(/#/g, "'"); // Replace # with ' eval(page); } var registerTemp = localStorage.getItem("registerTemp"); if (registerTemp != "" ){ if( registerTemp != null){ var JSONdata = JSON.parse(registerTemp); var fCode = document.getElementById(JSONdata.item.qCode); if(fCode != null){ var fDescription = document.getElementById(JSONdata.item.qDescription); fCode.value = JSONdata.item.code; fDescription.value = JSONdata.item.description; //if(call != "null"){ var guid = JSONdata.item.guid; var items = eval(JSONdata.item.register); var x = 0; var obj; for (ao_item in items) { if(items[x].guid == guid){ obj = items[x]; } x++; } var name = JSONdata.item.qCode.substr(0,JSONdata.item.qCode.lastIndexOf(".")); var setValue = "Workorder." + name; if(name != ""){ eval("Workorder." + name+" = obj"); } localStorage.setItem("registerTemp", ""); submit_data(JSONdata.item.page, ''); //} //localStorage.setItem("registerTemp", ""); } } } } } } function populateFields() { for (i = 0; i < document.forms[0].elements.length; i++) { var type = document.forms[0].elements[i].type; var name = document.forms[0].elements[i].name; if (type == "text" || type == "textarea" || type == "tel") { var obj = 'Workorder.' + name; obj = obj.substr(0,obj.lastIndexOf(".")); if (eval(obj) != undefined && name != "") { eval('addFieldItem("' + name + '",Workorder.' + name + ');'); } } else if (type == "select-one") { var obj = 'Workorder.' + name; obj = obj.substr(0,obj.lastIndexOf(".")); if (eval(obj) != undefined && name != "") { var register = name; register = register.substr(0,register.lastIndexOf(".")-4); eval('addSelectItems("' + name + '",' + register + ');'); eval('selectItem("' + name + '",Workorder.' + name + ');'); } } } //function addSelectItems(selectId, items) { var aonummer = getQueryAONummer(); document.getElementById("link_uppdrag").href = "uppdrag.html?ao=" + aonummer; document.getElementById("link_atgard").href = "atgard.html?ao=" + aonummer; document.getElementById("link_tid").href = "tid.html?ao=" + aonummer; document.getElementById("link_forrad").href = "forrad.html?ao=" + aonummer; document.getElementById("link_ovrigt").href = "ovrigt.html?ao=" + aonummer; setAOTopic(); } function setBarcode(barcode, page, target) { if(page == "stadkontroll"){ location.href = barcode; }else{ //alert( page + "?mn=" + barcode + "&target=" + target); location.href = page + "?mn=" + barcode + "&target=" + target; } } /* function getJSONData(JSONString, call) { // Is called after request to getjson:// if (JSONString.indexOf("arbetsordrar") !== -1) { localStorage.setItem("localAOData", JSONString); eval(JSONString); window.location = "getjson://labs.astacus.se/POCKETLORD/web-api/getJSONObjects.php?type=register#drawAOTable('','','','');"; } else if (JSONString.indexOf("register") !== -1) { if (localStorage.getItem("localAORegister") != "") { // Append new register! var regs = localStorage.getItem("localAORegister"); JSONString = regs + ";" + JSONString; localStorage.setItem("localAORegister", JSONString); eval(JSONString); } else { localStorage.setItem("localAORegister", JSONString); eval(JSONString); } } if (call != "") { call = call.replace(/#/g, "'"); // Replace # with ' eval(call); } } */ function drawAOTable(byggnad, arbetstyp, utforare, prioritet) { document.getElementById("loading").style.visibility = "hidden"; var table = '<table width="730" border="0" align="center" cellpadding="0" cellspacing="0" class="sortable" id="cp_table">'; table += '<tr>'; table += '<td width="15"></td>'; table += '<td width="90" class="table_texts"><strong>Byggnad</strong></td>'; table += '<td width="110" class="table_texts"><strong>Klart</strong></td>'; table += '<td width="70" class="table_texts"><strong>Arb.typ</strong></td>'; table += '<td width="50" class="table_texts"><strong>Prio</strong></td>'; table += '<td width="70" class="table_texts"><strong>Arb.gr.</strong></td>'; table += '<td width="60" class="table_texts"><strong>Utför.</strong></td>'; table += '<td width="230" class="table_texts"><strong>Beskrivning</strong></td>'; table += '<td width="50" class="table_texts"> </td>'; table += '</tr>'; var x = 0; for (ao_item in Workorders) { //if (Workorders[x].WorkorderStatusTitle == "Aktiv") { var link = 'javascript:document.location.href=\'uppdrag.html?ao=' + Workorders[x].WorkorderNumber + '&index=' + x + '\''; show = false; var script = ""; if (byggnad != "") { if(Workorders[x].BuildingGUID != null){ script += " && Workorders[x].BuildingGUID.ID.toUpperCase().indexOf(byggnad.toUpperCase()) !== -1 "; } } if (arbetstyp != "") { if(Workorders[x].WorkTypeGUID != null){ script += " && Workorders[x].WorkTypeGUID.ID.toUpperCase().indexOf(arbetstyp.toUpperCase()) !== -1 "; } } if (utforare != "") { if(Workorders[x].PerformerGUID != null){ script += " && Workorders[x].PerformerGUID.ID.toUpperCase().indexOf(utforare.toUpperCase()) !== -1 "; } } if (prioritet != "") { if(Workorders[x].PriorityGUID != null){ script += " && Workorders[x].PriorityGUID.ID.toUpperCase().indexOf(prioritet.toUpperCase()) !== -1 "; } } script = script.substring(4, 500); if (script == "") { script = "true"; } if (eval(script)) { show = true; } if (show == true) { var WorkorderDescriptionPlain = ""; if(Workorders[x].WorkorderDescriptionPlain != undefined){ WorkorderDescriptionPlain = Workorders[x].WorkorderDescriptionPlain.substr(0, 20); } var currentTime = new Date(); var month = currentTime.getMonth() + 1; if(month < 10){ month = "0"+month; } var day = currentTime.getDate(); if(day < 10){ day = "0"+day; } var year = currentTime.getFullYear(); var datum= year +"-"+ month + "-" + day; var status = ""; if(Workorders[x].ReadyDateTime.substr(0,10) < datum){ status = '<img src="../../images/red.png" alt="" width="10" height="10">'; } if(Workorders[x].WorkstatusGUID!=null){ if(Workorders[x].WorkstatusGUID.ID == "K"){ status = '<img src="../../images/green.png" alt="" width="10" height="10">'; } } if(Workorders[x].BuildingGUID != null){ var ID = Workorders[x].BuildingGUID.ID; } if(Workorders[x].ReadyDateTime != null){ var Ready = Workorders[x].ReadyDateTime.substr(0, 10); } if(Workorders[x].WorkTypeGUID != null){ var WorkType = Workorders[x].WorkTypeGUID.ID; } if(Workorders[x].PriorityGUID != null){ var Priority = Workorders[x].PriorityGUID.ID; } if(Workorders[x].WorkgroupGUID != null){ var Workgroup = Workorders[x].WorkgroupGUID.ID; } if(Workorders[x].PerformerGUID != null){ var Performer = Workorders[x].PerformerGUID.ID; } if(Workorders[x].BuildingGUID != null){ var ID = Workorders[x].BuildingGUID.ID; } if ((navigator.userAgent.match("iPhone"))) { WorkorderDescriptionPlain = WorkorderDescriptionPlain.substr(0,10); Ready = Ready.substr(5,10); } table += '<tr>'; table += '<td width="15" height="40" class="table_texts">' + status + '</td>'; table += '<td width="90" height="40" class="table_texts">' + ID + '</td>'; table += '<td width="110" class="table_texts">' + Ready + '</td>'; table += '<td width="70" class="table_texts">' + WorkType + '</td>'; table += '<td width="50" class="table_texts">' + Priority + '</td>'; table += '<td width="70" class="table_texts">' + Workgroup + '</td>'; table += '<td width="60" class="table_texts">' + Performer + '</td>'; table += '<td width="230" class="table_texts"><a href="javascript:showMessage(\''+Workorders[x].WorkorderDescriptionPlain+'\');">' + WorkorderDescriptionPlain + '...</a></td>'; table += '<td width="50" align="right"><input type="button" value="Ta AO" onClick="' + link + '" class="buttons_small"></td>'; table += '</tr>'; } // } x++; } table += '</table>'; document.getElementById("ao_table").innerHTML = table; sorttable.makeSortable(document.getElementById("cp_table")); enableFormsInIscroll(); } function showMessage(message){ alert(message); } function drawTableForrad() { var table = '<table width="720" border="0" align="center" cellpadding="0" cellspacing="0" class="sortable" id="cp_table">'; table += '<tr>'; table += '<td width="300">Artikel:</td>'; table += '<td width="50"></td>'; table += '<td width="50">Antal:</td>'; table += '<td width="200"> </td>'; table += '<td width="20"></td>'; table += '<td width="100" align="right"> </td>'; table += '</tr>'; var y = 0; var total_kost = 0; for (f_item in Workorder.WorkorderStoresArticles) { if(Workorder.WorkorderStoresArticles[y] != undefined ){ table += '<tr>'; table += '<td width="300">' + Workorder.WorkorderStoresArticles[y].Title + '</td>'; table += '<td width="50"></td>'; table += '<td width="50" id="forrad_antal'+y+'">' + Workorder.WorkorderStoresArticles[y].Quantity + '</td>'; table += '<td width="200"></td>'; // table += '<td width="200"><input type="button" name="button4" id="button4" value="+" class="texts" onClick="increase_forrad('+y+');"><input type="button" name="button9" id="button9" value="-" class="texts" onClick="decrease_forrad('+y+');"></td>'; // var kost = arbetsorder.forrad.item[y].antal * arbetsorder.forrad.item[y].pris; // total_kost += kost; table += '<td width="20"></td>'; table += '<td width="100" align="right"><input type="submit" name="button3" id="button3" value="Makulera" class="texts" onClick="javascript:deleteForradArticle('+Workorder.WorkorderStoresArticles[y].guid+');"></td>'; table += '</tr>'; } y++; } //arbetsorder.tid.item[0].for_kostnad = total_kost; // Add total cost to Tid För.kostnad localStorage.setItem("currentAO", JSON.stringify(Workorder)); table += '</table>'; document.getElementById("f_table").innerHTML = table; sorttable.makeSortable(document.getElementById("cp_table")); enableFormsInIscroll(); } function addForradArticle(){ var forradTemp; var guid = document.getElementById("artikel").value; var Quantity = document.getElementById("antal").value; var x = 0; for(Article in StoresArticleLocation){ if(StoresArticleLocation[x].guid == guid){ forradTemp = {"guid":StoresArticleLocation[x].guid,"ID":StoresArticleLocation[x].ID,"Title":StoresArticleLocation[x].Title,"Quantity":Quantity}; } x++; } var str = {"guid":0,"Title":forradTemp.Title,"StoresArticleLocationGUID":{"guid":forradTemp.guid,"ID":forradTemp.ID,"Title":forradTemp.Title,"StoresGUID":null,"Balance":0,"StoresUnitGUID":null,"StoragePlace":null,"ArticlePrice":0},"Quantity":forradTemp.Quantity} if(Workorder.WorkorderStoresArticles != undefined){ Workorder.WorkorderStoresArticles.push(str); }else{ s = []; s.push(str); Workorder.WorkorderStoresArticles = s; } localStorage.setItem("currentAO", JSON.stringify(Workorder)); drawTableForrad(); } function deleteForradArticle(guid){ // var x = 0; for(Article in Workorder.WorkorderStoresArticles){ if(Workorder.WorkorderStoresArticles[x] != undefined ){ if(Workorder.WorkorderStoresArticles[x].guid == guid){ Workorder.WorkorderStoresArticles[x].Quantity = 0; } } x++; } localStorage.setItem("currentAO", JSON.stringify(Workorder)); drawTableForrad(); //delete myObj.test[keyToDelete]; } function drawTableTid() { var table = '<table width="720" border="0" align="center" cellpadding="0" cellspacing="0">'; var y = 0; for (t_item in Workorder.Worktime) { var currentTime = new Date(); var month = currentTime.getMonth() + 1; if(month < 10){ month = "0"+month; } var day = currentTime.getDate(); if(day < 10){ day = "0"+day; } var year = currentTime.getFullYear(); var datum= year +"-"+ month + "-" + day; table += '<tr>'; table += ' <td width="90" valign="middle"><input name="Worktime['+y+'].TimeNormal" type="tel" class="textfields" id="Worktime['+y+'].TimeNormal" value="'+Workorder.Worktime[y].TimeNormal+'" size="3" onKeyUp="submit_data(\'uppdrag\',\'\');"></td>'; table += ' <td width="290" valign="middle"><input name="Worktime['+y+'].WorkgroupGUID.Title" type="text" readonly="readonly" class="textfields" id="Worktime['+y+'].WorkgroupGUID.Title" size="13" value="'+Workorder.Worktime[y].WorkgroupGUID.Title+'"> <img src="../../images/button-magnify.png" alt="" width="40" height="47" align="absmiddle" onClick="openRegisterView(\'Workgroup\',\'Worktime['+y+'].WorkgroupGUID.ID\',\'Worktime['+y+'].WorkgroupGUID.Title\',\'tid\');"></td>'; table += ' <td width="150" valign="middle"><input name="Worktime['+y+'].PerformerGUID.ID" type="text" readonly="readonly" class="textfields" id="Worktime['+y+'].PerformerGUID.ID" value="'+Workorder.Worktime[y].PerformerGUID.ID+'" size="3" > <img src="../../images/button-magnify.png" alt="" width="40" height="47" align="absmiddle" onClick="openRegisterView(\'Performer\',\'Worktime['+y+'].PerformerGUID.ID\',\'Worktime['+y+'].PerformerGUID.ID\',\'tid\');" ></td>'; table += ' <td width="190" valign="middle"><input name="datum" type="tel" readonly="readonly" class="textfields" id="datum" value="'+datum+'" size="10" ></td>'; table += '</tr>'; y++; } table += '</table>'; document.getElementById("tid_table").innerHTML = table; enableFormsInIscroll(); } function addTidRow(){ //var arbetsgrupp = document.getElementById("arbetsgrupp0").value; //var utforare = document.getElementById("utforare").value; var currentTime = new Date(); var month = currentTime.getMonth() + 1; if(month < 10){ month = "0"+month; } var day = currentTime.getDate(); if(day < 10){ day = "0"+day; } var year = currentTime.getFullYear(); var datum= year +"-"+ month + "-" + day; var str = {"guid":0,"WorkgroupGUID":{"guid":Workorder.WorkgroupGUID.guid,"ID":Workorder.WorkgroupGUID.ID,"Title":Workorder.WorkgroupGUID.Title},"PerformerGUID":{"guid":Workorder.PerformerGUID.guid,"ID":Workorder.PerformerGUID.ID,"Title":Workorder.PerformerGUID.Title,"WorkgroupGUID": null},"TimeNormal":0,"ExecutionDate":datum}; if(Workorder.Worktime != undefined){ Workorder.Worktime.push(str); }else{ s = []; s.push(str); Workorder.Worktime = s; } localStorage.setItem("currentAO", JSON.stringify(Workorder)); drawTableTid(); } function drawRegisterTable(kod, beskrivning, flag) { document.getElementById("loading").style.visibility = "hidden"; var qDescription = getQueryDescritpion(); var qCode = getQueryCode(); var qPage = getQueryPage(); var qRegister = getQueryRegister(); var qAONummer = getQueryAONummer(); var x = 0; if (eval(qRegister) == null) { // Downlod the register if it does not exist local! var r = confirm("Detta register måste laddas ner från er Server, vill du göra det nu?"); if (r == true) { var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+""+qRegister+"?take="+nbrRegister+"",qRegister,"drawRegisterTable('','','');"); } } if(qRegister == "Performer" && flag == "" && qPage == "tid"){ var index1 = qCode.indexOf("["); var index2 = qCode.indexOf("]"); var index = parseInt(qCode.substr(index1+1,index2-index1)); var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var WorkgroupGUID = Workorder.Worktime[index].WorkgroupGUID.guid; // alert(""+serverHost+"Performer?where=WorkgroupGUID%20eq%20"+WorkgroupGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); getJSONVariable(""+serverHost+"Performer?where=WorkgroupGUID%20eq%20"+WorkgroupGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); } if(qRegister == "Performer" && flag == "" && qPage == "ovrigt"){ var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var WorkgroupGUID = Workorder.WorkgroupGUID.guid; //alert(""+serverHost+"Performer?where=WorkgroupGUID%20eq%20"+WorkgroupGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); getJSONVariable(""+serverHost+"Performer?where=WorkgroupGUID%20eq%20"+WorkgroupGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); } if(qRegister == "Floor" && flag == ""){ var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var BuildingGUID = Workorder.BuildingGUID.guid; //alert(""+serverHost+"Floor?where=BuildingGUID%20eq%20"+BuildingGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); getJSONVariable(""+serverHost+"Floor?where=BuildingGUID%20eq%20"+BuildingGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); } if(qRegister == "Room" && flag == ""){ var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var FloorGUID = Workorder.FloorGUID.guid; getJSONVariable(""+serverHost+"Room?where=FloorGUID%20eq%20"+FloorGUID+"&take="+nbrRegister,qRegister,"drawRegisterTable('','','stop');"); } var table = '<table width="730" border="0" align="center" cellpadding="0" cellspacing="0" class="sortable" id="cp_table">'; table += '<tr>'; table += '<td width="200"><strong>Kod</strong></td>'; table += '<td width="480"><strong>Benämning</strong></td>'; table += '<td width="50"> </td>'; table += '</tr>'; var items = eval(qRegister); for (ao_item in items) { var ID = items[x].ID; var Title = items[x].Title; var guid = items[x].guid; if(ID == undefined){ ID = items[x].guid; } if(Title == undefined){ Title = "" } if(qRegister == "StoresArticleLocation"){ //alert(StoresArticleLocation); ID = items[x].guid; } var link = "updateFieldsFromRegister('" + qCode + "','" + qDescription + "','"+qRegister+"','" + ID + "','"+guid+"','" + Title + "','" + qAONummer + "','" + qPage + "');"; show = false; var script = ""; if (kod != "") { script += " && " + qRegister +"[x].ID.toUpperCase().indexOf(kod.toUpperCase()) !== -1 "; } if (beskrivning != "") { script += " && " + qRegister + "[x].Title.toUpperCase().indexOf(beskrivning.toUpperCase()) !== -1 "; } /* if(qRegister == "Floor"){ var BuildingGUID = Workorder.BuildingGUID.ID; script += " && items[x].BuildingGUID.ID == '"+BuildingGUID+"' "; } if(qRegister == "Room"){ var FloorGUID = Workorder.FloorGUID.ID; script += " && items[x].FloorGUID.ID == '"+FloorGUID+"' "; }*/ script = script.substring(4, 500); if (script == "") { script = "true"; } if (eval(script)) { show = true; } if (show == true) { table += '<tr>'; table += '<td width="200" height="40">' + ID + '</td>'; table += '<td width="480">' + Title + '</td>'; table += '<td width="50" align="right"><input type="button" value="Välj" onClick="' + link + '" class="buttons_small"></td>'; table += '</tr>'; } x++; } table += '</table>'; document.getElementById("ao_table").innerHTML = table; sorttable.makeSortable(document.getElementById("cp_table")); enableFormsInIscroll(); } function enableFormsInIscroll() { [].slice.call(document.querySelectorAll('input, select, button, textarea')).forEach(function (el) { el.addEventListener(('ontouchstart' in window) ? 'touchstart' : 'mousedown', function (e) { e.stopPropagation(); }) }) } function filterAO() { drawAOTable(document.getElementById("urval_byggnad").value.toString(), document.getElementById("urval_arbetstyp").value.toString(), document.getElementById("urval_utforare").value.toString(), document.getElementById("urval_prio").value.toString()); } function filterRegister() { drawRegisterTable(document.getElementById("urval_kod").value.toString(), document.getElementById("urval_beskrivning").value.toString(),'stop'); } function reloadAORgisterAndArbetsorder() { //DONE var r = confirm("Vill du verkligen ladda om alla arbetsorder?"); if (r == true) { var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%200%7CworkorderStatus%20eq%200|serviceunitguid%20eq%204400000013&take="+nbrObject,"Workorders","getAllRegisters();"); } } function reloadAORgisterAndFU() { //DONE var r = confirm("Vill du verkligen ladda om alla arbetsorder?"); if (r == true) { var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=ispreventivemaintenanceGenerated%20eq%201|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); } } function reloadAORgisterAndLO() { // DONE var r = confirm("Vill du verkligen ladda om alla arbetsorder?"); if (r == true) { var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=serviceunitguid%20eq%204400668077|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); } } function reloadAORgisterAndKO() { // DONE var r = confirm("Vill du verkligen ladda om alla arbetsorder?"); if (r == true) { var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); getJSONVariable(""+serverHost+"Workorder?where=serviceunitguid%20eq%204404958141|workorderStatus%20eq%200&take="+nbrObject,"Workorders","getAllRegisters();"); } } function getAllRegisters(){ var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var registerArray = ["getJSONVariable('"+serverHost+"Building/?take="+nbrRegister+"','Building','getAllRegisters()');","getJSONVariable('"+serverHost+"Floor/?take="+nbrRegister+"','Floor','getAllRegisters();');","getJSONVariable('"+serverHost+"Room/?take="+nbrRegister+"','Room','getAllRegisters();');","getJSONVariable('"+serverHost+"Worktype/?take="+nbrRegister+"','WorkType','getAllRegisters();');","getJSONVariable('"+serverHost+"Priority/?take="+nbrRegister+"','Priority','getAllRegisters();');","getJSONVariable('"+serverHost+"InstallationType/?take="+nbrRegister+"','InstallationType','getAllRegisters();');","getJSONVariable('"+serverHost+"Installation/?take="+nbrRegister+"','Installation','getAllRegisters();');","getJSONVariable('"+serverHost+"ErrorCause/?take="+nbrRegister+"','ErrorCause','getAllRegisters();');","getJSONVariable('"+serverHost+"Customer/?take="+nbrRegister+"','Customer','getAllRegisters();');","getJSONVariable('"+serverHost+"Workgroup/?take="+nbrRegister+"','Workgroup','getAllRegisters();');","getJSONVariable('"+serverHost+"WorkorderStoresArticles/?take="+nbrRegister+"','WorkorderStoresArticles','getAllRegisters();');","getJSONVariable('"+serverHost+"StoresArticleLocation/?take="+nbrRegister+"','StoresArticleLocation','getAllRegisters();');","getJSONVariable('"+serverHost+"Workstatus/?take="+nbrRegister+"','Workstatus','getAllRegisters();');","getJSONVariable('"+serverHost+"Worktime/?take="+nbrRegister+"','Worktime','getAllRegisters();');","getJSONVariable('"+serverHost+"Performer/?take="+nbrRegister+"','Performer','drawAOTable(##,##,##,##)');"]; eval(registerArray[variabelIndex]); variabelIndex++; } function getJSONVariable(url,variable,functionToCall) { document.getElementById("loading").style.visibility = "visible"; document.getElementById("loading").innerHTML="<br><strong>LADDAR...</strong><br><div class='texts'>"+variable+"</div>"; if (functionToCall != "") { functionToCall = functionToCall.replace(/#/g, "'"); // Replace # with ' } look = true; var call = url.replace("http://","getjsonvariable://")+"!"+variable+"&"+functionToCall; window.location = call; } function setJSONVariable(variable,functionToCall){ variable = variable.replace(/\r\n/g, ""); variable = variable.replace(/\n/g, ""); variable = variable.replace(/\r/g, ""); //variable = variable.replace(/\\\"/g, ""); functionToCall = functionToCall.replace(/#/g, "'"); if(variable != "" && functionToCall != ""){ if (variable.indexOf("Workorders") !== -1) { localStorage.setItem("localAOData", variable); } eval(variable); // eval(functionToCall); if (localStorage.getItem("localAORegister") != "") { // Append new register! var regs = localStorage.getItem("localAORegister"); variable = regs + ";" + variable; localStorage.setItem("localAORegister", variable); } else { localStorage.setItem("localAORegister", variable); } }else if(variable != "" && functionToCall == ""){ eval(variable); }else if(variable == "" && functionToCall != ""){ eval(functionToCall); } } // Sets the image to offline function offline() { document.getElementById("version").innerHTML = "OFFLINE"; } // Sets the image to online function online() { document.getElementById("version").innerHTML = "ONLINE"; } function openRegisterView(register, code ,description, page) { var ao = getQueryAONummer(); if (code == "artikel_forrad") { ao = ""; // We dont need ao-number for Förråd! } window.location = "register.html?ao=" + ao + "&code=" + code + "®ister=" + register + "&description=" + description + "&page=" + page; } // Add Items to a select menu function addSelectItems(selectId, items) { var select = document.getElementById(selectId); select.options.length = 0; for (index in items) { select.options[select.options.length] = new Option(items[index].ID, items[index].ID); } } // Selects Items to a select menu function selectItem(selectId, items) { var selObj = document.getElementById(selectId); for (var i = 0; i < selObj.options.length; i++) { if (selObj.options[i].text == items) { selObj.options[i].selected = true; } } } function updateFieldsFromRegister(qCode, qDescription, qRegister, code, guid, description, aonumber, page) { if (qCode == "artikel" || qCode == "artikel_forrad") { // In artikel (Förråd) we want to add "code" instead of description var registerTemp = { "item": { "qCode": qCode, "qDescription": qDescription, "register": qRegister, "code": code, "guid": guid, "description": code, "page": page } } } else { var registerTemp = { "item": { "qCode": qCode, "qDescription": qDescription, "register": qRegister, "code": code, "guid": guid, "description": description, "page": page } } } localStorage.setItem("registerTemp", JSON.stringify(registerTemp)); if (qCode == "artikel_forrad") { window.location = "index.html"; // We dont need any ID for Förråd } else { window.location = page + ".html?ao=" + aonumber; } } // Add Items to a textfield function addFieldItem(selectId, i) { var field = document.getElementById(selectId); if(selectId.indexOf("DateTime") !== -1){ // Syntax is like 2012-01-01T00:00:00.123 -> 2012-01-01 00:00 i = i.replace("T"," "); i = i.substr(0,16); } if(i != undefined){ field.value = i; } } function sendEmail() { location.href = "mailto:" + arbetsorder.ovrigt.epost; } function callPhone() { location.href = "call:" + arbetsorder.ovrigt.epost; } function smsPhone() { location.href = "sms:" + arbetsorder.ovrigt.epost; } //Update the description based on new option text function updateSelect(selObj, items, field, page) { var newText = selObj.options[selObj.selectedIndex].text; items = eval(items); for (index in items) { if (items[index].ID == newText) { addFieldItem(field, items[index].Title); } } submit_data(page, ''); } // Creates an XML of all fields data and saves it in localStorage called localXML function submit_data(page, goto) { for (i = 0; i < document.forms[0].elements.length; i++) { var name = document.forms[0].elements[i].name; var type = document.forms[0].elements[i].type; var value = document.forms[0].elements[i].value; //alert("name:"+name+" type:"+type); if (type == "text" || type == "tel" || type == "select-one" || type == "textarea") { //var setValue = "Workorder." + name + " = '" + value + "'"; var temp_name = name.substr(0,name.lastIndexOf(".")); if(name.lastIndexOf(".") === -1){ var setValue = "Workorder." + name + " = '" + value + "'"; eval(setValue); }else{ if(eval("Workorder."+temp_name) != null){ var setValue = "Workorder." + name + " = '" + value + "'"; //alert(setValue); eval(setValue); } } } } if(page == "uppdrag"){ setAOIndex(); } localStorage.setItem("currentAO", JSON.stringify(Workorder)); if (goto != "") { if (goto != "index.html") { location.href = goto + "?ao=" + getQueryAONummer(); } else { var localAOData = localStorage.getItem("localAOData"); var index = getIndexForAONumber(getQueryAONummer()); var JSONdata = eval(localAOData); localStorage.setItem("localAOData", "Workorders = " + JSON.stringify(JSONdata)); var nbrRegister = localStorage.getItem("nbrRegister"); var nbrObject = localStorage.getItem("nbrObject"); var serverHost = localStorage.getItem("serverHost"); var url = ""+serverHost+"Workorder/action/save/?" var call = url.replace("http://","sendjson://") + localStorage.getItem("currentAO"); //Update AO List Workorders[parseInt(localStorage.getItem("AOIndex"))] = JSON.parse(localStorage.getItem("currentAO")); localStorage.setItem("localAOData", "Workorders = " + JSON.stringify(Workorders)); window.location = call; } } } function setAOIndex() { var path = document.location.toString(); var index = path.substring(path.indexOf("&index=") + 7); if (index.length < 10) { // Make sure we only store index when its a number. If we navigate to uppdrag.html from any other page we shall not reset AOIndex localStorage.setItem("AOIndex", index); var savedlocalAOData = localStorage.getItem('localAOData'); eval(savedlocalAOData); localStorage.setItem("currentAO", JSON.stringify(Workorders[index])); var savedAORegister = localStorage.getItem("localAORegister"); eval(savedAORegister); var savedcurrentAOData = localStorage.getItem('currentAO'); savedcurrentAOData = "Workorder = " + savedcurrentAOData eval(savedcurrentAOData); } } function getQueryCode() { var path = document.location.toString(); var qCode = path.substring(path.indexOf("&code=") + 6); var pos = qCode.indexOf("&"); return qCode.substring(0, pos); } function getQueryDescritpion() { var path = document.location.toString(); var qDecription = path.substring(path.indexOf("&description=") + 13); var pos = qDecription.indexOf("&"); return qDecription.substring(0, pos); } function getQueryRegister() { var path = document.location.toString(); var qRegister = path.substring(path.indexOf("®ister=") + 10); var pos = qRegister.indexOf("&"); return qRegister.substring(0, pos); } function getQueryPage() { var path = document.location.toString(); return path.substring(path.indexOf("&page=") + 6); } function setAOTopic() { var topic = document.getElementById("topic"); var aonummer = getQueryAONummer(); topic.innerHTML = "Arbetsorder: "+ aonummer + " - " + Workorder.WorkorderStatusTitle; } function increase(fieldId) { var field = document.getElementById(fieldId); field.value = parseInt(field.value) + parseInt(1); } function decrease(fieldId) { var field = document.getElementById(fieldId); if (field.value > 0) { field.value = parseInt(field.value) - parseInt(1); } } function increase_forrad(index) { Workorder.WorkorderStoresArticles[index].Quantity = parseInt(Workorder.WorkorderStoresArticles[index].Quantity) + 1; localStorage.setItem("currentAO", JSON.stringify(Workorder)); drawTableForrad(); } function decrease_forrad(index) { var v = parseInt(Workorder.WorkorderStoresArticles[index].Quantity) if (v > 0) { Workorder.WorkorderStoresArticles[index].Quantity = parseInt(Workorder.WorkorderStoresArticles[index].Quantity) - 1; } localStorage.setItem("currentAO", JSON.stringify(Workorder)); drawTableForrad(); } function reloadPage(page) { return page + "?" + Math.random(); } /* FUNCTIONS USED BY Arbetsorder */ // Returns the array index in arbetsorder for a given aonummer. function getIndexForAONumber(aonummer) { return localStorage.getItem("AOIndex"); } function newAO() { var r = confirm("Vill du ärva egenskaper från den senaste arbetsordern?"); if (r == true) { window.location = "uppdrag.html?ao=0"; } else { window.location = "uppdrag.html?ao=0"; } } function getQueryAONummer() { var path = document.location.toString(); var qAONummer = path.substring(path.indexOf("?") + 4); var pos = qAONummer.indexOf("&"); if (pos === -1) { return qAONummer; } else { return qAONummer.substring(0, pos); } } function takePhoto(page,photo){ var url = "takephoto://"+page+".html#"+photo; window.location = url; } function showPhoto(page,photo,photoname){ //window.location = page;¨ alert(document.getElementById(photo).src); document.getElementById(photo).src = "http://www.astacus.se/images/verktyg.jpg"; } function showImage(){ document.getElementById("photo").src ="http://labs.astacus.se/POCKETLORD/Moduler/PU/image.php"; } function goToList(){ window.location = "index.html"; } function sendJSONResult(obj){ //alert((obj)); var Result = JSON.parse((obj)); if(Result.SaveMessage != null){ alert(Result.SaveMessage); }else{ //alert(Result.UpdatedModel.replace(/#/g, '"')); //var UpdatedWorkOrder = JSON.parse(Result.UpdatedModel.replace(/#/g, '"')); var UpdatedWorkOrder = Result.UpdatedModel; if(UpdatedWorkOrder.WorkorderNumber != null){ Workorders[parseInt(localStorage.getItem("AOIndex"))] = UpdatedWorkOrder; localStorage.setItem("localAOData", "Workorders = " + JSON.stringify(Workorders)); alert("Tack, data har synkroniserats!"); window.location = "index.html"; }else if(UpdatedWorkOrder.StoresGUID != null){ alert("Tack, data har synkroniserats!"); window.location = "inventering.html"; }else{ alert("Tack, data har synkroniserats!"); window.location = "index.html"; } } }