/* Preload images */
(function($) {
  var cache = [];
  $.preLoadImages = function() {
    var args_len = arguments.length;
    for (var i = args_len; i--;) {
      var cacheImage = document.createElement('img');
      cacheImage.src = base_url + "themes/ozlance_com/images/" + arguments[i];
      cache.push(cacheImage);
    }
  }
})(jQuery);

/* Startup */
$(document).ready(function() {
	
    // Process buttons
    ozBuildButtons();
	
	// Adds browser to body
	ozAddBrowserTag();	
	
	// Preload
	$.preLoadImages("button-right_down.png", "button-left_down.png", "button2-right_down.png", "button2-left_down.png", "bbutton-right_down.png", "bbutton-left_down.png", "steps/stepX_o.png");
	
	// Process steps list
	ozBuildSteps();
    
    // After facebox events
    $(document).bind('reveal.facebox', function(){ 
        ozBuildButtons();
    });
    
    // Check height
    //alert ($(document).height() +' < '+$(window).height());
    //if ($(document).height() <= $(window).height()) 
    //        $('#wrapper-outer').css('padding-bottom','35px');
    
});

function ozBuildButtons()
{ 	
    ozBuildButton($('button.style4'),'style4');
	ozBuildButton($('button.style3'),'style3');	
	ozBuildButton($('button.style2'),'style2');	
	ozBuildButton($('button.style1'),'style1');
    ozBuildButton($('#facebox button'),'style1');   
    $('button').not('.button_special').addClass('normal');
}

function ozBuildButton(objs, extraClass)
{
    $(objs).each(function() { 
                
        var obj = $(this);
        var float_orientation = '';        
        if ($(obj).hasClass('fl')) float_orientation = "fl";
        else if ($(obj).hasClass('fr')) float_orientation = "fr";
        else float_orientation = "";        

        obj.not('.button_special').removeClass('normal').addClass('button_special').wrap('<span class="button-1 '+extraClass+' '+float_orientation+'" />').wrap('<span class="button-2 '+extraClass+'" />');	
        obj.mousedown(function(){ $(this).closest('.button-1').addClass('down'); })
            .mouseup(function(){ $(this).closest('.button-1').removeClass('down'); })
            .hover(function(){ }, function(){ $(this).closest('.button-1').removeClass('down'); });
        
        
    });
}

function ozAddBrowserTag()
{
	var browser = jQuery.uaMatch(navigator.userAgent).browser;
	$('body').addClass('browser-'+browser).addClass('version-'+detectBrowserVersion());	
}

function ozBuildSteps()
{	
    if ( $('.steps_list li:last').hasClass('selected')) $('.steps_list-2').addClass('selected');
}

function detectBrowserVersion(){
	var userAgent = navigator.userAgent.toLowerCase();
	$.browser.chrome = /chrome/.test(navigator.userAgent.toLowerCase());
	var version = 0;
	
	// Is this a version of IE?
	if($.browser.msie){
	userAgent = $.browser.version;
	userAgent = userAgent.substring(0,userAgent.indexOf('.'));
	version = userAgent;
	}
	
	// Is this a version of Chrome?
	if($.browser.chrome){
	userAgent = userAgent.substring(userAgent.indexOf('chrome/') +7);
	userAgent = userAgent.substring(0,userAgent.indexOf('.'));
	version = userAgent;
	// If it is chrome then jQuery thinks it's safari so we have to tell it it isn't
	$.browser.safari = false;
	}
	
	// Is this a version of Safari?
	if($.browser.safari){
	userAgent = userAgent.substring(userAgent.indexOf('safari/') +7);
	userAgent = userAgent.substring(0,userAgent.indexOf('.'));
	version = userAgent;
	}
	
	// Is this a version of Mozilla?
	if($.browser.mozilla){
	//Is it Firefox?
	if(navigator.userAgent.toLowerCase().indexOf('firefox') != -1){
	userAgent = userAgent.substring(userAgent.indexOf('firefox/') +8);
	userAgent = userAgent.substring(0,userAgent.indexOf('.'));
	version = userAgent;
	}
	// If not then it must be another Mozilla
	else{
	}
	}
	
	// Is this a version of Opera?
	if($.browser.opera){
	userAgent = userAgent.substring(userAgent.indexOf('version/') +8);
	userAgent = userAgent.substring(0,userAgent.indexOf('.'));
	version = userAgent;
	}
	return version;
} 
