Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name eHázi - Felfújt szóköz
- // @namespace VF@eHazi
- // @description Az összeroskadt szóközöket felfújja, hogy látszódjanak a sorbehúzások a forráskódokban
- // @match https://ehazi.hu/q/*
- // @version 0.1
- // @grant none
- // ==/UserScript==
- let kategoria = document.querySelector('div#__question_page>div>div>div:last-of-type div.w3-center')
- if (! kategoria || ! kategoria.textContent.includes('Informatika')) {
- return
- }
- let stilus = document.createElement('style')
- stilus.textContent = `
- div.us-forraskod-szokoz { white-space: pre-wrap; }
- div.us-forraskod-szokoz br { display: none; }
- `
- document.head.appendChild(stilus)
- function szokozFelfujva()
- {
- if (! document.getElementById('showOriginalQuestionDiv-tarolo')) {
- let kapcsolo = document.getElementById('showOriginalQuestionDiv')
- if (kapcsolo) {
- let fejlec = document.createElement('div')
- fejlec.id = 'showOriginalQuestionDiv-tarolo'
- fejlec.className = 'w3-clear'
- kapcsolo.replaceWith(fejlec)
- kapcsolo.classList.add('w3-left')
- fejlec.appendChild(kapcsolo)
- let ikonTar = document.createElement('div')
- ikonTar.className = 'w3-right'
- fejlec.appendChild(ikonTar)
- }
- }
- let fejlecLista = document.querySelectorAll('div#__question_page>div>div>header+div, div#paginateResponse header, div#showOriginalQuestionDiv-tarolo')
- for (let i = 0, l = fejlecLista.length; i < l; i++) {
- let ikonTar = fejlecLista[i].querySelector('div.w3-right, span.w3-right')
- if (ikonTar.querySelector('a')) {
- continue
- }
- let szoveg = fejlecLista[i].nextElementSibling
- szoveg.firstChild.textContent = szoveg.firstChild.textContent.trimLeft()
- szoveg.lastChild.textContent = szoveg.lastChild.textContent.trimRight()
- let szukseges = /^ /m.test(szoveg.textContent)
- if (szukseges) {
- szoveg.classList.add('us-forraskod-szokoz')
- }
- let link = document.createElement('a')
- link.href = '#'
- link.title = 'Szóköz felfújás'
- link.className = 'w3-margin-left'
- link.addEventListener('click', szokozValtas)
- let ikon = document.createElement('i')
- ikon.className = `fa fa-align-${ szukseges ? 'right' : 'left' } fa-fw w3-text-theme w3-hover-text-green`
- link.appendChild(ikon)
- ikonTar.appendChild(link)
- ikonTar.appendChild(document.createTextNode('Köz'))
- }
- }
- function szokozValtas(esemeny)
- {
- esemeny.preventDefault()
- esemeny.target.parentNode.parentNode.parentNode.nextElementSibling.classList.toggle('us-forraskod-szokoz')
- if (esemeny.target.classList.contains('fa-align-right')) {
- esemeny.target.classList.replace('fa-align-right', 'fa-align-left')
- } else {
- esemeny.target.classList.replace('fa-align-left', 'fa-align-right')
- }
- }
- szokozFelfujva()
- let szkript = document.createElement('script')
- szkript.textContent = `
- ${ szokozFelfujva.toString() }
- ${ szokozValtas.toString() }
- $(document).ajaxSuccess((event, jqXHR, ajaxOptions, data) => ajaxOptions.type == 'GET' && ajaxOptions.url.startsWith('?page=') && szokozFelfujva())
- `
- document.head.appendChild(szkript)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement