function showArticle(id) {
	fadePage('pageoverlay');
	fadeElement(id);
}

function fadeElement(id) {
    var el      = document.getElementById(id);
    var fade    = (typeof arguments[1] == 'number') ? arguments[1] : false;
    var fadeDir = arguments[2] ? arguments[2] : false;

    if (fadeDir == false) {
        fadeDir = (el.style.display != 'none') ? -1 : 1;
    }
 
    /*
        fadeDir:
            -1 == ausfaden
            +1 == einfaden
    */
    if (fadeDir < 0) {
        fade = fade ? fade - 0.1 : 1;
        if (fade < 0) {
            fade == 0;
            el.style.display = 'none';
            return;
        }
    } else if (fadeDir > 0) {
        el.style.display = 'block';
        fade = (fade !== false) ? fade + 0.1 : 0;
        if (fade > 1) {
            fade = 1;
            return;
        }
    }
 
    el.style.opacity = fade;
    el.style.filter  = 'Alpha(opacity=' + (fade * 100) + ')';
    
    setTimeout('fadeElement("' + id + '", ' + fade + ', ' + fadeDir + ');', 50);
}


function fadePage(id) {

    if (document.getElementById(id) != null){
	var objOverlay = document.getElementById(id);
    } else { 
    	//create overlay div   	
	var objBody = document.getElementsByTagName('body')[0]; 
        var objOverlay = document.createElement("div");
        objOverlay.setAttribute('id',id);
        objOverlay.style.display = 'none';       
        objOverlay.style.height=objBody.offsetHeight +"px";
        objBody.appendChild(objOverlay);
    }

    var fade    = (typeof arguments[1] == 'number') ? arguments[1] : false;
    var fadeDir = arguments[2] ? arguments[2] : false;

    if (fadeDir == false) {
        fadeDir = (objOverlay.style.display != 'none') ? -1 : 1;
    }
    
    var maxFade = 0.7; // =1
    if (fadeDir < 0) {
        fade = fade ? fade - 0.1 : maxFade;
        if (fade < 0) {
            fade == 0;
            objOverlay.style.display = 'none';
            return;
        }

    } else if (fadeDir > 0) {
        objOverlay.style.display = 'block';
        fade = (fade !== false) ? fade + 0.1 : 0;
        if (fade > maxFade) {
            fade = maxFade;
            return;
        }
    }
    objOverlay.style.opacity = fade;
    objOverlay.style.filter  = 'Alpha(opacity=' + (fade * 100) + ')';
    
    setTimeout('fadePage("' + id + '", ' + fade + ', ' + fadeDir + ');', 20);     
}