/**
 * @author Nazin
 * @version $Id: main.js 246 2011-05-23 13:39:21Z nazin $ 
 */

var slider;
var earthquakeI = null;
var shakeRange = 6;
var title;

$(document).ready(function() {
	
	if (document.location.pathname != $('base').attr('href').replace(document.location.protocol + '//' + document.location.host, '')) {
		var base = $('base').attr('href').replace(document.location.protocol + '//' + document.location.host, '');
		//document.location = base + '#' + document.location.pathname.replace(base, '');
	}
	
	$.history.init(initAjaxPages);
	
	$('#navigation ul li a, #logo a, #commercial a, #footer a[rel=l]').click(function(e) {
		
		e.preventDefault();
	 	$.history.load($(this).attr('href').replace('/', ''));
	});
});

function initAjaxPages() {
	loadPage();    
}

function loadPage() {
	
	killEarthquake();
	if (document.location.hash == '') {
		if (!loadAjax) return;
		var url = 'home';
	} else var url = document.location.hash.substring(1);
	$.ajax({
		url: url,
		type: "GET",
		cache: false,
		success: function(html) {
			
			if (html.substring(0, 3) == '404') {
				title = 'Page not found :: Volvic';
				html = html.substring(3);
			} else title = url.substring(0, 1).toUpperCase() + url.substring(1).replace(/-/g, ' ') + ' :: Volvic';
			
			document.title = title;
			
			$('#contentOld').html($('#content').html());
			$('#contentOld object').hide();
			$('#content').hide().html(html).fadeIn(500, function() {
				$('#contentOld').html('');
			});
			$('#navigation ul li a').removeClass('active');
			$("#navigation ul li a[href='" + url + "']").addClass('active');
			
			getFlashMovie('counter').pageChanged(url);
			setTimeout('urlFix()', 250);
		}
	});
}

function urlFix() {
	document.title = title;
}

function earthquake() {
	
	shake('#navigation ul li.home a');
	shake('#navigation ul li.tv a');
	shake('#navigation ul li.sustainability a');
	shake('#navigation ul li.body a');
	shake('#navigation ul li.volcano a');
	shake('#navigation ul li.range a');
	shake('#navigation ul li.products a');
	shake('#filled');
	shake('#commercial');
	
	if (earthquakeI == null)
		earthquakeI = setInterval('earthquake()', 50);
}

function killEarthquake() {
	
	window.clearInterval(earthquakeI);
	earthquakeI = null;
	
	killShake('#navigation ul li.home a');
	killShake('#navigation ul li.tv a');
	killShake('#navigation ul li.sustainability a');
	killShake('#navigation ul li.body a');
	killShake('#navigation ul li.volcano a');
	killShake('#navigation ul li.range a');
	killShake('#navigation ul li.products a');
	killShake('#filled');
	killShake('#commercial');
}

function shake(el) {
	var pos = $(el).position();
	if (Math.random() > 0.5) $(el).css('top', Math.random() * shakeRange < 10 ? (Math.random() * shakeRange * (-1)) : Math.random() * shakeRange);
	else $(el).css('left', Math.random() * shakeRange < 10 ? (Math.random() * shakeRange * (-1)) : Math.random() * shakeRange);
}

function killShake(el) {
	$(el).css('top', 0);
	$(el).css('left', 0);
}

function changePage(pageName) {
	$.history.load(pageName);	
}

function getFlashMovie(movieName) { 
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}
function sendPageName() {
	getFlashMovie('counter').pageChanged(url);
}
