470 lines
37 KiB
HTML
470 lines
37 KiB
HTML
<!DOCTYPE html><html class="dark" lang="ru"><head><meta charset="utf-8"><meta content="width=device-width, initial-scale=1.0" name="viewport"><meta content="web_dashboard" name="shell-type"><link href="https://fonts.googleapis.com" rel="preconnect"><link crossorigin="" href="https://fonts.gstatic.com" rel="preconnect"><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet"><link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200" rel="stylesheet">
|
||
<link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap" rel="stylesheet"><style>@layer base{html,body{margin:0;padding:0;}body{overscroll-behavior:none;}main>:first-child{margin-top:0!important;}main>:last-child{margin-bottom:0!important;}}::-webkit-scrollbar{display:none;}</style><script src="https://cdn.tailwindcss.com"></script><script id="tailwind-config">tailwind.config={darkMode:"class",theme:{extend:{"colors":{"error":"#ffb4ab","on-primary-container":"#0d0096","secondary":"#4cd7f6","primary-fixed":"#e1e0ff","primary":"#c0c1ff","on-background":"#dce2f7","surface-container-lowest":"#070e1d","outline-variant":"#464554","surface-container-high":"#232a3a","surface-container-low":"#141b2b","on-secondary-fixed":"#001f26","on-secondary-fixed-variant":"#004e5c","surface-container-highest":"#2e3545","tertiary":"#4edea3","on-surface":"#dce2f7","on-secondary":"#003640","surface-container":"#191f2f","surface-dim":"#0c1322","on-error":"#690005","secondary-fixed-dim":"#4cd7f6","secondary-container":"#03b5d3","inverse-on-surface":"#293040","on-primary-fixed-variant":"#2f2ebe","surface-bright":"#323949","on-tertiary":"#003824","tertiary-fixed-dim":"#4edea3","on-tertiary-container":"#000703","surface":"#0c1322","inverse-surface":"#dce2f7","surface-tint":"#c0c1ff","on-surface-variant":"#c7c4d7","on-error-container":"#ffdad6","secondary-fixed":"#acedff","on-primary":"#1000a9","primary-fixed-dim":"#c0c1ff","on-tertiary-fixed-variant":"#005236","surface-variant":"#2e3545","on-secondary-container":"#00424e","inverse-primary":"#494bd6","error-container":"#93000a","tertiary-container":"#00885d","outline":"#908fa0","tertiary-fixed":"#6ffbbe","primary-container":"#8083ff","on-tertiary-fixed":"#002113","on-primary-fixed":"#07006c","background":"#0c1322"},"borderRadius":{"DEFAULT":"0.25rem","lg":"0.5rem","xl":"0.75rem","full":"9999px"},"spacing":{"space-md":"1rem","gutter":"1.5rem","space-xl":"2rem","margin-sm":"1rem","space-lg":"1.5rem","space-xs":"0.25rem","gutter-sm":"1rem","margin":"2rem","space-sm":"0.5rem"},"fontFamily":{"label-sm":["Inter"],"body-lg":["Inter"],"label-lg":["Inter"],"body-sm":["Inter"],"headline-sm":["Inter"],"body-md":["Inter"],"display-lg-mobile":["Inter"],"headline-lg":["Inter"],"display-lg":["Inter"],"label-md":["Inter"],"headline-md":["Inter"]},"fontSize":{"label-sm":["11px",{"lineHeight":"14px","letterSpacing":"0.04em","fontWeight":"600"}],"body-lg":["16px",{"lineHeight":"26px","fontWeight":"400"}],"label-lg":["14px",{"lineHeight":"20px","fontWeight":"500"}],"body-sm":["12px",{"lineHeight":"18px","fontWeight":"400"}],"headline-sm":["18px",{"lineHeight":"26px","fontWeight":"600"}],"body-md":["14px",{"lineHeight":"22px","fontWeight":"400"}],"display-lg-mobile":["30px",{"lineHeight":"38px","letterSpacing":"-0.02em","fontWeight":"700"}],"headline-lg":["28px",{"lineHeight":"36px","letterSpacing":"-0.015em","fontWeight":"600"}],"display-lg":["40px",{"lineHeight":"48px","letterSpacing":"-0.02em","fontWeight":"700"}],"label-md":["12px",{"lineHeight":"16px","fontWeight":"500"}],"headline-md":["22px",{"lineHeight":"30px","letterSpacing":"-0.01em","fontWeight":"600"}]}}}}</script></head><body class="bg-background font-body-md text-body-md text-on-surface antialiased"><aside class="fixed left-0 top-0 h-full w-72 bg-surface-container-lowest z-50 flex flex-col justify-between shadow-[0_1px_8px_rgba(0,0,0,0.4)]"><div class="flex flex-col"><div class="h-16 px-space-lg flex items-center gap-space-sm bg-surface-container-low"><div class="w-9 h-9 rounded-lg bg-primary-container flex items-center justify-center text-on-primary-container font-headline-sm text-headline-sm"><span class="material-symbols-outlined text-[20px]">terminal</span></div><div class="flex flex-col"><span class="font-label-lg text-label-lg text-on-surface leading-tight">Администрирование</span><span class="font-label-sm text-label-sm text-on-surface-variant tracking-wider">DJANGO ЕГЭ LMS</span></div></div><div class="px-space-md py-space-sm"><div class="flex items-center justify-between px-space-sm py-space-xs rounded-lg bg-surface-container"><div class="flex items-center gap-space-sm"><span class="material-symbols-outlined text-[16px] text-tertiary">database</span><span class="font-label-sm text-label-sm text-on-surface-variant">Окружение: Prod</span></div><span class="font-label-sm text-label-sm text-tertiary bg-surface-container-high px-space-xs py-0.5 rounded">v5.1</span></div></div><nav class="flex flex-col px-space-sm gap-y-space-xs" data-active-classes="bg-surface-container-high text-primary font-label-lg"><div class="pt-space-sm pb-space-xs px-space-sm font-label-sm text-label-sm text-outline uppercase tracking-wider">Обучение (LMS)</div><a aria-current="page" class="flex items-center justify-between px-space-md py-space-sm rounded-lg transition-all group bg-surface-container-high text-primary font-label-lg" data-path="tasks-list" href="#"><div class="flex items-center gap-space-sm"><span class="material-symbols-outlined text-[18px] group-hover:text-primary transition-colors">assignment</span><span class="font-label-md text-label-md">Задания</span></div><span class="font-label-sm text-label-sm bg-surface-container-highest px-space-xs py-0.5 rounded text-on-surface-variant">482</span></a><a class="flex items-center justify-between px-space-md py-space-sm rounded-lg text-on-surface-variant hover:bg-surface-container hover:text-on-surface transition-all group" data-path="student-answers" href="#"><div class="flex items-center gap-space-sm"><span class="material-symbols-outlined text-[18px] group-hover:text-secondary transition-colors">rate_review</span><span class="font-label-md text-label-md">Ответы учеников</span></div><span class="font-label-sm text-label-sm bg-secondary-container text-on-secondary px-space-xs py-0.5 rounded font-bold">+19</span></a><a class="flex items-center justify-between px-space-md py-space-sm rounded-lg text-on-surface-variant hover:bg-surface-container hover:text-on-surface transition-all group" data-path="subjects-catalog" href="#"><div class="flex items-center gap-space-sm"><span class="material-symbols-outlined text-[18px] group-hover:text-tertiary transition-colors">menu_book</span><span class="font-label-md text-label-md">Предметы</span></div><span class="font-label-sm text-label-sm bg-surface-container-highest px-space-xs py-0.5 rounded text-on-surface-variant">8</span></a><div class="pt-space-md pb-space-xs px-space-sm font-label-sm text-label-sm text-outline uppercase tracking-wider">Пользователи</div><a class="flex items-center justify-between px-space-md py-space-sm rounded-lg text-on-surface-variant hover:bg-surface-container hover:text-on-surface transition-all group" data-path="users-management" href="#"><div class="flex items-center gap-space-sm"><span class="material-symbols-outlined text-[18px] group-hover:text-primary transition-colors">group</span><span class="font-label-md text-label-md">Пользователи</span></div><span class="font-label-sm text-label-sm bg-surface-container-highest px-space-xs py-0.5 rounded text-on-surface-variant">1,420</span></a></nav></div><div class="p-space-md bg-surface-container-lowest flex flex-col gap-space-sm"><div class="flex items-center justify-between px-space-sm py-space-xs text-outline-variant hover:text-on-surface transition-colors cursor-pointer"><div class="flex items-center gap-space-xs"><span class="material-symbols-outlined text-[16px]">code</span><span class="font-body-sm text-body-sm">Django 5.1.2</span></div><span class="material-symbols-outlined text-[16px]">keyboard_double_arrow_left</span></div></div></aside><div class="pl-72"><header class="fixed top-0 left-72 right-0 h-16 bg-surface/85 backdrop-blur-xl shadow-[0_1px_8px_rgba(0,0,0,0.3)] z-40 px-gutter flex items-center justify-between"><div class="flex items-center gap-space-md"><button class="p-space-xs text-on-surface-variant hover:text-on-surface rounded-lg hover:bg-surface-container-high transition-colors" type="button"><span class="material-symbols-outlined text-[22px]">menu</span></button><div class="flex items-center gap-space-xs"><span class="font-label-sm text-label-sm text-on-surface-variant uppercase tracking-wider">Django Admin</span><span class="text-outline-variant font-label-sm">/</span><span class="font-label-md text-label-md text-on-surface">ЕГЭ LMS Панель управления</span></div></div><div class="flex items-center gap-space-md"><a class="flex items-center gap-space-xs px-space-sm py-space-xs rounded-lg text-on-surface-variant hover:bg-surface-container hover:text-on-surface transition-all" href="#"><span class="material-symbols-outlined text-[18px] text-secondary">open_in_new</span><span class="font-label-md text-label-md">Смотреть сайт LMS</span></a><button class="p-space-xs text-on-surface-variant hover:text-on-surface rounded-lg hover:bg-surface-container transition-colors" title="Переключить вид" type="button"><span class="material-symbols-outlined text-[20px]">view_quilt</span></button><div class="h-6 w-px bg-surface-container-highest"></div><div class="flex items-center gap-space-sm pl-space-xs"><div class="w-8 h-8 rounded-full bg-primary flex items-center justify-center"><span class="material-symbols-outlined text-on-primary text-[18px]">person</span></div><div class="flex flex-col"><span class="font-label-md text-label-md text-on-surface font-semibold">Dimong</span><span class="font-label-sm text-label-sm text-tertiary">Superuser</span></div></div><a class="flex items-center gap-space-xs px-space-sm py-space-xs text-on-surface-variant hover:text-error hover:bg-surface-container rounded-lg transition-colors ml-space-xs" data-path="login" href="#" title="Выйти"><span class="material-symbols-outlined text-[20px]">logout</span><span class="font-label-md text-label-md hidden md:inline">Выйти</span></a></div></header><main class="w-full pt-16 px-gutter py-space-lg bg-background min-h-screen"><div class="flex flex-col w-full gap-y-space-lg">
|
||
<div class="flex flex-col gap-y-space-xs">
|
||
<nav class="flex items-center gap-space-xs text-on-surface-variant font-label-sm text-label-sm">
|
||
<a class="hover:text-primary transition-colors flex items-center gap-1" href="#">
|
||
<span class="material-symbols-outlined text-[15px]">home</span>
|
||
<span class="">Начало</span>
|
||
</a>
|
||
<span class="text-outline-variant">/</span>
|
||
<span class="hover:text-primary transition-colors cursor-pointer">Обучение (LMS)</span>
|
||
<span class="text-outline-variant">/</span>
|
||
<span class="text-on-surface font-semibold">Задания</span>
|
||
</nav>
|
||
<div class="flex flex-col md:flex-row md:items-center justify-between gap-space-md pt-space-xs">
|
||
<div>
|
||
<h1 class="font-headline-lg text-headline-lg text-on-surface tracking-tight">Выберите Задание для изменения</h1>
|
||
<p class="font-body-sm text-body-sm text-on-surface-variant mt-0.5">Управление банком задач, временными лимитами и сроками сдачи курсов ЕГЭ</p>
|
||
</div>
|
||
<div class="flex items-center gap-space-sm">
|
||
<button class="flex items-center gap-space-xs px-space-md py-2.5 rounded-lg bg-surface-container-high hover:bg-surface-container-highest text-on-surface font-label-md text-label-md transition-all shadow-sm" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">file_download</span>
|
||
<span class="">Экспорт CSV</span>
|
||
</button>
|
||
<button class="flex items-center gap-space-xs px-space-lg py-2.5 rounded-lg bg-primary text-on-primary font-label-lg text-label-lg hover:bg-primary-fixed-dim transition-all shadow-md active:scale-95" type="button">
|
||
<span class="material-symbols-outlined text-[20px]">add</span>
|
||
<span class="">Добавить Задание</span>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="grid grid-cols-1 sm:grid-cols-2 xl:grid-cols-4 gap-space-md">
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex items-center justify-between shadow-sm">
|
||
<div class="flex flex-col">
|
||
<span class="font-label-sm text-label-sm text-on-surface-variant uppercase tracking-wider">Всего заданий</span>
|
||
<span class="font-headline-md text-headline-md text-on-surface font-bold mt-1">482</span>
|
||
<span class="font-body-sm text-body-sm text-tertiary flex items-center gap-0.5 mt-0.5">
|
||
<span class="material-symbols-outlined text-[14px]">trending_up</span> +12 за неделю
|
||
</span>
|
||
</div>
|
||
<div class="w-12 h-12 rounded-lg bg-surface-container flex items-center justify-center text-primary">
|
||
<span class="material-symbols-outlined text-[24px]">assignment</span>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex items-center justify-between shadow-sm">
|
||
<div class="flex flex-col">
|
||
<span class="font-label-sm text-label-sm text-on-surface-variant uppercase tracking-wider">Опубликовано</span>
|
||
<span class="font-headline-md text-headline-md text-secondary font-bold mt-1">439</span>
|
||
<span class="font-body-sm text-body-sm text-on-surface-variant mt-0.5">91% доступно</span>
|
||
</div>
|
||
<div class="w-12 h-12 rounded-lg bg-surface-container flex items-center justify-center text-secondary">
|
||
<span class="material-symbols-outlined text-[24px]">verified</span>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex items-center justify-between shadow-sm">
|
||
<div class="flex flex-col">
|
||
<span class="font-label-sm text-label-sm text-on-surface-variant uppercase tracking-wider">В черновиках</span>
|
||
<span class="font-headline-md text-headline-md text-outline font-bold mt-1">43</span>
|
||
<span class="font-body-sm text-body-sm text-on-surface-variant mt-0.5">Требуют ревью</span>
|
||
</div>
|
||
<div class="w-12 h-12 rounded-lg bg-surface-container flex items-center justify-center text-outline">
|
||
<span class="material-symbols-outlined text-[24px]">edit_note</span>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex items-center justify-between shadow-sm">
|
||
<div class="flex flex-col">
|
||
<span class="font-label-sm text-label-sm text-on-surface-variant uppercase tracking-wider">Ответов на проверке</span>
|
||
<span class="font-headline-md text-headline-md text-tertiary font-bold mt-1">19</span>
|
||
<span class="font-body-sm text-body-sm text-secondary flex items-center gap-0.5 mt-0.5">
|
||
<span class="material-symbols-outlined text-[14px]">schedule</span> Ожидают куратора
|
||
</span>
|
||
</div>
|
||
<div class="w-12 h-12 rounded-lg bg-surface-container flex items-center justify-center text-tertiary">
|
||
<span class="material-symbols-outlined text-[24px]">rate_review</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low rounded-xl p-space-md flex flex-col lg:flex-row items-stretch lg:items-center justify-between gap-space-md shadow-sm">
|
||
<div class="flex flex-col sm:flex-row items-stretch sm:items-center gap-space-sm flex-1">
|
||
<div class="relative flex-1 min-w-[260px]">
|
||
<span class="material-symbols-outlined absolute left-3 top-1/2 -translate-y-1/2 text-outline text-[18px]">search</span>
|
||
<input class="w-full bg-surface-container text-on-surface placeholder:text-outline pl-9 pr-4 py-2 rounded-lg text-body-md font-body-md focus:outline-none focus:bg-surface-container-high transition-colors" id="task-search-input" placeholder="Поиск по названию или предмету..." type="text">
|
||
</div>
|
||
<div class="flex items-center gap-space-xs bg-surface-container px-space-sm py-1.5 rounded-lg">
|
||
<span class="material-symbols-outlined text-outline text-[18px]">bolt</span>
|
||
<select class="bg-transparent text-on-surface font-label-md text-label-md focus:outline-none cursor-pointer pr-2" id="action-select">
|
||
<option class="bg-surface-container-high text-on-surface" value="">Действие: Выберите действие...</option>
|
||
<option class="bg-surface-container-high text-error" value="delete">Удалить выбранные Задания</option>
|
||
<option class="bg-surface-container-high text-on-surface" value="publish">Опубликовать выбранные</option>
|
||
<option class="bg-surface-container-high text-on-surface" value="unpublish">Снять с публикации</option>
|
||
<option class="bg-surface-container-high text-on-surface" value="duplicate">Дублировать структуры</option>
|
||
</select>
|
||
<button class="px-space-sm py-1 bg-surface-container-highest hover:bg-primary hover:text-on-primary text-on-surface rounded text-label-sm font-label-sm transition-colors" type="button">
|
||
Выполнить
|
||
</button>
|
||
</div>
|
||
</div>
|
||
<div class="flex items-center justify-between lg:justify-end gap-space-md">
|
||
<div class="flex items-center gap-space-xs px-space-sm py-1.5 bg-surface-container rounded-lg">
|
||
<span class="material-symbols-outlined text-secondary text-[16px]">check_circle</span>
|
||
<span class="font-label-sm text-label-sm text-on-surface-variant font-medium" id="selected-counter">Выбрано 0 из 4</span>
|
||
</div>
|
||
<div class="flex items-center gap-space-xs">
|
||
<button class="flex items-center gap-space-xs px-space-md py-2 rounded-lg bg-surface-container hover:bg-surface-container-high text-on-surface font-label-md text-label-md transition-colors" type="button">
|
||
<span class="material-symbols-outlined text-[18px] text-secondary">filter_alt</span>
|
||
<span class="">Фильтры</span>
|
||
<span class="px-1.5 py-0.5 rounded-full bg-secondary-container text-on-secondary font-bold text-label-sm font-label-sm">3</span>
|
||
</button>
|
||
<button class="p-2 rounded-lg bg-surface-container hover:bg-surface-container-high text-on-surface-variant hover:text-on-surface transition-colors" title="Сбросить порядок" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">restart_alt</span>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low rounded-xl overflow-hidden shadow-sm flex flex-col">
|
||
<div class="overflow-x-auto">
|
||
<table class="w-full text-left border-collapse">
|
||
<thead>
|
||
<tr class="bg-surface-container text-outline font-label-sm text-label-sm uppercase tracking-wider select-none">
|
||
<th class="py-3.5 px-space-md w-10 text-center">
|
||
<input class="w-4 h-4 rounded bg-surface-container-highest accent-primary cursor-pointer align-middle" id="master-checkbox" type="checkbox">
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors">
|
||
<div class="flex items-center gap-1.5">
|
||
<span class="">Название задания</span>
|
||
<span class="material-symbols-outlined text-[16px] text-primary">arrow_upward</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors">
|
||
<div class="flex items-center gap-1.5">
|
||
<span class="">Предмет</span>
|
||
<span class="material-symbols-outlined text-[16px] opacity-40">unfold_more</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors text-center">
|
||
<div class="flex items-center justify-center gap-1.5">
|
||
<span class="">Опубликовано</span>
|
||
<span class="material-symbols-outlined text-[16px] opacity-40">unfold_more</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors text-right">
|
||
<div class="flex items-center justify-end gap-1.5">
|
||
<span class="">Лимит (мин)</span>
|
||
<span class="material-symbols-outlined text-[16px] opacity-40">unfold_more</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors">
|
||
<div class="flex items-center gap-1.5">
|
||
<span class="">Дедлайн</span>
|
||
<span class="material-symbols-outlined text-[16px] opacity-40">unfold_more</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md cursor-pointer hover:text-on-surface transition-colors">
|
||
<div class="flex items-center gap-1.5">
|
||
<span class="">Дата создания</span>
|
||
<span class="material-symbols-outlined text-[16px] opacity-40">unfold_more</span>
|
||
</div>
|
||
</th>
|
||
<th class="py-3.5 px-space-md text-right">Действия</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody class="divide-y-0 text-body-md font-body-md text-on-surface">
|
||
<tr class="hover:bg-surface-container/60 transition-colors group cursor-pointer">
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<input class="task-row-checkbox w-4 h-4 rounded bg-surface-container-highest accent-primary cursor-pointer align-middle" type="checkbox">
|
||
</td>
|
||
<td class="py-3.5 px-space-md font-label-lg text-label-lg font-semibold text-primary group-hover:underline">
|
||
<div class="flex items-center gap-space-xs">
|
||
<span class="material-symbols-outlined text-[18px] text-primary">terminal</span>
|
||
<a class="text-on-surface group-hover:text-primary transition-colors" href="#">Входной контроль по информатике</a>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md">
|
||
<span class="inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full font-label-sm text-label-sm bg-secondary-container/20 text-secondary">
|
||
<span class="w-1.5 h-1.5 rounded-full bg-secondary"></span>
|
||
Информатика
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<span class="inline-flex items-center gap-1 px-2 py-0.5 rounded bg-surface-container-high text-tertiary font-label-sm text-label-sm">
|
||
<span class="w-2 h-2 rounded-full bg-tertiary"></span>
|
||
True
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right font-semibold text-on-surface">
|
||
235
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
<div class="flex items-center gap-1">
|
||
<span class="material-symbols-outlined text-[15px] text-outline">event</span>
|
||
<span class="">20 сентября 2026 г. 17:00</span>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
19 сентября 2026 г. 18:25
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right">
|
||
<div class="flex items-center justify-end gap-1">
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-primary transition-colors" title="Редактировать" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">edit</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-secondary transition-colors" title="Просмотр" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">visibility</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-error transition-colors" title="Удалить" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">delete</span>
|
||
</button>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr class="bg-surface-container-low/40 hover:bg-surface-container/60 transition-colors group cursor-pointer">
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<input class="task-row-checkbox w-4 h-4 rounded bg-surface-container-highest accent-primary cursor-pointer align-middle" type="checkbox">
|
||
</td>
|
||
<td class="py-3.5 px-space-md font-label-lg text-label-lg font-semibold text-on-surface group-hover:text-primary">
|
||
<div class="flex items-center gap-space-xs">
|
||
<span class="material-symbols-outlined text-[18px] text-outline">rule</span>
|
||
<a class="text-on-surface group-hover:text-primary transition-colors" href="#">Задание №2. Таблицы истинности и логические функции</a>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md">
|
||
<span class="inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full font-label-sm text-label-sm bg-secondary-container/20 text-secondary">
|
||
<span class="w-1.5 h-1.5 rounded-full bg-secondary"></span>
|
||
Информатика
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<span class="inline-flex items-center gap-1 px-2 py-0.5 rounded bg-surface-container-high text-tertiary font-label-sm text-label-sm">
|
||
<span class="w-2 h-2 rounded-full bg-tertiary"></span>
|
||
True
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right font-semibold text-on-surface">
|
||
120
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
<div class="flex items-center gap-1">
|
||
<span class="material-symbols-outlined text-[15px] text-outline">event</span>
|
||
<span class="">24 сентября 2026 г. 23:59</span>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
21 сентября 2026 г. 10:15
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right">
|
||
<div class="flex items-center justify-end gap-1">
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-primary transition-colors" title="Редактировать" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">edit</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-secondary transition-colors" title="Просмотр" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">visibility</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-error transition-colors" title="Удалить" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">delete</span>
|
||
</button>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr class="hover:bg-surface-container/60 transition-colors group cursor-pointer">
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<input class="task-row-checkbox w-4 h-4 rounded bg-surface-container-highest accent-primary cursor-pointer align-middle" type="checkbox">
|
||
</td>
|
||
<td class="py-3.5 px-space-md font-label-lg text-label-lg font-semibold text-on-surface group-hover:text-primary">
|
||
<div class="flex items-center gap-space-xs">
|
||
<span class="material-symbols-outlined text-[18px] text-outline">hub</span>
|
||
<a class="text-on-surface group-hover:text-primary transition-colors" href="#">Задание №1. Анализ информационных моделей и графов</a>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md">
|
||
<span class="inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full font-label-sm text-label-sm bg-secondary-container/20 text-secondary">
|
||
<span class="w-1.5 h-1.5 rounded-full bg-secondary"></span>
|
||
Информатика
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<span class="inline-flex items-center gap-1 px-2 py-0.5 rounded bg-surface-container-high text-tertiary font-label-sm text-label-sm">
|
||
<span class="w-2 h-2 rounded-full bg-tertiary"></span>
|
||
True
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right font-semibold text-on-surface">
|
||
90
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
<div class="flex items-center gap-1">
|
||
<span class="material-symbols-outlined text-[15px] text-outline">event</span>
|
||
<span class="">18 сентября 2026 г. 20:00</span>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
15 сентября 2026 г. 14:00
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right">
|
||
<div class="flex items-center justify-end gap-1">
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-primary transition-colors" title="Редактировать" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">edit</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-secondary transition-colors" title="Просмотр" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">visibility</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-error transition-colors" title="Удалить" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">delete</span>
|
||
</button>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<tr class="bg-surface-container-low/40 hover:bg-surface-container/60 transition-colors group cursor-pointer">
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<input class="task-row-checkbox w-4 h-4 rounded bg-surface-container-highest accent-primary cursor-pointer align-middle" type="checkbox">
|
||
</td>
|
||
<td class="py-3.5 px-space-md font-label-lg text-label-lg font-semibold text-on-surface group-hover:text-primary">
|
||
<div class="flex items-center gap-space-xs">
|
||
<span class="material-symbols-outlined text-[18px] text-outline">calculate</span>
|
||
<a class="text-on-surface group-hover:text-primary transition-colors" href="#">Пробный вариант ЕГЭ №1 (Базовый уровень)</a>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md">
|
||
<span class="inline-flex items-center gap-1 px-2.5 py-0.5 rounded-full font-label-sm text-label-sm bg-primary-container/20 text-primary">
|
||
<span class="w-1.5 h-1.5 rounded-full bg-primary"></span>
|
||
Математика
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-center">
|
||
<span class="inline-flex items-center gap-1 px-2 py-0.5 rounded bg-surface-container-high text-error font-label-sm text-label-sm">
|
||
<span class="w-2 h-2 rounded-full bg-error"></span>
|
||
False
|
||
</span>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right font-semibold text-on-surface">
|
||
180
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
<div class="flex items-center gap-1">
|
||
<span class="material-symbols-outlined text-[15px] text-outline">event</span>
|
||
<span class="">30 сентября 2026 г. 18:00</span>
|
||
</div>
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-on-surface-variant font-label-md text-label-md">
|
||
22 сентября 2026 г. 12:00
|
||
</td>
|
||
<td class="py-3.5 px-space-md text-right">
|
||
<div class="flex items-center justify-end gap-1">
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-primary transition-colors" title="Редактировать" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">edit</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-secondary transition-colors" title="Просмотр" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">visibility</span>
|
||
</button>
|
||
<button class="p-1 rounded hover:bg-surface-container-highest text-on-surface-variant hover:text-error transition-colors" title="Удалить" type="button">
|
||
<span class="material-symbols-outlined text-[18px]">delete</span>
|
||
</button>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
<div class="bg-surface-container px-space-md py-3 flex flex-col sm:flex-row items-center justify-between gap-space-sm font-label-sm text-label-sm text-on-surface-variant select-none">
|
||
<div class="flex items-center gap-space-md">
|
||
<span class="font-semibold text-on-surface">4 Задания всего</span>
|
||
<span class="text-outline-variant">•</span>
|
||
<span class="">Отображено: 1 - 4 из 4</span>
|
||
</div>
|
||
<div class="flex items-center gap-space-xs">
|
||
<button class="px-2.5 py-1 rounded bg-surface-container-high text-outline cursor-not-allowed flex items-center" disabled="" type="button">
|
||
<span class="material-symbols-outlined text-[16px]">chevron_left</span>
|
||
<span class="">Назад</span>
|
||
</button>
|
||
<span class="px-2.5 py-1 rounded bg-primary text-on-primary font-bold">1</span>
|
||
<button class="px-2.5 py-1 rounded bg-surface-container-high text-outline cursor-not-allowed flex items-center" disabled="" type="button">
|
||
<span class="">Вперед</span>
|
||
<span class="material-symbols-outlined text-[16px]">chevron_right</span>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="grid grid-cols-1 lg:grid-cols-3 gap-space-md">
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex flex-col gap-space-sm">
|
||
<div class="flex items-center justify-between">
|
||
<span class="font-label-md text-label-md text-on-surface font-semibold">Быстрый фильтр по предметам</span>
|
||
<span class="material-symbols-outlined text-[18px] text-tertiary">category</span>
|
||
</div>
|
||
<div class="flex flex-wrap gap-1.5 pt-1">
|
||
<button class="px-space-sm py-1 rounded-lg bg-surface-container-highest text-primary font-label-sm text-label-sm hover:bg-surface-container transition-colors">
|
||
Информатика (3)
|
||
</button>
|
||
<button class="px-space-sm py-1 rounded-lg bg-surface-container-high text-on-surface-variant font-label-sm text-label-sm hover:bg-surface-container transition-colors">
|
||
Математика (1)
|
||
</button>
|
||
<button class="px-space-sm py-1 rounded-lg bg-surface-container-high text-on-surface-variant font-label-sm text-label-sm hover:bg-surface-container transition-colors">
|
||
Физика (0)
|
||
</button>
|
||
<button class="px-space-sm py-1 rounded-lg bg-surface-container-high text-on-surface-variant font-label-sm text-label-sm hover:bg-surface-container transition-colors">
|
||
Русский язык (0)
|
||
</button>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex flex-col gap-space-sm">
|
||
<div class="flex items-center justify-between">
|
||
<span class="font-label-md text-label-md text-on-surface font-semibold">Статистика выполнения</span>
|
||
<span class="material-symbols-outlined text-[18px] text-secondary">donut_large</span>
|
||
</div>
|
||
<div class="flex items-center gap-space-md pt-1">
|
||
<svg class="w-12 h-12 -rotate-90" viewBox="0 0 36 36">
|
||
<path class="text-surface-container-highest stroke-current" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831" fill="none" stroke-width="3.5"></path>
|
||
<path class="text-secondary stroke-current" d="M18 2.0845 a 15.9155 15.9155 0 0 1 0 31.831 a 15.9155 15.9155 0 0 1 0 -31.831" fill="none" stroke-dasharray="75, 100" stroke-linecap="round" stroke-width="3.5"></path>
|
||
</svg>
|
||
<div class="flex flex-col">
|
||
<span class="font-headline-sm text-headline-sm text-on-surface font-bold leading-none">75%</span>
|
||
<span class="font-body-sm text-body-sm text-on-surface-variant mt-1">Средний балл по заданиям</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="bg-surface-container-low p-space-md rounded-xl flex flex-col justify-between">
|
||
<div class="flex items-center justify-between">
|
||
<span class="font-label-md text-label-md text-on-surface font-semibold">Интеграция с Telegram</span>
|
||
<span class="material-symbols-outlined text-[18px] text-primary">send</span>
|
||
</div>
|
||
<p class="font-body-sm text-body-sm text-on-surface-variant">Оповещения об открытии дедлайнов отправляются ученикам автоматически за 2 часа.</p>
|
||
<div class="flex items-center justify-between pt-1">
|
||
<span class="font-label-sm text-label-sm text-tertiary flex items-center gap-1">
|
||
<span class="w-2 h-2 rounded-full bg-tertiary"></span> Бот активен
|
||
</span>
|
||
<a class="font-label-sm text-label-sm text-primary hover:underline" href="#">Настроить</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script>
|
||
(function() {
|
||
const masterCheckbox = document.getElementById('master-checkbox');
|
||
const rowCheckboxes = document.querySelectorAll('.task-row-checkbox');
|
||
const selectedCounter = document.getElementById('selected-counter');
|
||
const searchInput = document.getElementById('task-search-input');
|
||
const tableRows = document.querySelectorAll('tbody tr');
|
||
|
||
function updateCounter() {
|
||
const checkedCount = document.querySelectorAll('.task-row-checkbox:checked').length;
|
||
selectedCounter.textContent = 'Выбрано ' + checkedCount + ' из ' + rowCheckboxes.length;
|
||
if (masterCheckbox) {
|
||
masterCheckbox.checked = checkedCount === rowCheckboxes.length && rowCheckboxes.length > 0;
|
||
masterCheckbox.indeterminate = checkedCount > 0 && checkedCount < rowCheckboxes.length;
|
||
}
|
||
}
|
||
|
||
if (masterCheckbox) {
|
||
masterCheckbox.addEventListener('change', function() {
|
||
rowCheckboxes.forEach(function(cb) {
|
||
cb.checked = masterCheckbox.checked;
|
||
});
|
||
updateCounter();
|
||
});
|
||
}
|
||
|
||
rowCheckboxes.forEach(function(cb) {
|
||
cb.addEventListener('change', updateCounter);
|
||
});
|
||
|
||
if (searchInput) {
|
||
searchInput.addEventListener('input', function(e) {
|
||
const term = e.target.value.toLowerCase().trim();
|
||
tableRows.forEach(function(row) {
|
||
const text = row.innerText.toLowerCase();
|
||
row.style.display = text.includes(term) ? '' : 'none';
|
||
});
|
||
});
|
||
}
|
||
})();
|
||
</script></main></div>
|
||
|
||
</body></html> |