/**
 * Läd Gallerien
 *
 */

window.addEvent('domready', function () {
    if($$('.image_gallery')) loadGalleries($$('.image_gallery'));
    if($$('.baby_gallery')) loadBabyGalleries($$('.baby_gallery'));
});

function loadBabyGalleries(galleries){
	galleries.each(function(rawGallery){
	if($(rawGallery).getElements('img').length){
		var imgData = processBabyImages($(rawGallery).getElements('img'));
		if(!$H(imgData).getLength()) return;
		//alert($H(imgData).toQueryString());
		var gallery = new Element('div',{
			'class':'slideshowGallery baby'
		});
		//$(rawGallery).hide();
		gallery.inject($(rawGallery),'top');
		var galleryShow = new Slideshow.KenBurns(gallery,imgData,{
			controller: true,
			height: 200,
			width: 200,
			thumbnails: false,
			paused: false,
			delay: 3000,
			titles: true,
			captions: true,
			//linked: true,
			slimbox: false,
			openEvent: true,
			loader: {'animate': ['fileadmin/templates/02/images/loader-#.png', 12]},
			onOpen: function(link){
				var options = { isLink: true };
				var contentLink = new ContentLink(link,options);
				contentLink.getContent();
				return true;
			}
		});

		//Slimbox.scanPage();

		$(rawGallery).getChildren('.news-menu-baby-latest-item').each(function(el){
			el.hide();
		});
	}
	else return;
	});
}


function processBabyImages(rawImages){
	var images = new Object();
	rawImages.each(function(img){
	if(!$(img).getProperty('src')) return;
	var imgData = new Object();

	/*
		* Elternelement (a-Tag)
		*/
	var parent = false;
	if($(img).getParent()){
		parent = $(img).getParent();
		if($(parent).tagName.toLowerCase() != "a") parent=false;
	}

	if($(parent).getProperty('href')){
		imgData.href = $(parent).getProperty('href');
	}

	/**
		* Bildbeschreibung
		*/
	if($(img).getProperty('title'))
		imgData.caption = $(img).getProperty('title');
	else if($(img).getProperty('alt'))
		imgData.caption = $(img).getProperty('alt');
	else if($(parent).getProperty('title')){
		imgData.caption = $(parent).getProperty('title');
	}
	/*
	else{
		var desc = "";
		if($(parent).getParent()){
			var divContainer = $(parent).getParent();
			alert($(divContainer).tagName);
			alert($(divContainer).getAllNext("p").length);
			if($(divContainer).getAllNext("p").length){
				$(divContainer).getAllNext("p").each(function(nextEl){
					if(nextEl.tagName.toLowerCase() == 'p' && nextEl.innerHTML.toString().length) {
						alert(nextEl.innerHTML);
						if(!desc.toString().length) desc = nextEl.innerHTML.toString();
					}
						
				});
			}
		}	
		if(desc.toString().length) imgData.caption = desc;
	}*/

	images[$(img).getProperty('src')] = imgData;
	}.bind(images));
	return(images);
}

function loadGalleries(galleries){
    galleries.each(function(rawGallery){
        if($(rawGallery).getElements('img').length){
            var imgData = processImages($(rawGallery).getElements('img'));
            if(!$H(imgData).getLength()) return;

            var gallery = new Element('div',{
                'class':'slideshowGallery'
            });
            $(rawGallery).hide();
            gallery.inject($(rawGallery),'before');
            var galleryShow = new Slideshow.KenBurns(gallery,imgData,{
                controller: true,
                height: 300,
                width: 245,
                thumbnails: true,
                paused: false,
                delay: 4000,
                titles: true,
                captions: true,
                linked: true,
                loader: {'animate': ['fileadmin/templates/02/images/loader-#.png', 12]}
            });
            Slimbox.scanPage();

        }
        else return;
    });
}

function processImages(rawImages){
    var images = new Object();
    rawImages.each(function(img){
        if(!$(img).getProperty('src')) return;
        var imgData = new Object();

        /*
         * Elternelement (a-Tag)
         */
        var parent = false;
        if($(img).getParent()){
            parent = $(img).getParent();
            if($(parent).tagName.toLowerCase() != "a") parent=false;
        }

        /**
         * Wenn das Elternelement ein Link ist, wird dies als Bild verwendet
         * 
         */
        if($(parent).getProperty('href')){
            var src = $(parent).getProperty('href');
            imgData.thumbnail = $(img).getProperty('src');
        }else{
            var src = $(img).getProperty('src');
        }

        /**
         * Bildbeschreibung
         */
        if($(img).getProperty('title'))
            imgData.caption = $(img).getProperty('title');
        else if($(img).getProperty('alt'))
            imgData.caption = $(img).getProperty('alt');
        else{
            var descTag = false;
            if(!$(img).getNext()) {
                if($(parent))
                    if($(parent).getNext())
                        if($(parent).getNext().tagName.toLowerCase() == 'p')
                            descTag = $(parent).getNext();
            }else if($(img).getNext().tagName.toLowerCase() == 'p')
                descTag = $(parent).getNext();
            if($(descTag)) {
                imgData.caption = $(descTag).innerHTML;
            }
        }

        images[src] = imgData;
    }.bind(images));
    return(images);
}
