﻿//
var jCache = new Object();
var scrollers = new Array();
var isAppleMobile = false;

//
var settings = new Object();
settings.animFast = 250;
settings.animNormal = 500;
settings.animSlow = 1000;
//
settings.graphic = new Object();
settings.graphic.baseMenuPadding = 23;
//
settings.colors = new Object();
settings.colors.bgColor = 0x9998a8;
settings.colors.bgColorDark = 0x7e7c89;
settings.colors.borderGray = 0x63636d;
settings.colors.textTitle = 0x1a171a;
settings.colors.textSubTitle = 0x3f3d3f;
settings.colors.textWhite = 0xececed;
settings.colors.rose = 0xff9f7c;
settings.colors.news = 0x191619;
settings.colors.concept = 0x9cc199;
settings.colors.contact = 0x794343;
settings.colors.project = 0x9ca4ce;

// fof pop, some aliases
settings.colors.title = settings.colors.textTitle;
settings.colors.title_small = settings.colors.textSubTitle;
settings.colors.projects_selected_gray = 0x787778;
settings.colors.borders = settings.colors.borderGray;

//
$(function(){
	// detect browser (AppleMobile or not)
	if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPad/i)) || (navigator.userAgent.match(/iPod/i)))
		isAppleMobile = true;
	// for tests
	//isAppleMobile = true;
	if(document.location.toString().indexOf('isAppleMobile') != -1)
		isAppleMobile = true;
	//
	//trace.show('isAppleMobile: ' + isAppleMobile);
	//
	jCache.main = $('div#main');
	ShowMain();
	window.setTimeout('ShowMain();', 250);
});

//
function ShowMain()
{
	// show main, hidden by base.css
	if(jCache.main.css('display') == 'none')
		jCache.main.css('display', 'block');
};

//
function FixMenus()
{
	jCache.allMenusItems = jCache.main.find('ul.menu li, ul.list li, ul.listLevel2 li, div.list div[rel="temp"], ul.subSections li');	// main menus, main list, secondary list
	/*
	'div.list div' = Collections > Interiors Items
	'ul.subSections li' = News, Milano Design Week
	*/
	// roll over management
	jCache.allMenusItems.each(function(){
		var j = $(this);
		// clone a
		var a = j.find('a');
		// possibility to exclude links (used in Outlet column 3 - shops)
		if(a.attr('rel') != null && a.attr('rel') == 'exclude')
			return;

		//
		var cloned = a.clone(true);
		cloned.appendTo(j);
		a.css('position', 'absolute');
		cloned.css('background-color', '#' + settings.colors.textWhite.toString(16)).css('position', 'relative').css('left', 0).css('top', 0);

		/*
		// in case in main menu or Press Review > years, rollover color is white, otherwise black
		if(
			j.parent().hasClass('menu')				// main menu
			|| j.parent().parent().hasClass('top')	// Pres Review > years
		)
			cloned.data('color-selected', settings.colors.white);
		*/
		//
		if(j.parents('div.list').length != 0)
			cloned.data('color-selected', settings.colors.projects_selected_gray);	//settings.colors.title_small);
		//
		cloned.css('opacity', 0.0);
		cloned.attr('rel', 'on');
		cloned.css('display', 'block');
		//
		if(j.hasClass('selected'))
		{
			//
			cloned.css('opacity', 1.0);
			if(cloned.data('color-selected'))
				cloned.css('color', '#' + cloned.data('color-selected').toString(16));
			// change image arrow in cloned items (used in News)
			cloned.find('img[src$="/imgs/arrow_right_white.png"]').each(function(){
				$(this).attr('src', env.applicationPath + '/imgs/arrow_right_gray.png');	// $(this).attr('src', env.applicationPath + '/imgs/pix.gif');
			});
		}
		// homepage: clones item color is white anyway
		//if(env != null && env.section == 'Home')
		//	cloned.css('color', '#' + settings.colors.textWhite.toString(16));
	}).bind('mouseenter', function(){
		var j = $(this);
		if(j.hasClass('selected')) return;
		var finalOpacity = 0.5;
		// homepage: selected is fully opaque
		if(env != null && env.section == 'Home')
			finalOpacity = 1.0;
		j.find('a[rel="on"]').animate({'opacity': finalOpacity}, {queue:false, duration:settings.animFast});	//.css('color', '#' + settings.colors.title_small.toString(16));
	}).bind('mouseleave', function(){
		var j = $(this);
		if(j.hasClass('selected')) return;
		j.find('a[rel="on"]').animate({'opacity': 0.0}, {queue:false, duration:settings.animFast});
	});
};

function ScrollersUpdate()
{
	if(scrollers && scrollers.length != 0)
		for(var i = 0; i < scrollers.length; i++)
		{
			//trace.show(i + '. ' + scrollers[i].type);
			switch(scrollers[i].type)
			{
				case 'jScrollPane':
					var api = scrollers[i].obj.data().jsp;
					if(api != null && api.reinitialise != null)
						api.reinitialise();
					break;
				case 'tinyscrollbar':
					if(scrollers[i].obj.update != null)
						scrollers[i].obj.update();
					break;
			}
		}	
};

function ScrollersAdd(jObj, settings)
{
	//
	if(jObj == null || jObj.length == 0)
		return;
	//
	if(scrollers == null)
		scrollers = new Array();

	//
	if(isAppleMobile)
	{
		// apple mobile
		if(jObj.jScrollPane)
			jObj.jScrollPane();
		scrollers.push({obj:jObj, settings:settings, type:'jScrollPane'});
	}
	else
	{
		// standard browser
		if(jObj.tinyscrollbar)
			jObj.tinyscrollbar(settings);
		scrollers.push({obj:jObj, type:'tinyscrollbar'});
	}
};
