Common.js: Difference between revisions
Yadasampati (talk | contribs) No edit summary |
Yadasampati (talk | contribs) No edit summary |
||
Line 33: | Line 33: | ||
if (r == 0) continue; | if (r == 0) continue; | ||
var v_text_new = ""; var v_from = 0; | var v_text_new = ""; var v_from = 0; | ||
var marks = JSON.parse(wtbl.rows[r].cells[0].textContent.replaceAll("O", "[").replaceAll("C", "]")); | var marks = JSON.parse(wtbl.rows[r].cells[0].textContent.replaceAll("O", "[").replaceAll("C", "]")); | ||
for (var m = 0; m < marks.length; m++) { | for (var m = 0; m < marks.length; m++) { | ||
v_text_new += | v_text_new += | ||
v_text_old.substr(v_from,marks[m][0]-v_from | v_text_old.substr(v_from,marks[m][0]-v_from) + "<mark>" + | ||
v_text_old.substr(marks[m][0],marks[m][1]-marks[m][0]+1) + "</mark>"; | v_text_old.substr(marks[m][0],marks[m][1]-marks[m][0]+1) + "</mark>"; | ||
v_from = marks[m][1]+1; | v_from = marks[m][1]+1; |
Revision as of 13:09, 18 February 2023
/* Any JavaScript here will be loaded for all users on every page load. */ if (mw.config.get('wgPageName' ) === 'Krishna_says_in_Bhagavad-gita') { /* switch tooltip texts from content-div to label-div */ const v_labels = Array.from(document.getElementsByClassName("tabs-label")); const v_content = Array.from(document.getElementsByClassName("tabs-content")); for (var i = 0; i < v_labels.length; i++) { v_labels[i].title = v_content[i].title; v_content[i].title = ""; } /* adjust wikitables */ var arr = Array.from(document.getElementsByClassName("wikitable")); for (var t = 0; t < arr.length; t++) { /* insert THEAD in wikitable */ var thead = document.createElement("thead"); thead.style.display = "block"; var wtbl = arr[t]; wtbl.insertBefore(thead, wtbl.firstChild); /* move first row of TBODY to THEAD */ thead.appendChild(wtbl.rows[0]); /* make TBODY scrollable */ var body = wtbl.tBodies[0]; body.style.display = "block"; body.style.overflowY = "auto"; body.style.maxHeight = "500px"; /* adjust column widths and hide from-until columns */ for (var r = 0; r < wtbl.rows.length; r++) { wtbl.rows[r].cells[0].classList = "cw_150"; wtbl.rows[r].cells[1].classList = "cw_150"; wtbl.rows[r].cells[2].classList = "cw_500"; var v_text_old = wtbl.rows[r].cells[2].textContent; /* mark the text */ if (r == 0) continue; var v_text_new = ""; var v_from = 0; var marks = JSON.parse(wtbl.rows[r].cells[0].textContent.replaceAll("O", "[").replaceAll("C", "]")); for (var m = 0; m < marks.length; m++) { v_text_new += v_text_old.substr(v_from,marks[m][0]-v_from) + "<mark>" + v_text_old.substr(marks[m][0],marks[m][1]-marks[m][0]+1) + "</mark>"; v_from = marks[m][1]+1; } v_text_new += v_text_old.substr(v_from); wtbl.rows[r].cells[2].innerHTML = v_text_new; } } } if (mw.config.get('wgPageName' ) === 'YadaTest') { /* adjust wikitables */ var arr = Array.from(document.getElementsByClassName("wikitable")); for (var t = 0; t < arr.length; t++) { /* insert THEAD in wikitable */ var thead = document.createElement("thead"); thead.style.display = "block"; var wtbl = arr[t]; wtbl.insertBefore(thead, wtbl.firstChild); /* move first row of TBODY to THEAD */ thead.appendChild(wtbl.rows[0]); /* make TBODY scrollable */ var body = wtbl.tBodies[0]; body.style.display = "block"; body.style.overflowY = "auto"; body.style.maxHeight = "500px"; /* adjust column widths and hide from-until columns */ for (var r = 0; r < wtbl.rows.length; r++) { wtbl.rows[r].cells[0].classList = "cw_0"; wtbl.rows[r].cells[1].classList = "cw_0"; wtbl.rows[r].cells[2].classList = "cw_50"; wtbl.rows[r].cells[3].classList = "cw_150"; wtbl.rows[r].cells[4].classList = "cw_500"; /* mark the text */ var v_from = parseInt(wtbl.rows[r].cells[0].textContent); var v_until = parseInt(wtbl.rows[r].cells[1].textContent); var v_text = wtbl.rows[r].cells[4].textContent; wtbl.rows[r].cells[4].innerHTML = v_text.substr(0,v_from) + "<mark>" + v_text.substr(v_from,v_until - v_from + 1) + "</mark>" + v_text.substr(v_until+1); } } } // install Google Search // document.write('<script type="text/javascript" src="' // + 'http://vanipedia.org/w/index.php?title=MediaWiki:GoogleSearch.js' // + '&action=raw&ctype=text/javascript"></' + 'script>'); // install JQuery //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:JQuery.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install WikEd toolbar and Vanify //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:Vaniquotes.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install Replace //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:TextboxReplace.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install Unify //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:Unify.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install Vanify //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:Vanify.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install Vani_suggest for diacritics auto-suggest pulldown on the search bar //document.write('<script type="text/javascript" src="' //+ 'http://vanipedia.org/w/index.php?title=MediaWiki:Vani_suggest.js' //+ '&action=raw&ctype=text/javascript"></' + 'script>'); // install previous/next links for video categories in all languages //document.write('<script type="text/javascript" src="/navcat/navcat.js"></' + 'script>'); // Buttons //addOnloadHook(function() { //if (document.editform) { //addPortletLink("p-cactions", "javascript:Unify()", "unify", "ca-unify", "Convert Balarama fonts to Unicode", ""); // addPortletLink("p-cactions", "javascript:Vanify()", "vanify", "ca-vanify", "Corrects vani markup", ""); // addPortletLink('p-cactions', 'javascript:format()', 'format', 'ca-format', 'Format article', ''); //addPortletLink('p-cactions', 'javascript:wpTextboxReplace()', 'Replace', 'ca-replace', 'Replaces text in the edit window', 'R'); //} //}); // end Buttons