2022-11-07 19:18:05 -08:00
|
|
|
// main.js
|
2022-11-18 07:13:53 +00:00
|
|
|
import {getAllReviewsFromStorage} from "./localStorage.js";
|
2022-11-07 19:18:05 -08:00
|
|
|
|
|
|
|
// Run the init() function when the page has loaded
|
2022-11-15 00:53:07 +00:00
|
|
|
window.addEventListener("DOMContentLoaded", init);
|
2022-11-07 19:18:05 -08:00
|
|
|
|
|
|
|
function init() {
|
2022-11-15 00:53:07 +00:00
|
|
|
// Get the reviews from localStorage
|
2022-11-18 07:13:53 +00:00
|
|
|
let reviews = getAllReviewsFromStorage();
|
2022-11-15 00:53:07 +00:00
|
|
|
// Add each reviews to the <main> element
|
|
|
|
addReviewsToDocument(reviews);
|
|
|
|
// Add the event listeners to the form elements
|
|
|
|
initFormHandler();
|
2022-11-07 19:18:05 -08:00
|
|
|
}
|
|
|
|
|
2022-11-17 18:45:53 -08:00
|
|
|
|
2022-11-07 19:18:05 -08:00
|
|
|
/**
|
2022-11-08 15:57:02 -08:00
|
|
|
* @param {Array<Object>} reviews An array of reviews
|
2022-11-07 19:18:05 -08:00
|
|
|
*/
|
2022-11-08 15:57:02 -08:00
|
|
|
function addReviewsToDocument(reviews) {
|
2022-11-21 11:58:26 -08:00
|
|
|
let reviewBox = document.getElementById("review-container");
|
2022-11-15 00:53:07 +00:00
|
|
|
reviews.forEach(review => {
|
|
|
|
let newReview = document.createElement("review-card");
|
|
|
|
newReview.data = review;
|
|
|
|
//TODO: want to append it to whatever the box is in layout
|
2022-11-21 11:58:26 -08:00
|
|
|
reviewBox.append(newReview);
|
2022-11-15 00:53:07 +00:00
|
|
|
});
|
2022-11-07 19:18:05 -08:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
2022-11-11 00:03:56 -08:00
|
|
|
* Adds the necessary event handlers to <form> and the clear storage
|
2022-11-07 19:18:05 -08:00
|
|
|
* <button>.
|
|
|
|
*/
|
|
|
|
function initFormHandler() {
|
2022-11-12 14:16:03 -08:00
|
|
|
|
2022-11-15 00:53:07 +00:00
|
|
|
//btn to create form (could be its own function?)
|
2022-11-17 18:45:53 -08:00
|
|
|
let createBtn = document.getElementById("create-btn");
|
2022-11-15 00:53:07 +00:00
|
|
|
createBtn.addEventListener("click", function(){
|
|
|
|
window.location.assign("./CreatePage.html");
|
2022-11-17 18:45:53 -08:00
|
|
|
});
|
2022-11-11 12:07:58 -08:00
|
|
|
}
|