Persönliche Werkzeuge

Vorlage:SH

Aus BogenWiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 22: Zeile 22:
       eSHElem.style.display = 'none';
       eSHElem.style.display = 'none';
       eSHButton.src = '/bogenwiki/images/Symbol_'+sFNShowImg+'.png';
       eSHButton.src = '/bogenwiki/images/Symbol_'+sFNShowImg+'.png';
 +
    }
 +
  }
 +
  function CountSHBD(sSHID)
 +
  {
 +
    console.log('CountSHBD('+SHID+')');
 +
    sNodeSel = 'tr[id^=SH-objrow-'+SHID+']';
 +
    console.log('[CountSHBD()]: NodeSel="'+sNodeSel+'"');
 +
    aNodes = document.querySelectorAll(sNodeSel);
 +
    console.log('[CountSHBD()]: Nodes[].length='+aNodes.length);
 +
    nRowsShown = 0;
 +
    nRowsHidden = 0;
 +
    for (var i = 0; i < aNodes.length; i++) {
 +
      console.log('[CountSHBD()]: Node='+aNodes[i].id+', '+aNodes[i].style.display);
 +
      nRowsShown = (aNodes[i].style.display=='table-row' ? nRowsShown+1 : nRowsShown);
 +
      nRowsHidden = (aNodes[i].style.display=='none' ? nRowsHidden+1 : nRowsHidden);
 +
    }
 +
    return [nRowsShown, nRowsHidden];
 +
  }
 +
  function ShowHideBD(sSHID,sCmd)
 +
  {
 +
    console.log('ShowHideBD('+sSHID+','+sCmd+')');
 +
    switch (sCmd) {
 +
      case 'init':
 +
        break;
 +
      case 'showall':
 +
        break;
 +
      case 'showallavail':
 +
        break;
 +
      case 'showgroup':
 +
        break;
 +
      case 'showgroupavail':
 +
        break;
 +
      case 'hideall':
 +
        break;
 +
      case 'hidegroup':
 +
        break;
 +
      case 'toggleall':
 +
        // determine current state and new state
 +
        [nRowsShown, nRowsHidden] = CountSHBD(sSHID);
 +
        // nRowsShown == 0, nRowsHidden >  0: hideall => showallavail
 +
        // nRowsShown >  0, nRowsHidden >  0: showallavail => showall
 +
        // nRowsShown >  0, nRowsHidden == 0: showall => hideall
 +
        sToggleTo = 'showallavail';
 +
        if (nRowsShown > 0)
 +
          if (nRowsHidden > 0)
 +
            sToggleTo ='showall'
 +
          else
 +
            sToggleTo ='hideall';
 +
        }
 +
        // show/hide rows
 +
        sNodeSel = 'tr[id^=SH-objrow-'+SHID+']';
 +
        aNodes = document.querySelectorAll(sNodeSel);
 +
        console.log('[ShowHideBD()]: Nodes[].length='+aNodes.length);
 +
        for (var i = 0; i < aNodes.length; i++) {
 +
          console.log('[ShowHideBD()]: Node='+aNodes[i].id+', '+aNodes[i].style.display);
 +
          switch (sToggleTo) {
 +
          case 'showall':      aNodes[i].style.display = 'tablew-row';
 +
          case 'showallavail': aNodes[i].style.display = (aNodes[i].id.split('-')[1] == 'objrow' ? 'tablew-row' : 'none');
 +
          case 'hideall':      aNodes[i].style.display = 'none';
 +
          }
 +
        }
 +
        // update button
 +
        sNewImage = '???';
 +
        sNewTitle = '???';
 +
        switch (sToggleTo) {
 +
        case 'showall':      sNewImage = 'ShowMixedT'; sNewTitle = 'Alle vorhandenen anzeigen'; break;
 +
        case 'showallavail': sNewImage = 'HideT';      sNewTitle = 'Alle verbergen'; break;
 +
        case 'hideall':      sNewImage = 'ShowT';      sNewTitle = 'Alle anzeigen'; break;
 +
        }
 +
        console.log('[ShowHideBD()]: sNewImage='+sNewImage+', sNewTitle="'+sNewTitle+'"');
 +
        eHeaderBtn = document.getElementById('SH-headrbtn-'+sSHID);
 +
        eHeaderBtn.src = '/bogenwiki/images/Symbol_'+sNewImage+'.png';
 +
        eHeaderBtn.title = sNewTitle;
 +
        break;
 +
      case 'togglegroup':
 +
        [nRowsShown, nRowsHidden] = CountSHBD(sSHID);
 +
        break;
     }
     }
   }
   }

Version vom 20:19, 1. Okt. 2026


Zeigen/Verbergen:

dies ist ein Test ...
dies ist ein Test ...
dies ist ein Test ...
dies ist ein Test ...