$.extend($.ford, {common: {}});
$.extend($.ford, {Common: $.ford.common});	// Clean up code
$.extend($.ford, {C: $.ford.common});	// Clean up code
$.extend($.ford.common, {WT: function(group, subGroup, scenario, subScenario, adClick) {
	var url = window.location.href;
	var title = $('title').html();
	if(scenario != undefined) {
		url += '#' + scenario;
		title += '#' + scenario;
	} else {
		url += '#' + group;
		title += '#' + group;
	}
	if(group == null || group == undefined) {
		group = '';
		subGroup = '';
	} else {
		if(subGroup == null || subGroup == undefined) {
			subGroup = '';
		}
	}
	if(scenario == null || scenario == undefined) {
		scenario = '';
		subScenario = '';
	} else {
		if(subScenario == null || subScenario == undefined) {
			subScenario = '';
		}
	}
	
	if(adClick == null || adClick == undefined) {
		adClick = '';
	}
	
//	$.log.trace('$.ford.common.WT:', { url: url, title: title, group: group, subGroup: subGroup, scenario: scenario, subScenario: subScenario, adClick: adClick});
	
	dcsMultiTrack(
			"DCS.dcsuri", url,
			"WT.ti", title, 
			"WT.cg_n", group, 
			"WT.cg_s", subGroup, 
			"WT.si_n", scenario, 
			"WT.si_x", subScenario,
			"WT.ac", adClick);
}});
//this $.ford.common.WT.metatag.set() method allows us to set values that will be processed by the base _tag, RB 10/13/11.
$.extend($.ford.common.WT, {metatag: {}});
$.extend($.ford.common.WT.metatag, {set: function(key, value) {
	var metatag = $('<meta>');
	metatag.attr('name', key);
	metatag.attr('content', value);
	$('head').prepend(metatag);
}});

$.extend($.ford.common, {acode: {}});
$.extend($.ford.common, {Acode: $.ford.common.acode});	// Clean up code
$.extend($.ford.common.acode, {getType: function(acode) {
	switch(acode.substring(7, 8)) {
		case 'C': return 'car';
		case 'T': return 'truck';
		case 'V': return 'truck';
		case 'H': return 'truck';
		case 'M': return 'truck';
		case 'S': return 'sport';
		
	}
}});
$.extend($.ford.common, {getParam: function(param) {
	var vars = {};
	var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
		vars[key] = value;
	});
	return vars[param];
}});
$.extend($.ford.common, {postalCode: {}});
$.extend($.ford.common, {PostalCode: $.ford.postalCode});	// Clean up code
$.extend($.ford.common.postalCode, {change: function(postalCode) {
	$.ajax({
		  url: _F.root + "/changePostalCode.json",
			data: { postalCode: postalCode.toUpperCase() },
		  async: false,
		  dataType: 'json',
		  success: function(data) {
			  _F.prov = data.province;
			  _F.postal = data.postal;
			  $('.js_postal_html').html(_F.postal);
		  }
	});
}});
$.extend($.ford.common.postalCode, {updateInputs: function() {
	if($.ford.vars.get('dc')) {
		$('.js_postal_input').each(function() {
			$(this).val($.ford.vars.get('dealer').postal);
		});
	}
	if($.ford.vars.get('postal') && $.ford.validation.isCalZip($.ford.vars.get('postal'))) {
		$('.js_postal_input').each(function() {
			$(this).val($.ford.vars.get('postal'));
		});
	}
}});
$.extend($.ford.common, {hasLocation: function() {
	if(_F.prov == 'UN' && $.cookie('zip_ignore') == null) {
		return false;
	}	
	return true;
}});
$.extend($.ford.common, {url: {}});
$.extend($.ford.common.url, {goTo: function(path, target) {

	var _url = _F.root + path;
	if(path.indexOf('http') > -1) {
		_url = path;
	}
	
	if(target == '_blank') {
		_new =window.open(_url,'','scrollbars=yes,location=no,menubar=no,toolbar=no,directories=no,resizable=yes,status=yes');
		if (window.focus) {
			_new.focus();
		}
	} else {
		window.location = _url;
	}
	
}});
$.extend($.ford.common, {flash: {}});
$.extend($.ford.common, {Flash: $.ford.flash});
$.extend($.ford.common.flash, {getMovie : function(movieName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}});
$.extend($.ford.common, {hash: {}});
$.extend($.ford.common.hash, {get: function() {
	return location.hash.substring(1);
}});
$.extend($.ford.common.hash, {getPosition: function(position) {
	var hashArray = hash.split(':');
	if(hashArray[position]) {
		return hashArray[position];
	}
	return null;
}});
$.extend($.ford.common, {Contact: function() {
	var firstName;
	var lastName;
	var phone;
	var email;
	var address;
	var city;
	var postal;

	this.phone = '';
	this.email = '';
	this.address = '';
	this.city = '';
}});
$.extend($.ford.common, {TradeInVehicle: function() {
	var make;
	var model;
	var year;
	var color;
	var mileage;
	var comments;
	
	this.make = "";
	this.model = "";
	this.year = "";
	this.color = "";
	this.mileage = "";
	this.comments = "";
}});
$.extend($.ford.common, {getDoubleClick : function(array) {
	var obj = new Object;
	obj.url = location.protocol + "//fls.doubleclick.net/activityi";
	if (_F.type == 'fo') {
		obj.src = "1906242";
	}
	else if (_F.type == 'li') {
		obj.src = "2359446";
	}
	obj.num = Math.random() + "";
	obj.num *= 10000000000000;
	// debug(obj.num + " = obj.num")
	obj.type = "";
	obj.cat = "";
	if (array != undefined) {// was =!
		obj.array = new Array();
	} else {
		obj.array = array;
	}

	$.extend(obj, {run : function() {
		var str = this.url + ';src=' + this.src + ';type=' + this.type + ';cat=' + this.cat;
		$.each(this.array, function(key, data) {
			if (data != undefined) {
				str += ';u' + key + '=' + data;
			}
		});

		str += ';ord=1;num=' + this.num + '?';
		jQuery('body').append('<iframe src="' + str + '" width="0" height="0" frameborder="0"></iframe>');
			// debug("run() called");
	}});
	return obj;
}});
