
$(document).click(function(e) {
	var target = e.target;
	if($(target).hasClass('action')) {
		e.preventDefault();
		eval(target.getAttribute('action'));
	}
});

function setLastViewedLimit(limit) {
	if (limit == 0) {
		$('#last-viewed-customer').css({'display' : 'none'});
	} else {
		$('#last-viewed-customer').css({'display' : 'block'});
		$('#last-viewed-customer li').css({'display' : 'none'});
		for (var i = 0; i < limit; i++) {
			$('#last-viewed-customer li').eq(i).css({'display' : 'block'});
		}
	}
}

function showLogin() {
	$.ui.dialog.defaults.bgiframe = true;
	$("#LoginForm").dialog({
		title: 'Login',
		modal: true,
		resizable: false,
		draggable: false,
		hide: 'blind',
		buttons: {
			Login : function() {
				$("#LoginForm").submit();
				$(this).dialog('close');
			},
			Cancel : function() {
				$(this).dialog('close');
			}
		},
		close: function(event, ui) {
			$("#LoginForm").dialog('destroy');
		}
	});
	return false;
}

// Old Stuff
function rollover(img,ref) {
	if (document.images) {
		imgswap(img, ref);
	}
}

function BringToFront() {
	this.focus();
}

function FocusFormField(el) {
	el.focus();
}

function SelectFormField(el) {
        el.focus();
        el.select();
}

function imgswap(img,ref) {
	if (document.images) {
		document.images[img].src = ref;
	}
}


function PopUpVendor(){
	var theUrl = '/momex/NavCode/popup.vendorsearch';		
	reWin=window.open(theUrl,'Suppliers','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=Yes,width=400,height=400,top=100,left=300');
}

// for service list in web search
function setNormalList(elem) {
	var val;
	if(elem.checked){
		val = elem.value;
		for (i = 0; i < document.Search_Select_Services.ServType.length; i++){
			if(val == document.Search_Select_Services.ServType[i].value){
				document.Search_Select_Services.ServType[i].checked = true;
			}
		}
	}
}
function setTop5List(elem) {
	var val;
	if(elem.checked){
		val = elem.value;
		for (i = 0; i < document.Search_Select_Services.TopServiceType.length; i++){
			if(val == document.Search_Select_Services.TopServiceType[i].value){
				document.Search_Select_Services.TopServiceType[i].checked = true;
			} else {
				document.Search_Select_Services.TopServiceType[i].checked = false;
			} 
		}
	}
}

//phone number jump..., after you input 3 digit area code go  to number field auto
//to use this, just put following line in the parameter 'extended' of 'area code' element 
//'ONKEYUP' => 'KeyPress(this,event,3,\'document.FormatName.Phone.focus()\')'
function KeyPress(what,e,max,action) {
	if (document.layers) {
		if (e.target.value.length >= max)
			eval(action);
	} else if (document.all) {
		if (what.value.length > (max-1))
			eval(action);
	}
}

function PopupWindow(GET) {
	window.open(GET,"_truckdownpopup","top=15,left=15,width=750,height=450,scrollbars=yes,menubar=yes,toolbar=yes,location=yes");
	return false;
}

function PopupMap(GET) {
	window.open(GET,"_truckmap","top=15,left=15,width=675,height=550,scrollbars=no,menubar=no,toolbar=yes,location=no");
	return false;
}

function commonFormattingInit(){
	//alert ("commonFormattingInit Loaded.");
	var dates = $('.iso-8601');

	for(var x = 0; x < dates.length; x++){
		formatISO8601Date(dates[x]);
	}
}


$(document).ready(function() {
	commonFormattingInit();
	});

function formatISO8601Date(obj){
	if(obj.firstChild && isClass(obj, 'iso-8601') ){
		var value = obj.firstChild.nodeValue;
		if(value && value.length){
			var format = obj.getAttribute('date-format') || 'mmmm d, yyyy';
			var relative = (obj.getAttribute('show-relative') == 'false' ? 0 : obj.getAttribute('show-relative'));
			var date = new Date();
			//date.setDateTimeUTC(value);
			date.parseISO8601(value);

			var currentDate = new Date ();
			var dateDiff = currentDate.difference(date);
			var diffDateTime = Math.abs(dateDiff);
			var tense = 'past';
			if (dateDiff > 0 ) {
				tense = 'future';
			}
			
			var text = '';
			if (relative && 0 <= diffDateTime && diffDateTime < (60) ) {
				text = 'less than a minute ago';
			} else if (relative &&  diffDateTime < ( 1 *60*60 ) ) {
				var minute = parseInt( diffDateTime / 60 )
				text = minute + ' ' + (minute == 1 ? 'minute' : 'minutes' ) + ' ago';
			} else if ( relative && diffDateTime < ( 5 *60*60 ) ) {
				var hour = parseInt( diffDateTime / (60*60) )
				text = hour + ' ' + (hour == 1 ? 'hour' : 'hours' ) + ' ago';
			} else if ( relative && diffDateTime < ( 12*60*60 ) ) {
				text = 'at ' + dateFormat(date, "h:MM TT");
			} else {
				text = dateFormat(date, format);
			}

			obj.innerHTML = text;
			$(obj).attr('title', date.toLocaleString());
			removeClassName(obj, 'iso-8601');
			delete date;
		}
	}
}

function setUserPreference(code, value, func){
        $.post('/momex/NavCode/ajax.user.set_preference', {'code': code, 'value': value}, func);
}

function removeUserPreference(code, func){
        $.post('/momex/NavCode/ajax.user.remove_preference', {'code': code}, func);
}

function OpenTicket(strUrl, strTarget) {
	var windowWidth = 600;
	var windowHeight = 500;
	var windowLeft = 60;
	var windowTop = 40;

	window.open(strUrl, strTarget, "top=" + windowTop + ",left=" + windowLeft + ",width=" + windowWidth + ",height=" + windowHeight + ",scrollbars,status").focus();
	return false;
}


function OpenChargeWindow(strUrl, strTarget) {
	var windowWidth = 600;
	var windowHeight = 500;
	var windowLeft = 60;
	var windowTop = 40;

	window.open(strUrl, strTarget, "top=" + windowTop + ",left=" + windowLeft + ",width=" + windowWidth + ",height=" + windowHeight + ",scrollbars,status").focus();
	return false;
}

