From 3f4400e05a28a7a013a847103b2f71c5fc34e076 Mon Sep 17 00:00:00 2001 From: "rit1992@mail.ru" <158091165+margarita0206@users.noreply.github.com> Date: Wed, 7 Aug 2024 13:59:42 +0300 Subject: [PATCH 1/2] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D1=8F=D0=B5=D1=82=20=D0=BD=D0=B5=D0=B4=D0=BE=D1=87=D0=B5=D1=82?= =?UTF-8?q?=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/constant.js | 54 -------------------------------------------- js/effects-img.js | 4 +++- js/form-modal.js | 7 ++++-- js/form-validate.js | 2 +- js/load-pictures.js | 5 ++++ js/modal-pictures.js | 5 +++- 6 files changed, 18 insertions(+), 59 deletions(-) diff --git a/js/constant.js b/js/constant.js index 4e57fdd..324afab 100644 --- a/js/constant.js +++ b/js/constant.js @@ -6,16 +6,6 @@ export const TIME_OUT_DELAY = 500; export const SHOW_TIME = 5000; -export const MIN_POSTS_COUNT = 1; -export const MAX_POSTS_COUNT = 25; -export const AVATAR_MIN_COUNT = 1; -export const AVATAR_MAX_COUNT = 6; -export const LIKES_MIN_COUNT = 15; -export const LIKES_MAX_COUNT = 200; -export const COMMENT_MIN_COUNT = 0; -export const COMMENT_MAX_COUNT = 30; -export const COMMENT_MAX_ID = 500000; - export const HASHTAG_CHECK = /^#[a-zа-яё0-9]{1,19}$/i; export const SPACE = /\s+/g; export const MAX_HASHTAG = 5; @@ -90,47 +80,3 @@ export const effectToSliderOption = { step: 0.1, }, }; - -export const COMMENT_NAMES = [ - 'Анна', - 'Александр', - 'Светлана', - 'Юра', - 'Сергей', - 'Полина', - 'Олег', - 'Андрей', - 'Юля', - 'Анастасия', - 'Соня', - 'Татьяна', - 'Алексей', - 'Артем', - 'Вера', - 'Ирина', - 'Николай', - 'Ева', - 'Ольга', - 'Алиса' -]; - -export const POSTS_COMMENTS = [ - 'Всё отлично!', - 'В целом всё неплохо. Но не всё.', - 'Когда вы делаете фотографию, хорошо бы убирать палец из кадра. В конце концов это просто непрофессионально.', - 'Моя бабушка случайно чихнула с фотоаппаратом в руках и у неё получилась фотография лучше.', - 'Я поскользнулся на банановой кожуре и уронил фотоаппарат на кота и у меня получилась фотография лучше.', - 'Лица у людей на фотке перекошены, как будто их избивают. Как можно было поймать такой неудачный момент?!' -]; - -export const DESCRIPTIONS = [ - 'Моя жизнь меняется, потому что меняю ее я.', - 'Не слушай никого, лишь твое сердце, оно все знает.', - 'Чтобы достичь новых берегов, мы должны плыть, а не дрейфовать.', - 'Навстречу новым приключениям.', - 'Каждое мгновенье жизни — еще одна возможность.', - 'Пусть эта фотография будет здесь', - 'Одна хорошая мысль утром меняет смысл целого дня.', - 'Как мало нужно для счастья.', - 'Этой фотографии описание не нужно' -]; diff --git a/js/effects-img.js b/js/effects-img.js index eaa12a4..ab6c4d4 100644 --- a/js/effects-img.js +++ b/js/effects-img.js @@ -3,6 +3,7 @@ import { effectToFilter, effectToSliderOption } from './constant.js'; +import { loadingPicture } from './load-pictures.js'; const modalElement = document.querySelector('.img-upload'); const imgElement = modalElement.querySelector('.img-upload__preview img'); @@ -11,6 +12,8 @@ const slider = modalElement.querySelector('.effect-level__slider'); const sliderContainer = modalElement.querySelector('.img-upload__effect-level'); const effectLevel = modalElement.querySelector('.effect-level__value'); +loadingPicture(); + let chosenEffect = effect.DEFAULT; const isDefault = () => chosenEffect === effect.DEFAULT; @@ -20,7 +23,6 @@ const setImageStyle = () => { imgElement.style.filter = null; return; } - const { value } = effectLevel; const { style, unit } = effectToFilter[chosenEffect]; imgElement.style.filter = `${style}(${value}${unit})`; diff --git a/js/form-modal.js b/js/form-modal.js index 735fe14..0ae51ef 100644 --- a/js/form-modal.js +++ b/js/form-modal.js @@ -4,6 +4,7 @@ import { resetScale } from './scale.js'; import { reset as resetEffect } from './effects-img.js'; +import { loadingPicture } from './load-pictures.js'; const SubmitButtonText = { IDLE: 'Опубликовать', @@ -23,13 +24,14 @@ const openRedactForm = () => { redactForm.classList.remove('hidden'); body.classList.add('modal-open'); document.addEventListener('keydown', onDocumentKeydown); + loadingPicture(); }; const closeRedactForm = () => { resetScale(); resetEffect(); redactForm.classList.add('hidden'); - document.body.classList.remove('modal-open'); + body.classList.remove('modal-open'); imgUploadInput.value = ''; document.removeEventListener('keydown', onDocumentKeydown); resetValidation(); @@ -45,6 +47,7 @@ const toggleSubmitButton = (isDisabled) => { imgUploadInput.addEventListener('change', () => { openRedactForm(); + }); imgUploadCancelButton.addEventListener('click', () => { @@ -53,7 +56,7 @@ imgUploadCancelButton.addEventListener('click', () => { const isErrorMessageShown = () => Boolean(document.querySelector('.error')); -function onDocumentKeydown (evt) { +function onDocumentKeydown(evt) { if (isEscapeKey(evt) && !isErrorMessageShown()) { evt.preventDefault(); closeRedactForm(); diff --git a/js/form-validate.js b/js/form-validate.js index a0343c2..a0cc175 100644 --- a/js/form-validate.js +++ b/js/form-validate.js @@ -17,7 +17,7 @@ const pristine = new Pristine(imgUploadForm, { classTo: 'img-upload__field-wrapper', errorTextParent: 'img-upload__field-wrapper', errorTextTag: 'div', - errorTextClass: 'img-upload__field-wrapper__error' + errorTextClass: 'img-upload__field-wrapper__error', }); const normalizeHashtage = (value) => !value.length ? [] : fieldHashtag.value.toLowerCase().replaceAll(SPACE, ' ').trim().split(' '); diff --git a/js/load-pictures.js b/js/load-pictures.js index fb27366..09107c0 100644 --- a/js/load-pictures.js +++ b/js/load-pictures.js @@ -2,6 +2,7 @@ import { FILE_TYPES } from './constant.js'; const imgUploadPreview = document.querySelector('.img-upload__preview img'); const fileChooser = document.querySelector('.img-upload__start input[type=file]'); +const effectsPreviews = document.querySelectorAll('.effects__preview'); const loadingPicture = () => { fileChooser.addEventListener('change', () => { @@ -12,6 +13,10 @@ const loadingPicture = () => { if (matches) { imgUploadPreview.src = URL.createObjectURL(file); + imgUploadPreview.computedStyleMap.width = '100%'; + effectsPreviews.forEach((preview) => { + preview.style.backgroundImage = `url('${imgUploadPreview.src}')`; + }); } }); }; diff --git a/js/modal-pictures.js b/js/modal-pictures.js index 2887bfb..667add4 100644 --- a/js/modal-pictures.js +++ b/js/modal-pictures.js @@ -61,6 +61,7 @@ const onDocumentKeydown = (evt) => { if(isEscapeKey(evt)) { evt.preventDefault(); bigPicturesModal.classList.add('hidden'); + body.classList.remove('modal-open'); } }; @@ -78,7 +79,9 @@ const closeBigPictureWindow = () => { document.removeEventListener('keydown', onDocumentKeydown); }; -closeBigPicturesButton.addEventListener('click', closeBigPictureWindow); +closeBigPicturesButton.addEventListener('click', () => { + closeBigPictureWindow(); +}); loadCommentsButton.addEventListener('click', renderComments); From 7a23e340f868fa3d14774c249408e0989ffeb5d9 Mon Sep 17 00:00:00 2001 From: "rit1992@mail.ru" <158091165+margarita0206@users.noreply.github.com> Date: Wed, 7 Aug 2024 17:09:35 +0300 Subject: [PATCH 2/2] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D1=8F=D0=B5=D1=82=20=D0=BE=D1=88=D0=B8=D0=B1=D0=BA=D1=83=20?= =?UTF-8?q?=D0=B2=20=D1=82=D0=B5=D1=81=D1=82=D0=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/load-pictures.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/load-pictures.js b/js/load-pictures.js index 09107c0..8e0f106 100644 --- a/js/load-pictures.js +++ b/js/load-pictures.js @@ -13,7 +13,7 @@ const loadingPicture = () => { if (matches) { imgUploadPreview.src = URL.createObjectURL(file); - imgUploadPreview.computedStyleMap.width = '100%'; + imgUploadPreview.style.width = '100%'; effectsPreviews.forEach((preview) => { preview.style.backgroundImage = `url('${imgUploadPreview.src}')`; });