223 lines
No EOL
7.5 KiB
HTML
223 lines
No EOL
7.5 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml" lang="tr">
|
||
|
||
<head>
|
||
<!--!Copyright © 2023 Aliberk Sandıkçı -->
|
||
<!--!Copyright © 2023 iflpanel Developers -->
|
||
<meta charset="UTF-8" />
|
||
|
||
<!-- Meta Content -->
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<meta name="description" content="iflpanel Akıllı Tahta Arkaplan Sayfası" />
|
||
<meta name="keywords" content="iflpanel,akıllı tahta,arkaplan,tahta,board" />
|
||
<meta name="author" content="Aliberk Sandıkçı" />
|
||
|
||
<!-- CSS Files -->
|
||
<link rel="stylesheet" type="text/css" href="./assets/css/main.css" />
|
||
<link rel="stylesheet" type="text/css" href="./assets/css/not_scss.css" />
|
||
|
||
|
||
<title>iflpanel Tahta</title>
|
||
</head>
|
||
|
||
<body>
|
||
<!-- MAIN AREA -->
|
||
<section id="top">
|
||
<div class="class">
|
||
<div>
|
||
<span class="grade">12</span> /
|
||
<span class="branch">C</span>
|
||
</div>
|
||
<div style="display:flex; align-content: center; align-items: center; margin-top: 10px;" class="extraItem">
|
||
<a href="https://asandikci.com/bagis/" target="_blank"><img src="assets/images/bagis-qr.png" width="50"></a>
|
||
<p style="align-self: center; font-style: normal; text-align: center; font-size: small;"> 👈
|
||
Geliştirme sürecine destek verin<br> (Sıradaki: <span
|
||
style="width: min-content; font-size: x-small;" id="sirada-yapilacaklar"></span>) </p>
|
||
</div>
|
||
<div id="header-note" style="display:none;">
|
||
Başarılar
|
||
</div>
|
||
</div>
|
||
<div class="clock">
|
||
<h1 id="time">12.00</h1>
|
||
</div>
|
||
<div class="toolbox" id="toolbox">
|
||
<form>
|
||
<button id="timers-button" type="button" onmouseover="toggleTimers()" onclick="toggleTimers()">⏱</button>
|
||
</form>
|
||
</div>
|
||
<div class="settings-box">
|
||
<form>
|
||
<button id="settings-button" type="button" onmouseover="toggleSettings()" onclick="toggleSettings()">⚙</button>
|
||
</form>
|
||
<div id="settings">
|
||
<form>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-clockSecond" onchange="toggleClockSeconds()" />
|
||
<label for="chx-clockSecond">Saniye</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-timerMsec" onchange="toggleTimerMsec()" checked />
|
||
<label for="chx-timerMsec">Sayaçlarda Milisaniye</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-devVersion" onchange="toggleDevVersion()">
|
||
<label for="chx-devVersion">Geliştirici Sürümü</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-closeExtra" onchange="toggleExtra()">
|
||
<label for="chx-closeExtra">Ekstra Bildirimleri Kapatın</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-closeTools" onchange="toggleTools()">
|
||
<label for="chx-closeTools">Araç Çubuğunu Gizle</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-largenClock" onchange="toggleLargenClock()">
|
||
<label for="chx-largenClock">Saati Büyült</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-fullscreen" onchange="toggleFullscreen()">
|
||
<label for="chx-fullscreen">Tam Ekran</label>
|
||
</div>
|
||
<div class="cell">
|
||
<input type="checkbox" id="chx-examMode" onchange="toggleExamMode()">
|
||
<label for="chx-examMode"><b style="color:red;">Sınav Modu</b></label>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
|
||
<hr style="width: 100%; box-sizing: border-box;" id="clock-divider">
|
||
|
||
<!-- INTERACTIVE / FUNCTIONAL AREA -->
|
||
<section id="mid">
|
||
<div id="timers">
|
||
<div id="timers-menu">
|
||
<ul>
|
||
<li onmouseover="toggleTimers('stopwatch')" onclick="toggleTimers('stopwatch')">
|
||
<button class="pushable pushable-f pushable-l">
|
||
<span class="shadow"></span>
|
||
<span class="edge"></span>
|
||
<span class="front">
|
||
Kronometre
|
||
</span>
|
||
</button>
|
||
</li>
|
||
<!-- <li onmouseover="toggleTimers('timer')" onclick="toggleTimers('timer')">
|
||
<button class="pushable pushable-l">
|
||
<span class="shadow"></span>
|
||
<span class="edge"></span>
|
||
<span class="front" style="padding: 1px 10px; background-color: red;">
|
||
Güvenli<br>Kronometre
|
||
</span>
|
||
</button>
|
||
</li> -->
|
||
</ul>
|
||
</div>
|
||
<div id="stopwatch">
|
||
<div class="timer">
|
||
<div class="min">
|
||
00
|
||
</div>
|
||
.
|
||
<div class="sec">
|
||
00
|
||
</div>
|
||
<span id="stopwatch-msec-dot">.</span>
|
||
<div class="msec">
|
||
00
|
||
</div>
|
||
</div>
|
||
<form>
|
||
<input class="timer-action-button" type="button" id="start-cro" name="start-cro" value="▶️ Başlat"
|
||
onmouseover="Stopwatch('start')" onclick="Stopwatch('start')" checked>
|
||
<input class="timer-action-button" type="button" id="stop-cro" name="stop-cro" value="⏸️ Durdur ve Sıfırla"
|
||
onmouseover="Stopwatch('stop')" onclick="Stopwatch('stop')" checked>
|
||
</form>
|
||
</div>
|
||
|
||
<div id="timer">
|
||
<div class="timer">
|
||
00.00.00
|
||
</div>
|
||
<p>Şu anda yapım aşamasında<br><b>sınav salonundaki akıllı tahta için 100% doğru kronometre</b></p>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<div id="yemek-listesi">
|
||
yapım aşamasında: yemekhane listesi eklenecek
|
||
</div>
|
||
|
||
<div id="animations">
|
||
yapım aşamasında: animasyonlar / oyunlar eklenecek
|
||
</div>
|
||
</section>
|
||
|
||
<!-- NON-INTERACTIVE DECORATION AREA -->
|
||
<section id="bottom">
|
||
<div id="rainbow"></div>
|
||
</section>
|
||
|
||
<script>
|
||
|
||
function b64DecodeUnicode(str) {
|
||
// Going backwards: from bytestream, to percent-encoding, to original string.
|
||
return decodeURIComponent(atob(str).split('').map(function (c) {
|
||
return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
|
||
}).join(''));
|
||
}
|
||
|
||
var curAmount = 0
|
||
var goalAmount = 0;
|
||
let localtest = 0;
|
||
|
||
//
|
||
// PUBLIC DATA
|
||
//
|
||
|
||
let url2 = 'https://git.aliberksandikci.com.tr/api/v1/repos/asandikci.com/www/contents/public-data.json';
|
||
// let url2 = "http://127.0.0.1:PORT/public-data.json";
|
||
// localtest = 1;
|
||
fetch(url2)
|
||
.then(res => res.json())
|
||
.then(out => {
|
||
var publicjson;
|
||
if (localtest) {
|
||
publicjson = out[0]["public-todo"];
|
||
} else {
|
||
var cnt = out.content;
|
||
console.log("base64: " + cnt);
|
||
publicjson = JSON.parse(b64DecodeUnicode(cnt))[0]["public-todo"];
|
||
}
|
||
|
||
publicjson.sort(function (a, b) {
|
||
return Number(Object.keys(a)) > Number(Object.keys(b));
|
||
});
|
||
console.log(publicjson);
|
||
|
||
var curi = 0;
|
||
let i = 0;
|
||
for (i = 0; i < publicjson.length; i++) {
|
||
const element = Number(Object.keys(publicjson[i]));
|
||
if (curAmount < element) {
|
||
goalAmount = element;
|
||
curi = i;
|
||
break;
|
||
}
|
||
}
|
||
let aka = publicjson[i][goalAmount][0];
|
||
document.getElementById("sirada-yapilacaklar").innerHTML = aka.split("- ")[1];
|
||
|
||
})
|
||
.catch(err => {
|
||
throw err
|
||
});
|
||
</script>
|
||
<script src="./assets/js/old_main.js"></script>
|
||
<script src="./assets/js/old_stopwatch.js"></script>
|
||
</body>
|
||
|
||
</html> |