// jquery plugin JS required for addl effects
(function(jQuery){jQuery.dimensions={version:'1.2'};jQuery.each(['Height','Width'],function(i,name){jQuery.fn['inner'+name]=function(){if(!this[0])return;var torl=name=='Height'?'Top':'Left',borr=name=='Height'?'Bottom':'Right';return this.is(':visible')?this[0]['client'+name]:num(this,name.toLowerCase())+num(this,'padding'+torl)+num(this,'padding'+borr);};jQuery.fn['outer'+name]=function(options){if(!this[0])return;var torl=name=='Height'?'Top':'Left',borr=name=='Height'?'Bottom':'Right';options=jQuery.extend({margin:false},options||{});var val=this.is(':visible')?this[0]['offset'+name]:num(this,name.toLowerCase())+num(this,'border'+torl+'Width')+num(this,'border'+borr+'Width')+num(this,'padding'+torl)+num(this,'padding'+borr);return val+(options.margin?(num(this,'margin'+torl)+num(this,'margin'+borr)):0);};});jQuery.each(['Left','Top'],function(i,name){jQuery.fn['scroll'+name]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(name=='Left'?val:jQuery(window)['scrollLeft'](),name=='Top'?val:jQuery(window)['scrollTop']()):this['scroll'+name]=val;}):this[0]==window||this[0]==document?self[(name=='Left'?'pageXOffset':'pageYOffset')]||jQuery.boxModel&&document.documentElement['scroll'+name]||document.body['scroll'+name]:this[0]['scroll'+name];};});jQuery.fn.extend({position:function(){var left=0,top=0,elem=this[0],offset,parentOffset,offsetParent,results;if(elem){offsetParent=this.offsetParent();offset=this.offset();parentOffset=offsetParent.offset();offset.top-=num(elem,'marginTop');offset.left-=num(elem,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});function num(el,prop){return parseInt(jQuery.curCSS(el.jquery?el[0]:el,prop,true))||0;};})(jQuery);
(function(jQuery){var dropShadowZindex = 1;jQuery.fn.dropShadow = function(options){var opt = jQuery.extend({left: 4,top: 4,blur: 2,opacity: .5,color: "black",swap: false}, options);var jShadows = jQuery([]);this.not(".dropShadow").each(function(){var jthis = jQuery(this);var shadows = [];var blur = (opt.blur <= 0) ? 0 : opt.blur;var opacity = (blur == 0) ? opt.opacity : opt.opacity / (blur * 8);var zOriginal = (opt.swap) ? dropShadowZindex : dropShadowZindex + 1;var zShadow = (opt.swap) ? dropShadowZindex + 1 : dropShadowZindex;var shadowId;if (this.id) {shadowId = this.id + "_dropShadow";} else {shadowId = "ds" + (1 + Math.floor(9999 * Math.random()));}jQuery.data(this, "shadowId", shadowId);jQuery.data(this, "shadowOptions", options);jthis.attr("shadowId", shadowId);jthis.css("zIndex", zOriginal);if (jthis.css("position") != "absolute") {jthis.css({position: "relative",zoom: 1});}bgColor = jthis.css("backgroundColor");if (bgColor == "rgba(0, 0, 0, 0)") bgColor = "transparent";if (bgColor != "transparent" || jthis.css("backgroundImage") != "none" || this.nodeName == "SELECT" || this.nodeName == "INPUT" || this.nodeName == "TEXTAREA") {shadows[0] = jQuery("<div></div>").css("background", opt.color);} else {shadows[0] = jthis.clone().removeAttr("id").removeAttr("name").removeAttr("shadowId").css("color", opt.color);}shadows[0].addClass("dropShadow").css({height: jthis.outerHeight(),left: blur,opacity: opacity,position: "absolute",top: blur,width: jthis.outerWidth(),zIndex: zShadow});var layers = (8 * blur) + 1;for (i = 1; i < layers; i++) {shadows[i] = shadows[0].clone();}var i = 1;var j = blur;while (j > 0) {shadows[i].css({left: j * 2, top: 0});shadows[i + 1].css({left: j * 4, top: j * 2});shadows[i + 2].css({left: j * 2, top: j * 4});shadows[i + 3].css({left: 0, top: j * 2});shadows[i + 4].css({left: j * 3, top: j});shadows[i + 5].css({left: j * 3, top: j * 3});shadows[i + 6].css({left: j, top: j * 3});shadows[i + 7].css({left: j, top: j});i += 8;j--;}var divShadow = jQuery("<div></div>").attr("id", shadowId).addClass("dropShadow").css({left: jthis.position().left + opt.left - blur,marginTop: jthis.css("marginTop"),marginRight: jthis.css("marginRight"),marginBottom: jthis.css("marginBottom"),marginLeft: jthis.css("marginLeft"),position: "absolute",top: jthis.position().top + opt.top - blur,zIndex: zShadow});for (i = 0; i < layers; i++) {divShadow.append(shadows[i]);}jthis.after(divShadow);jShadows = jShadows.add(divShadow);jQuery(window).resize(function() {try {divShadow.css({left: jthis.position().left + opt.left - blur,top: jthis.position().top + opt.top - blur});} catch(e){}});dropShadowZindex += 2;});return this.pushStack(jShadows);};jQuery.fn.redrawShadow = function() {this.removeShadow();return this.each(function() {var shadowOptions = jQuery.data(this, "shadowOptions");jQuery(this).dropShadow(shadowOptions);});};jQuery.fn.removeShadow = function() {return this.each(function() {var shadowId = jQuery(this).shadowId();jQuery("div#" + shadowId).remove();});};jQuery.fn.shadowId = function() {return jQuery.data(this[0], "shadowId");};jQuery(function() {var noPrint = "<style type='text/css' media='print'>";noPrint += ".dropShadow{visibility:hidden;}</style>";jQuery("head").append(noPrint);});})(jQuery);

if(jQuery.browser.msie) {
  try {
    document.execCommand("BackgroundImageCache", false, true);
  } catch(err) {}
}

var xmlData;
var activePosition = '';
var backgroundImage;
// Start function when DOM has completely loaded 
jQuery(document).ready(function(){
    jQuery("#mainCont").append('<div id="bgBar"></div>', '<div id="thumbCont"></div>');
    showPromo('0', true);
    });
    
function xmlLoad(xmlData, isOnload, wch) {
    if(wch == activePosition) return;
    // Loop through all of the "item" tags in the XML file
    jQuery('item',xmlData).each(function(i) {
        var jxmlData = jQuery(this);
        itemPosition = jxmlData.attr("position");
        thumbFontColor = jxmlData.find("thumb").attr("fontColor");
        thumbMoFontColor = jxmlData.find("thumb").attr("moFontColor");
        backgroundColor = jxmlData.find("background").attr("bgColor");
        
        if(isOnload) {
            thumbImage = jxmlData.find("thumbImage").text();
            thumbText = jxmlData.find("thumbText").text();
            thumbLink = jxmlData.find("thumbLink").text();
            buildThumbs(thumbImage, thumbText, thumbLink, itemPosition);
            jQuery("a.roThumb").mouseover(function() {
                jQuery("a.roThumb").css({backgroundColor:"#ffffff", color:"#"+thumbFontColor});
                jQuery(this).css({backgroundColor:"#"+backgroundColor, color:"#"+thumbMoFontColor});
            });
        }
        jQuery("a.roThumb").css({backgroundColor:"#ffffff", color:"#"+thumbFontColor});
        jQuery("a.roThumb > .spanCont").css({backgroundImage:"url("+imagePath+"bg_thumb.png)"});
        jQuery("#thumb"+wch).css({backgroundColor:"#"+backgroundColor, color:"#"+thumbMoFontColor});
        jQuery("#thumb"+wch+" > .spanCont").css({backgroundImage:"url("+imagePath+"bg_thumb_on.png)"});
        if(itemPosition == wch) {
            activePosition = wch;
            jQuery("#mainCont h2, #mainCont h1, #mainCont p, .mainBgImage").remove();
            //set color scheme info vars
            backgroundImage = jxmlData.find("backgroundImage").text();
            bodyFontColor = jxmlData.find("body").attr("fontColor");
            //add the selected h1, h2 & paragraph to the div
            jQuery("#mainCont").append('<h2><span>'+jxmlData.find("tagline").text()+'</span></h2>');
            jQuery("#mainCont").append('<h1><span>'+jxmlData.find("title").text()+'</span></h1>');
            jQuery("#mainCont h1 span, #mainCont h2 span").dropShadow({left: 1, top: 1, blur: 1, opacity: 0.4});
            jQuery("#mainCont").append('<p>'+jxmlData.find("bodyText").text()+'</p>');
            jQuery("#mainCont p").append('<br /><br /><a class="contButton" href="'+jxmlData.find("buttonLink").text()+'"><span>'+jxmlData.find("buttonText").text().toUpperCase()+'</span></a>');
            jQuery(".contButton").css({backgroundImage:"url("+imagePath+buttonBgImg+")"}).dropShadow({left: 2, top: 2, blur: 1});
            jQuery(".contButton span").css({backgroundImage:"url("+imagePath+"bg_contbutton.png)"});
        }
    });

    //add the rest of the selected color scheme and background image
    jQuery("#bgBar").css({backgroundColor:"#"+backgroundColor });
    jQuery("#mainCont").css({color:"#"+bodyFontColor});    
    var bgImage = jQuery('<div>').addClass("mainBgImage").css({backgroundImage:"url("+backgroundImage+")"});
    jQuery("#mainCont").prepend(bgImage);
    jQuery(bgImage).fadeIn('normal');
    jQuery("#mainCont p a").not(".contButton").css({color:"#"+bodyFontColor});
    if(isOnload) {jQuery("a.roThumb").dropShadow({left: 2, top: 2, blur: 1});}
}
 
function showPromo(wch, isOnload) {
    //function that's called onload and onmouseover of thumbs
	jQuery.get(xmlFileLoc,{},function(xml){
	xmlData = xml;
	    if(wch == '0') wch = jQuery(xmlData).find("activeTabOnload").attr("position");
	    xmlLoad( xmlData, isOnload, wch);
	});
}

 function buildThumbs(thumbImage, thumbText, thumbLink, itemPosition) {
    //function that builds the thumbs on page load
    var thumbCont = jQuery('<a id="thumb'+itemPosition+'" class="roThumb" href="'+thumbLink+'"></a>');
    jQuery(thumbCont).append('<img src="'+thumbImage+'" width="100" height="57" />', '<span class="spanCont">'+thumbText.toUpperCase()+'</span>');
    jQuery(thumbCont).mouseover(function() {
    xmlLoad(xmlData, false, itemPosition);
    });
    //write the thumb to the DIV
    jQuery("#thumbCont").append(thumbCont);
}