From 69f00de7993270c4fe85292e524564da0d96766a Mon Sep 17 00:00:00 2001 From: Alex Smagin Date: Fri, 11 Aug 2023 12:57:34 -0500 Subject: [PATCH] update --- src/js/02-video.js | 40 ++++++---------------------------------- src/js/03-feedback.js | 27 +++++++++++++++++---------- 2 files changed, 23 insertions(+), 44 deletions(-) diff --git a/src/js/02-video.js b/src/js/02-video.js index de63c2a..6d7ccc2 100644 --- a/src/js/02-video.js +++ b/src/js/02-video.js @@ -1,46 +1,18 @@ import Player from '@vimeo/player'; import throttle from 'lodash.throttle'; +const KEY_STORAGE = 'videoplayer-current-time'; + const iframe = document.querySelector('iframe'); iframe.style.margin = '20px auto'; iframe.style.display = 'flex'; const player = new Player(iframe); -const throttle = require('lodash.throttle'); - -player.on('play', function () { - console.log('played the video!'); -}); -player.getVideoTitle().then(function (title) { - console.log('title:', title); -}); +player.on('timeupdate', throttle(updatingTimeLocalStorage, 1000)); -player.on('timeupdate', throttle(updateingTimeLocalStorage, 1000)); - -function updateingTimeLocalStorage(data) { - { - duration: 61.857; - percent: 0.049; - seconds: 3.034; - } - localStorage.setItem('videoplayer-current-time', data.seconds); - // data is an object containing properties specific to that event +function updatingTimeLocalStorage({ seconds }) { + localStorage.setItem(KEY_STORAGE, seconds); } -player - .setCurrentTime(localStorage.getItem('videoplayer-current-time')) - .then(function (seconds) { - // seconds = the actual time that the player seeked to - }) - .catch(function (error) { - switch (error.name) { - case 'RangeError': - // the time was less than 0 or greater than the video’s duration - break; - - default: - // some other error occurred - break; - } - }); +player.setCurrentTime(localStorage.getItem(KEY_STORAGE)); diff --git a/src/js/03-feedback.js b/src/js/03-feedback.js index 23c6a10..9def9d6 100644 --- a/src/js/03-feedback.js +++ b/src/js/03-feedback.js @@ -2,14 +2,11 @@ import throttle from 'lodash.throttle'; const STORAGE_KEY = 'feedback-form-state'; -const throttle = require('lodash.throttle'); - const formEl = document.querySelector('.feedback-form'); const inputEl = formEl[(name = 'email')]; const textAreaEl = formEl[(name = 'message')]; const allData = {}; - savedStorageValue(); formEl.addEventListener('submit', onSubmitHandler); @@ -17,24 +14,34 @@ formEl.addEventListener('input', throttle(onTextarealHandler, 500)); function onSubmitHandler(e) { e.preventDefault(); - console.log(textAreaEl.value); - console.log(inputEl.value); + const savedText = JSON.parse(localStorage.getItem(STORAGE_KEY)); + console.log(savedText); e.currentTarget.reset(); localStorage.removeItem(STORAGE_KEY); } function onTextarealHandler(e) { - localStorage.setItem(STORAGE_KEY, e.target.value); + localStorage.setItem(STORAGE_KEY, JSON.stringify(allData)); allData[e.target.name] = e.target.value; localStorage.setItem(STORAGE_KEY, JSON.stringify(allData)); } function savedStorageValue() { - const savedText = localStorage.getItem(STORAGE_KEY); + const savedText = JSON.parse(localStorage.getItem(STORAGE_KEY)); if (savedText) { - const textAreaSaved = JSON.parse(savedText); - textAreaEl.value = textAreaSaved.message; - inputEl.value = textAreaSaved.email; + if (savedText.message) { + textAreaEl.value = savedText.message; + } + if (savedText.email) { + inputEl.value = savedText.email; + } + + // JSON.parse(savedText).message + // ? (textAreaEl.value = JSON.parse(savedText).message) + // : ''; + // JSON.parse(savedText).email + // ? (inputEl.value = JSON.parse(savedText).email) + // : ''; } }