v79: супер-простой тест
This commit is contained in:
parent
c719e83774
commit
943ce1e12c
82
index.html
82
index.html
@ -1,75 +1,27 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="ru">
|
<html>
|
||||||
<head>
|
<head><meta charset="utf-8"><title>План ПБ</title></head>
|
||||||
<meta charset="utf-8">
|
<body style="font-family:Arial;padding:40px;background:#F1F5F9">
|
||||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
<div style="max-width:400px;margin:100px auto;background:#fff;padding:30px;border-radius:12px;text-align:center">
|
||||||
<title>План ПБ 2026</title>
|
<h2>План ПБ 2026</h2>
|
||||||
<style>
|
<input id="lem" placeholder="curator@telecom.kz" style="display:block;width:100%;padding:10px;margin:10px 0;border:1px solid #ddd;border-radius:6px">
|
||||||
*{box-sizing:border-box;margin:0;padding:0}
|
<input id="lpw" type="password" placeholder="Пароль" style="display:block;width:100%;padding:10px;margin:10px 0;border:1px solid #ddd;border-radius:6px">
|
||||||
body{font:14px Arial,sans-serif;background:#F1F5F9;color:#0B1A2E}
|
<button onclick="doLogin()" style="background:#00B4D8;color:#fff;padding:12px 30px;border:none;border-radius:8px;font-size:16px;cursor:pointer;width:100%">Войти</button>
|
||||||
#login{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0B1A2E,#1a3a5c)}
|
<p id="out" style="margin-top:10px;font-weight:bold"></p>
|
||||||
#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>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var U={curator:{n:"Куратор"},dpp:{n:"ДПБ"}};
|
var users={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:"Исполнено"};
|
|
||||||
|
|
||||||
function doLogin(){
|
function doLogin(){
|
||||||
var e=document.getElementById("lem").value.trim().toLowerCase();
|
var e=document.getElementById("lem").value.trim().toLowerCase();
|
||||||
var k=e.split("@")[0];
|
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,"&").replace(/</g,"<").replace(/>/g,">")}
|
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user