Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var flights
  2. var flightsFrom = []
  3. var flightsTo = []
  4. var companies = []
  5. var results = []
  6.  
  7. var selectFrom = ''
  8. var selectTo = ''
  9. var selectCompany = ''
  10.  
  11. function loadFlights(){
  12.     var flight = new XMLHttpRequest()
  13.     flight.open('GET', 'flights.json', false)
  14.  
  15.     flight.onreadystatechange = function () {
  16.         if (flight.readyState===4 && flight.status===200) {
  17.             flights = JSON.parse(flight.responseText);
  18.         }
  19.     }
  20.     flight.send();
  21. }
  22.  
  23. function loadFrom(){
  24.    
  25.     console.log(flights)
  26.  
  27.     allDestinations = []
  28.    
  29.     for (i = 0; i < flights.length; i++) {
  30.         allDestinations.push(flights[i].From)
  31.     }
  32.  
  33.     allDestinations.sort()
  34.    for (i = 0; i < allDestinations.length; i++) {
  35.        if(allDestinations[i] != allDestinations[i+1]){
  36.             flightsFrom.push(allDestinations[i])
  37.        }
  38.    }
  39.  
  40.    var from = '<option value="0">From</option>'
  41.    for (i = 0; i < flightsFrom.length; i++) {
  42.  
  43.     from += '<option value="'+i+'">'+flightsFrom[i]+'</option>'
  44.  
  45.    }
  46.  
  47.    document.getElementById('de').innerHTML = from;
  48.  
  49.    console.log("From: ", flightsFrom)
  50. }
  51.  
  52. function loadTo() {
  53.  
  54.     for (i = 0; i < flights.length; i++) {
  55.         flightsTo.push(flights[i].To)
  56.     }
  57.  
  58.     var to = '<option value="0">To</option>'
  59.     for (i = 0; i < flightsTo.length; i++) {
  60.  
  61.         to += '<option value="'+i+'">'+flightsTo[i]+'</option>'
  62.  
  63.     }
  64.  
  65.    document.getElementById('para').innerHTML = to;
  66.  
  67.     console.log("To: ", flightsTo)
  68. }
  69.  
  70.  
  71. function loadCompany() {
  72.    
  73.     allCompanies = []
  74.  
  75.     for (i = 0; i < flights.length; i++) {
  76.         for(j = 0; j < flights[i].Flights.length; j++) {
  77.             //console.log("company: ", flights[i].Flights[j].Company)
  78.             allCompanies.push(flights[i].Flights[j].Company)
  79.         }
  80.     }
  81.  
  82.     allCompanies.sort()
  83.     for (i = 0; i < allCompanies.length; i++) {
  84.         if(allCompanies[i] != allCompanies[i+1]){
  85.             companies.push(allCompanies[i])
  86.         }
  87.     }
  88.  
  89.     var company = '<option value="0">Company</option>'
  90.     for (i = 0; i < companies.length; i++) {
  91.  
  92.         company += '<option value="'+i+'">'+companies[i]+'</option>'
  93.  
  94.     }
  95.  
  96.    document.getElementById('compania').innerHTML = company;
  97.  
  98.     console.log("companies: ", companies)
  99. }
  100.  
  101.  
  102. function updateOptionToSelect(option, selectId) {
  103.  
  104.     if(selectId.id == "de"){
  105.         selectFrom = option
  106.         //console.log("option de ", option)
  107.     }
  108.  
  109.     if(selectId.id == "para"){
  110.         selectTo = option
  111.         //console.log("option para", option)
  112.     }
  113.  
  114.     if(selectId.id == "compania"){
  115.         selectCompany = option
  116.         //console.log("option para", option)
  117.     }
  118.  
  119.     searchFlights(selectFrom, selectTo, selectCompany)
  120. }
  121.  
  122. function searchFlights(from, to, company) {
  123.  
  124.     results = []
  125.     for (i = 0; i < flights.length; i++) {
  126.         for(j = 0; j < flights[i].Flights.length; j++) {
  127.             if(flights[i].From == from && flights[i].To == to && flights[i].Flights[j].Company == company) {
  128.                
  129.                 results.push(flights[i])
  130.                
  131.             }
  132.         }
  133.     }
  134.  
  135.     console.log("results", results)
  136.     drawBoard()
  137. }
  138.  
  139. function drawBoard(){
  140.  
  141.     var table = `<table id="id_tabel" align="center">
  142.     <tr>
  143.      <th>Origem</th>
  144.      <th>Destino</th>
  145.      <th>Companhia</th>
  146.      <th>Partida</th>
  147.      <th>Chegada</th>
  148.      <th>Preço</th>
  149.     </tr>`
  150.  
  151.     for (i = 0; i < results.length; i++) {
  152.  
  153.         table += `<tr>
  154.             <td>`+results[i].From+`</td>
  155.             <td>`+results[i].To+`</td>
  156.             <td>`+results[i].Flights[i].Company+`</td>
  157.             <td>`+results[i].Flights[i].Departure+`</td>
  158.             <td>`+results[i].Flights[i].Arrival+`</td>
  159.             <td>`+results[i].Flights[i].Price+`</td>
  160.         </tr>`;
  161.        
  162.     }
  163.     document.getElementById('table').innerHTML = table;
  164.        
  165. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement