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 => { const getFileNameFromUrl = (url: string): string => {
try { try {
const parts = url.split('/'); 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) { } catch (e) {
return 'Файл'; return 'Файл';
} }
@@ -35,7 +35,7 @@ const ActionButtons: React.FC<ActionButtonsProps> = ({
> >
Задача сдана! Задача сдана!
</Button> </Button>
) : hasSubmissionsLeft ? ( ) : hasSubmissionsLeft? (
<Button <Button
onClick={onSubmit} onClick={onSubmit}
className="font-hse-sans flex-grow" className="font-hse-sans flex-grow"
@@ -51,7 +51,7 @@ const TaskSolution: React.FC<TaskSolutionProps> = ({
const maxAttempts = task.max_attempts || -1; const maxAttempts = task.max_attempts || -1;
const submissionsUsed = solutionHistory.length; const submissionsUsed = solutionHistory.length;
const submissionsLeft = Math.max(0, maxAttempts - submissionsUsed); const submissionsLeft = Math.max(0, maxAttempts - submissionsUsed);
const hasSubmissionsLeft = submissionsLeft > 0; const hasSubmissionsLeft = submissionsLeft > 0 || maxAttempts === -1;
useEffect(() => { useEffect(() => {
if (solutionHistory.length > 0 && !displayedSolution) { if (solutionHistory.length > 0 && !displayedSolution) {