您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
ok
当前为
// ==UserScript== // @name Visvaris robots // @namespace http://tampermonkey.net/ // @version 2025-05-36 // @description ok // @author You // @match https://visvaris.lv/kindergarten/* // @icon https://www.google.com/s2/favicons?sz=64&domain=visvaris.lv // @grant GM_getValue // @grant GM_setValue // ==/UserScript== main(); var observeDOM = (function() { var MutationObserver = window.MutationObserver || window.WebKitMutationObserver; return function(obj, callback) { if (!obj || obj.nodeType !== 1) { return; } if (MutationObserver) { // define a new observer var mutationObserver = new MutationObserver(callback); // have the observer observe for changes in children mutationObserver.observe(obj, {childList: true, subtree: true}); return mutationObserver; } else if (window.addEventListener) { // browser support fallback obj.addEventListener('DOMNodeInserted', callback, false); obj.addEventListener('DOMNodeRemoved', callback, false); } } })(); var DateDiff = { inDays: function(d1, d2) { var t2 = d2.getTime(); var t1 = d1.getTime(); return Math.floor((t2-t1)/(24*3600*1000)); }, inWeeks: function(d1, d2) { var t2 = d2.getTime(); var t1 = d1.getTime(); return parseInt((t2-t1)/(24*3600*1000*7)); }, inMonths: function(d1, d2) { var d1Y = d1.getFullYear(); var d2Y = d2.getFullYear(); var d1M = d1.getMonth(); var d2M = d2.getMonth(); return (d2M+12*d2Y)-(d1M+12*d1Y); }, inYears: function(d1, d2) { return d2.getFullYear()-d1.getFullYear(); } } //ja lapa ielādējas un skripts ir procesā if(window.name == "processing") { var dati = JSON.parse(GM_getValue('skripta_dati', '[]')); if(dati.search_step==1)search_step_1(dati) else if (dati.search_step==2)search_step_2(dati); else if (dati.search_step==3)search_step_3(dati); else if (dati.search_step==4)search_step_4(dati); } function main() { var mt = document.getElementById("content"); if(!mt) return; //title var title = document.createElement("h3"); title.innerHTML='Visvaris robots'; mt.appendChild(title); //textarea var input = document.createElement("textarea"); input.id="demo_input_area"; input.setAttribute('rows', 5); //pieliekam meklēšanas ievadlauku //let sp2 = document.getElementById("footer"); mt.appendChild(input); //space var br = document.createElement("br"); mt.appendChild(br); //poga var btn = document.createElement('button'); btn.innerText="Meklēt"; btn.type = "button"; btn.addEventListener("click", function(){ var input_lines=input.value; input_lines=input_lines.replace(/[ ]+/g, ''); input_lines = input_lines.replace(/\r\n/g,"\n").split("\n"); input_lines = input_lines.filter(elm => elm);//remove empty var dati = { current_line: 0, search_step: 1, lines:input_lines, results:[] }; //atzīmējam šo tabu kā procesējošu window.name = "processing"; search_step_1(dati); }); //pievienojam meklēšanas pogu mt.appendChild(btn); } //atveram meklēšanas lapu function search_step_1(dati) { //atzīmējam, ka pēc pārlādēšanas būs 2. solis dati.search_step=2; //saglabājam datus GM lai tie ir pieejami arī pēc lapas pārlādēšanas GM_setValue('skripta_dati', JSON.stringify(dati)); //ejam uz meklēšanas lapu document.location.href = 'https://visvaris.lv/kindergarten/PersonList'; } //veicam aizpildam meklēšanas laukus un nospiežam pogu meklēt function search_step_2(dati) { //ievadam meklējamo tekstu var search_input = document.getElementById("PersistedModel_Code"); var pk = dati.current_line; search_input.value=dati.lines[pk]; //atzīmējam, ka pēc pārlādēšanas būs 3. solis dati.search_step=3; //saglabājam datus GM lai tie ir pieejami arī pēc lapas pārlādēšanas GM_setValue('skripta_dati', JSON.stringify(dati)); //nospiežam pogu observeDOM(document.getElementById("PERSON_LIST_GRIDVIEW"), wait_1 ); document.getElementById("search").click(); } function wait_1(m) { var addedNodes = []; //m.forEach(record => record.addedNodes.length & addedNodes.push(...record.addedNodes)); //console.clear(); //console.log('Added:', addedNodes); m.forEach((element) => { //console.log(element); element.addedNodes.forEach((element2)=>{ //console.log(element2.id); if(element2.id=='PERSON_LIST_GRIDVIEW_CallbackState')search_step_3(); } ); }); } //atrastajā sarakstā atvērsim pirmo atrasto ierakstu function search_step_3() { var dati = JSON.parse(GM_getValue('skripta_dati', '[]')); var el1 = document.getElementById("PERSON_LIST_GRIDVIEW_DXMainTable"); var el2=el1.getElementsByClassName("link")[0]; //var el3 = el2.getElementsByTagName("a")[0]; //atzīmējam, ka pēc pārlādēšanas būs 3. solis dati.search_step=4; //saglabājam datus GM lai tie ir pieejami arī pēc lapas pārlādēšanas GM_setValue('skripta_dati', JSON.stringify(dati)); //ejam uz produkta lapu document.location.href = el2.href; } //personas lapā atradīsim datus function search_step_4(dati) { var rez={}; rez.mates_adrese=''; rez.teva_adrese=''; rez.pieteikuma_statuss=''; rez.derigs_ppii=''; rez.derigs_bups=''; var pieteikuma_statuss_atbilst=false; var lidzfinansejuma_pieteikuma_statuss_atbilst=false; var deklarets_jelgava=false; var tevs_deklarets_jelgava=false; var mate_deklareta_jelgava=false; rez.lidzfinansejuma_pieteikuma_statuss=''; var el; //pk el = document.getElementById("content"); el=el.getElementsByClassName("formtable")[0]; el=el.getElementsByTagName("tr")[0]; el=el.getElementsByTagName("td")[1]; el = el.innerHTML; el = el.replace(/^\s+|\s+$/gm,'');//aizvācam liekās atstarpes rez.pk=el; //adrese el = document.getElementById("content"); el=el.getElementsByClassName("formtable")[0]; el=el.getElementsByTagName("tr")[3]; el=el.getElementsByTagName("td")[1]; el = el.innerHTML; rez.adrese=el; if(el.indexOf("Jelgava,")>0)deklarets_jelgava=true; //dzimšanas datums el = document.getElementById("content"); el=el.getElementsByClassName("formtable")[0]; el=el.getElementsByTagName("tr")[4]; el=el.getElementsByTagName("td")[1]; el = el.innerHTML; rez.dz_datums=el; //vecums var datums=el.substring(6, 10)+'-'+el.substring(3, 5)+'-'+el.substring(0, 2) ; var d1 = new Date(datums); var d2 = new Date(); var menesi = DateDiff.inMonths(d1, d2); if(menesi>=18)rez.vecums = 'Jā '+menesi+' m.' else rez.vecums = 'Nē '+menesi+' m.'; //vecāku dati el = document.getElementById("tab-connectedpersons"); el = el.getElementsByTagName("tr"); for (let persona of el) { var el2=persona.getElementsByTagName("td"); if(el2[3])//izlaižam heder rindu { if(el2[3].innerHTML=='Tēvs') { rez.teva_adrese=el2[4].innerHTML; if(el2[4].innerHTML.indexOf("Jelgava,")>0)tevs_deklarets_jelgava=true; } if(el2[3].innerHTML=='Māte') { rez.mates_adrese=el2[4].innerHTML; if(el2[4].innerHTML.indexOf("Jelgava,")>0)mate_deklareta_jelgava=true; } } } //pieteikumi el = document.getElementById("tab-applications"); el=el.getElementsByTagName("tr"); for (let pieteikums of el) { el2=pieteikums.getElementsByTagName("td"); if(el2[4])//izlaižam heder rindu { if(rez.pieteikuma_statuss!='')rez.pieteikuma_statuss+=', '; rez.pieteikuma_statuss+=el2[4].innerHTML; if(el2[4].innerHTML=='Jauns')pieteikuma_statuss_atbilst=true; } } //līdzfinansējuma pieteikumi el = document.getElementById("tab-cofinancing"); el=el.getElementsByTagName("tr"); for (let pieteikums of el) { el2=pieteikums.getElementsByTagName("td"); if(el2[3])//izlaižam heder rindu { if(rez.lidzfinansejuma_pieteikuma_statuss!='')rez.lidzfinansejuma_pieteikuma_statuss+=', '; rez.lidzfinansejuma_pieteikuma_statuss+=el2[3].innerHTML; if(el2[3].innerHTML=='Līgums ir parakstīts un līdzfinansējums ir piešķirts' || el2[3].innerHTML=='Iesniegums saskaņots un līgums sagatavots') { lidzfinansejuma_pieteikuma_statuss_atbilst=true; } } } if(deklarets_jelgava && (tevs_deklarets_jelgava || mate_deklareta_jelgava) && menesi>=18 && lidzfinansejuma_pieteikuma_statuss_atbilst) { rez.derigs_ppii='Jā'; } if(deklarets_jelgava && (tevs_deklarets_jelgava || mate_deklareta_jelgava) && menesi>=18 && pieteikuma_statuss_atbilst && !lidzfinansejuma_pieteikuma_statuss_atbilst) { rez.derigs_bups='Jā'; } //saglabāsim rezultātos dati.results[dati.current_line]=rez; //console.log(dati); if(dati.current_line+1 < dati.lines.length) { //nākošais meklējamais vārds dati.current_line++; search_step_1(dati); }else { //console.log(dati.results); //var textarea = document.getElementById("demo_input_area"); //textarea.value = dati.results.join("\n"); //beidzam processingu var table = document.createElement('table'); table.setAttribute('border', 1); table.setAttribute('style','border-collapse: collapse;'); var tr = document.createElement('tr'); var td1 = document.createElement('td'); var td2 = document.createElement('td'); var td3 = document.createElement('td'); var td4 = document.createElement('td'); var td5 = document.createElement('td'); var td6 = document.createElement('td'); var td7 = document.createElement('td'); var td8 = document.createElement('td'); var td9 = document.createElement('td'); var td10 = document.createElement('td'); var text1 = document.createTextNode('pk'); var text2 = document.createTextNode('dz.dat.'); var text3 = document.createTextNode('adrese'); var text4 = document.createTextNode('tēva adrese'); var text5 = document.createTextNode('mātes adrese'); var text6 = document.createTextNode('pieteikuma statuss rindā'); var text7 = document.createTextNode('līdzfinansējuma pieteikuma (līguma) statuss'); var text8 = document.createTextNode('vecāks par 1,5 gadiem'); var text9 = document.createTextNode('der/neder pPII'); var text10 = document.createTextNode('BUPS'); td1.appendChild(text1); td2.appendChild(text2); td3.appendChild(text3); td4.appendChild(text4); td5.appendChild(text5); td6.appendChild(text6); td7.appendChild(text7); td8.appendChild(text8); td9.appendChild(text9); td10.appendChild(text10); tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); tr.appendChild(td4); tr.appendChild(td5); tr.appendChild(td6); tr.appendChild(td7); tr.appendChild(td8); tr.appendChild(td9); tr.appendChild(td10); table.appendChild(tr); dati.results.forEach((element)=>{ var tr = document.createElement('tr'); var td1 = document.createElement('td'); var td2 = document.createElement('td'); var td3 = document.createElement('td'); var td4 = document.createElement('td'); var td5 = document.createElement('td'); var td6 = document.createElement('td'); var td7 = document.createElement('td'); var td8 = document.createElement('td'); var td9 = document.createElement('td'); var td10 = document.createElement('td'); var text1 = document.createTextNode(element.pk); var text2 = document.createTextNode(element.dz_datums); var text3 = document.createTextNode(element.adrese); var text4 = document.createTextNode(element.teva_adrese); var text5 = document.createTextNode(element.mates_adrese); var text6 = document.createTextNode(element.pieteikuma_statuss); var text7 = document.createTextNode(element.lidzfinansejuma_pieteikuma_statuss); var text8 = document.createTextNode(element.vecums); var text9 = document.createTextNode(element.derigs_ppii); var text10 = document.createTextNode(element.derigs_bups); td1.appendChild(text1); td2.appendChild(text2); td3.appendChild(text3); td4.appendChild(text4); td5.appendChild(text5); td6.appendChild(text6); td7.appendChild(text7); td8.appendChild(text8); td9.appendChild(text9); td10.appendChild(text10); tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); tr.appendChild(td4); tr.appendChild(td5); tr.appendChild(td6); tr.appendChild(td7); tr.appendChild(td8); tr.appendChild(td9); tr.appendChild(td10); table.appendChild(tr); }) var mt = document.getElementById("content"); var br = document.createElement("br"); mt.appendChild(br); br = document.createElement("br"); mt.appendChild(br); mt.appendChild(table); window.name = "ok"; } }