/** * Created by Northdegree on 25.05.2017. */ // 0 = Feuerwehr // 1 = Rettungsdienst // 2 = Polizei // 3 = THW // 4 = Wasserrettung if (I18n.locale == 'en_US') { lssm.educations = ['HazMat']; lssm.carsById = { 0: ['Type 1 fire engine', 0], 1: ['Type 2 fire engine', 0], 2: ['Platform truck', 0], 3: ['Battalion chief unit', 0], 4: ['Heavy rescue vehicle', 0], 5: ['ALS Ambulance', 1], 6: ['Mobile air', 0], 7: ['Water Tanker', 0], 8: ['Utility unit', 0], 9: ['HazMat', 0], 10: ['Patrol Car', 2], 11: ['HEMS', 1], 12: ['Mobile command vehicle', 0], 13: ['Quint', 0], 14: ['Police helicopter', 2], 15: ['Fly-Car', 1], 16: ['SWAT Armoured Vehicle', 2], 17: ['Large ARFF Crash Tender', 0], 18: ['Rescue Engine', 0], 19: ['K-9 Unit', 2], 20: ['Mass Casualty Unit', 1], 21: ['Heavy Rescue + Boat', 0], 22: ['Light Boat Trailer', 0], 23: ['Police Motorcycle', 2], 24: ['Large Fireboat', 0], 25: ['Large Rescue Boat', 1], 26: ['SWAT SUV', 2], 27: ['BLS Ambulance', 1], 28: ['EMS Rescue', 1], 29: ['EMS Chief', 1], 30: ['Type 3 engine', 0], 31: ['Type 5 engine', 0], 32: ['Type 7 engine', 0], 33: ['Pumper Tanker', 0], 34: ['Crew Carrier', 0], 35: ['Water drop helicopter', 0], 36: ['Air tanker', 0], 37: ['Heavy air tanker', 0], 38: ['Type 4 engine', 0], 39: ['Type 6 engine', 0], 40: ['Dozer Trailer', 0], 41: ['Crew cap semi', 0], 42: ['FBI Unit', 2], 43: ['FBI Investigation Wagon', 2], 44: ['FBI Mobile Command Center', 2], 45: ['FBI Bomb Technician Vehicle', 2], 46: ['FBI Surveillance Drone', 2], 47: ['Sheriff Unit', 2], 48: ['EMS Fire Engine/Ambulance', 1], 49: ['Tactical Ambulance', 1], 50: ['Hazmat Ambulance', 1], 51: ['DEA Unit', 2], 52: ['DEA Clan Lab', 2], 53: ['ATF Unit', 2], 54: ['ATF Lab Vehicle', 2], 55: ['Patrol Boat', 2], 56: ["Warden's Truck", 2], 57: ['EMS Mass Casualty Trailer (large)', 1], 58: ['EMS Mass Casualty Trailer (small)', 1], 59: ['EMS Operations Support', 1], 60: ['EMS Mobile Command Unit', 1], 61: ['ALS Rescue Ambulance', 1], 62: ['Fire Investigator Unit', 0], 63: ['Fire Prevention Unit', 0], 64: ['Foam Tender', 0], 65: ['Foam Trailer', 0], 66: ['Lifeguard Truck', 4], 67: ['Lifeguard Rescue', 4], 68: ['Lifeguard Supervisor', 4], 69: ['Small Coastal Boat', 4], 70: ['Large Coastal Boat', 4], 71: ['Coastal Helicopter', 4], 72: ['Coastal Guard Plane', 4], 73: ['Small Coastal Boat Trailer', 4], 74: ['Wildfire MCC', 0], 75: ['Wildland Lead Plane', 0], 76: ['Smoke Jumper Plane', 0], 77: ['Tanker Semi Truck Trailer', 0], 78: ['Tanker Trailer', 0], 79: ['Small ARFF Crash Tender', 0], 80: ['Medium ARFF Crash Tender', 0], 81: ['Small K9 Carrier', 2], 82: ['Large K9 Carrier', 2], 83: ['Riot Police Van', 2], 84: ['Riot Police Bus', 2], 85: ['Riot Police Trailer', 2], 86: ['Police Crew Carrier', 2], 87: ['Police Prisoner Van', 2], 88: ['Police ATV Trailer', 2], 89: ['Police MCV', 2], 90: ['Tactical Rescue Truck', 2], 91: ['Flood Equipment Trailer', 0], 92: ['Mobile Air Trailer', 0], 93: ['Light Tower Trailer', 0], 94: ['Energy Generator Trailer', 0], 95: ['Double Light Boat Trailer', 0], 96: ['Small Heavy Rescue Trailer"', 0], 97: ['Large Heavy Rescue Trailer', 0], 98: ['Small HazMat Trailer', 0], 99: ['Large HazMat Trailer', 0], 100: ['Tiller Ladder Trailer', 0], 101: ['Police Traffic Control Unit', 2], 102: ['Police Traffic Blocker Unit', 2], 103: ['Fire Traffic Control Unit', 0], 104: ['Fire Traffic Blocker Unit', 0], 105: ['Wrecker', 0], 106: ['Flatbed Carrier', 0], 107: ['Fire Wrecker', 0], 108: ['Police Wrecker', 2], }; } else if (I18n.locale == 'en_GB') { lssm.carsById = { 0: ['Water Ladder', 0], 1: ['Light 4X4 Pump (L4P)', 0], 2: ['Aerial Appliance', 0], 3: ['Fire Officer', 0], 4: ['Rescue Support Unit (RSU)', 0], 5: ['Ambulance', 1], 6: ['Water Carrier', 0], 7: ['HazMat Unit', 0], 8: ['Incident response vehicle (IRV)', 2], 9: ['HEMS', 1], 10: ['Rapid Response Vehicle', 2], 11: ['Police helicopter', 2], 12: ['Dog Support Unit (DSU)', 2], 13: ['Armed Response Vehicle (ARV)', 2], 14: ['Breathing Apparatus Support Unit (BASU)', 0], 15: ['Incident Command and Control Unit (ICCU)', 0], 16: ['Rescue Pump', 0], 17: ['CARP', 0], 18: ['Co-Responder Vehicle', 0], 19: ['Joint Response Unit', 2], 20: ['Operational Team Leader', 1], 21: ['General Practitioner', 1], 22: ['Community First Responder', 1], 23: ['Crew Carrier', 0], 24: ['Traffic Car', 2], 25: ['Armed Traffic Car', 2], 26: ['Heavy 4x4 Tanker', 0], 27: ['PRV', 1], 28: ['SRV', 1], 29: ['Welfare Vehicle', 1], 30: ['ATV Carrier', 1], 31: ['Ambulance Control Unit', 1], 32: ['CBRN Vehicle', 1], 33: ['Mass Casualty Equipment', 1], 34: ['Ambulance Officer', 1], 35: ['BFU', 0], 36: ['F/WrC', 0], 37: ['WrL CAFS', 0], 38: ['RP CAFS', 0], 39: ['OSU', 0], 40: ['PM', 0], 41: ['Water Pod', 0], 42: ['Bulk Foam Pod', 0], 43: ['Rescue Pod', 0], 44: ['Command Pod', 0], 45: ['Welfare Pod', 0], 46: ['BASU Pod', 0], 47: ['Misting Pod', 0], 48: ['Hazardous Materials Pod', 0], 49: ['OSU Pod', 0], 50: ['HVP', 0], 51: ['PSU Carrier', 2], 52: ['Firearms Personnel Carrier', 2], 53: ['Multiple Dog Carrier', 2], 54: ['Detention Van', 2], 55: ['Mounted Unit', 2], 56: ['M-RAV', 2], 57: ['CRV', 4], 58: ['Coastguard Mud Rescue Unit', 4], 59: ['Coastguard Rope Rescue Unit', 4], 60: ['Coastguard Commander', 4], 61: ['Flood Rescue Unit (Trailer)', 4], 62: ['Mud Decontamination Unit', 4], 63: ['Support Unit', 4], 64: ['Coastguard Rescue Helicopter', 4], 65: ['Coastguard Rescue Helicopter (Large)', 4], 66: ['4x4 Vehicle', 4], 67: ['Inland Rescue Boat (Trailer)', 4], 68: ['ILB', 4], 69: ['ALB', 4], 70: ['Rescue Watercraft (Trailer)', 4], 71: ['Hovercraft (Trailer)', 4], 72: ['Hovercraft Transporter', 4], 73: ['Light 4x4', 4], 74: ['Boat Trailer', 4], 75: ['Major Foam Tender', 0], 76: ['RIV', 0], 77: ['Airfield Firefighting Command Vehicle', 0], 78: ['Rescue Stairs', 0], 79: ['Airfield Operations Vehicle', 0], 80: ['Airfield Operations Supervisor', 0], 81: ['Medical equipment trailer', 0], 82: ['Armed Cell Van', 2], 83: ['Medical cycle responder', 1], 84: ['Pump Trailer', 1], 85: ['Control Van', 1], 86: ['Operational Support Van', 1], 87: ['Operational Support Trailer', 1], 88: ['SAR Flood Rescue (Trailer)', 1], 89: ['Drone Vehicle (SAR HQ)', 1], 90: ['Drone Vehicle (Fire Station)', 1], 91: ['Drone Vehicle (Police Station)', 1], 92: ['Personal SAR Vehicle', 1], 93: ['SAR 4x4', 1], 94: ['RRV', 1], }; } else if (I18n.locale == 'en_AU') { lssm.carsById = { 0: ['Pumper', 0], 1: ['Medium Tanker', 0], 2: ['Turntable Ladder', 0], 3: ['Support Vehicle', 0], 4: ['Major Rescue Vehicle', 0], 5: ['Ambulance', 1], 6: ['Bulk Water Tanker', 0], 7: ['HAZMAT', 0], 8: ['Police car', 2], 9: ['Air Ambulance', 1], 10: ['BASU', 0], 11: ['MCV', 0], 12: ['Rescue Pumper', 0], 13: ['Aerial Pumper', 0], 14: ['Police helicopter', 2], 15: ['TOG Armoured Bearcat', 2], 16: ['K-9 Unit', 2], 17: ['Police Motorcycle', 2], 18: ['TOG SUV', 2], 19: ['Heavy Tanker', 0], 20: ['SES Vehicle', 4], 21: ['Rescue Boat', 4], 22: ['Mounted Police', 2], 23: ['Paramedic Supervisor', 1], 24: ['ICP', 1], 25: ['ICS', 1], 26: ['Ambulance Rescue', 1], 27: ['Mass Casualty Unit', 1], 28: ['Ultra-Light Tanker', 0], 29: ['Light Tanker', 0], 30: ['Pumper Tanker', 0], 31: ['Fire Helicopter', 0], 32: ['Bomber', 0], 33: ['Large Air Tanker', 0], 34: ['Riot Police SUV', 2], 35: ['Riot Police Group Vehicle', 2], 36: ['Riot Police Equipment Vehicle', 2], 37: ['Senior Sergeant', 2], 38: ['VMR Quad', 4], 39: ['VMR Boat', 4], 40: ['SES Rescue Truck', 4], 41: ['SES Mobile Command', 4], 42: ['SES Storm Trailer', 4], 43: ['ULFV Crash Tender', 0], 44: ['RIV', 0], 45: ['Emergency Stairs', 0], 46: ['SES FOV', 4], 47: ['SES Sandbag Trailer', 4], 48: ['SES Pump Trailer', 4], 49: ['SES Emergency Lighting Trailer', 4], 50: ['SES Aireshelta Trailer', 4], 51: ['SES Comms Repeater Trailer', 4], 52: ['SES Solar/Wind Power Trailer', 4], 53: ['SES Quad Rescue 6x6', 4], 54: ['SES Search and Rescue Trailer', 4], 55: ['CAFS Pumper', 0], 56: ['CAFS Aerial Pumper', 0], 57: ['CAFS Bulk Water', 0], 58: ['Foam Logistics Vehicle', 0], 59: ['HazMat Pumper', 0], 60: ['Foam Trailer', 0] }; } else if (I18n.locale == 'pt_PT') { lssm.carsById = { 0: ['VFCI', 0], 1: ['VLCI', 0], 2: ['VE', 0], 3: ['VCOT', 0], 4: ['VSAT', 0], 5: ['ABSC', 1], 6: ['VTTU', 0], 7: ['VPMA', 0], 8: ['CP', 2], 9: ['Heli INEM', 1], 10: ['VCOC', 0], 11: ['VUCI', 0], 12: ['UEP/UI - CIEXSS', 2], 13: ['EPRI', 2], 14: ['VP', 0], 15: ['UAAR', 0], 16: ['VSAE', 0], 17: ['VMER', 1], 18: ['SIV', 1], 19: ['Mota INEM', 1], 20: ['VIC', 1], 21: ['ERAS', 0], 22: ['Semi-Reboque', 0], 23: ['MR', 0], 24: ['VTTF', 0], 25: ['HEBL', 0], 26: ['AVBM', 0], 27: ['AVBP', 0], 28: ['VECI', 0], 29: ['Moto Bomba', 0], 30: ['VTTP', 0], }; } else if (I18n.locale == 'sv_SE') { lssm.carsById = { 0: ['BAS 1 - Släckbil', 0], 1: ['BAS 2 - Släckbil', 0], 2: ['Stegbil', 0], 3: ['Brandbefäl', 0], 4: ['Lastväxlare', 0], 5: ['Ambulans', 1], 6: ['Tankbil', 0], 7: ['Kemskyddsenhet', 0], 8: ['Radiobil', 2], 9: ['Ambulanshelikopter', 1], 10: ['Luftfordon', 0], 11: ['Räddningsledning', 0], 12: ['Räddningsbil', 0], 13: ['Polishelikopter', 2], 14: ['Bepansrat insatsfordon', 2], 15: ['Hundenhet', 2], 16: ['Polismotorcykel', 2], 17: ['Insatsfordon', 2], 18: ['Dykbil', 0], 19: ['Tryckkammarbil', 0], 20: ['Liten räddningsbåt', 0], 21: ['Terrängbil', 0], 22: ['Bandvagn', 0], 23: ['ATV', 0], 24: ['Polishäst', 2], 25: ['Brandhelikopter', 0], 26: ['Vattenbombare', 0], 27: ['Stor Vattenbombare', 0], 28: ['Akutläkarbil', 1], 29: ['FIP', 0], 30: ['Lättvårdsambulans', 1], 31: ['Ledningsfordon', 1], 32: ['Jourläkare', 1], 33: ['IVPA', 1], 34: ['MC-Ambulans', 1], 35: ['Slangbil', 0], 36: ['Slangbil med pump', 0], 37: ['Skumenhet', 0], 38: ['Motorspruta',0], 39: ['Trafikpolis', 0], 40: ['Cykelpolis', 0], 41: ['NBS', 0], 42: ['YB', 0], 43: ['Häktesbuss', 0], 44: ['Polistransport', 0], }; } else if (I18n.locale == 'cs_CZ') { lssm.carsById = { 0: ['CAS 20', 0], 1: ['CAS 30', 0], 2: ['AZ', 0], 3: ['VEA', 0], 4: ['TA', 0], 5: ['RZP', 1], 6: ['KHA', 0], 7: ['TACH', 0], 8: ['Policejní automobil', 2], 9: ['Vrtulník LZS', 1], 10: ['AP', 0], 11: ['Policejní vrtulník', 2], 12: ['Obrněné vozidlo URNA', 2], 13: ['Vozidlo Kynologů PČR', 2], 14: ['Policejní motocykl', 2], 15: ['URNA SUV', 2], 16: ['Protiplynový automobil', 0], 17: ['MOS', 0], 18: ['Vozidlo vyšetřovatelů DN', 2], 19: ['Vozidlo pyrotechika PČR', 2], 20: ['Přívěs se člunem', 4], 21: ['Přívěs se člunem VZS ČČK', 4], 22: ['Potápěčský automobil', 4], 23: ['SUV VZS ČČK', 4], 24: ['Dodávka VZS ČČK', 4], 25: ['RV', 1], 26: ['IP', 1], 27: ['RLP', 1], 28: ['VYA', 1], 29: ['AJ', 1], 30: ['DA', 1], 31: ['RZA', 1], }; } else if (I18n.locale == 'da_DK') { lssm.carsById = { 0: ['Autosprøjte', 0], 1: ['Slangetender', 0], 2: ['Stigevogn', 0], 3: ['Indsatsleder Brand', 0], 4: ['Redningsvogn', 0], 5: ['Ambulance', 1], 6: ['Tankvogn', 0], 7: ['CBRN', 0], 8: ['Patruljevogn', 2], 9: ['Rednings Helikopter', 1], 10: ['Højtrykskompressor', 0], 11: ['LKM', 0], 12: ['Specialsprøjte', 0], 13: ['Politihelikopter', 2], 14: ['AKS Pansret mandskabsvogn', 2], 15: ['Hundepatrulje', 2], 16: ['Politimotorcykel', 2], 17: ['AKS Patruljevogn', 2], 18: ['Dykkerbil', 4], 19: ['Kystlivredderbil', 4], 20: ['Bådtrailer', 4], 21: ['Indsatsleder Politi', 2], 22: ['Nødbehlandler', 1], 23: ['Akutlæge', 1], 24: ['Indsatsleder Akutlæge', 1], 25: ['Mobil Behandlingsplads', 1], 26: ['Crash Tender', 0], 27: ['Rednings trappe', 0], }; } else if (I18n.locale == 'nb_NO') { lssm.carsById = { 0: ['Mannskapsbil', 0], 1: ['Lett mannskapsbil', 0], 2: ['Stigebil', 0], 3: ['Innsatslederbil brann', 0], 4: ['Tungredningsbil', 0], 5: ['Ambulanse', 1], 6: ['Tankbil', 0], 7: ['CBRNe enhet', 0], 8: ['Patruljebil', 2], 9: ['Luftambulanse', 1], 10: ['Snorkelbil', 0], 11: ['Politihelikopter', 2], 12: ['Pansret kjøretøy', 2], 13: ['Hundepatrulje', 2], 14: ['Politimotorsykkel', 2], 15: ['Delta kjøretøy', 2], 16: ['Røykdykkerbil', 0], 17: ['Innsatsstøttebil', 0], 18: ['Redningsbil', 0], 19: ['Dykkerbil', 4], 20: ['Lett redningsbåt', 4], 21: ['Branntankbil', 0], 22: ['Utrykningspolitibil', 2], 23: ['Utrykningsenhetbil', 2], 24: ['Legebil', 1], 25: ['Innsatslederbil helse', 1], 26: ['Akuttbil', 1], 27: ['Ambulansemotorsykkel', 1], 28: ['Syketransport', 1], 29: ['First responder bil', 0], 30: ['Akutthjelper', 1], 31: ['Intensivambulanse', 1], 32: ['Akuttbil', 1], 33: ['Skogbrannhelikopter', 0], 34: ['ATV', 0], 35: ['Skum Tankbil', 0], 36: ['Tilhengerpumpe', 0], 37: ['Slangebil', 0], 38: ['Slangebil med pumpe', 0], 39: ['Slangetilhenger', 0], }; } else if (I18n.locale == 'pl_PL') { lssm.carsById = { 0: ['Ciężki samochód gaśniczy', 0], 1: ['Średni samochód gaśniczy', 0], 2: ['SD', 0], 3: ['SLOp', 0], 4: ['Samochód ratownictwa technicznego', 0], 5: ['Ambulans P', 1], 6: ['Cysterna gaśnicza', 0], 7: ['Samochód ratownictwa chemicznego', 0], 8: ['Radiowóz OPI', 2], 9: ['Śmigłowiec LPR', 1], 10: ['SPGaz', 0], 11: ['Samochód Dowodzenia i Łączności', 0], 12: ['GBARt', 0], 13: ['SH', 0], 14: ['Helikopter Policyjny', 2], 15: ['Opancerzony Pojazd SPKP', 2], 16: ['Jednostka K-9', 2], 17: ['Motocykl Policyjny', 2], 18: ['SUV SPKP', 2], 19: ['S.WOPR', 4], 20: ['Quad', 4], 21: ['L.Ratownicza', 4], 22: ['Ponton', 4], 23: ['Skuter', 4], 24: ['Samochód SLRw', 4], 25: ['Dźwig SP', 4], 26: ['Łódź SP', 4], 27: ['SRWys', 0], 28: ['SLRr', 0], 29: ['GLBA', 0], 30: ['Radiowóz WRD', 2], 31: ['Ambulans S', 1], 32: ['Samochód Lekarza', 1], 33: ['Motoambulans', 1], 34: ['Ambulans T', 1], 35: ['SRMed', 0], 36: ["Kontenerowiec", 0], 37: ["SCRd", 0], 38: ["GCBARt", 0], 39: ["GLBARt", 0], 40: ["Kontener inżynieryjno - techniczny", 0], 41: ["Kontener dekontaminacyjny", 0], 42: ["Kontener z AODO", 0], 43: ["Kontener dowodzeniowy", 0], 44: ["Kontener do przewozu środków gaśniczych", 0], 45: ["Kontener socjalno - sanitarny", 0], 46: ["Kontener powodziowo - pompowy", 0], 47: ["Kontener - cysterna", 0], 48: ["Przyczepa pompowa", 0], 49: ["Przyczepa chemiczno - ekologiczna", 0], 50: ["Przyczepa dekontaminacyjna", 0], 51: ["Przyczepa przeciwpowodziowa", 0], 52: ["Przyczepa ze sprzętem AODO", 0], 53: ["Przyczepa ze sprzętem medycznym", 0], 54: ["Przyczepa z łódką strażacką", 0], 55: ["GCBAPr", 0], 56: ["GBAPr", 0], 57: ["GCPr", 0], 58: ["GPr", 0], 59: ["GLPr", 0], 60: ["Przyczepa ze środkiem pianotwórczym", 0], 61: ["SW", 0], 62: ["Przyczepa wężowa", 0], 63: ["Przyczepa wielofunkcyjna", 0], 64: ["Kontener wężowy", 0], 65: ["Furgonetka OPP", 2], 66: ["Van OPP", 2], 67: ["Pickup OPP", 2], 68: ["Ambulans OPP", 2], 69: ["Armatka wodna", 2], 70: ["Autobus policyjny", 2], 71: ["Samochód SM", 2], 72: ["Furgonetka SM", 2], 73: ["Szybki Radiowóz WRD", 2], 74: ["Motocykl WRD", 2], 75: ["APRD", 2], 76: ["Furgonetka policyjna", 2], 77: ["Samochód terenowy", 2], 78: ["Ruchome Stanowisko Dowodzenia", 2], 79: ["Mała więźniarka", 2], 80: ["Duża więźniarka", 2], }; } else if (I18n.locale == 'it_IT') { lssm.carsById = { 0: ['ABP', 0], 1: ['AS', 0], 2: ['AV/FNZ', 0], 3: ['CA/POLI', 0], 4: ['Ambulanza BLSD', 1], 5: ['KILO', 0], 6: ['AF/NBCR', 0], 7: ['Volante', 2], 8: ['Elisoccorso', 1], 9: ['APS', 0], 10: ['AF/ARIA', 0], 11: ['UCL', 0], 12: ['AG', 0], 13: ['Elicottero della Polizia', 2], 14: ['Furgone Antisommossa', 2], 15: ['Unità cinofila antidroga', 2], 16: ['Moto della Polizia', 2], 17: ['UOPI Suv', 2], 18: ['VLV', 1], 19: ['MSA', 1], 20: ['Ambulanza Ordinaria', 1], 21: ['Volante Finanza', 2], 22: ['Furgone artificieri', 2], 23: ['Camion NSSA', 4], 24: ['Pickup SAF', 4], 25: ['Barce', 4], 26: ['AF/BUS', 0], 27: ['DTS', 1], 28: ['Pickup con Modulo Boschivo', 0], 29: ['Autocarro AIB - AF/BOS', 0], 30: ['Autobotte AIB', 0], 31: ['Funzionario AIB - DOS', 0], 32: ['Camion con Rimorchio', 0], 33: ['Scavatore su Rimorchio', 0], 34: ['Elicottero Antincendio', 0], 35: ['Canadair', 0], 36: ['P.M.A.', 1], 37: ['ACT/SCHIUMA', 0], 38: ['Pattuglia Polizia Stradale', 2], 39: ['Moto Polizia Stradale', 2], 40: ['Pattuglia Forestale', 2], 41: ['Idrante Antisommossa', 2], }; } else if (I18n.locale == 'fr_FR') { lssm.educations = ['SAV (Sauvetage Aquatique)', 'PLG (Plongeur)']; lssm.carsById = { 0: ['FPT', 0], 1: ['FPTL', 0], 2: ['EPA', 0], 3: ['VLCG', 0], 4: ['VSR', 0], 5: ['ASSU', 1], 6: ['CCGC', 0], 7: ['VIRT', 0], 8: ['Véhicule de patrouille', 2], 9: ['HéliSMUR', 1], 10: ['VAR', 0], 11: ['VPC', 0], 12: ['FPTSR', 0], 13: ['VTU', 0], 14: ['VGRIMP', 0], 15: ['BEA', 0], 16: ['VPL', 4], 17: ['BLS', 4], 18: ['Choucas', 2], 19: ['Equipe cynophile', 2], 20: ['Unité motocycliste', 2], 21: ['CCFS', 0], 22: ['CCFM', 0], 23: ['CCFL', 0], 24: ['VLHR', 0], 25: ['VSAV', 0], 26: ['VL SSSM', 0], 27: ['VLM', 1], 28: ['AR', 1], 29: ['PC DSM', 1], 30: ['Ambulance Type A', 1], 31: ["VTP", 0], 32: ["CCRL", 0], 33: ["CCRM", 0], 34: ["CCRSR", 0], 35: ["FMOGP", 0], 36: ["CDHR", 0], 37: ["FDGP", 0], 38: ["MPR", 0], 39: ["VR", 2], 40: ["VCT", 2], 41: ["RAM", 2], 42: ["VTP", 2], 43: ["ELE", 2], 44: ["reBP", 2], 45: ["VAT", 2], 46: ['Buggy', 0], 47: ['CSL',0], 48: ['CTT',0], 49: ['VCSM',0], 50: ['Dragon',0], 51: ['VIM', 0], 52: ['VSA', 0], 53: ['MAH', 0], 54: ['VIRP', 0], 55: ['VLCM', 0], 56: ['VPCE', 0], 57: ['CEEP', 0], 58: ['Pélican', 0], 59: ['Dash Milan', 0], 60: ['HBE', 0], 61:['MaGec',0], 62:['VDIP',0], 63:['CEDM',0], 64:['VDSC',0], 65:['TEODOR',0], 66:['VTPSC',0], 67:['CESD',0], 68:['VEC',0], 69:['MSAV-SEV',0], 70:['MAI',0], 71:['UPM',0], 72:['UFR',0], 73:['VPCE',0], 74:['Fortress 200',0], 75:['Sherpa Light APC',0], 76:['VDN',0], 77:['SA 330 PUMA',0], 78:['VPI',0], }; } else if (I18n.locale == 'es_ES') { lssm.carsById = { 0: ['Camión BUP', 0], 1: ['Camión BUL', 0], 2: ['Camión AE', 0], 3: ['Vehículo UMC', 0], 4: ['FUV', 0], 5: ['Ambulancia', 1], 6: ['Camión BNP', 0], 7: ['Camión TPP', 0], 8: ['Coche patrulla', 2], 9: ['HEMS', 1], 10: ['Vehículo aéreo', 0], 11: ['Vehículo de mando móvil', 0], 12: ['Vehículo de rescate', 0], 13: ['Helicóptero de Policía', 2], 14: ['Unidad Antidisturbios', 2], 15: ['Unidad GEO', 2], 16: ['Unidad Canina', 2], 17: ['Moto de Policía', 2], 18: ['VIR', 1], 19: ['Unidad logística de AMV', 1], 20: ['Médico de cabecera', 1], 21: ['Motocicleta de intervención rápida', 1], 22: ['Ambulancia SVB', 1], 23: ['Vehículo de extinción por espuma', 0], 24: ['Remolque con bomba accionada por motor', 0], }; } else if (I18n.locale == 'ko_KR') { lssm.carsById = { 0: ['구조사다리', 0], 1: ['전술 대응 차량(TRV)', 0], 2: ['고가 사다리(TL)', 0], 3: ['지휘차', 0], 4: ['구조공작차(MRU)', 0], 5: ['구급차', 1], 6: ['물탱크차', 0], 7: ['생화학 인명구조차', 0], 8: ['사고 대응차량(IRV)', 2], 9: ['구급 헬리콥터', 1], 10: ['이동식 호흡 장비', 0], 11: ['구조 공작차', 0], 12: ['사다리차', 0], 13: ['긴급 이송차', 1], 14: ['구급 지휘차', 1], 15: ['일반의', 1], 16: ['긴급 이송용 오토바이', 1], 17: ['기본 인명 지원(BLS) 구급차', 1], }; } else if (I18n.locale == 'ro_RO') { lssm.carsById = { 0: ['Pompă de incendiu tip 1', 0], 1: ['Pompă de incendiu tip 2', 0], 2: ['Camion cu platformă', 0], 3: ['Unitate șef batalion', 0], 4: ['Vehicul greu de salvare', 0], 5: ['Ambulanță ALS', 1], 6: ['Cisternă de apă', 0], 7: ['Materiale periculoase', 0], 8: ['Mașină de patrulare', 2], 9: ['Elicopter SMURD', 1], 10: ['Mașină de suport logistic', 0], 11: ['Mașină de comanda și control', 0], 12: ['Mașină de intervenții accidente colective', 0], 13: ['Platforma Autoutilitara', 0], 14: ['Vehicul EMS netransportant', 1], 15: ['Unitate transport Supervizor', 1], 16: ['Medic generalist', 1], 17: ['Motocicletă-ambulanță', 1], 18: ['Ambulanță tip B (BLS)', 1], }; } else if (I18n.locale == 'nl_NL') { lssm.carsById = { 0: ['SI‐2 | Snel Inzetbare Eenheid (2 pers.)', 0], 1: ['TS 8/9 | Tankautospuit (8/9 personen)', 0], 2: ['AL | Autoladder', 0], 3: ['DA-OvD | Officier van Dienst - Brandweer', 0], 4: ['HV | Hulpverleningsvoertuig', 0], 5: ['AB | Adembeschermingsvoertuig', 0], 6: ['TST 8/9 | Tankautospuit Terreinvaardig (8/9 personen)', 0], 7: ['TST 6/7 | Tankautospuit Terreinvaardig (6/7 personen)', 0], 8: ['TST 4/5 | Tankautospuit Terreinvaardig (4/5 personen)', 0], 9: ['TS 4/5 | Tankautospuit (4/5 personen)', 0], 10: ['SL | Slangenwagen', 0], 11: ['DB-VEB | Dienstbus Verkenningseenheid Brandweer', 0], 12: [ 'TST-NB 8/9 | Tankautospuit Natuurbrandbestrijding (8/9 personen)', 0, ], 13: ['TS8 (4x4)', 0], 14: [ 'TST-NB 6/7 | Tankautospuit Natuurbrandbestrijding (6/7 personen)', 0, ], 15: [ 'TST-NB 4/5 | Tankautospuit Natuurbrandbestrijding (4 personen)', 0, ], 16: ['Ambulance', 1], 17: ['TS 6/7 | Tankautospuit (6/7 personen)', 0], 18: ['HW | Hoogwerker', 0], 19: ['DA-HOD | Hoofd-Officier van Dienst - Brandweer', 0], 20: ['DA | Dienstauto (4 personen)', 0], 21: ['DB-K | Dienstbus klein (9 personen)', 0], 22: ['DA Noodhulp | Dienstauto Noodhulp', 2], 23: ['Lifeliner', 1], 24: ['DA-AGS | Adviseur Gevaarlijke Stoffen', 0], 25: ['DB Noodhulp | Dienstbus Noodhulp', 2], 26: ['HA | Haakarmvoertuig', 0], 27: ['ABH | Adembeschermingshaakarmbak', 0], 28: ['Politiehelikopter', 2], 29: ['WTH | Watertankhaakarmbak', 0], 30: ['Zorgambulance | B-ambulance', 1], 31: ['CO | Commandovoertuig', 0], 32: ['COH | Commandohaakarmbak', 0], 33: ['WO | Waterongevallenvoertuig', 0], 34: ['WT | Watertankwagen', 0], 35: ['OvD-P | Officier van Dienst - Politie', 2], 36: ['WOA | Waterongevallenaanhanger', 0], 37: ['MMT-Auto', 1], 38: ['OvD-G | Officier van Dienst - Geneeskunde', 1], 39: ['ME Commandovoertuig | Mobiele Eenheid - Commandovoertuig', 2], 40: ['ME Flex | Mobiele Eenheid - Flexbus', 2], 41: ['CT (8x8) | Crashtender (8x8)', 0], 42: ['CT (6x6) | Crashtender (6x6)', 0], 43: ['CT (4x4) | Crashtender (4x4)', 0], 44: ['AFO/OSC | Airport Fire Officer / On Scene Commander', 0], 45: ['DPH | Dompelpomphaakarmbak', 0], 46: ['DM Politie | Dienstmotor Politie', 2], 47: ['DA Hondengeleider | Dienstauto Hondengeleider', 2], 48: ['DB Hondengeleider | Dienstbus Hondengeleider', 2], 49: ['PM-OR | Materieelvoertuig - Oppervlakteredding', 0], 50: ['TS-OR | Tankautospuit - Oppervlakteredding', 0], 51: ['HVH | HulpverleningsHaakarmbak', 0], 52: ['RR | Rapid Responder', 1], 53: ['AT-C | AT-Commandant', 2], 54: ['AT-O | AT-Operator', 2], 55: ['AT-M | AT-Materiaalwagen', 2], 56: ['DA-VL | Dienstauto Voorlichter', 0], 57: [ 'DA OVDG-RR | Dienstvoertuig Officier van Dienst-Geneeskundig/Rapid Responder', 1, ], 58: ['DB-AV | Dienstbus Arrestantenvervoer', 2], 59: ['NH-O | Noodhulp Onopvallend', 2], 60: ['DB-Bike | Dienstbus Biketeam', 2], 61: ['SLH | Slangenhaakarmbak', 0], 62: ['TS-HV | Tankautospuit-Hulpverlening', 0], 63: ['DM-RR | Rapid Responder - Motor', 1], 64: ['ME-AE | ME - Aanhoudingseenheid', 2], 65: ['DAT-RB | Dienstauto Terreinwaardig - Reddingsbrigade', 4], 66: ['KHV | Kusthulpverleningsvoertuig', 4], 67: ['BA-RB | Bootaanhanger Reddingsbrigade', 4], 68: ['SB | Schuimblusvoertuig', 0], 69: ['SBH | Schuimblushaakarmbak', 0], 70: ['SBA | Schuimblusaanhanger', 0], 71: ['MSA', 0], 72: ['DPA | Dompelpompaanhangwagen', 0], 73: ['VW-BB | Vrachtwagen – Bereden Brigade', 2], 74: ['BB-A | Bereden Brigade Aanhanger', 2], 75: ['DAT-NH | Dienstauto terreinvaardig - Noodhulp', 2], 76: ['Quad', 4], 77: ['KW-bot | Kustwacht boot', 4], 78: ['RB-K | Reddingsboot klein', 4], 79: ['RB-G | Reddingsboot groot', 4], 80: ['SAR-heli | SAR helikopter', 4], 81: ['DA-RWS | Dienstvoertuig weginspecteur Rijkswaterstaat', 0], 82: ['DM-RWS | Dienstmotor weginspecteur Rijkswaterstaat',0], 83: ['DA-SIG | Signalisatievoertuig',0], 84: ['Waterwerper',2], 85: ['FBO-Heli',0], 86: ['DB-Handcrew',0], 87: ['DA-LA-NB',0], 88: ['VW-NB',0], 89: ['NBH',0], 90: ['TS-STH',0], 91: ['HVH-STH',0], 92: ['DB-USAR',0], 93: ['TS-USAR',0], 94: ['VW-USAR',0], 95: ['DM-USAR',0], 96: ['Quad-USAR',0], 97: ['DB-Speurhonden',0], 98: ['SIV-P',2], 99: ['DB-VOA',2], 100: ['GGB', 1], 101: ['NHT', 1], 102: ['MC-Ambulance', 1], }; } else if (I18n.locale == 'de_DE') { lssm.buildingTypes = [ 'Feuerwache', 'Feuerwehrschule', 'Rettungswache', 'Rettungsschule', 'Krankenhaus', 'Rettungshubschrauber-Station', 'Polizeiwache', 'Leitstelle', 'Polizeischule', 'THW', 'THW Bundesschule', 'Bereitschaftspolizei', 'Schnelleinsatzgruppe (SEG)', 'Polizeihubschrauberstation', 'Bereitstellungsraum', 'Wasserrettung', 'Verbandszellen', 'Polizei-Sondereinheiten', 'Feuerwache (Kleinwache)', 'Polizeiwache (Kleinwache)', 'Rettungswache (Kleinwache)', 'Rettungshundestaffel', 'Großer Komplex', 'Kleiner Komplex', 'Reiterstaffel', ]; lssm.carsById = { 0: ['LF 20', 0], 1: ['LF 10', 0], 2: ['DLK 23', 0], 3: ['ELW 1', 0], 4: ['RW', 0], 5: ['GW-A', 0], 6: ['LF 8/6', 0], 7: ['LF 20/16', 0], 8: ['LF 10/6', 0], 9: ['LF 16-TS', 0], 10: ['GW-Öl', 0], 11: ['GW-L2-Wasser', 0], 12: ['GW-Messtechnik', 0], 13: ['SW 1000', 0], 14: ['SW 2000', 0], 15: ['SW 2000-Tr', 0], 16: ['SW Kats', 0], 17: ['TLF 2000', 0], 18: ['TLF 3000', 0], 19: ['TLF 8/8', 0], 20: ['TLF 8/18', 0], 21: ['TLF 16/24-Tr', 0], 22: ['TLF 16/25', 0], 23: ['TLF 16/45', 0], 24: ['TLF 20/40', 0], 25: ['TLF 20/40-SL', 0], 26: ['TLF 16', 0], 27: ['GW-Gefahrgut', 0], 28: ['RTW', 1], 29: ['NEF', 1], 30: ['HLF 20', 0], 31: ['RTH', 1], 32: ['FuStW', 2], 33: ['GW-Höhenrettung', 0], 34: ['ELW 2', 0], 35: ['leBefKw', 2], 36: ['MTW', 0], 37: ['TSF-W', 0], 38: ['KTW', 1], 39: ['GKW', 3], 40: ['MTW-TZ', 3], 41: ['MzGW (FGr N)', 3], 42: ['LKW K 9', 3], 43: ['BRmG R', 3], 44: ['Anh DLE', 3], 45: ['MLW 5', 3], 46: ['WLF', 0], 47: ['AB-Rüst', 0], 48: ['AB-Atemschutz', 0], 49: ['AB-Öl', 0], 50: ['GruKw', 2], 51: ['FüKw (Polizei)', 2], 52: ['GefKw', 2], 53: ['Dekon-P', 0], 54: ['AB-Dekon-P', 0], 55: ['KdoW-LNA', 1], 56: ['KdoW-Orgl', 1], 57: ['FwK', 0], 58: ['KTW Typ B', 1], 59: ['ELW 1 (SEG)', 1], 60: ['GW-San', 1], 61: ['Polizeihubschrauber', 2], 62: ['AB-Schlauch', 0], 63: ['GW-Taucher', 4], 64: ['GW-Wasserrettung', 4], 65: ['LKW 7 Lkr 19 tm', 3], 66: ['Anh MzB', 3], 67: ['Anh SchlB', 3], 68: ['Anh MzAB', 3], 69: ['Tauchkraftwagen', 3], 70: ['MZB', 4], 71: ['AB-MZB', 4], 72: ['WaWe 10', 2], 73: ['GRTW', 1], 74: ['NAW', 1], 75: ['FLF', 0], 76: ['Rettungstreppe', 0], 77: ['AB-Gefahrgut', 0], 78: ['AB-Einsatzleitung', 0], 79: ['SEK - ZF', 2], 80: ['SEK - MTF', 2], 81: ['MEK - ZF', 2], 82: ['MEK - MTF', 2], 83: ['GW-Werkfeuerwehr', 0], 84: ['ULF mit Löscharm', 0], 85: ['TM 50', 0], 86: ['Turbolöscher', 0], 87: ['TLF 4000', 0], 88: ['KLF', 0], 89: ['MLF', 0], 90: ['HLF 10', 0], 91: ['Rettungshundefahrzeug', 1], 92: ['Anh Hund', 3], 93: ['MTW-O', 3], 94: ['DHuFüKw', 2], 95: ['Polizeimotorrad', 2], 96: ['Außenlastbehälter (allgemein)', 2], 97: ['ITW', 1], 98: ['Zivilstreifenwagen', 2], 99: ['LKW 7 Lbw', 3], 100: ['MLW 4', 3], 101: ['Anh SwPu', 3], 102: ['Anh 7', 3], 103: ['FuStW (DGL)', 2], 104: ['GW-L1', 0], 105: ['GW-L2', 0], 106: ['MTF-L', 0], 107: ['LF-L', 0], 108: ['AB-L', 0], 109: ['MzGW SB', 3], 110: ['NEA50', 3], 111: ['NEA50', 0], 112: ['NEA200', 3], 113: ['NEA200', 0], 114: ['GW Lüfter', 0], 115: ['Anh Lüfter', 0], 116: ['AB Lüfter', 0], 117: ['AB-Tank', 0], 118: ['Kleintankwagen', 0], 119: ['AB-Lösch', 0], 120: ['Tankwagen', 0], 121: ['GTLF', 0], 122: ['LKW 7 Lbw (FGr E)', 3], 123: ['LKW 7 Lbw (FGr WP)', 3], 124: ['MTW-OV', 3], 125: ['MTW-Tr UL', 3], 126: ['MTF Drohne', 0], 127: ['GW UAS', 1], 128: ['ELW Drohne', 0], 129: ['ELW2 Drohne', 0], 130: ['GW-Bt', 1], 131: ['Bt-Kombi', 1], 132: ['FKH', 1], 133: ['Bt LKW', 1], 134: ['Pferdetransporter klein', 2], 135: ['Pferdetransporter groß', 2], 136: ['Anh Pferdetransport', 2], 137: ['Zugfahrzeug Pferdetransport', 2], 138: ['GW-Verpflegung', 0], 139: ['GW-Küche', 0], 140: ['MTW-Verpflegung ', 0], 141: ['Anhänger Feldkochherd', 0], 142: ['AB-Küche', 0], 143: ['Anh Schlauch', 0], 144: ['FüKw (THW)', 3], 145: ['FüKomKW', 3], 146: ['Anh FüLa', 3], 147: ['FmKW', 3], 148: ['MTW FGr K', 3], }; } lssm.getVehicleNameById = function (vehicleId) { if (vehicleId in lssm.carsById) { return lssm.carsById[vehicleId][0]; } else { return null; } }; lssm.car_list = function (building) { // liefert die Fahrzeuge einer Wache zurück let data = []; $.each(lssm.vehicles, function (vid, car) { if (car.building != building) return true; data.push({ id: vid, name: car.name, type: car.type, customname: car.customtype, fms_real: car.fms_real, fms_show: car.fms_show, }); }); return data; }; lssm.car_list_all = function () { return lssm.vehicles; }; // Formatiert Fahrzeugliste um (mit FMS) lssm.car_list_printable = function (list) { let data = ''; $.each(list, function (key, car) { data += '
' + car.fms_show + ' ' + car.name + '
'; }); return data; }; lssm.get_vehicles = function (async = true, overwritePathSetting = false) { let path = window.location.pathname.length; if (path <= 2 || overwritePathSetting) { let tmpCar = {}; $.ajax({ url: '/api/vehicles', method: 'GET', cache: true, async: async, headers: { 'X-LSS-Manager': lssm.headerVersion(), }, success: function (response) { $.each(response, function (key, car) { tmpCar[car.id] = { name: car.caption, building: car.building_id, type: car.vehicle_type, customtype: car.vehicle_type_caption, fms_real: car.fms_real, fms_show: car.fms_show, }; }); lssm.vehicles = tmpCar; }, }); } }; lssm.statusCount = { 1: 0, 2: 0, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0, 9: 0, }; lssm.updateStatusCount = function (async = true) { $.ajax({ url: '/api/vehicle_states', method: 'GET', cache: true, async: async, headers: { 'X-LSS-Manager': lssm.headerVersion(), }, success: function (response) { for (let status in response) { lssm.statusCount[status] = response[status]; } }, }); }; // Funktion zum Updaten des FMS eigener Fzg. $(document).bind(lssm.hook.postname('radioMessage'), function (event, t) { if ( t.type === 'vehicle_fms' && lssm.vehicles.hasOwnProperty(t.id) && !t.fms_text.startsWith('[Verband]') ) { let vehicle = lssm.vehicles[t.id]; lssm.statusCount[vehicle.fms_show]--; lssm.vehicles[t.id].name = t.caption; lssm.vehicles[t.id].fms_show = t.fms; lssm.vehicles[t.id].fms_real = t.fms_real; lssm.statusCount[t.fms]++; } }); lssm.get_buildings = function (async = true, overwritePathSetting = false) { let path = window.location.pathname.length; if (path <= 2 || overwritePathSetting) { $.ajax({ url: '/api/buildings', method: 'GET', cache: true, async: async, headers: { 'X-LSS-Manager': lssm.headerVersion(), }, success: function (response) { lssm.buildings = response; }, }); } }; // liefert ein Div zurück welches auf der Karte verschoben werden kann und seine Position speichert und beim laden wieder annimmt. lssm.newDragableDivOnMap = function (id, classe, pos) { function changeX(p, m) { if (p <= -m + info._div.offsetWidth + 20) return -m + info._div.offsetWidth + 20; else if (p >= 0) return 0; else return p; } function changeY(p, m) { if (p >= m - info._div.offsetHeight) return m - info._div.offsetHeight - 10; else if (p <= 0) return 0; else return p; } let info = L.control(); info.onAdd = function () { this._div = L.DomUtil.create('div', classe || ''); this._div.id = id + 'Div'; let m = map.getSize(); L.DomUtil.setPosition( info._div, new L.Point(changeX(pos.x, m.x), changeY(pos.y, m.y)) ); this.update(); return this._div; }; info.update = function () { let m = map.getSize(); let p = L.DomUtil.getPosition(info._div); let pos = { x: changeX(p.x, m.x), y: changeY(p.y, m.y), }; lssm.settings.set(lssm.config.prefix + '_' + id + 'Position', pos); L.DomUtil.setPosition(info._div, new L.Point(pos.x, pos.y)); }; info.addTo(map); let t = new L.Draggable(info._div); t.enable(); t.on('drag', info.update); return $(info._div); }; // Add custom String format function if (!String.format) { // console.log("execute"); String.format = function (format) { let args = Array.prototype.slice.call(arguments, 1); return format.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; }); }; } lssm.notification = function (msg, type, duration) { type = typeof type === 'undefined' ? 'alert-success' : type; duration = typeof duration === 'undefined' ? 2000 : duration; $('#content').before( '
×' + msg + '
' ); setTimeout(function () { $('#lssm_notification').slideUp('slow', function () { $('#lssm_notification').remove(); }); }, duration); }; lssm.headerVersion = () => `${I18n.t('lssm.version')} ${lssm.version}`; /*! Select2 4.0.6-rc.0 | https://github.com/select2/select2/blob/master/LICENSE.md */ !(function (a) { 'function' == typeof define && define.amd ? define(['jquery'], a) : 'object' == typeof module && module.exports ? (module.exports = function (b, c) { return ( void 0 === c && (c = 'undefined' != typeof window ? require('jquery') : require('jquery')(b)), a(c), c ); }) : a(jQuery); })(function (a) { var b = (function () { if (a && a.fn && a.fn.select2 && a.fn.select2.amd) var b = a.fn.select2.amd; var b; return ( (function () { if (!b || !b.requirejs) { b ? (c = b) : (b = {}); var a, c, d; !(function (b) { function e(a, b) { return v.call(a, b); } function f(a, b) { var c, d, e, f, g, h, i, j, k, l, m, n, o = b && b.split('/'), p = t.map, q = (p && p['*']) || {}; if (a) { for ( a = a.split('/'), g = a.length - 1, t.nodeIdCompat && x.test(a[g]) && (a[g] = a[g].replace(x, '')), '.' === a[0].charAt(0) && o && ((n = o.slice(0, o.length - 1)), (a = n.concat(a))), k = 0; k < a.length; k++ ) if ('.' === (m = a[k])) a.splice(k, 1), (k -= 1); else if ('..' === m) { if ( 0 === k || (1 === k && '..' === a[2]) || '..' === a[k - 1] ) continue; k > 0 && (a.splice(k - 1, 2), (k -= 2)); } a = a.join('/'); } if ((o || q) && p) { for ( c = a.split('/'), k = c.length; k > 0; k -= 1 ) { if (((d = c.slice(0, k).join('/')), o)) for (l = o.length; l > 0; l -= 1) if ( (e = p[ o .slice(0, l) .join('/') ]) && (e = e[d]) ) { (f = e), (h = k); break; } if (f) break; !i && q && q[d] && ((i = q[d]), (j = k)); } !f && i && ((f = i), (h = j)), f && (c.splice(0, h, f), (a = c.join('/'))); } return a; } function g(a, c) { return function () { var d = w.call(arguments, 0); return ( 'string' != typeof d[0] && 1 === d.length && d.push(null), o.apply(b, d.concat([a, c])) ); }; } function h(a) { return function (b) { return f(b, a); }; } function i(a) { return function (b) { r[a] = b; }; } function j(a) { if (e(s, a)) { var c = s[a]; delete s[a], (u[a] = !0), n.apply(b, c); } if (!e(r, a) && !e(u, a)) throw new Error('No ' + a); return r[a]; } function k(a) { var b, c = a ? a.indexOf('!') : -1; return ( c > -1 && ((b = a.substring(0, c)), (a = a.substring(c + 1, a.length))), [b, a] ); } function l(a) { return a ? k(a) : []; } function m(a) { return function () { return (t && t.config && t.config[a]) || {}; }; } var n, o, p, q, r = {}, s = {}, t = {}, u = {}, v = Object.prototype.hasOwnProperty, w = [].slice, x = /\.js$/; (p = function (a, b) { var c, d = k(a), e = d[0], g = b[1]; return ( (a = d[1]), e && ((e = f(e, g)), (c = j(e))), e ? (a = c && c.normalize ? c.normalize(a, h(g)) : f(a, g)) : ((a = f(a, g)), (d = k(a)), (e = d[0]), (a = d[1]), e && (c = j(e))), { f: e ? e + '!' + a : a, n: a, pr: e, p: c, } ); }), (q = { require: function (a) { return g(a); }, exports: function (a) { var b = r[a]; return void 0 !== b ? b : (r[a] = {}); }, module: function (a) { return { id: a, uri: '', exports: r[a], config: m(a), }; }, }), (n = function (a, c, d, f) { var h, k, m, n, o, t, v, w = [], x = typeof d; if ( ((f = f || a), (t = l(f)), 'undefined' === x || 'function' === x) ) { for ( c = !c.length && d.length ? [ 'require', 'exports', 'module', ] : c, o = 0; o < c.length; o += 1 ) if ( ((n = p(c[o], t)), 'require' === (k = n.f)) ) w[o] = q.require(a); else if ('exports' === k) (w[o] = q.exports(a)), (v = !0); else if ('module' === k) h = w[o] = q.module(a); else if ( e(r, k) || e(s, k) || e(u, k) ) w[o] = j(k); else { if (!n.p) throw new Error( a + ' missing ' + k ); n.p.load( n.n, g(f, !0), i(k), {} ), (w[o] = r[k]); } (m = d ? d.apply(r[a], w) : void 0), a && (h && h.exports !== b && h.exports !== r[a] ? (r[a] = h.exports) : (m === b && v) || (r[a] = m)); } else a && (r[a] = d); }), (a = c = o = function (a, c, d, e, f) { if ('string' == typeof a) return q[a] ? q[a](c) : j(p(a, l(c)).f); if (!a.splice) { if ( ((t = a), t.deps && o(t.deps, t.callback), !c) ) return; c.splice ? ((a = c), (c = d), (d = null)) : (a = b); } return ( (c = c || function () {}), 'function' == typeof d && ((d = e), (e = f)), e ? n(b, a, c, d) : setTimeout(function () { n(b, a, c, d); }, 4), o ); }), (o.config = function (a) { return o(a); }), (a._defined = r), (d = function (a, b, c) { if ('string' != typeof a) throw new Error( 'See almond README: incorrect module build, no module name' ); b.splice || ((c = b), (b = [])), e(r, a) || e(s, a) || (s[a] = [a, b, c]); }), (d.amd = { jQuery: !0 }); })(), (b.requirejs = a), (b.require = c), (b.define = d); } })(), b.define('almond', function () {}), b.define('jquery', [], function () { var b = a || $; return ( null == b && console && console.error && console.error( 'Select2: An instance of jQuery or a jQuery-compatible library was not found. Make sure that you are including jQuery before Select2 on your web page.' ), b ); }), b.define('select2/utils', ['jquery'], function (a) { function b(a) { var b = a.prototype, c = []; for (var d in b) { 'function' == typeof b[d] && 'constructor' !== d && c.push(d); } return c; } var c = {}; (c.Extend = function (a, b) { function c() { this.constructor = a; } var d = {}.hasOwnProperty; for (var e in b) d.call(b, e) && (a[e] = b[e]); return ( (c.prototype = b.prototype), (a.prototype = new c()), (a.__super__ = b.prototype), a ); }), (c.Decorate = function (a, c) { function d() { var b = Array.prototype.unshift, d = c.prototype.constructor.length, e = a.prototype.constructor; d > 0 && (b.call(arguments, a.prototype.constructor), (e = c.prototype.constructor)), e.apply(this, arguments); } function e() { this.constructor = d; } var f = b(c), g = b(a); (c.displayName = a.displayName), (d.prototype = new e()); for (var h = 0; h < g.length; h++) { var i = g[h]; d.prototype[i] = a.prototype[i]; } for ( var j = function (a) { var b = function () {}; (a in d.prototype) && (b = d.prototype[a]); var e = c.prototype[a]; return function () { return ( Array.prototype.unshift.call( arguments, b ), e.apply(this, arguments) ); }; }, k = 0; k < f.length; k++ ) { var l = f[k]; d.prototype[l] = j(l); } return d; }); var d = function () { this.listeners = {}; }; (d.prototype.on = function (a, b) { (this.listeners = this.listeners || {}), a in this.listeners ? this.listeners[a].push(b) : (this.listeners[a] = [b]); }), (d.prototype.trigger = function (a) { var b = Array.prototype.slice, c = b.call(arguments, 1); (this.listeners = this.listeners || {}), null == c && (c = []), 0 === c.length && c.push({}), (c[0]._type = a), a in this.listeners && this.invoke( this.listeners[a], b.call(arguments, 1) ), '*' in this.listeners && this.invoke(this.listeners['*'], arguments); }), (d.prototype.invoke = function (a, b) { for (var c = 0, d = a.length; c < d; c++) a[c].apply(this, b); }), (c.Observable = d), (c.generateChars = function (a) { for (var b = '', c = 0; c < a; c++) { b += Math.floor(36 * Math.random()).toString( 36 ); } return b; }), (c.bind = function (a, b) { return function () { a.apply(b, arguments); }; }), (c._convertData = function (a) { for (var b in a) { var c = b.split('-'), d = a; if (1 !== c.length) { for (var e = 0; e < c.length; e++) { var f = c[e]; (f = f.substring(0, 1).toLowerCase() + f.substring(1)), f in d || (d[f] = {}), e == c.length - 1 && (d[f] = a[b]), (d = d[f]); } delete a[b]; } } return a; }), (c.hasScroll = function (b, c) { var d = a(c), e = c.style.overflowX, f = c.style.overflowY; return ( (e !== f || ('hidden' !== f && 'visible' !== f)) && ('scroll' === e || 'scroll' === f || d.innerHeight() < c.scrollHeight || d.innerWidth() < c.scrollWidth) ); }), (c.escapeMarkup = function (a) { var b = { '\\': '\', '&': '&', '<': '<', '>': '>', '"': '"', "'": ''', '/': '/', }; return 'string' != typeof a ? a : String(a).replace( /[&<>"'\/\\]/g, function (a) { return b[a]; } ); }), (c.appendMany = function (b, c) { if ('1.7' === a.fn.jquery.substr(0, 3)) { var d = a(); a.map(c, function (a) { d = d.add(a); }), (c = d); } b.append(c); }), (c.__cache = {}); var e = 0; return ( (c.GetUniqueElementId = function (a) { var b = a.getAttribute('data-select2-id'); return ( null == b && (a.id ? ((b = a.id), a.setAttribute('data-select2-id', b)) : (a.setAttribute( 'data-select2-id', ++e ), (b = e.toString()))), b ); }), (c.StoreData = function (a, b, d) { var e = c.GetUniqueElementId(a); c.__cache[e] || (c.__cache[e] = {}), (c.__cache[e][b] = d); }), (c.GetData = function (b, d) { var e = c.GetUniqueElementId(b); return d ? c.__cache[e] && null != c.__cache[e][d] ? c.__cache[e][d] : a(b).data(d) : c.__cache[e]; }), (c.RemoveData = function (a) { var b = c.GetUniqueElementId(a); null != c.__cache[b] && delete c.__cache[b]; }), c ); }), b.define( 'select2/results', ['jquery', './utils'], function (a, b) { function c(a, b, d) { (this.$element = a), (this.data = d), (this.options = b), c.__super__.constructor.call(this); } return ( b.Extend(c, b.Observable), (c.prototype.render = function () { var b = a( '' ); return ( this.options.get('multiple') && b.attr('aria-multiselectable', 'true'), (this.$results = b), b ); }), (c.prototype.clear = function () { this.$results.empty(); }), (c.prototype.displayMessage = function (b) { var c = this.options.get('escapeMarkup'); this.clear(), this.hideLoading(); var d = a( '
  • ' ), e = this.options .get('translations') .get(b.message); d.append(c(e(b.args))), (d[0].className += ' select2-results__message'), this.$results.append(d); }), (c.prototype.hideMessages = function () { this.$results .find('.select2-results__message') .remove(); }), (c.prototype.append = function (a) { this.hideLoading(); var b = []; if (null == a.results || 0 === a.results.length) return void ( 0 === this.$results.children().length && this.trigger('results:message', { message: 'noResults', }) ); a.results = this.sort(a.results); for (var c = 0; c < a.results.length; c++) { var d = a.results[c], e = this.option(d); b.push(e); } this.$results.append(b); }), (c.prototype.position = function (a, b) { b.find('.select2-results').append(a); }), (c.prototype.sort = function (a) { return this.options.get('sorter')(a); }), (c.prototype.highlightFirstItem = function () { var a = this.$results.find( '.select2-results__option[aria-selected]' ), b = a.filter('[aria-selected=true]'); b.length > 0 ? b.first().trigger('mouseenter') : a.first().trigger('mouseenter'), this.ensureHighlightVisible(); }), (c.prototype.setClasses = function () { var c = this; this.data.current(function (d) { var e = a.map(d, function (a) { return a.id.toString(); }); c.$results .find( '.select2-results__option[aria-selected]' ) .each(function () { var c = a(this), d = b.GetData(this, 'data'), f = '' + d.id; (null != d.element && d.element.selected) || (null == d.element && a.inArray(f, e) > -1) ? c.attr( 'aria-selected', 'true' ) : c.attr( 'aria-selected', 'false' ); }); }); }), (c.prototype.showLoading = function (a) { this.hideLoading(); var b = this.options .get('translations') .get('searching'), c = { disabled: !0, loading: !0, text: b(a), }, d = this.option(c); (d.className += ' loading-results'), this.$results.prepend(d); }), (c.prototype.hideLoading = function () { this.$results.find('.loading-results').remove(); }), (c.prototype.option = function (c) { var d = document.createElement('li'); d.className = 'select2-results__option'; var e = { 'role': 'treeitem', 'aria-selected': 'false', }; c.disabled && (delete e['aria-selected'], (e['aria-disabled'] = 'true')), null == c.id && delete e['aria-selected'], null != c._resultId && (d.id = c._resultId), c.title && (d.title = c.title), c.children && ((e.role = 'group'), (e['aria-label'] = c.text), delete e['aria-selected']); for (var f in e) { var g = e[f]; d.setAttribute(f, g); } if (c.children) { var h = a(d), i = document.createElement('strong'); i.className = 'select2-results__group'; a(i); this.template(c, i); for ( var j = [], k = 0; k < c.children.length; k++ ) { var l = c.children[k], m = this.option(l); j.push(m); } var n = a('', { class: 'select2-results__options select2-results__options--nested', }); n.append(j), h.append(i), h.append(n); } else this.template(c, d); return b.StoreData(d, 'data', c), d; }), (c.prototype.bind = function (c, d) { var e = this, f = c.id + '-results'; this.$results.attr('id', f), c.on('results:all', function (a) { e.clear(), e.append(a.data), c.isOpen() && (e.setClasses(), e.highlightFirstItem()); }), c.on('results:append', function (a) { e.append(a.data), c.isOpen() && e.setClasses(); }), c.on('query', function (a) { e.hideMessages(), e.showLoading(a); }), c.on('select', function () { c.isOpen() && (e.setClasses(), e.highlightFirstItem()); }), c.on('unselect', function () { c.isOpen() && (e.setClasses(), e.highlightFirstItem()); }), c.on('open', function () { e.$results.attr( 'aria-expanded', 'true' ), e.$results.attr( 'aria-hidden', 'false' ), e.setClasses(), e.ensureHighlightVisible(); }), c.on('close', function () { e.$results.attr( 'aria-expanded', 'false' ), e.$results.attr( 'aria-hidden', 'true' ), e.$results.removeAttr( 'aria-activedescendant' ); }), c.on('results:toggle', function () { var a = e.getHighlightedResults(); 0 !== a.length && a.trigger('mouseup'); }), c.on('results:select', function () { var a = e.getHighlightedResults(); if (0 !== a.length) { var c = b.GetData(a[0], 'data'); 'true' == a.attr('aria-selected') ? e.trigger('close', {}) : e.trigger('select', { data: c, }); } }), c.on('results:previous', function () { var a = e.getHighlightedResults(), b = e.$results.find( '[aria-selected]' ), c = b.index(a); if (0 !== c) { var d = c - 1; 0 === a.length && (d = 0); var f = b.eq(d); f.trigger('mouseenter'); var g = e.$results.offset().top, h = f.offset().top, i = e.$results.scrollTop() + (h - g); 0 === d ? e.$results.scrollTop(0) : h - g < 0 && e.$results.scrollTop(i); } }), c.on('results:next', function () { var a = e.getHighlightedResults(), b = e.$results.find( '[aria-selected]' ), c = b.index(a), d = c + 1; if (!(d >= b.length)) { var f = b.eq(d); f.trigger('mouseenter'); var g = e.$results.offset().top + e.$results.outerHeight(!1), h = f.offset().top + f.outerHeight(!1), i = e.$results.scrollTop() + h - g; 0 === d ? e.$results.scrollTop(0) : h > g && e.$results.scrollTop(i); } }), c.on('results:focus', function (a) { a.element.addClass( 'select2-results__option--highlighted' ); }), c.on('results:message', function (a) { e.displayMessage(a); }), a.fn.mousewheel && this.$results.on( 'mousewheel', function (a) { var b = e.$results.scrollTop(), c = e.$results.get(0) .scrollHeight - b + a.deltaY, d = a.deltaY > 0 && b - a.deltaY <= 0, f = a.deltaY < 0 && c <= e.$results.height(); d ? (e.$results.scrollTop(0), a.preventDefault(), a.stopPropagation()) : f && (e.$results.scrollTop( e.$results.get(0) .scrollHeight - e.$results.height() ), a.preventDefault(), a.stopPropagation()); } ), this.$results.on( 'mouseup', '.select2-results__option[aria-selected]', function (c) { var d = a(this), f = b.GetData(this, 'data'); if ( 'true' === d.attr('aria-selected') ) return void (e.options.get( 'multiple' ) ? e.trigger('unselect', { originalEvent: c, data: f, }) : e.trigger('close', {})); e.trigger('select', { originalEvent: c, data: f, }); } ), this.$results.on( 'mouseenter', '.select2-results__option[aria-selected]', function (c) { var d = b.GetData(this, 'data'); e .getHighlightedResults() .removeClass( 'select2-results__option--highlighted' ), e.trigger('results:focus', { data: d, element: a(this), }); } ); }), (c.prototype.getHighlightedResults = function () { return this.$results.find( '.select2-results__option--highlighted' ); }), (c.prototype.destroy = function () { this.$results.remove(); }), (c.prototype.ensureHighlightVisible = function () { var a = this.getHighlightedResults(); if (0 !== a.length) { var b = this.$results.find( '[aria-selected]' ), c = b.index(a), d = this.$results.offset().top, e = a.offset().top, f = this.$results.scrollTop() + (e - d), g = e - d; (f -= 2 * a.outerHeight(!1)), c <= 2 ? this.$results.scrollTop(0) : (g > this.$results.outerHeight() || g < 0) && this.$results.scrollTop(f); } }), (c.prototype.template = function (b, c) { var d = this.options.get('templateResult'), e = this.options.get('escapeMarkup'), f = d(b, c); null == f ? (c.style.display = 'none') : 'string' == typeof f ? (c.innerHTML = e(f)) : a(c).append(f); }), c ); } ), b.define('select2/keys', [], function () { return { BACKSPACE: 8, TAB: 9, ENTER: 13, SHIFT: 16, CTRL: 17, ALT: 18, ESC: 27, SPACE: 32, PAGE_UP: 33, PAGE_DOWN: 34, END: 35, HOME: 36, LEFT: 37, UP: 38, RIGHT: 39, DOWN: 40, DELETE: 46, }; }), b.define( 'select2/selection/base', ['jquery', '../utils', '../keys'], function (a, b, c) { function d(a, b) { (this.$element = a), (this.options = b), d.__super__.constructor.call(this); } return ( b.Extend(d, b.Observable), (d.prototype.render = function () { var c = a( '' ); return ( (this._tabindex = 0), null != b.GetData(this.$element[0], 'old-tabindex') ? (this._tabindex = b.GetData( this.$element[0], 'old-tabindex' )) : null != this.$element.attr('tabindex') && (this._tabindex = this.$element.attr('tabindex')), c.attr( 'title', this.$element.attr('title') ), c.attr('tabindex', this._tabindex), (this.$selection = c), c ); }), (d.prototype.bind = function (a, b) { var d = this, e = (a.id, a.id + '-results'); (this.container = a), this.$selection.on('focus', function (a) { d.trigger('focus', a); }), this.$selection.on('blur', function (a) { d._handleBlur(a); }), this.$selection.on('keydown', function (a) { d.trigger('keypress', a), a.which === c.SPACE && a.preventDefault(); }), a.on('results:focus', function (a) { d.$selection.attr( 'aria-activedescendant', a.data._resultId ); }), a.on('selection:update', function (a) { d.update(a.data); }), a.on('open', function () { d.$selection.attr( 'aria-expanded', 'true' ), d.$selection.attr('aria-owns', e), d._attachCloseHandler(a); }), a.on('close', function () { d.$selection.attr( 'aria-expanded', 'false' ), d.$selection.removeAttr( 'aria-activedescendant' ), d.$selection.removeAttr( 'aria-owns' ), d.$selection.focus(), d._detachCloseHandler(a); }), a.on('enable', function () { d.$selection.attr( 'tabindex', d._tabindex ); }), a.on('disable', function () { d.$selection.attr('tabindex', '-1'); }); }), (d.prototype._handleBlur = function (b) { var c = this; window.setTimeout(function () { document.activeElement == c.$selection[0] || a.contains( c.$selection[0], document.activeElement ) || c.trigger('blur', b); }, 1); }), (d.prototype._attachCloseHandler = function (c) { a(document.body).on( 'mousedown.select2.' + c.id, function (c) { var d = a(c.target), e = d.closest('.select2'); a( '.select2.select2-container--open' ).each(function () { a(this), this != e[0] && b .GetData( this, 'element' ) .select2('close'); }); } ); }), (d.prototype._detachCloseHandler = function (b) { a(document.body).off( 'mousedown.select2.' + b.id ); }), (d.prototype.position = function (a, b) { b.find('.selection').append(a); }), (d.prototype.destroy = function () { this._detachCloseHandler(this.container); }), (d.prototype.update = function (a) { throw new Error( 'The `update` method must be defined in child classes.' ); }), d ); } ), b.define( 'select2/selection/single', ['jquery', './base', '../utils', '../keys'], function (a, b, c, d) { function e() { e.__super__.constructor.apply(this, arguments); } return ( c.Extend(e, b), (e.prototype.render = function () { var a = e.__super__.render.call(this); return ( a.addClass('select2-selection--single'), a.html( '' ), a ); }), (e.prototype.bind = function (a, b) { var c = this; e.__super__.bind.apply(this, arguments); var d = a.id + '-container'; this.$selection .find('.select2-selection__rendered') .attr('id', d) .attr('role', 'textbox') .attr('aria-readonly', 'true'), this.$selection.attr('aria-labelledby', d), this.$selection.on( 'mousedown', function (a) { 1 === a.which && c.trigger('toggle', { originalEvent: a, }); } ), this.$selection.on( 'focus', function (a) {} ), this.$selection.on('blur', function (a) {}), a.on('focus', function (b) { a.isOpen() || c.$selection.focus(); }); }), (e.prototype.clear = function () { var a = this.$selection.find( '.select2-selection__rendered' ); a.empty(), a.removeAttr('title'); }), (e.prototype.display = function (a, b) { var c = this.options.get('templateSelection'); return this.options.get('escapeMarkup')( c(a, b) ); }), (e.prototype.selectionContainer = function () { return a(''); }), (e.prototype.update = function (a) { if (0 === a.length) return void this.clear(); var b = a[0], c = this.$selection.find( '.select2-selection__rendered' ), d = this.display(b, c); c.empty().append(d), c.attr('title', b.title || b.text); }), e ); } ), b.define( 'select2/selection/multiple', ['jquery', './base', '../utils'], function (a, b, c) { function d(a, b) { d.__super__.constructor.apply(this, arguments); } return ( c.Extend(d, b), (d.prototype.render = function () { var a = d.__super__.render.call(this); return ( a.addClass('select2-selection--multiple'), a.html( '' ), a ); }), (d.prototype.bind = function (b, e) { var f = this; d.__super__.bind.apply(this, arguments), this.$selection.on('click', function (a) { f.trigger('toggle', { originalEvent: a, }); }), this.$selection.on( 'click', '.select2-selection__choice__remove', function (b) { if (!f.options.get('disabled')) { var d = a(this), e = d.parent(), g = c.GetData(e[0], 'data'); f.trigger('unselect', { originalEvent: b, data: g, }); } } ); }), (d.prototype.clear = function () { var a = this.$selection.find( '.select2-selection__rendered' ); a.empty(), a.removeAttr('title'); }), (d.prototype.display = function (a, b) { var c = this.options.get('templateSelection'); return this.options.get('escapeMarkup')( c(a, b) ); }), (d.prototype.selectionContainer = function () { return a( '
  • ×
  • ' ); }), (d.prototype.update = function (a) { if ((this.clear(), 0 !== a.length)) { for (var b = [], d = 0; d < a.length; d++) { var e = a[d], f = this.selectionContainer(), g = this.display(e, f); f.append(g), f.attr('title', e.title || e.text), c.StoreData(f[0], 'data', e), b.push(f); } var h = this.$selection.find( '.select2-selection__rendered' ); c.appendMany(h, b); } }), d ); } ), b.define( 'select2/selection/placeholder', ['../utils'], function (a) { function b(a, b, c) { (this.placeholder = this.normalizePlaceholder( c.get('placeholder') )), a.call(this, b, c); } return ( (b.prototype.normalizePlaceholder = function ( a, b ) { return ( 'string' == typeof b && (b = { id: '', text: b }), b ); }), (b.prototype.createPlaceholder = function (a, b) { var c = this.selectionContainer(); return ( c.html(this.display(b)), c .addClass( 'select2-selection__placeholder' ) .removeClass( 'select2-selection__choice' ), c ); }), (b.prototype.update = function (a, b) { var c = 1 == b.length && b[0].id != this.placeholder.id; if (b.length > 1 || c) return a.call(this, b); this.clear(); var d = this.createPlaceholder( this.placeholder ); this.$selection .find('.select2-selection__rendered') .append(d); }), b ); } ), b.define( 'select2/selection/allowClear', ['jquery', '../keys', '../utils'], function (a, b, c) { function d() {} return ( (d.prototype.bind = function (a, b, c) { var d = this; a.call(this, b, c), null == this.placeholder && this.options.get('debug') && window.console && console.error && console.error( 'Select2: The `allowClear` option should be used in combination with the `placeholder` option.' ), this.$selection.on( 'mousedown', '.select2-selection__clear', function (a) { d._handleClear(a); } ), b.on('keypress', function (a) { d._handleKeyboardClear(a, b); }); }), (d.prototype._handleClear = function (a, b) { if (!this.options.get('disabled')) { var d = this.$selection.find( '.select2-selection__clear' ); if (0 !== d.length) { b.stopPropagation(); var e = c.GetData(d[0], 'data'), f = this.$element.val(); this.$element.val(this.placeholder.id); var g = { data: e }; if ( (this.trigger('clear', g), g.prevented) ) return void this.$element.val(f); for (var h = 0; h < e.length; h++) if ( ((g = { data: e[h] }), this.trigger('unselect', g), g.prevented) ) return void this.$element.val( f ); this.$element.trigger('change'), this.trigger('toggle', {}); } } }), (d.prototype._handleKeyboardClear = function ( a, c, d ) { d.isOpen() || (c.which != b.DELETE && c.which != b.BACKSPACE) || this._handleClear(c); }), (d.prototype.update = function (b, d) { if ( (b.call(this, d), !( this.$selection.find( '.select2-selection__placeholder' ).length > 0 || 0 === d.length )) ) { var e = a( '×' ); c.StoreData(e[0], 'data', d), this.$selection .find( '.select2-selection__rendered' ) .prepend(e); } }), d ); } ), b.define( 'select2/selection/search', ['jquery', '../utils', '../keys'], function (a, b, c) { function d(a, b, c) { a.call(this, b, c); } return ( (d.prototype.render = function (b) { var c = a( '' ); (this.$searchContainer = c), (this.$search = c.find('input')); var d = b.call(this); return this._transferTabIndex(), d; }), (d.prototype.bind = function (a, d, e) { var f = this; a.call(this, d, e), d.on('open', function () { f.$search.trigger('focus'); }), d.on('close', function () { f.$search.val(''), f.$search.removeAttr( 'aria-activedescendant' ), f.$search.trigger('focus'); }), d.on('enable', function () { f.$search.prop('disabled', !1), f._transferTabIndex(); }), d.on('disable', function () { f.$search.prop('disabled', !0); }), d.on('focus', function (a) { f.$search.trigger('focus'); }), d.on('results:focus', function (a) { f.$search.attr( 'aria-activedescendant', a.id ); }), this.$selection.on( 'focusin', '.select2-search--inline', function (a) { f.trigger('focus', a); } ), this.$selection.on( 'focusout', '.select2-search--inline', function (a) { f._handleBlur(a); } ), this.$selection.on( 'keydown', '.select2-search--inline', function (a) { if ( (a.stopPropagation(), f.trigger('keypress', a), (f._keyUpPrevented = a.isDefaultPrevented()), a.which === c.BACKSPACE && '' === f.$search.val()) ) { var d = f.$searchContainer.prev( '.select2-selection__choice' ); if (d.length > 0) { var e = b.GetData( d[0], 'data' ); f.searchRemoveChoice(e), a.preventDefault(); } } } ); var g = document.documentMode, h = g && g <= 11; this.$selection.on( 'input.searchcheck', '.select2-search--inline', function (a) { if (h) return void f.$selection.off( 'input.search input.searchcheck' ); f.$selection.off('keyup.search'); } ), this.$selection.on( 'keyup.search input.search', '.select2-search--inline', function (a) { if (h && 'input' === a.type) return void f.$selection.off( 'input.search input.searchcheck' ); var b = a.which; b != c.SHIFT && b != c.CTRL && b != c.ALT && b != c.TAB && f.handleSearch(a); } ); }), (d.prototype._transferTabIndex = function (a) { this.$search.attr( 'tabindex', this.$selection.attr('tabindex') ), this.$selection.attr('tabindex', '-1'); }), (d.prototype.createPlaceholder = function (a, b) { this.$search.attr('placeholder', b.text); }), (d.prototype.update = function (a, b) { var c = this.$search[0] == document.activeElement; this.$search.attr('placeholder', ''), a.call(this, b), this.$selection .find('.select2-selection__rendered') .append(this.$searchContainer), this.resizeSearch(), c && this.$search.focus(); }), (d.prototype.handleSearch = function () { if ( (this.resizeSearch(), !this._keyUpPrevented) ) { var a = this.$search.val(); this.trigger('query', { term: a }); } this._keyUpPrevented = !1; }), (d.prototype.searchRemoveChoice = function (a, b) { this.trigger('unselect', { data: b }), this.$search.val(b.text), this.handleSearch(); }), (d.prototype.resizeSearch = function () { this.$search.css('width', '25px'); var a = ''; if ('' !== this.$search.attr('placeholder')) a = this.$selection .find('.select2-selection__rendered') .innerWidth(); else { a = 0.75 * (this.$search.val().length + 1) + 'em'; } this.$search.css('width', a); }), d ); } ), b.define( 'select2/selection/eventRelay', ['jquery'], function (a) { function b() {} return ( (b.prototype.bind = function (b, c, d) { var e = this, f = [ 'open', 'opening', 'close', 'closing', 'select', 'selecting', 'unselect', 'unselecting', 'clear', 'clearing', ], g = [ 'opening', 'closing', 'selecting', 'unselecting', 'clearing', ]; b.call(this, c, d), c.on('*', function (b, c) { if (-1 !== a.inArray(b, f)) { c = c || {}; var d = a.Event('select2:' + b, { params: c, }); e.$element.trigger(d), -1 !== a.inArray(b, g) && (c.prevented = d.isDefaultPrevented()); } }); }), b ); } ), b.define( 'select2/translation', ['jquery', 'require'], function (a, b) { function c(a) { this.dict = a || {}; } return ( (c.prototype.all = function () { return this.dict; }), (c.prototype.get = function (a) { return this.dict[a]; }), (c.prototype.extend = function (b) { this.dict = a.extend({}, b.all(), this.dict); }), (c._cache = {}), (c.loadPath = function (a) { if (!(a in c._cache)) { var d = b(a); c._cache[a] = d; } return new c(c._cache[a]); }), c ); } ), b.define('select2/diacritics', [], function () { return { 'Ⓐ': 'A', 'A': 'A', 'À': 'A', 'Á': 'A', 'Â': 'A', 'Ầ': 'A', 'Ấ': 'A', 'Ẫ': 'A', 'Ẩ': 'A', 'Ã': 'A', 'Ā': 'A', 'Ă': 'A', 'Ằ': 'A', 'Ắ': 'A', 'Ẵ': 'A', 'Ẳ': 'A', 'Ȧ': 'A', 'Ǡ': 'A', 'Ä': 'A', 'Ǟ': 'A', 'Ả': 'A', 'Å': 'A', 'Ǻ': 'A', 'Ǎ': 'A', 'Ȁ': 'A', 'Ȃ': 'A', 'Ạ': 'A', 'Ậ': 'A', 'Ặ': 'A', 'Ḁ': 'A', 'Ą': 'A', 'Ⱥ': 'A', 'Ɐ': 'A', 'Ꜳ': 'AA', 'Æ': 'AE', 'Ǽ': 'AE', 'Ǣ': 'AE', 'Ꜵ': 'AO', 'Ꜷ': 'AU', 'Ꜹ': 'AV', 'Ꜻ': 'AV', 'Ꜽ': 'AY', 'Ⓑ': 'B', 'B': 'B', 'Ḃ': 'B', 'Ḅ': 'B', 'Ḇ': 'B', 'Ƀ': 'B', 'Ƃ': 'B', 'Ɓ': 'B', 'Ⓒ': 'C', 'C': 'C', 'Ć': 'C', 'Ĉ': 'C', 'Ċ': 'C', 'Č': 'C', 'Ç': 'C', 'Ḉ': 'C', 'Ƈ': 'C', 'Ȼ': 'C', 'Ꜿ': 'C', 'Ⓓ': 'D', 'D': 'D', 'Ḋ': 'D', 'Ď': 'D', 'Ḍ': 'D', 'Ḑ': 'D', 'Ḓ': 'D', 'Ḏ': 'D', 'Đ': 'D', 'Ƌ': 'D', 'Ɗ': 'D', 'Ɖ': 'D', 'Ꝺ': 'D', 'DZ': 'DZ', 'DŽ': 'DZ', 'Dz': 'Dz', 'Dž': 'Dz', 'Ⓔ': 'E', 'E': 'E', 'È': 'E', 'É': 'E', 'Ê': 'E', 'Ề': 'E', 'Ế': 'E', 'Ễ': 'E', 'Ể': 'E', 'Ẽ': 'E', 'Ē': 'E', 'Ḕ': 'E', 'Ḗ': 'E', 'Ĕ': 'E', 'Ė': 'E', 'Ë': 'E', 'Ẻ': 'E', 'Ě': 'E', 'Ȅ': 'E', 'Ȇ': 'E', 'Ẹ': 'E', 'Ệ': 'E', 'Ȩ': 'E', 'Ḝ': 'E', 'Ę': 'E', 'Ḙ': 'E', 'Ḛ': 'E', 'Ɛ': 'E', 'Ǝ': 'E', 'Ⓕ': 'F', 'F': 'F', 'Ḟ': 'F', 'Ƒ': 'F', 'Ꝼ': 'F', 'Ⓖ': 'G', 'G': 'G', 'Ǵ': 'G', 'Ĝ': 'G', 'Ḡ': 'G', 'Ğ': 'G', 'Ġ': 'G', 'Ǧ': 'G', 'Ģ': 'G', 'Ǥ': 'G', 'Ɠ': 'G', 'Ꞡ': 'G', 'Ᵹ': 'G', 'Ꝿ': 'G', 'Ⓗ': 'H', 'H': 'H', 'Ĥ': 'H', 'Ḣ': 'H', 'Ḧ': 'H', 'Ȟ': 'H', 'Ḥ': 'H', 'Ḩ': 'H', 'Ḫ': 'H', 'Ħ': 'H', 'Ⱨ': 'H', 'Ⱶ': 'H', 'Ɥ': 'H', 'Ⓘ': 'I', 'I': 'I', 'Ì': 'I', 'Í': 'I', 'Î': 'I', 'Ĩ': 'I', 'Ī': 'I', 'Ĭ': 'I', 'İ': 'I', 'Ï': 'I', 'Ḯ': 'I', 'Ỉ': 'I', 'Ǐ': 'I', 'Ȉ': 'I', 'Ȋ': 'I', 'Ị': 'I', 'Į': 'I', 'Ḭ': 'I', 'Ɨ': 'I', 'Ⓙ': 'J', 'J': 'J', 'Ĵ': 'J', 'Ɉ': 'J', 'Ⓚ': 'K', 'K': 'K', 'Ḱ': 'K', 'Ǩ': 'K', 'Ḳ': 'K', 'Ķ': 'K', 'Ḵ': 'K', 'Ƙ': 'K', 'Ⱪ': 'K', 'Ꝁ': 'K', 'Ꝃ': 'K', 'Ꝅ': 'K', 'Ꞣ': 'K', 'Ⓛ': 'L', 'L': 'L', 'Ŀ': 'L', 'Ĺ': 'L', 'Ľ': 'L', 'Ḷ': 'L', 'Ḹ': 'L', 'Ļ': 'L', 'Ḽ': 'L', 'Ḻ': 'L', 'Ł': 'L', 'Ƚ': 'L', 'Ɫ': 'L', 'Ⱡ': 'L', 'Ꝉ': 'L', 'Ꝇ': 'L', 'Ꞁ': 'L', 'LJ': 'LJ', 'Lj': 'Lj', 'Ⓜ': 'M', 'M': 'M', 'Ḿ': 'M', 'Ṁ': 'M', 'Ṃ': 'M', 'Ɱ': 'M', 'Ɯ': 'M', 'Ⓝ': 'N', 'N': 'N', 'Ǹ': 'N', 'Ń': 'N', 'Ñ': 'N', 'Ṅ': 'N', 'Ň': 'N', 'Ṇ': 'N', 'Ņ': 'N', 'Ṋ': 'N', 'Ṉ': 'N', 'Ƞ': 'N', 'Ɲ': 'N', 'Ꞑ': 'N', 'Ꞥ': 'N', 'NJ': 'NJ', 'Nj': 'Nj', 'Ⓞ': 'O', 'O': 'O', 'Ò': 'O', 'Ó': 'O', 'Ô': 'O', 'Ồ': 'O', 'Ố': 'O', 'Ỗ': 'O', 'Ổ': 'O', 'Õ': 'O', 'Ṍ': 'O', 'Ȭ': 'O', 'Ṏ': 'O', 'Ō': 'O', 'Ṑ': 'O', 'Ṓ': 'O', 'Ŏ': 'O', 'Ȯ': 'O', 'Ȱ': 'O', 'Ö': 'O', 'Ȫ': 'O', 'Ỏ': 'O', 'Ő': 'O', 'Ǒ': 'O', 'Ȍ': 'O', 'Ȏ': 'O', 'Ơ': 'O', 'Ờ': 'O', 'Ớ': 'O', 'Ỡ': 'O', 'Ở': 'O', 'Ợ': 'O', 'Ọ': 'O', 'Ộ': 'O', 'Ǫ': 'O', 'Ǭ': 'O', 'Ø': 'O', 'Ǿ': 'O', 'Ɔ': 'O', 'Ɵ': 'O', 'Ꝋ': 'O', 'Ꝍ': 'O', 'Ƣ': 'OI', 'Ꝏ': 'OO', 'Ȣ': 'OU', 'Ⓟ': 'P', 'P': 'P', 'Ṕ': 'P', 'Ṗ': 'P', 'Ƥ': 'P', 'Ᵽ': 'P', 'Ꝑ': 'P', 'Ꝓ': 'P', 'Ꝕ': 'P', 'Ⓠ': 'Q', 'Q': 'Q', 'Ꝗ': 'Q', 'Ꝙ': 'Q', 'Ɋ': 'Q', 'Ⓡ': 'R', 'R': 'R', 'Ŕ': 'R', 'Ṙ': 'R', 'Ř': 'R', 'Ȑ': 'R', 'Ȓ': 'R', 'Ṛ': 'R', 'Ṝ': 'R', 'Ŗ': 'R', 'Ṟ': 'R', 'Ɍ': 'R', 'Ɽ': 'R', 'Ꝛ': 'R', 'Ꞧ': 'R', 'Ꞃ': 'R', 'Ⓢ': 'S', 'S': 'S', 'ẞ': 'S', 'Ś': 'S', 'Ṥ': 'S', 'Ŝ': 'S', 'Ṡ': 'S', 'Š': 'S', 'Ṧ': 'S', 'Ṣ': 'S', 'Ṩ': 'S', 'Ș': 'S', 'Ş': 'S', 'Ȿ': 'S', 'Ꞩ': 'S', 'Ꞅ': 'S', 'Ⓣ': 'T', 'T': 'T', 'Ṫ': 'T', 'Ť': 'T', 'Ṭ': 'T', 'Ț': 'T', 'Ţ': 'T', 'Ṱ': 'T', 'Ṯ': 'T', 'Ŧ': 'T', 'Ƭ': 'T', 'Ʈ': 'T', 'Ⱦ': 'T', 'Ꞇ': 'T', 'Ꜩ': 'TZ', 'Ⓤ': 'U', 'U': 'U', 'Ù': 'U', 'Ú': 'U', 'Û': 'U', 'Ũ': 'U', 'Ṹ': 'U', 'Ū': 'U', 'Ṻ': 'U', 'Ŭ': 'U', 'Ü': 'U', 'Ǜ': 'U', 'Ǘ': 'U', 'Ǖ': 'U', 'Ǚ': 'U', 'Ủ': 'U', 'Ů': 'U', 'Ű': 'U', 'Ǔ': 'U', 'Ȕ': 'U', 'Ȗ': 'U', 'Ư': 'U', 'Ừ': 'U', 'Ứ': 'U', 'Ữ': 'U', 'Ử': 'U', 'Ự': 'U', 'Ụ': 'U', 'Ṳ': 'U', 'Ų': 'U', 'Ṷ': 'U', 'Ṵ': 'U', 'Ʉ': 'U', 'Ⓥ': 'V', 'V': 'V', 'Ṽ': 'V', 'Ṿ': 'V', 'Ʋ': 'V', 'Ꝟ': 'V', 'Ʌ': 'V', 'Ꝡ': 'VY', 'Ⓦ': 'W', 'W': 'W', 'Ẁ': 'W', 'Ẃ': 'W', 'Ŵ': 'W', 'Ẇ': 'W', 'Ẅ': 'W', 'Ẉ': 'W', 'Ⱳ': 'W', 'Ⓧ': 'X', 'X': 'X', 'Ẋ': 'X', 'Ẍ': 'X', 'Ⓨ': 'Y', 'Y': 'Y', 'Ỳ': 'Y', 'Ý': 'Y', 'Ŷ': 'Y', 'Ỹ': 'Y', 'Ȳ': 'Y', 'Ẏ': 'Y', 'Ÿ': 'Y', 'Ỷ': 'Y', 'Ỵ': 'Y', 'Ƴ': 'Y', 'Ɏ': 'Y', 'Ỿ': 'Y', 'Ⓩ': 'Z', 'Z': 'Z', 'Ź': 'Z', 'Ẑ': 'Z', 'Ż': 'Z', 'Ž': 'Z', 'Ẓ': 'Z', 'Ẕ': 'Z', 'Ƶ': 'Z', 'Ȥ': 'Z', 'Ɀ': 'Z', 'Ⱬ': 'Z', 'Ꝣ': 'Z', 'ⓐ': 'a', 'a': 'a', 'ẚ': 'a', 'à': 'a', 'á': 'a', 'â': 'a', 'ầ': 'a', 'ấ': 'a', 'ẫ': 'a', 'ẩ': 'a', 'ã': 'a', 'ā': 'a', 'ă': 'a', 'ằ': 'a', 'ắ': 'a', 'ẵ': 'a', 'ẳ': 'a', 'ȧ': 'a', 'ǡ': 'a', 'ä': 'a', 'ǟ': 'a', 'ả': 'a', 'å': 'a', 'ǻ': 'a', 'ǎ': 'a', 'ȁ': 'a', 'ȃ': 'a', 'ạ': 'a', 'ậ': 'a', 'ặ': 'a', 'ḁ': 'a', 'ą': 'a', 'ⱥ': 'a', 'ɐ': 'a', 'ꜳ': 'aa', 'æ': 'ae', 'ǽ': 'ae', 'ǣ': 'ae', 'ꜵ': 'ao', 'ꜷ': 'au', 'ꜹ': 'av', 'ꜻ': 'av', 'ꜽ': 'ay', 'ⓑ': 'b', 'b': 'b', 'ḃ': 'b', 'ḅ': 'b', 'ḇ': 'b', 'ƀ': 'b', 'ƃ': 'b', 'ɓ': 'b', 'ⓒ': 'c', 'c': 'c', 'ć': 'c', 'ĉ': 'c', 'ċ': 'c', 'č': 'c', 'ç': 'c', 'ḉ': 'c', 'ƈ': 'c', 'ȼ': 'c', 'ꜿ': 'c', 'ↄ': 'c', 'ⓓ': 'd', 'd': 'd', 'ḋ': 'd', 'ď': 'd', 'ḍ': 'd', 'ḑ': 'd', 'ḓ': 'd', 'ḏ': 'd', 'đ': 'd', 'ƌ': 'd', 'ɖ': 'd', 'ɗ': 'd', 'ꝺ': 'd', 'dz': 'dz', 'dž': 'dz', 'ⓔ': 'e', 'e': 'e', 'è': 'e', 'é': 'e', 'ê': 'e', 'ề': 'e', 'ế': 'e', 'ễ': 'e', 'ể': 'e', 'ẽ': 'e', 'ē': 'e', 'ḕ': 'e', 'ḗ': 'e', 'ĕ': 'e', 'ė': 'e', 'ë': 'e', 'ẻ': 'e', 'ě': 'e', 'ȅ': 'e', 'ȇ': 'e', 'ẹ': 'e', 'ệ': 'e', 'ȩ': 'e', 'ḝ': 'e', 'ę': 'e', 'ḙ': 'e', 'ḛ': 'e', 'ɇ': 'e', 'ɛ': 'e', 'ǝ': 'e', 'ⓕ': 'f', 'f': 'f', 'ḟ': 'f', 'ƒ': 'f', 'ꝼ': 'f', 'ⓖ': 'g', 'g': 'g', 'ǵ': 'g', 'ĝ': 'g', 'ḡ': 'g', 'ğ': 'g', 'ġ': 'g', 'ǧ': 'g', 'ģ': 'g', 'ǥ': 'g', 'ɠ': 'g', 'ꞡ': 'g', 'ᵹ': 'g', 'ꝿ': 'g', 'ⓗ': 'h', 'h': 'h', 'ĥ': 'h', 'ḣ': 'h', 'ḧ': 'h', 'ȟ': 'h', 'ḥ': 'h', 'ḩ': 'h', 'ḫ': 'h', 'ẖ': 'h', 'ħ': 'h', 'ⱨ': 'h', 'ⱶ': 'h', 'ɥ': 'h', 'ƕ': 'hv', 'ⓘ': 'i', 'i': 'i', 'ì': 'i', 'í': 'i', 'î': 'i', 'ĩ': 'i', 'ī': 'i', 'ĭ': 'i', 'ï': 'i', 'ḯ': 'i', 'ỉ': 'i', 'ǐ': 'i', 'ȉ': 'i', 'ȋ': 'i', 'ị': 'i', 'į': 'i', 'ḭ': 'i', 'ɨ': 'i', 'ı': 'i', 'ⓙ': 'j', 'j': 'j', 'ĵ': 'j', 'ǰ': 'j', 'ɉ': 'j', 'ⓚ': 'k', 'k': 'k', 'ḱ': 'k', 'ǩ': 'k', 'ḳ': 'k', 'ķ': 'k', 'ḵ': 'k', 'ƙ': 'k', 'ⱪ': 'k', 'ꝁ': 'k', 'ꝃ': 'k', 'ꝅ': 'k', 'ꞣ': 'k', 'ⓛ': 'l', 'l': 'l', 'ŀ': 'l', 'ĺ': 'l', 'ľ': 'l', 'ḷ': 'l', 'ḹ': 'l', 'ļ': 'l', 'ḽ': 'l', 'ḻ': 'l', 'ſ': 'l', 'ł': 'l', 'ƚ': 'l', 'ɫ': 'l', 'ⱡ': 'l', 'ꝉ': 'l', 'ꞁ': 'l', 'ꝇ': 'l', 'lj': 'lj', 'ⓜ': 'm', 'm': 'm', 'ḿ': 'm', 'ṁ': 'm', 'ṃ': 'm', 'ɱ': 'm', 'ɯ': 'm', 'ⓝ': 'n', 'n': 'n', 'ǹ': 'n', 'ń': 'n', 'ñ': 'n', 'ṅ': 'n', 'ň': 'n', 'ṇ': 'n', 'ņ': 'n', 'ṋ': 'n', 'ṉ': 'n', 'ƞ': 'n', 'ɲ': 'n', 'ʼn': 'n', 'ꞑ': 'n', 'ꞥ': 'n', 'nj': 'nj', 'ⓞ': 'o', 'o': 'o', 'ò': 'o', 'ó': 'o', 'ô': 'o', 'ồ': 'o', 'ố': 'o', 'ỗ': 'o', 'ổ': 'o', 'õ': 'o', 'ṍ': 'o', 'ȭ': 'o', 'ṏ': 'o', 'ō': 'o', 'ṑ': 'o', 'ṓ': 'o', 'ŏ': 'o', 'ȯ': 'o', 'ȱ': 'o', 'ö': 'o', 'ȫ': 'o', 'ỏ': 'o', 'ő': 'o', 'ǒ': 'o', 'ȍ': 'o', 'ȏ': 'o', 'ơ': 'o', 'ờ': 'o', 'ớ': 'o', 'ỡ': 'o', 'ở': 'o', 'ợ': 'o', 'ọ': 'o', 'ộ': 'o', 'ǫ': 'o', 'ǭ': 'o', 'ø': 'o', 'ǿ': 'o', 'ɔ': 'o', 'ꝋ': 'o', 'ꝍ': 'o', 'ɵ': 'o', 'ƣ': 'oi', 'ȣ': 'ou', 'ꝏ': 'oo', 'ⓟ': 'p', 'p': 'p', 'ṕ': 'p', 'ṗ': 'p', 'ƥ': 'p', 'ᵽ': 'p', 'ꝑ': 'p', 'ꝓ': 'p', 'ꝕ': 'p', 'ⓠ': 'q', 'q': 'q', 'ɋ': 'q', 'ꝗ': 'q', 'ꝙ': 'q', 'ⓡ': 'r', 'r': 'r', 'ŕ': 'r', 'ṙ': 'r', 'ř': 'r', 'ȑ': 'r', 'ȓ': 'r', 'ṛ': 'r', 'ṝ': 'r', 'ŗ': 'r', 'ṟ': 'r', 'ɍ': 'r', 'ɽ': 'r', 'ꝛ': 'r', 'ꞧ': 'r', 'ꞃ': 'r', 'ⓢ': 's', 's': 's', 'ß': 's', 'ś': 's', 'ṥ': 's', 'ŝ': 's', 'ṡ': 's', 'š': 's', 'ṧ': 's', 'ṣ': 's', 'ṩ': 's', 'ș': 's', 'ş': 's', 'ȿ': 's', 'ꞩ': 's', 'ꞅ': 's', 'ẛ': 's', 'ⓣ': 't', 't': 't', 'ṫ': 't', 'ẗ': 't', 'ť': 't', 'ṭ': 't', 'ț': 't', 'ţ': 't', 'ṱ': 't', 'ṯ': 't', 'ŧ': 't', 'ƭ': 't', 'ʈ': 't', 'ⱦ': 't', 'ꞇ': 't', 'ꜩ': 'tz', 'ⓤ': 'u', 'u': 'u', 'ù': 'u', 'ú': 'u', 'û': 'u', 'ũ': 'u', 'ṹ': 'u', 'ū': 'u', 'ṻ': 'u', 'ŭ': 'u', 'ü': 'u', 'ǜ': 'u', 'ǘ': 'u', 'ǖ': 'u', 'ǚ': 'u', 'ủ': 'u', 'ů': 'u', 'ű': 'u', 'ǔ': 'u', 'ȕ': 'u', 'ȗ': 'u', 'ư': 'u', 'ừ': 'u', 'ứ': 'u', 'ữ': 'u', 'ử': 'u', 'ự': 'u', 'ụ': 'u', 'ṳ': 'u', 'ų': 'u', 'ṷ': 'u', 'ṵ': 'u', 'ʉ': 'u', 'ⓥ': 'v', 'v': 'v', 'ṽ': 'v', 'ṿ': 'v', 'ʋ': 'v', 'ꝟ': 'v', 'ʌ': 'v', 'ꝡ': 'vy', 'ⓦ': 'w', 'w': 'w', 'ẁ': 'w', 'ẃ': 'w', 'ŵ': 'w', 'ẇ': 'w', 'ẅ': 'w', 'ẘ': 'w', 'ẉ': 'w', 'ⱳ': 'w', 'ⓧ': 'x', 'x': 'x', 'ẋ': 'x', 'ẍ': 'x', 'ⓨ': 'y', 'y': 'y', 'ỳ': 'y', 'ý': 'y', 'ŷ': 'y', 'ỹ': 'y', 'ȳ': 'y', 'ẏ': 'y', 'ÿ': 'y', 'ỷ': 'y', 'ẙ': 'y', 'ỵ': 'y', 'ƴ': 'y', 'ɏ': 'y', 'ỿ': 'y', 'ⓩ': 'z', 'z': 'z', 'ź': 'z', 'ẑ': 'z', 'ż': 'z', 'ž': 'z', 'ẓ': 'z', 'ẕ': 'z', 'ƶ': 'z', 'ȥ': 'z', 'ɀ': 'z', 'ⱬ': 'z', 'ꝣ': 'z', 'Ά': 'Α', 'Έ': 'Ε', 'Ή': 'Η', 'Ί': 'Ι', 'Ϊ': 'Ι', 'Ό': 'Ο', 'Ύ': 'Υ', 'Ϋ': 'Υ', 'Ώ': 'Ω', 'ά': 'α', 'έ': 'ε', 'ή': 'η', 'ί': 'ι', 'ϊ': 'ι', 'ΐ': 'ι', 'ό': 'ο', 'ύ': 'υ', 'ϋ': 'υ', 'ΰ': 'υ', 'ω': 'ω', 'ς': 'σ', }; }), b.define('select2/data/base', ['../utils'], function (a) { function b(a, c) { b.__super__.constructor.call(this); } return ( a.Extend(b, a.Observable), (b.prototype.current = function (a) { throw new Error( 'The `current` method must be defined in child classes.' ); }), (b.prototype.query = function (a, b) { throw new Error( 'The `query` method must be defined in child classes.' ); }), (b.prototype.bind = function (a, b) {}), (b.prototype.destroy = function () {}), (b.prototype.generateResultId = function (b, c) { var d = b.id + '-result-'; return ( (d += a.generateChars(4)), null != c.id ? (d += '-' + c.id.toString()) : (d += '-' + a.generateChars(4)), d ); }), b ); }), b.define( 'select2/data/select', ['./base', '../utils', 'jquery'], function (a, b, c) { function d(a, b) { (this.$element = a), (this.options = b), d.__super__.constructor.call(this); } return ( b.Extend(d, a), (d.prototype.current = function (a) { var b = [], d = this; this.$element .find(':selected') .each(function () { var a = c(this), e = d.item(a); b.push(e); }), a(b); }), (d.prototype.select = function (a) { var b = this; if ( ((a.selected = !0), c(a.element).is('option')) ) return ( (a.element.selected = !0), void this.$element.trigger('change') ); if (this.$element.prop('multiple')) this.current(function (d) { var e = []; (a = [a]), a.push.apply(a, d); for (var f = 0; f < a.length; f++) { var g = a[f].id; -1 === c.inArray(g, e) && e.push(g); } b.$element.val(e), b.$element.trigger('change'); }); else { var d = a.id; this.$element.val(d), this.$element.trigger('change'); } }), (d.prototype.unselect = function (a) { var b = this; if (this.$element.prop('multiple')) { if ( ((a.selected = !1), c(a.element).is('option')) ) return ( (a.element.selected = !1), void this.$element.trigger('change') ); this.current(function (d) { for ( var e = [], f = 0; f < d.length; f++ ) { var g = d[f].id; g !== a.id && -1 === c.inArray(g, e) && e.push(g); } b.$element.val(e), b.$element.trigger('change'); }); } }), (d.prototype.bind = function (a, b) { var c = this; (this.container = a), a.on('select', function (a) { c.select(a.data); }), a.on('unselect', function (a) { c.unselect(a.data); }); }), (d.prototype.destroy = function () { this.$element.find('*').each(function () { b.RemoveData(this); }); }), (d.prototype.query = function (a, b) { var d = [], e = this; this.$element.children().each(function () { var b = c(this); if (b.is('option') || b.is('optgroup')) { var f = e.item(b), g = e.matches(a, f); null !== g && d.push(g); } }), b({ results: d }); }), (d.prototype.addOptions = function (a) { b.appendMany(this.$element, a); }), (d.prototype.option = function (a) { var d; a.children ? ((d = document.createElement('optgroup')), (d.label = a.text)) : ((d = document.createElement('option')), void 0 !== d.textContent ? (d.textContent = a.text) : (d.innerText = a.text)), void 0 !== a.id && (d.value = a.id), a.disabled && (d.disabled = !0), a.selected && (d.selected = !0), a.title && (d.title = a.title); var e = c(d), f = this._normalizeItem(a); return ( (f.element = d), b.StoreData(d, 'data', f), e ); }), (d.prototype.item = function (a) { var d = {}; if (null != (d = b.GetData(a[0], 'data'))) return d; if (a.is('option')) d = { id: a.val(), text: a.text(), disabled: a.prop('disabled'), selected: a.prop('selected'), title: a.prop('title'), }; else if (a.is('optgroup')) { d = { text: a.prop('label'), children: [], title: a.prop('title'), }; for ( var e = a.children('option'), f = [], g = 0; g < e.length; g++ ) { var h = c(e[g]), i = this.item(h); f.push(i); } d.children = f; } return ( (d = this._normalizeItem(d)), (d.element = a[0]), b.StoreData(a[0], 'data', d), d ); }), (d.prototype._normalizeItem = function (a) { a !== Object(a) && (a = { id: a, text: a }), (a = c.extend({}, { text: '' }, a)); var b = { selected: !1, disabled: !1 }; return ( null != a.id && (a.id = a.id.toString()), null != a.text && (a.text = a.text.toString()), null == a._resultId && a.id && null != this.container && (a._resultId = this.generateResultId( this.container, a )), c.extend({}, b, a) ); }), (d.prototype.matches = function (a, b) { return this.options.get('matcher')(a, b); }), d ); } ), b.define( 'select2/data/array', ['./select', '../utils', 'jquery'], function (a, b, c) { function d(a, b) { var c = b.get('data') || []; d.__super__.constructor.call(this, a, b), this.addOptions(this.convertToOptions(c)); } return ( b.Extend(d, a), (d.prototype.select = function (a) { var b = this.$element .find('option') .filter(function (b, c) { return c.value == a.id.toString(); }); 0 === b.length && ((b = this.option(a)), this.addOptions(b)), d.__super__.select.call(this, a); }), (d.prototype.convertToOptions = function (a) { function d(a) { return function () { return c(this).val() == a.id; }; } for ( var e = this, f = this.$element.find('option'), g = f .map(function () { return e.item(c(this)).id; }) .get(), h = [], i = 0; i < a.length; i++ ) { var j = this._normalizeItem(a[i]); if (c.inArray(j.id, g) >= 0) { var k = f.filter(d(j)), l = this.item(k), m = c.extend(!0, {}, j, l), n = this.option(m); k.replaceWith(n); } else { var o = this.option(j); if (j.children) { var p = this.convertToOptions( j.children ); b.appendMany(o, p); } h.push(o); } } return h; }), d ); } ), b.define( 'select2/data/ajax', ['./array', '../utils', 'jquery'], function (a, b, c) { function d(a, b) { (this.ajaxOptions = this._applyDefaults( b.get('ajax') )), null != this.ajaxOptions.processResults && (this.processResults = this.ajaxOptions.processResults), d.__super__.constructor.call(this, a, b); } return ( b.Extend(d, a), (d.prototype._applyDefaults = function (a) { var b = { data: function (a) { return c.extend({}, a, { q: a.term }); }, transport: function (a, b, d) { var e = c.ajax(a); return e.then(b), e.fail(d), e; }, }; return c.extend({}, b, a, !0); }), (d.prototype.processResults = function (a) { return a; }), (d.prototype.query = function (a, b) { function d() { var d = f.transport( f, function (d) { var f = e.processResults(d, a); e.options.get('debug') && window.console && console.error && ((f && f.results && c.isArray(f.results)) || console.error( 'Select2: The AJAX results did not return an array in the `results` key of the response.' )), b(f); }, function () { ('status' in d && (0 === d.status || '0' === d.status)) || e.trigger('results:message', { message: 'errorLoading', }); } ); e._request = d; } var e = this; null != this._request && (c.isFunction(this._request.abort) && this._request.abort(), (this._request = null)); var f = c.extend( { type: 'GET' }, this.ajaxOptions ); 'function' == typeof f.url && (f.url = f.url.call(this.$element, a)), 'function' == typeof f.data && (f.data = f.data.call( this.$element, a )), this.ajaxOptions.delay && null != a.term ? (this._queryTimeout && window.clearTimeout( this._queryTimeout ), (this._queryTimeout = window.setTimeout( d, this.ajaxOptions.delay ))) : d(); }), d ); } ), b.define('select2/data/tags', ['jquery'], function (a) { function b(b, c, d) { var e = d.get('tags'), f = d.get('createTag'); void 0 !== f && (this.createTag = f); var g = d.get('insertTag'); if ( (void 0 !== g && (this.insertTag = g), b.call(this, c, d), a.isArray(e)) ) for (var h = 0; h < e.length; h++) { var i = e[h], j = this._normalizeItem(i), k = this.option(j); this.$element.append(k); } } return ( (b.prototype.query = function (a, b, c) { function d(a, f) { for ( var g = a.results, h = 0; h < g.length; h++ ) { var i = g[h], j = null != i.children && !d({ results: i.children }, !0); if ( (i.text || '').toUpperCase() === (b.term || '').toUpperCase() || j ) return !f && ((a.data = g), void c(a)); } if (f) return !0; var k = e.createTag(b); if (null != k) { var l = e.option(k); l.attr('data-select2-tag', !0), e.addOptions([l]), e.insertTag(g, k); } (a.results = g), c(a); } var e = this; if ( (this._removeOldTags(), null == b.term || null != b.page) ) return void a.call(this, b, c); a.call(this, b, d); }), (b.prototype.createTag = function (b, c) { var d = a.trim(c.term); return '' === d ? null : { id: d, text: d }; }), (b.prototype.insertTag = function (a, b, c) { b.unshift(c); }), (b.prototype._removeOldTags = function (b) { this._lastTag; this.$element .find('option[data-select2-tag]') .each(function () { this.selected || a(this).remove(); }); }), b ); }), b.define('select2/data/tokenizer', ['jquery'], function (a) { function b(a, b, c) { var d = c.get('tokenizer'); void 0 !== d && (this.tokenizer = d), a.call(this, b, c); } return ( (b.prototype.bind = function (a, b, c) { a.call(this, b, c), (this.$search = b.dropdown.$search || b.selection.$search || c.find('.select2-search__field')); }), (b.prototype.query = function (b, c, d) { function e(b) { var c = g._normalizeItem(b); if ( !g.$element .find('option') .filter(function () { return a(this).val() === c.id; }).length ) { var d = g.option(c); d.attr('data-select2-tag', !0), g._removeOldTags(), g.addOptions([d]); } f(c); } function f(a) { g.trigger('select', { data: a }); } var g = this; c.term = c.term || ''; var h = this.tokenizer(c, this.options, e); h.term !== c.term && (this.$search.length && (this.$search.val(h.term), this.$search.focus()), (c.term = h.term)), b.call(this, c, d); }), (b.prototype.tokenizer = function (b, c, d, e) { for ( var f = d.get('tokenSeparators') || [], g = c.term, h = 0, i = this.createTag || function (a) { return { id: a.term, text: a.term }; }; h < g.length; ) { var j = g[h]; if (-1 !== a.inArray(j, f)) { var k = g.substr(0, h), l = a.extend({}, c, { term: k }), m = i(l); null != m ? (e(m), (g = g.substr(h + 1) || ''), (h = 0)) : h++; } else h++; } return { term: g }; }), b ); }), b.define('select2/data/minimumInputLength', [], function () { function a(a, b, c) { (this.minimumInputLength = c.get('minimumInputLength')), a.call(this, b, c); } return ( (a.prototype.query = function (a, b, c) { if ( ((b.term = b.term || ''), b.term.length < this.minimumInputLength) ) return void this.trigger('results:message', { message: 'inputTooShort', args: { minimum: this.minimumInputLength, input: b.term, params: b, }, }); a.call(this, b, c); }), a ); }), b.define('select2/data/maximumInputLength', [], function () { function a(a, b, c) { (this.maximumInputLength = c.get('maximumInputLength')), a.call(this, b, c); } return ( (a.prototype.query = function (a, b, c) { if ( ((b.term = b.term || ''), this.maximumInputLength > 0 && b.term.length > this.maximumInputLength) ) return void this.trigger('results:message', { message: 'inputTooLong', args: { maximum: this.maximumInputLength, input: b.term, params: b, }, }); a.call(this, b, c); }), a ); }), b.define( 'select2/data/maximumSelectionLength', [], function () { function a(a, b, c) { (this.maximumSelectionLength = c.get( 'maximumSelectionLength' )), a.call(this, b, c); } return ( (a.prototype.query = function (a, b, c) { var d = this; this.current(function (e) { var f = null != e ? e.length : 0; if ( d.maximumSelectionLength > 0 && f >= d.maximumSelectionLength ) return void d.trigger( 'results:message', { message: 'maximumSelected', args: { maximum: d.maximumSelectionLength, }, } ); a.call(d, b, c); }); }), a ); } ), b.define( 'select2/dropdown', ['jquery', './utils'], function (a, b) { function c(a, b) { (this.$element = a), (this.options = b), c.__super__.constructor.call(this); } return ( b.Extend(c, b.Observable), (c.prototype.render = function () { var b = a( '' ); return ( b.attr('dir', this.options.get('dir')), (this.$dropdown = b), b ); }), (c.prototype.bind = function () {}), (c.prototype.position = function (a, b) {}), (c.prototype.destroy = function () { this.$dropdown.remove(); }), c ); } ), b.define( 'select2/dropdown/search', ['jquery', '../utils'], function (a, b) { function c() {} return ( (c.prototype.render = function (b) { var c = b.call(this), d = a( '' ); return ( (this.$searchContainer = d), (this.$search = d.find('input')), c.prepend(d), c ); }), (c.prototype.bind = function (b, c, d) { var e = this; b.call(this, c, d), this.$search.on('keydown', function (a) { e.trigger('keypress', a), (e._keyUpPrevented = a.isDefaultPrevented()); }), this.$search.on('input', function (b) { a(this).off('keyup'); }), this.$search.on( 'keyup input', function (a) { e.handleSearch(a); } ), c.on('open', function () { e.$search.attr('tabindex', 0), e.$search.focus(), window.setTimeout(function () { e.$search.focus(); }, 0); }), c.on('close', function () { e.$search.attr('tabindex', -1), e.$search.val(''), e.$search.blur(); }), c.on('focus', function () { c.isOpen() || e.$search.focus(); }), c.on('results:all', function (a) { if ( null == a.query.term || '' === a.query.term ) { e.showSearch(a) ? e.$searchContainer.removeClass( 'select2-search--hide' ) : e.$searchContainer.addClass( 'select2-search--hide' ); } }); }), (c.prototype.handleSearch = function (a) { if (!this._keyUpPrevented) { var b = this.$search.val(); this.trigger('query', { term: b }); } this._keyUpPrevented = !1; }), (c.prototype.showSearch = function (a, b) { return !0; }), c ); } ), b.define('select2/dropdown/hidePlaceholder', [], function () { function a(a, b, c, d) { (this.placeholder = this.normalizePlaceholder( c.get('placeholder') )), a.call(this, b, c, d); } return ( (a.prototype.append = function (a, b) { (b.results = this.removePlaceholder(b.results)), a.call(this, b); }), (a.prototype.normalizePlaceholder = function (a, b) { return ( 'string' == typeof b && (b = { id: '', text: b }), b ); }), (a.prototype.removePlaceholder = function (a, b) { for ( var c = b.slice(0), d = b.length - 1; d >= 0; d-- ) { var e = b[d]; this.placeholder.id === e.id && c.splice(d, 1); } return c; }), a ); }), b.define( 'select2/dropdown/infiniteScroll', ['jquery'], function (a) { function b(a, b, c, d) { (this.lastParams = {}), a.call(this, b, c, d), (this.$loadingMore = this.createLoadingMore()), (this.loading = !1); } return ( (b.prototype.append = function (a, b) { this.$loadingMore.remove(), (this.loading = !1), a.call(this, b), this.showLoadingMore(b) && this.$results.append(this.$loadingMore); }), (b.prototype.bind = function (b, c, d) { var e = this; b.call(this, c, d), c.on('query', function (a) { (e.lastParams = a), (e.loading = !0); }), c.on('query:append', function (a) { (e.lastParams = a), (e.loading = !0); }), this.$results.on('scroll', function () { var b = a.contains( document.documentElement, e.$loadingMore[0] ); if (!e.loading && b) { e.$results.offset().top + e.$results.outerHeight(!1) + 50 >= e.$loadingMore.offset().top + e.$loadingMore.outerHeight( !1 ) && e.loadMore(); } }); }), (b.prototype.loadMore = function () { this.loading = !0; var b = a.extend( {}, { page: 1 }, this.lastParams ); b.page++, this.trigger('query:append', b); }), (b.prototype.showLoadingMore = function (a, b) { return b.pagination && b.pagination.more; }), (b.prototype.createLoadingMore = function () { var b = a( '
  • ' ), c = this.options .get('translations') .get('loadingMore'); return b.html(c(this.lastParams)), b; }), b ); } ), b.define( 'select2/dropdown/attachBody', ['jquery', '../utils'], function (a, b) { function c(b, c, d) { (this.$dropdownParent = d.get('dropdownParent') || a(document.body)), b.call(this, c, d); } return ( (c.prototype.bind = function (a, b, c) { var d = this, e = !1; a.call(this, b, c), b.on('open', function () { d._showDropdown(), d._attachPositioningHandler(b), e || ((e = !0), b.on( 'results:all', function () { d._positionDropdown(), d._resizeDropdown(); } ), b.on( 'results:append', function () { d._positionDropdown(), d._resizeDropdown(); } )); }), b.on('close', function () { d._hideDropdown(), d._detachPositioningHandler(b); }), this.$dropdownContainer.on( 'mousedown', function (a) { a.stopPropagation(); } ); }), (c.prototype.destroy = function (a) { a.call(this), this.$dropdownContainer.remove(); }), (c.prototype.position = function (a, b, c) { b.attr('class', c.attr('class')), b.removeClass('select2'), b.addClass('select2-container--open'), b.css({ position: 'absolute', top: -999999, }), (this.$container = c); }), (c.prototype.render = function (b) { var c = a(''), d = b.call(this); return ( c.append(d), (this.$dropdownContainer = c), c ); }), (c.prototype._hideDropdown = function (a) { this.$dropdownContainer.detach(); }), (c.prototype._attachPositioningHandler = function ( c, d ) { var e = this, f = 'scroll.select2.' + d.id, g = 'resize.select2.' + d.id, h = 'orientationchange.select2.' + d.id, i = this.$container .parents() .filter(b.hasScroll); i.each(function () { b.StoreData( this, 'select2-scroll-position', { x: a(this).scrollLeft(), y: a(this).scrollTop(), } ); }), i.on(f, function (c) { var d = b.GetData( this, 'select2-scroll-position' ); a(this).scrollTop(d.y); }), a(window).on( f + ' ' + g + ' ' + h, function (a) { e._positionDropdown(), e._resizeDropdown(); } ); }), (c.prototype._detachPositioningHandler = function ( c, d ) { var e = 'scroll.select2.' + d.id, f = 'resize.select2.' + d.id, g = 'orientationchange.select2.' + d.id; this.$container .parents() .filter(b.hasScroll) .off(e), a(window).off(e + ' ' + f + ' ' + g); }), (c.prototype._positionDropdown = function () { var b = a(window), c = this.$dropdown.hasClass( 'select2-dropdown--above' ), d = this.$dropdown.hasClass( 'select2-dropdown--below' ), e = null, f = this.$container.offset(); f.bottom = f.top + this.$container.outerHeight(!1); var g = { height: this.$container.outerHeight(!1), }; (g.top = f.top), (g.bottom = f.top + g.height); var h = { height: this.$dropdown.outerHeight(!1), }, i = { top: b.scrollTop(), bottom: b.scrollTop() + b.height(), }, j = i.top < f.top - h.height, k = i.bottom > f.bottom + h.height, l = { left: f.left, top: g.bottom }, m = this.$dropdownParent; 'static' === m.css('position') && (m = m.offsetParent()); var n = m.offset(); (l.top -= n.top), (l.left -= n.left), c || d || (e = 'below'), k || !j || c ? !j && k && c && (e = 'below') : (e = 'above'), ('above' == e || (c && 'below' !== e)) && (l.top = g.top - n.top - h.height), null != e && (this.$dropdown .removeClass( 'select2-dropdown--below select2-dropdown--above' ) .addClass('select2-dropdown--' + e), this.$container .removeClass( 'select2-container--below select2-container--above' ) .addClass( 'select2-container--' + e )), this.$dropdownContainer.css(l); }), (c.prototype._resizeDropdown = function () { var a = { width: this.$container.outerWidth(!1) + 'px', }; this.options.get('dropdownAutoWidth') && ((a.minWidth = a.width), (a.position = 'relative'), (a.width = 'auto')), this.$dropdown.css(a); }), (c.prototype._showDropdown = function (a) { this.$dropdownContainer.appendTo( this.$dropdownParent ), this._positionDropdown(), this._resizeDropdown(); }), c ); } ), b.define( 'select2/dropdown/minimumResultsForSearch', [], function () { function a(b) { for (var c = 0, d = 0; d < b.length; d++) { var e = b[d]; e.children ? (c += a(e.children)) : c++; } return c; } function b(a, b, c, d) { (this.minimumResultsForSearch = c.get( 'minimumResultsForSearch' )), this.minimumResultsForSearch < 0 && (this.minimumResultsForSearch = 1 / 0), a.call(this, b, c, d); } return ( (b.prototype.showSearch = function (b, c) { return ( !( a(c.data.results) < this.minimumResultsForSearch ) && b.call(this, c) ); }), b ); } ), b.define( 'select2/dropdown/selectOnClose', ['../utils'], function (a) { function b() {} return ( (b.prototype.bind = function (a, b, c) { var d = this; a.call(this, b, c), b.on('close', function (a) { d._handleSelectOnClose(a); }); }), (b.prototype._handleSelectOnClose = function ( b, c ) { if (c && null != c.originalSelect2Event) { var d = c.originalSelect2Event; if ( 'select' === d._type || 'unselect' === d._type ) return; } var e = this.getHighlightedResults(); if (!(e.length < 1)) { var f = a.GetData(e[0], 'data'); (null != f.element && f.element.selected) || (null == f.element && f.selected) || this.trigger('select', { data: f }); } }), b ); } ), b.define('select2/dropdown/closeOnSelect', [], function () { function a() {} return ( (a.prototype.bind = function (a, b, c) { var d = this; a.call(this, b, c), b.on('select', function (a) { d._selectTriggered(a); }), b.on('unselect', function (a) { d._selectTriggered(a); }); }), (a.prototype._selectTriggered = function (a, b) { var c = b.originalEvent; (c && c.ctrlKey) || this.trigger('close', { originalEvent: c, originalSelect2Event: b, }); }), a ); }), b.define('select2/i18n/en', [], function () { return { errorLoading: function () { return 'The results could not be loaded.'; }, inputTooLong: function (a) { var b = a.input.length - a.maximum, c = 'Please delete ' + b + ' character'; return 1 != b && (c += 's'), c; }, inputTooShort: function (a) { return ( 'Please enter ' + (a.minimum - a.input.length) + ' or more characters' ); }, loadingMore: function () { return 'Loading more results…'; }, maximumSelected: function (a) { var b = 'You can only select ' + a.maximum + ' item'; return 1 != a.maximum && (b += 's'), b; }, noResults: function () { return 'No results found'; }, searching: function () { return 'Searching…'; }, }; }), b.define( 'select2/defaults', [ 'jquery', 'require', './results', './selection/single', './selection/multiple', './selection/placeholder', './selection/allowClear', './selection/search', './selection/eventRelay', './utils', './translation', './diacritics', './data/select', './data/array', './data/ajax', './data/tags', './data/tokenizer', './data/minimumInputLength', './data/maximumInputLength', './data/maximumSelectionLength', './dropdown', './dropdown/search', './dropdown/hidePlaceholder', './dropdown/infiniteScroll', './dropdown/attachBody', './dropdown/minimumResultsForSearch', './dropdown/selectOnClose', './dropdown/closeOnSelect', './i18n/en', ], function ( a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C ) { function D() { this.reset(); } return ( (D.prototype.apply = function (l) { if ( ((l = a.extend(!0, {}, this.defaults, l)), null == l.dataAdapter) ) { if ( (null != l.ajax ? (l.dataAdapter = o) : null != l.data ? (l.dataAdapter = n) : (l.dataAdapter = m), l.minimumInputLength > 0 && (l.dataAdapter = j.Decorate( l.dataAdapter, r )), l.maximumInputLength > 0 && (l.dataAdapter = j.Decorate( l.dataAdapter, s )), l.maximumSelectionLength > 0 && (l.dataAdapter = j.Decorate( l.dataAdapter, t )), l.tags && (l.dataAdapter = j.Decorate( l.dataAdapter, p )), (null == l.tokenSeparators && null == l.tokenizer) || (l.dataAdapter = j.Decorate( l.dataAdapter, q )), null != l.query) ) { var C = b(l.amdBase + 'compat/query'); l.dataAdapter = j.Decorate( l.dataAdapter, C ); } if (null != l.initSelection) { var D = b( l.amdBase + 'compat/initSelection' ); l.dataAdapter = j.Decorate( l.dataAdapter, D ); } } if ( (null == l.resultsAdapter && ((l.resultsAdapter = c), null != l.ajax && (l.resultsAdapter = j.Decorate( l.resultsAdapter, x )), null != l.placeholder && (l.resultsAdapter = j.Decorate( l.resultsAdapter, w )), l.selectOnClose && (l.resultsAdapter = j.Decorate( l.resultsAdapter, A ))), null == l.dropdownAdapter) ) { if (l.multiple) l.dropdownAdapter = u; else { var E = j.Decorate(u, v); l.dropdownAdapter = E; } if ( (0 !== l.minimumResultsForSearch && (l.dropdownAdapter = j.Decorate( l.dropdownAdapter, z )), l.closeOnSelect && (l.dropdownAdapter = j.Decorate( l.dropdownAdapter, B )), null != l.dropdownCssClass || null != l.dropdownCss || null != l.adaptDropdownCssClass) ) { var F = b( l.amdBase + 'compat/dropdownCss' ); l.dropdownAdapter = j.Decorate( l.dropdownAdapter, F ); } l.dropdownAdapter = j.Decorate( l.dropdownAdapter, y ); } if (null == l.selectionAdapter) { if ( (l.multiple ? (l.selectionAdapter = e) : (l.selectionAdapter = d), null != l.placeholder && (l.selectionAdapter = j.Decorate( l.selectionAdapter, f )), l.allowClear && (l.selectionAdapter = j.Decorate( l.selectionAdapter, g )), l.multiple && (l.selectionAdapter = j.Decorate( l.selectionAdapter, h )), null != l.containerCssClass || null != l.containerCss || null != l.adaptContainerCssClass) ) { var G = b( l.amdBase + 'compat/containerCss' ); l.selectionAdapter = j.Decorate( l.selectionAdapter, G ); } l.selectionAdapter = j.Decorate( l.selectionAdapter, i ); } if ('string' == typeof l.language) if (l.language.indexOf('-') > 0) { var H = l.language.split('-'), I = H[0]; l.language = [l.language, I]; } else l.language = [l.language]; if (a.isArray(l.language)) { var J = new k(); l.language.push('en'); for ( var K = l.language, L = 0; L < K.length; L++ ) { var M = K[L], N = {}; try { N = k.loadPath(M); } catch (a) { try { (M = this.defaults .amdLanguageBase + M), (N = k.loadPath(M)); } catch (a) { l.debug && window.console && console.warn && console.warn( 'Select2: The language file for "' + M + '" could not be automatically loaded. A fallback will be used instead.' ); continue; } } J.extend(N); } l.translations = J; } else { var O = k.loadPath( this.defaults.amdLanguageBase + 'en' ), P = new k(l.language); P.extend(O), (l.translations = P); } return l; }), (D.prototype.reset = function () { function b(a) { function b(a) { return l[a] || a; } return a.replace(/[^\u0000-\u007E]/g, b); } function c(d, e) { if ('' === a.trim(d.term)) return e; if (e.children && e.children.length > 0) { for ( var f = a.extend(!0, {}, e), g = e.children.length - 1; g >= 0; g-- ) { null == c(d, e.children[g]) && f.children.splice(g, 1); } return f.children.length > 0 ? f : c(d, f); } var h = b(e.text).toUpperCase(), i = b(d.term).toUpperCase(); return h.indexOf(i) > -1 ? e : null; } this.defaults = { amdBase: './', amdLanguageBase: './i18n/', closeOnSelect: !0, debug: !1, dropdownAutoWidth: !1, escapeMarkup: j.escapeMarkup, language: C, matcher: c, minimumInputLength: 0, maximumInputLength: 0, maximumSelectionLength: 0, minimumResultsForSearch: 0, selectOnClose: !1, sorter: function (a) { return a; }, templateResult: function (a) { return a.text; }, templateSelection: function (a) { return a.text; }, theme: 'default', width: 'resolve', }; }), (D.prototype.set = function (b, c) { var d = a.camelCase(b), e = {}; e[d] = c; var f = j._convertData(e); a.extend(!0, this.defaults, f); }), new D() ); } ), b.define( 'select2/options', ['require', 'jquery', './defaults', './utils'], function (a, b, c, d) { function e(b, e) { if ( ((this.options = b), null != e && this.fromElement(e), (this.options = c.apply(this.options)), e && e.is('input')) ) { var f = a( this.get('amdBase') + 'compat/inputData' ); this.options.dataAdapter = d.Decorate( this.options.dataAdapter, f ); } } return ( (e.prototype.fromElement = function (a) { var c = ['select2']; null == this.options.multiple && (this.options.multiple = a.prop('multiple')), null == this.options.disabled && (this.options.disabled = a.prop('disabled')), null == this.options.language && (a.prop('lang') ? (this.options.language = a .prop('lang') .toLowerCase()) : a .closest('[lang]') .prop('lang') && (this.options.language = a .closest('[lang]') .prop('lang'))), null == this.options.dir && (a.prop('dir') ? (this.options.dir = a.prop('dir')) : a.closest('[dir]').prop('dir') ? (this.options.dir = a .closest('[dir]') .prop('dir')) : (this.options.dir = 'ltr')), a.prop('disabled', this.options.disabled), a.prop('multiple', this.options.multiple), d.GetData(a[0], 'select2Tags') && (this.options.debug && window.console && console.warn && console.warn( 'Select2: The `data-select2-tags` attribute has been changed to use the `data-data` and `data-tags="true"` attributes and will be removed in future versions of Select2.' ), d.StoreData( a[0], 'data', d.GetData(a[0], 'select2Tags') ), d.StoreData(a[0], 'tags', !0)), d.GetData(a[0], 'ajaxUrl') && (this.options.debug && window.console && console.warn && console.warn( 'Select2: The `data-ajax-url` attribute has been changed to `data-ajax--url` and support for the old attribute will be removed in future versions of Select2.' ), a.attr( 'ajax--url', d.GetData(a[0], 'ajaxUrl') ), d.StoreData( a[0], 'ajax-Url', d.GetData(a[0], 'ajaxUrl') )); var e = {}; e = b.fn.jquery && '1.' == b.fn.jquery.substr(0, 2) && a[0].dataset ? b.extend( !0, {}, a[0].dataset, d.GetData(a[0]) ) : d.GetData(a[0]); var f = b.extend(!0, {}, e); f = d._convertData(f); for (var g in f) b.inArray(g, c) > -1 || (b.isPlainObject(this.options[g]) ? b.extend(this.options[g], f[g]) : (this.options[g] = f[g])); return this; }), (e.prototype.get = function (a) { return this.options[a]; }), (e.prototype.set = function (a, b) { this.options[a] = b; }), e ); } ), b.define( 'select2/core', ['jquery', './options', './utils', './keys'], function (a, b, c, d) { var e = function (a, d) { null != c.GetData(a[0], 'select2') && c.GetData(a[0], 'select2').destroy(), (this.$element = a), (this.id = this._generateId(a)), (d = d || {}), (this.options = new b(d, a)), e.__super__.constructor.call(this); var f = a.attr('tabindex') || 0; c.StoreData(a[0], 'old-tabindex', f), a.attr('tabindex', '-1'); var g = this.options.get('dataAdapter'); this.dataAdapter = new g(a, this.options); var h = this.render(); this._placeContainer(h); var i = this.options.get('selectionAdapter'); (this.selection = new i(a, this.options)), (this.$selection = this.selection.render()), this.selection.position(this.$selection, h); var j = this.options.get('dropdownAdapter'); (this.dropdown = new j(a, this.options)), (this.$dropdown = this.dropdown.render()), this.dropdown.position(this.$dropdown, h); var k = this.options.get('resultsAdapter'); (this.results = new k( a, this.options, this.dataAdapter )), (this.$results = this.results.render()), this.results.position( this.$results, this.$dropdown ); var l = this; this._bindAdapters(), this._registerDomEvents(), this._registerDataEvents(), this._registerSelectionEvents(), this._registerDropdownEvents(), this._registerResultsEvents(), this._registerEvents(), this.dataAdapter.current(function (a) { l.trigger('selection:update', { data: a }); }), a.addClass('select2-hidden-accessible'), a.attr('aria-hidden', 'true'), this._syncAttributes(), c.StoreData(a[0], 'select2', this); }; return ( c.Extend(e, c.Observable), (e.prototype._generateId = function (a) { var b = ''; return ( (b = null != a.attr('id') ? a.attr('id') : null != a.attr('name') ? a.attr('name') + '-' + c.generateChars(2) : c.generateChars(4)), (b = b.replace(/(:|\.|\[|\]|,)/g, '')), (b = 'select2-' + b) ); }), (e.prototype._placeContainer = function (a) { a.insertAfter(this.$element); var b = this._resolveWidth( this.$element, this.options.get('width') ); null != b && a.css('width', b); }), (e.prototype._resolveWidth = function (a, b) { var c = /^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i; if ('resolve' == b) { var d = this._resolveWidth(a, 'style'); return null != d ? d : this._resolveWidth(a, 'element'); } if ('element' == b) { var e = a.outerWidth(!1); return e <= 0 ? 'auto' : e + 'px'; } if ('style' == b) { var f = a.attr('style'); if ('string' != typeof f) return null; for ( var g = f.split(';'), h = 0, i = g.length; h < i; h += 1 ) { var j = g[h].replace(/\s/g, ''), k = j.match(c); if (null !== k && k.length >= 1) return k[1]; } return null; } return b; }), (e.prototype._bindAdapters = function () { this.dataAdapter.bind(this, this.$container), this.selection.bind(this, this.$container), this.dropdown.bind(this, this.$container), this.results.bind(this, this.$container); }), (e.prototype._registerDomEvents = function () { var b = this; this.$element.on('change.select2', function () { b.dataAdapter.current(function (a) { b.trigger('selection:update', { data: a, }); }); }), this.$element.on( 'focus.select2', function (a) { b.trigger('focus', a); } ), (this._syncA = c.bind( this._syncAttributes, this )), (this._syncS = c.bind( this._syncSubtree, this )), this.$element[0].attachEvent && this.$element[0].attachEvent( 'onpropertychange', this._syncA ); var d = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; null != d ? ((this._observer = new d(function (c) { a.each(c, b._syncA), a.each(c, b._syncS); })), this._observer.observe(this.$element[0], { attributes: !0, childList: !0, subtree: !1, })) : this.$element[0].addEventListener && (this.$element[0].addEventListener( 'DOMAttrModified', b._syncA, !1 ), this.$element[0].addEventListener( 'DOMNodeInserted', b._syncS, !1 ), this.$element[0].addEventListener( 'DOMNodeRemoved', b._syncS, !1 )); }), (e.prototype._registerDataEvents = function () { var a = this; this.dataAdapter.on('*', function (b, c) { a.trigger(b, c); }); }), (e.prototype._registerSelectionEvents = function () { var b = this, c = ['toggle', 'focus']; this.selection.on('toggle', function () { b.toggleDropdown(); }), this.selection.on( 'focus', function (a) { b.focus(a); } ), this.selection.on('*', function (d, e) { -1 === a.inArray(d, c) && b.trigger(d, e); }); }), (e.prototype._registerDropdownEvents = function () { var a = this; this.dropdown.on('*', function (b, c) { a.trigger(b, c); }); }), (e.prototype._registerResultsEvents = function () { var a = this; this.results.on('*', function (b, c) { a.trigger(b, c); }); }), (e.prototype._registerEvents = function () { var a = this; this.on('open', function () { a.$container.addClass( 'select2-container--open' ); }), this.on('close', function () { a.$container.removeClass( 'select2-container--open' ); }), this.on('enable', function () { a.$container.removeClass( 'select2-container--disabled' ); }), this.on('disable', function () { a.$container.addClass( 'select2-container--disabled' ); }), this.on('blur', function () { a.$container.removeClass( 'select2-container--focus' ); }), this.on('query', function (b) { a.isOpen() || a.trigger('open', {}), this.dataAdapter.query( b, function (c) { a.trigger('results:all', { data: c, query: b, }); } ); }), this.on('query:append', function (b) { this.dataAdapter.query(b, function (c) { a.trigger('results:append', { data: c, query: b, }); }); }), this.on('keypress', function (b) { var c = b.which; a.isOpen() ? c === d.ESC || c === d.TAB || (c === d.UP && b.altKey) ? (a.close(), b.preventDefault()) : c === d.ENTER ? (a.trigger( 'results:select', {} ), b.preventDefault()) : c === d.SPACE && b.ctrlKey ? (a.trigger( 'results:toggle', {} ), b.preventDefault()) : c === d.UP ? (a.trigger( 'results:previous', {} ), b.preventDefault()) : c === d.DOWN && (a.trigger( 'results:next', {} ), b.preventDefault()) : (c === d.ENTER || c === d.SPACE || (c === d.DOWN && b.altKey)) && (a.open(), b.preventDefault()); }); }), (e.prototype._syncAttributes = function () { this.options.set( 'disabled', this.$element.prop('disabled') ), this.options.get('disabled') ? (this.isOpen() && this.close(), this.trigger('disable', {})) : this.trigger('enable', {}); }), (e.prototype._syncSubtree = function (a, b) { var c = !1, d = this; if ( !a || !a.target || 'OPTION' === a.target.nodeName || 'OPTGROUP' === a.target.nodeName ) { if (b) if ( b.addedNodes && b.addedNodes.length > 0 ) for ( var e = 0; e < b.addedNodes.length; e++ ) { var f = b.addedNodes[e]; f.selected && (c = !0); } else b.removedNodes && b.removedNodes.length > 0 && (c = !0); else c = !0; c && this.dataAdapter.current(function (a) { d.trigger('selection:update', { data: a, }); }); } }), (e.prototype.trigger = function (a, b) { var c = e.__super__.trigger, d = { open: 'opening', close: 'closing', select: 'selecting', unselect: 'unselecting', clear: 'clearing', }; if ((void 0 === b && (b = {}), a in d)) { var f = d[a], g = { prevented: !1, name: a, args: b }; if ((c.call(this, f, g), g.prevented)) return void (b.prevented = !0); } c.call(this, a, b); }), (e.prototype.toggleDropdown = function () { this.options.get('disabled') || (this.isOpen() ? this.close() : this.open()); }), (e.prototype.open = function () { this.isOpen() || this.trigger('query', {}); }), (e.prototype.close = function () { this.isOpen() && this.trigger('close', {}); }), (e.prototype.isOpen = function () { return this.$container.hasClass( 'select2-container--open' ); }), (e.prototype.hasFocus = function () { return this.$container.hasClass( 'select2-container--focus' ); }), (e.prototype.focus = function (a) { this.hasFocus() || (this.$container.addClass( 'select2-container--focus' ), this.trigger('focus', {})); }), (e.prototype.enable = function (a) { this.options.get('debug') && window.console && console.warn && console.warn( 'Select2: The `select2("enable")` method has been deprecated and will be removed in later Select2 versions. Use $element.prop("disabled") instead.' ), (null != a && 0 !== a.length) || (a = [!0]); var b = !a[0]; this.$element.prop('disabled', b); }), (e.prototype.data = function () { this.options.get('debug') && arguments.length > 0 && window.console && console.warn && console.warn( 'Select2: Data can no longer be set using `select2("data")`. You should consider setting the value instead using `$element.val()`.' ); var a = []; return ( this.dataAdapter.current(function (b) { a = b; }), a ); }), (e.prototype.val = function (b) { if ( (this.options.get('debug') && window.console && console.warn && console.warn( 'Select2: The `select2("val")` method has been deprecated and will be removed in later Select2 versions. Use $element.val() instead.' ), null == b || 0 === b.length) ) return this.$element.val(); var c = b[0]; a.isArray(c) && (c = a.map(c, function (a) { return a.toString(); })), this.$element.val(c).trigger('change'); }), (e.prototype.destroy = function () { this.$container.remove(), this.$element[0].detachEvent && this.$element[0].detachEvent( 'onpropertychange', this._syncA ), null != this._observer ? (this._observer.disconnect(), (this._observer = null)) : this.$element[0] .removeEventListener && (this.$element[0].removeEventListener( 'DOMAttrModified', this._syncA, !1 ), this.$element[0].removeEventListener( 'DOMNodeInserted', this._syncS, !1 ), this.$element[0].removeEventListener( 'DOMNodeRemoved', this._syncS, !1 )), (this._syncA = null), (this._syncS = null), this.$element.off('.select2'), this.$element.attr( 'tabindex', c.GetData( this.$element[0], 'old-tabindex' ) ), this.$element.removeClass( 'select2-hidden-accessible' ), this.$element.attr('aria-hidden', 'false'), c.RemoveData(this.$element[0]), this.dataAdapter.destroy(), this.selection.destroy(), this.dropdown.destroy(), this.results.destroy(), (this.dataAdapter = null), (this.selection = null), (this.dropdown = null), (this.results = null); }), (e.prototype.render = function () { var b = a( '' ); return ( b.attr('dir', this.options.get('dir')), (this.$container = b), this.$container.addClass( 'select2-container--' + this.options.get('theme') ), c.StoreData(b[0], 'element', this.$element), b ); }), e ); } ), b.define('jquery-mousewheel', ['jquery'], function (a) { return a; }), b.define( 'jquery.select2', [ 'jquery', 'jquery-mousewheel', './select2/core', './select2/defaults', './select2/utils', ], function (a, b, c, d, e) { if (null == a.fn.select2) { var f = ['open', 'close', 'destroy']; a.fn.select2 = function (b) { if ('object' == typeof (b = b || {})) return ( this.each(function () { var d = a.extend(!0, {}, b); new c(a(this), d); }), this ); if ('string' == typeof b) { var d, g = Array.prototype.slice.call( arguments, 1 ); return ( this.each(function () { var a = e.GetData(this, 'select2'); null == a && window.console && console.error && console.error( "The select2('" + b + "') method was called on an element that is not using Select2." ), (d = a[b].apply(a, g)); }), a.inArray(b, f) > -1 ? this : d ); } throw new Error( 'Invalid arguments for Select2: ' + b ); }; } return ( null == a.fn.select2.defaults && (a.fn.select2.defaults = d), c ); } ), { define: b.define, require: b.require } ); })(), c = b.require('jquery.select2'); return (a.fn.select2.amd = b), c; });