Merge branch 'master' of gitlab.prodcontest.ru:team-15/project

This commit is contained in:
ITQ
2025-03-04 03:50:45 +03:00
4 changed files with 86 additions and 3 deletions
+79
View File
@@ -0,0 +1,79 @@
# Креды для DATARUSH
Найдите номер набора на вашей карточке(слева вверху)
#### Администратор
- Логин: `admin`
- Пароль: `prooooooood`
- Ссылка: https://clck.ru/3GkMoo
### Набор 1
#### Участник
- Почта: germanivanov1984@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjrtg
### Набор 2
#### Участник
- Почта: dreamonovich@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjs9y
### Набор 3
#### Участник
- Почта: alisa.kuznetsova@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjsDq
### Набор 4
#### Участник
- Почта: ivan.petrov@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjsK3
### Набор 5
#### Участник
- Почта: olga.sidorova@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjrtg
### Набор 6
#### Участник
- Почта: karim@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjsa3
### Набор 7
#### Участник
- Почта: noble@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjsq2
### Набор 8
#### Участник
- Почта: koller@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3Gjt7n
### Набор 9
#### Участник
- Почта: gold_checker@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjtBp
### Набор 10
#### Участник
- Почта: looka@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjtLv
### Набор 11
#### Участник
- Почта: danil_malikov@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjtMh
### Набор 12
#### Участник
- Почта: marina-looks@gmail.com
- Пароль: `password123!`
#### Ревьювер
Ссылка: https://clck.ru/3GjtNP
@@ -74,7 +74,11 @@ const TaskContent: React.FC<TaskContentProps> = ({ task }) => {
const getFileNameFromUrl = (url: string): string => {
try {
const parts = url.split('/');
return parts[parts.length - 1];
const fullFileName = parts[parts.length - 1]
const fileName = fullFileName.length > 20
? fullFileName.substring(0, 20) + '...'
: fullFileName;
return fileName;
} catch (e) {
return 'Файл';
}
@@ -35,7 +35,7 @@ const ActionButtons: React.FC<ActionButtonsProps> = ({
>
Задача сдана!
</Button>
) : hasSubmissionsLeft ? (
) : hasSubmissionsLeft? (
<Button
onClick={onSubmit}
className="font-hse-sans flex-grow"
@@ -51,7 +51,7 @@ const TaskSolution: React.FC<TaskSolutionProps> = ({
const maxAttempts = task.max_attempts || -1;
const submissionsUsed = solutionHistory.length;
const submissionsLeft = Math.max(0, maxAttempts - submissionsUsed);
const hasSubmissionsLeft = submissionsLeft > 0;
const hasSubmissionsLeft = submissionsLeft > 0 || maxAttempts === -1;
useEffect(() => {
if (solutionHistory.length > 0 && !displayedSolution) {