gDestinationListIATA = Array('TIA', 'EVN', 'VIE', 'GYD', 'BAK', 'MSQ', 'BRU', 'SJJ', 'SOF', 'VAR', 'YUL', 'YYZ', 'SPU', 'ZAG', 'LCA', 'ZDN', 'BRQ', 'KLV', 'OSR', 'PRG', 'CPH', 'CAI', 'TLL', 'HEL', 'BOD', 'LYS', 'MRS', 'NCE', 'CDG', 'SXB', 'TLS', 'TBS', 'TXL', 'CGN', 'DUS', 'FRA', 'HAM', 'HAJ', 'MUC', 'STR', 'ATH', 'SKG', 'BUD', 'ORK', 'DUB', 'TLV', 'BLQ', 'MXP', 'FCO', 'VCE', 'RIX', 'BEY', 'KUN', 'VNO', 'LUX', 'SKP', 'MLE', 'MLA', 'MEX', 'AMS', 'SXM', 'OSL', 'MNL', 'KRK', 'WAW', 'LIS', 'OPO', 'OTP', 'TSR', 'SVX', 'SVO', 'KUF', 'LED', 'BEG', 'PRN', 'SIN', 'BTS', 'KSC', 'TAT', 'SLD', 'ILZ', 'LJU', 'ICN', 'BCN', 'BIO', 'MAD', 'AGP', 'VLC', 'CMB', 'GOT', 'ARN', 'GVA', 'ZRH', 'IST', 'KBP', 'AUH', 'AAN', 'DXB', 'BHX', 'EDI', 'GLA', 'LON', 'LGW', 'LHR', 'MAN', 'ATL', 'BWI', 'CHS', 'ORD', 'CVG', 'CMH', 'DFW', 'DEN', 'DTW', 'FLL', 'IND', 'JAX', 'MCI', 'LAX', 'BNA', 'JFK', 'NYC', 'EWR', 'ORF', 'MCO', 'PIT', 'SLC', 'SFO', 'SEA', 'STL', 'SYR', 'TPA', 'DCA'); gDestinationListCities = Array('Tirana', 'Yerevan', 'Vienna', 'Baku', 'Baku', 'Minsk', 'Brussels', 'Sarajevo', 'Sofia', 'Varna', 'Montreal', 'Toronto', 'Split', 'Zagreb', 'Larnaca', 'Brno', 'Brno', 'Karlovy Vary', 'Ostrava', 'Prague', 'Copenhagen', 'Cairo', 'Tallinn', 'Helsinki', 'Bordeaux', 'Lyon', 'Marseille', 'Nice', 'Paris', 'Strasbourg', 'Toulouse', 'Tbilisi', 'Berlin', 'Cologne', 'Dusseldorf', 'Frankfurt', 'Hamburg', 'Hannover', 'Munich', 'Stuttgart', 'Athens', 'Thessaloniki', 'Budapest', 'Cork', 'Dublin', 'Tel Aviv', 'Bologna', 'Milan', 'Rome', 'Venice', 'Riga', 'Beirut', 'Kaunas', 'Vilnius', 'Luxembourg', 'Skopje', 'Male', 'Valletta', 'Mexico City', 'Amsterdam', 'St Maarten', 'Oslo', 'Manila', 'Krakow', 'Warsaw', 'Lisbon', 'Porto', 'Bucharest', 'Timisoara', 'Ekaterinburg', 'Moscow', 'Samara', 'St. Petersburg', 'Belgrade', 'Pristina', 'Singapore', 'Bratislava', 'Kosice', 'Poprad/Tatry', 'Sliac', 'Zilina', 'Ljubljana', 'Seoul', 'Barcelona', 'Bilbao', 'Madrid', 'Malaga', 'Valencia', 'Colombo', 'Gothenburg', 'Stockholm', 'Geneva', 'Zurich', 'Istanbul', 'Kiev', 'Abu Dhabi', 'Al Ain', 'Dubai', 'Birmingham', 'Edinburgh', 'Glasgow', 'London', 'London', 'London', 'Manchester', 'Atlanta', 'Baltimore', 'Charleston', 'Chicago', 'Cincinnati', 'Columbus', 'Dallas', 'Denver', 'Detroit', 'Fort Lauderdale', 'Indianapolis', 'Jacksonville', 'Kansas City', 'Los Angeles', 'Nashville', 'New York', 'New York', 'New York', 'Norfolk', 'Orlando', 'Pittsburgh', 'Salt Lake City', 'San Francisco', 'Seattle', 'St Louis', 'Syracuse', 'Tampa', 'Washington'); gDestinationListCitiesIndex = Array('TIRANA', 'YEREVAN', 'VIENNA', 'BAKU', 'BAKU', 'MINSK', 'BRUSSELS', 'SARAJEVO', 'SOFIA', 'VARNA', 'MONTREAL', 'TORONTO', 'SPLIT', 'ZAGREB', 'LARNACA', 'BRNO', 'BRNO', 'KARLOVY VARY', 'OSTRAVA', 'PRAGUE', 'COPENHAGEN', 'CAIRO', 'TALLINN', 'HELSINKI', 'BORDEAUX', 'LYON', 'MARSEILLE', 'NICE', 'PARIS', 'STRASBOURG', 'TOULOUSE', 'TBILISI', 'BERLIN', 'COLOGNE', 'DUSSELDORF', 'FRANKFURT', 'HAMBURG', 'HANNOVER', 'MUNICH', 'STUTTGART', 'ATHENS', 'THESSALONIKI', 'BUDAPEST', 'CORK', 'DUBLIN', 'TEL AVIV', 'BOLOGNA', 'MILAN', 'ROME', 'VENICE', 'RIGA', 'BEIRUT', 'KAUNAS', 'VILNIUS', 'LUXEMBOURG', 'SKOPJE', 'MALE', 'VALLETTA', 'MEXICO CITY', 'AMSTERDAM', 'ST MAARTEN', 'OSLO', 'MANILA', 'KRAKOW', 'WARSAW', 'LISBON', 'PORTO', 'BUCHAREST', 'TIMISOARA', 'EKATERINBURG', 'MOSCOW', 'SAMARA', 'ST. PETERSBURG', 'BELGRADE', 'PRISTINA', 'SINGAPORE', 'BRATISLAVA', 'KOSICE', 'POPRAD/TATRY', 'SLIAC', 'ZILINA', 'LJUBLJANA', 'SEOUL', 'BARCELONA', 'BILBAO', 'MADRID', 'MALAGA', 'VALENCIA', 'COLOMBO', 'GOTHENBURG', 'STOCKHOLM', 'GENEVA', 'ZURICH', 'ISTANBUL', 'KIEV', 'ABU DHABI', 'AL AIN', 'DUBAI', 'BIRMINGHAM', 'EDINBURGH', 'GLASGOW', 'LONDON', 'LONDON', 'LONDON', 'MANCHESTER', 'ATLANTA', 'BALTIMORE', 'CHARLESTON', 'CHICAGO', 'CINCINNATI', 'COLUMBUS', 'DALLAS', 'DENVER', 'DETROIT', 'FORT LAUDERDALE', 'INDIANAPOLIS', 'JACKSONVILLE', 'KANSAS CITY', 'LOS ANGELES', 'NASHVILLE', 'NEW YORK', 'NEW YORK', 'NEW YORK', 'NORFOLK', 'ORLANDO', 'PITTSBURGH', 'SALT LAKE CITY', 'SAN FRANCISCO', 'SEATTLE', 'ST LOUIS', 'SYRACUSE', 'TAMPA', 'WASHINGTON'); gDestinationListCountries = Array('Albania', 'Armenia', 'Austria', 'Azerbaijan', 'Azerbaijan', 'Belarus', 'Belgium', 'Bosnia and Herzegovina', 'Bulgaria', 'Bulgaria', 'Canada', 'Canada', 'Croatia', 'Croatia', 'Cyprus', 'Czech Republic', 'Czech Republic', 'Czech Republic', 'Czech Republic', 'Czech Republic', 'Denmark', 'Egypt', 'Estonia', 'Finland', 'France', 'France', 'France', 'France', 'France', 'France', 'France', 'Georgia', 'Germany', 'Germany', 'Germany', 'Germany', 'Germany', 'Germany', 'Germany', 'Germany', 'Greece', 'Greece', 'Hungary', 'Ireland', 'Ireland', 'Israel', 'Italy', 'Italy', 'Italy', 'Italy', 'Latvia', 'Lebanon', 'Lithuania', 'Lithuania', 'Luxembourg', 'Macedonia', 'Maldives', 'Malta', 'Mexico', 'Netherlands', 'Netherlands Antilles', 'Norway', 'Philippines', 'Poland', 'Poland', 'Portugal', 'Portugal', 'Romania', 'Romania', 'Russian Federation', 'Russian Federation', 'Russian Federation', 'Russian Federation', 'Serbia', 'Serbia', 'Singapore', 'Slovakia', 'Slovakia', 'Slovakia', 'Slovakia', 'Slovakia', 'Slovenia', 'South Korea', 'Spain', 'Spain', 'Spain', 'Spain', 'Spain', 'Sri Lanka', 'Sweden', 'Sweden', 'Switzerland', 'Switzerland', 'Turkey', 'Ukraine', 'United Arab Emirates', 'United Arab Emirates', 'United Arab Emirates', 'United Kingdom', 'United Kingdom', 'United Kingdom', 'United Kingdom', 'United Kingdom', 'United Kingdom', 'United Kingdom', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA'); gDestinationListCountriesIndex = Array('ALBANIA', 'ARMENIA', 'AUSTRIA', 'AZERBAIJAN', 'AZERBAIJAN', 'BELARUS', 'BELGIUM', 'BOSNIA AND HERZEGOVINA', 'BULGARIA', 'BULGARIA', 'CANADA', 'CANADA', 'CROATIA', 'CROATIA', 'CYPRUS', 'CZECH REPUBLIC', 'CZECH REPUBLIC', 'CZECH REPUBLIC', 'CZECH REPUBLIC', 'CZECH REPUBLIC', 'DENMARK', 'EGYPT', 'ESTONIA', 'FINLAND', 'FRANCE', 'FRANCE', 'FRANCE', 'FRANCE', 'FRANCE', 'FRANCE', 'FRANCE', 'GEORGIA', 'GERMANY', 'GERMANY', 'GERMANY', 'GERMANY', 'GERMANY', 'GERMANY', 'GERMANY', 'GERMANY', 'GREECE', 'GREECE', 'HUNGARY', 'IRELAND', 'IRELAND', 'ISRAEL', 'ITALY', 'ITALY', 'ITALY', 'ITALY', 'LATVIA', 'LEBANON', 'LITHUANIA', 'LITHUANIA', 'LUXEMBOURG', 'MACEDONIA', 'MALDIVES', 'MALTA', 'MEXICO', 'NETHERLANDS', 'NETHERLANDS ANTILLES', 'NORWAY', 'PHILIPPINES', 'POLAND', 'POLAND', 'PORTUGAL', 'PORTUGAL', 'ROMANIA', 'ROMANIA', 'RUSSIAN FEDERATION', 'RUSSIAN FEDERATION', 'RUSSIAN FEDERATION', 'RUSSIAN FEDERATION', 'SERBIA', 'SERBIA', 'SINGAPORE', 'SLOVAKIA', 'SLOVAKIA', 'SLOVAKIA', 'SLOVAKIA', 'SLOVAKIA', 'SLOVENIA', 'SOUTH KOREA', 'SPAIN', 'SPAIN', 'SPAIN', 'SPAIN', 'SPAIN', 'SRI LANKA', 'SWEDEN', 'SWEDEN', 'SWITZERLAND', 'SWITZERLAND', 'TURKEY', 'UKRAINE', 'UNITED ARAB EMIRATES', 'UNITED ARAB EMIRATES', 'UNITED ARAB EMIRATES', 'UNITED KINGDOM', 'UNITED KINGDOM', 'UNITED KINGDOM', 'UNITED KINGDOM', 'UNITED KINGDOM', 'UNITED KINGDOM', 'UNITED KINGDOM', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA', 'USA'); gDestinationListAirports = Array('Rinas', 'Yerevan', 'International', 'Heydar Aliyev Intl.', 'Baku', 'Minsk International 2', 'National', 'Butmir', 'Vrazhdebna', 'Varna', 'Dorval', 'Pearson International', 'Split', 'Pleso', 'Larnaca', 'Bus Service', 'Brno', 'Karlovy Vary', 'Mosnov', 'Ruzyne', 'Kastrup', 'International', 'Ulemiste', 'Vantaa', 'Mérignac', 'Satolas', 'Provence', 'Cote DAzur', 'Charles De Gaulle', 'Entzheim', 'Blagnac', 'Novo Alexeyevka', 'Tegel', 'Koeln-Bonn', 'International', 'International', 'Fuhlsbuettel', 'Langenhagen Airport', 'Franz Josef Strauss', 'Echterdingen', 'Eleftherios Venizelos', 'Makedonia Apt.', 'Ferihegy', 'Cork', 'International', 'Ben Gurion Intl', 'Guglielmo Marconi', 'Malpensa', 'Fiumicino', 'Marco Polo', 'International', 'International', 'Kaunas', 'Vilnius', 'Findel Airport', 'Skopje', 'International', 'Luqa', 'Juarez International', 'Schiphol', 'Princ. Juliana', 'Gardermoen', 'Ninoy Aquino Intl', 'J. Paul II Balice Intl', 'Okecie', 'International', 'Francisco sa Carneiro', 'Otopeni', 'Timisoara', 'Ekaterinburg', 'Sheremetyevo', 'Samara', 'Pulkovo', 'Beograd Surcin Airport', 'Pristina', 'Changi', 'Ivanka', 'Barca', 'Poprad/Tatry', 'Sliac', 'Zilina', 'Brnik', 'Incheon Intl', 'Aeropuerto del Prat', 'Bilbao Airport', 'Barajas', 'Pablo Ruiz Picasso', 'Valencia', 'Bandaranayake Intl', 'Landvetter', 'Arlanda', 'Cointrin', 'Kloten', 'Ataturk', 'Borispol', 'Abu Dhabi Intl', 'Al Ain', 'International', 'International', 'Turnhouse', 'International', 'Metropolitan area', 'Gatwick', 'Heathrow', 'International', 'William B Hartsfield', 'Balt/Wash Intl', 'AFB Municipal', 'OHare International', 'Greater Cincinnati Intl', 'Port Columbus Intl', 'Fort Worth', 'International', 'Wayne County', 'International', 'International', 'International', 'International', 'International', 'Nashville', 'John F. Kennedy Intl', 'Metropolitan area', 'Newark', 'International', 'International', 'International', 'International', 'International', 'Tacoma Intl', 'Lambert Intl', 'Hancock Intl', 'International', 'Ronald Reagan National'); gDestinationListAirportsIndex = Array('RINAS', 'YEREVAN', 'INTERNATIONAL', 'HEYDAR ALIYEV INTL.', 'BAKU', 'MINSK INTERNATIONAL 2', 'NATIONAL', 'BUTMIR', 'VRAZHDEBNA', 'VARNA', 'DORVAL', 'PEARSON INTERNATIONAL', 'SPLIT', 'PLESO', 'LARNACA', 'BUS SERVICE', 'BRNO', 'KARLOVY VARY', 'MOSNOV', 'RUZYNE', 'KASTRUP', 'INTERNATIONAL', 'ULEMISTE', 'VANTAA', 'MERIGNAC', 'SATOLAS', 'PROVENCE', 'COTE DAZUR', 'CHARLES DE GAULLE', 'ENTZHEIM', 'BLAGNAC', 'NOVO ALEXEYEVKA', 'TEGEL', 'KOELN-BONN', 'INTERNATIONAL', 'INTERNATIONAL', 'FUHLSBUETTEL', 'LANGENHAGEN AIRPORT', 'FRANZ JOSEF STRAUSS', 'ECHTERDINGEN', 'ELEFTHERIOS VENIZELOS', 'MAKEDONIA APT.', 'FERIHEGY', 'CORK', 'INTERNATIONAL', 'BEN GURION INTL', 'GUGLIELMO MARCONI', 'MALPENSA', 'FIUMICINO', 'MARCO POLO', 'INTERNATIONAL', 'INTERNATIONAL', 'KAUNAS', 'VILNIUS', 'FINDEL AIRPORT', 'SKOPJE', 'INTERNATIONAL', 'LUQA', 'JUAREZ INTERNATIONAL', 'SCHIPHOL', 'PRINC. JULIANA', 'GARDERMOEN', 'NINOY AQUINO INTL', 'J. PAUL II BALICE INTL', 'OKECIE', 'INTERNATIONAL', 'FRANCISCO SA CARNEIRO', 'OTOPENI', 'TIMISOARA', 'EKATERINBURG', 'SHEREMETYEVO', 'SAMARA', 'PULKOVO', 'BEOGRAD SURCIN AIRPORT', 'PRISTINA', 'CHANGI', 'IVANKA', 'BARCA', 'POPRAD/TATRY', 'SLIAC', 'ZILINA', 'BRNIK', 'INCHEON INTL', 'AEROPUERTO DEL PRAT', 'BILBAO AIRPORT', 'BARAJAS', 'PABLO RUIZ PICASSO', 'VALENCIA', 'BANDARANAYAKE INTL', 'LANDVETTER', 'ARLANDA', 'COINTRIN', 'KLOTEN', 'ATATURK', 'BORISPOL', 'ABU DHABI INTL', 'AL AIN', 'INTERNATIONAL', 'INTERNATIONAL', 'TURNHOUSE', 'INTERNATIONAL', 'METROPOLITAN AREA', 'GATWICK', 'HEATHROW', 'INTERNATIONAL', 'WILLIAM B HARTSFIELD', 'BALT/WASH INTL', 'AFB MUNICIPAL', 'OHARE INTERNATIONAL', 'GREATER CINCINNATI INTL', 'PORT COLUMBUS INTL', 'FORT WORTH', 'INTERNATIONAL', 'WAYNE COUNTY', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'NASHVILLE', 'JOHN F. KENNEDY INTL', 'METROPOLITAN AREA', 'NEWARK', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'INTERNATIONAL', 'TACOMA INTL', 'LAMBERT INTL', 'HANCOCK INTL', 'INTERNATIONAL', 'RONALD REAGAN NATIONAL'); var nMinOptionLinesCount = 5; var nMaxOptionLinesCount = 15; var nMaxAvailOptionsCount = 50; aActiveFields = new Array(); // *********************************** // // Funkce pro prediktivni vyhledavani // // *********************************** // // Najde vnoreny element - vrati ID elementu. function searchChildNodeByTagName(p_parentObjectID, p_tagName) { var oTargetObject = null; var oTargetSelect = null; var sNodeName = ""; var sNodeID = null; try { oTargetObject = document.getElementById(p_parentObjectID); } catch(eException) { } for(nCounter = 0; nCounter < oTargetObject.childNodes.length; nCounter++) { sNodeName = oTargetObject.childNodes[nCounter].nodeName; sNodeName = sNodeName.toUpperCase(); if(sNodeName = p_tagName.toUpperCase()) { try { sNodeID = oTargetObject.childNodes[nCounter].id; } catch(eException) { } } } return sNodeID; } // Zobrazi nalezene shody (zadava se pouze id DIVu s napovedou a reference na INPUT). function showAvailableDestinationsFast(p_targetObjectID, p_referenceObject, p_eEvent) { var sNodeID = null; sNodeID = searchChildNodeByTagName(p_targetObjectID, "SELECT"); // Zavola metodu s doplnenym selectem. showAvailableDestinations(p_targetObjectID, sNodeID, p_referenceObject, p_eEvent); } // Zobrazi nalezene shody. function showAvailableDestinations(p_targetObjectID, p_targetSelectID, p_referenceObject, p_eEvent) { var sWrittenString = null; var oTargetObject = null; var aResultList = null; var bIataCodeFound = false; var nKeyCode = null; try { sWrittenString = p_referenceObject.value; oTargetObject = document.getElementById(p_targetObjectID); oTargetSelect = document.getElementById(p_targetSelectID); } catch(eException) { } try { nKeyCode = p_eEvent.keyCode; } catch(eException) { try { nKeyCode = p_eEvent.which; } catch(eException2) { } } // Po stisku sipky dolu presune vyber na moznosti. if(nKeyCode == 40) { setSelectBoxActive(p_targetSelectID); } // Po stisku klavesy Enter nastavi hodnotu z nabidky. if(nKeyCode == 13) { try { if(document.getElementById(p_targetSelectID).options.length > 0) { p_referenceObject.value = document.getElementById(p_targetSelectID).options[document.getElementById(p_targetSelectID).selectedIndex].innerHTML; } } catch(eException) { } hideAvailableDestinationsById(p_targetObjectID, true); return false; } resetDestinationFields(oTargetSelect); // Pokud je znaku mene jak 3, skryje napovedu. if(sWrittenString.length < 3) { hideAvailableDestinations(oTargetObject); } // Pokud je znaku 3 a vice, zobrazi napovedu. if(sWrittenString.length >= 3) { // Pro 3 znaky hleda podle IATA kodu. aResultList = searchInIataCodes(sWrittenString); // Hleda podle nazvu letiste. if(aResultList.length == 0) { aResultList = searchInAirportNames(sWrittenString); } else { aResultList = mergeArrays(aResultList, searchInAirportNames(sWrittenString)); } // Hleda podle nazvu mesta. if(aResultList.length == 0) { aResultList = searchInCityNames(sWrittenString); } else { aResultList = mergeArrays(aResultList, searchInCityNames(sWrittenString)); } // Hleda podle nazvu zeme. if(aResultList.length == 0) { aResultList = searchInCountryNames(sWrittenString); } else { aResultList = mergeArrays(aResultList, searchInCountryNames(sWrittenString)); } // Zobrazi vysledky - pokud je nalezena alespon 1 moznost. if(aResultList.length > 0) { for(nCounter = 0; nCounter < aResultList.length; nCounter++) { addDestinationElementRecord(oTargetObject, oTargetSelect, gDestinationListCities[aResultList[nCounter]], gDestinationListIATA[aResultList[nCounter]], gDestinationListAirports[aResultList[nCounter]], gDestinationListCountries[aResultList[nCounter]]); } if(aResultList.length <= nMinOptionLinesCount) { oTargetSelect.size = nMinOptionLinesCount; } } } } // Prida radek do vysledku. function addDestinationElementRecord(p_targetObject, p_targetSelect, p_City, p_IataCode, p_Airport, p_Country) { var nLastOptionIndex = p_targetSelect.options.length; if(nLastOptionIndex < 0) { nLastOptionIndex = 1; } if(nLastOptionIndex >= 0) { p_targetObject.style.visibility = "visible"; p_targetObject.style.display = "block"; } if((p_IataCode != "undefined") && (p_IataCode != null)){ p_targetSelect.size = nLastOptionIndex + 1; p_targetSelect.options[nLastOptionIndex] = new Option(p_City + ', ' + p_Airport + ', ' + p_Country + ' (' + p_IataCode + ')', p_IataCode); } // Pokud je pocet radku vetsi, nez povoleny limit, vytvori scrollbar. if(p_targetSelect.size > nMaxOptionLinesCount) { p_targetSelect.size = nMaxOptionLinesCount; } } // Odstrani zaznamy z nabidky. function resetDestinationFields(p_targetSelect) { p_targetSelect.options.length = 0; } // Prohleda IATA kody. function searchInIataCodes(p_searchString) { var aIataCodesList = new Array(); var nIndex = 0; for(nCounter = 0; nCounter < gDestinationListIATA.length; nCounter++) { if(gDestinationListIATA[nCounter] == p_searchString.toUpperCase()) { aIataCodesList[nIndex] = nCounter; nIndex += 1; } } return aIataCodesList; } // Prohleda nazvy letist. function searchInAirportNames(p_searchString) { var aAirportNamesList = new Array(); var nIndex = 0; var nWordLength = p_searchString.length; var sMatchWord = null; var sMatchWord2 = null; for(nCounter = 0; nCounter < gDestinationListAirports.length; nCounter++) { sMatchWord = gDestinationListAirports[nCounter].substring(0, nWordLength); sMatchWord = sMatchWord.toUpperCase(); sMatchWord2 = gDestinationListAirportsIndex[nCounter].substring(0, nWordLength); sMatchWord2 = sMatchWord2.toUpperCase() if((sMatchWord == p_searchString.toUpperCase()) || (sMatchWord2 == p_searchString.toUpperCase())) { aAirportNamesList[nIndex] = nCounter; nIndex += 1; } } return aAirportNamesList; } // Prohleda nazvy mest, vcetne diakritiky. function searchInCityNames(p_searchString) { var aCityNamesList = new Array(); var nIndex = 0; var nWordLength = p_searchString.length; var sMatchWord = null; var sMatchWord2 = null; for(nCounter = 0; nCounter < gDestinationListCitiesIndex.length; nCounter++) { sMatchWord = gDestinationListCities[nCounter].substring(0, nWordLength); sMatchWord = sMatchWord.toUpperCase(); sMatchWord2 = gDestinationListCitiesIndex[nCounter].substring(0, nWordLength); sMatchWord2 = sMatchWord2.toUpperCase() if((sMatchWord == p_searchString.toUpperCase()) || (sMatchWord2 == p_searchString.toUpperCase())) { aCityNamesList[nIndex] = nCounter; nIndex += 1; } } return aCityNamesList; } // Prohleda nazvy zemi, vcetne diakritiky. function searchInCountryNames(p_searchString) { var aCountryNamesList = new Array(); var nIndex = 0; var nWordLength = p_searchString.length; var sMatchWord = ""; for(nCounter = 0; nCounter < gDestinationListCountries.length; nCounter++) { sMatchWord = gDestinationListCountries[nCounter].substring(0, nWordLength); sMatchWord = sMatchWord.toUpperCase(); sMatchWord2 = gDestinationListCountriesIndex[nCounter].substring(0, nWordLength); sMatchWord2 = sMatchWord2.toUpperCase() if((sMatchWord == p_searchString.toUpperCase()) || (sMatchWord2 == p_searchString.toUpperCase())) { aCountryNamesList[nIndex] = nCounter; nIndex += 1; } } return aCountryNamesList; } // Skryje napovedu (dle ID objektu). function hideAvailableDestinationsById(p_targetObjectID, p_forceHide) { // ID selectboxu vnoreneho do vrstvy, ktera se skryva. var sChildSelectBoxID = null; var bHidingEnabled = true; // Vrstva, ktera se skryva. p_targetObject = document.getElementById(p_targetObjectID); // Ziska ID selectu vnoreneho do vrstvy. sChildSelectBoxID = searchChildNodeByTagName(p_targetObjectID, "SELECT"); try { // Pokud ma select nastaven priznak "focused", nastavi priznak "aktivni". if(aActiveFields[sChildSelectBoxID] == true) { bHidingEnabled = false; } } catch(eException) { } // Pokud neni selectbox oznacen jako aktivni, skryje vrstvu s danou prediktivni napovedou. if(bHidingEnabled || p_forceHide) { try { setTimeout("hideAvailableDestinations(p_targetObject);", 100); //hideAvailableDestinations(p_targetObject); aActiveFields[sChildSelectBoxID] = null; } catch(eException) { } } } // Skryje napovedu. function hideAvailableDestinations(p_targetObject) { p_targetObject.style.visibility = "hidden"; p_targetObject.style.display = "none"; } // Slouci do pole neduplicitni polozky. function mergeArrays(p_array1, p_array2) { var aResultArray = new Array(); var bItemAlreadyPresent = false; aResultArray = p_array1; // Pokud druhe pole nic neobsahuje, vraci rovnou pouze prvni pole. if(p_array2 == null) { return aResultArray; } for(nCounter = 0; nCounter < p_array2.length; nCounter++) { bItemAlreadyPresent = false; for(nCounter2 = 0; nCounter2 < aResultArray.length; nCounter2++) { if(p_array2[nCounter] == aResultArray[nCounter2]) { bItemAlreadyPresent = true; } } if(bItemAlreadyPresent == false) { aResultArray[aResultArray.length] = p_array2[nCounter]; } } return aResultArray; } // Nastavi hodnotu do pole. function setLocationValue(p_targetObjectID, p_targetListID, p_sourceObject, eEvent) { var oTargetObject = null; var sEventType = null; var nKeyCode = null; // Zjisti typ udalosti. try { sEventType = eEvent.type; } catch(eException) { } // Zjisti stisknutou klavesu (detekce Enter). if(sEventType == "keypress") { try { nKeyCode = eEvent.keyCode; } catch(eException) { try { nKeyCode = eEvent.which; } catch(eException2) { } } } // Pokud je vybrana nabidka kliknutim, nebo klavesou Enter, nastavi se vybrana hodnota. if((sEventType == "click") || (nKeyCode == 13)) { try { oTargetObject = document.getElementById(p_targetObjectID); oTargetObject.value = p_sourceObject.options[p_sourceObject.options.selectedIndex].innerHTML; hideAvailableDestinations(document.getElementById(p_targetListID)); oTargetObject.focus(); } catch(eException) { } } return false; } // Nastavi pole s vyberem jako aktivni. function setSelectBoxActive(p_targetListID) { document.getElementById(p_targetListID).focus(); // Nastavi do globalni promenne ID pole, ktere je aktivni. aActiveFields[p_targetListID] = true; }