Advertisement
VF-

eHázi - Rang ikon

VF-
Dec 6th, 2022 (edited)
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JavaScript 1.73 KB | Source Code | 0 0
  1. // ==UserScript==
  2. // @name        eHázi - Rang ikon
  3. // @namespace   VF@eHazi
  4. // @description Láthatóvá teszi a kérdezők és válaszolók kikommentezett rang ikonjait
  5. // @match       https://ehazi.hu/q/*
  6. // @version     0.0
  7. // @grant       none
  8. // ==/UserScript==
  9.  
  10. function rangIkonMegjelenik()
  11. {
  12.   let rangLista = ['Kezdő', 'Feltörekvő', 'Segítőkész', 'Haladó', 'Profi', 'Mester', 'Nagymester', 'Géniusz', 'Mindentudó']
  13.  
  14.   let tarolo = document.querySelector('div.w3-content>div.w3-row>div.w3-col.m9')
  15.  
  16.   let varakozoLista = [tarolo], talalatLista = [], csomo
  17.   while (csomo = varakozoLista.shift()) {
  18.     for (let i = 0, l = csomo.childNodes.length; i < l; i++) {
  19.       if (csomo.childNodes[i].nodeType == Node.COMMENT_NODE) {
  20.         if (csomo.childNodes[i].textContent.match(/<img.+?>/)) {
  21.           talalatLista.push(csomo.childNodes[i])
  22.         }
  23.       } else if (csomo.childNodes[i].nodeType == Node.ELEMENT_NODE) {
  24.         varakozoLista.push(csomo.childNodes[i])
  25.       }
  26.     }
  27.   }
  28.  
  29.   for (let i = 0, l = talalatLista.length; i < l; i++) {
  30.     let kep = document.createElement('img')
  31.     talalatLista[i].textContent.replace(/(\w+)="([^"]+)"/g, (mind, nev, ertek) => kep.setAttribute(nev, ertek))
  32.  
  33.     let rang
  34.     kep.src = kep.src.replace(/\d+(?=.png)/, szam => rang = szam - 1)
  35.     kep.title = rangLista[rang]
  36.  
  37.     talalatLista[i].parentNode.replaceChild(kep, talalatLista[i])
  38.   }
  39. }
  40.  
  41. rangIkonMegjelenik()
  42.  
  43. let szkript = document.createElement('script')
  44. szkript.textContent = `
  45. ${ rangIkonMegjelenik.toString() }
  46.  
  47. $(document).ajaxSuccess((event, jqXHR, ajaxOptions, data) => ajaxOptions.type == 'GET' && ajaxOptions.url.startsWith('?page=') && rangIkonMegjelenik())
  48. `
  49. document.head.appendChild(szkript)
  50.  
Tags: userscript
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement