/***************************************************************************
 *       ___ _   _                    ____           _       _
 *      |  _| | | |_ __  _ _  ___    / ___|  ___ _ _(_)_ __ | |_
 *      | |_| |_| | '_ \| '_)/ _ \   \___ \ / __| '_) | '_ \| __| 
 *      |  _|  _  | |_) | | | (_) |   ___) | (__| | | | |_) | |_ 
 *      |_| |_| |_| .__/|_|  \___/   |____/ \___|_| |_| .__/ \__|
 *                |_|  www.fhpro.de                   |_|
 *
 *   Copyright            : (c) 2006 Frank Hinkel
 *   Kontakt              : info@fhpro.de
 *
 ***************************************************************************/

function FhproGalerie()
{}
FhproGalerie.prototype.init = function ()
{
    this.initLayer();
}
FhproGalerie.prototype.initLayer = function ()
{
    var elem=document.createElement("DIV");
    elem.id = 'FHGbg';
    elem.style.left    = '0px';
    elem.style.top     = '0px';
    elem.style.width   = '110%';
    elem.style.height  = '140%';    
    elem.style.position = 'absolute';
    elem.style.overflow = 'hidden';
    elem.style.zIndex   = 990;
    elem.style.display  = 'none';
    elem.style.opacity  = 0.70;
    elem.style.backgroundColor = '#000';
    elem.style.filter   = 'alpha(opacity=70)';      
    document.body.appendChild(elem);

    var elem1=document.createElement("DIV");    
    elem1.style.top      = '0px';
    elem1.style.width    = '100%';
    elem1.align          = 'center';     
    elem1.style.position = 'absolute';
    elem1.style.zIndex   = 991;
    document.body.appendChild(elem1);   
    
    var elem2=document.createElement("DIV");
    elem2.id = 'FHGContent';   
    elem2.style.display  = 'none';   
    elem2.style.width    = '650px';
    elem2.style.height   = '50px';        
    elem2.style.padding  = '5px 5px 5px 5px';
    elem1.appendChild(elem2);
    
    CLweb2.getElem('FHGContent').innerHTML = ' ';
} 
FhproGalerie.prototype.showLayer = function ()
{
    window.scrollTo(0,0);    
    document.body.style.overflow = 'hidden';    

    CLweb2.getElem('FHGbg').style.display = 'block';
    CLweb2.getElem('FHGContent').style.display = 'block';     
}
FhproGalerie.prototype.hideLayer = function ()
{
    document.body.style.overflow = '';    

    CLweb2.getElem('FHGbg').style.display = 'none';
    CLweb2.getElem('FHGContent').style.display = 'none'; 
}
FhproGalerie.prototype.showImage = function (img,w,h)
{
    CLweb2.getElem('FHGContent').innerHTML = '<div style="padding:5px"><img src="' + img + '" width="' + w + '" height="' + h + '" alt="" border="0" /></div>';
    CLweb2.getElem('FHGContent').innerHTML+= '<input type="button" onclick="CLgalerie.hideLayer()" value="schließen">';
    this.showLayer();
    
    alert(CLweb2.getAbsPosition('document').y);
}
function initGalerie()
{
    CLgalerie.init();
}
function hideLayer()
{
    CLgalerie.hideLayer(); 
}

var CLgalerie = new FhproGalerie();
CLweb2.setOnLoad("initGalerie()");

/*** COMMENTS ***/
function FhproComments() {
    this._imageId;
    this._galerieId;
    this.cboxObj;
	this.initialize();
}
FhproComments.prototype = {
    
	initialize: function() 
	{
	    // erst lightbox initalisieren, damit Commentsbox angelegt wird
	    initLightbox();
	    // globale GalerieID
	    this._galerieId = galerieId;
	    this.cboxObj = CLweb2.getElem('CommentsBoxHtml');
	},
	//
	//	switchComments()
	//	hide / show Comments
	//	
	switchComments: function(commentIsDisplay, activeImage)
	{   
        if (!commentIsDisplay)
        {
            // show
            this._imageId = activeImage;
            this.getComments();
        }
        else
            // hide
            this.writeLoadMsg();
	},
	writeLoadMsg: function() 
	{
	    this.cboxObj.innerHTML = '<div class="loadingMsg">lade Kommentare...</div>';	    
	},
	getComments: function()
	{
        var getCommentsObj = new FhproWeb2Ajax();
	    getCommentsObj.debug = false;
	    getCommentsObj.Request('CallBackGetComments','post','/ajax/502','','do=comments&subdo=loadComments&GalerieId=' + this._galerieId + '&GalerieItem=' + this._imageId);	    	    
	},
	submitComment: function()
	{
        var elem = CLweb2.getElem('FormComment');        
        if (elem.value.length < 3)
        {
            alert("Bitte gib einen Kommentar ein.");
            return;
        }   
        var writeCommentsObj = new FhproWeb2Ajax();
	    writeCommentsObj.debug = false;
	    writeCommentsObj.Request('CallBackWriteComments','post','/ajax/502','SendFormComment','do=comments&subdo=saveComment&GalerieId=' + this._galerieId + '&GalerieItem=' + this._imageId);	    	    	    
	}
}
FhproWeb2Ajax.prototype.CallBackWriteComments = function()
{ 
    try 
    {
    	eval(this.request.responseText);
    	 
	    // Bei Fehler abbrechen
	    if (cbObj[0].ErrCode != '-1')
	    {
        	alert(cbObj[0].ErrMsg);
        	return;
    	}        
    	// Reload
    	myComments.getComments(); 
    	myLightbox.setCommentsNumValue(); 
    }
    catch (e) 
    {
    	alert("Konnte Kommentar nicht speichern."); 
		return;
    }    
}
FhproWeb2Ajax.prototype.CallBackGetComments = function()
{ 
    try 
    {
    	eval(this.request.responseText);
    	 
	    // Bei Fehler abbrechen
	    if (cbObj[0].ErrCode != '-1')
	    {
        	alert(cbObj[0].ErrMsg);
        	return;
    	}        
    	
    	myComments.cboxObj.innerHTML = cbObj[1].Content;  
    }
    catch (e) 
    {
    	alert("Konnte Kommentare nicht laden."); 
		return;
    }    
}
var myComments = new FhproComments(); 
 
/*** FOTOALBUM ***/
FhproWeb2Ajax.prototype.CallBackLoadAlbum = function()
{ 
    try 
    {
    	eval(this.request.responseText);     	
    }
    catch (e) 
    {
    	alert("Fotoalbum konnte nicht geladen werden."); 
		return;
    }         
    myFotoalbum.callbackLoadAlbum(cbObj);   
}
FhproWeb2Ajax.prototype.CallBackSaveAlbum = function()
{ 
    myFotoalbum._isSaving = false;
    
    try 
    {
    	eval(this.request.responseText);     	
    }
    catch (e) 
    {
    	alert("Fotoalbum konnte nicht gespeichert werden."); 
		return;
    }         
    myFotoalbum.callbackSaveAlbum(cbObj);   
}
function FhproFotoalbum() {
	this.initialize();
	this._isSaving = false;
	this._loadType = -1;
}
FhproFotoalbum.prototype = {    
	initialize: function() 
	{
        this.loadFotobox();
	},
	loadFotobox: function()
	{
        var loadBoxObj = new FhproWeb2Ajax();
	    loadBoxObj.debug = false;
	    loadBoxObj.Request('CallBackLoadAlbum','post','/ajax/502','','do=fotoalbum&subdo=loadalbum');	    	    	    	    
	},
	callbackLoadAlbum: function(dataObj)
	{
	    if (dataObj[0].ErrCode != '-1')
	    {
	    	alert("Es ist ein Problem aufgetreten\n" + dataObj[0].ErrMsg);	    	
	    	return;
	    }	
	    
	    CLweb2.getElem('fotoalbumBox').innerHTML = dataObj[1].content;	    
	    CLweb2.getElem('AlbumListe').style.visibility = 'visible';
	    
	    if (this._loadType == 1)
	    {
	        this._loadType = -1;
	        myLightbox.addFotoalbum(1);	        
	        var outHTML = '<span style="font-size:8pt;color:#006633;">Bild wurde im Album abgelegt.</span>';
	        CLweb2.getElem('albumStatus').innerHTML = outHTML;		        	        
	    }	    
	    if (this._loadType == 2)
	    {
	        this._loadType = -1;
	        myLightbox.addFotoalbum(1);	        
	        var outHTML = '<span style="font-size:8pt;color:#006633;">Bild wurde in neues Album gelegt.</span>';
	        CLweb2.getElem('albumStatus').innerHTML = outHTML;		        	        
	    }	    
	},
	callbackSaveAlbum: function(dataObj)
	{
	    if (dataObj[0].ErrCode != '-1')
	    {
	    	var outHTML = '<span style="font-size:8pt;color:#c2001e;">'+dataObj[0].ErrMsg+'</span>';
	    	CLweb2.getElem('albumStatus').innerHTML = outHTML;
	    	return;
	    }	
	    
	    if (dataObj[1].albumAction == '1')
	    {
	        this._loadType = 1;
	        this.loadFotobox();
	    }	    
	    if (dataObj[1].albumAction == '2')
	    {
	        this._loadType = 2;
	        this.loadFotobox();
	    }
	},	
	saveFotobox: function(imageId)
	{
	    if (this._isSaving)
	       return;
	       
	    var error = false;
	    var errorMsg = '';
	    
	    var el = CLweb2.getElem('AlbumListe');	    
	    var albumId = parseInt(el.options[el.selectedIndex].value);
	    var albumName = '';
	    var albumBesch = '';
	    var albumBildtext = '';
	    
	    if (CLweb2.getElem('AblumRadio1').checked)
	    {
	        // vorhandenes Album
            var albumAction = 1;
            var albumBildtext = CLweb2.getElem('AlbumBildtext').value
            if (albumId == "-1")
            {
                error = true;
                errorMsg = 'Bitte wähle ein Album aus.';
            }
	    }
	    else
	    {
	        // neues Album
            var albumAction = 2;
            var albumName   = CLweb2.getElem('AlbumName').value;
            var albumBesch  = CLweb2.getElem('AlbumBeschreibung').value;
            
            if (albumName.length < 3)
            {
                error = true;
                errorMsg = 'Bitte gib einen Albumnamen ein.';
            }            
	    }
	    
	    if (!error)
	    {
	        this._isSaving = true;
	        
	        var outHTML = '<span style="font-size:8pt;color:#006633;">Einen Moment, es wird gespeichert...</span>';
	        CLweb2.getElem('albumStatus').innerHTML = outHTML;	 
	        
            var saveBoxObj = new FhproWeb2Ajax();
	        saveBoxObj.debug = false;
	        saveBoxObj.Request('CallBackSaveAlbum','post','/ajax/502','','do=fotoalbum&subdo=savealbum&albumAction='+albumAction+'&albumId='+albumId+'&albumName='+albumName+'&albumBesch='+albumBesch+'&ablumBildtext='+albumBildtext+'&galeriebild='+imageId);		               
	    }
	    else	    
	    {
	        var outHTML = '<span style="font-size:8pt;color:#c2001e;">'+errorMsg+'</span>';
	        CLweb2.getElem('albumStatus').innerHTML = outHTML;
	    }
	}
}

function FhproLogin() {
    
}
FhproLogin.prototype = {  
    initialize: function() 
    {
        var objpreBox = CLweb2.getElem('loginBox'); 
                       
		var objAlpha  = document.createElement("div");
		objAlpha.setAttribute('id','loginBoxAlpha');		
		objAlpha.style.display = 'none';
		objpreBox.appendChild(objAlpha);   

		var objClip = document.createElement("div");
		objClip.setAttribute('id','loginBoxClip');  
		objClip.style.display = 'none';
		objpreBox.appendChild(objClip);			
    },
    showLogin: function()
    {
        var msg = '';
        
        msg += '<div style="margin:5px">';
        msg += '<b>Bitte logge Dich ein und genieße folgende Vorteile:</b><br/>';
        msg += '<div style="margin-top:5px">';
        msg += '- Bilder in Großansicht<br/>';
        msg += '- Bilder auf PC downloaden<br/>';
        msg += '- Bilder als Profilbild verwenden<br/>';
        msg += '- Bilder als MMS auf Dein Handy<br/>';
        msg += '- Bilder im persönlichen Fotoalbum speichern<br/>';
        msg += '- Bild-Kommentare lesen und schreiben<br/>';        
        msg += '</div>';
        msg += '</div>';
        msg += '<div style="text-align:center;margin-top:10px">';
        msg += '<a href="/web-101/anmeldung_bei_kulmbach_aktuell.html">jetzt kostenlos Anmelden</a> | <a href="https://www.kulmbach-aktuell.de/web-113/mein_kulmbach-aktuell.html?doref=1">zum Login</a>';
        msg += '</div>';
        
        this.showMsgBox(msg, true);  
    },
    hideMsgBox: function()
    {        
        CLweb2.getElem('loginBoxAlpha').style.display = 'none';
        CLweb2.getElem('loginBoxClip').style.display = 'none';
    },
    showMsgBox: function(msg, closeButton)
    {
        this.setPosition();
        
        if (closeButton)
            msg += '<div style="text-align:center;margin-top:10px"><img src="/templates/default/images/gif/schliessen.gif" width="68" height="16" style="cursor:pointer" onclick="myLogin.hideMsgBox();" /></div>';
        
        var el = CLweb2.getElem('loginBoxClip');
        el.innerHTML = msg;
        
        CLweb2.getElem('loginBoxAlpha').style.display = 'block';
        CLweb2.getElem('loginBoxClip').style.display = 'block';        
    },
    setPosition: function()
    {
		if (!window.event)
		    // FF
			topHeight = document.body.scrollTop ? document.body.scrollTop : window.pageYOffset;
		else
		    // IE
            topHeight = document.body.scrollTop ? document.body.scrollTop : document.documentElement.scrollTop;

        CLweb2.getElem('loginBoxAlpha').style.top = topHeight + 'px';
        CLweb2.getElem('loginBoxClip').style.top = topHeight + 'px'; 		
    }
}
var myLogin = new FhproLogin();
CLweb2.setOnLoad("myLogin.initialize();"); 
 
