Skip to content

Commit aca1b47

Browse files
authored
Merge pull request #16 from Vitali3207/master
2 parents 40f75e7 + 1a947a9 commit aca1b47

4 files changed

Lines changed: 25 additions & 24 deletions

File tree

js/form/image-form.js

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { isEscapeKey } from '../util';
22
import { initScale, resetScale } from './image-scale';
3-
import { initValidation, validateForm } from './validation';
3+
import { validateForm } from './validation';
44
import { initEffect, resetEffect } from './slider-effect';
55
import { sendData } from '../load-data';
66
import { generateErrorMessage, showSuccessMessage, showErrorMessage, hasErrorMessage, closeMessage } from '../messages';
@@ -17,16 +17,18 @@ const preview = document.querySelector('.img-upload__preview img');
1717
const uploadFormEffects = uploadForm.querySelectorAll('.effects__preview');
1818

1919
const onEscKeyDown = (evt) => {
20-
if (isEscapeKey(evt) && (document.activeElement === hashtagsInput || document.activeElement === descriptionInput)) {
21-
return;
22-
}
20+
if (isEscapeKey(evt)) {
21+
if (document.activeElement === hashtagsInput || document.activeElement === descriptionInput) {
22+
return;
23+
}
2324

24-
if(hasErrorMessage()) {
25-
closeMessage();
26-
return;
27-
}
25+
if (hasErrorMessage()) {
26+
closeMessage();
27+
return;
28+
}
2829

29-
closeUploadModal();
30+
closeUploadModal();
31+
}
3032
};
3133

3234
const onUploadCancelClick = () => {
@@ -36,7 +38,7 @@ const onUploadCancelClick = () => {
3638
function closeUploadModal () {
3739
formOverlay.classList.add('hidden');
3840
document.querySelector('body').classList.remove('modal-open');
39-
document.removeEventListener('keydown', onEscKeyDown);
41+
document.body.removeEventListener('keydown', onEscKeyDown);
4042
buttonCloseUpload.removeEventListener('click', onUploadCancelClick);
4143

4244
resetEffect();
@@ -52,7 +54,6 @@ const openUploadModal = () => {
5254

5355
initEffect();
5456
initScale();
55-
initValidation();
5657
};
5758

5859
function onFileChooserChange () {

js/main.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { renderThumbnails } from './render-thumbnails';
44
import { setPicturesListener } from './big-picture';
55
import { initUploadModal } from './form/image-form';
66
import { initFilter } from './filter.js';
7+
import { initValidation } from './form/validation';
78

89
const bootstrap = async () => {
910
try {
@@ -12,7 +13,8 @@ const bootstrap = async () => {
1213
setPicturesListener(photos);
1314
initFilter(photos);
1415
initUploadModal();
15-
}catch(error) {
16+
initValidation();
17+
} catch(error) {
1618
generateErrorMessage();
1719
}
1820
};

js/messages.js

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,23 +28,21 @@ const generateErrorMessage = (message) => {
2828
const closeMessage = () => {
2929
if (successMessageContainer) {
3030
successMessageContainer.remove();
31-
return;
3231
}
3332

3433
if(errorMessageContainer) {
3534
errorMessageContainer.remove();
36-
return;
3735
}
3836

37+
document.removeEventListener('keydown', onEscKeyDownMessage);
3938
document.body.removeEventListener('click', onBodyCancelClick);
40-
document.body.removeEventListener('keydown', onEscKeyDownMessage);
4139
errorMessageContainer = null;
4240
successMessageContainer = null;
4341
};
4442

4543

46-
const onMessageCloseButton = (container) => {
47-
container.remove();
44+
const onMessageCloseButton = () => {
45+
closeMessage();
4846
};
4947

5048
function onEscKeyDownMessage (evt) {
@@ -67,7 +65,7 @@ const showPopupMessage = (node) => {
6765
document.body.append(node);
6866
button.addEventListener('click', () => onMessageCloseButton(node));
6967
document.body.addEventListener('click', onBodyCancelClick);
70-
document.body.addEventListener('keydown', onEscKeyDownMessage);
68+
document.addEventListener('keydown', onEscKeyDownMessage);
7169
};
7270

7371
const showSuccessMessage = () => {

js/render-thumbnails.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,14 @@ const renderThumbnails = (userPhotos) => {
55
usersPhotoList.querySelectorAll('.picture').forEach((photo) => photo.remove());
66
const photoFragment = document.createDocumentFragment();
77

8-
userPhotos.forEach((photo) => {
8+
userPhotos.forEach(({id, url, description, comments, likes}) => {
99
const photoElement = thumbnails.cloneNode(true);
1010

11-
photoElement.dataset.pictureId = photo.id;
12-
photoElement.querySelector('.picture__img').src = photo.url;
13-
photoElement.querySelector('.picture__img').alt = photo.description;
14-
photoElement.querySelector('.picture__comments').textContent = photo.comments.length;
15-
photoElement.querySelector('.picture__likes').textContent = photo.likes;
11+
photoElement.dataset.pictureId = id;
12+
photoElement.querySelector('.picture__img').src = url;
13+
photoElement.querySelector('.picture__img').alt = description;
14+
photoElement.querySelector('.picture__comments').textContent = comments.length;
15+
photoElement.querySelector('.picture__likes').textContent = likes;
1616

1717
photoFragment.append(photoElement);
1818
});

0 commit comments

Comments
 (0)