function fastTrackControl(formName) {this.isUndef = isUndef;if(this.isUndef(document.forms[formName])) return false; this.theForm = document.forms[formName];this.theCaller = this.theForm['atopLocation'];this.theTarg = ''; this.locCode = '';  this.regCache = ''; this.document = this.theForm.ownerDocument || this.theForm.document; this.theTarg = this.document.createElement("SELECT");this.targContainer = document.getElementById('locationSelects');this.targContainer.appendChild(this.theTarg);this.theTarg.name = 'atopResort'; var newOption = new Option('-- Destination (Optional) --','');this.theTarg.options[0] = newOption;this.theTarg.options.selectedIndex = 0;this.locs = new Array('LO','HA','HE','BC','IS','EA','HC','IR','LD','CN','NE','S1','SC','BS','WA','WC','YO','YH','YB','YN','YY','YS','YL','YT','YW','YC','YJ','YP','YA','YF','YD','YR','YZ','YU','YM','YK','YV','YE','YG','YQ','YX');this.reg = new Array(new Array('BH','DC','EC','KB','KX','NL','OC','OS','PM','SR','VW'),new Array('CQ','GA','GB','HE','HF','LU','LW','SS'),new Array('BI','BP','DE','EM','HW','LC','LN','NO','NT','SA','ST'),new Array('BA','BL','SN','WB'),new Array('GU','IM','JE'),new Array('CA','EX','GY','IP','KL','NN','NR','PE','SF'),new Array('NW','OX','SW'),new Array('BF','CO','DB','KY','LK','NI','WA'),new Array('NK','SL'),new Array('BK','CH','KN','LI','LP','MA','MI','MJ'),new Array('DU','NS','NU'),new Array('AB','AY','CE','ED','FW','GL','GZ','IV','LL','OE'),new Array('BO','IW','NF','PO','SO','WE'),new Array('BR','ES','KC','MS','WS'),new Array('AN','CR','LD','NP','SG','WM','WN','WW'),new Array('ET','FA','ND','NQ','PL','PS','SM','TO'),new Array('HG','HU','LE','NY','SC','SY','YO'),new Array('IN','SZ','VI'),new Array('AW','BG','BS','GH','OT'),new Array('FT','GC','LZ','TE'),new Array('AG','BX','BY','CV','DM','JA','MX','S7'),new Array('CY'),new Array('BQ','BU','BW','CN','KR','MW','PG','RI','SD','SP','TN','VN','WR','ZA'),new Array('EG'),new Array('BV','HK','KA','S6','SJ'),new Array('AC','BD','BZ','CS','DJ','FR','LF','LY','NM','PA','PC','PV','RE','SB','SQ'),new Array('BE','CG','DR','FK','HA','HN','LG','MU','SU'),new Array('AT','CI','CU','HI','KO','MY','RH','SX','ZN'),new Array('AM','HB','HO','RT','UT'),new Array('BN','FL','IL','IT','ML','NA','PD','PI','PZ','RM','RO','SK','TR','TU','UM','VE','VR'),new Array('LX'),new Array('MT'),new Array('AD','DI'),new Array('MC','TV'),new Array('AL','LS','MR','PR'),new Array('BM','CP','GO','HL','OL','RY','SH'),new Array('SV'),new Array('AE','BC','BJ','CB','CD','CF','CK','GD','GI','GR','IB','JZ','MD','MN','PB','S2','SE','SI','TA','TL','VA'),new Array('BB','GE','LM','ZU'),new Array('IS','MB'),new Array('AA','BT','CC','LO','LV','MM','NE','OR','S3','TT','WH'));this.txt = new Array(new Array('B\'swater/Paddington/Queensway','City/Docklands/Excel','Earls Court/South Ken/West Lon','Knightsbridge/High St. Ken','Euston/Bloomsbury//Kings X','Regents Pk/M\'da Vale/North Lon','Central-Strand/Cov.Gdn/Holborn','Central-Mayfair/Ox. St/West-End','Central-Baker St/Marylebone','South London','Victoria/Westminster/Waterloo'),new Array('Chessington/Thorpe Themeparks','Gatwick - With Parking','Gatwick - No Parking','Heathrow - With Parking','Heathrow - No Parking','Luton','Legoland Area','Stansted'),new Array('Birmingham','Birmingham Airport','Derby/Notts','East Midlands','Hereford/Worcs','Leicestershire','Lincolnshire','Northants','West Mids Area','Stratford Area','Stoke/Staffs'),new Array('Bath Area','Bristol','Swindon Area','Weston Super Mare'),new Array('Guernsey','Isle Of Man','Jersey'),new Array('Cambridge Area','Essex','Great Yarmouth','Ipswich','Kings Lynn','Norfolk-General','Norwich','Peterborough','Suffolk-General'),new Array('North','Oxford Area','West'),new Array('Belfast','Cork Area','Dublin','Killarney','Limerick Area','Nthn Ireland Genl','Waterford'),new Array('North Lakes','South Lakes'),new Array('Blackpool','Chester','Greater Manchester','Liverpool Area','Preston Area','Manchester','Manchester Airport','Manchester Airport - No Parking'),new Array('Durham Area','Newcastle Area','Northumbria'),new Array('Aberdeen Area','Ayrshire','Central Area','Edinburgh City','Fort William Area','Glasgow & Area','Glasgow Airport','Highlands','Loch Lomond','Edinburgh Outer'),new Array('Bournemouth Area','Isle Of Wight','New Forest','Portsmouth Area','Southampton Area','Weymouth Area'),new Array('Brighton Area','Sussex Coast','Kent Coast','Mid Kent','Mid Sussex'),new Array('Anglesey','Cardiff Area','Llandudno Area','Newport Area','Swansea Area','Mid Wales','North Wales Genl','West Wales'),new Array('Exeter Area','Falmouth','North Devon','Newquay Area','Plymouth Area','Penzance Area','Dorset/Somerset','Torquay Area'),new Array('Harrogate','Hull/Grimsby','Leeds/Bradford','North Yorks','Scarborough','South Yorks','York'),new Array('Innsbruck','Salzburg','Vienna'),new Array('Antwerp','Bruges','Brussels','Ghent','Ostend'),new Array('Fuerteventura','Gran Canaria','Lanzarote','Tenerife'),new Array('Antigua','Bahamas','Barbados','Cuba','Dominican Republic','Jamaica','Mexico','St. Lucia'),new Array('Cyprus'),new Array('Bratislava','Budapest','Bulgaria','Croatia General','Krakow','Moscow','Prague','Riga','Sofia','St Petersburg','Tallinn','Vilnius','Warsaw','Zagreb'),new Array('Egypt'),new Array('Bangkok','Hong Kong','Kuala Lumpur','Sydney','Singapore'),new Array('Annecy','Bordeaux','Biarritz','Northern France','Dijon','French Riviera','Lille','Lyon','Normandy','Paris Inner','Paris Outer and Disney','Provence','Reims','Strasbourg','South West France'),new Array('Berlin','Cologne','Dresden','Frankfurt','Hamburg','Hannover','Leipzig','Munich','Stuttgart'),new Array('Athens','Crete','Corfu','Halkidiki','Kos','Mykonos','Rhodes','Santorini','Zante'),new Array('Amsterdam Area','The Hague','Holland General','Rotterdam','Utrecht'),new Array('Bologna','Florence','Italian Lakes','Southern Italy','Milan','Neapolitan Riviera','Padova','Piacenza','Pisa','Rimini','Rome','Sicily','Trieste','Turin','Tuscany/Umbria','Venice','Verona'),new Array('Luxembourg'),new Array('Malta'),new Array('Abu Dhabi','Dubai/Al Fujairah'),new Array('Morocco','Tunisia'),new Array('Algarve','Lisbon And Coast','Madeira','Porto'),new Array('Norway General','Copenhagen','Gothenburg','Helsinki','Oslo','Reykjavik','Stockholm'),new Array('South Africa'),new Array('Costa Blanca','Barcelona','Bilbao','Cordoba','Costa Del Sol','Costa Brava','Costa de la Luz','Granada','Gibraltar','Gerona','Ibiza','Jerez/Cadiz','Madrid','Menorca','Majorca','Salamanca','Seville','Costa Dorada','Tarragona','Toledo','Valencia'),new Array('Basel','Geneva','Lucerne','Switzerland General'),new Array('Istanbul','Turkey General'),new Array('Atlanta','Boston','Chicago','Los Angeles','Las Vegas','Miami Area','New York','Orlando Area','San Francisco','Toronto Area','Washington DC'));this.comb = new Array(this.reg,this.txt);this.populateRegions = populateRegions;this.resetLocation = resetLocation;this.selRegion = selRegion;/**capture the event here so that the proper headClick method can execute methods**/var fakeThis = this;this._populateRegions = function (e) {fakeThis.populateRegions(e);};if(typeof this.theCaller.addEventListener != "undefined") this.theCaller.addEventListener("change", this._populateRegions, false);else if (typeof this.theCaller.attachEvent != "undefined") this.theCaller.attachEvent("onchange", this._populateRegions);else this.theCaller.onchange = this._populateRegions;this._populateRegions();if(!this.isUndef(this.theForm['regionCache'])) {this.regCache = this.theForm['regionCache'].value;this.selRegion();}}function selRegion() {for(var i = 0; i < this.theTarg.length; i++) {if(this.theTarg.options[i].value == this.regCache) {this.theTarg.options[i].selected = true;break;}}}function populateRegions(e) {this.locCode = this.theCaller.options[this.theCaller.options.selectedIndex].value;if(this.locCode == null) return; for(i=0;i < this.locs.length;i++) {if(this.locs[i] == this.locCode) {temp = new Array(this.comb[0][i],this.comb[1][i]);this.theTarg.length = 1;for(x=0;x <  temp[0].length;x++) {this.theTarg.options[this.theTarg.length] = new Option(temp[1][x],temp[0][x]);}break;}}}function resetLocation() {this.theCaller.options.selectedIndex = 0;}/** * isUndef(v) * * IE 5.0 does not support the undefined keyword, so we cannot do a direct * comparison such as v===undefined so we have to test against an undefined variable. * * @PARAM v - var - variable to test whether defined or not * @RETURN boolean */function isUndef(v) {var u;return v===u;}

