Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.96 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title></title>
  6. </head>
  7. <body>
  8. <div id="message"></div>
  9. <input type="text" id="title" placeholder="Title">
  10. <input type="text" id="producer" placeholder="Producer">
  11. <button onclick="search_film()">Search</button>
  12. <table id="table">
  13. <thead>
  14. <tr>
  15. <th>Title</th><th>Description</th><th>Director</th>
  16. <th>Producer</th><th>Release Date</th><th>Rotten Tomatoes Score</th>
  17. </tr>
  18. </thead>
  19. <tbody></tbody>
  20. </table>
  21. <script type="text/javascript">
  22. const url = "https://ghibliapi.herokuapp.com"
  23. var films = []
  24. function fetch_films() {
  25. fetch(url + "/films")
  26. .then(res => {
  27. return res.json()
  28. }).then(json => {
  29. films = json
  30. message("Films loaded")
  31. search_film()
  32. }).catch(err => {
  33. message("Something happened")
  34. })
  35. }
  36.  
  37. function message(msg) {
  38. document.getElementById("message").innerHTML = msg
  39. }
  40.  
  41. function search_film() {
  42. var title = document.getElementById("title").value
  43. var producer = document.getElementById("producer").value
  44. var fs = title === "" ? films : films.filter(x => x.title.toLowerCase().includes(title))
  45. fs = producer === "" ? fs : fs.filter(x => x.producer.toLowerCase().includes(producer))
  46. render_films(fs)
  47. }
  48.  
  49. function render_films(fs) {
  50. var table = document.getElementById("table")
  51. table.tBodies[0].innerHTML = ""
  52. fs.forEach(f => {
  53. var tr = document.createElement("tr")
  54. tr.innerHTML = "<td>" + f.title + "</td>"
  55. + "<td>" + f.description + "</td>"
  56. + "<td>" + f.director + "</td>"
  57. + "<td>" + f.producer + "</td>"
  58. + "<td>" + f.release_date + "</td>"
  59. + "<td>" + f.rt_score + "</td>"
  60. table.tBodies[0].appendChild(tr)
  61. })
  62. }
  63. fetch_films()
  64. </script>
  65. </body>
  66. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement