function defaultImageBYO(img){
	img.src= BASE_CONTEXT + "/assets/en/images/model/defaultByoSelect.gif";

}

function imageDefault(img){
	if ( this.src != BASE_CONTEXT + "/assets/en/images/model/defaultByoSelect.gif" )
		defaultImageBYO(img);
}
function goVLSpecificModel(modelID, year, pvc, context, optionListString){

	if (modelID.toString().length == 2) {
		modelID = '0'+ modelID;
	}
	console.log("model id: " + modelID);
	var URL = context + '/tools/vehiclelocator/trimResults.do?year=' + year +
    						'&gmModelId='+modelID + '&searchType=0&proximity=50&pvc='+pvc + "&pageFrom=byo";

    if (optionListString != null && optionListString != "") {
    	URL += "&optionList=" + optionListString.replace(",","^");
    }
    locateVehicleForSeries(URL +'&postalCode=');
}

function locateVehicleForSeries(url){
	console.log("Forwarding to url: " + url);
	var cookieObjValue = mrm.cmp.zc.getLocation();
	console.log(cookieObjValue)
	location.href=url+cookieObjValue.zipcode;
}

function showLinkBYO(myLink){
	var locstr = mrm.cmp.zc.getLocation();
	var zipcode;
	var regionCode;		
	if (locstr != null) {
		try {
			zipcode = locstr["zipcode"];
			buildForm.zipCode.value=zipcode;
			regionCode = locstr["region"]["code"];
		} catch (e) {}
	}
	window.location.href=myLink+"&zipCode="+zipcode;

}

function ucwords (str) {
	return (str + '').replace(/^([a-z])|\s+([a-z])/g, function ($1) {
		return $1.toUpperCase();
	});
}

function doTrimSelect(){
	var locstr = mrm.cmp.zc.getLocation();
	var links = new Array();
	var zipcode;
	
	if(locstr != null){
		try {
			zipcode = locstr["zipcode"];
			
			createWinMask();
			mrm.$('<div id="pg-container"></div>').insertAfter((mrm.$.browser.msie && mrm.$.browser.versionX == "7")?'#winMask':'#bedOverlay');
			var pgContainer = mrm.$('#pg-container');
			pgContainer.append('<a href="#" onclick="modalTracking(\''+model+'\',\'close\'); closeModal(); return false;" class="close-btn">Close</a><h2>Please Select Your Vehicle.</h2>');
			var i = 1;
			var chooserArr = new Array();
			for(var trim in trims){
				chooserArr.push(trim);
				var imgAlt = ucwords(model) + ' ' + trim;
				var trimDescription = '';
				for(desc in trims[trim].description){
					if(typeof(trims[trim].description[desc])=="string")
						trimDescription += "<li>"+mrm.$('<div />').html(trims[trim].description[desc]).text()+"</li>";
				}
				pgContainer.append('<div class="pg-section'+(i%2==0?' pg-section-lastinrow':'')+'"><h3><img src="'+trims[trim].image+'" alt="'+imgAlt+'" /></h3><ul class="description">'+trimDescription+'</ul><p class="link"><a href="#" onclick="modalTracking(\''+model+'\',\''+trim.toLowerCase()+'\'); return selectTrim(trims.'+trim+'.divs, \''+trim+'\');">Select '+ucwords(model)+' '+trim+'</a></p></div>');
				i++;
			}
			chooserArr.reverse();
			for(var chooserTrim in chooserArr){
				var radioOption = chooserArr[chooserTrim];
				if(typeof(radioOption) == "string"){
					mrm.$('#pTrimChooser').append('<label for="chooser-'+radioOption+'" class="chooser-label" id="chooser-'+radioOption+'-label">'+radioOption+'</label><input type="radio" class="trim-chooser" name="Trims" value="'+radioOption+'" id="chooser-'+radioOption+'" />').hide();
					mrm.$('.chooser-label').bind('click', function() {
						var radioID = mrm.$(this).attr('id').replace('-label','');
						mrm.$('#'+radioID).blur();
						mrm.$('#'+radioID).focus();
					});
					mrm.$('input[name="Trims"]:radio').bind((mrm.$.browser.msie ? "click" : "change"), function(){
						var selectedTrim = mrm.$(this).val();
						selectTrim(trims[selectedTrim].divs, selectedTrim);
					});
				}
			}
			var l = (mrm.$(window).width()-pgContainer.width())/2;
			//var t = (mrm.$(window).height()-(pgContainer.height()+142))/2;
			var t = 100;
			pgContainer.css({position:'fixed',left:l+'px',top:t+'px',zIndex:90002});
		} catch(e){}
	}
}

function selectTrim(pkg, selection){
	mrm.$('.pTrim').hide();
	for(trim in pkg){
		if(typeof(pkg[trim])=="string")
			mrm.$('#'+pkg[trim]).show();
	}
	closeModal();
	mrm.$('#pTrimChooser').show();
	mrm.$('input#chooser-'+selection).attr('checked','checked');
	return false;
}

function closeModal(){
	removeWinMask();
	mrm.$('#pg-container').fadeOut();
}

function modalTracking(model, trim){
	var trackingObj = {
		prop27 : 'modal',
		eVar32 : 'buick: us: build-your-own: ' + model + ': ' + trim + ' trim'
	}
	clickTrack(trackingObj); 
}

mrm.$(document).ready(function(){
	if(!(mrm.$.browser.msie && mrm.$.browser.versionX == "6") && !emptyObject(trims)) doTrimSelect();
});
