

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

MountSeymour.com - Miscellaneous Scripts

Copyright (c) 2011 Twisted Lime Media Inc. All rights reserved.

Created: 2011-09-15

Revision History:
  0.01	- Initial version. TB, 2011-09-15, 15:33
  
To Do List:
	- "old" blue was #46b0f1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Path */

var MTS_pathOffset = '\/';

var MTS_URL = location.href;
var MTS_URLProtocol = location.protocol;
var MTS_URLHostName = location.hostname;
var MTS_URLPortNumber = location.port;
var MTS_URLPort = MTS_URLPortNumber;
	if (MTS_URLPort != '') {
		MTS_URLPort = ':' + MTS_URLPort;
	};
var MTS_URLPath = location.pathname;
var MTS_URLHash = location.hash;
var MTS_URLSearch = location.search;
var MTS_URLMinusQueryString = MTS_URL;
if ((MTS_URL.indexOf('?') != -1) || (MTS_URL.indexOf('#') != -1)) {
	var MTS_URLMinusQueryStringTemp = '';

	if (MTS_URL.indexOf('?') != -1) {
		MTS_URLMinusQueryStringTemp = MTS_URL.split('?');
		MTS_URLMinusQueryString = MTS_URLMinusQueryStringTemp[0];
	} else if (MTS_URL.indexOf('#') != -1) {
		MTS_URLMinusQueryStringTemp = MTS_URL.split('#');
		MTS_URLMinusQueryString = MTS_URLMinusQueryStringTemp[0];
	};
};
var MTS_URLReconstructed = MTS_URLProtocol + '\/\/' + MTS_URLHostName + MTS_URLPort + MTS_URLPath;


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Browser detection */

var MTS_agent = '';
if (navigator.userAgent) { 
	MTS_agent = navigator.userAgent.toLowerCase();
} else { 
	MTS_agent = navigator.appVersion.toLowerCase();
};
var MTS_is_major = parseInt(navigator.appVersion);
var MTS_is_minor = parseFloat(navigator.appVersion);

var MTS_is_ie = (MTS_agent.indexOf('msie') != -1);
var MTS_is_ie6 = (MTS_is_ie && (MTS_is_major == 4) && (MTS_agent.indexOf('msie 6.0') != -1));
var MTS_is_ie7 = (MTS_is_ie && (MTS_is_major == 4) && (MTS_agent.indexOf('msie 7.0') != -1));
var MTS_is_ie8 = (MTS_is_ie && (MTS_agent.indexOf('msie 8.0') != -1));
var MTS_is_ie9 = (MTS_is_ie && ((MTS_agent.indexOf('msie 9.0') != -1) || ((MTS_agent.indexOf('msie 7.0') != -1) && (MTS_agent.indexOf('trident\/5.') != -1))));
var MTS_is_ie6up = (MTS_is_ie && (MTS_is_ie6 || MTS_is_ie7 || MTS_is_ie8 || MTS_is_ie9));
var MTS_is_ie7up = (MTS_is_ie && (MTS_is_ie7 || MTS_is_ie8 || MTS_is_ie9));
var MTS_is_ie8up = (MTS_is_ie && (MTS_is_ie8 || MTS_is_ie9));

var MTS_is_webkit = (MTS_agent.indexOf('webkit') != -1);

var MTS_is_safari = (MTS_agent.indexOf('safari') != -1);
var MTS_is_safari4 = (MTS_is_safari && (MTS_agent.indexOf('version\/4.0') != -1));
var MTS_is_safari5 = (MTS_is_safari && (MTS_agent.indexOf('version\/5') != -1));
var MTS_is_safari5r0 = (MTS_is_safari && (MTS_agent.indexOf('version\/5.0') != -1));
var MTS_is_safari5r1 = (MTS_is_safari && (MTS_agent.indexOf('version\/5.1') != -1));
var MTS_is_safari_mobile = (MTS_is_safari && (MTS_agent.indexOf('mobile') != -1));

var MTS_is_ipad = (MTS_agent.indexOf('ipad') != -1);
var MTS_is_iphone = (MTS_agent.indexOf('iphone') != -1);
var MTS_is_ipod = (MTS_agent.indexOf('ipod') != -1);
	if (MTS_is_ipod || MTS_is_ipad) {
		MTS_is_iphone = 0;
	};
var MTS_is_safari_mobile = ((MTS_agent.indexOf('version\/5.0') != -1) && (MTS_agent.indexOf('safari mobile') != -1));

var MTS_is_chrome = (MTS_agent.indexOf('chrome') != -1);
	if (MTS_is_chrome) {
		MTS_is_safari = false;
	};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Flash */

MTS_FlashInstalled = 0;
MTS_FlashVersion = 0;
MTS_FlashPlayerVersionRequired = 0;
function MTS_FlashEmbed() {};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Banner */

var MTS_sliderIndex = 0;
var MTS_sliderInterval = 8000;
var MTS_sliderIsAutomatic = 1;
var MTS_sliderIsContinuous = 1;
var MTS_sliderLength = 0;
var MTS_sliderSpeed = 800;
var MTS_sliderIsVertical = 0;
var MTS_sliderTransition = 'slide'; // Choose from 'slide' and 'fade'
	if (MTS_sliderTransition == 'fade') {
		MTS_sliderSpeed = 400;
	};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Parse query string to determine page display modes */

function MTS_splitSearchStringContent(MTS_pCPString, MTS_textToSplitBy) {
	// pCPString = pageConfigParameterString

	MTS_pCPArray = MTS_pCPString.split(MTS_textToSplitBy); // pCPArray = pageConfigParameterArray
	MTS_pCPIndex = MTS_pCPArray.length; // pCPIndex = pageConfigParameterIndex
};

var MTS_searchStringContent = '';
if (MTS_URLSearch) {
	MTS_searchStringContent = MTS_URLSearch.substring(1, MTS_URLSearch.length);
};

if (MTS_searchStringContent != '') {
	MTS_qSS = '&';
	MTS_splitSearchStringContent(MTS_searchStringContent, MTS_qSS);

	for (loop01 = 0; loop01 < MTS_pCPArray.length; loop01++) {
		MTS_cQSE = MTS_pCPArray[loop01]; // currentQueryStringElement

		// Section display preference
		/*
		if (MTS_cQSE == ('sliderIsContinuous=1' || 'sliderIsContinuous=on' || 'sliderIsContinuous=true')) { MTS_sliderIsContinuous = 1; };
		if (MTS_cQSE == ('sliderIsContinuous=0' || 'sliderIsContinuous=off' || 'sliderIsContinuous=false')) { MTS_sliderIsContinuous = 0; };

		if (MTS_cQSE == ('sliderIsAutomatic=1' || 'sliderIsAutomatic=on' || 'sliderIsAutomatic=true')) { MTS_sliderIsAutomatic = 1; };
		if (MTS_cQSE == ('sliderIsAutomatic=0' || 'sliderIsAutomatic=off' || 'sliderIsAutomatic=false')) { MTS_sliderIsAutomatic = 0; };

		if (MTS_cQSE == ('sliderIsVertical=1' || 'sliderIsVertical=on' || 'sliderIsVertical=true')) { MTS_sliderIsVertical = 1; };
		if (MTS_cQSE == ('sliderIsVertical=0' || 'sliderIsVertical=off' || 'sliderIsVertical=false')) { MTS_sliderIsVertical = 0; };

		if (MTS_cQSE == 'sliderTransition=slide') { MTS_sliderTransition = 'slide'; };
		if (MTS_cQSE == 'sliderTransition=fade') { MTS_sliderTransition = 'fade'; };
		*/	
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Transparent image */

var blank_transparent_image = new Image();
	blank_transparent_image.src = MTS_pathOffset + 'template\/images\/blank\/blank_transparent.gif';


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Writing CSS into the page */

var MTS_iSSHTML = '';

MTS_iSSHTML += ' div#header div#menu { display: none; }';
// MTS_iSSHTML += ' div#content { display: none; }';

if (MTS_is_ie) {
	// MTS_iSSHTML += ' hr { width: 100%; margin-top: 0px; } hr.withLeading { margin-top: 0px; }';

	MTS_iSSHTML += ' @font-face { font-family: "PTSansNarrowRegular"; src: url(\/template\/fonts\/pt_sans-narrow-webfont.eot); src: url("\/template\/fonts\/pt_sans_narrow_webfont.eot?#iefix") format("embedded-opentype"); }'; 

	// MTS_iSSHTML += ' ul#primaryNav { filter: alpha(opacity=0); }';
	MTS_iSSHTML += ' ul#primaryNav li { display: inline; }';

	MTS_iSSHTML += ' ul#primaryNav span#primaryNavLowLevelLinks a, ul#primaryNav li.primaryNav a.primaryNav { font-family: "PTSansNarrowRegular"; }'; // font-weight: bold;

	MTS_iSSHTML += ' ul#primaryNav > li > a { font-size: 14px !important; }';
	MTS_iSSHTML += ' ul#primaryNav li ul { padding-top: 0px !important; border-radius: 8px; behavior: url(' + MTS_pathOffset + 'template\/PIE\/PIE_v5.php);  }';

	MTS_iSSHTML += ' ul.secondaryNav li.first, ul.thirdLevelNav li.first { margin-top: -1px !important; background: #ffffff no-repeat top center url(' + MTS_pathOffset + 'template\/images\/_secondary_nav_item_bg_for_ie.png); border-top: 1px solid #e8e8e8 !important; } ul.secondaryNav li.first a, ul.thirdLevelNav li.first a { margin-top: 6px !important; }';

	MTS_iSSHTML += ' #bannerContainer { border-bottom: 1px solid #ffffff; }';
	MTS_iSSHTML += ' #bannerNavContainer { border-top: 1px solid #ffffff; border-bottom: 1px solid #ffffff; }';
	MTS_iSSHTML += ' #bannerNavPanelButtons #bannerNavPanelButtonsInner button { height: 12px; }';

	MTS_iSSHTML += ' div#sidePanelCurrentConditions { margin-top: 0px; border-top: 10px solid #ffffff; }';

	if (!MTS_is_ie7up) {
		MTS_iSSHTML += ' #header, #flashBanner, #primaryNavContainer, #bannerContainerOuter, #content { width: 840px !important; background-image: url(\/template\/images\/_body_bg_009ad0_w_knockout.gif) !important; }';
		MTS_iSSHTML += ' #content { margin-top: -2px !important; }';
		MTS_iSSHTML += ' #footer { width: 840px !important; background-image: url(\/template\/images\/_footer_bg_009ad0.gif) !important; }';

		MTS_iSSHTML += ' ul#primaryNav li.primaryNav a.primaryNav { font-size: 14px !important; }';

		MTS_iSSHTML += ' #bannerContainer { width: 780px !important; border-right: 3px solid #ffffff; border-left: 3px solid #ffffff; }';

		MTS_iSSHTML += ' #bannerNavContainer #bannerNavPrev #bannerNavPrevButton, #bannerNavContainer #bannerNavNext #bannerNavNextButton { background-image: url(\/template\/images\/icons\/_banner_nav_sprite_01_gs.gif) !important; }';
		MTS_iSSHTML += ' #bannerNavPanelButtons { margin-top: -13px; }';
		MTS_iSSHTML += ' #bannerNavPanelButtons #bannerNavPanelButtonsInner button { background-image: url(\/template\/images\/icons\/_banner_nav_sprite_02_gs.gif) !important; }';

		MTS_iSSHTML += ' #logo { position: relative; margin-top: -319px; }';

		MTS_iSSHTML += ' div#sidePanelCurrentConditions { height: 108px; }';
		MTS_iSSHTML += ' div#sidePanelCurrentConditions div.conditionsIcon { padding: 12px; background: no-repeat top center url(\/template\/images\/weather_icon_bg.gif); }';
		MTS_iSSHTML += ' div#sidePanelCurrentConditions div.conditionsIcon img.conditionsIcon { bcakground: none; margin-bottom: 15px; }';

		MTS_iSSHTML += ' .imgPanels { background-image: url(\/template\/images\/panelbg.gif) !important; } div.imgPanels { width: 243px; }';
		MTS_iSSHTML += ' .link_facebook, .link_twitter { background-image: url(\/template\/images\/link_social.gif) !important; }';
	};
};

if (MTS_is_webkit) {
	// MTS_iSSHTML += '';
};

MTS_iSSHTML = '<style type="text\/css"><!-' + '-\n' + MTS_iSSHTML + '\n-' + '-><\/style>'; // media="screen"
if (document.write) {
	document.write(MTS_iSSHTML);
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
jQuery stuff */

// Exists
$.fn.exists = function() { return $(this).length !== 0; };

// Easy Slider
$.fn.easySlider = function() {};

// Livequery
$.fn.livequery = function() {};

// Superfish
$.fn.superfish = function() {};

// Load jQuery extensions
function MTS_pI_loadjQueryExtensions() {
	if (document.write) {
		// document.write('<s' + 'cr' + 'ipt s' + 'rc="' + MTS_pathOffset + '_misc\/jquery_extensions' + '.j' + 's" ty' + 'pe="te' + 'xt\/ja' + 'vas' + 'cr' + 'ip' + 't"><\/s' + 'cr' + 'ip' + 't>');
	};
};
MTS_pI_loadjQueryExtensions();


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Menu reworker
 
* MenuReworker is a class that takes menu data from the server and 
* converts it to HTML structures. It then replaces menus in the document.
*
* Usage:
* MenuReworker.initMenus(menuData); will initialize the object and do the 
* work * of converting JSON data to html structures.
*
* MenuReworker.reworkMenu('menu_id'); will update an existing menu with 
* the new HTML structure for that menu.
*/

var MenuReworker = function () {
	var menus = [];

	// General functions
	/*
	* this function takes link text and formats it based on the rules below.
	*/
	function formatLink ( linkText ) {
		var formatted_link = '';

		if ((linkText.substring(0, 3) == 'http') || 
				(linkText.substring(0, 2) == 'ftp') || 
				(linkText.substring(0, 9) == 'javascript') || 
				(linkText.substring(0, 2) == 'tel') || 
				(linkText.substring(0, 5) == 'mailto') || 
				(linkText.substring(0, 1) == '#')) {
			formatted_link = linkText;
		} else {
			if (linkText == '') { 
				formatted_link = '\/';
			} else if (linkText.substring(0, 1) == '\/') {
				formatted_link = linkText;
			} else {
				formatted_link = MTS_pathOffset + linkText;
			};
		};

		return formatted_link;
	};

	/*
	* for each instance of the word "Link" in the aggregated ID, remove it
	*/
	function removeWordLinkFromId ( aggregatedId ) {
		var contextual_id = aggregatedId;

		while ( contextual_id.indexOf("Link" ) !== -1 ) {
			contextual_id = contextual_id.replace('Link', '');
		};

		return contextual_id;
	};

	/*
	* extra parameters can be supplied in the json.
	* for class parameters, pass the class
	* otherwise loop through the parameters and do a name value pairing in the
	* string as would be expected in html
	*/
	function formatExtraParametersJson ( item ) {
		var extra_class = '';
		var extra_params = '';
		var src_attribute = '';

		if ( item.extra_parameters ) {
			if ( item.extra_parameters["class"] ) {
				extra_class = " " + item.extra_parameters["class"];
			};

			if ( item.extra_parameters["src"] ) {
				src_attribute = " " + formatLink(item.extra_parameters["src"]);
			};

			for ( var p in item.extra_parameters ) {
				if ( p !== "class" && p !== "href" && p !== "src" ) {
					extra_params += ' ' + p + '="' + item.extra_parameters[p].replace("'","\'").replace('"','\"') + '"';
				};
			};
		};

		return [extra_class, extra_params, src_attribute];
	};
	// General functions end

	// Menu parsing functions
	function MTS_parseMenus(doc, ignoreAfterDepth) {
		menus['primaryNav'] = MTS_parseMenu( doc.childNodes, ['primaryNav', 'secondaryNav', 'thirdLevelNav'], 0, 0, '', ignoreAfterDepth);

		// MenuReworker.reworkMenu('primaryNav', MTS_stopLoadingMenuData(1));
		MTS_stopLoadingMenuData(1)
	};

	function MTS_parseMenu(elements, name, depth, count, aggregatedId, ignoreAfterDepth) {
		var menu_html = '';
		var item_id = name[depth]; 
		if ( depth != 0 ) {
			// item_id += depth; // This is the id for the level we are at
		};
		if ( depth != 0 ) { // Don't add the ul for the first level as it is already in the document
			menu_html += '<ul class="' + item_id + '" id="' + removeWordLinkFromId(aggregatedId) + item_id + count + '">';
		};
		var item_count = 0;
		for ( var i = 0; i < elements.length; i++ ) {
			if ( elements[i].tagName === 'menu' || elements[i].tagName === 'item' ) {
				item_count++;
				var built_id = aggregatedId + item_id + 'Link' + item_count;

				menu_html += '<li class="' + item_id + '"';
				menu_html += ' id="' + built_id + 'Container"';
				menu_html += '><a href="' + formatLink(elements[i].getAttribute("href")) + '" class="' + item_id + '"';
				menu_html += ' id="' + built_id + '">';
					menu_html += elements[i].getAttribute("name");

				menu_html += '<\/a>';
				if ( elements[i].childNodes.length > 0 && ignoreAfterDepth > (depth + 1) ) {
					menu_html += MTS_parseMenu(elements[i].childNodes, name, depth + 1, item_count, built_id, ignoreAfterDepth);
						};
				menu_html += '<\/li>';
			};
		};

		if ( depth != 0 ) { // Don't add the ul for the first level as it is already in the document
			menu_html += '<\/ul>';
		};

		return menu_html;
	};
	// Menu parsing functions end

	return {
		initMenus: function (xmlFileName, ignoreAfterDepth) {
			if ( ignoreAfterDepth == null ) {
				ignoreAfterDepth = 99999999; // Set it to something outrageous by default
				ignoreAfterDepth = 5;
			};
			if ( xmlFileName ) {
				var activex_ids = [ 
					'MSXML2.XMLHTTP.3.0', 
					'MSXML2.XMLHTTP', 
					'Microsoft.XMLHTTP' 
				];
				var http_request;

				if (window.XMLHttpRequest) { // Mozilla, Safari, IE7+... 
					http_request = new XMLHttpRequest(); 
					if (http_request.overrideMimeType) { 
						http_request.overrideMimeType('text/xml'); 
					};
				} else if (window.ActiveXObject) { // IE6 and older 
					for (var i = 0; i < activex_ids.length; i++) { 
						try { 
							http_request = new ActiveXObject(activex_ids[i]); 
						} catch (e) {
							
						};
					};
				};

				if (!http_request) { 
					// alert('Unfortunately your browser doesn?t support asynchronous communication.'); 
					return false;
				};

				http_request.onreadystatechange = function() { 
					if (http_request.readyState !== 4) { 
						// not ready yet 
						return; 
					};
					if (http_request.status !== 200) { 
						// ready, but not OK 
						// alert('There was a problem with the request.(Code: ' + http_request.status + ')'); 
						return; 
					};
					MenuReworker.parseMenu(http_request.responseXML, ignoreAfterDepth);
				};

				http_request.open('GET', xmlFileName, true);
				http_request.setRequestHeader('Accept', 'text/xml'); 
				http_request.send(null);
			}
		},
		parseMenu: function ( xml, ignoreAfterDepth ) {
			var doc = (xml.firstChild.nextSibling)? xml.firstChild.nextSibling : xml.firstChild;
			MTS_parseMenus(doc, ignoreAfterDepth); 
		},
		reworkMenu: function ( menuName, callback ) {
			if (($('#' + menuName)) && menus[menuName]) {
				$('#' + menuName).html(menus[menuName]);

				if ( typeof callback == 'function') {
					callback();
				};
			};
		}
	};
}();

// Initialize the menus
var menuLoader = '';
var menuDataLoadCount = 0;
var menuDataLoadLimit = 5;
function MTS_pI_menuInitialization() {
	if (menuDataLoadCount < menuDataLoadLimit) {
		// Start trying to load the menu data
		if (menuLoader != '') {
			MenuReworker.initMenus(MTS_pathOffset + 'template\/xml\/nav.xml', 3);
		};
	} else {
		// Stop trying to load the menu data
		MTS_stopLoadingMenuData(0);
	};

	menuDataLoadCount++;
};

function MTS_stopLoadingMenuData(menuDataLoadSuccess) { // Stop trying to load the JSON menu data
	clearInterval(menuLoader);

	if (menuDataLoadSuccess) {
		// alert('The menu data successfully loaded after ' + menuDataLoadCount + ' attempts...');

		// Load the primary nav, then restyle it
		MenuReworker.reworkMenu('primaryNav'); // , MTS_pI_restyleNav

	} else {
		// alert('The menu data failed to load after ' + menuDataLoadCount + ' attempts...');
	};

	// Restyle the navigation
	MTS_pI_restyleNav();

	// Superfishify the navigation
	MTS_pI_superfishNav();

	// Reclass the navigation
	MTS_pI_reclassNav();

	// Highlight navigation
	MTS_pI_highlightNav();

	// Reposition secondary nav containers
	MTS_pI_repositionSecondaryNavContainers();

	// Animate primary nav
	MTS_pI_animatePrimaryNav();

	// Overwrite this function
	MTS_stopLoadingMenuData = function() {};
};

// Restyle the navigation
function MTS_pI_restyleNav() {;
	if (!MTS_is_ie) {
		$('ul#primaryNav').css({
			// 'padding-top': 29,
			// 'height': 0,
			'opacity': 0
		});
	};
};

// Superfishify the navigation
function MTS_pI_superfishNav() {
	// Superfish
	if (!(MTS_is_ie && !MTS_is_ie7up)) {
		// jQuery( function() {
			$('#primaryNav').superfish();
		// });
	};
};

// Reclass the navigation
function MTS_pI_reclassNav() {
	// Reclass menus/menu items
	$('> ul', $('ul#primaryNav li')).parent().addClass('menuParent');

	// First secondary nav menu items
	$('> li:first', $('ul.secondaryNav')).addClass('first');

	// Last secondary nav menu items
	$('> li:last', $('ul.secondaryNav')).addClass('last');

	// First third level nav menu items
	$('> li:first', $('ul.thirdLevelNav')).addClass('first');

	// Last third level nav menu items
	$('> li:last', $('ul.thirdLevelNav')).addClass('last');
};

// Highlight navigation
function MTS_pI_highlightNav() {
	// All links
	$('a').each( function() {
		if (((MTS_URLProtocol + '\/\/' + MTS_URLHostName + MTS_URLPort + '\/' + $(this).attr('href')) == MTS_URLReconstructed) || ((MTS_URLProtocol + '\/\/' + MTS_URLHostName + MTS_URLPort + $(this).attr('href')) == MTS_URLReconstructed)) {
			$(this).addClass('highlighted').unbind('click').bind('click', function() {
				return false;
			}).bind('contextmenu', function() {
				return false;
			});
		};

		// Remove markup from the title attribute
		thisTitleText = $(this).attr('title');
		$(this).attr('highslideCaption', thisTitleText);
		$(this).attr('title', thisTitleText.replace(/<.*?>/gi, ''));
	});
};

// Reposition secondary nav containers
function MTS_pI_repositionSecondaryNavContainers() {
	if (MTS_is_ie) {
		$('ul.secondaryNav').each( function() {
			$(this).css({
				// 'border': '1px dashed blue',
				'margin-left': ($(this).parent().width() * -1)
			});
		});
	};
};

// Animate primary nav
function MTS_pI_animatePrimaryNav() {
	if (!MTS_is_ie) {
		$('ul#primaryNav').animate({
			// 'padding-top': 7,
			// 'height': 22,
			'opacity': 1
		});
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Banner functions */

// Restyle the banner
function MTS_pI_restyleBanner() {
	if ($('div#bannerContainer').exists() && $('div#bannerContainer div.banner').exists()) {
		if ($('div#bannerContainer div.banner').size() != 0) {
			// Create slide container
			$_bannerContainer = $('div#bannerContainer');
			$_bannerContainer.wrapInner('<div class="slides" />');
			$_banners = $('div#bannerContainer div.banner');

			// Banner nav
			displayBannerNav = ($('div#bannerContainer div.banner').size() > 1);

			// Wrap a link around the banner?
			$_banners.each( function() {
				// Id the banner container, if necessary
				if ($(this).attr('id')) {
					$(this).attr('id', 'banner' + (loop01 + 1));
				};

				// Class slide
				$(this).addClass('slide').wrapInner('<div class="bannerInner" />');

				// Add a link to the banner?
				if ($(' a:last', $(this)).exists()) {
					$(this).attr('linkHref', $(' a:last', $(this)).attr('href'));

					// if (!($(' a:last', $(this)))) {
						$(this).css({
							'cursor': 'pointer'
						}).bind('click', function() {
							/* if (MTS_is_ie) {
								location.href = $(this).attr('linkHref');
							}; */

							$(' a:last', $(this)).triggerHandler('click');
						}).wrap('<a href="' + $(' a:last', $(this)).attr('href') + '"><\/a>');
					// };
				};

				// Replace banner with Flash object?
				if ($(this).attr('flashsrc')) {
					if ((MTS_FlashInstalled == 2) && (MTS_FlashVersion >= MTS_FlashPlayerVersionRequired)) {
						MTS_FlashEmbed($(this).attr('flashsrc'),$(this).attr('id'), MTS_FlashPlayerVersionRequired, 774, 280, 'menu=false,quality=best,wmode=transparent');
					};
				};
			});

			// Banner nav container
			$_bannerNavContainer = $('<div id="bannerNavContainer" \/>');

			// Banner step buttons
			bannerNavStepButtonsHTML = '';
			if (displayBannerNav) {
				bannerNavStepButtonsHTML += '<div id="bannerNavPanelButtons"><div id="bannerNavPanelButtonsInner">';

				for (var loop00 = 0; loop00 < $_banners.size(); loop00++) {
					bannerNavStepButtonsHTML += '<button id="bannerNavPanel' + (loop00 + 1) + 'Button" class="panel' + (loop00 + 1) + 'Button';
					if (loop00 == 0) {
						bannerNavStepButtonsHTML += ' active';
					};
					bannerNavStepButtonsHTML += '" value="" type="button">' + (loop00 + 1) + '<\/button>';
				};

				bannerNavStepButtonsHTML += '<\/div><\/div>';
			};

			// Banner nav left
			$_bannerNavPrev = $('<div id="bannerNavPrev" \/>');

			$_bannerNavPrevButton = $('<img id="bannerNavPrevButton" \/>')
				.attr('title', ' < Previous ')
				.attr('src', blank_transparent_image.src)
				// .addClass('disabled')
				.hover( function() {
					if (!($(this).hasClass('disabled'))) {
						$(this).addClass('hover');
					};
				}, function() {
					$(this).removeClass('hover', 'active');
				})
				.bind('mousedown', function() {
					$(this).addClass('active');
				})
				.bind('mouseup', function() {
					$(this).removeClass('active');
				});

				if (MTS_sliderIsAutomatic) {
					$_bannerNavPrev.css({
						// 'visibility': 'hidden'
					});
				};

			// Banner nav right
			$_bannerNavNext = $('<div id="bannerNavNext" \/>');

			$_bannerNavNextButton = $('<img id="bannerNavNextButton" \/>')
				.attr('title', ' Next > ')
				.attr('src', blank_transparent_image.src)
				// .addClass('disabled')
				.hover( function() {
					if (!($(this).hasClass('disabled'))) {
						$(this).addClass('hover');
					};
				}, function() {
					$(this).removeClass('hover', 'active');
				})
				.bind('mousedown', function() {
					$(this).addClass('active');
				})
				.bind('mouseup', function() {
					$(this).removeClass('active');
				});

				if (MTS_sliderIsAutomatic) {
					$_bannerNavNext.css({
						// 'visibility': 'hidden'
					});
				};

			// Build it
			// if (!MTS_sliderIsAutomatic) {
				$_bannerNavPrev.append($_bannerNavPrevButton);
				$_bannerNavContainer.append($_bannerNavPrev);

				$_bannerNavNext.append($_bannerNavNextButton);
				$_bannerNavContainer.append($_bannerNavNext);

				// $_bannerNavContainer.append($(bannerNavStepButtonsHTML));
			// };

			if ($('#bannerContainer div.banner').size() > 1) {
				$_bannerContainer.after($_bannerNavContainer);

				$('div#bannerContainerOuter').after($(bannerNavStepButtonsHTML));
			};
		};
	} else {
		$_body.addClass('noBanner');
	};
};

// Initialize the banner
function MTS_pI_initializeBanner() {
	$('#bannerContainer').easySlider({ controlsShow: false, vertical: MTS_sliderIsVertical, auto: MTS_sliderIsAutomatic, prevId: 'bannerNavPrevButton', nextId: 'bannerNavNextButton' });
};

// Banner change panel callback, executed once the easySlider mechanism's change panel event completes
function MTS_sliderChangePanelCallback() {
	// alert('The slider panel just changed!')

	$('#bannerNavPanelButtons button').each( function() {
		$(this).removeClass('active');
	});

	if (MTS_sliderIndex == MTS_sliderLength) {
		$('#bannerNavPanelButtons button').eq(0).addClass('active');
		MTS_sliderIndex = 0;
	} else {
		$('#bannerNavPanelButtons button').eq(MTS_sliderIndex).addClass('active');
	};
};

// Fix column height
function MTS_pI_fixColumnHeight() {
	if ($('div.colOne').exists() && $('div.colTwo').exists()) {
		if ($('div.colOne').height() > $('div.colTwo').height()) {
			$('div.colTwo')
				// .removeClass('cc_tallest')
				.css({
					'min-height': ($('div.colOne').height() + 30)
				});

			// $('div.colOne').addClass('cc_tallest');

		} else if ($('div.colTwo').height() > $('div.colOne').height()) {
			// do nothing
		};

		SI.ClearChildren.clear();
	};
};

// Restyle logo for IE6
var blank_transparent_image = new Image(); 
	blank_transparent_image.src = '\/template\/images\/blank\/blank_transparent.gif';

function MTS_pI_restyleLogo() {
	// If it's IE6 (or earlier)
	if (MTS_is_ie && !MTS_is_ie7up) {

		if ($('#logo').attr('src') == blank_transparent_image.src) {
			// return;
		};

		$('#logo')
			.css({
				'width': 180,
				'height': 92,
				'background': 'none',
				'filter': 'progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true,src=' + $('#logo').attr('src') + ')'
			})
			.attr('width', 180)
			.attr('height', 92)
			.attr('src', blank_transparent_image.src);
	};
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Page initialization and finalization */

// Page initialization
function MTS_pI() {
	// Body
	$_body = $('body');

	// Fix column height
	MTS_pI_fixColumnHeight();

	// Menu initialization
	menuLoader = setInterval('MTS_pI_menuInitialization();', 500);

	// Restyle banner
	MTS_pI_restyleBanner();

	// Initialize banner
	MTS_pI_initializeBanner();

	// Restyle logo for IE6
	MTS_pI_restyleLogo();
};

// Additional page initialization
function MTS_aPI() {
	// ?
};


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Window/document level events */

$(document).ready(function() {
	MTS_pI();	// pageInitialization
	MTS_aPI();	// additionalPageInitialization
});


