var ajaxJSHost = (("https:" == document.location.protocol) ? "https://" : "http://") + "www.globalonetechnology.net";
var totalParts = 0;

$(document).ready(function(){
	$.getJSON(ajaxJSHost + '/ajaxdata/getfeatured.asp?format=json&callback=?', function(data) {
		$ul = $("<ul></ul>");
		$.each(data.servers, function(i,item) {
			$("<a></a>").attr("href",item.URL).html(item.DisplayName).appendTo($("<li></li>").appendTo($ul));
		});
		$("#display_menu_dynamic").html($ul);

		$div = $("<div></div>");
		$.each(data.products, function(i, item) {
			$("<h3></h3>").html("FEATURED ITEM").appendTo($div);
			$("<span></span>").addClass("partno").html($("<a></a>").attr("href",item.URL).html(item.ID)).appendTo($div);
			$("<span></span>").addClass("image").html($("<a></a>").attr("href",item.URL).html($("<img />").attr("src",item.PhotoURL))).appendTo($div);
			$("<span></span>").addClass("regprice").html(item.Price).formatCurrency().prepend($("<strong>Regular Price:</strong> ")).appendTo($div);
			$("<span></span>").addClass("saleprice").html(item.SalePrice).formatCurrency().prepend($("<strong>Sale Price:</strong> ")).appendTo($div);
		});
		$("#col3").html($div)

		$.each(data.onsale, function(i, item) {
			$div = $("<div></div>");
			$("<h3></h3>").html("ON SALE TODAY").appendTo($div);
			$("<span></span>").addClass("partno").html($("<a></a>").attr("href",item.URL).html(item.ID)).appendTo($div);
			$("<span></span>").addClass("image").html($("<a></a>").attr("href",item.URL).html($("<img />").attr("src",item.PhotoURL))).appendTo($div);
			$("<span></span>").addClass("regprice").html(item.Price).formatCurrency().prepend($("<strong>Regular Price:</strong> ")).appendTo($div);
			$("<span></span>").addClass("saleprice").html(item.SalePrice).formatCurrency().prepend($("<strong>Sale Price:</strong> ")).appendTo($div);
			$div.appendTo($("#col3"));
		});
	});

	$.getJSON(ajaxJSHost + '/ajaxdata/getordersjson.asp?format=json&callback=?', function(data) {
		$ul = $("<ul></ul>");
		$.each(data.items, function(i,item) {
			$("<li></li>").html("Just Sold: " + item.Quantity + "x " + item.ProductCode + " to " + item.Initials + " in " + item.City + ", " + item.State).appendTo($ul);
		});
		$("#justsold").html($ul);
		nextDelay = (Math.floor(Math.random()*90)+30)*1000; //30 - 90 seconds
		setTimeout("doOrderScroll(16, 10000)",nextDelay);
		//doOrderScroll(16, 10000);
	});
});

function doOrderScroll(dist, delay) {
	$("#justsold>ul").animate( {
		'top': '-=' + dist + 'px'
	}, 1000, 'swing', function() {
		if (delay == 10000) {
			//we're currently scrolling it to appear, so set it to scroll to disappear after 10 seconds, followed by a random delay
			nextDelay = (Math.floor(Math.random()*60)+180)*1000; //60 - 180 seconds
			setTimeout("doOrderScroll(16, " + nextDelay + ")",delay);
		} else {
			//we just scrolled it to disappear, so after the random delay that was passed in, have it scroll again with a future delay of 10 seconds
			setTimeout("doOrderScroll(16, 10000)",delay);
		}
	});
}

var combobox_parts = null;
var combobox_parts_default = "";
var combobox_models = null;
var combobox_models_default = "";
(function( $ ) {
	$.widget( "ui.combobox_parts", {
		_create: function() {
			var self = this;
			var select = this.element.hide();
			var defaultValue = combobox_parts_default = select.children( "[value=]" ).text();
			selected = select.children( ":selected" ),
			value = selected.val() ? selected.text() : "";
			var input = $( "<input>" )
				.insertAfter( select )
				.val( defaultValue )
				.autocomplete({
					delay: 200,
					minLength: 0,
					source: function( request, response ) {
						select.children().not(':first').remove();
						$.getJSON(ajaxJSHost + '/ajaxdata/getpartsjson.asp?format=json&term=' + request.term + '&callback=?', function(data) {
							$.map(data.items, function(item) {
								select.
									append($("<option></option>").
										attr("value",item.ProductCode).
										text("<strong>" + item.ProductCode + "</strong>:<br/>" + item.DisplayName.substring(0,26) + (item.DisplayName.length>26?'&hellip;':'')));
							})
							totalParts = data.count;
							response( select.children( "option" ).map(function() {
								var text = $( this ).text();
								if ( this.value )
									return {
										label: text,
										value: this.value,
										option: this
									};
							}) );
						});
					},
					select: function( event, ui ) {
						ui.item.option.selected = true;
						select.val( ui.item.option.value );
						self._trigger( "selected", event, {
							item: ui.item.option
						});
						window.location = "/SearchResults.asp?ExtensiveSearch=N&Search=" + ui.item.option.value;
					},
					change: function( event, ui ) {
						if ( !ui.item ) {
							var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
								valid = false;
							select.children( "option" ).each(function() {
								if ( this.value.match( matcher ) ) {
									this.selected = valid = true;
									return false;
								}
							});
							if ( !valid ) {
								// remove invalid value, as it didn't match anything
								//$( this ).val( defaultValue );
								select.val( "" );
								return false;
							}
						}
					}
				})
				.focus(function( event, ui ) {
					if (this.value == defaultValue) {
						$( this ).val( "" );
					}
				})
				.blur(function( event, ui ) {
					if (this.value == "") {
						$( this ).val( defaultValue );
					}
				})
				.bind("keydown",function (l) {
					if (l.keyCode==10 || l.keyCode==13) {
						//$("#search_box").val($(this).val());
						$("form#search").submit();
						return false;
					}
				})
				.addClass( "ui-widget ui-widget-content ui-corner-left" );

			input.data( "autocomplete" )._renderItem = function( ul, item ) {
				return $( "<li></li>" )
					.data( "item.autocomplete", item )
					.append( "<a>" + item.label + "</a>" )
					.appendTo( ul );
			};
			input.data( "autocomplete" )._renderMenu = function( ul, items ) {
				var self = this;
				var num = items.length;
				var of = totalParts;
				//alert(num + " of " + of);
				if (num<of) {
					$("<li></li>").attr("style","line-height: 18px;height: 18px;text-align: center;").html("<small><i>Displaying " + num + " of " + of + " matches</i></small>").appendTo(ul);
				}
				$.each( items, function( index, item ) {
					self._renderItem( ul, item );
				});
			};

			$( "<button>&nbsp;</button>" )
				.attr( "tabIndex", -1 )
				.attr( "title", "Show All Items" )
				.insertAfter( input )
				.button({
					icons: {
						primary: "ui-icon-triangle-1-s"
					},
					text: false
				})
				.removeClass( "ui-corner-all" )
				.addClass( "ui-corner-right ui-button-icon" )
				.click(function() {
					// close if already visible
					if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
						input.autocomplete( "close" );
						return false;
					}
					if (input.val() == defaultValue) {
						return false;
						//input.val( "" );
					}

					// pass empty string as value to search for, displaying all results
					input.autocomplete( "search", input.val());
					input.focus();
					return false;
				});
			combobox_parts = input;
		}
	});
	$.widget( "ui.combobox_models", {
		_create: function() {
			var self = this;
			var select = this.element.hide();
			$.getJSON(ajaxJSHost + '/ajaxdata/getmodelsjson.asp?format=json&callback=?', function(data) {
				$.map(data.items, function(item) {
					select.
						append($("<option></option>").
							attr("title",item.Model).
							attr("value",item.URL).
							text("<strong>" + item.Model + "</strong>:<br/>" + item.DisplayName));
				});
			});
			var defaultValue = combobox_models_default = select.children( "[value=]" ).text();
			selected = select.children( ":selected" ),
			value = selected.val() ? selected.text() : "";
			var input = $( "<input>" )
				.insertAfter( select )
				.val( defaultValue )
				.autocomplete({
					delay: 0,
					minLength: 0,
					source: function( request, response ) {
						var matcher = new RegExp( $.ui.autocomplete.escapeRegex(request.term), "i" );
						response( select.children( "option" ).map(function() {
							var text = $( this ).text();
							if ( this.value && ( !request.term || matcher.test(text) ) )
								return {
									label: (request.term==""?text:text.replace(
										new RegExp(
											"(?![^&;]+;)(?!<[^<>]*)(" +
											$.ui.autocomplete.escapeRegex(request.term) +
											")(?![^<>]*>)(?![^&;]+;)", "gi"
										), "<strong>$1</strong>" )),
									value: this.title,
									option: this
								};
						}) );
					},
					select: function( event, ui ) {
						ui.item.option.selected = true;
						select.val( ui.item.option.title );
						self._trigger( "selected", event, {
							item: ui.item.option
						});
						window.location = ui.item.option.value;
					},
					change: function( event, ui ) {
						if ( !ui.item ) {
							var matcher = new RegExp( "^" + $.ui.autocomplete.escapeRegex( $(this).val() ) + "$", "i" ),
								valid = false;
							select.children( "option" ).each(function() {
								if ( this.value.match( matcher ) ) {
									this.selected = valid = true;
									return false;
								}
							});
							if ( !valid ) {
								// remove invalid value, as it didn't match anything
								//$( this ).val( defaultValue );
								select.val( "" );
								return false;
							}
						}
					}
				})
				.focus(function( event, ui ) {
					if (this.value == defaultValue) {
						$( this ).val( "" );
					}
				})
				.blur(function( event, ui ) {
					if (this.value == "") {
						$( this ).val( defaultValue );
					}
				})
				.bind("keydown",function (l) {
					if (l.keyCode==10 || l.keyCode==13) {
						//$("#search_box").val($(this).val());
						//$("form#search").submit();
						return false;
					}
				})
				.addClass( "ui-widget ui-widget-content ui-corner-left" );

			input.data( "autocomplete" )._renderItem = function( ul, item ) {
				return $( "<li></li>" )
					.data( "item.autocomplete", item )
					.append( "<a>" + item.label + "</a>" )
					.appendTo( ul );
			};

			$( "<button>&nbsp;</button>" )
				.attr( "tabIndex", -1 )
				.attr( "title", "Show All Items" )
				.insertAfter( input )
				.button({
					icons: {
						primary: "ui-icon-triangle-1-s"
					},
					text: false
				})
				.removeClass( "ui-corner-all" )
				.addClass( "ui-corner-right ui-button-icon" )
				.click(function() {
					// close if already visible
					if ( input.autocomplete( "widget" ).is( ":visible" ) ) {
						input.autocomplete( "close" );
						return false;
					}
					if (input.val() == defaultValue) {
						input.val( "" );
					}

					// pass empty string as value to search for, displaying all results
					input.autocomplete( "search", "" );
					input.focus();
					return false;
				});
			combobox_models = input;
		}
	});
})(jQuery);

$(document).ready(function(){
	$("#parts").combobox_parts();
	$("#servermodel").combobox_models();
	$("#search_nojquery").hide();
	$("#search_jquery").show();
	$("#search_box").bind("keydown",function (l) {
		if (l.keyCode==10 || l.keyCode==13) {
			$("form#search").submit();
			return false;
		}
	});
	
});

(function($){$.formatCurrency={};$.formatCurrency.regions=[];$.formatCurrency.regions[""]={symbol:"$",positiveFormat:"%s%n",negativeFormat:"(%s%n)",decimalSymbol:".",digitGroupSymbol:",",groupDigits:true};
$.fn.formatCurrency=function(destination,settings){if(arguments.length==1&&typeof destination!=="string"){settings=destination;destination=false
}var defaults={name:"formatCurrency",colorize:false,region:"",global:true,roundToDecimalPlace:2,eventOnDecimalsEntered:false};defaults=$.extend(defaults,$.formatCurrency.regions[""]);
settings=$.extend(defaults,settings);if(settings.region.length>0){settings=$.extend(settings,getRegionOrCulture(settings.region))}settings.regex=generateRegex(settings);
return this.each(function(){$this=$(this);var num="0";num=$this[$this.is("input, select, textarea")?"val":"html"]();if(num.search("\\(")>=0){num="-"+num
}if(num===""||(num==="-"&&settings.roundToDecimalPlace===-1)){return}if(isNaN(num)){num=num.replace(settings.regex,"");if(num===""||(num==="-"&&settings.roundToDecimalPlace===-1)){return
}if(settings.decimalSymbol!="."){num=num.replace(settings.decimalSymbol,".")}if(isNaN(num)){num="0"}}var numParts=String(num).split(".");var isPositive=(num==Math.abs(num));
var hasDecimals=(numParts.length>1);var decimals=(hasDecimals?numParts[1].toString():"0");var originalDecimals=decimals;num=Math.abs(numParts[0]);
num=isNaN(num)?0:num;if(settings.roundToDecimalPlace>=0){decimals=parseFloat("1."+decimals);decimals=decimals.toFixed(settings.roundToDecimalPlace);
if(decimals.substring(0,1)=="2"){num=Number(num)+1}decimals=decimals.substring(2)}num=String(num);if(settings.groupDigits){for(var i=0;i<Math.floor((num.length-(1+i))/3);
i++){num=num.substring(0,num.length-(4*i+3))+settings.digitGroupSymbol+num.substring(num.length-(4*i+3))}}if((hasDecimals&&settings.roundToDecimalPlace==-1)||settings.roundToDecimalPlace>0){num+=settings.decimalSymbol+decimals
}var format=isPositive?settings.positiveFormat:settings.negativeFormat;var money=format.replace(/%s/g,settings.symbol);money=money.replace(/%n/g,num);
var $destination=$([]);if(!destination){$destination=$this}else{$destination=$(destination)}$destination[$destination.is("input, select, textarea")?"val":"html"](money);
if(hasDecimals&&settings.eventOnDecimalsEntered&&originalDecimals.length>settings.roundToDecimalPlace){$destination.trigger("decimalsEntered",originalDecimals)
}if(settings.colorize){$destination.css("color",isPositive?"black":"red")}})};$.fn.toNumber=function(settings){var defaults=$.extend({name:"toNumber",region:"",global:true},$.formatCurrency.regions[""]);
settings=jQuery.extend(defaults,settings);if(settings.region.length>0){settings=$.extend(settings,getRegionOrCulture(settings.region))}settings.regex=generateRegex(settings);
return this.each(function(){var method=$(this).is("input, select, textarea")?"val":"html";$(this)[method]($(this)[method]().replace("(","(-").replace(settings.regex,""))
})};$.fn.asNumber=function(settings){var defaults=$.extend({name:"asNumber",region:"",parse:true,parseType:"Float",global:true},$.formatCurrency.regions[""]);
settings=jQuery.extend(defaults,settings);if(settings.region.length>0){settings=$.extend(settings,getRegionOrCulture(settings.region))}settings.regex=generateRegex(settings);
settings.parseType=validateParseType(settings.parseType);var method=$(this).is("input, select, textarea")?"val":"html";var num=$(this)[method]();
num=num?num:"";num=num.replace("(","(-");num=num.replace(settings.regex,"");if(!settings.parse){return num}if(num.length==0){num="0"}if(settings.decimalSymbol!="."){num=num.replace(settings.decimalSymbol,".")
}return window["parse"+settings.parseType](num)};function getRegionOrCulture(region){var regionInfo=$.formatCurrency.regions[region];if(regionInfo){return regionInfo
}else{if(/(\w+)-(\w+)/g.test(region)){var culture=region.replace(/(\w+)-(\w+)/g,"$1");return $.formatCurrency.regions[culture]}}return null}function validateParseType(parseType){switch(parseType.toLowerCase()){case"int":return"Int";
case"float":return"Float";default:throw"invalid parseType"}}function generateRegex(settings){if(settings.symbol===""){return new RegExp("[^\\d"+settings.decimalSymbol+"-]","g")
}else{var symbol=settings.symbol.replace("$","\\$").replace(".","\\.");return new RegExp(symbol+"|[^\\d"+settings.decimalSymbol+"-]","g")}}})(jQuery);

function showMyPlayListVideos(data) {
	$("#player").html("");
	var feed = data.feed;
	var entries = feed.entry || [];
	var list = $("<ul></ul>");
	list.addClass("filmstrip")
	for (var i = 0; i < entries.length; i++) {
		var entry = entries[i];
		var id = entry.media$group.yt$videoid.$t;
		var title = entry.title.$t;
		var url = entry.link[0].href;
		var thumb = entry.media$group.media$thumbnail[0].url;
		list.append('<li><img src="'+thumb+'" alt="'+ title +'" /></a></li>');
		var html = '<div class="panel" title="' + title + '"><div id="video'+i+'"></div></div>';
		$("#player").append(html);
	}
	$("#player").append(list);
	$("#player").galleryView({panel_width: 468,
							 panel_height: 350,
							 frame_width: 120,
							 frame_height: 90,
							 transition_interval: 0
							});
	for (var i = 0; i < entries.length; i++) {
		var entry = entries[i];
		var id = entry.media$group.yt$videoid.$t;
		insertFlash(id, 'video'+i);
	}
}

var autoplay = 0; // 0:false, 1:true //;
var allowFullScreen = 1; // 0:false, 1:true //;
var showRelatedVideos = 0; // 0:false, 1:true //;
var backGroundColor = "#070e07"; // for video player flash object //;

function insertFlash(VIDEO_ID, DIV_ID){
	var params = { allowScriptAccess: "always", bgcolor: backGroundColor, allowFullScreen: true };
	var atts = { id: DIV_ID };
	swfobject.embedSWF("http://www.youtube.com/v/"+ VIDEO_ID +"&amp;fs="+allowFullScreen+"&amp;border=0&amp;rel="+showRelatedVideos+"&amp;autoplay="+autoplay+"", DIV_ID, "468", "350", "8.0.0", null, null, params, atts);
}


