Widget:ToggleFolioNumbers: Difference between revisions

From Dudjom Wiki
VSCode edit
VSCode edit
 
(One intermediate revision by the same user not shown)
Line 2: Line 2:
(function() {
(function() {
   function init() {
   function init() {
    var folios = parent.document.querySelectorAll('span.folio-number');
    if (!folios.length) return;
     var container = parent.document.querySelector('#Tibetan_Text .oo-ui-fieldsetLayout-group');
     var container = parent.document.querySelector('#Tibetan_Text .oo-ui-fieldsetLayout-group');
     if (!container) return;
     if (!container) return;
    // Check at least one folio exists
    if (!parent.document.querySelector('span.folio-number')) return;


     var visible = false;
     var visible = false;
Line 16: Line 16:
       e.preventDefault();
       e.preventDefault();
       visible = !visible;
       visible = !visible;
      // Query fresh each click so all folios are found
      var folios = parent.document.querySelectorAll('span.folio-number');
       for (var i = 0; i < folios.length; i++) {
       for (var i = 0; i < folios.length; i++) {
         folios[i].style.display = visible ? '' : 'none';
         folios[i].style.display = visible ? '' : 'none';

Latest revision as of 18:38, 24 February 2026

<script> (function() {

 function init() {
   var container = parent.document.querySelector('#Tibetan_Text .oo-ui-fieldsetLayout-group');
   if (!container) return;
   // Check at least one folio exists
   if (!parent.document.querySelector('span.folio-number')) return;
   var visible = false;
   var link = parent.document.createElement('a');
   link.href = '#';
   link.textContent = 'Show folio numbers';
   link.onclick = function(e) {
     e.preventDefault();
     visible = !visible;
     // Query fresh each click so all folios are found
     var folios = parent.document.querySelectorAll('span.folio-number');
     for (var i = 0; i < folios.length; i++) {
       folios[i].style.display = visible ?  : 'none';
     }
     link.textContent = visible ? 'Hide folio numbers' : 'Show folio numbers';
   };
   var div = parent.document.createElement('div');
   div.style.textAlign = 'right';
   div.appendChild(link);
   container.insertBefore(div, container.firstChild);
 }
 var observer = new MutationObserver(function(mutations, obs) {
   var container = parent.document.querySelector('#Tibetan_Text .oo-ui-fieldsetLayout-group');
   if (container) {
     obs.disconnect();
     init();
   }
 });
 observer.observe(parent.document.body, { childList: true, subtree: true });

})(); </script>