v79: супер-простой тест

This commit is contained in:
Dauren777 2026-06-09 16:02:42 +00:00
parent c719e83774
commit 943ce1e12c

View File

@ -1,75 +1,27 @@
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>План ПБ 2026</title>
<style>
*{box-sizing:border-box;margin:0;padding:0}
body{font:14px Arial,sans-serif;background:#F1F5F9;color:#0B1A2E}
#login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0B1A2E,#1a3a5c)}
#login>div{background:#fff;border-radius:20px;padding:40px;width:400px;max-width:90vw;text-align:center}
#login h1{font-size:22px;margin-bottom:4px}#login h1 span{color:#00B4D8}
#login p{color:#64748B;font-size:13px;margin-bottom:24px}
#login input{display:block;width:100%;padding:12px;border:2px solid #E2E8F0;border-radius:10px;font-size:14px;margin-bottom:12px}
.btn{background:#00B4D8;color:#fff;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;border:none;cursor:pointer;width:100%}
.btn:hover{background:#0096B0}
#app{display:none;max-width:1100px;margin:0 auto;padding:20px}
.top{display:flex;justify-content:space-between;padding:12px 0;margin-bottom:20px;border-bottom:2px solid #E2E8F0}
.card{background:#fff;border-radius:12px;padding:20px;margin-bottom:14px}
table{width:100%;border-collapse:collapse}th,td{padding:8px 12px;font-size:13px;text-align:left;border-bottom:1px solid #E2E8F0}
th{background:#F1F5F9;font-weight:600;font-size:11px;text-transform:uppercase;color:#64748B}
.badge{display:inline-block;padding:3px 8px;border-radius:100px;font-size:11px;font-weight:600}
.g{background:#D1FAE5;color:#065F46}.a{background:#FEF3C7;color:#92400E}.r{background:#FEE2E2;color:#991B1B}
</style>
</head>
<body>
<div id="login"><div>
<h1><span>План ПБ</span> 2026</h1>
<p>АО «Казахтелеком»</p>
<input id="lem" placeholder="curator@telecom.kz">
<input id="lpw" type="password" placeholder="Пароль">
<p id="lerr" style="color:#EF4444;font-size:12px;display:none">Неверная почта</p>
<button class="btn" onclick="doLogin()">Войти</button>
</div></div>
<div id="app">
<div class="top"><b>План ПБ 2026</b> <span id="ul"></span> <button class="btn" style="width:auto;padding:6px 14px;font-size:12px;background:#EF4444" onclick="doLogout()">Выйти</button></div>
<div class="card" id="content"></div>
<html>
<head><meta charset="utf-8"><title>План ПБ</title></head>
<body style="font-family:Arial;padding:40px;background:#F1F5F9">
<div style="max-width:400px;margin:100px auto;background:#fff;padding:30px;border-radius:12px;text-align:center">
<h2>План ПБ 2026</h2>
<input id="lem" placeholder="curator@telecom.kz" style="display:block;width:100%;padding:10px;margin:10px 0;border:1px solid #ddd;border-radius:6px">
<input id="lpw" type="password" placeholder="Пароль" style="display:block;width:100%;padding:10px;margin:10px 0;border:1px solid #ddd;border-radius:6px">
<button onclick="doLogin()" style="background:#00B4D8;color:#fff;padding:12px 30px;border:none;border-radius:8px;font-size:16px;cursor:pointer;width:100%">Войти</button>
<p id="out" style="margin-top:10px;font-weight:bold"></p>
</div>
<script>
var U={curator:{n:"Куратор"},dpp:{n:"ДПБ"}};
var cu=null;
// EMBEDDED events - no XHR needed
var ev=[
{id:1,sec:0,b:6,s:"warn",p:45,due:"31.12.2026",done:"—",r:"Генеральный директор КУ",t:"Обучение и повышение квалификации (VR, AR, симуляторы)",ai:"Охвачено 45% персонала.",h:["15.01 — Создано"]},
{id:2,sec:0,b:0,s:"done",p:100,due:"31.03.2026",done:"28.03.2026",r:"Директор ДПБ, ДИТ",t:"Анализ и пересмотр ВНД согласно Стратегии ПБ",ai:"Завершён в срок.",h:["10.01 — Создано"]},
{id:3,sec:0,b:0,s:"warn",p:50,due:"31.12.2026",done:"—",r:"Главный админ. директор",t:"Тематические совещания по вопросам ПБ",ai:"2 квартальных совещания.",h:["10.01 — Создано"],sub:[{l:"a",t:"С филиалами/ДАО, не менее 1 раза в квартал"},{l:"b",t:"Со структурными подразделениями, ежемесячно"},{l:"c",t:"С подрядными организациями"}]},
{id:4,sec:0,b:6,s:"warn",p:55,due:"31.12.2026",done:"—",r:"Ген. директора филиалов",t:"Проверка знаний в формате тестирования",ai:"82% средний результат.",h:["01.02 — Создано"]},
{id:5,sec:0,b:0,s:"done",p:100,due:"31.03.2026",done:"25.03.2026",r:"Директор ДПБ",t:"Нематериальное поощрение филиалов",ai:"Положение утверждено.",h:["25.03 — Утверждено"]}
];
var br=["Дирекция ПБ","Дивизион Сеть","Корп. бизнес","Розн. бизнес","Сервисная фабрика","Телеком Комплект","Корп. университет","Упр. проектами","Цифровой бизнес"];
var st={wait:"Не начато",warn:"В процессе",late:"Просрочено",done:"Исполнено"};
var users={curator:{n:"Куратор"},dpp:{n:"ДПБ"}};
function doLogin(){
var e=document.getElementById("lem").value.trim().toLowerCase();
var k=e.split("@")[0];
if(U[k]){cu={n:U[k].n};document.getElementById("login").style.display="none";document.getElementById("app").style.display="block";document.getElementById("ul").textContent=cu.n;renderEv()}else{document.getElementById("lerr").style.display="block"}
if(users[k]){
document.getElementById("out").textContent="✅ Доступ: "+users[k].n;
document.getElementById("out").style.color="green";
}else{
document.getElementById("out").textContent="❌ Неверно";
document.getElementById("out").style.color="red";
}
}
function doLogout(){cu=null;document.getElementById("login").style.display="flex";document.getElementById("app").style.display="none"}
function renderEv(){
var h="<table><tr><th></th><th>Мероприятие</th><th>Филиал</th><th>Срок</th><th>Статус</th></tr>";
ev.forEach(function(e){
var cl={done:"g",warn:"a",late:"r",wait:"w"}[e.s]||"w";
h+="<tr><td>"+e.id+"</td><td>"+esc(e.t)+"</td><td>"+br[e.b]+"</td><td>"+e.due+"</td><td><span class='badge "+cl+"'>"+st[e.s]+"</span></td></tr>";
});
h+="</table>";
document.getElementById("content").innerHTML=h;
}
function esc(s){return s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}
</script>
</body>
</html>