Advertisement
geromero

Untitled

Mar 30th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. function attachEvents() {
  2. const usernameAndPassword = btoa('user:pass');
  3. const select = $('#posts');
  4. const postTitle = $('#post-title');
  5. const postBody = $('#post-body');
  6. const postComments = $('#post-comments');
  7.  
  8. $('#btnLoadPosts').click(requestPosts);
  9. $('#btnViewPost').click(requestPostAndComments);
  10.  
  11. function requestPosts() {
  12. $.ajax({
  13. method: "GET",
  14. url: 'https://baas.kinvey.com/appdata/kid_rJHU2z99f/posts',
  15. headers: {"Authorization": "Basic "+usernameAndPassword},
  16. success: displayOptions,
  17. error: handleError
  18. })
  19. }
  20.  
  21. function requestPostAndComments() {
  22. let postId = $('option:selected').val();
  23.  
  24. let postP = $.ajax({
  25. method: "GET",
  26. url: `https://baas.kinvey.com/appdata/kid_rJHU2z99f/posts/${postId}`,
  27. headers: {"Authorization": "Basic "+usernameAndPassword},
  28. });
  29. let commentsP = $.ajax({
  30. method: "GET",
  31. url: `https://baas.kinvey.com/appdata/kid_rJHU2z99f/comments/?query={"postId":"${postId}"}`,
  32. headers: {"Authorization": "Basic "+usernameAndPassword},
  33. });
  34. Promise.all([postP,commentsP])
  35. .then(handleTheData)
  36. .catch(handleError)
  37.  
  38. }
  39.  
  40. function handleTheData([post,comments]) {
  41.  
  42. postTitle.text(post.title);
  43. postBody.text(post.body);
  44. for(let comment of comments){
  45. postComments.append($(`<li>${comment.text}</li>`))
  46. }
  47.  
  48.  
  49. }
  50.  
  51. function displayOptions(data) {
  52. for(let post of data){
  53. select.append(`<option value="${post._id}">${post.title}</option>`)
  54. }
  55. }
  56.  
  57. function handleError(reason) {
  58. console.log(reason)
  59. }
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement