Skip to content

Commit

Permalink
Merge pull request #3 from OlgaGulyakevich/module4-task1
Browse files Browse the repository at this point in the history
  • Loading branch information
keksobot authored Nov 28, 2024
2 parents c7bf31d + bd990f5 commit 257c7be
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 4 deletions.
1 change: 1 addition & 0 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -237,5 +237,6 @@ <h2 class="data-error__title">Не удалось загрузить данны

</body>
<script src="./js/functions.js" defer></script>
<script src="./js/main.js" defer></script>

</html>
6 changes: 2 additions & 4 deletions js/functions.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,9 @@ const isPolindrom = (text) => {

const extractDigits = (inputChar) => {

Check failure on line 19 in js/functions.js

View workflow job for this annotation

GitHub Actions / Check

'extractDigits' is assigned a value but never used

// Убирает пробелы и разбивает на символы
const nomalizedChars = inputChar.replaceAll(' ', '').split('');
const nomalizedChars = inputChar.replaceAll(' ', '').split(''); /* Убирает пробелы и разбивает на символы */

//Переменная для хранения цифр
let digits = '';
let digits = ''; /* Переменная для хранения цифр */

for (const char of nomalizedChars) {
if (!isNaN(char)) {
Expand Down
82 changes: 82 additions & 0 deletions js/main.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
const PHOTO_DESCRIPTION_COUNT = 25;

const NAMES = [
'Настя_yellow',
'Kate',
'Иван',
'Маша',
'Olly_Sunshine',
'Женя',
'Олег',
'Кирилл Ivanov',
'Alex'
];
const DESCRIPTIONS = [
'Прекрасный день!',
'Новая фотография для альбома.',
'Делюсь своими впечатлениями.',
'Захватывающее место!',
'Это был незабываемый момент.',
'Доброе утро, Мир!',
'Всем хорошего дня и прекрасного настроения.',
];

const MESSAGES = [
'Всё отлично!',
'В целом всё неплохо. Но не всё.',
'Когда вы делаете фотографию, хорошо бы убирать палец из кадра. В конце концов это просто непрофессионально',
'Моя бабушка случайно чихнула с фотоаппаратом в руках и у неё получилась фотография лучше.',
'Я поскользнулся на банановой кожуре и уронил фотоаппарат на кота и у меня получилась фотография лучше.',
'Лица у людей на фотке перекошены, как будто их избивают. Как можно было поймать такой неудачный момент?!'
];

// Генерация уникального ID
const getIdGenerator = () => {
let id = 0;
return function () {
id ++;
return id;
};
};

const photoId = getIdGenerator();
const commentId = getIdGenerator();

// Генерация случайного числа в диапазоне
const getRandomInteger = (a, b) => {
const lower = Math.ceil(Math.min(a, b));
const upper = Math.floor(Math.max(a, b));
const result = Math.random() * (upper - lower + 1) + lower;
return Math.floor(result);
};

const likesCount = getRandomInteger(15, 200);

// Получение случайного элемента массива
const getRandomArrayElement = (elements) => elements[getRandomInteger(0, elements.length - 1)];

// Генерация одного комментария
const generateComment = () => ({
id: commentId(),
avatar: `img/avatar-${getRandomInteger(1, 6)}.svg`,
message: `${getRandomArrayElement(MESSAGES)}`,
name: `${getRandomArrayElement(NAMES)}`,
});

// Генерация массива комментариев
const generateComments = () => {
const commentsCount = getRandomInteger(0, 30);
return Array.from({length: commentsCount}, generateComment);
};

// Генерация одного описания фотографии
const generatePhotoDescription = () => ({
id: photoId(),
url: `photos/${photoId()}.jpg`,
description: `${getRandomArrayElement(DESCRIPTIONS)}`,
likes: likesCount,
comments: generateComments(),
});

// Генерация массива описаний фотографий
const photoDescriptions = Array.from({length: PHOTO_DESCRIPTION_COUNT}, generatePhotoDescription);

Check failure on line 82 in js/main.js

View workflow job for this annotation

GitHub Actions / Check

'photoDescriptions' is assigned a value but never used

0 comments on commit 257c7be

Please sign in to comment.