
function DynamicOptionList(){if(arguments.length < 2){alert("Not enough arguments in DynamicOptionList()");}this.target = arguments[0];this.dependencies = new Array();for(var i=1;i<arguments.length;i++){this.dependencies[this.dependencies.length] = arguments[i];}this.form = null;this.dependentValues = new Object();this.defaultValues = new Object();this.options = new Object();this.delimiter = "|";this.longestString = "";this.numberOfOptions = 0;this.addOptions = DynamicOptionList_addOptions;this.populate = DynamicOptionList_populate;this.setdelimiter = DynamicOptionList_setdelimiter;this.setdefaultOption = DynamicOptionList_setdefaultOption;this.printOptions = DynamicOptionList_printOptions;this.init = DynamicOptionList_init;}
function DynamicOptionList_setdelimiter(val){this.delimiter = val;}
function DynamicOptionList_setdefaultOption(condition, val){if(typeof this.defaultValues[condition] == "undefined" || this.defaultValues[condition]==null){this.defaultValues[condition] = new Object();}for(var i=1;i<arguments.length;i++){this.defaultValues[condition][arguments[i]]=1;}}
function DynamicOptionList_init(theform){this.form = theform;this.populate();}
function DynamicOptionList_addOptions(dependentValue){if(typeof this.options[dependentValue] != "object"){this.options[dependentValue] = new Array();}for(var i=1;i<arguments.length;i+=2){if(arguments[i].length > this.longestString.length){this.longestString = arguments[i];}this.numberOfOptions++;this.options[dependentValue][this.options[dependentValue].length] = arguments[i];this.options[dependentValue][this.options[dependentValue].length] = arguments[i+1];}}
function DynamicOptionList_printOptions(){if((navigator.appName == "Netscape") &&(parseInt(navigator.appVersion) <= 4)){var ret = "";for(var i=0;i<this.numberOfOptions;i++){ret += "<OPTION>";}ret += "<OPTION>"
for(var i=0;i<this.longestString.length;i++){ret += "_";}document.writeln(ret);}}
function DynamicOptionList_populate(){var theform = this.form;var i,j,obj,obj2;this.dependentValues = new Object;var dependentValuesInitialized = false;for(i=0;i<this.dependencies.length;i++){var sel = theform[this.dependencies[i]];var selName = sel.name;if(!dependentValuesInitialized){dependentValuesInitialized = true;for(j=0;j<sel.options.length;j++){if(sel.options[j].selected){this.dependentValues[sel.options[j].value] = true;}}}else{var tmpList = new Object();var newList = new Object();for(j=0;j<sel.options.length;j++){if(sel.options[j].selected){tmpList[sel.options[j].value] = true;}}for(obj in this.dependentValues){for(obj2 in tmpList){newList[obj + this.delimiter + obj2] = true;}}this.dependentValues = newList;}}var targetSel = theform[this.target];var targetSelected = new Object();for(i=0;i<targetSel.options.length;i++){if(targetSel.options[i].selected){targetSelected[targetSel.options[i].value] = true;}}targetSel.options.length = 0;for(i in this.dependentValues){if(typeof this.options[i] == "object"){var o = this.options[i];for(j=0;j<o.length;j+=2){var text = o[j];var val = o[j+1];targetSel.options[targetSel.options.length] = new Option(text, val, false, false);if(typeof this.defaultValues[i] != "undefined" && this.defaultValues[i]!=null){for(def in this.defaultValues[i]){if(def == val){targetSelected[val] = true;}}}}}}targetSel.selectedIndex=-1;for(i=0;i<targetSel.options.length;i++){if(targetSelected[targetSel.options[i].value] != null && targetSelected[targetSel.options[i].value]==true){targetSel.options[i].selected = true;}}}

// List by CITY
var listCITY = new DynamicOptionList("city","countrycodeval");
listCITY.addOptions("FI","All Cities","All Cities","Helsinki","Helsinki");
listCITY.setdefaultOption("FI","All Cities");
listCITY.addOptions("FR","All Cities","All Cities","Paris","Paris","Paris - Marne-La-Vallèe","Paris - Marne-La-Vallèe");
listCITY.setdefaultOption("FR","All Cities");
listCITY.addOptions("IT","All Cities","All Cities","Amalfi","Amalfi","Ancona - Fabriano","Ancona - Fabriano","Arezzo - Bibbiena","Arezzo - Bibbiena","Arezzo - Cavriglia","Arezzo - Cavriglia","Arezzo - Cortona","Arezzo - Cortona","Arezzo - San Giovanni Valdano","Arezzo - San Giovanni Valdano","Bologna","Bologna","Capri","Capri","Catania","Catania","Cefalù","Cefalù","Desenzano del Garda - Garda La","Desenzano del Garda - Garda La","Fabriano - Borgo Tufico","Fabriano - Borgo Tufico","Florence","Florence","Florence  - Tavarnelle Val di","Florence  - Tavarnelle Val di","Florence -  Vicchio","Florence -  Vicchio","Florence - Antella","Florence - Antella","Florence - Certaldo","Florence - Certaldo","Florence - Fiesole","Florence - Fiesole","Florence - Marcialla/Certaldo","Florence - Marcialla/Certaldo","Florence - Montespertoli","Florence - Montespertoli","Florence - Tavarnuzze","Florence - Tavarnuzze","Florence - Viottolone","Florence - Viottolone","Forlì","Forlì","Forlì - Castrocaro Terme","Forlì - Castrocaro Terme","Frosinone - Fiuggi","Frosinone - Fiuggi","Grosseto - Massa Marittima","Grosseto - Massa Marittima","Grosseto - Orbetello","Grosseto - Orbetello","Ischia","Ischia","Latina - Sperlonga","Latina - Sperlonga","Lauro cittadina in Avellino","Lauro cittadina in Avellino","Lucca","Lucca","Milan","Milan","Naples","Naples","Novara - Orta San Giulio","Novara - Orta San Giulio","Nuoro - Dorgali","Nuoro - Dorgali","Perugia","Perugia","Perugia - Assisi","Perugia - Assisi","Perugia - Campello","Perugia - Campello","Pisa - Latignano di Cascina","Pisa - Latignano di Cascina","Pisa - Lido di Camaiore","Pisa - Lido di Camaiore","Pisa - Pontedera","Pisa - Pontedera","Pisa - Volterra","Pisa - Volterra","Pistoia - Lamporecchio","Pistoia - Lamporecchio","Pordenone - Caneva","Pordenone - Caneva","Rieti - Colli sul Velino","Rieti - Colli sul Velino","Rimini","Rimini","Rimini - Cattolica","Rimini - Cattolica","Rimini - Riccione","Rimini - Riccione","Rome","Rome","Salerno - Minori","Salerno - Minori","Salerno - Positano","Salerno - Positano","Salerno - Praiano","Salerno - Praiano","Salerno - Vietri Sul Mare","Salerno - Vietri Sul Mare","Sassari - Castelsardo","Sassari - Castelsardo","Sassari - San Pantaleo","Sassari - San Pantaleo","Siena","Siena","Siena - Chianciano Terme","Siena - Chianciano Terme","Siena - Chiusi","Siena - Chiusi","Siena - Colle Val d'Elsa","Siena - Colle Val d'Elsa","Siena - Gaiole in Chianti","Siena - Gaiole in Chianti","Siena - Monteriggioni","Siena - Monteriggioni","Siena - San Gimignano","Siena - San Gimignano","Siena - San Giovanni d'Asso","Siena - San Giovanni d'Asso","Siena - Torrita di Siena","Siena - Torrita di Siena","Siracusa - Noto","Siracusa - Noto","Sirmione - Garda Lake","Sirmione - Garda Lake","Sorrento","Sorrento","treviso - Farra di Soligo","treviso - Farra di Soligo","treviso - Mogliano Veneto","treviso - Mogliano Veneto","Venice","Venice","Venice - Dolo","Venice - Dolo","Venice - Marghera","Venice - Marghera","Venice - Mestre","Venice - Mestre","Venice - Mira","Venice - Mira","Venice - Mirano","Venice - Mirano","Venice - Venice Lido","Venice - Venice Lido","Verona","Verona");
listCITY.setdefaultOption("IT","All Cities");
listCITY.addOptions("MX","All Cities","All Cities","Cancun","Cancun");
listCITY.setdefaultOption("MX","All Cities");
listCITY.addOptions("ES","All Cities","All Cities","Alicante - Alfaz Del Pi","Alicante - Alfaz Del Pi","Alicante - Benidorm","Alicante - Benidorm","Alicante - Biar","Alicante - Biar","Alicante - Peñíscola","Alicante - Peñíscola","Alicante - Playas de Orihuela","Alicante - Playas de Orihuela","Alicante - Villajoyosa","Alicante - Villajoyosa","Almeria","Almeria","Almeria - Mojacar","Almeria - Mojacar","Barcelona","Barcelona","Barcelona - Berga","Barcelona - Berga","Barcelona - Calella de La Cos","Barcelona - Calella de La Cos","Barcelona - Castelldefels","Barcelona - Castelldefels","Barcelona - Granollers","Barcelona - Granollers","Barcelona - Mollet","Barcelona - Mollet","Barcelona - Pineda De Mar","Barcelona - Pineda De Mar","Barcelona - Sitges","Barcelona - Sitges","Barcelona - Vilanova i la Gelt","Barcelona - Vilanova i la Gelt","Bilbao","Bilbao","Cadiz -  Jerez de la Frontera","Cadiz -  Jerez de la Frontera","Cadiz - Arcos de la Frontera","Cadiz - Arcos de la Frontera","Cordoba","Cordoba","Fuerteventura - Antigua","Fuerteventura - Antigua","Fuerteventura - Costa Antigua","Fuerteventura - Costa Antigua","Girona -  Fornells de la Selva","Girona -  Fornells de la Selva","Girona - Empuriabrava","Girona - Empuriabrava","Girona - Lloret de Mar","Girona - Lloret de Mar","Girona - Torroella de Montgrì","Girona - Torroella de Montgrì","Gran Canaria - Santa Lucia","Gran Canaria - Santa Lucia","Gran Canaria - Vega De San Mat","Gran Canaria - Vega De San Mat","Granada","Granada","Granada -  Alomartes-Illora","Granada -  Alomartes-Illora","Granada - Bubion","Granada - Bubion","Granada - Guanix","Granada - Guanix","Huelva - Aracena","Huelva - Aracena","Huelva - Isla Cristina","Huelva - Isla Cristina","Huelva - Lepe","Huelva - Lepe","Ibiza","Ibiza","Jaen - Cazorla","Jaen - Cazorla","Jaèn - Pozo Alcòn","Jaèn - Pozo Alcòn","Jaen - Rus","Jaen - Rus","Jaen - Torres","Jaen - Torres","Jaen - Ubeda","Jaen - Ubeda","Madrid","Madrid","Madrid - Alcobendas","Madrid - Alcobendas","Madrid - Chinchón","Madrid - Chinchón","Madrid-Guadalajara","Madrid-Guadalajara","Malaga","Malaga","Malaga - Alora","Malaga - Alora","Malaga - Antequera","Malaga - Antequera","Malaga - Archidona","Malaga - Archidona","Malaga - Benalmadena","Malaga - Benalmadena","Malaga - Competa","Malaga - Competa","Malaga - Estepona","Malaga - Estepona","Malaga - Istan","Malaga - Istan","Malaga - Nerja","Malaga - Nerja","Malaga - Ojen","Malaga - Ojen","Malaga - Ronda","Malaga - Ronda","Malaga - Tolox","Malaga - Tolox","Malaga - Torre del Mar","Malaga - Torre del Mar","Mallorca","Mallorca","Mallorca - Camp de Mar","Mallorca - Camp de Mar","Mallorca - Can Pastilla Playa","Mallorca - Can Pastilla Playa","Mallorca - Can Picafort","Mallorca - Can Picafort","Mallorca - Colonia Sant Jordi","Mallorca - Colonia Sant Jordi","Mallorca - Lloret de Vistalegr","Mallorca - Lloret de Vistalegr","Mallorca - Lloseta","Mallorca - Lloseta","Mallorca - Palma de Mallorca","Mallorca - Palma de Mallorca","Mallorca - Port de Soll","Mallorca - Port de Soll","Mallorca - Port Marina Golf","Mallorca - Port Marina Golf","Mallorca - Pto. Alcudia","Mallorca - Pto. Alcudia","Mallorca -Alcudia","Mallorca -Alcudia","Mallorca- Llucmajor","Mallorca- Llucmajor","Mallorca-Palma de Mallorca","Mallorca-Palma de Mallorca","Marbella","Marbella","Marbella-Malaga","Marbella-Malaga","Menorca - Ciutadella","Menorca - Ciutadella","Murcia - Puerto de Mazarrón","Murcia - Puerto de Mazarrón","Salamanca","Salamanca","Seville","Seville","Seville - El Pedroso","Seville - El Pedroso","Tarragona","Tarragona","Tarragona - Vallfogona de Riuc","Tarragona - Vallfogona de Riuc","Tenerife - Arona","Tenerife - Arona","Tenerife - Los Cristianos Aron","Tenerife - Los Cristianos Aron","Tenerife - Puerto de la Cruz","Tenerife - Puerto de la Cruz","Tenerife - Valle Gran Rey. La","Tenerife - Valle Gran Rey. La","Valencia","Valencia","Valencia -  Paterna","Valencia -  Paterna","Valencia-Gandia","Valencia-Gandia");
listCITY.setdefaultOption("ES","All Cities");

function init_search() { 
  var theform = document.DateSelect;
  listCITY.init(theform);
}