var setup=[];
setup.cssfile="http://www.mattcardy.co.uk/showroom/client/professional.css";
setup.pagesizes=[5,10,25,50,0];
setup.site="lhdrenault";
setup.locale="GBP";
setup.searchURL="http://mattcardy.co.uk/showroom/carlistsearch.php?site=lhdrenault&search=";
setup.viewURL="http://mattcardy.co.uk/showroom/viewupdate.php?site=lhdrenault&amp;id=";
setup.emailURL="http://mattcardy.co.uk/showroom/emailsales.php?site=lhdrenault&id=";
setup.thumburl="http://mattcardy.co.uk/showroom/data/lhdrenault/thumbs/";
setup.picurl="http://mattcardy.co.uk/showroom/data/lhdrenault/pics/";
setup.picsize=600;
setup.licprod=true;
setup.showform=true;
setup.adverton=true;
setup.orderbyon=true;
setup.advert="powered by Corrupted Design";
setup.advertURL="http://www.corrupteddesign.com/";

var vehiclelist;
function DefineVehicles() {
	vehiclelist=[];
	vehiclelist[0]=new Vehicle(80, true, 2010, "Renault Clio, Megane, Laguna, Scenic, Twingo, Modus, Any", 10, "your choice", "manual", "We are now able to offer brand new, UK pre-registered LHD Renault models at excellent prices.|Models available are:|Twingo - Freeway, Extreme, GT, Renault Sport 133|Clio 3 door - Extreme, iMusic, Dynamique|Clio 5 door - Expression, Dynamique|Modus &amp; Grand Modus - iMusic, Expression, Dynamique|Kangoo - Extreme, iMusic, Expression|Megane Hatchback - Extreme, iMusic, Expression, Dynamique|Megane Coupe - Extreme, iMusic, Expression, Dynamique, RenaultSport|Megane Coupe Cabriolet - All Models|Scenic &amp; Grand Scenic - All models|Laguna Hatchback - All Models|Laguna Coupe - All Models|Finance is available on these models to UK residents only. Subject to status, written details on request.|If you are interested in these models, please fill in the form below or call us on +44 (0)207 993 8447 We can ship all over the World, please contact us for a quotation.", 999999, []);
	vehiclelist[1]=new Vehicle(19, false, 2007, "Renault Grand Espace 3.0 MPV", 14000, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Audio Navigation System, Onboard Computer, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors and Sunroof, Central Locking, Airbags, Radio/CD, Roof Rails, Immobiliser, Loading Space Cover|- Features|* Excellent Value For Money!", 30997, []);
	vehiclelist[2]=new Vehicle(20, false, 2007, "Renault Grand Espace 3.0 MPV", 7890, "Metallic Silver", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Navigation System, Onboard Computer, Parking Sensors, Cruise, Xenons, Rain Sensor, Centre Armrests, Front Fog Lights, Electric Windows, Mirrors and Panoramic Sunroof, Central Locking, Airbags, Radio/CD, Roof Rails, Immobiliser, Bluetooth Speech Mechanism|- Features|* Excellent Value For Money!", 28347, []);
	vehiclelist[3]=new Vehicle(12, false, 2007, "Renault Espace MPV", 9800, "Metallic Dark Grey", "manual", "- Description|FSH, ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, On Board Computer, Cruise, Xenons, Rain Sensor, Front Fog Lights, Arm Rests, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD/MP3, Immobiliser, ‘Show Me Home’ Function|- Features|* Excellent Value For Money!", 26647, []);
	vehiclelist[4]=new Vehicle(18, false, 2007, "Renault Grand Espace 3.0 MPV", 24000, "Metallic Black", "manual", "- Description|ESP, Auto Air Con, Alloys, Leather Interior, Elec Adjust Seats, Onboard Computer, Parking Sensors, Cruise, Xenons, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Roof Rails, Immobiliser|- Features|* Excellent Value For Money!", 26647, []);
	vehiclelist[5]=new Vehicle(13, false, 2007, "Renault Espace 2.0 MPV", 15100, "Metallic Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, On Board Computer, Parking Sensors, Cruise, Rain Sensor, Front Fog Lights, Electric Windows, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 22947, []);
	vehiclelist[6]=new Vehicle(36, false, 2008, "Renault Laguna Grandtour 2.0 Estate", 11000, "Metallic Black", "manual", "- Description|FSH, ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, On Board Computer, Multi-Function Steering Wheel, Cruise, Parking Sensors, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 22297, []);
	vehiclelist[7]=new Vehicle(44, false, 2006, "Renault Laguna II GT Saloon", 7700, "Metallic Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, On Board Computer, Centre Armrest, Cruise, Xenons, Parking Sensors, Rain Sensor, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Petrol|- Features|* Excellent Value For Money!", 22297, []);
	vehiclelist[8]=new Vehicle(16, false, 2007, "Renault Espace 2.0 4x4", 11750, "Metallic Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Navigation System with Colour Screen, On Board Computer, Parking Sensors, Cruise, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD/MP3, Immobiliser, Bluetooth|- Features|* Excellent Value For Money!", 22247, []);
	vehiclelist[9]=new Vehicle(14, false, 2007, "Renault Espace 2.0 4x4", 11750, "Metallic Silver", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Navigation System with Colour Screen, On Board Computer, Parking Sensors, Cruise, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD/MP3, Immobiliser, Bluetooth, Folding Tables|- Features|* Excellent Value For Money!", 22147, []);
	vehiclelist[10]=new Vehicle(46, false, 2007, "Renault Laguna Initiale Saloon", 7000, "Metallic Night Blue", "manual", "- Description|Alloys, Leather Interior, Navigation System with Bluetooth, Multi-Function Steering Wheel, Electric Windows, Mirrors and Sunroof, Central Locking, Radio/CD/MP3, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 21697, []);
	vehiclelist[11]=new Vehicle(37, false, 2007, "Renault Laguna Grandtour Dynamique Estate", 9990, "Metallic Black", "manual", "- Description|FSH, ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System with Bluetooth, On Board Computer, Parking Sensors, Front Fog Lights, Cruise, Electric Windows, Central Locking, Radio/CD/MP3, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 21047, []);
	vehiclelist[12]=new Vehicle(15, false, 2007, "Renault Espace 2.0 MPV", 15900, "Metallic Black", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System with Colour Screen, On Board Computer, Parking Sensors, Cruise, Centre Armrest, Front Fog Lights, Multi-Function Seats, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD/MP3, Immobiliser, Bluetooth|- Features|* Excellent Value For Money!", 20997, []);
	vehiclelist[13]=new Vehicle(38, false, 2008, "Renault Laguna Grandtour Dynamique 2.0 Estate", 15000, "Metallic Pearl Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Centre Armrest, Front Fog Lights, Cruise, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD/MP3, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 20347, []);
	vehiclelist[14]=new Vehicle(45, false, 2007, "Renault Laguna III 2.0 Saloon", 20150, "Metallic Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Rain Sensor, Centre Armrest, Front Fog Lights, Cruise, Xenons, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 20347, []);
	vehiclelist[15]=new Vehicle(26, false, 2007, "Renault GT Turbo Saloon", 15000, "Metallic Silver", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, Parking Sensors, Xenons, Electric Windows, Central Locking, Immobiliser, Sunroof, Petrol|- Features|* Excellent Value For Money!", 19347, []);
	vehiclelist[16]=new Vehicle(17, false, 2007, "Renault Grand Espace 2.0 MPV", 21250, "Metallic Dark Grey", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Cruise, Centre Armrest, Front Fog Lights, Leather Multi-Function Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Roof Rails, Immobiliser, Luggage Rack|- Features|* Excellent Value For Money!", 18897, []);
	vehiclelist[17]=new Vehicle(68, false, 2007, "Renault Scenic Privilege 1.9 Van", 6600, "Metallic Dark Blue", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, On Board Computer, Parking Sensors, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 18897, []);
	vehiclelist[18]=new Vehicle(39, false, 2007, "Renault Laguna Grandtour Exception 2.0 Estate", 7000, "Metallic Pearl Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior, DVD Navigation System, On Board Computer, Parking Sensors, Cruise, Front Fog Lights, Electric Windows, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 18847, []);
	vehiclelist[19]=new Vehicle(66, false, 2007, "Renault Scenic 2.0 16V Exception MPV", 6520, "Metallic Black", "manual", "- Description|ABS, ESP, Alloy Wheels, Electric Heated Seats, Electric Windows, Central Locking, Airbags, Radio/CD,  Immobiliser, Auto Air Conditioning, Warranty|- Features|* Excellent Value For Money!", 18347, []);
	vehiclelist[20]=new Vehicle(71, false, 2007, "Renault Trafic 2.0 Van", 20323, "Metallic Black", "manual", "- Description|ABS, Air Con, Alloys, Navigation System, On Board Computer, Rain Sensor, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 18047, []);
	vehiclelist[21]=new Vehicle(72, false, 2007, "Renault Trafic Combi 2.0 Van", 20870, "Metallic Silver", "manual", "- Description|ABS, Air Con, Alloys, Navigation System, Rain Sensor, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 17947, []);
	vehiclelist[22]=new Vehicle(70, false, 2007, "Renault Trafic 2.0 Van", 21679, "Metallic Grey", "manual", "- Description|ABS, Air Con, Navigation System, Front Fog Lights, Electric Windows, Mirrors, Rain Sensor, Central Locking, Airbags, Radio/CD, Immobiliser, Telephone Preparation, Diesel|- Features|* Excellent Value For Money!", 17697, []);
	vehiclelist[23]=new Vehicle(10, false, 2007, "Renault Clio Sport 2.0 Hatchback", 13987, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Special Edition Alloys with Lacquer Finish, Navigation System, On Board Computer, Cruise, Xenons, Rain Sensor, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 17597, []);
	vehiclelist[24]=new Vehicle(11, false, 2007, "Renault Clio Sport F1 Team R27 Hatchback", 7400, "Metallic Black", "manual", "- Description|ABS, ESP, Manual Air Con, Alloys, Recaro Interior, Cruise, Xenons, Front Fog Lights, Electric Windows and Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser and Alarm System, Racing Exhaust, Headlamp wash/wipe system|- Features|* Excellent Value For Money!", 17597, []);
	vehiclelist[25]=new Vehicle(51, false, 2007, "Renault Megane 2.0 Grandtour Estate", 14050, "Metallic Blue", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, Parking Sensors, Cruise, Xenons, Centre Armrest, Leather Steering Wheel, Electric Windows, Sunroof, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Telephone Preparation|- Features|* Excellent Value For Money!", 17597, []);
	vehiclelist[26]=new Vehicle(54, false, 2007, "Renault Megane Sport Coupé", 10860, "Metallic Black", "manual", "- Description|ABS, ESP, Alloys, Central Locking, Cruise, Electric Windows, Immobilizer, Leather Seats, Navigation System, Xenons.|- Features|* Excellent Value For Money!", 16997, []);
	vehiclelist[27]=new Vehicle(69, false, 2006, "Renault Trafic Van", 21800, "Metallic Grey", "manual", "- Description|ABS, Air Con, Navigation System, Heated Seats, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Trailer Coupling|- Features|* Excellent Value For Money!", 16997, []);
	vehiclelist[28]=new Vehicle(49, false, 2007, "Renault Megane 2.0 Cabriolet", 6116, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, On Board Computer, Parking Sensors, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 16947, []);
	vehiclelist[29]=new Vehicle(55, false, 2006, "Renault Megane Sport Turbo 2.0 Hatchback", 13500, "Metallic Orange", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Navigation System with Colour Screen, On Board Computer, Cruise, Xenons, Rain Sensor, Front Fog Lights, Electric Windows, Tail Spoiler, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 16347, []);
	vehiclelist[30]=new Vehicle(34, false, 2007, "Renault Laguna 1.9 Grantour Estate", 20300, "Metallic Pearl Black", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, Parking Sensors, Cruise, Centre Armrest, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 16297, []);
	vehiclelist[31]=new Vehicle(48, false, 2007, "Renault Megane 1.6 Cabriolet", 22170, "Metallic Dakota Beige", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, Parking Sensors, Cruise, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Sunroof|- Features|* Excellent Value For Money!", 16247, []);
	vehiclelist[32]=new Vehicle(47, false, 2007, "Renault Megane 1.6 Cabriolet", 22500, "Metallic Silver", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, On Board Computer, Parking Sensors, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 15997, []);
	vehiclelist[33]=new Vehicle(35, false, 2007, "Renault Laguna 1.9 Grantour Estate", 21800, "Metallic Vulcan Grey", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 15647, []);
	vehiclelist[34]=new Vehicle(5, false, 2007, "Renault Clio 2.0 Sport Hatchback", 12200, "Metallic Grey", "manual", "- Description|ABS, Air Con, Alloys, Navigation System, On Board Computer, Parking Sensors, Cruise, Xenons, Rain Sensor, Front Fog Lights, Multi-Function Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD with 6 Loudspeakers, Immobiliser, Sunroof|- Features|* Excellent Value For Money!", 15597, []);
	vehiclelist[35]=new Vehicle(50, false, 2006, "Renault Megane 2.0 Dynamique Cabriolet", 17630, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, Navigation System, On Board Computer, Rain Sensor, Centre Armrest, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Panoramic Glass Roof|- Features|* Excellent Value For Money!", 15347, []);
	vehiclelist[36]=new Vehicle(53, false, 2007, "Renault Megane Cabriolet Cabriolet", 20651, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Navigation System with 16:9 Colour Screen, On Board Computer, Parking Sensors, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors and Sunroof, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 15097, []);
	vehiclelist[37]=new Vehicle(21, false, 2006, "Renault Grand Scenic 2.0 MPV", 15150, "Metallic Silver", "manual", "- Description|ABS, ESP, Air Con, Elec Adjust Seats, Navigation System, On Board Computer, Rain Sensor, Centre Armrests, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors and Panoramic Sunroof, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14997, []);
	vehiclelist[38]=new Vehicle(40, false, 2006, "Renault Laguna Grantour 1.9 Estate", 20600, "Metallic Black", "manual", "- Description|ABS, ESP, ASR, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Centre Armrest, Front Fog Lights, Electric Windows, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 14847, []);
	vehiclelist[39]=new Vehicle(41, false, 2006, "Renault Laguna Grantour 1.9 Estate", 24100, "Metallic Platinum Grey", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Cruise, Xenons,  Front Fog Lights, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Diesel|- Features|* Excellent Value For Money!", 14847, []);
	vehiclelist[40]=new Vehicle(22, false, 2007, "Renault Grand Scenic 2.0 MPV", 22150, "Metallic Platinum Grey", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Navigation System, Onboard Computer, Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14747, []);
	vehiclelist[41]=new Vehicle(67, false, 2006, "Renault Scenic 2.0 Exception Van", 6010, "Metallic Grey", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, On Board Computer, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14697, []);
	vehiclelist[42]=new Vehicle(52, false, 2006, "Renault Megane 2.0 Luxe Cabriolet", 15900, "Metallic Black", "manual", "- Description|ABS, ESP, Air Con, Alloys, Leather Interior with Heated Seats, Navigation System, Rain Sensor, Centre Armrest, Front Fog Lights, Electric Windows, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14447, []);
	vehiclelist[43]=new Vehicle(23, false, 2007, "Renault Grand Scenic 2.0 MPV", 21600, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Navigation System, Onboard Computer, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14347, []);
	vehiclelist[44]=new Vehicle(4, false, 2007, "Renault Clio 2.0 16v Sport Hatchback", 9400, "Metallic Black", "manual", "- Description|FSH, ABS, ESP, Air Con, Alloys, Heated Seats, Navigation System, Cruise, Rain Sensor, Front Fog Lights, Leather Steering Wheel, Electric Windows, Tail Spoiler, Central Locking, Immobiliser, ‘Show Me Home’ Function, Darkened Windows|- Features|* Excellent Value For Money!", 14297, []);
	vehiclelist[45]=new Vehicle(42, false, 2007, "Renault Laguna II 1.9 Estate", 25500, "Metallic Blue", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Cruise, Rain Sensor, Centre Armrest, Front Fog Lights, Multi-Function Leather Steering Wheel, Electric Windows, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14297, []);
	vehiclelist[46]=new Vehicle(63, false, 2006, "Renault Scenic 1.5 Exception Van", 10800, "Metallic Grey", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, On Board Computer, Parking Sensors, Centre Armrest, Front Fog Lights, Leather Steering Wheel, Electric Windows, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 14297, []);
	vehiclelist[47]=new Vehicle(33, false, 2006, "Renault Laguna 1.9 Grantour Estate", 17200, "Metallic Pearl Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior, Navigation System, Centre Armrest, Front Fog Lights, Electric Windows, Roof Rails, Central Locking,|- Features|* Excellent Value For Money!", 14197, []);
	vehiclelist[48]=new Vehicle(24, false, 2007, "Renault Grand Scenic 2.0 MPV", 23700, "Metallic Grey", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Navigation System with Large Screen, Cruise, Front Fog Lights, Leather Steering Wheel, Electric Windows, Mirrors, Central Locking, Immobiliser|- Features|* Excellent Value For Money!", 14047, []);
	vehiclelist[49]=new Vehicle(65, false, 2007, "Renault Scenic 1.9 Exception Van", 27433, "Metallic Black", "manual", "- Description|ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Elec Adjust Seats, On Board Computer, Rain Sensor, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 13697, []);
	vehiclelist[50]=new Vehicle(25, false, 2006, "Renault Grand Scenic 2.0 MPV", 17600, "Metallic Platinum Grey", "manual", "- Description|FSH, ABS, ESP, ASR, Air Con, Navigation System, Onboard Computer, Front Fog Lights, Electric Windows, Mirrors and Panoramic Sunroof, Central Locking, Airbags, = Roof Rails, Immobiliser|- Features|* Excellent Value For Money!", 13547, []);
	vehiclelist[51]=new Vehicle(43, false, 2005, "Renault Laguna II 2.0 Estate", 20743, "Metallic Black", "manual", "- Description|ABS, ESP, Alloys, Leather Interior, Navigation System, On Board Computer, Centre Armrest, Parking Sensors, Rain Sensor, Front Fog Lights, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Petrol|- Features|* Excellent Value For Money!", 13547, []);
	vehiclelist[52]=new Vehicle(61, false, 2007, "Renault Modus 1.5 DCi Van", 20000, "Metallic Black", "manual", "- Description|ABS, Air Con, Heated Seats, Elec Adjust Seats, On Board Computer, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 13047, []);
	vehiclelist[53]=new Vehicle(1, false, 2007, "Renault Clio 1.5 dCi Hatchback", 16000, "Metallic Silver", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, On Board Computer, Cruise, Front Fog Lights, Electric Windows, Central Locking, Radio/CD/MP3, Immobiliser|- Features|* Excellent Value For Money!", 12997, []);
	vehiclelist[54]=new Vehicle(30, false, 2006, "Renault Kangoo 1.6 Estate", 16000, "Metallic Wild Beige", "manual", "- Description|FSH, ABS, ESP, Auto Air Con, Alloys, Leather Interior with Heated Seats, Front Fog Lights, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser, Panoramic Sunroof|- Features|* Excellent Value For Money!", 12947, []);
	vehiclelist[55]=new Vehicle(7, false, 2007, "Renault Clio 3 16v Hatchback", 6700, "Metallic Blue", "manual", "- Description|ABS, Auto Air Con, Alloys, Leather Interior with Heated Seats, On Board Computer, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 12897, []);
	vehiclelist[56]=new Vehicle(64, false, 2006, "Renault Scenic 1.6 Van", 27150, "Metallic Silver", "manual", "- Description|ABS, Air Con, Electric Windows, Mirrors, Central Locking, Radio, Immobiliser|- Features|* Excellent Value For Money!", 12847, []);
	vehiclelist[57]=new Vehicle(77, false, 2007, "Renault Twingo 1.5 Hatchback", 6998, "Beige Metallic", "manual", "- Description|ABS, Air Con, Leather Interior, Onboard Computer, Adjust Driver&#39;s Seat, Electric Windows, El Mirrors, Central Locking, Front Fog Lights, Airbags, Radio/CD, Immobilizer, Warranty.|- Features|* Excellent Value For Money!", 12397, []);
	vehiclelist[58]=new Vehicle(62, false, 2007, "Renault Modus 1.6 16v Hatchback", 6155, "Metallic Black", "manual", "- Description|ABS, Air Con, Alloys, Leather Interior, On Board Computer, Front Fog Lights, Rain Sensor, Leather Steering Wheel, Electric Windows, Central Locking, Airbags, Radio/CD, Immobiliser, Darkened Windows|- Features|* Excellent Value For Money!", 12347, []);
	vehiclelist[59]=new Vehicle(6, false, 2007, "Renault Clio 3 1.6 Hatchback", 10800, "Metallic Flaming Red", "manual", "- Description|ABS, Auto Air Con, 16” Alloys, Leather Interior, On Board Computer, Cruise, Front Fog Lights, Multi-Function Steering Wheel, Electric Windows, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 12297, []);
	vehiclelist[60]=new Vehicle(9, false, 2007, "Renault Clio Dynamic Hatchback", 18351, "Metallic Platinum Grey", "manual", "- Description|ABS, Auto Air Con, Leather Interior, On Board Computer, Xenons, Front Fog Lights, Leather Steering Wheel, Electric Windows, Central Locking, Airbags, Radio/CD/MP3, Immobiliser|- Features|* Excellent Value For Money!", 11997, []);
	vehiclelist[61]=new Vehicle(60, false, 2007, "Renault Modus 1.5 Van", 14000, "Metallic Black", "manual", "- Description|FSH, ABS, Air Con, Heated Seats, Elec Adjust Seats, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 11897, []);
	vehiclelist[62]=new Vehicle(78, false, 2008, "Renault Twingo 1.5 dCi Hatchback", 6000, "Black Metallic", "manual", "- Description|ABS, Air Con, Adjust Driver&#39;s Seat, Electric Windows, El Mirrors, Central Locking, Front Fog Lights, Airbags, Radio/CD, Immobilizer, Warranty.|- Features|* Excellent Value For Money!", 11797, []);
	vehiclelist[63]=new Vehicle(28, false, 2007, "Renault Kangoo Estate", 12011, "Metallic Red", "manual", "- Description|ABS, Air Con, Heated Seats, Front Fog Lights, Centre Armrest, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 11697, []);
	vehiclelist[64]=new Vehicle(31, false, 2007, "Renault Kangoo 1.6 Estate", 10805, "Metallic Silver", "manual", "- Description|ABS, Air Con, Heated Seats, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD|- Features|* Excellent Value For Money!", 11697, []);
	vehiclelist[65]=new Vehicle(27, false, 2007, "Renault Kangoo Estate", 11050, "Metallic Blue", "manual", "- Description|ABS, Heated Seats, Front Fog Lights, Electric Windows, Mirrors, Roof Rails, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 11547, []);
	vehiclelist[66]=new Vehicle(8, false, 2007, "Renault Clio Dynamic Hatchback", 19200, "Metallic Graphite Grey", "manual", "- Description|ABS, Auto Air Con, Leather Interior, On Board Computer, Xenons, Front Fog Lights, Leather Steering Wheel, Electric Windows, Central Locking, Airbags, Radio/CD/MP3, Immobiliser|- Features|* Excellent Value For Money!", 11347, []);
	vehiclelist[67]=new Vehicle(32, false, 2007, "Renault Kangoo 1.6 16V Privilege Estate", 17885, "Metallic Rouge", "manual", "- Description|ABS, Central Arm Rest, Electric Heated Seats, Electric Windows, Central Locking, Airbags, Radio/CD, Electrically Adjustable Outside Mirror, Roof Rails|- Features|* Excellent Value For Money!", 11047, []);
	vehiclelist[68]=new Vehicle(3, false, 2007, "Renault Clio 16v Hatchback", 6896, "Metallic Dark Brown", "manual", "- Description|FSH, ABS, Air Con, Alloys, Leather Interior with Heated Seats, Electric Windows, Central Locking, Immobiliser|- Features|* Excellent Value For Money!", 10997, []);
	vehiclelist[69]=new Vehicle(79, false, 2007, "Renault Twingo II 1.5 Hatchback", 7910, "Platin Gray Metallic", "manual", "- Description|ABS, Air Con, Adjust Driver&#39;s Seat, Adjust Steering Wheel, Electric Windows, Heated and El Mirrors, Front Fog Lights, 4x Airbags, Radio/CD, Immobilizer, Warranty.|- Features|* Excellent Value For Money!", 10947, []);
	vehiclelist[70]=new Vehicle(2, false, 2007, "Renault Clio 16V Hatchback", 18208, "Metallic Beige", "manual", "- Description|ABS, Auto Air Con, Leather Interior, Front Fog Lights, Central Locking, Airbags, Radio/CD|- Features|* Excellent Value For Money!", 10897, []);
	vehiclelist[71]=new Vehicle(29, false, 2007, "Renault Kangoo 1.6 Van", 16100, "Metallic Silver", "manual", "- Description|ABS, Air Con, Heated Seats, On Board Computer, Roof Rails, Centre Armrest, Front Fog Lights, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser, Petrol|- Features|* Excellent Value For Money!", 10347, []);
	vehiclelist[72]=new Vehicle(58, false, 2007, "Renault Modus 1.2 Advantage Hatchback", 7825, "Metallic Silver", "manual", "- Description|ABS, Air Con, Heated Seats, Elec Adjust Seats, On Board Computer, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 10147, []);
	vehiclelist[73]=new Vehicle(57, false, 2007, "Renault Modus 1.2 Advantage Hatchback", 7066, "Metallic Silver", "manual", "- Description|ABS, Air Con, Heated Seats, Elec Adjust Seats, On Board Computer, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 9997, []);
	vehiclelist[74]=new Vehicle(59, false, 2007, "Renault Modus 1.2 Advantage Hatchback", 10905, "Metallic Silver", "manual", "- Description|ABS, Air Con, Heated Seats, Elec Adjust Seats, On Board Computer, Electric Windows, Mirrors, Central Locking, Airbags, Radio/CD, Immobiliser|- Features|* Excellent Value For Money!", 9997, []);
	vehiclelist[75]=new Vehicle(56, false, 2006, "Renault Modus 1.2 16V Estate", 29763, "Metallic Beige", "manual", "- Description|ABS, Auto Air Con, Power Steering,  Adjust Seats, Navigation System ,  Central Locking, Airbags, Radio/CD, Immobiliser.|- Features|* Excellent Value For Money!", 9097, []);
	vehiclelist[76]=new Vehicle(76, false, 2005, "Renault Twingo 1.2 16V Coupé", 25392, "Metallic Blue", "manual", "- Description|FSH, ABS, Auto Air Con, Alloys, Leather Interior with Adjust Seats, Electric Windows, Power Steering, Sunroof, Central Locking, Airbags, Radio/CD, Immobiliser.|- Features|* Excellent Value For Money!", 9097, []);
	vehiclelist[77]=new Vehicle(75, false, 2007, "Renault Twingo 1.2 Hatchback", 7250, "Polar Gray Metallic", "manual", "- Description|ABS, Air Con, Electric Windows, El Mirrors, Front Fog Lights, Central Locking, Airbags, Radio/CD, Immobilizer, Full Service History, Warranty.|- Features|* Excellent Value For Money!", 8397, []);
	vehiclelist[78]=new Vehicle(74, false, 2006, "Renault Twingo 1.2 Hatchback", 10500, "Red Metallic", "manual", "- Description|ABS, Air Con, Electric Windows, El Mirrors, Front Fog Lights, Central Locking, Airbags, Radio/CD, Immobilizer.|- Features|* Excellent Value For Money!", 8397, []);
	vehiclelist[79]=new Vehicle(73, false, 2006, "Renault Twingo 1.2 Hatchback", 15200, "Black Metallic", "manual", "- Description|ABS, Air Con, Electric Windows, Central Locking, Airbags, Radio/CD, Winter Wheels, Immobilizer.|- Features|* Excellent Value For Money!", 7997, []);
}
setup.searchon=true;



// Client JavaScript, (C)AutoDirector
var run=[];setup.comlimit=1000;setup.timeout=10000;setup.thisURL=location.protocol+"//"+location.host+(location.port!='' ? ":"+location.port:"")+location.pathname;setup.activesearch=false;setup.JSsearch=null;setup.activesend=false;setup.JSsend=null;setup.senderror='';setup.salesemail='';setup.divs=['licence','search','jumptop','list','jumpend','backtop','vehicle','enqresult','enquiry','backend','sponsor'];
if(setup.orderbyon||setup.searchon){setup.Tsearch='<form id="adsearch" action="'+setup.thisURL+'" method="get"><fieldset><legend>search</legend>'
setup.Tsearch+='<div class="order"><label for="adorderby" title="change the vehicle order">order by:</label><select id="adorderby" name="adorderby"></select></div>';
if(setup.searchon) setup.Tsearch+='<div class="search"><label for="adsearchterm" title="search for a vehicle">search:</label><input id="adsearchterm" name="adsearchterm" type="text" size="20" maxlength="50" /><input type="submit" value="go" class="button" /></div>';
setup.Tsearch+='</fieldset></form>';}
else setup.Tsearch='';
setup.Tlist='<a id="ad_id[id]" href="#" title="click for more details...">[pic]<dl><dt class="model">model:</dt><dd class="model">[newcar] [year] [model]</dd><dt class="colour">'+(setup.locale=='USD' ? 'color':'colour')+':</dt><dd class="colour">[colour]</dd><dt class="gearbox">'+(setup.locale=='USD' ? 'transmission':'gearbox')+':</dt><dd class="gearbox">[gearbox]</dd><dt class="mileage">mileage:</dt><dd class="mileage">[mileage]</dd></dl><div class="price">[price]</div></a>';
setup.Tlistnone='<p>No vehicles are available at this time. Please return later.</p>';
setup.Tdetail='[pics]<dl><dt class="model">model:</dt><dd class="model">[newcar] [year] [model]</dd><dt class="colour">'+(setup.locale=='USD' ? 'color':'colour')+':</dt><dd class="colour">[colour]</dd><dt class="gearbox">'+(setup.locale=='USD' ? 'transmission':'gearbox')+':</dt><dd class="gearbox">[gearbox]</dd><dt class="mileage">mileage:</dt><dd class="mileage">[mileage]</dd><dt class="details">details:</dt><dd class="details">[info]</dd></dl><div class="price">[price]</div><img src="'+setup.viewURL+'[id]" class="count" />';
setup.Tdetailnone='The vehicle you requested is not available. Please return to the showroom.';
setup.Tenquiry='<form id="adenquiry" action="'+setup.thisURL+'" method="get"><fieldset><legend>contact us about this vehicle</legend><div><label for="adname" title="enter your name">name:</label><input id="adname" name="adname" type="text" size="20" maxlength="50" /></div><div><label for="ademail" title="enter your email address">email:</label><input id="ademail" name="ademail" type="text" size="20" maxlength="100" /></div><div><label for="adtel" title="enter your telephone number">telephone:</label><input id="adtel" name="adtel" type="text" size="20" maxlength="20" /></div><div><label for="adcomments" title="enter any questions or comments">questions:</label><textarea id="adcomments" name="adcomments" rows="4" cols="20"></textarea></div><div><input type="submit" value="send enquiry" class="button" /></div></fieldset></form>';
setup.Tback='<a href="#">&lt; back to the showroom</a>';
setup.Tsponsor="";
if(setup.adverton!=""){setup.Tsponsor+=setup.advert;
if(setup.advertURL !="") setup.Tsponsor='<a href="'+setup.advertURL+'">'+setup.Tsponsor+'</a>';}
setup.Tunlic='This showroom is powered by an unlicenced trial copy of AutoDirector. You may evaluate the AutoDirector system for 30 days. To remove this message, please visit <a href="http://www.autodirector.co.uk/">http://www.autodirector.co.uk/</a> and purchase a licence key.';
var sortTypes=[];var st=0;
sortTypes[st++]={name: "price, highest first", sort: function(a, b){return SortCars(a.price, b.price, -1);}}
sortTypes[st++]={name: "price, lowest first", sort: function(a, b){return SortCars(a.price, b.price, 1);}}
sortTypes[st++]={name: "make/model, A to Z", sort: function(a, b){return SortCars(a.model, b.model, 1);}}
sortTypes[st++]={name: "make/model, Z to A", sort: function(a, b){return SortCars(a.model, b.model, -1);}}
sortTypes[st++]={name: "year, youngest first", sort: function(a, b){return SortCars(a.year, b.year, -1);}}
sortTypes[st++]={name: "year, oldest first", sort: function(a, b){return SortCars(a.year, b.year, 1);}}
sortTypes[st++]={name: "mileage, lowest first", sort: function(a, b){return SortCars(a.mileage, b.mileage, 1);}}
sortTypes[st++]={name: "mileage, highest first", sort: function(a, b){return SortCars(a.mileage, b.mileage, -1);}}
sortTypes[st++]={name: "search result", sort: function(a, b){return SortCars(a.searchrank, b.searchrank, -1);}}
sortTypes[st++]={name: "search (reversed)", sort: function(a, b){return SortCars(a.searchrank, b.searchrank, 1);}}
function SortCars(a, b, asc){if(a<b) return -1*asc;if(a>b) return 1*asc;return 0;}
function ADstart(){if(setup.cssfile!="") DOM.LoadCSS(setup.cssfile);
setup.adnode=DOM.Id("autodirector");DefineVehicles();DefineDefaults();DefineNodes();var list=run.list;
if(!setup.orderbyon&&!setup.searchon) ShowVehicleList();
else{var adorderby=DOM.Id("adorderby");
var adsearchterm=DOM.Id("adsearchterm");
if(adsearchterm&&run.searchresult==null){list=true;adsearchterm.value=run.search;run.search="";EventSearchSubmit();}
else if(adorderby){var page=run.thispage;adorderby.value=run.orderby;EventChangeOrder();
if(run.thispage!=page){run.thispage=page;ShowVehicleList();}}}
if(!list&&run.ID>0){var id=run.ID;run.ID=0;ShowVehicle(id);}
else run.ID=0;}
function DefineDefaults(){var adcs=[];adcs.LoadAll("adcs");
var adqs=HTTParguments();var Define=function(name, def){var ret=def;if(adcs.Exists(name)) ret=adcs[name];if(adqs.Exists(name)) ret=adqs[name];
return ret;}
run.ID=Define("id", 0).toInt();run.list=(Define("list", true)==true);
if(run.ID>0&&run.list==true&&adqs.Exists('id')&&!adqs.Exists('list')) run.list=false;
run.orderby=Define("orderby", 0).toInt();run.pagesize=Define("pagesize", setup.pagesizes[0]).toInt();run.thispage=Define("thispage", 1).toInt();run.name=Define("name", "");run.email=Define("email", "");run.tel=Define("tel", "");run.comments=Define("comments", "");run.scrollpos=Define("scrollpos", 0).toInt();
var sext=(adqs.Exists("search") ? adqs.search:"");var sint=(adcs.Exists("search") ? adcs.search:"");if(sext!=""&&setup.searchon){run.orderby=(setup.orderbyon ? sortTypes.length-2:0);run.list=true;}
if(sext!=""&&sext!=sint){run.search=sext;run.searchresult=null;}
else{run.search=sint;run.searchresult=Define("searchresult", "");
if(run.searchresult!="") run.searchresult=run.searchresult.split(',');
else for(var v=0;v<vehiclelist.length;v++) run.searchresult[v]=vehiclelist[v].id;
UpdateSearchResult();}}
function SaveDefaults(){run.StoreAll("adcs");}
function DefineNodes(){DOM.RemoveChildren(setup.adnode);
var node;for(var i=0;i<setup.divs.length;i++){node=document.createElement("div");
node.id="autodirector_"+setup.divs[i];setup["node"+setup.divs[i]]=setup.adnode.appendChild(node);setup["node"+setup.divs[i]].style.display="none";}
if(!setup[String.fromCharCode(108,105,99,112,114,111,100)]){var unl=setup[String.fromCharCode(84,117,110,108,105,99)];
var unn=setup['node'+'li'+'ce'+'nce'];
if(unl.substr(31,5)=='un'+'li'+'c') DOM.NodeAdd(unn, unl);
else DOM.NodeAdd(unn, String.fromCharCode(85,78,76,73,67,69,78,67,69,68));
var us=unn.style;
us.position="static";us.display="block";us.visibility="visible";
us.width="auto";us.height="auto";
us.fontSize="1.2em";us.fontWeight="bold";us.textAlign="center";
us.padding="0.5em";us.marginBottom="0.5em";
us.color='#c00';us.backgroundColor='#ffc';us.border='3px solid #c00';}
if(setup.orderbyon||setup.searchon){DOM.NodeAdd(setup.nodesearch, setup.Tsearch);
var adorderby=DOM.Id("adorderby");
if(adorderby){var opt;for(var s=(setup.orderbyon ? 0:sortTypes.length-2);s<sortTypes.length - (setup.searchon ? 0:2);s++){opt=document.createElement("option");
opt.setAttribute("value", s);
opt.appendChild(document.createTextNode(sortTypes[s].name));
adorderby.appendChild(opt);}
adorderby.value=run.orderby;
new Event(adorderby, "change", EventChangeOrder);}
var adsearch=DOM.Id("adsearch");
if(adsearch) new Event(adsearch, "submit", EventSearchSubmit);}
if(setup.showform){DOM.NodeAdd(setup.nodeenquiry, setup.Tenquiry);
DOM.Id("adname").value=run.name;DOM.Id("ademail").value=run.email;DOM.Id("adtel").value=run.tel;DOM.Id("adcomments").value=run.comments;
new Event(DOM.Id("adenquiry"), "submit", EventSendEnquiry);new Event(DOM.Id("adcomments"), "keypress", EventLimitComments);}
DOM.NodeAdd(setup.nodebacktop, setup.Tback);DOM.NodeAdd(setup.nodebackend, setup.Tback);
if(setup.Tsponsor!=""){DOM.NodeAdd(setup.nodesponsor, setup.Tsponsor);setup.nodesponsor.style.display="block";}
new Event(setup.nodelist, "click", EventVehicleClick);new Event(setup.nodejumptop, "click", EventPageClick);new Event(setup.nodejumpend, "click", EventPageClick);new Event(setup.nodevehicle, "click", EventVehicleImageClick);new Event(DOM.Tags("a", setup.nodebacktop)[0], "click", EventBackClick);
new Event(DOM.Tags("a", setup.nodebackend)[0], "click", EventBackClick);}
function ShowVehicleList(render){run.list=true;render=(render !== false);var show="list";
if(vehiclelist.length>0){if(setup.orderbyon||setup.searchon) show+=",search";show+=",jumptop,jumpend";
var pages=Math.floor((vehiclelist.length-1) / run.pagesize)+1;
if(run.thispage>pages) run.thispage=pages;
if(render){var vs=(run.thispage-1) * run.pagesize;
var ve=vs+run.pagesize-1;
if(ve>vehiclelist.length-1) ve=vehiclelist.length-1;
var list="";
for(var v=vs;v<=ve;v++) list+=vehiclelist[v].Replace(setup.Tlist);
DOM.NodeAdd(setup.nodelist, list, true);
var pagelist='<p>'+vehiclelist.length+' vehicle'+(vehiclelist.length>1 ? 's':'')+': show ';
for(var s=0;s<setup.pagesizes.length;s++){pagelist+='<a href="#*'+setup.pagesizes[s]+'"'+(run.pagesize==setup.pagesizes[s] ? ' class="active"':'')+'>'+setup.pagesizes[s]+'</a>';
if(s+2<=setup.pagesizes.length) pagelist+=(s+2==setup.pagesizes.length ? ' or ':', ');}
pagelist+=" per page</p>";
if(pages>1){pagelist+="<ol>";
if(run.thispage>1) pagelist+='<li><a href="#-1" class="back" title="previous page">&lt;back</a></li>';
for(var p=1;p<=pages;p++){pagelist+='<li><a href="#'+p+'" title="page '+p+'"'
if(p==run.thispage) pagelist+=' class="active"';
pagelist+='>'+p+'</a></li>';}
if(run.thispage<pages) pagelist+='<li><a href="#+1" class="next" title="next page">next &gt;</a></li>';
pagelist+="</ol>";}
DOM.NodeAdd(setup.nodejumptop, pagelist, true);
DOM.NodeAdd(setup.nodejumpend, pagelist, true);}}
else{if(render) DOM.NodeAdd(setup.nodelist, setup.Tlistnone, true);}
ShowNodes(show);
SaveDefaults();}
function ShowVehicle(id){run.list=false;
var show='vehicle,backtop,backend';
var sform=setup.showform;
if(id!=run.ID){run.ID=id;
var vIndex=VehicleIndex(id);
if(vIndex>=0) DOM.NodeAdd(setup.nodevehicle, vehiclelist[vIndex].Replace(setup.Tdetail), true);
else{run.ID=0;
DOM.NodeAdd(setup.nodevehicle, setup.Tdetailnone, true);
sform=false;}}
if(sform) show+=',enquiry';
ShowNodes(show);Graphic.PositionViewport("autodirector", 0, 30);SaveDefaults();}
function ShowNodes(list){for(var n=1;n<setup.divs.length-1;n++) setup["node"+setup.divs[n]].style.display=(list.indexOf(setup.divs[n])>=0 ? "block":"none");}
function VehicleIndex(id){var i=0;
while (id!=vehiclelist[i].id&&i<vehiclelist.length-1) i++;
return (vehiclelist[i].id==id ? i:-1);}
function UpdateSearchResult(){vehiclelist.sort(sortTypes[0].sort);
var nv=vehiclelist.length;var vi;
for(var v=0;v<nv;v++){vi=0;
while (vehiclelist[v].id!=run.searchresult[vi]&&vi<run.searchresult.length) vi++;
vehiclelist[v].searchrank=(vehiclelist[v].id==run.searchresult[vi] ? nv-vi:-v);}}
function Vehicle(id, newcar, year, model, mileage, colour, gearbox, info, price, pics){this.id=id;
this.newcar=(newcar ? "NEW":"");
this.year=year.toInt();
this.model=model;
this.mileage=mileage.toInt();
this.colour=(colour!="" ? colour:"&nbsp;");
this.gearbox=(gearbox!="" ? gearbox:"&nbsp;");
this.info="|"+info+"|";
this.info=reRepeat(this.info, /\|\-+\|/g, "|<hr />|");
this.info=reRepeat(this.info, /\|-([^\|]+)\|/g, "|<h2>$1</h2>|");
this.info=reRepeat(this.info, /\_([^\|]+)\_/g, "{{strong}}$1{{/strong}}");
this.info=reRepeat(this.info, /!\(([^\||\(]+)\)/g, '{{img src="$1" /}}');
this.info=reRepeat(this.info, /\[([^\||\[]+)\]\(\(([^\||\(]+)\)\)/g, '{{a href="$2"}}$1{{/a}}');
this.info=reRepeat(this.info, /\(\(([^\||\(]+)\)\)/g, '{{a href="$1"}}$1{{/a}}');
this.info=reRepeat(this.info, /\|\*([^\|]+)\|/g, "|<li>$1</li>|");
this.info=reRepeat(this.info, /\|\+([^\|]+)\|/g, "|<liN>$1</liN>|");
this.info=reRepeat(this.info, /\|([^\<][^\|]+)\|/g, "|<p>$1</p>|");
this.info=reRepeat(this.info, /<\/li>\|<li>/g, "</li><li>");
this.info=reRepeat(this.info, /<\/liN>\|<liN>/g, "</liN><liN>");
this.info=reRepeat(this.info, /\|(<li>[^\|]+<\/li>)\|/g, "|<ul>$1</ul>|");
this.info=reRepeat(this.info, /\|(<liN>[^\|]+<\/liN>)\|/g, "|<ol>$1</ol>|");
this.info=reRepeat(this.info, /liN>/g, "li>");
this.info=reRepeat(this.info, /\{\{/g, "<");
this.info=reRepeat(this.info, /\}\}/g, ">");
this.info=reRepeat(this.info, /\|/g, "");
this.price=(price!=null ? price.toInt():null);
this.pics=pics;
this.searchrank=0;}
function reRepeat(str, regex, rep){var ostr;
do {ostr=str;str=str.replace(regex, rep);} while (str!=ostr);
return str;}
Vehicle.prototype.Replace=function(template){template=template.replace(/\[id\]/gi, this.id);
template=template.replace(/\[newcar\]/gi, this.newcar);
template=template.replace(/\[year\]/gi, this.year);
template=template.replace(/\[model\]/gi, this.model);
template=template.replace(/\[mileage\]/gi, this.mileage.format(0)+" miles");
template=template.replace(/\[colour\]/gi, this.colour);
template=template.replace(/\[gearbox\]/gi, this.gearbox);
template=template.replace(/\[info\]/gi, this.info);
var price;
switch(this.price){case null: price="sold";break;
case 1: price="please call";break;
default: price=this.price.format(0,true);}
template=template.replace(/\[price\]/gi, price);
if(this.pics.length>0){template=template.replace(/\[pic\]/gi, '<img src="'+setup.thumburl+this.pics[0]+'.jpg" title="'+this.model+'" />');
var pics="<ol>";
for(var p=0;p<this.pics.length;p++) pics+='<li><img src="'+setup.thumburl+this.pics[p]+'.jpg" alt="'+this.model+' picture" title="'+this.model+' picture '+(p+1)+' - click to enlarge..." /></li>';
pics+="</ol>";
template=template.replace(/\[pics\]/gi, pics);}
else{template=template.replace(/\[pic\]/gi, '');
template=template.replace(/\[pics\]/gi, '');}
return template;}
function EventVehicleClick(evt){evt.Raised.StopDefaultAction();
run.scrollpos=Graphic.ViewportScrollY();
var node=DOM.ParentFind(evt.Raised.Element, "a");
var id=(node ? String(node.id).substr(5).toInt():0);
if(id>0) ShowVehicle(id);}
function EventChangeOrder(evt){if(evt) evt.Raised.StopDefaultAction();
var adorderby=DOM.Id("adorderby");
if(adorderby){Graphic.ClassApply(adorderby.parentNode, "active");
run.orderby=adorderby.value;
vehiclelist.sort(sortTypes[run.orderby].sort);
var adsearchterm=DOM.Id("adsearchterm");
if(adsearchterm){if(run.orderby>=sortTypes.length-2) adsearchterm.value=run.search;
else adsearchterm.value="";}
run.thispage=1;
ShowVehicleList();
Graphic.ClassRemove(adorderby.parentNode, "active");
Graphic.PositionViewport("autodirector", 0, 30);}}
function EventSearchSubmit(evt){if(evt) evt.Raised.StopDefaultAction();
var adsearchterm=DOM.Id("adsearchterm");
if(!setup.activesearch&&adsearchterm){var sterm=adsearchterm.value.Clean();
if(sterm.length>0){if(sterm==run.search){DOM.Id("adorderby").value=sortTypes.length-2;
EventChangeOrder();}
else{setup.activesearch=true;
run.search=sterm;
adsearchterm.value=run.search;
Graphic.ClassApply(adsearchterm.parentNode, "active");
if(setup.JSsearch) DOM.HeadRemove(setup.JSsearch);
setup.JSsearch=DOM.LoadJS(setup.searchURL+escape(run.search)+"&callback=EventSearchResult()");
setTimeout(EventSearchTimeout, setup.timeout);}}}}
function EventSearchResult(){SearchReset();
UpdateSearchResult();
DOM.Id("adorderby").value=sortTypes.length-2;
EventChangeOrder();}
function EventSearchTimeout(){if(setup.activesearch){SearchReset();
DOM.HeadRemove(setup.JSsearch);
setup.JSsearch=null;
run.search="";
alert("Sorry, but your search is taking too long.\nPlease try again later.");}}
function SearchReset(){Graphic.ClassRemove(DOM.Id("adsearchterm").parentNode, "active");
setup.activesearch=false;}
function EventPageClick(evt){evt.Raised.StopDefaultAction();
var node=DOM.ParentFind(evt.Raised.Element, "a");
if(node){var href=node.getAttribute("href");
var h=href.lastIndexOf("#");
if(h>=0){var num=href.substr(h+1);
var sign=num.charAt(0);
var ps=(sign=="*");
var inc=(sign=="-"||sign=="+");
num=num.toInt();
if(ps){if(num!=run.pagesize){run.pagesize=num;
ShowVehicleList();}}
else{var newpage=(inc ? run.thispage+num:num);
if(run.thispage!=newpage){run.thispage=newpage;
ShowVehicleList();
Graphic.PositionViewport("autodirector", 0, 30);}}}}}
function EventVehicleImageClick(evt){var eNode=evt.Raised.Element;
if(eNode.nodeName.toLowerCase()!="a"&&eNode.parentNode.nodeName.toLowerCase()!="a"){evt.Raised.StopDefaultAction();
if(eNode.nodeName.toLowerCase()=="img"&&eNode.title) PopupImage(String(eNode.src).replace(new RegExp(setup.thumburl), setup.picurl));}}
function EventBackClick(evt){evt.Raised.StopDefaultAction();
if(!setup.activesend) ShowVehicleList(false);
window.scrollTo(0, run.scrollpos);}
function EventSendEnquiry(evt){evt.Raised.StopDefaultAction();
if(!setup.activesend){var msg="";
var hl=false;var nComments=DOM.Id("adcomments");run.comments=nComments.value.Trim().replace(/\r/g, "").replace(/\n/g, "\n");var oc;
do{oc=run.comments;
run.comments=run.comments.replace(/\n\n/g, "\n");} while (run.comments!=oc);
run.comments=run.comments.substr(0, setup.comlimit);
nComments.value=run.comments;
var nTel=DOM.Id("adtel");
run.tel=nTel.value.Trim();nTel.value=run.tel;
var nEmail=DOM.Id("ademail");
run.email=nEmail.value;
if(run.email!=""){run.email=verify_email(run.email);
if(run.email==""){msg="\t - a valid email address\n"+msg;hl=nEmail;}
else nEmail.value=run.email;}
if(run.email==""&&run.tel==""&&msg==""){msg=" - an email address or telephone number";hl=nEmail;}
var nName=DOM.Id("adname");
run.name=nName.value.Clean();nName.value=run.name;
if(run.name.length<4){msg=" - your name\n"+msg;hl=nName}
if(hl){alert("Please enter:\n"+msg);
try {hl.select();} catch(e){}
try {hl.focus();} catch(e){}}
else{setup.activesend=true;
setup.nodeenquiry.style.display="none";
Graphic.ClassApply(setup.nodeenqresult, "active");
DOM.SetText(setup.nodeenqresult, "sending your enquiry...");
setup.nodeenqresult.style.display="block";
var send=setup.emailURL+run.ID;
send+="&callback=EventSendResult()";
send+="&url="+escape(setup.thisURL);
send+="&name="+escape(run.name);
send+=(run.email!="" ? "&email="+escape(run.email):"");
send+=(run.tel!="" ? "&tel="+escape(run.tel):"");
send+=(run.comments!="" ? "&comments="+escape(run.comments):"");
if(setup.JSsend) DOM.HeadRemove(setup.JSsend);
setup.JSsend=DOM.LoadJS(send);
setTimeout(EventSendTimeout, setup.timeout);
SaveDefaults();}}}
function EventSendResult(){SendReset();
var msg='';
switch (setup.senderror){case '': msg+="Your enquiry was sent successfully. We will contact you shortly.";break;
case 'noemail':msg+="Sorry, but your enquiry could not be sent at this time. Please try again later";if(setup.salesemail!='') msg+=" or contact us at "+setup.salesemail+" directly";msg+=".";setup.nodeenquiry.style.display="block";break;
default:msg+="Sorry, but there was a technical problem with your enquiry.";
if(setup.salesemail!='') msg+=" Please contact us at "+setup.salesemail+" directly.";break;}
DOM.SetText(setup.nodeenqresult, msg);}
function EventSendTimeout(){if(setup.activesend){SendReset();
DOM.HeadRemove(setup.JSsend);setup.JSsend=null;
DOM.SetText(setup.nodeenqresult, "Sorry, but your enquiry is taking too long. Please try again later.");
setup.nodeenquiry.style.display="block";}}
function SendReset(){Graphic.ClassRemove(setup.nodeenqresult, "active");
setup.activesend=false;}
function EventLimitComments(evt){var key=evt.Raised.Key;
if(evt.Raised.Element.value.length>setup.comlimit) evt.Raised.Element.value=evt.Raised.Element.value.substr(0, setup.comlimit);
if(evt.Raised.ControlKey==''&&key.length+evt.Raised.Element.value.length>setup.comlimit) evt.Raised.StopDefaultAction();}
function PopupImage(img){var scnWidth=(screen.availWidth ? screen.availWidth:640);
var scnHeight=(screen.availHeight ? screen.availHeight:480);
var size=setup.picsize+20;
var win=window.open(img, "", "width="+size+",height="+size+",left="+Math.floor((scnWidth-size)/2)+",top="+Math.floor((scnHeight-size)/2)+",location=0,directories=0,menubar=0,toolbar=0,status=0,scrollbars=0,resizable=1");
var cImage=new Image;cImage.src=img;
if(cImage.complete) PopupImageResize(win, cImage);
else new Event(cImage, "load", function(evt){evt.Detach();PopupImageResize(win, cImage);});}
function PopupImageResize(win, cImage){var imgWidth=cImage.width+30;
var imgHeight=cImage.height+70;
var scnWidth=(screen.availWidth ? screen.availWidth:640);
var scnHeight=(screen.availHeight ? screen.availHeight:480);
if(scnWidth>imgWidth&&scnHeight>imgHeight){try {win.resizeTo(imgWidth, imgHeight);} catch(e){}
try {win.moveTo(Math.floor((scnWidth-imgWidth)/2), Math.floor((scnHeight-imgHeight)/2));} catch(e){}}
win.focus();}
Object.prototype.toInt=function(){var str=String(this);
str=str.replace(/[^0-9-.]/g, "");
var ret=parseInt(str, 10);
if(isNaN(ret)) ret=0;
return ret;}
Number.prototype.format=function(dp, currency){var num=this;
var ThousandsSep=(setup.locale=="EURO" ? " ":",");var DecimalPoint=(setup.locale=="EURO" ? ",":".");var NegativePre="-";var NegativePost="";var CurrencyPre="\u00a3";var CurrencyPost="";if(setup.locale=="USD") CurrencyPre="$";if(setup.locale=="EURO"){CurrencyPre="";CurrencyPost="\u20ac";}
var neg, bdp, adp, obdp;if(isNaN(num)) num=0;
dp=Math.abs(dp.toInt());neg=(num<0);
num=String(Math.round(Math.abs(num) * Math.pow(10, dp))).Pad(dp, '0');
bdp=num.substr(0, num.length - dp);adp=num.substr(num.length - dp);
if(bdp=="") bdp="0";
else{do {obdp=bdp;
bdp=bdp.replace(/(\d+)(\d{3})/g, "$1" + ThousandsSep + "$2");} while (bdp!=obdp);}
num=bdp + (dp>0 ? DecimalPoint + adp:"");
if(currency === true) num=CurrencyPre + num + CurrencyPost;
if(neg) num=NegativePre + num + NegativePost;
return num;}
String.prototype.Trim=function(){return this.replace(/^\s*|\s*$/g, "");}
String.prototype.Clean=function(){return this.replace(/[^\w|\s|@|&|.|,|!|%|(|)|+|-]/g, "").replace(/_/g, " ").replace(/\s+/g, " ").Trim();}
String.prototype.Pad=function(length, padChar){var str=String(this);
length=length.toInt();
if(typeof padChar=='undefined') padChar=" ";
else{padChar=String(padChar);
if(padChar.length<1) padChar=" ";}
while (str.length<length) str=padChar + str;
return str;}
function HTTParguments(){var args=new Array();
var arglist=location.search.Trim();
if(arglist.charAt(0)=='?') arglist=arglist.substr(1);
var argsep=arglist.split('&');
var thisValue;
for(var i=0;i<argsep.length;i++){thisValue=argsep[i].split("=");
if(thisValue.length==2) args[unescape(thisValue[0].toLowerCase())]=unescape(thisValue[1]);}
return args;}
Array.prototype.Exists=function(key){var type=typeof(this[key]);
return (type!='undefined'&&type!='function');}
Array.prototype.StoreAll=function(name, minutes){var values="";
for(var key in this) if(typeof(this[key])!='function') values+=(values=="" ? "":"[:]") + key.toLowerCase() + "[=]" + String(this[key]);
CookieSet(name, values, minutes);}
Array.prototype.LoadAll=function(name){var allValues=CookieGet(name);
var values=allValues.split("[:]");
var thisValue;
for(var i=0;i<values.length;i++){thisValue=values[i].split("[=]");
if(thisValue.length==2){if(thisValue[1]=="true"||thisValue[1]=="false") this[thisValue[0].toLowerCase()]=(thisValue[1]=="true");
else this[thisValue[0].toLowerCase()]=thisValue[1];}}}
function CookieSet(name, value, minutes){value=String(value).replace(/\r/g, "").replace(/\n/g, "[#]");
if(minutes){var date=new Date();
date.setTime(date.getTime()+(minutes*60000));
var expires=";expires="+date.toGMTString();}
else expires="";
document.cookie=name+"="+String(value)+expires+";path="+location.pathname.substr(0, location.pathname.indexOf("/",1)+1);}
function CookieGet(name){var ret="";
name+="=";
var allCookies=document.cookie.split(';');
var thisCookie;
for(var i=0;i<allCookies.length&&ret=="";i++){thisCookie=allCookies[i].Trim();
if(thisCookie.indexOf(name)==0) ret=thisCookie.substring(name.length).replace(/\[#\]/g, "\n");}
return ret;}
function CookiesEnabled(){CookieSet("testcookie", "testvalue", 0.05);
return (CookieGet("testcookie")=="testvalue");}
function verify_email(email){email=email.Trim().toLowerCase();
if(email!="") if(email.replace(/^.+@[a-z0-9]+([_\.\-]{0,1}[a-z0-9]+)*([\.]{1}[a-z0-9]+)+$/, "")!="") email="";
return email;}
var DOM=new function(){this.ElementNode=1;
this.AttributeNode=2;
this.TextNode=3;
this.CommentNode=8;
this.Enabled=(document.getElementById&&document.getElementsByTagName);
this.Id=function(id, rootElement){var element=null;
if(this.Enabled){if(typeof rootElement=='string') rootElement=this.Id(rootElement);
if(!rootElement) rootElement=document;
element=rootElement.getElementById(String(id));}
return element;}
this.Tags=function(tag, rootElement){var elements=new Array(0);
if(this.Enabled){if(typeof rootElement=='string') rootElement=this.Id(rootElement);
if(!rootElement) rootElement=document;
elements=rootElement.getElementsByTagName(String(tag));}
return elements;}
this.NodeAdd=function(element, content, clear){if(typeof element=='string') element=this.Id(element);
if(clear === true) this.RemoveChildren(element);
return (element.innerHTML=content);}
this.ParentFind=function(element, nodename){if(typeof element=='string') element=this.Id(element);
nodename=nodename.toLowerCase();
while (element.nodeName.toLowerCase()!=nodename&&element.parentNode) element=element.parentNode;
if(element.nodeName.toLowerCase()!=nodename) element=false;
return element;}
this.ChildElements=function(element){var ce=new Array();
if(typeof element=='string') element=this.Id(element);
if(element){for(var i=0;i<element.childNodes.length;i++){if(element.childNodes[i].nodeType==this.ElementNode&&element.childNodes[i].nodeName!="!") ce.push(element.childNodes[i]);}}
return ce;}
this.FindNodeType=function(element, ntype){var found=null;
if(typeof element=='string') element=this.Id(element);
if(element){var thisNode;
for(var i =0;i<element.childNodes.length&&found==null;i++){thisNode=element.childNodes[i];
if(thisNode.nodeType==ntype) found=thisNode;
else found=this.FindNodeType(thisNode, ntype);}}
return found;}
this.SetText=function(element, text){if(typeof element=='string') element=this.Id(element);
if(element){var tNode=this.FindNodeType(element, this.TextNode);
if(tNode) tNode.nodeValue=text;
else element.appendChild(document.createTextNode(text));}}
this.RemoveChildren=function(element){if(typeof element=='string') element=this.Id(element);
if(element) while (element.lastChild) element.removeChild(element.lastChild);}
this.AbsoluteX=function(element){var pos=0;
if(typeof element=='string') element=this.Id(element);
if(element&&typeof element.offsetLeft!='undefined'){pos=element.offsetLeft;
while ((element=element.offsetParent)) pos+=element.offsetLeft;}
return pos;}
this.AbsoluteY=function(element){var pos=0;
if(typeof element=='string') element=this.Id(element);
if(element&&typeof element.offsetTop!='undefined'){pos=element.offsetTop;
while ((element=element.offsetParent)) pos+=element.offsetTop;}
return pos;}
this.HeadAppend=function(element){var head=this.Tags("head");
return (head.length==1 ? head[0].appendChild(element):null);}
this.HeadRemove=function(element){var head=this.Tags("head");
return (head.length==1 ? head[0].removeChild(element):null);}
this.LoadJS=function(file){var jsfrag=document.createElement("script");
jsfrag.setAttribute("type", "text/javascript");jsfrag.setAttribute("src", file);
return this.HeadAppend(jsfrag);}
this.LoadCSS=function(file){var cssfrag=document.createElement("link");
cssfrag.setAttribute("type", "text/css");cssfrag.setAttribute("rel", "stylesheet");cssfrag.setAttribute("media", "screen");cssfrag.setAttribute("href", file);
return this.HeadAppend(cssfrag);}}
var Graphic=new function(){if(typeof window.innerWidth!='undefined'){this.ViewportWidth=function(){return window.innerWidth;}
this.ViewportHeight=function(){return window.innerHeight;}}
else{this.ViewportWidth=function(){if(typeof document.documentElement!='undefined'&&typeof document.documentElement.clientWidth!='undefined'&&document.documentElement.clientWidth!=0) return document.documentElement.clientWidth;
else return DOM.Tags("body")[0].clientWidth;}
this.ViewportHeight=function(){if(typeof document.documentElement!='undefined'&&typeof document.documentElement.clientHeight!='undefined'&&document.documentElement.clientHeight!=0)return document.documentElement.clientHeight;
else return DOM.Tags("body")[0].clientHeight;}}
if(typeof window.pageXOffset!='undefined'){this.ViewportScrollX=function(){return window.pageXOffset;}
this.ViewportScrollY=function(){return window.pageYOffset;}}
else{this.ViewportScrollX=function(){if(typeof document.documentElement.scrollLeft!='undefined'&&document.documentElement.scrollLeft>0) return document.documentElement.scrollLeft;
else if(typeof document.body.scrollLeft!='undefined') return document.body.scrollLeft;
else return 0;}
this.ViewportScrollY=function(){if(typeof document.documentElement.scrollTop!='undefined'&&document.documentElement.scrollTop>0) return document.documentElement.scrollTop;
else if(typeof document.body.scrollTop!='undefined') return document.body.scrollTop;
else return 0;}}
this.ClassApply=function(element, cname){if(typeof element=='string') element=DOM.Id(element);
if(element&&cname.length>0){var cc=" "+element.className+" ";
if(cc.indexOf(" "+cname+" ")<0) cc+=cname;
element.className=cc.Trim();}}
this.ClassRemove=function(element, cname){if(typeof element=='string') element=DOM.Id(element);
if(element&&cname.length>0){var cc=" "+element.className+" ";
cc=cc.replace(new RegExp(" "+cname+" ", "gi"), "");
element.className=cc.Trim();}}
this.PositionViewport=function(element, vtop, vbottom, absolute){if(absolute !== true){var vh=this.ViewportHeight();
vtop=Math.floor((vtop/100) * vh);
vbottom=Math.ceil((vbottom/100) * vh);}
var ey=DOM.AbsoluteY(element);
var vy=this.ViewportScrollY();
if(ey<vy+vtop) this.ScrollViewport(ey-vtop);
else if(ey>vy+vbottom) this.ScrollViewport(ey-vbottom);}
this.AnimationFrames=10;
this.AnimationPause=300;
this.ScrollViewport=function(moveTo, frame, pause){if(isNaN(frame)){var cTime=new Date();frame=this.AnimationFrames;}
var moveFrom=this.ViewportScrollY();
window.scrollTo(0, moveFrom+Math.floor((moveTo - moveFrom) / frame));
if(frame>1&&moveFrom!=this.ViewportScrollY()){if(isNaN(pause)){pause=((new Date() - cTime) + 8) * 2;
frame=Math.floor(this.AnimationPause / pause);}
else frame--;
setTimeout(function(){Graphic.ScrollViewport(moveTo, frame, pause);}, pause);}}}
function Event(element, type, handler){this.Raised=null;
if(typeof element.AttachedEvents=='undefined'||element.AttachedEvents==null){element.AttachedEvents=new EventStore();
var existingEvent=element["on"+type];
if(existingEvent) new Event(element, type, existingEvent);
EventStore.ElementList[EventStore.ElementList.length]=element;
if(EventStore.ElementList.length==1) new Event(window, "unload", EventStore.CleanUp);}
var hIndex=element.AttachedEvents.Add(element, type, this);
this.Handler=function(evtinfo){this.Raised=evtinfo;
return handler(this);}
this.Detach=function(){element.AttachedEvents.Detach(type, hIndex);}}
function EventStore(){this.Type=[];}
EventStore.prototype.Add=function(element, type, EventObj){if(typeof this.Type[type]=='undefined'){this.Type[type]=[];
element["on"+type]=EventStore.Handler;}
var hIndex=this.Type[type].length;
this.Type[type][hIndex]=EventObj;
return hIndex;}
EventStore.prototype.Detach=function(type, hIndex){if(typeof this.Type[type][hIndex]=='object') delete this.Type[type][hIndex];}
EventStore.prototype.RunEvents=function(evtinfo){var ret=true;
if(typeof this.Type[evtinfo.Type]!='undefined'){var EventObj;
for(var h=0;h<this.Type[evtinfo.Type].length;h++){EventObj=this.Type[evtinfo.Type][h];
if(typeof EventObj=='object') ret &= (EventObj.Handler(evtinfo) !== false);}}
return ret;}
EventStore.Handler=function(evt){return (this.AttachedEvents ? this.AttachedEvents.RunEvents(new EventInformation(evt)):null);}
EventStore.ElementList=[];
EventStore.CleanUp=function(){for(var e=0;e<EventStore.ElementList.length;e++) EventStore.ElementList[e].AttachedEvents=null;
EventStore.ElementList=null;}
function EventInformation(event){if(event){this.Event=event;
this.StopPropagation=function(){this.Event.stopPropagation();}
this.StopDefaultAction=function(){this.Event.preventDefault();}}
else{this.Event=window.event;
this.StopPropagation=function(){this.Event.cancelBubble=true;};this.StopDefaultAction=function(){this.Event.returnValue=false;}}
this.Type="";this.Element=null;this.Key="";this.ControlKey="";this.Shift=false;this.Ctrl=false;this.Alt=false;this.MouseX=0;this.MouseY=0;
if(this.Event){this.Type=String(this.Event.type).toLowerCase();
this.Element=(this.Event.target ? this.Event.target:this.Event.srcElement);
var charCode=this.Event.charCode;
var keyCode=(this.Event.keyCode ? this.Event.keyCode:charCode);
if(charCode!=0&&keyCode>=32) this.Key=String.fromCharCode(keyCode);
if(this.Key==""){this.ControlKey=Event.CK[keyCode];
if(!this.ControlKey) this.ControlKey="";}
this.Ctrl=this.Event.ctrlKey;this.Alt=this.Event.altKey;this.Shift=this.Event.shiftKey;var mre=/mouse|click/i;
if(mre.test(this.Type)){this.MouseX=(this.Event.pageX ? this.Event.pageX:this.Event.clientX + Math.max(document.documentElement.scrollLeft, document.body.scrollLeft));
this.MouseY=(this.Event.pageY ? this.Event.pageY:this.Event.clientY + Math.max(document.documentElement.scrollTop, document.body.scrollTop));}}}
Event.CK=[];Event.CK[8]="backspace";Event.CK[9]="tab";Event.CK[13]="enter";Event.CK[27]="esc";Event.CK[33]="pageup";Event.CK[34]="pagedown";Event.CK[35]="end";Event.CK[36]="home";Event.CK[37]="left";Event.CK[38]="up";Event.CK[39]="right";Event.CK[40]="down";Event.CK[45]="insert";Event.CK[46]="delete";Event.CK[112]="f1";Event.CK[113]="f2";Event.CK[114]="f3";Event.CK[115]="f4";Event.CK[116]="f5";Event.CK[117]="f6";Event.CK[118]="f7";Event.CK[119]="f8";Event.CK[120]="f9";Event.CK[121]="f10";Event.CK[122]="f11";Event.CK[123]="f12";Event.CK[144]="numlock";Event.CK[145]="scrolllock";
setup.OK=true;
if(!DOM.Enabled){setup.OK=false;document.write("<p>Please use a more modern browser to view the showroom.</p>");}
else{if(!DOM.Id("autodirector")){setup.OK=false;document.write('<p><strong>AutoDirector error</strong>: the page is missing the &lt;div id="autodirector"&gt;tag.</p>');}
if(DOM.Tags("head").length!=1){setup.OK=false;document.write('<p><strong>AutoDirector error</strong>: the page does not have one &lt;head&gt;tag.</p>');}}
if(setup.OK) new Event(window, "load", ADstart);

