// arrows **********************************************************************
function initArrows(){
/*
	$('.ads-box .prev').hover(function(){
		$(this).parent().find('.prev-box').show();
	});
	$('.ads-box .next').hover(function(){
		$(this).parent().find('.next-box').show();
	});
	$('.ads-box .prev-box, .ads-box .next-box').mouseleave(function(){
		$(this).hide();
	});*/
}
function initSlideShow(){
	if (typeof $().slideShow == 'function') {
		$('div.f-gallery').slideShow({
			slideEl:'div.slideshow-items > ul > li',
			linkNext:'a.gallery-next',
			linkPrev:'a.gallery-prev',
			numElementLink: false,
			duration:500,
			autoSlideShow:false,
			switchTime:3000
		});
		$('div.info-gallery').slideShow({
			slideParent: 'div.info-gallery-body',
			slideEl:'div.info-gallery-body > ul > li',
			linkNext:'a.next',
			linkPrev:'a.prev',
			numElementLink: false,
			duration:500,
			autoSlideShow:false,
			switchTime:3000
		});
		$('div.photogallery').slideShow({
			slideParent: 'div.info-gallery-body',
			slideEl:'div.gallery-big-body > ul > li',
			linkNext:'a.next',
			linkPrev:'a.prev',
			numElementLink: false,
			duration:500,
			currentEl: 'em.numcur',
			allEl: 'em.numof',
			autoSlideShow:false,
			switchTime:3000
		});
		$('div.home-altro-fadeGall').slideShow({
			slideParent: 'ul.main-list',
			slideEl:'ul.main-list li',
			numElementLink: 'div.nav-list a',
			duration:500,
			autoSlideShow:false
		});
		$('div.home-moda-ES-fadeGall').slideShow({
			slideParent: 'ul.main-list',
			slideEl:'ul.main-list li',
			numElementLink: 'ul.image-list a',
			duration:500,
			autoSlideShow:false
		});
		$('div.home-moda-ES-fadeGall').slideShow({
			slideParent: 'ul.main-list',
			slideEl:'ul.main-list li',
			numElementLink: 'ul.image-list a',
			duration:500,
			autoSlideShow:false
		});
		$('div.home-moda-ES-fadeGall').slideShow({
			slideParent: 'ul.main-list',
			slideEl:'ul.main-list li',
			numElementLink: 'ul.image-list a',
			duration:500,
			autoSlideShow:false
		});
		$('div.bellezza-gallery').slideShow({
			slideParent: 'ul.main-list',
			slideEl:'ul.main-list li',
			numElementLink: 'div.nav-list a',
			duration:500,
			autoSlideShow:false
		});
		if ($('div.home-people-show-carousel').length){
			var _hold = $('.image-list','div.home-people-show-carousel');
			var _close = $('.close-link',_hold);
			var _ul = $('>ul',_hold);
			_close.click(function(){
				if (_ul.is(':visible')){
					_hold.css({height: '320px'}).animate({width: 10},300,function(){
					_ul.hide();
					});
				} else {
					_ul.show();
					_hold.css({height: '320px'}).animate({width: 93},300,function(){
						$(this).css('right',6)
					});
				}
				return false;
			})
			$('div.home-people-show-carousel').slideShow({
				slideParent: 'ul.main-list',
				slideEl:'ul.main-list li',
				numElementLink: 'div.image-list ul a',
				duration:500,
				autoSlideShow:false
			});
		}
	}
	if (typeof $().photogallerySlideShow == 'function') {
		$('div.photogallery2').photogallerySlideShow({
			slideParent: 'div.info-gallery-body',
			slideEl:'div.gallery-big-body > ul > li',
			slideElAdd:'ul.photogallery-items li',
			linkNext:'a.next',
			linkPrev:'a.prev',
			numElementLink: false,
			duration:500,
			currentEl: 'em.numcur',
			allEl: 'em.numof',
			autoSlideShow:false,
			switchTime:3000
		});
	}
}
// corusel *********************************************************************
function initCarusel(){
	if (typeof $().galleryScroll == 'function') {
		$('.post-nav-hover').galleryScroll({
			circleSlide: false,
			btPrev: 'a.prev',
			btNext: 'a.next'
		});
		$('.white-video-carousel').galleryScroll({
			btPrev: 'a.link-prev',
			btNext: 'a.link-next',
			holderList: '> div',
			scrollElParent: ' > ul',
			scrollEl: '> li',
			step: false,
			duration:850
		});
		initOpenClose();
		$('#navigation > li:has(div.sub-menu-holder)').each(function(){
			$('a:first', this).addClass('ful')
		});
	}
	if (typeof $().galleryCircle == 'function') {
		$('.gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			step: 2,
			duration:1000        });
        $('.news-gallery').galleryCircle({
            btPrev: 'a.prev',
            btNext: 'a.next',
            step: 1,
            duration: 1000
        });		
		$('.picture-gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next'
		});
		$('.menu-scrol-holder').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			step: true,
			duration: 200,
			innerMargin: -1
		});
		$('.meglio-gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			duration:500
		});
		$('.video-gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			duration:1000
		});
		$('.s-gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			duration:1000
		});
		$('.small-gallery').galleryCircle({
			btPrev: 'a.prev',
			btNext: 'a.next',
			duration:800
		});
		$('.black-video-carousel').galleryCircle({
			btPrev: 'a.link-prev',
			btNext: 'a.link-next',
			duration:800
		});
		$('.shopping-carousel').galleryCircle({
			btPrev: 'a.link-prev',
			btNext: 'a.link-next',
			duration:900
		});
	}
}

// open close ******************************************************************
function initOpenClose() {
	var _activeClass = 'active';
	var _slideSpeed = 750;
	$('.slide-block').each(function(){
		var _holder = $(this);
		var _t = false;
		_holder.find('.opener').click(function(){
			if(_t) clearTimeout(_t);
			if(!$(this).hasClass('active')){
				$(this).addClass('active');
				$(this).parents('.slide-block').find('.slide-box').slideDown();
			}
			return false;
		}).mouseout(function(){
			if(_t) clearTimeout(_t);
			_t = setTimeout(function(){
				_holder.find('.opener').removeClass('active');
				_holder.find('.slide-box').slideUp();
				_holder.find('.opener').removeClass('active');
			},1000);
		});
		_holder.find('.slide-box').hover(function(){
			if(_t) clearTimeout(_t);
		},function(){
			if(_t) clearTimeout(_t);
			_t = setTimeout(function(){
				_holder.find('.opener').removeClass('active');
				_holder.find('.slide-box').slideUp();
				_holder.find('.opener').removeClass('active');
			},1000);
		});
	});
}
// open close2 ******************************************************************
function initOpenClose2() {
	var _activeClass = 'active';
	var _slideSpeed = 750;
	$('div.select-area').each(function(){
		var _holder = $(this);
		var _opener = _holder.find('a.open');
		var _slider = _holder.find('div.slide');
		var _closer = _holder.find('a.close');
		_opener.click(function(){
			if(_holder.hasClass(_activeClass)) {
				_holder.removeClass(_activeClass);
			} else {
				_holder.addClass(_activeClass);
			}
			return false;
		});
		_closer.click(function(){
			_holder.removeClass(_activeClass);
			return false;
		});
	});
}
// open close3 ******************************************************************
function initOpenClose3() {
	var _durationSlide = 440;
	var _btnOpen = $('.select-open a.open');
	var _activeClass = 'active';
	_btnOpen.each(function(){
		if ($(this).parent().hasClass(_activeClass)){
			var _id = $(this).attr('href');
			var _holder = $(_id);
			_holder.addClass(_activeClass);
		}
	});
	_btnOpen.click(function(){
		$(this).parent().toggleClass(_activeClass);
		var _id = $(this).attr('href');
		var _holder = $(_id);
		if(_holder.hasClass(_activeClass)){
			_holder.slideUp(_durationSlide, function(){
				$(this).removeClass(_activeClass);
			});
		} else {
			
			_holder.hide().addClass(_activeClass).slideDown(_durationSlide);
		}
		return false;
	});
}
function initSlider () {
	var _parentSlide = 'div.slider-holder';
	if (_parentSlide.length){
		var _linkSlide = '.open-close';
		var _slideBlock = 'div.slider-block';
		var _openClass = 'active';
		var _durationSlide = 500;
		$(_parentSlide).each(function(){
			if (!$(this).is('.'+_openClass)) {
				$(this).find(_slideBlock).css('display','none');
			}
		});
		$(_linkSlide,_parentSlide).click(function(){
			if ($(this).parents(_parentSlide).is('.'+_openClass)) {
				$(this).parents(_parentSlide).removeClass(_openClass);
				$(this).parents(_parentSlide).find(_slideBlock).slideUp(_durationSlide);
			} else {
				$(this).parents(_parentSlide).addClass(_openClass);
				$(this).parents(_parentSlide).find(_slideBlock).slideDown(_durationSlide);
			}
			return false;
		});
	}
}
function initSlider2(){
	var _textBlockClass = '.text-expand';
	var _dur = 500;
		if(_textBlockClass.length){
		$(_textBlockClass).each(function(){
			var _this = $(this);
			_this.ht = $(this).height()+'px';
			_this.smallh = ($(this).attr('title') + "px");
			var _btns = $('.hold-text-expand-btn a', _this);
			if ($(this).hasClass('collapsed')) _btns.eq(0).css({display: 'none'});
			else _btns.eq(1).css({display: 'none'});
			$(this).css({height: _this.smallh, overflow: "hidden"}).addClass('collapsed');
			_btns.each(function(){
				$(this).click(function(){
					if ($(this).parents(_textBlockClass).eq(0).hasClass('collapsed')) {
						_this.removeClass('collapsed').animate({height: _this.ht}, _dur);
						_btns.css({display: 'none'}).eq(1).css({display: 'block'});
					} else {
						_this.addClass('collapsed').animate({height: _this.smallh}, _dur);
						_btns.css({display: 'none'}).eq(0).css({display: 'block'});
					}
					return false;
				})
			})
		})
	}
}
function alignElements(){
	var _hold = $('.heading');
	if (_hold.length){
		_hold.each(function(){
			var _this = $(this);
			_this.chld = $(this).children();
			var _maxH = 0;
			_this.chld.each(function(){
				if ($(this).height() > _maxH) _maxH = $(this).height();
			});
			_this.chld.each(function(){
				if ($(this).height() < _maxH) $(this).css({marginTop: (_maxH - $(this).height())/2});
			});
			
		})
	}
}
// Tooltip *********************************************************************
function initTooltip(){
	if (typeof $().easyTooltip == 'function') {
		$("a").each(function(){
			if (($(this).attr('rel')) == 'tooltip') {
				$(this).easyTooltip();
			}
		});
	}
}
function initRatings()
{
	var rates = document.getElementsByTagName("ul");
	for (i = 0; i < rates.length; i ++)
	{
		if (rates[i].className.indexOf("star-rating") != -1)
		{
			rates[i]._lis = rates[i].getElementsByTagName("li");
			rates[i].onmouseover = function() {
				for (k = 0; k < this._lis.length; k++)
				{
					if (this._lis[k].className.indexOf("active") != -1)
					{
						this._active = this._lis[k];
						this._lis[k].className = this._lis[k].className.replace("active", "");
					}
				}
			}
			rates[i].onmouseout = function() {
				if (this._active && this._active.className.indexOf("active") == -1)
				{
					this._active.className += "active";
				}
			}
		}
	}
}

function initTabs()
{
	var sets = document.getElementsByTagName("ul");
	for (var i = 0; i < sets.length; i++)
	{
		if (sets[i].className.indexOf("tabset") != -1)
		{
			var tabs = [];
			var links = sets[i].getElementsByTagName("a");
			for (var j = 0; j < links.length; j++)
			{
				if (links[j].className.indexOf("tab") != -1)
				{
					tabs.push(links[j]);
					links[j].tabs = tabs;
					var c = document.getElementById(links[j].href.substr(links[j].href.indexOf("#") + 1));

					//reset all tabs on start
					if (c) 
						if (links[j].className.indexOf("active") != -1) {
							c.style.position = "static";
							c.style.left = "0px";
							c.style.top = "0px";
						} else {
							c.style.position = "absolute";
							c.style.left = "-9999px";
							c.style.top = "-9999px";
						}

					links[j].onclick = function ()
					{
						var c = document.getElementById(this.href.substr(this.href.indexOf("#") + 1));
						if (c)
						{
							//reset all tabs before change
							for (var i = 0; i < this.tabs.length; i++) {
								document.getElementById(this.tabs[i].href.substr(this.tabs[i].href.indexOf("#") + 1)).style.position = "absolute";
								document.getElementById(this.tabs[i].href.substr(this.tabs[i].href.indexOf("#") + 1)).style.left = "-9999px";
								document.getElementById(this.tabs[i].href.substr(this.tabs[i].href.indexOf("#") + 1)).style.top = "-9999px";
								this.tabs[i].className = this.tabs[i].className.replace("active", "");
							}
							this.className += " active";
							c.style.position = "static";
							c.style.left = "0px";
							c.style.top = "0px";
							return false;
						}
					}
				}
			}
		}
	}
}

function hideFormText() {
	var _inputs = document.getElementsByTagName('input');
	var _txt = document.getElementsByTagName('textarea');
	var _value = [];
	
	if (_inputs) {
		for(var i=0; i<_inputs.length; i++) {
			if (_inputs[i].type == 'text' || _inputs[i].type == 'password') {
				
				_inputs[i].index = i;
				_value[i] = _inputs[i].value;
				
				_inputs[i].onfocus = function(){
					if (this.value == _value[this.index])
						this.value = '';
				}
				_inputs[i].onblur = function(){
					if (this.value == '')
						this.value = _value[this.index];
				}
			}
		}
	}
	if (_txt) {
		for(var i=0; i<_txt.length; i++) {
			_txt[i].index = i;
			_value['txt'+i] = _txt[i].value;
			
			_txt[i].onfocus = function(){
				if (this.value == _value['txt'+this.index])
					this.value = '';
			}
			_txt[i].onblur = function(){
				if (this.value == '')
					this.value = _value['txt'+this.index];
			}
		}
	}
}

function initScript() {
    addClass({
        tagName: 'div',
        tagClass: 'div-class',
        classAdd: 'div-add-class'
    })

    addClass({
        tagName: 'a',
        tagClass: 'open-popup',
        classAdd: 'hover',
        addToParent: true
    })
}

function addClass(_options) {
    var _tagName = _options.tagName;
    var _tagClass = _options.tagClass;
    var _classAdd = _options.classAdd;
    var _addToParent = false || _options.addToParent;
    var _el = document.getElementsByTagName(_tagName);
    if (_el) {
        for (var i = 0; i < _el.length; i++) {
            if (_el[i].className.indexOf(_tagClass) != -1) {
                _el[i].onclick = function() {
                    if (_addToParent) {
                        if (this.parentNode.className.indexOf(_classAdd) == -1) {
                            this.parentNode.className += ' ' + _classAdd;
                        } else {
                            this.parentNode.className = this.parentNode.className.replace(_classAdd, '');
                        }
                    } else {
                        if (this.className.indexOf(_classAdd) == -1) {
                            this.className += ' ' + _classAdd;
                        } else {
                            this.className = this.className.replace(_classAdd, '');
                        }
                    }
                    return false;
                }
            }
        }
    }
}

$(function() {
    initArrows();
    initOpenClose();
    initTooltip();
    initOpenClose3();
    initSlider();
    initSlider2();
    initSlideShow();
    hideFormText();
    initTabs();
    initRatings();
    initScript();
})

$(window).bind('load', function(){
	initCarusel();
	alignElements();
});
