Benutzer:Codeispoetry/quickbar.js
Erscheinungsbild
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
if (typeof zeigeversion == 'undefined') var zeigeversion = false; // monobook-Version anzeigen?
if (typeof zeigehilfe == 'undefined') var zeigehilfe = false; // kurze Hilfetexte beim überfahren mit der Maus anzeigen?
var trenner='<hr />';
var br ='<br />';
var showquickbar = true;
var showcompletebar = true;
var qbtarget = '_self';
if (typeof qbnewpage != 'undefined' && qbnewpage) qbtarget = '_blank';
var dropdown = false;
if (typeof usedropdown != 'undefined' && usedropdown) dropdown = true;
var scrpt = '';
var scrptn = 0;
var indropdown;
var ind;
var bar;
var lastSection;
function createBar() {
bar = document.createElement('div');
bar.className = 'portlet';
bar.id = 'p-quickbar';
var head = document.createElement('h5');
head.innerHTML = 'Quickbar';
bar.appendChild(head);
var pbody = document.createElement('div');
pbody.className = "pBody noprint";
if (typeof qbfontsize != 'undefined')
pbody.setAttribute('style', 'font-size:' + qbfontsize + '%;');
bar.appendChild(pbody);
document.getElementById('p-navigation').parentNode.insertBefore(bar, document.getElementById('p-navigation'));
}
function addNewBarSection(title, content) {
var section = document.createElement('div');
section.id = 'qb-' + title;
if (dropdown) {
closedropdown();
var drop = document.createElement('select');
drop.setAttribute('onchange', "dodropdown(this.value);");
drop.setAttribute('style', 'width:135px;font-size:100%;');
section.appendChild(drop);
drop.innerHTML += '<option>'+title+'</option>';
if (typeof content != 'undefined')
drop.innerHTML += content;
indropdown = true;
ind=2;
bar.lastChild.appendChild(section);
lastSection = drop;
} else {
var head = document.createElement('h6');
head.innerHTML = title;
head.setAttribute('style', 'display: none;');
section.appendChild(head);
var secbody = document.createElement('div');
section.appendChild(secbody);
if (typeof content != 'undefined')
secbody.innerHTML = content;
if (bar.lastChild.lastChild != null)
bar.lastChild.appendChild(document.createElement('hr'));
bar.lastChild.appendChild(section);
lastSection = secbody;
}
}
function dodropdown (aktion) {
var zutun = aktion.split('|');
var was = Number(zutun[0]);
var wie = zutun[1];
switch (was) {
case 1 : window.open (wie); break;
case 2 : _doopt (Number(wie)); break;
case 3 : _doopt (Number(wie)); break;
case 4 : _doopt (Number(wie)); break;
} //switch
} //dodropdown
function closedropdown () {
if (indropdown) lastSection.innerHTML += '</select>';
indropdown = false;
}
function w (was,lurl,linktext,targt,title) {
if (!title) title=linktext;
if (!zeigehilfe) title='';
if (!dropdown) {
switch (was) {
case 0 : if (lurl==trenner) addNewBarSection(linktext); else lastSection.innerHTML += lurl; break;
case 1 : lastSection.innerHTML += '<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> '; break;
case 2 : lastSection.innerHTML += '<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a> '; break;
case 3 : lastSection.innerHTML += '<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a> '; break;
case 4 : lastSection.innerHTML += '<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a> '; break;
}
} //if
else //todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand????
{
var ltext='__________'.substr(1,ind)+linktext;
switch (was) {
case 0 : if (lurl==br) { lastSection.innerHTML += '<option>'+linktext+'</option>';ind=2; }
else
if (lurl==trenner) newdropdown(linktext);
break;
case 1 : lastSection.innerHTML += '<option value="1|'+lurl+'">'+ltext+'</option>';break;
case 2 : lastSection.innerHTML += '<option value="2|'+scrptn+'">'+ltext+'</option>';
scrpt=scrpt+'case '+scrptn+':newtext('+lurl+');break;';scrptn++;break;
case 3 : lastSection.innerHTML += '<option value="3|'+scrptn+'">'+ltext+'</option>';
scrpt=scrpt+'case '+scrptn+':insertTagsWrapper('+lurl+');break;';scrptn++;break;
case 4 : lastSection.innerHTML += '<option value="4|'+scrptn+'">'+ltext+'</option>';
scrpt=scrpt+'case '+scrptn+':'+lurl+';break;';scrptn++;break;
} //switch
} //else
} //w
addOnloadHook (function () {createBar(); buildQuickbar(); if (scrpt > '') {
document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>');
scrpt='';
}});