  	
  			var idFirst = 'inlineFirst';
			var idSecond = 'inlineSecond';
			var idThird = 'inlineThird';
			var idFourth = 'inlineFourth';
			
			var isInlineAd = (layoutMode == 'inlineResInlineAd') || (layoutMode == 'newPageResNewPageAd');
				
  			var storedDropDownURL = null;
  			var storedResultsURL = null;
  			var storedFormData = null;
	  	                                        
	  	 	var uvlDynamicFieldIds = new Array('searched_channel', 'make', 'model', 'colour', 'transmissionid', 'fuelid', 'bodyid', 'min_mileage', 'max_mileage', 'min_pr', 'max_pr', 'min_age', 'max_age');
	  	 	var uvlExtraFieldIds = new Array('modelexact', 'source', 'searchsrc', 'pagesize', 'additionalKeywords', 'approved', 'lid', 'ccappr', 'variant', 'keywords', 'max_records', 'photo', 'miles', 'postcode', 'sort', 'categorysort');
			
			//inline advert params  		
	  		var largeIds = new Array();
			var id = 0;
			var large_url = '';

	  		var nvsDynamicFieldIds = new Array('make', 'model', 'min_pr', 'max_pr', 'variant', 'bodyid', 'fuelid', 'derivative', 'doors', 'transmissionid');
	  		var nvsExtraFieldIds =  new Array('searchform', 'lid', 'photo', 'state', 'sort', 'pagesize', 'hassearched', 'searchtype', 'include_prereg', 'isadealer', 'postcode');
	  		
	  		
    
    
        var ID_CT_VALUE_32145632;
        var ID_dcode_15243615;
        var ID_CT_ID_32145632; 
        var ID_tt_15243615 = 'k';
        var ID_uid_15243615 = '22923';
       
        function tagOnSearch()
        {
            ID_CT_ID_32145632 = '142';
            ID_dcode_15243615 = '9636';
            ID_CT_VALUE_32145632 = getSearchParams();
            peformTag();
        }
        
        function tagOnPopup()
        {
                ID_CT_ID_32145632 = '143'; 
            ID_dcode_15243615 = '9636';
            ID_CT_VALUE_32145632 = "" + document.getElementById("adTitle").innerHTML;
            peformTag();
        }
        
                function getSearchParams(){
                    var params = "";
                    if(document.getElementById("queryString") != null)
                    {
                        params = cleanParams("" + trimWhite(document.getElementById("queryString").value));
                    }
                    params += " [Results=" + addResults() + "]";
                    return params;
                }
                
                function addResults()
                {
                    var results = "None found";
                    if(document.getElementById("resultsFound") != null)
                    {
                        results = "" + document.getElementById("resultsFound").innerHTML;
                    }
                    if(results.length == 0 || results.indexOf("div") != -1 || results.indexOf("found") == -1)
                    {
                        results = "None found";
                    } 
                    else
                    {
                        if (results.indexOf("of") != -1)
                        {
                            results = results.substring(results.indexOf("of") + 3, results.indexOf("found") - 1);
                        }
                        else
                        {
                            results = results.substring(results.indexOf("-") + 2, results.indexOf("found") - 1);
                        }
                    }
                    return results;
                }
                
                function trimWhite(str)
                {
                    return str.replace(/^\s*([\S\s]*?)\s*$/, '$1');
                }
                
                function cleanParams(params) {
                    var removeList = "currentaction|groupid|sort|max_records|dropdowntype|configfile|searchsrc|partner|categorytype|modelexact|lid|source|csslocation|did|e2w";
                    var cleaned = "";
                    if (params != null) {
                        var split_params = params.split("&");
                        split_params.sort();
                        var i = 0;
                        var param = "";
                        var key = "";
                        var sep = "";
                        while (i < split_params.length) {
                            param = split_params[i];
                            key = param;
                            if (key.indexOf("=") > 0) {
                                key = param.split("=")[0];
                                if (removeList.indexOf(key) == -1) {
                                    cleaned += sep + param;
                                    sep = ", ";
                                }
                            }
                            i += 1;
                        }

                    }
                    return cleaned;
                }
        
        function peformTag()
        {
            
            var evastr0000 = "";
            
            if (!ID_dcode_15243615){ID_dcode_15243615 = "";}
            if (!ID_tt_15243615){ID_tt_15243615 = "k";}
            
            evastr0000="&rq="+escape(document.location);
            
            evastr0000+="&dc="+escape(ID_dcode_15243615);
            
            evastr0000+="&userid="+escape(ID_uid_15243615);
            
            evastr0000+="&tt="+escape(ID_tt_15243615);
            
            //get keydata values
            if (!ID_CT_ID_32145632){ID_CT_ID_32145632 = "";}
            if (!ID_CT_VALUE_32145632){ID_CT_VALUE_32145632 = "";}
            evastr0000+="&userid="+escape(ID_uid_15243615);
            evastr0000+="&tt="+escape(ID_tt_15243615);
            evastr0000+="&ctid="+escape(ID_CT_ID_32145632);
            evastr0000+="&ctval="+escape(ID_CT_VALUE_32145632);
            
            var now = new Date;
            
            var thetimeid = now.getTime();
            
            evastr0000+="&tc="+thetimeid;
            
            //check for https requests
            var mysslchecktext = document.URL;
            var mysslcheckurl    = /(\https:\/\/)/
            var httpresult = mysslchecktext.match(mysslcheckurl);
            var myhttp = "http";
            
             if (httpresult != null)  {
             myhttp = "https"; 
             }
             
             var scriptTag = document.createElement("img");
             scriptTag.setAttribute("border", "0");
             scriptTag.setAttribute("alt", "eVisit");
             scriptTag.setAttribute("width", "1");
             scriptTag.setAttribute("height", "1");
             scriptTag.setAttribute("src", myhttp+"://extra.evisitanalyst.com/at/tagkd.php?"+evastr0000);
             document.body.appendChild(scriptTag);
             
        }
        
        
            var flash2Installed = false;
            var flash3Installed = false;
            var flash4Installed = false;
            var flash5Installed = false;
            var flash6Installed = false;
            var maxVersion = 6;
            var actualVersion = 0;
            var jsVersion = 1;
            var isIE = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
            var isWin = (navigator.appVersion.indexOf("Windows") != -1) ? true : false;
            jsVersion = 1.1;

            var evastr0000 = "";
            if (!ID_section_15243615) {
                var ID_section_15243615 = "";
            }
            if (!EGOV_section_15243615) {
                var EGOV_section_15243615 = "";
            }
            if (!ID_intfilter_15243615) {
                var ID_intfilter_15243615 = "";
            }
            if (!ID_tt_15243615) {
                var ID_tt_15243615 = "t";
            }
            text54321 = escape(document.location);
            thehash54321 = "#";
            text254321 = text54321.replace(thehash54321, "&");
            evastr0000 = "&rq=" + text254321;
            evastr0000 += "&rf=" + escape(document.referrer);
            evastr0000 += "&pt=" + escape(document.title);
            evastr0000 += "&es=" + escape(ID_section_15243615);
            evastr0000 += "&esg=" + escape(EGOV_section_15243615);
            evastr0000 += "&ifilter=" + escape(ID_intfilter_15243615);
            evastr0000 += "&userid=" + escape(ID_uid_15243615);
            evastr0000 += "&tt=" + escape(ID_tt_15243615);
            evastr0000 += "&lg=" + escape(navigator.userLanguage);
            var now = new Date;
            var thetimeid = now.getTime();
            evastr0000 += "&tc=" + thetimeid;
            var rannum = Math.random() * 1234567;
            rannum = Math.round(rannum);
            var pc = thetimeid;
            pc *= rannum;
            var rannum = Math.random() * 1765432;
            rannum = Math.round(rannum);
            var sc = thetimeid;
            sc *= rannum;
            evastr0000 += "&sz=" + screen.width + "X" + screen.height;
            evastr0000 += "&cl=" + escape(screen.colorDepth);
            evastr0000 += "&jv=" + escape(navigator.javaEnabled());
            evastr0000 += "&cks=" + escape(navigator.cookieEnabled);
            var excookie = getCookie_eVA_62178982349824("evap" + ID_uid_15243615);
            var excookies = getCookie_eVA_62178982349824("evas" + ID_uid_15243615);
            var excookiev = getCookie_eVA_62178982349824("evav" + ID_uid_15243615);
            if (excookie) {
                setCookie_eVA_62178982349824("evap" + ID_uid_15243615, excookie, "365", "86400000", "/");
                pc = excookie;
                cooktrue = "true";
            } else {
                setCookie_eVA_62178982349824("evap" + ID_uid_15243615, pc, "365", "86400000", "/");
                var cooktrue = "flase";
                var ctrue = getCookie_eVA_62178982349824("evap" + ID_uid_15243615);
                if (ctrue) {
                    cooktrue = "true";
                }
            }
            if (excookies) {
                setCookie_eVA_62178982349824("evas" + ID_uid_15243615, excookies, "1800", "1000", "/");
                sc = excookies;
            } else {
                setCookie_eVA_62178982349824("evas" + ID_uid_15243615, sc, "1800", "1000", "/");
                if (excookiev) {
                    excookiev++;
                    setCookie_eVA_62178982349824("evav" + ID_uid_15243615, excookiev, "365", "86400000", "/");
                } else {
                    excookiev = 1;
                    setCookie_eVA_62178982349824("evav" + ID_uid_15243615, excookiev, "365", "86400000", "/");
                }
            }
            evastr0000 += "&ckp=" + cooktrue;
            evastr0000 += "&pcookie=" + pc;
            evastr0000 += "&scookie=" + sc;
            evastr0000 += "&vcookie=" + excookiev;

            var fv = findflash();
            evastr0000 += "&fv=" + fv;
            var evastr0000_key = "";
            if (!ID_CT_ID_32145632) {
                var ID_CT_ID_32145632 = "";
            }
            if (!ID_CT_VALUE_32145632) {
                var ID_CT_VALUE_32145632 = "";
            }
            evastr0000_key += "&userid=" + escape(ID_uid_15243615);
            evastr0000_key += "&tt=" + escape(ID_tt_15243615);
            evastr0000_key += "&pcookie=" + pc;
            evastr0000_key += "&scookie=" + sc;
            evastr0000_key += "&ctid=" + escape(ID_CT_ID_32145632);
            evastr0000_key += "&ctval=" + escape(ID_CT_VALUE_32145632);
            var evastr0000_ecom = "";
            if (!ID_productcode_15243615) {
                var ID_productcode_15243615 = "";
            }
            if (!ID_productname_15243615) {
                var ID_productname_15243615 = "";
            }
            if (!ID_productprice_15243615) {
                var ID_productprice_15243615 = "";
            }
            if (!ID_productcategory_15243615) {
                var ID_productcategory_15243615 = "";
            }
            if (!ID_productsubcategory_15243615) {
                var ID_productsubcategory_15243615 = "";
            }
            if (!ID_productgroup_15243615) {
                var ID_productgroup_15243615 = "";
            }
            if (!ID_productqty_15243615) {
                var ID_productqty_15243615 = "";
            }
            if (!ID_ordernum_15243615) {
                var ID_ordernum_15243615 = "";
            }
            evastr0000_ecom += "&userid=" + escape(ID_uid_15243615);
            evastr0000_ecom += "&tt=" + escape(ID_tt_15243615);
            evastr0000_ecom += "&pcookie=" + pc;
            evastr0000_ecom += "&scookie=" + sc;
            evastr0000_ecom += "&ID_productcode_15243615=" + escape(ID_productcode_15243615);
            evastr0000_ecom += "&ID_productname_15243615=" + escape(ID_productname_15243615);
            evastr0000_ecom += "&ID_productprice_15243615=" + escape(ID_productprice_15243615);
            evastr0000_ecom += "&ID_productcategory_15243615=" + escape(ID_productcategory_15243615);
            evastr0000_ecom += "&ID_productsubcategory_15243615=" + escape(ID_productsubcategory_15243615);
            evastr0000_ecom += "&ID_productgroup_15243615=" + escape(ID_productgroup_15243615);
            evastr0000_ecom += "&ID_productqty_15243615=" + escape(ID_productqty_15243615);
            evastr0000_ecom += "&ID_ordernum_15243615=" + escape(ID_ordernum_15243615);
            var mysslchecktext = document.URL;
            var mysslcheckurl = /(\https:\/\/)/;
            var httpresult = mysslchecktext.match(mysslcheckurl);
            var myhttp = "http";
            if (httpresult != null) {
                myhttp = "https";
            }

        function setCookie_eVA_62178982349824(name, value, myexpires, myexpires2, path, domain, secure) {
            var date = new Date();
            date.setTime(date.getTime() + (myexpires * myexpires2));
            var expires = "; expires=" + date.toGMTString();
            document.cookie = name + "=" + escape(value) + ((expires) ? "; expires=" + expires : "") + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + ((secure) ? "; secure" : "");
        }
        function getCookie_eVA_62178982349824(name) {
            var dc = document.cookie;
            var prefix = name + "=";
            var begin = dc.indexOf("; " + prefix);
            if (begin == -1) {
                begin = dc.indexOf(prefix);
                if (begin != 0) {
                    return null;
                }
            } else {
                begin += 2;
            }
            var end = document.cookie.indexOf(";", begin);
            if (end == -1) {
                end = dc.length;
            }
            return unescape(dc.substring(begin + prefix.length, end));
        }
        function findflash() {
            if (navigator.plugins) {
                if (navigator.plugins["Shockwave Flash 2.0"] || navigator.plugins["Shockwave Flash"]) {
                    var isVersion2 = navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";
                    var flashDescription = navigator.plugins["Shockwave Flash" + isVersion2].description;
                    var flashVersion = parseInt(flashDescription.charAt(flashDescription.indexOf(".") - 1));
                    flash2Installed = flashVersion == 2;
                    flash3Installed = flashVersion == 3;
                    flash4Installed = flashVersion == 4;
                    flash5Installed = flashVersion == 5;
                    flash6Installed = flashVersion >= 6;
                }
            }
            for (var i = 2; i <= maxVersion; i++) {
                if (eval("flash" + i + "Installed") == true) {
                    actualVersion = i;
                }
            }
            return actualVersion;
        }
        
        
	  		
	  		function getInlineServlet(dropDownType)
	  		{
		  		return 'http://atsearch.autotrader.co.uk/js/' + dropDownType + '/InlineServlet.js';
		  	}
	  		
		  	function getPreviousSearch(dropDownType)
		  	{	  	
	  			if (storedDropDownURL != null)
	  			{
	  				headScript(storedDropDownURL);
	  			}
	  			else
	  			{
	  				resetDropDowns(dropDownType); 
	  			}
	  		}
	  		
	  		function getPreviousResults(doClearTabFlags)	  				
			{
				if (storedResultsURL != null)
				{		  	
					if (doClearTabFlags)
					{
						clearTabFlags();
					}
		  			headScript(storedResultsURL);
		  		}
		  	}
		  			  	
		  	function updateInline(dropDownType, dataTypes)
		  	{	  		  		
		   		var url = constructURL(dropDownType, dataTypes);
		   		storeURL(dropDownType, dataTypes, url);
 				headScript(url);
			}
			
			function inlineResultsPage(dropDownType, queryString, page)
		  	{	  		  	
		   		var url = getInlineServlet(dropDownType) + '?';
		   		url += queryString;
		   		url += '&page=' + page;
		   		url += '&action=searchresults';
		   		
				storeURL(dropDownType, new Array('searchresultspage'), url);
				headScript(url);
			}
			
			function inlineResults(dropDownType, postcode, queryString)
			{
				var url = mainURL(dropDownType);
				url = appendPostcode(url, postcode);
		   		url += queryString;
		   		url += '&action=searchresults'; 
		   		
		   		storeURL(dropDownType, new Array('searchresults'), url);
				headScript(url);
			}
			
			function inlineRawResults(dropDownType, toggleLogo, hideLinks, hideCapLink, hidePagination, hideNumberOfAds, queryString)
			{
				var url = mainURL(dropDownType);
				url = resultsViews(url, false, toggleLogo, hideLinks, hideCapLink, true, hidePagination, hideNumberOfAds);	
		   		url += queryString;
		   		url += '&action=searchresults'; 
		   		
		   		storeURL(dropDownType, new Array('searchresults'), url);
				headScript(url);
			}
			
			function inlineResultsView(dropDownType, showTopInfo, toggleLogo, hideLinks, hideCapLink, hideSort, hidePagination, hideNumberOfAds)
		  	{	  		  		
		   		var url = constructURL(dropDownType, new Array('searchresults'));		   		
		   		url = resultsViews(url, showTopInfo, toggleLogo, hideLinks, hideCapLink, hideSort, hidePagination, hideNumberOfAds);	
		   		url += '&action=searchresults'; 

				storeURL(dropDownType, new Array('searchresults'), url);
 				headScript(url);
			}
			
			function resultsViews(url, showTopInfo, toggleLogo, hideLinks, hideCapLink, hideSort, hidePagination, hideNumberOfAds)
			{
				url += showTopInfo ? '&showtopinfo=true' : '';
				url += toggleLogo ? '&togglelogo=true' : '';
				url += hideLinks ? '&hidelinks=true' : '';
				url += hideCapLink ? '&hidecaplink=true' : '';
		   		url += hideSort ? '&hidesort=true' : '';
		   		url += hidePagination ? '&hidepagination=true&pagesize=99999' : '';
		   		url += hideNumberOfAds ? '&hidenumberofads=true' : '';
		   		
		   		return url;
			}
			
			function inlineFeaturedResult(dropDownType, postcode)
			{
				var url = mainURL(dropDownType);
		   		url = appendPostcode(url, postcode);
		   		url += '&action=featuredresult'; 
		   		
				headScript(url);
			}
			
			function inlineAdvert(dropDownType, id, distance)
		  	{	  		  		
		   		var url = constructURL(dropDownType, new Array('advert'));
		   		url += '&id=' + id;		   		
		   		url += '&distance=' + distance;
		   
				headScript(url);
			}
			
			function storeURL(dropDownType, dataTypes, url)
			{
				if (contains(dataTypes, 'dropdowndata'))
				{
					storedDropDownURL = url;
				}
				
				if (!contains(dataTypes, 'searchform') && contains(dataTypes, 'dropdowndata'))
				{
					storedDropDownURL += '&action=searchform';
				}
				
				if (contains(dataTypes, 'searchresults') || contains(dataTypes, 'defaultresults'))
				{
					storedResultsURL = url;
					storeFieldData(dropDownType);
				}
				else if (contains(dataTypes, 'searchresultspage'))
				{
					storedResultsURL = url;
				}
			}
			
			function storeFieldData(dropDownType)
			{
				var index = 0;
				var dynamicFieldIds = getDynamicFieldIds(dropDownType);
				var extraFieldIds = getExtraFieldIds(dropDownType);
				
				storedFormData = new Array(dynamicFieldIds.length + extraFieldIds.length);
				for (var i = 0; i < dynamicFieldIds.length; i++)
				{
					var dropDownField = document.getElementById(dynamicFieldIds[i]);
					if (dropDownField != null)
					{
						storedFormData[index++] = new Array(dynamicFieldIds[i], getSelectedDDValue(dropDownField));
					}
				}

				for (var j = 0; j < extraFieldIds.length; j++)
				{
					var extraField = document.getElementById(extraFieldIds[j]);
					if (extraField != null)
					{
						var value = extraField.type != 'checkbox' || extraField.checked ? extraField.value : '';
						storedFormData[index++] = new Array(extraFieldIds[j], value);
					}
				}
			}
			
			function hasDropDownData(dropDownType)
			{
				var hasDropDownData = false;
				var dynamicFieldIds = getDynamicFieldIds(dropDownType);
			  	for (var i = 0; i < dynamicFieldIds.length; i++)
	   			{
	   				var field = document.getElementById(dynamicFieldIds[i]);
	   				if (field != null && (field.length > 1 || field.value != ''))
	   				{
	   					hasDropDownData = true;
	   					break;
	   				}
	   			}	   			
	   			return hasDropDownData;
			}
			
			function contains(dataTypes, dataType)
			{
				for (var i = 0; i < dataTypes.length; i++)
				{
					if (dataTypes[i] == dataType)
					{
						return true;
					}
				}
				return false;
			}
			
			function headScript(url)
			{
				headElement = document.getElementsByTagName("head").item(0);
			    var scriptTag = document.createElement("script");
			
			    scriptTag.setAttribute("id", "JSONDynamic");
			    scriptTag.setAttribute("type", "text/javascript");
			    scriptTag.setAttribute("src", url);
			    
			    headElement.appendChild(scriptTag);   
			}
			
			function constructURL(dropDownType, dataTypes)
			{	
				var dynamicFieldIds = getDynamicFieldIds(dropDownType);
				var extraFieldIds = getExtraFieldIds(dropDownType);
			
		  		var url = mainURL(dropDownType);
				
				for (var i = 0; i < dataTypes.length; i++)
				{					    
					if (dataTypes[i] == 'defaultresults')
					{	
						url += '&action=searchresults'; 
						url = appendPostcode(url, '');
					} 
					else
					{ 
						url += '&action=' + dataTypes[i]; 
					}
					
					if (dataTypes[i] == 'searchresults')
					{
			  			url = appendFieldsWithAnyCheck(dynamicFieldIds, url);
						url = appendFields(extraFieldIds, url);
					}
					
					if (dataTypes[i] == 'dropdowndata')
					{	
						url = appendFields(dynamicFieldIds, url);
					}
					
					if (dataTypes[i] == 'featuredresult')
					{	
						url = appendPostcode(url, '');
					}
					
					if (dataTypes[i] == 'requiresselected' && location.search.length > 0)
					{
						url += '&' + location.search.substring(1);
					}
				}
				return url;
			}
			
			function mainURL(dropDownType)
			{
				var startQueryString = '?did=9636&configfile=http://dealerservices.autotrader.co.uk/dealers/9636/9636_config.xml&csslocation=http://dealerservices.autotrader.co.uk/dealers/9636/9636';
				var url = getInlineServlet(dropDownType) + startQueryString;
				url += (startQueryString == '?' ? '' : '&') + 'dropdowntype=' + dropDownType;
				url = appendPartner(url, 'TMG');
				
				return url;
			}
			
			function appendFields(dynamicFieldIds, url)
			{
		   		for (var i = 0; i < dynamicFieldIds.length; i++)
		   		{		   		    
		   			url = appendField(url, document.getElementById(dynamicFieldIds[i]));
		   		}	   		
		   		return url;
			}
			
			function appendField(url, field)
			{
				if (field != null && field.value != '' && (field.type != 'checkbox' || field.checked))
				{
					url += '&' + field.name + '=' + field.value;
				}
				return url;
			}		
			
			function appendPostcode(url, postcode)
			{
				var pc = postcode != '' ? postcode : 'wf17 9lw';
				if (pc != '')
				{
					url += '&postcode=' + pc;	
				}
				return url;
			}		
									
			function appendPartner(url, partner)
			{
				if (partner != '')
				{
					url += '&partner=' + partner;	
				}
				return url;
			}		
			
			function appendFieldsWithAnyCheck(dynamicFieldIds, url)
		  	{
		  		for (var i = 0; i < dynamicFieldIds.length; i++)
		   		{		   
		   			var field = document.getElementById(dynamicFieldIds[i]);
		   			if (field != null)
		   			{
			   			if ('ANY' == getSelectedDDValue(field) && field.length > 1)
			      		{
			      			url += '&' + field.name + '=' + getConfigAnyValue(field);
			      		}
			      		else if ('ALL' == getSelectedDDValue(field))
			      		{    		
			      		}
			      		else
			      		{	
			      			url = appendField(url, field);
			      		}
			      	}
		   		}	   		
		   		return url;
			}
						
			function getConfigAnyValue(field)
		    {
      			var multiValue = '';
      			if (field.name.indexOf('min_') == 0)
      			{
      				multiValue = '0';
      			}
      			else if (field.name.indexOf('max_') == 0)
      			{
      				var greatestVal = 0;
      				for (var i = 0; i < field.length; i++)
	      			{
	      				if (field[i].value > greatestVal)
	      				{
	      					greatestVal = field[i].value;
	      				}
	      			}
      				multiValue = greatestVal;
      			}
      			else
      			{	      					      			
	      			for (var j = 0; j < field.length; j++)
	      			{
	      				if (j != field.selectedIndex)
	      				{			      				
	      					multiValue = multiValue + "," + field[j].value;
	      				}
	      			}	
	      		}  				      			
      			return multiValue; 		      			
		    }
			
			function isFieldDisplayed(fieldId)
			{
				var field = document.getElementById(fieldId);
				
				if (field != null && field.style.display == 'block')
				{
					return true;
				}
				return false;
			}
			
			function resetDropDown(fieldId)
			{
				var dropDownField = document.getElementById(fieldId);				
				
				if (dropDownField != null)
				{
					dropDownField.selectedIndex = -1;
					emptyStoredFieldData(fieldId);
				}
			}
					
			function emptyStoredFieldData(fieldId)
			{
				if (storedFormData != null)
				{
					for (var i = 0; i < storedFormData.length; i++)
					{
						if (storedFormData[i] != null && storedFormData[i][0] == fieldId)
						{
							storedFormData[i][1] = '';
						}
					}
				}	
			}
			
			function resetDropDowns(dropDownType)
 			{
	  			storedFormData = null;	
				
				var dynamicFieldIds = getDynamicFieldIds(dropDownType);
			  	for (var i = 0; i < dynamicFieldIds.length; i++)
	   			{
		   			resetDropDown(dynamicFieldIds[i]);
		   		}	  	   		
			  	var url = mainURL(dropDownType);
				url += '&action=dropdowndata';
				headScript(url);
 			}

			function getDynamicFieldIds(dropDownType)
			{
				var dynamicFieldIds = null;
				if (dropDownType == 'uvl')
		  		{
		  			dynamicFieldIds = uvlDynamicFieldIds;
		  		}
		  		else if (dropDownType == 'nvs')
		  		{
		  			dynamicFieldIds = nvsDynamicFieldIds;
		  		}
		  		return dynamicFieldIds;
		  	}
			
			function getExtraFieldIds(dropDownType)
			{
				var extraFieldIds = null;
				if (dropDownType == 'uvl')
		  		{
		  			extraFieldIds = uvlExtraFieldIds;
		  		}
		  		else if (dropDownType == 'nvs')
		  		{
		  			extraFieldIds = nvsExtraFieldIds;
		  		}
		  		return extraFieldIds;
		  	}
			
			function populateUVLSearch(searchForm, dropDownData, searchResults, advert, featuredresult) 
			{
				decideLayout();
					
				if (searchForm.searchform != null)
				{
					document.getElementById(idFirst).innerHTML = searchForm.searchform;
					populateExtraFields('uvl');
				}
			
				if (dropDownData != null)
				{
					populateDropDown(dropDownData.searched_channel, 'searched_channel');
					populateDropDown(dropDownData.make, 'make');
					populateDropDown(dropDownData.model, 'model');
					populateDropDown(dropDownData.colour, 'colour');
					populateDropDown(dropDownData.transmissionid, 'transmissionid');
					populateDropDown(dropDownData.fuelid, 'fuelid');
					populateDropDown(dropDownData.bodyid, 'bodyid');
					populateDropDown(dropDownData.min_mileage, 'min_mileage');
					populateDropDown(dropDownData.max_mileage, 'max_mileage');				
					populateDropDown(dropDownData.min_pr, 'min_pr');
					populateDropDown(dropDownData.max_pr, 'max_pr');				
					populateDropDown(dropDownData.min_age, 'min_age');
					populateDropDown(dropDownData.max_age, 'max_age');
				}
				
				if (searchResults.searchresults != null)
				{
					document.getElementById(idSecond).innerHTML = searchResults.searchresults;
					tagOnSearch();
				}	
				
				if (advert.advert != null)
				{
					document.getElementById(idThird).innerHTML = advert.advert;	
					handleInlineAdParams();
					tagOnPopup();
					hide();
				}	
				
				if (featuredresult.featuredresult != null)
				{
					document.getElementById(idFourth).innerHTML = featuredresult.featuredresult;
				}
				
				handleInlineLinks();
			}
			
			function populateNVSSearch(searchForm, dropDownData, requiresSelected, searchResults) 
			{
				if (searchForm.searchform != null)
				{
					document.getElementById(idFirst).innerHTML = searchForm.searchform;
					populateExtraFields('nvs');
				}
				
				if (dropDownData != null)
				{
			 		populateDropDown(dropDownData.make, 'make');
					populateDropDown(dropDownData.model, 'model');
					populateDropDown(dropDownData.variant, 'variant');
					populateDropDown(dropDownData.derivative, 'derivative');
			  	}
					
				if (requiresSelected != null && requiresSelected)
				{
					setSelectedData();
				}
				
				handleNVSDisplay();
					
			  	if (searchResults.searchresults != null)
				{
					document.getElementById(idSecond).innerHTML = searchResults.searchresults;
					handleResultsSizing();
				}	
			}
			
			function decideLayout()
			{
				if (layoutMode == 'newPageResPopupAd' || layoutMode == 'newPageResNewPageAd')
				{
					idSecond = idFirst;
				}
				
				if (layoutMode == 'inlineResInlineAd' || layoutMode == 'newPageResNewPageAd')
				{
					idThird = idSecond;
				}
			}
			
			function handleInlineLinks()
	  		{
	  			toggleLink('backToSearch', true, new Array('newPageResPopupAd', 'newPageResNewPageAd'));
	  			toggleLink('backToResults', true, new Array('inlineResInlineAd', 'newPageResNewPageAd'));
	  			toggleLink('closeLink', false, new Array('inlineResInlineAd', 'newPageResNewPageAd'));
	  			
	  			scroll(0, 0);
	  		}
	  		
	  		function toggleLink(linkName, show, layoutModes)
	  		{
	  			var link = document.getElementsByName(linkName);
	  			if (link != null && link.length && contains(layoutModes, layoutMode))
	  			{
	  				for (var i = 0; i < link.length; i++)
	  				{
	  					link[i].style.display = (show ? 'block' : 'none');
	  				}
	  			} 
	  		}
	  		
	  		function handleInlineAdParams()
	  		{					
	  			var imageIds = document.getElementsByName('imageIds');
				if (imageIds != null)
				{
					largeIds = new Array();
					for(var i = 0; i<imageIds.length; i++)
					{
						largeIds[i] = imageIds[i].value;
					}
				}
				
				var mainImageId = document.getElementById('mainImageId');
				if (mainImageId != null && mainImageId != '')
				{
					id = mainImageId.value;
				}
				
				var largeImageUrl= document.getElementById('largeImageUrl');
				if (largeImageUrl != null)
				{
					large_url = largeImageUrl.value;
				}
			}
					
			function populateExtraFields(dropDownType)
			{
				if (storedFormData != null)
				{
					var extraFieldIds = getExtraFieldIds(dropDownType);
					for (var i = 0; i < extraFieldIds.length; i++)
					{
						var value = getStoredValue(extraFieldIds[i]);						
						var extraField = null;
						var elements = document.getElementsByName(extraFieldIds[i]);
						if (elements.length == 2)
						{
							extraField = elements[1];
						}
						else
						{
							extraField = document.getElementById(extraFieldIds[i]);
						}
						if (extraField != null && value != null)
						{
							if (extraField.type != 'checkbox' && value != '')
							{
								extraField.value = value;
							}
							else if (extraField.type == 'checkbox')
							{
								extraField.checked = value != '';
							}
						}
					}
				}
			}
			
			function populateDropDown(fieldData, fieldId)
			{
				var dropDownField = document.getElementById(fieldId);	    
				if (dropDownField == null)
				{
					return;
				}
				
				var currentSelected = getSelectedDDValue(dropDownField);
				clearDropDown(dropDownField);
	
				if (fieldData != null)
				{
					for (var i = 0; i < fieldData.length; i++)
					{						
						dropDownField.options[i] = new Option(fieldData[i][0], fieldData[i][1]);
											
						if ((currentSelected != '' && currentSelected == fieldData[i][1]) || fieldData[i].length == 3)
						{
							dropDownField.selectedIndex = i;
						}	
					}
				}
			}
			
			function getSelectedDDValue(dropDownField)
			{
				var selected = '';
				if (dropDownField.selectedIndex > -1)
				{
					selected = dropDownField[dropDownField.selectedIndex].value;
				}
				else
				{
					selected = getStoredValue(dropDownField.id);
				}
				
				return selected;
			}
			
			function getStoredValue(fieldId)
			{
				if (storedFormData == null)
				{
					return '';
				}
				 for (var i = 0; i < storedFormData.length; i++)
				 {
				 		if (storedFormData[i] != null && storedFormData[i][0] == fieldId)
				 		{
				 			return storedFormData[i][1];
				 		}
				 }
				 return '';
			}
			
			function clearDropDown(dropDownField)
			{
				while (dropDownField.options.length)
				{
					dropDownField.options[0] = null;
				}  
			}
			
			function setSelectedData(dropDownType)
			{
				if (location.search.length < 1)
				{	
					return;
				}
				
				var queryString = location.search.substring(1);
				queryString = unescape(queryString);
				queryString = queryString.replace(/\+/g, ' ');
				
				var params = queryString.split('&');
				for (var i = 0; i < params.length; i++)
				{
					var param = params[i].split('=');
					var field = document.getElementById(param[0])
					if (field != null)
					{
						for (var j = 0; j < field.length; j++)
	      				{
	      					if (field[j].value == param[1])
	      					{
	      						field.selectedIndex = j;
	      					}
	      				}
					}
				}
			}
		          	
		function handleNVSDisplay()
      	{
      		var model = document.getElementById('model');
      		if (model != null)
      		{
      			var hasModelValue = model.value != '';
     			setDisplay('bodyid', !hasModelValue);
     			setDisplay('variant', hasModelValue);
     		}
     		
     		var variant = document.getElementById('variant');
     		if (variant != null)
     		{
     			var hasVariantValue = variant.value != '';
     			setDisplay('doors', !hasVariantValue);
     			setDisplay('derivative', hasVariantValue);
     		}
      	}
      	
      	function setDisplay(fieldId, show)
      	{
      		var field = document.getElementById(fieldId);
      		if (field != null)
      		{
      			field.style.display = show ? 'inline' : 'none';
      		}
      	}
      	
      	function handleResultsSizing()
      	{
      		//to be overridden
      	}
      	
	
	
	 function writeSessionCookie (cookieName, cookieValue) {
	      document.cookie = cookieName + "=" + cookieValue + "; path=/";
	      return true;
	  }
	  
	  function getCookieValue (cookieName) {
		  var exp = new RegExp (escape(cookieName) + "=([^;]+)");
		  if (exp.test (document.cookie + ";")) {
		    exp.exec (document.cookie + ";");
		    return unescape(RegExp.$1);
		  }
		  else return '';
	  }
	  
	  function setPostcode(theForm)
	  {
	    var cookieName = "postcode";
        if(theForm.dealerid != null && theForm.dealerid.value != "")
     	{
     	 	cookieName = "d" + theForm.dealerid.value +cookieName;
     	}
     	else if(theForm.groupid != null && theForm.groupid.value != "")
     	{
     	 	cookieName = "g" + theForm.groupid.value +cookieName;
     	}
	    theForm.postcode.value = getCookieValue (cookieName);
	  }
	  
	  function setPostcodeCookie(theForm)
	  {
        var cookieName = "postcode";
        if(theForm.dealerid != null && theForm.dealerid.value != "")
     	{
     	 	cookieName = "d" + theForm.dealerid.value +cookieName;
     	}
     	else if(theForm.groupid != null && theForm.groupid.value != "")
     	{
     	 	cookieName = "g" + theForm.groupid.value +cookieName;
     	}
     	writeSessionCookie(cookieName, theForm.postcode.value);
      }
      
		function updateSearch(theForm)
		{ 			
			if (!hasDropDownData('uvl'))
			{
				alert('No data available at this time.');
				return;
			}
		 	if(checkKeywords(theForm))
		 	{  
		 	    setPostcodeCookie(theForm);	           	  
		 		updateInline('uvl', new Array('searchresults'));
		 		defaultExtraFields(theForm, true);
		 	}
		}
        
	  function checkKeywords(theForm)
	  {     
          if(theForm.postcode.value=="" || theForm.postcode.value.toLowerCase()=="full postcode" || theForm.postcode.value.length<=4)
          {
             alert("Please enter a full postcode");
             return false;
          }                                
                   
          if (theForm.keywords && theForm.keywords.value =='Keywords e.g. Blue')  {theForm.keywords.value='';}
          if (theForm.postcode.value=='full postcode') {theForm.postcode.value='';}
          if (theForm.variant && theForm.variant.value == 'Trim e.g. GTi or TDi')  {theForm.variant.value='';}
          
          if (theForm.ccappr && theForm.ccappr.value=='Exact CC') {theForm.ccappr.value='';}
		  if (theForm.ccappr) { theForm.ccappr.value=theForm.ccappr.value.replace(/cc/i,""); }
  
  		  var keywordsFields = document.getElementsByName('keywords');
          if (keywordsFields.length == 2)
    	  {	
    		keywordsFields[0].value = keywordsFields[1].value;
    	  }
      		
          return true;
      }
      
	function defaultExtraFields(theForm, checkNoValue)
	{
		if (!checkNoValue || theForm.keywords.value == '')
		{
			theForm.keywords.value = 'Keywords e.g. Blue';
		}
		if (!checkNoValue || theForm.variant.value == '')
		{
			theForm.variant.value = 'Trim e.g. GTi or TDi';
		}
		if (!checkNoValue || theForm.ccappr.value == '')
		{
			theForm.ccappr.value = 'Exact CC';
		}
		if (!checkNoValue)
		{
			theForm.photo.checked = true;
		}
	}
      
	
	
        function goToPage(pageNo)
        {
        	if (layoutMode != null)
        	{
    			var field = document.getElementById("queryString");
          		inlineResultsPage('uvl', field.value, pageNo);
          	}
          	else
          	{
          		window.location="/uvl/search.jsp?page=" + pageNo + "&currentaction=searchresultsjs&dealerid=9636&dropdowntype=uvl";
        	}
       	}
        
		function checkPopup(popURL, popName, width, height, id, distance)
        {
        	if (layoutMode == 'inlineResInlineAd' || layoutMode == 'newPageResNewPageAd')
        	{
        		inlineAdvert('uvl', id, distance);
        	}
        	else
        	{
        		pop_up(popURL, popName, width, height);
        	}
        }
        
   

            function extractId(compoundId)
            {
                var bracketPos = compoundId.indexOf("[");
                var parsedId = compoundId;
                if (bracketPos > 0)
                {
                    parsedId = compoundId.substring(0, bracketPos);
                }
                return parsedId;
            }

            function getLargeImageIds()
            {
                   
				var index = 0;
				var ids = "";
				var sep = "";
				while(index < largeIds.length)
				{
				    ids += sep + extractId(largeIds[index]);
				    sep = "|";
				    index++;
				}
				return ids;
            }

            function writeShow()
            {
            	
	            	 	var advertId = getHiddenValue('advertId');
	            	 	var lcChannel = getHiddenValue('lcChannel');
	            	 	var dealerPhoneNo = getHiddenValue('dealerPhoneNo');
	            	 	var manufacturer = getHiddenValue('manufacturer');
	            	 	var model = getHiddenValue('model');
	            	 	var dealerName = getHiddenValue('dealerName');
	            	 	var imageCount = getHiddenValue('imageCount');
	            	 
               var sshow=new SWFObject("http://pictures.autotrader.co.uk/video/ss/videoshell_v1.swf","swf_slideshow"+Math.floor(Math.random()*100),"350","292","8.0.0","#ffffff");
               sshow.addParam("wmode", "transparent");
               sshow.addParam("quality", "high");
               sshow.addParam("loop", "false");
               sshow.addParam("menu", "false");
               sshow.addParam("AllowScriptAccess", "always");
               sshow.addVariable("logo", "n");
               sshow.addVariable("disableBranding", "n");
               sshow.addVariable("id", advertId);
               sshow.addVariable("channel", lcChannel);
           		if (imageCount > 3 && imageCount < 6)
           		{
                    sshow.addVariable("txt", encodeURIComponent("To find out more about this vehicle call " + dealerPhoneNo));
                }
                else
                {
                	sshow.addVariable("txt", encodeURIComponent("To find out more about this " + manufacturer + " " + model  + ", contact " + dealerName + " on " + dealerPhoneNo));
                }
               sshow.addVariable("url", encodeURIComponent("http://pictures.autotrader.co.uk/ATD_web/servlet/media?id="));
               sshow.addVariable("images", getLargeImageIds());
               sshow.addVariable("cookie",SearchVideoCookie);
               sshow.write("flashcontent");
            }
            
            function getHiddenValue(hiddenId)
            {
            	var field = document.getElementById(hiddenId);
            	if (field != null)
            	{
            		return field.value;
            	}
            	return '';
            }
            
     		var storeVideoAdvertHtml = '';      	
        	var backAdText = '<div><br/><br/><a id="backToAdvert" name="backToAdvert" href="javascript:DoVideo(0);"><..back to advert</a></div>'; 
        	
        	function setInlineVideo()
	  		{
	  			var container = document.getElementById('container');
	  			storeVideoAdvertHtml = container.innerHTML;
	  			 
	  			var adTitle = document.getElementById('adTitle').innerHTML;
				toggleBackToLink(false);
					
	  			container.innerHTML = '<h1 id="adTitle">' + adTitle + '</h1><br/><div id="flashContentDiv"><div id="flashcontent"/></div>' + backAdText;
	  			container.style.overflow="hidden";
	  		}
	  		
	  		function removeInlineVideo()
	  		{
	  			var container = document.getElementById('container');
	  			container.innerHTML = storeVideoAdvertHtml;
	  			container.style.overflow="hidden";
	  			
				toggleBackToLink(true);
	  		}
	  		
	  		function toggleBackToLink(show)
	  		{
  				var secondBackTo = document.getElementsByName('backToResults');
	  			if (secondBackTo != null && secondBackTo.length == 2)
	  			{
	  				secondBackTo[1].style.display = show ? 'block' : 'none';
	  			}	
	  		}
	