Compare commits
43 commits
Author | SHA1 | Date | |
---|---|---|---|
97d1e43731 | |||
ef213e6ff9 | |||
9453b690ad | |||
e37da8efb9 | |||
074ab9336f | |||
1e13a52eee | |||
3d8c6e9d0a | |||
0aeb650445 | |||
1c83cf68b1 | |||
7240020905 | |||
2500b05720 | |||
27cc31ef7a | |||
161f3447a3 | |||
692dbcb302 | |||
4d0c967f51 | |||
b812ca26c5 | |||
d12692d246 | |||
b118403675 | |||
5636088690 | |||
d1ed8ef9fa | |||
ef78c9b139 | |||
fde1672354 | |||
5932dd1850 | |||
64e0b07725 | |||
e9d09ee846 | |||
c4aad3f704 | |||
da45d2da5e | |||
7cadfd5000 | |||
178ca6791c | |||
67cd3eff70 | |||
e2d2d30482 | |||
eb48f7a509 | |||
2c1722c40d | |||
6be9e19ed6 | |||
f8c355effe | |||
a4cbb6bfa9 | |||
ef39a4966d | |||
242a76511c | |||
2030527ae7 | |||
661167bdee | |||
0fc120e3f5 | |||
8e7b7b470a | |||
999b314c26 |
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,21 +34,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>About Me | Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
@ -81,7 +67,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
|
||||
<?php
|
||||
|
|
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,21 +34,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>After YKS | Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
@ -71,7 +57,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
|
||||
<?php
|
||||
|
|
223
bagis/index.php
|
@ -26,28 +26,10 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
<meta name="author" content="Aliberk Sandıkçı">
|
||||
|
||||
<!-- CSS Files -->
|
||||
<link rel="stylesheet" type="text/css" href="/iflpanel/ssavpn/assets/css/main.css"> <!-- INNER CSS !!! -->
|
||||
<link rel="stylesheet" type="text/css" href="./bagis.css"> <!-- INNER CSS !!! -->
|
||||
<link rel="stylesheet" type="text/css" href="/assets/css/extra_without_scss.css">
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u = "//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u + 'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d = document,
|
||||
g = d.createElement('script'),
|
||||
s = d.getElementsByTagName('script')[0];
|
||||
g.async = true;
|
||||
g.src = u + 'matomo.js';
|
||||
s.parentNode.insertBefore(g, s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>
|
||||
Bi' Kahve Ismarla | Aliberk Sandıkçı
|
||||
|
@ -64,30 +46,36 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
<h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800;">Bana Bi' Kahve Ismarla ☕</h1>
|
||||
<div><span>IBAN: </span><span style="margin-top: 0px;text-decoration:none;"> <b class="copy_element" id="IBAN" onclick="copy2Clipboard('IBAN')">TR63 0082 9000 0949 1444 3182 51</b><span id="IBAN-tip"></span></span></div>
|
||||
<div><span>Papara Numarası: </span><span style="margin-top: 0px;text-decoration:none;"> <b class="copy_element" id="Papara" onclick="copy2Clipboard('Papara')">14444318251</b><span id="Papara-tip"></span></span></div>
|
||||
<div><span>Papara Numarası: </span><span style="margin-top: 0px;text-decoration:none;"> <b class="copy_element" id="Papara" onclick="copy2Clipboard('Papara')">1444318251</b><span id="Papara-tip"></span></span></div>
|
||||
<div><sup>Açıklama Kısmını <span style="font-weight:800;">Gözükmesini İstediğiniz İsim - Bağış</span> şeklinde doldurunuz. Anonim Kalmak için <span style="font-weight:800;">Anonim - Bağış</span> Yazabilirsiniz</sup></div>
|
||||
<p></p>
|
||||
|
||||
<br>
|
||||
<hr style="width: 100%;"><br>
|
||||
<h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800; ">Bağışçılar</h1>
|
||||
<div id="current-goal"><label id="label1" for="pprogress">Sıradaki Hedef: </label><progress id="pprogress"><span></span></progress> <label id="label2" for="pprogress">x/y</label><br>
|
||||
<p id="next-todo" style="margin-top:0px;font-size:15px;">Sırada Yapılacaklar: Ders Programı Görüntüleme</p>
|
||||
</div>
|
||||
<div id="bagiscilar" style="text-align: left;"></div>
|
||||
<div id="current-goal"><label id="label1" for="pprogress">Sıradaki Hedef: </label><progress id="pprogress"><span></span></progress> <label id="label2" for="pprogress">x/y</label><br></div>
|
||||
<!-- <p id="next-todo" style="margin-top:0px; margin-bottom:0px;font-size:15px;">Sırada Yapılacaklar: <b><span id="sirada-yapilacaklar"></span></b><br></p> -->
|
||||
<!-- <p><a href="../iflpanel/path.php" style="border:solid 1px orange; border-radius:10px; padding: 10px; background-color:royalblue; font-weight:800; color:orange">👉 Yol Haritası 👈</a></p> -->
|
||||
|
||||
<br>
|
||||
<hr style="width: 100%;"><br>
|
||||
<h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800; margin-top:1px; margin-bottom:1px;">Bağışçılar</h1>
|
||||
|
||||
<div id="bagiscilar" style="text-align: left;width: max-content;"></div>
|
||||
|
||||
<br>
|
||||
<hr style="width: 100%;"><br><br>
|
||||
<h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800; margin-bottom: 0px;">Sponsorlar</h1>
|
||||
<div id="sponsorlar">
|
||||
<!-- <h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800; margin-bottom: 0px;">Sponsorlar</h1> -->
|
||||
<!-- <div id="sponsorlar">
|
||||
<p>Henüz sponsorumuz bulunmamakta, sponsor olmak için <a href="mailto:contact@aliberksandikci.com.tr">mail</a> adresim üzerinden bana ulaşabilirsiniz.<br>
|
||||
Kişisel sunucu masraflarını karşılamaktan yanı sıra, buradaki projelere de sponsor olabilirsiniz:
|
||||
<ul style="text-align:left;">
|
||||
<li>SSA VPN</li>
|
||||
<li>Tahta Arkaplanı</li>
|
||||
<li><del>İFL Kütüphane</del</li>
|
||||
<li><del>İFL Kütüphane</del< /li>
|
||||
<li><del>İFL Galeri</del></li>
|
||||
</ul>
|
||||
Sponsorluklar ve Bağışlar ile devam ettireceğim İFL/Eğitim Odaklı projelerime <a href="../iflpanel/path.php">buradan</a> ulaşabilirsiniz.<br>
|
||||
Sponsor olabileceğiniz diğer projelerime <a href="https://github.com/asandikci">GitHub</a> veya <a href="https://git.aliberksandikci.com.tr">Forgejo</a> adresi üzerinden ulaşabilirsiniz.</p>
|
||||
</div>
|
||||
</div> -->
|
||||
<br>
|
||||
<hr style="width: 100%;"><br><br>
|
||||
<h1 style="font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; font-weight: 800; margin-bottom: 0px;">Teşekkürler</h1>
|
||||
|
@ -107,7 +95,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
<?php
|
||||
|
@ -119,6 +107,15 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
} ?>
|
||||
|
||||
<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;
|
||||
let url = 'https://git.aliberksandikci.com.tr/api/v1/repos/asandikci.com/www/contents/donations.json';
|
||||
// let url = "http://127.0.0.1:PORT/donations.json";
|
||||
|
@ -128,84 +125,136 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
.then(res => res.json())
|
||||
.then(out => {
|
||||
var lastjson;
|
||||
console.log(out);
|
||||
|
||||
if (localtest) {
|
||||
lastjson = out;
|
||||
} else {
|
||||
var cnt = out.content;
|
||||
console.log("base64: " + cnt);
|
||||
lastjson = JSON.parse(atob(cnt));
|
||||
console.log(lastjson);
|
||||
// console.log("base64: " + cnt);
|
||||
lastjson = JSON.parse(b64DecodeUnicode(cnt));
|
||||
}
|
||||
|
||||
lastjson.sort(function(a, b) {
|
||||
return a.amount < b.amount;
|
||||
lastjson = lastjson.sort(function(a, b) {
|
||||
return b.amount - a.amount;
|
||||
});
|
||||
|
||||
var curAmount = 0;
|
||||
for (let i = 0; i < lastjson.length; i++) {
|
||||
const s = lastjson[i];
|
||||
const curId = s.place + s.name;
|
||||
document.getElementById("bagiscilar").innerHTML += "<p><span id='" + curId + "'>" + s.name + "</span> - <span id='" + curId + "amount'> " + s.amount + "₺<span></p>";
|
||||
if (s.webpage != ""){
|
||||
document.getElementById("bagiscilar").innerHTML += "<p><a target='_blank' style='text-decoration: underline;' href = '" + s.webpage + "'><span id='" + curId + "'>" + s.name + "</span></a> - <span id='" + curId + "amount'> " + s.amount + "₺<span></p>";
|
||||
} else {
|
||||
document.getElementById("bagiscilar").innerHTML += "<p><span id='" + curId + "'>" + s.name + "</span> - <span id='" + curId + "amount'> " + s.amount + "₺<span></p>";
|
||||
}
|
||||
|
||||
curAmount += s.amount;
|
||||
document.getElementById(curId).style.fontWeight = "500";
|
||||
if (s.amount <= 10) {
|
||||
document.getElementById(curId).style.color = "grey";
|
||||
document.getElementById(curId).style.fontSize = "10px";
|
||||
element = document.getElementById(curId);
|
||||
element.style.fontWeight = "500";
|
||||
if (s.amount <= 1) {
|
||||
element.style.color = "grey";
|
||||
element.style.fontSize = "12px";
|
||||
} else if (s.amount <= 5) {
|
||||
element.style.color = "white";
|
||||
element.style.fontSize = "14px";
|
||||
} else if (s.amount <= 10) {
|
||||
element.style.color = "orange";
|
||||
element.style.fontSize = "16px";
|
||||
} else if (s.amount <= 15) {
|
||||
element.style.color = "yellow";
|
||||
element.style.fontSize = "18px";
|
||||
} else if (s.amount <= 20) {
|
||||
document.getElementById(curId).style.color = "white";
|
||||
document.getElementById(curId).style.fontSize = "12px";
|
||||
element.style.color = "purple";
|
||||
element.style.fontSize = "20px";
|
||||
} else if (s.amount <= 25) {
|
||||
element.style.color = "red";
|
||||
element.style.fontSize = "22px";
|
||||
} else if (s.amount <= 30) {
|
||||
document.getElementById(curId).style.color = "orange";
|
||||
document.getElementById(curId).style.fontSize = "14px";
|
||||
} else if (s.amount <= 40) {
|
||||
document.getElementById(curId).style.color = "yellow";
|
||||
document.getElementById(curId).style.fontSize = "16px";
|
||||
element.style.color = "black";
|
||||
element.style.fontSize = "24px";
|
||||
} else if (s.amount <= 50) {
|
||||
document.getElementById(curId).style.color = "purple";
|
||||
document.getElementById(curId).style.fontSize = "18px";
|
||||
} else if (s.amount <= 60) {
|
||||
document.getElementById(curId).style.color = "red";
|
||||
document.getElementById(curId).style.fontSize = "20px";
|
||||
} else if (s.amount <= 70) {
|
||||
document.getElementById(curId).style.color = "black";
|
||||
document.getElementById(curId).style.fontSize = "22px";
|
||||
} else if (s.amount <= 80) {
|
||||
document.getElementById(curId).style.color = "#cc00ff";
|
||||
document.getElementById(curId).style.fontSize = "24px";
|
||||
} else if (s.amount <= 90) {
|
||||
document.getElementById(curId).style.color = "#ff6e95";
|
||||
document.getElementById(curId).style.fontSize = "26px";
|
||||
element.style.color = "#cc00ff";
|
||||
element.style.fontSize = "26px";
|
||||
} else if (s.amount <= 75) {
|
||||
element.style.color = "#ff6e95";
|
||||
element.style.fontSize = "28px";
|
||||
} else if (s.amount <= 100) {
|
||||
document.getElementById(curId).style.color = "#cc3300";
|
||||
document.getElementById(curId).style.fontSize = "28px";
|
||||
document.getElementById(curId).style.fontWeight = "500";
|
||||
element.style.color = "#cc3300";
|
||||
element.style.fontSize = "30px";
|
||||
element.style.fontWeight = "500";
|
||||
} else if (s.amount <= 150) {
|
||||
document.getElementById(curId).style.color = "#00cc00";
|
||||
document.getElementById(curId).style.fontSize = "30px";
|
||||
document.getElementById(curId).style.fontWeight = "600";
|
||||
element.style.color = "#00cc00";
|
||||
element.style.fontSize = "32px";
|
||||
element.style.fontWeight = "600";
|
||||
} else if (s.amount <= 200) {
|
||||
document.getElementById(curId).style.color = "#0066ff";
|
||||
document.getElementById(curId).style.fontSize = "32px";
|
||||
document.getElementById(curId).style.fontWeight = "700";
|
||||
element.style.color = "#0066ff";
|
||||
element.style.fontSize = "34px";
|
||||
element.style.fontWeight = "700";
|
||||
} else if (s.amount <= 300) {
|
||||
document.getElementById(curId).style.color = "#ffff00";
|
||||
document.getElementById(curId).style.fontSize = "34px";
|
||||
document.getElementById(curId).style.fontWeight = "800";
|
||||
} else if (s.amount <= 500) {
|
||||
document.getElementById(curId).style.color = "#ffff00";
|
||||
document.getElementById(curId).style.fontSize = "36px";
|
||||
document.getElementById(curId).style.fontWeight = "900";
|
||||
document.getElementById(curId).style.textDecoration = "underline";
|
||||
element.style.color = "#ffff00";
|
||||
element.style.fontSize = "36px";
|
||||
element.style.fontWeight = "800";
|
||||
} else {
|
||||
element.style.color = "#ffff00";
|
||||
element.style.fontSize = "38px";
|
||||
element.style.fontWeight = "900";
|
||||
element.style.textDecoration = "underline";
|
||||
}
|
||||
|
||||
if (lastjson.length < 5) {
|
||||
element.style.color = "#ffff00";
|
||||
element.style.fontSize = "38px";
|
||||
element.style.fontWeight = "900";
|
||||
element.style.textDecoration = "underline";
|
||||
}
|
||||
|
||||
let progbar = document.getElementById("pprogress")
|
||||
progbar.max = goalAmount;
|
||||
// console.log(curAmount, curAmount.toFixed(2));
|
||||
progbar.value = curAmount.toFixed(2);
|
||||
progbar.labels[1].innerHTML = curAmount.toFixed(2) + "/" + goalAmount + "₺";
|
||||
}
|
||||
let goalAmount = 100;
|
||||
let progbar = document.getElementById("pprogress");
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
});
|
||||
|
||||
//
|
||||
// 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;
|
||||
for (let i = 0; i < publicjson.length; i++) {
|
||||
const element = Number(Object.keys(publicjson[i]));
|
||||
if (curAmount < element) {
|
||||
goalAmount = element;
|
||||
curi = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// console.log(goalAmount);
|
||||
// document.getElementById("sirada-yapilacaklar").innerHTML = publicjson[i][goalAmount][0];
|
||||
let progbar = document.getElementById("pprogress")
|
||||
progbar.max = goalAmount;
|
||||
progbar.value = curAmount;
|
||||
progbar.labels[1].innerHTML = curAmount + "/" + goalAmount + "₺";
|
||||
progbar.labels[1].innerHTML = curAmount.toFixed(2) + "/" + goalAmount + "₺";
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
{
|
||||
"year": "2023",
|
||||
"year": "2024",
|
||||
"version": "0.0.5-d",
|
||||
"author": "Aliberk Sandıkçı",
|
||||
"source": "https://git.aliberksandikci.com.tr/asandikci.com/www",
|
||||
"dev-note": "Contribute on https://git.aliberksandikci.com.tr/asandikci/www and consider visiting /dev folder if you are a developer",
|
||||
"copyright": "Copyright © 2023 Aliberk Sandıkçı",
|
||||
"copyright": "Copyright © 2024 Aliberk Sandıkçı",
|
||||
"thanks":{
|
||||
"prism":["for syntax highlighting","https://github.com/PrismJS/prism/"]
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ body{
|
|||
</style>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- CSS Files -->
|
||||
|
@ -35,21 +35,7 @@ body{
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>DEVELOPMENT PAGE</title>
|
||||
</head>
|
||||
|
|
|
@ -17,7 +17,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- CSS Files -->
|
||||
|
@ -28,21 +28,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
echo '<link rel="stylesheet" href="/assets/css/' . $file . '">' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>DEV PLAYGROUND</title>
|
||||
|
||||
|
|
92
dev/tmptest/index.php
Normal file
|
@ -0,0 +1,92 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<?php
|
||||
### ERROR HANDLING ###
|
||||
|
||||
function warnError($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
echo "<br><p style='padding:0px;margin:0px;background-color:white;color:black;'><b style='color:red;'>Error:</b> [$errno] $errstr <br> in file <b style='color:blue'>$errfile</b> line <b style='color:red'>$errline</b></p>";
|
||||
}
|
||||
set_error_handler("warnError");
|
||||
|
||||
if (!$_SERVER['DOCUMENT_ROOT']) {
|
||||
$_SERVER['DOCUMENT_ROOT'] = '/weblink';
|
||||
}
|
||||
# TODO separate file
|
||||
?>
|
||||
|
||||
<head>
|
||||
<!-- Meta Content -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="Geçici Test Sayfası">
|
||||
<meta name="keywords" content="test,tmptest">
|
||||
<meta name="author" content="Aliberk Sandıkçı">
|
||||
|
||||
<!-- CSS Files -->
|
||||
<link rel="stylesheet" type="text/css" href="/assets/css/main.css">
|
||||
|
||||
|
||||
|
||||
<title>
|
||||
TMP TEST | GEÇİCİ TEST SAYFASI
|
||||
</title>
|
||||
<link rel="shortcut icon" href="/assets/images/icons/favicon.ico" type="image/x-icon">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
<a href="/" id="hlogo" style="margin:auto;"><img src="/assets/images/icons/favicon.png"></a>
|
||||
</header>
|
||||
<div class="main-scrollable">
|
||||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
|
||||
TEMPORARY TEST (see page source or consoles)
|
||||
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
foreach ($dir as $file) {
|
||||
if ((!$file->isDot()) && str_ends_with($file, ".js") && $file != "jquery.js") {
|
||||
echo '<script src="/assets/js/' . $file . '"></script>' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
|
||||
<script>
|
||||
let url = 'https://next.forgejo.org/asandikci-tmp/tmp-cors-test/raw/branch/main/example.md';
|
||||
fetch(url)
|
||||
.then(res => {
|
||||
console.log("SUCCESFULLY GET RAW CONTENT: " + out.content);
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
});
|
||||
|
||||
let url2 = 'https://next.forgejo.org/api/v1/repos/asandikci-tmp/tmp-cors-test/raw/example.md';
|
||||
fetch(url2)
|
||||
.then(res => {
|
||||
console.log("SUCCESFULLY GET API CONTENT: " + res);
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
});
|
||||
|
||||
let url3 = "https://next.forgejo.org/asandikci-tmp/tmp-cors-test/src/branch/main/example.md"
|
||||
fetch(url3)
|
||||
.then(res => {
|
||||
console.log("SUCCESFULLY GET WEBSITE CONTENT: " + out.content);
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,8 +1,65 @@
|
|||
[
|
||||
{
|
||||
"name": "Deniz K***",
|
||||
"amount": 25,
|
||||
"amount": 10,
|
||||
"place": 1,
|
||||
"webpage": ""
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Aziz K***",
|
||||
"amount": 10,
|
||||
"place": 2,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Anonim",
|
||||
"amount": 0.31,
|
||||
"place": 3,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Eray A***",
|
||||
"amount": 15,
|
||||
"place": 4,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "İletken",
|
||||
"amount": 0.69,
|
||||
"place": 5,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "senin anonim",
|
||||
"amount": 20.31,
|
||||
"place": 6,
|
||||
"webpage": "https://www.instagram.com/huseyinbatuhanoguz",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Cem Deniz A***",
|
||||
"amount": 0.67,
|
||||
"place": 7,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Sydney Sweeney",
|
||||
"amount": 5,
|
||||
"place": 8,
|
||||
"webpage": "https://www.instagram.com/ardailden",
|
||||
"desc": ""
|
||||
},
|
||||
{
|
||||
"name": "Enes P*",
|
||||
"amount": 10,
|
||||
"place": 9,
|
||||
"webpage": "",
|
||||
"desc": ""
|
||||
}
|
||||
]
|
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,21 +34,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
@ -65,7 +51,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
<h3 style="align-self: center;">!!! DİĞER İFLPANEL SERVİSLERİ KAPANMIŞTIR !!!</h3>
|
||||
</article>
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
|
||||
<?php
|
||||
|
|
131
iflpanel/path.php
Normal file
|
@ -0,0 +1,131 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<?php
|
||||
### ERROR HANDLING ###
|
||||
|
||||
function warnError($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
echo "<br><p style='padding:0px;margin:0px;background-color:white;color:black;'><b style='color:red;'>Error:</b> [$errno] $errstr <br> in file <b style='color:blue'>$errfile</b> line <b style='color:red'>$errline</b></p>";
|
||||
}
|
||||
set_error_handler("warnError");
|
||||
|
||||
if (!$_SERVER['DOCUMENT_ROOT']) {
|
||||
$_SERVER['DOCUMENT_ROOT'] = '/weblink';
|
||||
}
|
||||
# TODO separate file
|
||||
?>
|
||||
|
||||
<head>
|
||||
<!-- Meta Content -->
|
||||
<meta charset="UTF-8">
|
||||
<script>window.location.replace("https://asandikci.com");</script>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="İFL/Eğitim odaklı geliştirme yol haritası">
|
||||
<meta name="keywords" content="roadmap,yol haritası">
|
||||
<meta name="author" content="Aliberk Sandıkçı">
|
||||
|
||||
<!-- CSS Files -->
|
||||
<link rel="stylesheet" type="text/css" href="../bagis/bagis.css"> <!-- INNER CSS !!! -->
|
||||
<link rel="stylesheet" type="text/css" href="/assets/css/extra_without_scss.css">
|
||||
<style>
|
||||
.inner-xy{
|
||||
list-style-position: inside;
|
||||
}
|
||||
</style>
|
||||
|
||||
|
||||
|
||||
<title>
|
||||
Yol Haritası | Aliberk Sandıkçı
|
||||
</title>
|
||||
<link rel="shortcut icon" href="/assets/images/icons/favicon.ico" type="image/x-icon">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
<a href="/" id="hlogo" style="margin:auto;"><img src="/assets/images/icons/favicon.png"></a>
|
||||
</header>
|
||||
<div class="main-scrollable">
|
||||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
<h1 style="margin-bottom:0px;">Yol Haritası</h1>
|
||||
<p>Yapacağım geliştirmelerde bana yardımcı olmak için <a href="../bagis/">bağışta</a> bulunabilirsiniz</p>
|
||||
<sup>Değerlere ulaşıldıkça gerekli özellikler için çalışılmaya başlanacaktır. Bu, özelliklerin getirileceğini garanti etmez!</sup>
|
||||
<div id="roadmap">
|
||||
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
foreach ($dir as $file) {
|
||||
if ((!$file->isDot()) && str_ends_with($file, ".js") && $file != "jquery.js") {
|
||||
echo '<script src="/assets/js/' . $file . '"></script>' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
|
||||
<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(''));
|
||||
}
|
||||
//
|
||||
// PUBLIC DATA
|
||||
//
|
||||
throw err;
|
||||
var localtest = 0;
|
||||
var activeUntil;
|
||||
var untilAmount;
|
||||
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"];
|
||||
activeUntil = out[0]["todo-active-until"];
|
||||
} else {
|
||||
var cnt = out.content;
|
||||
console.log("base64: " + cnt);
|
||||
publicjson = JSON.parse(b64DecodeUnicode(cnt))[0]["public-todo"];
|
||||
activeUntil = JSON.parse(b64DecodeUnicode(cnt))[0]["todo-active-until"];
|
||||
}
|
||||
|
||||
publicjson.sort(function(a, b) {
|
||||
return Number(Object.keys(a)) > Number(Object.keys(b));
|
||||
});
|
||||
console.log(publicjson);
|
||||
untilAmount = Number(activeUntil);
|
||||
console.log(untilAmount);
|
||||
|
||||
var curi = 0;
|
||||
for (let i = 0; i < publicjson.length; i++) {
|
||||
const element = Number(Object.keys(publicjson[i]));
|
||||
document.getElementById("roadmap").innerHTML += "<p style='text-align:left; font-size:25px; font-weight: 700px; color:orange;'>"+element+"₺</p><ul>";
|
||||
|
||||
for (let j = 0; j < publicjson[i][element].length; j++) {
|
||||
const elin = publicjson[i][element][j];
|
||||
document.getElementById("roadmap").innerHTML += "<li class='inner-xy'>" + elin + "</li>";
|
||||
}
|
||||
document.getElementById("roadmap").innerHTML += "</ul>";
|
||||
if (element >= untilAmount) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch(err => {
|
||||
throw err
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,19 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<script>
|
||||
function downloadURI(uri, name) {
|
||||
var link = document.createElement("a");
|
||||
link.download = name;
|
||||
link.href = uri;
|
||||
link.click();
|
||||
}
|
||||
|
||||
downloadURI("https://asandikci.com/iflpanel/ssavpn/file/in/secured/apks/ssa-vpn-signed.apk","ssa-vpn-signed.apk")
|
||||
window.location.replace("https://asandikci.com/iflpanel/ssavpn/")
|
||||
</script>
|
||||
</head>
|
||||
|
||||
</html>
|
|
@ -1,19 +0,0 @@
|
|||
async function copy2Clipboard(id) {
|
||||
var copyText = document.getElementById(id);
|
||||
|
||||
// copyText.select();
|
||||
// copyText.setSelectionRange(0, 99999); // For mobile devices
|
||||
|
||||
navigator.clipboard.writeText(copyText.innerHTML);
|
||||
|
||||
var tooltip = document.getElementById(id+'-tip');
|
||||
tooltip.innerHTML = "Kopyalandı! ";
|
||||
tooltip.style.display = 'inherit';
|
||||
tooltip.style.color = 'green';
|
||||
tooltip.style.fontSize = "smaller";
|
||||
|
||||
|
||||
await new Promise(r => setTimeout(r, 2000));
|
||||
|
||||
tooltip.style.display= 'none';
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
.copy_element {
|
||||
color: orange;
|
||||
cursor: copy;
|
||||
}
|
||||
|
||||
.copy_element:hover::before {
|
||||
content: "Kopyala: ";
|
||||
color: #00adb5;
|
||||
font-weight: 400;
|
||||
justify-self: center;
|
||||
font-size: medium;
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../scss/_images.scss","../scss/_animation.scss","../scss/main.scss","../scss/_fonts.scss","../scss/_colors.scss","../scss/_header.scss","../scss/_nav.scss","../scss/_article.scss","../scss/_utils.scss","../scss/_footer.scss","../scss/_copy.scss"],"names":[],"mappings":"AAGE;EACE;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;;;AAbF;EACE;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;;;AChBJ;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;;AClBJ;EACE;;;AAGF;AAAA;EAEE;EACA;EAEA;EACA;EAEA;EACA;EAEA,aC3BM;ED4BN,kBEjBS;EFkBT,OEXa;;AFeb;AAAA;EG9BA;EACA;EACA;EAEA;EACA;EAEA,kBDCS;ECAT;EAEA;;AAEA;AAAA;EACE;EACA;EACA;EACA;;AHmBF;AAAA;EIrCA;EACA;EACA;;AAEA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;;AJ0BF;AAAA;EKtCA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;;AAEA;AAAA;EACE;EACA;EACA;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;;ALiBA;AAAA;EKZF,kBHfa;EGgBb;EACA;;ALcE;AAAA;EKVF;;AAEA;AAAA;EACE;EACA;EACA;EAEA;EACA;EAEA,kBH/BW;;AIVb;AAAA;EACE,wBDyCgC;ECxChC,yBDwCgC;ECvChC;EACA;;AAGF;AAAA;EACE;EACA;EACA,2BDgCgC;EC/BhC,4BD+BgC;;AC5BlC;AAAA;EACE,yBD2BgC;EC1BhC,wBD0BgC;ECzBhC,2BDyBgC;ECxBhC,4BDwBgC;;AAGhC;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;;AAEA;AAAA;EACE;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA,kBH5DO;;AITb;AAAA;EACE,wBDqEoC;ECpEpC,yBDoEoC;ECnEpC;EACA;;AAGF;AAAA;EACE;EACA;EACA,2BD4DoC;EC3DpC,4BD2DoC;;ACxDtC;AAAA;EACE,yBDuDoC;ECtDpC,wBDsDoC;ECrDpC,2BDqDoC;ECpDpC,4BDoDoC;;AAEhC;AAAA;EACE;EACA;;AAEA;AAAA;EACE;;AAIJ;AAAA;EACE;EACA;;AAIJ;AAAA;EACE;;AAEA;AAAA;EACE;;AAMJ;EACE;AAAA;IACE;;EC3ER;AAAA;IACE;IACA,wBD0E+B;ICzE/B;IACA;;EAGF;AAAA;IACE,yBDoE+B;ICnE/B;IACA;IACA;;EAGF;AAAA;IACE;IACA;IACA,2BD2D+B;IC1D/B;;EAGF;AAAA;IACE;IACA;IACA;IACA,4BDmD+B;;EAIzB;AAAA;IACE;;;AAQN;AAAA;EACE;EACA;EACA;EACA;;AAEA;AAAA;EACE;EACA;;AAEA;AAAA;EACE;EACA;EACA;;AAIJ;AAAA;EACE;EACA;;AAOJ;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;AAAA;EAOE;EACA;EACA;;AARA;AAAA;EACE;EACA;EACA;;AL5GN;AAAA;EOtDA;EACA;EACA;EACA;EAEA;EACA,kBLCS;EKAT;EAEA;EACA;EAEA;;AAEA;AAAA;EACE;;AP4CF;AAAA;EACE;EACA;;AAEA;AAAA;EACE,OE9CS;;AFiDX;AAAA;EACE;;AAGF;AAAA;EACE;EACA;;AAGF;AAAA;EACE;;AAIJ;AAAA;EACE;EACA;EMjFF;EACA;;AALA;AAAA;EACE;;AEDF;AAAA;EACE;EACA;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;AAAA;EACE;EACA","file":"main.css"}
|
|
@ -1,94 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="200mm"
|
||||
height="200mm"
|
||||
viewBox="0 0 200 200"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
sodipodi:docname="ssavpn.svg"
|
||||
inkscape:export-filename="ssavpn48x48.png"
|
||||
inkscape:export-xdpi="6.0959997"
|
||||
inkscape:export-ydpi="6.0959997"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.35355339"
|
||||
inkscape:cx="96.166522"
|
||||
inkscape:cy="386.0803"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="739"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:export-bgcolor="#ffffff00" />
|
||||
<defs
|
||||
id="defs1">
|
||||
<inkscape:path-effect
|
||||
effect="fillet_chamfer"
|
||||
id="path-effect4"
|
||||
is_visible="true"
|
||||
lpeversion="1"
|
||||
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
||||
radius="0"
|
||||
unit="px"
|
||||
method="auto"
|
||||
mode="F"
|
||||
chamfer_steps="1"
|
||||
flexible="false"
|
||||
use_knot_distance="true"
|
||||
apply_no_radius="true"
|
||||
apply_with_radius="true"
|
||||
only_selected="false"
|
||||
hide_knots="false" />
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
style="display:inline">
|
||||
<g
|
||||
id="g4"
|
||||
transform="translate(-86.163789,-27.213761)"
|
||||
style="fill:#d40000" />
|
||||
<path
|
||||
style="fill:#b3b3b3;stroke:#000000;stroke-width:1.865;stroke-opacity:0.97813344"
|
||||
d="M 6.1040265,195 61.040265,105 12.208053,75.000001 54.936238,5 70.196305,5 27.468119,75.000001 76.300331,105 21.364093,195 Z"
|
||||
id="path37"
|
||||
sodipodi:nodetypes="ccccccccc" />
|
||||
<path
|
||||
style="fill:#666666;stroke:#000000;stroke-width:1.865;stroke-opacity:0.98773342;fill-opacity:1"
|
||||
d="M 30.520132,195 85.456371,105 36.624159,75.000002 79.352344,5.0000008 H 94.612411 L 51.884225,75.000002 100.71644,105 45.780199,195 Z"
|
||||
id="path64"
|
||||
sodipodi:nodetypes="ccccccccc" />
|
||||
<path
|
||||
style="fill:#d40000;stroke:#000000;stroke-width:1.865;stroke-opacity:0.98453319"
|
||||
d="M 74.469123,83.000001 122.08053,5 l 0,25 -36.624159,60.000001 z"
|
||||
id="path65"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#d40000;stroke:#000000;stroke-width:1.865;stroke-opacity:0.97493327"
|
||||
d="M 189.22482,195 122.08053,5.0000001 V 30 l 57.98825,85 z"
|
||||
id="path66"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#800000;stroke:#000000;stroke-width:1.45751;stroke-opacity:0.98933333"
|
||||
d="m 109.72093,107.88517 h 43.08179 L 158.95725,120 H 97.41186 Z"
|
||||
id="path67" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 3.2 KiB |
|
@ -1,94 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="200mm"
|
||||
height="200mm"
|
||||
viewBox="0 0 200 200"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
sodipodi:docname="ssavpn.svg"
|
||||
inkscape:export-filename="ssavpn48x48.png"
|
||||
inkscape:export-xdpi="6.0959997"
|
||||
inkscape:export-ydpi="6.0959997"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="true"
|
||||
inkscape:zoom="0.35355339"
|
||||
inkscape:cx="96.166522"
|
||||
inkscape:cy="386.0803"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="739"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:export-bgcolor="#ffffff00" />
|
||||
<defs
|
||||
id="defs1">
|
||||
<inkscape:path-effect
|
||||
effect="fillet_chamfer"
|
||||
id="path-effect4"
|
||||
is_visible="true"
|
||||
lpeversion="1"
|
||||
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
||||
radius="0"
|
||||
unit="px"
|
||||
method="auto"
|
||||
mode="F"
|
||||
chamfer_steps="1"
|
||||
flexible="false"
|
||||
use_knot_distance="true"
|
||||
apply_no_radius="true"
|
||||
apply_with_radius="true"
|
||||
only_selected="false"
|
||||
hide_knots="false" />
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
style="display:inline">
|
||||
<g
|
||||
id="g4"
|
||||
transform="translate(-86.163789,-27.213761)"
|
||||
style="fill:#d40000" />
|
||||
<path
|
||||
style="fill:#b3b3b3;stroke:#000000;stroke-width:1.865;stroke-opacity:0.97813344"
|
||||
d="M 6.1040265,195 61.040265,105 12.208053,75.000001 54.936238,5 70.196305,5 27.468119,75.000001 76.300331,105 21.364093,195 Z"
|
||||
id="path37"
|
||||
sodipodi:nodetypes="ccccccccc" />
|
||||
<path
|
||||
style="fill:#666666;stroke:#000000;stroke-width:1.865;stroke-opacity:0.98773342;fill-opacity:1"
|
||||
d="M 30.520132,195 85.456371,105 36.624159,75.000002 79.352344,5.0000008 H 94.612411 L 51.884225,75.000002 100.71644,105 45.780199,195 Z"
|
||||
id="path64"
|
||||
sodipodi:nodetypes="ccccccccc" />
|
||||
<path
|
||||
style="fill:#d40000;stroke:#000000;stroke-width:1.865;stroke-opacity:0.98453319"
|
||||
d="M 74.469123,83.000001 122.08053,5 l 0,25 -36.624159,60.000001 z"
|
||||
id="path65"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#d40000;stroke:#000000;stroke-width:1.865;stroke-opacity:0.97493327"
|
||||
d="M 189.22482,195 122.08053,5.0000001 V 30 l 57.98825,85 z"
|
||||
id="path66"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
style="fill:#800000;stroke:#000000;stroke-width:1.45751;stroke-opacity:0.98933333"
|
||||
d="m 109.72093,107.88517 h 43.08179 L 158.95725,120 H 97.41186 Z"
|
||||
id="path67" />
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 45 KiB |
Before Width: | Height: | Size: 206 KiB |
Before Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 522 KiB |
Before Width: | Height: | Size: 44 KiB |
Before Width: | Height: | Size: 2.8 MiB |
9
iflpanel/ssavpn/index.html
Normal file
|
@ -0,0 +1,9 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf8" />
|
||||
</head>
|
||||
<body>
|
||||
<script>window.location.replace("https://vpn.asandikci.com");</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,108 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<?php
|
||||
### ERROR HANDLING ###
|
||||
|
||||
function warnError($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
echo "<br><p style='padding:0px;margin:0px;background-color:white;color:black;'><b style='color:red;'>Error:</b> [$errno] $errstr <br> in file <b style='color:blue'>$errfile</b> line <b style='color:red'>$errline</b></p>";
|
||||
}
|
||||
set_error_handler("warnError");
|
||||
|
||||
if (!$_SERVER['DOCUMENT_ROOT']) {
|
||||
$_SERVER['DOCUMENT_ROOT'] = '/weblink';
|
||||
}
|
||||
# TODO separate file
|
||||
?>
|
||||
|
||||
<head>
|
||||
<!-- Meta Content -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="SSA VPN, fatih meb interneti için VPN çözümü">
|
||||
<meta name="keywords" content="SSA,SSA VPN,vpn,f@tih,fatih">
|
||||
<meta name="author" content="Aliberk Sandıkçı">
|
||||
|
||||
<!-- CSS Files -->
|
||||
<link rel="stylesheet" type="text/css" href="./assets/css/main.css">
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>
|
||||
SSA VPN
|
||||
</title>
|
||||
<link rel="shortcut icon" href="assets/iflpanel/ssavpn.svg" type="image/x-icon">
|
||||
</head>
|
||||
|
||||
<style>
|
||||
.inner_button_lay {
|
||||
border: 1px white solid;
|
||||
border-radius: 5px;
|
||||
padding: 0.7rem;
|
||||
background-color: #10161d;
|
||||
}
|
||||
|
||||
.p_inb {
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
</style>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
<a href="/iflpanel/ssavpn/" id="hlogo" class="tmpinfo" style="margin: auto;"><img src="assets/iflpanel/ssavpn.svg"></a>
|
||||
<!-- <div class="tmpinfo">SSA VPN</div> -->
|
||||
</header>
|
||||
|
||||
<div class="main-scrollable">
|
||||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
|
||||
|
||||
<h1 class="glow">SSA VPN </h1>
|
||||
<p style="font-size:14px;">Şifreleme sayesinde Gelişmiş Güvenlik ve Gizlilik
|
||||
<br>Yüksek Hız ve Düşük Gecikme (50Mbit/s 50ms)
|
||||
<br><b>Fatih/MEB interneti ile uyumlu!</b>
|
||||
</p><br>
|
||||
<hr style="width: 100%;margin-bottom:1rem;">
|
||||
<div class="links">
|
||||
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./apk/"><span>Android Uygulamasını (apk) İndir</span></a></p>
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./ssa-sertifika.pem"><span>SSA Sertifika</span></a></p>
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./kurulum/"><span>NASIL KURULUR</span></a></p>
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./odeme/"><span>ÖDEME BİLGİLERİ</span></a></p>
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./tos.html"><span>Kullanıcı Sözleşmesi</span></a></p>
|
||||
<p class="p_inb"><a class="button inner_button_lay" href="./privacy.html"><span>Gizlilik Politikası</span></a></p>
|
||||
</div>
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
foreach ($dir as $file) {
|
||||
if ((!$file->isDot()) && str_ends_with($file, ".js") && $file != "jquery.js") {
|
||||
echo '<script src="/assets/js/' . $file . '"></script>' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,108 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<?php
|
||||
### ERROR HANDLING ###
|
||||
|
||||
function warnError($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
echo "<br><p style='padding:0px;margin:0px;background-color:white;color:black;'><b style='color:red;'>Error:</b> [$errno] $errstr <br> in file <b style='color:blue'>$errfile</b> line <b style='color:red'>$errline</b></p>";
|
||||
}
|
||||
set_error_handler("warnError");
|
||||
|
||||
if (!$_SERVER['DOCUMENT_ROOT']) {
|
||||
$_SERVER['DOCUMENT_ROOT'] = '/weblink';
|
||||
}
|
||||
# TODO separate file
|
||||
?>
|
||||
|
||||
<head>
|
||||
<!-- Meta Content -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="SSA VPN, fatih meb interneti için VPN çözümü">
|
||||
<meta name="keywords" content="SSA,SSA VPN,vpn,f@tih,fatih">
|
||||
<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/extra_without_scss.css">
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>
|
||||
Kurulum | SSA VPN
|
||||
</title>
|
||||
<link rel="shortcut icon" href="../assets/iflpanel/ssavpn.svg" type="image/x-icon">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
<a href="/iflpanel/ssavpn/" id="hlogo" class="tmpinfo" style="margin: auto;"><img src="../assets/iflpanel/ssavpn.svg"></a>
|
||||
</header>
|
||||
<div class="main-scrollable">
|
||||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
<h1>Kurulum</h1>
|
||||
<hr style="width: 100%;">
|
||||
<h2 id="android">Android</h2>
|
||||
<ol style="text-align: left; align-self:baseline;">
|
||||
<li><a href="../apk/" target="_blank">apk dosyası</a>nı indirin ve kurun</li>
|
||||
<li><a href="../ssa-sertifika.pem">SSA Sertifika dosyası</a>nı indirin ve SSA VPN uygulaması ile açın</li>
|
||||
<li>SSA VPN uygulamasını açın ve <b>VPN Profili Oluştur</b> butonuna tıklayın</li>
|
||||
<li>Sunucu yerine <b class="copy_element" id="server_address" onclick="copy2Clipboard('server_address')">141.95.52.145</b> adresini ve kullanıcı adı/şifrenizi giriniz</li>
|
||||
<li>Profil Adı kısmına <b class="copy_element" id="server_name" onclick="copy2Clipboard('server_name')">SSA VPN</b> yazınız (opsiyonel)</li>
|
||||
<li>Kaydet tuşuna tıklayınız ve menüye eklenen vpn profilene bağlanmak için üstüne tıklayınız</li>
|
||||
<li>Eğer karşınıza çıkarsa pil optimizasyon ve vpn bağlantısı seçeneklerine izin veriniz</li>
|
||||
<li><b>Artık Kullanmaya başlayabilirsiniz !!!</b></li>
|
||||
</ol>
|
||||
<sup style="text-align: left; align-self:baseline;">Kolaylık olması açısından üst menüye hızlı bağlantı ikonunu ekleyebilirsiniz</sup>
|
||||
|
||||
<hr style="width: 100%;">
|
||||
<h2 id="windows">Windows</h2>
|
||||
<ol style="text-align: left; align-self:baseline;">
|
||||
<li><a href="../ssa-sertifika.pem">SSA Sertifika dosyası</a>nı indirin</li>
|
||||
<li><b>Bilgisayar Sertifikaları</b> uygulamasını açın</li>
|
||||
<li>Soldaki Dosya Menüsünden <b>Güvenilen Kök Sertifikalar</b> seçeneğini seçin</li>
|
||||
<li>Eylem Menüsünden <b>Al</b> (veya içeri aktar) seçeneğini seçin.</li>
|
||||
<li>Açılan pencerede ilk önce sağdan <b>tüm dosyalar</b> seçeneğini seçin, sonra ilk adımda indirdiğiniz sertifika dosyasını bulup seçin</li>
|
||||
<li><b>Kontrol Paneli</b> Uygulamasını açın ve <b>İnternet ve Bağlantı Ayarları</b> kısmına gelin</li>
|
||||
<li><b>Yeni bir Ağ veya bağlantı oluşturun</b> seçeneğini seçin</li>
|
||||
<li><b>Bir çalışma alanına bağlanın</b> seçeneğini seçin ardından <b>Kendi internet bağlantımı kullan (VPN)</b> seçeneğini seçin</li>
|
||||
<li><b>İnternet adresi</b> kısmına <b class="copy_element" onclick="copy2Clipboard('server_address')">141.95.52.145</b> adresini ve sonraki kutucuğa <b class="copy_element" onclick="copy2Clipboard('server_name')">SSA VPN</b> girin</li>
|
||||
<li>Tamam tuşuna tıklayın, <b>Artık Kullanmaya başlayabilirsiniz !!!</b></li>
|
||||
<li>Alt paneldeki internet kısmından kullanıcı adı ve şifrenizi girerek SSA VPN'i aktileştirebilirsiniz.</li>
|
||||
</ol>
|
||||
<sup style="text-align: left; align-self:baseline;">İlk iki sefer kullanıcı adı/şifre girmeniz gerekmektedir.</sup>
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
foreach ($dir as $file) {
|
||||
if ((!$file->isDot()) && str_ends_with($file, ".js") && $file != "jquery.js") {
|
||||
echo '<script src="/assets/js/' . $file . '"></script>' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
<script src="../assets/copy.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,92 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
||||
<?php
|
||||
### ERROR HANDLING ###
|
||||
|
||||
function warnError($errno, $errstr, $errfile, $errline)
|
||||
{
|
||||
echo "<br><p style='padding:0px;margin:0px;background-color:white;color:black;'><b style='color:red;'>Error:</b> [$errno] $errstr <br> in file <b style='color:blue'>$errfile</b> line <b style='color:red'>$errline</b></p>";
|
||||
}
|
||||
set_error_handler("warnError");
|
||||
|
||||
if (!$_SERVER['DOCUMENT_ROOT']) {
|
||||
$_SERVER['DOCUMENT_ROOT'] = '/weblink';
|
||||
}
|
||||
# TODO separate file
|
||||
?>
|
||||
|
||||
<head>
|
||||
<!-- Meta Content -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="description" content="SSA VPN, fatih meb interneti için VPN çözümü">
|
||||
<meta name="keywords" content="SSA,SSA VPN,vpn,f@tih,fatih,ödeme,pricing">
|
||||
<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/extra_without_scss.css">
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>
|
||||
Ödeme Bilgileri | SSA VPN
|
||||
</title>
|
||||
<link rel="shortcut icon" href="../assets/iflpanel/ssavpn.svg" type="image/x-icon">
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
<a href="/iflpanel/ssavpn/" id="hlogo" class="tmpinfo" style="margin: auto;"><img src="../assets/iflpanel/ssavpn.svg"></a>
|
||||
</header>
|
||||
<div class="main-scrollable">
|
||||
<article class="plain" style="text-align:center;align-items:center;">
|
||||
<h1>Ödeme Bilgileri</h1>
|
||||
<hr style="width: 100%;">
|
||||
<h2>IBAN:</h2>
|
||||
<h2 style="margin-top: 0px;text-decoration:none;"><b class="copy_element" id="IBAN" onclick="copy2Clipboard('IBAN')">TR63 0082 9000 0949 1444 3182 51</b><span id="IBAN-tip"></span></h2>
|
||||
|
||||
<hr style="width: 100%;">
|
||||
<h2>Papara Numarası:</h2>
|
||||
<h2 style="margin-top: 0px;text-decoration:none;"><b class="copy_element" id="Papara" onclick="copy2Clipboard('Papara')">14444318251</b><span id="Papara-tip"></span></h2>
|
||||
|
||||
<hr style="width: 100%;">
|
||||
<p><b>"isim-soyisim, SSA VPN" şeklinde açıklama giriniz.</b></p>
|
||||
<p>Mobil Cihazlar için <b>tek seferlik</b> 25₺<br>
|
||||
Masaüstü/Laptop Cihazlar için <b>tek seferlik</b> 30₺<br>
|
||||
Hem Mobil Hem Masaüstü/Laptop Cihazlar için (toplam 2 hesap) <b>tek seferlik</b> 40₺
|
||||
</p>
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
</div>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
foreach ($dir as $file) {
|
||||
if ((!$file->isDot()) && str_ends_with($file, ".js") && $file != "jquery.js") {
|
||||
echo '<script src="/assets/js/' . $file . '"></script>' . PHP_EOL . ' ';
|
||||
}
|
||||
} ?>
|
||||
<script src="../assets/copy.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,85 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>Gizlilik Sözleşmesi | SSA VPN</title>
|
||||
</head>
|
||||
|
||||
<body style="background-color: rgba(15, 15, 15, 0.812); color:aliceblue;">
|
||||
<h1>Gizlilik Politikası</h1>
|
||||
<p>Son Güncelleme: 11/11/2023</p>
|
||||
<hr>
|
||||
<p> Güvenliğiniz bizim için önemli. Bu sebeple zorunlu olarak topladığımız verilerinizi şifrelemekte ve hassasiyetle
|
||||
korumaktayız
|
||||
</p>
|
||||
<p>Biz, SSA VPN, veri sorumlusu olarak, bu gizlilik ve kişisel verilerin korunması politikası ile, hangi kişisel
|
||||
verilerinizin hangi amaçla işleneceği, işlenen verilerin kimlerle ve neden paylaşılabileceği, veri işleme yöntemimiz
|
||||
ve hukuki sebeplerimiz ile; işlenen verilerinize ilişkin haklarınızın neler olduğu hususunda sizleri aydınlatmayı
|
||||
amaçlıyoruz.
|
||||
</p>
|
||||
<h2>Toplanan Kişisel Verileriniz, Toplanma Yöntemi ve Hukuki Sebebi</h2>
|
||||
<p>IP adresiniz sadece sistemin gerekli bağlantıları gerçekleştirmesini sağlamak için toplanmaktadır. Otomatik veya
|
||||
otomatik olmayan herhangi bir yöntem ile analitik sağlayıcılar, reklam ağları, arama bilgi sağlayıcıları, teknoloji
|
||||
sağlayıcıları gibi üçüncü taraflar ile <b>paylaşılmamaktadır, işlenmemektedir</b>. Legal sebeplerden ötürü 1ay
|
||||
boyunca ip adresiniz sunucumuzda şifrelenmiş bir şekilde saklanır.
|
||||
</p>
|
||||
<h2>Kişisel Verilerinizin İşlenme Amacı</h2>
|
||||
<p>
|
||||
Kişisel verileriniz <b>kullanıcıların kendi istekleri doğrultusunda</b> sistem hatalarının giderilmesi esnasında
|
||||
kullanılması haricinde otomatik olarak işlenmemektedir.
|
||||
</p>
|
||||
<h2>Toplanan Kişisel Verilerin Kimlere ve Hangi Amaçlarla Aktarılabileceği</h2>
|
||||
<p>
|
||||
Bizimle paylaştığınız kişisel verileriniz (ip adresiniz); talep halinde <b>adli</b> makamlara, gerekli teknik ve
|
||||
idari önlemler alınması koşulu ile aktarılabilecektir.
|
||||
</p>
|
||||
|
||||
<h2>Kişisel Verileri İşlenen Kişi Olarak Haklarınız</h2>
|
||||
<p>KVKK madde 11 uyarınca herkes, veri sorumlusuna başvurarak aşağıdaki haklarını kullanabilir:</p>
|
||||
|
||||
<ol style="list-style-type: lower-alpha;">
|
||||
<li>Kişisel veri işlenip işlenmediğini öğrenme,</li>
|
||||
<li>Kişisel verileri işlenmişse buna ilişkin bilgi talep etme,
|
||||
</li>
|
||||
<li>Kişisel verilerin işlenme amacını ve bunların amacına uygun kullanılıp kullanılmadığını öğrenme,</li>
|
||||
<li>Yurt içinde veya yurt dışında kişisel verilerin aktarıldığı üçüncü kişileri bilme,</li>
|
||||
<li>Kişisel verilerin eksik veya yanlış işlenmiş olması hâlinde bunların düzeltilmesini isteme,</li>
|
||||
<li>Kişisel verilerin silinmesini veya yok edilmesini isteme,</li>
|
||||
<li>(e) ve (f) bentleri uyarınca yapılan işlemlerin, kişisel verilerin aktarıldığı üçüncü kişilere bildirilmesini
|
||||
isteme,</li>
|
||||
<li>İşlenen verilerin münhasıran otomatik sistemler vasıtasıyla analiz edilmesi suretiyle kişinin kendisi aleyhine
|
||||
bir sonucun ortaya çıkmasına itiraz etme,
|
||||
</li>
|
||||
<li>Kişisel verilerin kanuna aykırı olarak işlenmesi sebebiyle zarara uğraması hâlinde zararın giderilmesini talep
|
||||
etme, haklarına sahiptir.</li>
|
||||
</ol>
|
||||
|
||||
<p>Yukarıda sayılan haklarınızı kullanmak üzere <a href="mailto:contact@aliberksandikci.com.tr">contact@aliberksandikci.com.tr</a> üzerinden
|
||||
bizimle iletişime geçebilirsiniz.</p>
|
||||
|
||||
<h2>İletişim</h2>
|
||||
|
||||
<p>Sizlere hizmet sunabilmek amaçlı sadece gerekli olan kişisel verilerinizin, işbu
|
||||
gizlilik ve kişisel verilerin işlenmesi politikası uyarınca işlenmesini, kabul edip etmemek hususunda tamamen
|
||||
özgürsünüz. vpn.iflpanel.com websitesini, SSA VPN android uygulamasını, ssa-sertifikayı veya SSA VPN hizmetlerinden
|
||||
herhangi birini kullanmaya devam ettiğiniz takdirde kabul etmiş olduğunuz tarafımızca varsayılacak olup, daha
|
||||
ayrıntılı bilgi için bizimle <a href="mailto:contact@aliberksandikci.com.tr">contact@aliberksandikci.com.tr</a> e-mail adresi üzerinden
|
||||
iletişime geçmekten lütfen çekinmeyiniz. </p>
|
||||
|
||||
</body>
|
|
@ -1,29 +0,0 @@
|
|||
-----BEGIN CERTIFICATE-----
|
||||
MIIE8DCCAtigAwIBAgIIPlRW95un+dQwDQYJKoZIhvcNAQEMBQAwFjEUMBIGA1UE
|
||||
AxMLVlBOIHJvb3QgQ0EwHhcNMjMwOTE2MDk1MjIxWhcNMzMwOTEzMDk1MjIxWjAW
|
||||
MRQwEgYDVQQDEwtWUE4gcm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC
|
||||
AgoCggIBAJ5NqMhiiomHbWm+K/tdgBnhJ7vO0+HekE0aze2d8d4vGNEHCWca6iCV
|
||||
l6yAByP/DpK4NpqhRSvyGab/LJVtqOXO3zgH1ZVKnAH0hWVj3UZcjCYe9UPObvYb
|
||||
ndLBVok451M/QbTyWptxRioXJscOXJ9DJYmenIXFgaV8+UBYlVfyldIzCeHNuroo
|
||||
WRjjDMilymtvV8DY8uEX0ZgNbwXVu6iP4l2ZC4WPmMB7nl2FhflLolalNFXtYaKI
|
||||
OAWND+3e+mJI03ojzYjG/XYzg2AT0AolHTATUfHBfxckl96EPk5zUQBHgoLysdHe
|
||||
xPjIey376rey/7fKvATpDTZkxoOGEA8UAgyvfM0zex58z/OjsaMaRQrFNJ073pPQ
|
||||
UPcvHpDDxyohx/L9nQotxBAkHEHlU9gzK1liBN2S6q/vljK/mnbQmi/aTv2wkXfN
|
||||
l1DDOlnv5yTP3MfximfHMQOOazK8C5FcU1HbVnzmB4L1WCbzc8ePFXsYN50JrX9O
|
||||
I47XhC096TjU7QxBQkMjAHyPUQ4yJJGneJ5ovHGDB9Wa55pLQS0lU69SnhnpM8Lt
|
||||
JkG3hUo4lrlumeEiRW1jC5NswKiqFW87sNBsUZN63s5Vpuwk1bFqCzujeXaughSe
|
||||
IrrevWciEzXtOglRyzdTmfRXzgc4zH//zdYKr54hjWGG245r8FQjAgMBAAGjQjBA
|
||||
MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS7qDly
|
||||
4SuxV4eM+ZLw/D/mE28EvjANBgkqhkiG9w0BAQwFAAOCAgEAf1juSwI2kto3hn9X
|
||||
uxVI40oVfzD6wOXVNWo4Brfmt/t9+1keZSrTS+fxKH9EfbDjhzZmXt1QgHgSPO1Y
|
||||
g5KJiNCSfWmvaiI07+Kn4AtPSrTz6hcHM1ETC9E9IC0gFfmraAFG7gD8jQIJ+B53
|
||||
7Hk3jNa1d0l+UEir+Gt2fzBRO5o307jQbsmP6scwpTzzsZLcW9ZSM/H7ZmAyB73u
|
||||
aebKl/gcIm/DmgPVdhY6vZi656USR8/DOTq61GF5eA20lVE5kmCoVhdGkVUtD5Ji
|
||||
5GVSBD+pGLf4WxrH7hvkfqb4G1RuhFrd+6oOESC6kdXHwB+2U2nyU1DJDpjrO64C
|
||||
UKM6MzMxCEvLoSKgmumrRQfLKN7aSRbPz28t0qilzgz++mfzQEexmf9gYppsB9Qv
|
||||
4j6AoSq5N0PX1FiqgmDMT7LQu/FuNKy+scgpfegjx39H5RjZpLdR5cvpVntbGvor
|
||||
oYvPok+wo3kKXx6z16j9wuUV2fZoA9WAwS2rNveBss0sVyqxyK3D6pG4kvZTeF8L
|
||||
xvohBPHlrIPErvtlHX6stLFjA9LE0lQzUBsDH/8CUTTHzP7q4ker09Sp5yFjctMD
|
||||
ESb7TlbEXZ62CoXPJZhHXANuxr7AzObVzksUku45NwpI/Ehdh+SmZmN2wtFRdD/J
|
||||
ElxksEwnDUL/QQMpQqE/fnaMeRM=
|
||||
-----END CERTIFICATE-----
|
|
@ -1,81 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>Kullanım Koşulları | SSA VPN</title>
|
||||
</head>
|
||||
|
||||
<body style="background-color: rgba(15, 15, 15, 0.812); color:aliceblue;">
|
||||
<h1>Servis Kullanım Koşulları</h1>
|
||||
<p>Son Güncelleme: 11/11/2023</p>
|
||||
<hr>
|
||||
<p>https://asandikci.com/iflpanel/ssavpn/ adresinde yer alan bu internet sitesini ziyaret ederek, SSA VPN Android uygulamasını
|
||||
kullanarak, kullanıcı adı/parola talep ederek, ssa-sertifikayı kullanarak veya SSA VPN hizmetlerinden herhangi
|
||||
birini kullanarak bu sözleşmede yazan koşulları kabul edersiniz. Bu sayfadaki herhangi bir koşulu kabul
|
||||
etmiyorsanız, lütfen bu siteye ve ilgili diğer servislere olan erişiminizi sonlandırınız.
|
||||
</p>
|
||||
<h2>1. Gizlilik</h2>
|
||||
<p>Gizlilik Politikası <a href="privacy.html">bir başka sayfada</a> mevcuttur. Sitemizi kullandığınız takdirde,
|
||||
verilerinizin işlenmesinin Gizlilik Politikası'na uygun olarak gerçekleştiğini kabul edersiniz.
|
||||
</p>
|
||||
|
||||
<h2>2. Telif Hakları</h2>
|
||||
<p>Bu internet sitesindeki yer alan metinler ve kullanılan yazılım dahil, tüm içeriğin sahibi Aliberk Sandıkçı olup
|
||||
açık lisanslıdır. Site içeriğini, <b>aslını taklit etme amacı gütmemek, ticari amaçlarla kullanmamak ve atıfta
|
||||
bulunmak koşulu ile</b> herhangi bir izin olmaksızın kaynak kod içerisinden doğrudan çoğaltabilir, kopyalayabilir
|
||||
veya yayabilirsiniz.
|
||||
</p>
|
||||
|
||||
<h2>GENEL HÜKÜMLER</h2>
|
||||
<ul>
|
||||
<li class="element">Bir kullanıcı adı + parola ikilisi ile sadece tek bir cihazda oturum açılabilmektedir.
|
||||
Tarafınıza ulaştırılan aynı doğrulama bilgileri ile farklı cihazlarda hesap açmanız bağlantı problemleri
|
||||
ve kısıtlamalara yol açabilir. Bunun yerine yeni bir hesap adı isteyiniz.
|
||||
</li>
|
||||
|
||||
<li class="element">Mobil cihazlarınız için size tahsis edilmiş hesaplar mobil cihazlarda, bilgisayar/laptop
|
||||
cihazlarınız
|
||||
için size tahsis ediliş hesaplar bilgisayar/laptop cihazlarınızda en optimize ve doğru şekilde çalışmaktadır.
|
||||
Aksi taktirde geçici sunucu banı veya internet problemleri yaşayabilirsinizz. Hesapların açılma amacı
|
||||
dışındaki bir cihazda kullanımından doğacak yükümlülüklerden SSA VPN sorumlu değildir.
|
||||
</li>
|
||||
|
||||
<li class="element">
|
||||
SSA VPN hiçbir şekilde altyapı/wifi/modem/ethernet hızı ve stabilitesinden ve çekim gücünden sorumlu
|
||||
değildir. SSA VPN sadece mevcut bağlantının şifrelenerek iletilmesini sağlar.
|
||||
</li>
|
||||
|
||||
<li class="element">
|
||||
SSA VPN sunucuları Fransa ve Almanya sınırları içinde bulunmaktadır. Eğer sunucu seçiminin sizin için bir
|
||||
önemi varsa hesabınızı almadan önce iletişime geçiniz!
|
||||
</li>
|
||||
|
||||
<li class="element">
|
||||
Her kullanıcı kendi kullanımından ve tükettiği/ürettiği içerikten kendisi sorumludur. Kullanıcının servisi
|
||||
legal olmayan sebepler ile kullanımı SSA VPN, iflpanel, Aliberk Sandıkçı kuruluş ve kişileri ile
|
||||
ilişkilendirilemez!
|
||||
</li>
|
||||
|
||||
<li class="element">
|
||||
Kullanıcılar Servis Kullanım koşullarının güncelliğini denetlemekle yükümlüdürler.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
</body>
|
|
@ -1,14 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<script>
|
||||
window.location.replace("https:/asandikci.com/iflpanel/ssavpn/kurulum/")
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,23 +0,0 @@
|
|||
@charset "UTF-8";
|
||||
/* 2023 Aliberk Sandıkçı*/
|
||||
#ders-programi {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
padding: 0px 100px;
|
||||
padding-top: 10px;
|
||||
}
|
||||
#ders-programi img {
|
||||
max-width: 1309px;
|
||||
max-height: 601px;
|
||||
aspect-ratio: 1309/601;
|
||||
}
|
||||
|
||||
.min,
|
||||
.sec,
|
||||
.msec {
|
||||
display: flex;
|
||||
width: 7vw;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=dev.css.map */
|
|
@ -1 +0,0 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../scss/dev.scss"],"names":[],"mappings":";AAAA;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAIJ;AAAA;AAAA;EAGE;EACA;EACA","file":"dev.css"}
|
|
@ -1,278 +0,0 @@
|
|||
@charset "UTF-8";
|
||||
/* 2023 Aliberk Sandıkçı*/
|
||||
/* 2023 Aliberk Sandıkçı*/
|
||||
@keyframes rain {
|
||||
0% {
|
||||
background-color: white;
|
||||
}
|
||||
25% {
|
||||
background-color: red;
|
||||
}
|
||||
50% {
|
||||
background-color: green;
|
||||
}
|
||||
100% {
|
||||
background-color: yellow;
|
||||
}
|
||||
}
|
||||
* {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
body,
|
||||
html {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin: 0px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
background-color: black;
|
||||
color: aliceblue;
|
||||
font-family: "Montserrat", Arial, Helvetica, sans-serif;
|
||||
}
|
||||
|
||||
section#top {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
user-select: none;
|
||||
width: 100%;
|
||||
height: 100px;
|
||||
}
|
||||
section#top .class {
|
||||
margin: 5px;
|
||||
min-width: 20vw;
|
||||
margin-right: auto;
|
||||
font-weight: 800;
|
||||
font-style: oblique;
|
||||
}
|
||||
section#top .clock {
|
||||
display: flex;
|
||||
}
|
||||
section#top .clock #time {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
align-content: center;
|
||||
justify-items: center;
|
||||
justify-self: center;
|
||||
justify-content: center;
|
||||
font-size: 80px;
|
||||
}
|
||||
section#top .settings-box {
|
||||
min-width: 20vw;
|
||||
margin-left: auto;
|
||||
text-align: right;
|
||||
}
|
||||
section#top .settings-box button {
|
||||
height: 30px;
|
||||
width: 30px;
|
||||
line-height: 20px;
|
||||
}
|
||||
section#top .settings-box #settings {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
align-items: end;
|
||||
font-size: small;
|
||||
margin-top: 5px;
|
||||
}
|
||||
section#top .settings-box #settings form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
position: relative;
|
||||
background-color: grey;
|
||||
}
|
||||
section#top .settings-box #settings form .cell {
|
||||
float: left;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
margin-bottom: 1vh;
|
||||
}
|
||||
section#top .settings-box #settings form .cell input[type=checkbox] {
|
||||
appearance: none;
|
||||
background-color: #fff;
|
||||
margin: 0;
|
||||
width: 1.15em;
|
||||
height: 1.15em;
|
||||
border: 0.15em solid darkslateblue;
|
||||
border-radius: 0.15em;
|
||||
transform: translateY(-0.075em);
|
||||
display: grid;
|
||||
place-content: center;
|
||||
outline: 0px solid white;
|
||||
outline-offset: 0px;
|
||||
}
|
||||
section#top .settings-box #settings form .cell input[type=checkbox]::before {
|
||||
content: "";
|
||||
width: 0.65em;
|
||||
height: 0.65em;
|
||||
transform: scale(0);
|
||||
transition: 120ms transform ease-in-out;
|
||||
box-shadow: inset 1em 1em green;
|
||||
transform-origin: bottom left;
|
||||
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
|
||||
}
|
||||
section#top .settings-box #settings form .cell input[type=checkbox]:checked::before {
|
||||
transform: scale(1);
|
||||
}
|
||||
section#top .settings-box #settings form .cell input[type=checkbox]:focus {
|
||||
outline: max(2px, 0.15em) solid white;
|
||||
outline-offset: max(2px, 0.15em);
|
||||
}
|
||||
section#top .settings-box #settings form .cell label {
|
||||
padding-left: 5px;
|
||||
display: block;
|
||||
text-align: left;
|
||||
align-self: center;
|
||||
}
|
||||
section#mid {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
text-align: center;
|
||||
user-select: none;
|
||||
}
|
||||
section#mid #timers {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
section#mid #timers #timers-menu ul {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 0;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li {
|
||||
list-style-type: none;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable {
|
||||
position: relative;
|
||||
border: none;
|
||||
background: transparent;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
outline-offset: 4px;
|
||||
transition: filter 250ms;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .shadow {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: hsla(0, 0%, 0%, 0.25);
|
||||
will-change: transform;
|
||||
transform: translateY(2px);
|
||||
transition: transform 600ms cubic-bezier(0.3, 0.7, 0.4, 1);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .edge {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: linear-gradient(to left, hsl(235, 84%, 26%) 0%, hsl(235, 84%, 26%) 8%, hsl(235, 84%, 26%) 92%, hsl(235, 84%, 26%) 100%);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .front {
|
||||
display: block;
|
||||
position: relative;
|
||||
padding: 12px 42px;
|
||||
color: white;
|
||||
background: hsl(188, 88%, 29%);
|
||||
will-change: transform;
|
||||
transform: translateY(-4px);
|
||||
transition: transform 600ms cubic-bezier(0.3, 0.7, 0.4, 1);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:hover {
|
||||
filter: brightness(110%);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:hover .front {
|
||||
transform: translateY(-6px);
|
||||
transition: transform 250ms cubic-bezier(0.3, 0.7, 0.4, 1.5);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:active .front {
|
||||
transform: translateY(-2px);
|
||||
transition: transform 34ms;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:hover .shadow {
|
||||
transform: translateY(4px);
|
||||
transition: transform 250ms cubic-bezier(0.3, 0.7, 0.4, 1.5);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:active .shadow {
|
||||
transform: translateY(1px);
|
||||
transition: transform 34ms;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable:focus:not(:focus-visible) {
|
||||
outline: none;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable-f .front,
|
||||
section#mid #timers #timers-menu ul li .pushable-f .edge,
|
||||
section#mid #timers #timers-menu ul li .pushable-f .shadow {
|
||||
border-top-left-radius: 13px;
|
||||
border-bottom-left-radius: 13px;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable-f .edge {
|
||||
background: linear-gradient(to left, hsl(235, 84%, 26%) 0%, hsl(235, 84%, 26%) 8%, hsl(235, 84%, 26%) 92%, hsl(193, 100%, 30%) 100%);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable-l .front,
|
||||
section#mid #timers #timers-menu ul li .pushable-l .edge,
|
||||
section#mid #timers #timers-menu ul li .pushable-l .shadow {
|
||||
border-top-right-radius: 13px;
|
||||
border-bottom-right-radius: 13px;
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .pushable-l .edge {
|
||||
background: linear-gradient(to left, hsl(193, 100%, 30%) 0%, hsl(235, 84%, 26%) 8%, hsl(235, 84%, 26%) 92%, hsl(235, 84%, 26%) 100%);
|
||||
}
|
||||
section#mid #timers #timers-menu ul li .front {
|
||||
font-size: medium;
|
||||
font-weight: 500;
|
||||
}
|
||||
section#mid #timers #stopwatch {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
section#mid #timers #stopwatch .timer {
|
||||
font-size: 150px;
|
||||
display: flex;
|
||||
align-self: center;
|
||||
}
|
||||
section#mid #timers #stopwatch .timer .min,
|
||||
section#mid #timers #stopwatch .timer .sec,
|
||||
section#mid #timers #stopwatch .timer .msec {
|
||||
width: 12vw;
|
||||
}
|
||||
section#mid #timers #timer {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
section#mid #timers #timer .timer {
|
||||
font-size: xx-large;
|
||||
}
|
||||
section#mid #yemek-listesi {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
section#mid #animations {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
section#bottom {
|
||||
margin-top: auto;
|
||||
}
|
||||
section#bottom #rainbow {
|
||||
width: 100%;
|
||||
height: 20px;
|
||||
animation: rain 4.72s ease infinite;
|
||||
}
|
||||
|
||||
.kronometre {
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
font-size: 50px;
|
||||
}
|
||||
|
||||
/*# sourceMappingURL=main.css.map */
|
|
@ -1 +0,0 @@
|
|||
{"version":3,"sourceRoot":"","sources":["../scss/main.scss","../scss/_animation.scss","../scss/_button.scss"],"names":[],"mappings":";AAAA;ACAA;AAEA;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;;ADZJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;;;AAMA;EACE;EACA;EACA;EAEA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EAGA;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAWZ;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGE;EACE;EACA;EACA;;AAEA;EAEE;EACA;;AEnKV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA,YACE;;AAGJ;EACE;EACA;EACA;EACA;EACA;EAEA;;AAOF;EACE;EACA;EACA;EAGA;EACA;EACA;EACA;EACA,YACE;;AAGJ;EACE;;AAGF;EACE;EACA,YACE;;AAGJ;EACE;EACA;;AAGF;EACE;EACA,YACE;;AAGJ;EACE;EACA;;AAGF;EACE;;AAKA;AAAA;AAAA;EAGE;EACA;;AAGF;EACE;;AAUF;AAAA;AAAA;EAIE;EACA;;AAGF;EACE;;AFwDM;EACE;EACA;;AAOR;EACE;EACA;;AAEA;EACE;EACA;EACA;;AAEA;AAAA;AAAA;EAGE;;AAKN;EACE;EACA;;AAEA;EACE;;AAMN;EACE;EACA;;AAGF;EACE;EACA;;AAMJ;EACE;;AAEA;EACE;EACA;EACA;;;AAKN;EACE;EACA;EACA","file":"main.css"}
|
|
@ -1,10 +0,0 @@
|
|||
.timer-action-button {
|
||||
color: white;
|
||||
background-color: #097a8b;
|
||||
border-radius: 10px;
|
||||
padding: 10px;
|
||||
margin: 10px;
|
||||
border-bottom-color: #0b147a;
|
||||
border-right-color: #0b147a;
|
||||
border-style: ridge;
|
||||
}
|
Before Width: | Height: | Size: 553 B |
|
@ -1,2 +0,0 @@
|
|||
// 2023 © Aliberk Sandıkçı
|
||||
// Temporary Development File
|
|
@ -1,120 +0,0 @@
|
|||
// 2023 © Aliberk Sandıkçı
|
||||
// Initialize Variables / Arrays / Maps and first functions
|
||||
// Import after utils, updates, and mid js files!
|
||||
|
||||
// CONSTANT VARIABLES
|
||||
const allButtons = [
|
||||
"timers-button",
|
||||
"yemekhane-button",
|
||||
"ders-programi",
|
||||
"animation-button",
|
||||
"settings-button",
|
||||
"stopwatch-button",
|
||||
"timer-button"
|
||||
];
|
||||
|
||||
const allCheckboxes = [
|
||||
"chx-clockSecond",
|
||||
"chx-timerMsec",
|
||||
"chx-devVersion",
|
||||
"chx-yksTimer",
|
||||
"chx-fullscreenClock",
|
||||
"chx-hideHeader",
|
||||
];
|
||||
|
||||
const midItems = ["timers", "yemek-listesi", "animations", "ders-programi"];
|
||||
const timersItems = ["stopwatch", "timer"];
|
||||
|
||||
const schoolPeriods = {
|
||||
["lessonStarts"]: ["08-40", "09-30", "10-20", "11-10", "12-00", "13-30", "14-20", "15-10"],
|
||||
["lessonEnds"]: ["09-20", "10-10", "11-00", "11-50", "12-40", "14-10", "15-00", "15-50"],
|
||||
};
|
||||
|
||||
// VARIABLES
|
||||
var specialPeriods = {
|
||||
["launchStart"]: "12-40",
|
||||
["schoolEnds"]: "15-50",
|
||||
};
|
||||
|
||||
var localSettings = {
|
||||
["local-grade"]: "Sınıf",
|
||||
["local-class"]: "Şube",
|
||||
}
|
||||
|
||||
var curVals = [
|
||||
"clockSecond",
|
||||
"timerMsec",
|
||||
"devVersion",
|
||||
"yksTimer",
|
||||
"fullscreenClock",
|
||||
"hideHeader",
|
||||
]
|
||||
|
||||
var curSeconds;
|
||||
var curMin;
|
||||
var curHour;
|
||||
|
||||
const confs = new Map();
|
||||
|
||||
FirstInitialization();
|
||||
var t = setInterval(DEVupdateSettings, 100);
|
||||
var t2 = setInterval(updateComponents, 100);
|
||||
|
||||
|
||||
function FirstInitialization() {
|
||||
getVariablesToConfig();
|
||||
getFormInputs();
|
||||
getURLSettings();
|
||||
updateFormInputs();
|
||||
|
||||
// Update Beginning Components
|
||||
console.log(confs.get("local-grade"));
|
||||
setToID("grade", confs.get("local-grade"), "Sınıf");
|
||||
setToID("class", confs.get("local-class"), "Şube");
|
||||
|
||||
updateComponents();
|
||||
}
|
||||
|
||||
|
||||
function getVariablesToConfig() {
|
||||
addObjectToConfig(localSettings, 1);
|
||||
}
|
||||
|
||||
function getFormInputs() {
|
||||
allCheckboxes.forEach(element => {
|
||||
let chx = document.getElementById(element);
|
||||
if (chx.checked) {
|
||||
confs.set(element.slice(4), "1");
|
||||
} else {
|
||||
confs.set(element.slice(4), "0");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function getURLSettings() {
|
||||
const queryString = window.location.search;
|
||||
const urlParams = new URLSearchParams(queryString);
|
||||
|
||||
addArrayToConfig(allCheckboxes, urlParams);
|
||||
addArrayToConfig(curVals, urlParams);
|
||||
addObjectToConfig(localSettings, urlParams);
|
||||
addObjectToConfig(specialPeriods, urlParams);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Update form inputs with local variables and user changed options
|
||||
*/
|
||||
function updateFormInputs() {
|
||||
confs.forEach((val, key) => {
|
||||
if (allCheckboxes.includes("chx-" + key)) {
|
||||
if (val == "0") {
|
||||
document.getElementById("chx-" + key).checked = false;
|
||||
} else {
|
||||
document.getElementById("chx-" + key).checked = true;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
|
@ -1,139 +0,0 @@
|
|||
// 2023 Aliberk Sandıkçı
|
||||
|
||||
// VARIABLES
|
||||
var FlagSecond = 0;
|
||||
var FlagSettings = 0;
|
||||
var FlagTimers = 1;
|
||||
var MidItems = ["timers", "stopwatch", "timer", "yemek-listesi", "animations"]
|
||||
|
||||
// RUN FUNCTIONS ON START
|
||||
updateTime();
|
||||
if (FlagSettings) { toggleSettings() }
|
||||
if (FlagTimers) { toggleTimers() }
|
||||
|
||||
// RUN FUNCTIONS PERIODICALLY
|
||||
var t = setInterval(updateTime, 1000);
|
||||
|
||||
|
||||
//
|
||||
// MAIN FUNCTIONS
|
||||
//
|
||||
|
||||
function updateTime() {
|
||||
var d = new Date();
|
||||
var curHour = getDigits(d.getHours(), 2);
|
||||
var curMin = getDigits(d.getMinutes(), 2);
|
||||
var curSeconds = getDigits(d.getSeconds(), 2);
|
||||
|
||||
if (FlagSecond) {
|
||||
document.getElementById("time").innerHTML = curHour + "." + curMin + "." + curSeconds;
|
||||
} else {
|
||||
document.getElementById("time").innerHTML = curHour + "." + curMin;
|
||||
}
|
||||
|
||||
if (curHour == 12 && (curMin >= 24 && curMin <= 30)) {
|
||||
document.getElementById("time").style.color = "red";
|
||||
document.getElementById("rainbow").style.display = "inherit";
|
||||
} else {
|
||||
document.getElementById("time").style.color = "inherit";
|
||||
document.getElementById("rainbow").style.display = "none";
|
||||
}
|
||||
}
|
||||
|
||||
function toggleClockSeconds() {
|
||||
let chx = document.getElementById("chx-clockSecond");
|
||||
if (chx.checked) {
|
||||
FlagSecond = 1;
|
||||
} else {
|
||||
FlagSecond = 0;
|
||||
}
|
||||
updateTime();
|
||||
}
|
||||
|
||||
function toggleDevVersion() {
|
||||
let chx = document.getElementById("chx-devVersion");
|
||||
if (chx.checked) {
|
||||
window.location.replace("dev.html" + window.location.search);
|
||||
} else {
|
||||
window.location.replace("index.html" + window.location.search);
|
||||
}
|
||||
}
|
||||
|
||||
function toggleSettings() {
|
||||
let settings = document.getElementById("settings");
|
||||
console.log(settings.style.display);
|
||||
if (settings.style.display == "flex") {
|
||||
settings.style.display = "none";
|
||||
} else {
|
||||
settings.style.display = "flex";
|
||||
}
|
||||
}
|
||||
|
||||
function toggleTimers(typ = "display") {
|
||||
switch (typ) {
|
||||
case "stopwatch":
|
||||
hideMidAll("stopwatch", "timers");
|
||||
toggleItem("id", "stopwatch");
|
||||
break;
|
||||
case "timer":
|
||||
hideMidAll("timer", "timers");
|
||||
toggleItem("id", "timer");
|
||||
break;
|
||||
default: // "display"
|
||||
hideMidAll("timers");
|
||||
toggleItem("id", "timers");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function toggleYemekListesi() {
|
||||
hideMidAll("yemek-listesi");
|
||||
toggleItem("id", "yemek-listesi");
|
||||
}
|
||||
|
||||
function toggleAnimations() {
|
||||
hideMidAll("animations");
|
||||
toggleItem("id", "animations");
|
||||
}
|
||||
|
||||
|
||||
// -----------------------------------------
|
||||
// UTILITIES
|
||||
//
|
||||
|
||||
function getDigits(str, num) {
|
||||
return ("0" + str).slice(-num);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {...any} except
|
||||
*/
|
||||
function hideMidAll(...except) {
|
||||
MidItems.forEach(element => {
|
||||
if (!except.includes(element)) {
|
||||
document.getElementById(element).style.display = "none";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/** type: id, class
|
||||
*
|
||||
* name: id or class name
|
||||
*/
|
||||
function toggleItem(type, name) {
|
||||
switch (type) {
|
||||
case "id":
|
||||
let item = document.getElementById(name);
|
||||
if (item.style.display == "flex") {
|
||||
item.style.display = "none";
|
||||
} else {
|
||||
item.style.display = "flex";
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
console.error("no toggle item except ids!");
|
||||
break;
|
||||
}
|
||||
}
|
|
@ -1,108 +0,0 @@
|
|||
var curAction = "wait";
|
||||
var previousAction = "wait"
|
||||
var startTime = new Date();
|
||||
var curTime = new Date();
|
||||
var timeMS = 0;
|
||||
var FlagMilisecond = 1;
|
||||
var timer = document.getElementById("stopwatch").getElementsByClassName("timer")[0];
|
||||
|
||||
tick();
|
||||
|
||||
// NOT OPTIMIZED, place in start switch
|
||||
var t = setInterval(tick, 10);
|
||||
|
||||
const sleep = ms => new Promise(r => setTimeout(r, ms));
|
||||
|
||||
async function Stopwatch(action) {
|
||||
switch (action) {
|
||||
case "start":
|
||||
console.log("start function started");
|
||||
if (previousAction == "start") { break; }
|
||||
startTime = new Date();
|
||||
curAction = "increase";
|
||||
tick();
|
||||
previousAction = "start";
|
||||
document.getElementById("start-cro").style.color = "greenyellow";
|
||||
document.getElementById("start-cro").style.borderTopColor = "greenyellow";
|
||||
document.getElementById("start-cro").style.borderLeftColor = "greenyellow";
|
||||
await sleep(200);
|
||||
document.getElementById("start-cro").style.color = "grey";
|
||||
document.getElementById("start-cro").style.borderTopColor = "grey";
|
||||
document.getElementById("start-cro").style.borderLeftColor = "grey";
|
||||
break;
|
||||
case "stop":
|
||||
curAction = "stop";
|
||||
tick();
|
||||
previousAction = "stop";
|
||||
document.getElementById("stop-cro").style.color = "red";
|
||||
document.getElementById("stop-cro").style.borderTopColor = "red";
|
||||
document.getElementById("stop-cro").style.borderLeftColor = "red";
|
||||
await sleep(200);
|
||||
document.getElementById("stop-cro").style.color = "white";
|
||||
document.getElementById("stop-cro").style.borderTopColor = "white";
|
||||
document.getElementById("stop-cro").style.borderLeftColor = "white";
|
||||
document.getElementById("start-cro").style.color = "white";
|
||||
document.getElementById("start-cro").style.borderTopColor = "white";
|
||||
document.getElementById("start-cro").style.borderLeftColor = "white";
|
||||
break;
|
||||
|
||||
default:
|
||||
// console.error("no action (old script)");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function updateMsec() {
|
||||
timer.getElementsByClassName("msec")[0].innerHTML = getDigits(Math.floor((timeMS / 10) % 100), 2);
|
||||
}
|
||||
|
||||
function updateSec() {
|
||||
timer.getElementsByClassName("sec")[0].innerHTML = getDigits(Math.floor((timeMS / 1000) % 60), 2);
|
||||
}
|
||||
|
||||
function updateMin() {
|
||||
timer.getElementsByClassName("min")[0].innerHTML = getDigits(Math.floor((timeMS / 1000 / 60) << 0), 2);
|
||||
}
|
||||
|
||||
|
||||
function getDigits(str, num) {
|
||||
return ("0" + str).slice(-num);
|
||||
}
|
||||
|
||||
function tick() {
|
||||
switch (curAction) {
|
||||
case "increase":
|
||||
curTime = new Date();
|
||||
timeMS = (curTime.getTime() - startTime.getTime());
|
||||
if (FlagMilisecond) {
|
||||
updateMsec();
|
||||
}
|
||||
updateSec();
|
||||
updateMin();
|
||||
break;
|
||||
case "stop":
|
||||
timer.getElementsByClassName("min")[0].innerHTML = "00";
|
||||
timer.getElementsByClassName("sec")[0].innerHTML = "00";
|
||||
timer.getElementsByClassName("msec")[0].innerHTML = "00";
|
||||
curAction = "wait";
|
||||
previousAction = "stop"
|
||||
break;
|
||||
default:
|
||||
// console.error("no action (old script)");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function toggleTimerMsec() {
|
||||
let chx = document.getElementById("chx-timerMsec");
|
||||
if (chx.checked) {
|
||||
FlagMilisecond = 1;
|
||||
timer.getElementsByClassName("msec")[0].style.display = "flex";
|
||||
document.getElementById("stopwatch-msec-dot").style.display = "flex";
|
||||
} else {
|
||||
FlagMilisecond = 0;
|
||||
timer.getElementsByClassName("msec")[0].style.display = "none";
|
||||
document.getElementById("stopwatch-msec-dot").style.display = "none";
|
||||
}
|
||||
tick();
|
||||
}
|
|
@ -1,81 +0,0 @@
|
|||
// OLD TIMER SCRIPT !!!
|
||||
|
||||
|
||||
var curAction = "wait";
|
||||
var previousAction = "wait"
|
||||
var startTime = new Date();
|
||||
var curTime = new Date();
|
||||
var timeMS = 0;
|
||||
var FlagMilisecond = 1;
|
||||
var timer = document.getElementById("stopwatch").getElementsByClassName("timer")[0];
|
||||
|
||||
tick();
|
||||
|
||||
// NOT OPTIMIZED, place in start switch
|
||||
var t = setInterval(tick, 10);
|
||||
|
||||
|
||||
|
||||
function Stopwatch(action) {
|
||||
switch (action) {
|
||||
case "start":
|
||||
console.log("start function started");
|
||||
if (previousAction == "start") { break; }
|
||||
startTime = new Date();
|
||||
curAction = "increase";
|
||||
tick();
|
||||
previousAction = "start";
|
||||
break;
|
||||
case "stop":
|
||||
curAction = "stop";
|
||||
tick();
|
||||
previousAction = "stop";
|
||||
break;
|
||||
|
||||
default:
|
||||
console.warn("Stopwatch() is working, possible unoptimized, WIP!");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function updateMsec() {
|
||||
timer.getElementsByClassName("msec")[0].innerHTML = getDigits(Math.floor((timeMS / 10) % 100), 2);
|
||||
}
|
||||
|
||||
function updateSec() {
|
||||
timer.getElementsByClassName("sec")[0].innerHTML = getDigits(Math.floor((timeMS / 1000) % 60), 2);
|
||||
}
|
||||
|
||||
function updateMin() {
|
||||
timer.getElementsByClassName("min")[0].innerHTML = getDigits(Math.floor((timeMS / 1000 / 60) << 0), 2);
|
||||
}
|
||||
|
||||
|
||||
// no need, already in utils.js
|
||||
// function getDigits(str, num) {
|
||||
// return ("0" + str).slice(-num);
|
||||
// }
|
||||
|
||||
function tick() {
|
||||
switch (curAction) {
|
||||
case "increase":
|
||||
curTime = new Date();
|
||||
timeMS = (curTime.getTime() - startTime.getTime());
|
||||
if (confs.get('timerMsec') == "1") {
|
||||
updateMsec();
|
||||
}
|
||||
updateSec();
|
||||
updateMin();
|
||||
break;
|
||||
case "stop":
|
||||
timer.getElementsByClassName("min")[0].innerHTML = "00";
|
||||
timer.getElementsByClassName("sec")[0].innerHTML = "00";
|
||||
timer.getElementsByClassName("msec")[0].innerHTML = "00";
|
||||
curAction = "wait";
|
||||
previousAction = "stop"
|
||||
break;
|
||||
default:
|
||||
console.warn("tick() is working, possible unoptimized, WIP!");
|
||||
break;
|
||||
}
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
/**
|
||||
* Update components with conf variables each second
|
||||
*/
|
||||
function updateComponents() {
|
||||
setToID("time", updateTime());
|
||||
|
||||
if (curHour == 12 && (curMin >= 24 && curMin <= 30)) {
|
||||
document.getElementById("time").style.color = "red";
|
||||
document.getElementById("rainbow").style.display = "inherit";
|
||||
} else {
|
||||
document.getElementById("time").style.color = "inherit";
|
||||
document.getElementById("rainbow").style.display = "none";
|
||||
}
|
||||
|
||||
let timer = document.getElementById("stopwatch").getElementsByClassName("timer")[0];
|
||||
if (confs.get("timerMsec") == 1) {
|
||||
timer.getElementsByClassName("msec")[0].style.display = "flex";
|
||||
document.getElementById("stopwatch-msec-dot").style.display = "flex";
|
||||
} else {
|
||||
timer.getElementsByClassName("msec")[0].style.display = "none";
|
||||
document.getElementById("stopwatch-msec-dot").style.display = "none";
|
||||
}
|
||||
}
|
||||
|
||||
function updateTime() {
|
||||
var d = new Date();
|
||||
curHour = getDigits(d.getHours(), 2);
|
||||
curMin = getDigits(d.getMinutes(), 2);
|
||||
curSeconds = getDigits(d.getSeconds(), 2);
|
||||
|
||||
if (confs.get("clockSecond") == "1") {
|
||||
return curHour + "." + curMin + "." + curSeconds;
|
||||
} else {
|
||||
return curHour + "." + curMin;
|
||||
}
|
||||
}
|
||||
|
||||
function DEVupdateSettings() {
|
||||
let devData =
|
||||
"<b>confs:</b> " + JSON.stringify(confs, (key, value) => (value instanceof Map ? [...value] : value)) + "<br>" +
|
||||
"<b>schoolPeriods:</b> " + JSON.stringify(schoolPeriods, (key, value) => (value instanceof Map ? [...value] : value)) + "<br>" +
|
||||
"<b>specialPeriods:</b> " + JSON.stringify(specialPeriods, (key, value) => (value instanceof Map ? [...value] : value)) + "<br>" +
|
||||
"<b>info:</b> " + navigator.userAgent + "<br>" +
|
||||
"<b>local-settings:</b>" + (urlParams = new URLSearchParams(window.location.search)) + "<br>";
|
||||
|
||||
document.getElementById("DEV").innerHTML = devData;
|
||||
}
|
|
@ -1,130 +0,0 @@
|
|||
function getDigits(str, num) {
|
||||
return ("0" + str).slice(-num);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {Object} obj
|
||||
* @param {URLSearchParams} params
|
||||
*/
|
||||
function addObjectToConfig(obj, params) {
|
||||
Object.entries(obj).forEach(element => {
|
||||
const [key, value] = element;
|
||||
if (params == 1) {
|
||||
confs.set(key, value);
|
||||
}
|
||||
else if (params.has(key)) {
|
||||
confs.set(key, params.get(key));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {Array} arr
|
||||
* @param {URLSearchParams} params
|
||||
*/
|
||||
function addArrayToConfig(arr, params) {
|
||||
arr.forEach(element => {
|
||||
if (params.has(element)) {
|
||||
confs.set(element, params.get(element));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param {string} id id to be updated
|
||||
* @param {string} config config to update with
|
||||
* @param {any} type type
|
||||
*/
|
||||
function setToID(id, config, type = 0) {
|
||||
let obj = document.getElementById(id)
|
||||
if (obj.innerHTML != config && type == 0) {
|
||||
document.getElementById(id).innerHTML = config;
|
||||
} else if (typeof type === 'string') {
|
||||
if (config == type) {
|
||||
document.getElementById(id).innerHTML = "<span style='color:red;'>" + config + "</span>";
|
||||
} else if (config != type) {
|
||||
document.getElementById(id).innerHTML = config;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Hides all elements with matching id in a list
|
||||
* @param {Array} elements element ids to hide
|
||||
* @param {...any} except hide elements except these
|
||||
*/
|
||||
function hideAllExcept(elements, ...except) {
|
||||
elements.forEach(element => {
|
||||
if (!except.includes(element)) {
|
||||
document.getElementById(element).style.display = "none";
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {String} type id or class for getting elements to toggle
|
||||
* @param {String} name id or class name
|
||||
* @param {String} display display type, defaults to flex
|
||||
*/
|
||||
function toggleItemDisplay(type, name = "no", display = "flex") {
|
||||
switch (type) {
|
||||
case "auto":
|
||||
if (name == "no") {
|
||||
// console.log(1, event.srcElement.id); // DEPRECATED !
|
||||
console.alert('dont use type auto for item display! WIP')
|
||||
// get id with button/checkbox name! and auto detect
|
||||
}
|
||||
break;
|
||||
case "id":
|
||||
let item = document.getElementById(name);
|
||||
if (item.style.display == display) {
|
||||
item.style.display = "none";
|
||||
} else {
|
||||
item.style.display = display;
|
||||
}
|
||||
if (midItems.includes(name)) {
|
||||
hideAllExcept(midItems, name);
|
||||
} else if (timersItems.includes(name)) {
|
||||
hideAllExcept(timersItems, name);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
console.error("no toggle item except ids!");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function toggleConf(type, name = "no") {
|
||||
switch (type) {
|
||||
case "auto":
|
||||
// AUTO DETECT type, id etc.
|
||||
alert("dont use auto for toggleConf");
|
||||
break;
|
||||
case "id-chx":
|
||||
if (name != "no") {
|
||||
let chx = document.getElementById("chx-" + name);
|
||||
if (chx.checked) {
|
||||
confs.set(name, 1);
|
||||
} else {
|
||||
confs.set(name, 0);
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
console.error("unvalid type");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
function toggleDevVersion() {
|
||||
let chx = document.getElementById("chx-devVersion");
|
||||
|
||||
if (chx.checked) {
|
||||
window.location.replace("dev.html" + window.location.search);
|
||||
} else {
|
||||
window.location.replace("index.html" + window.location.search);
|
||||
}
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
/* 2023 Aliberk Sandıkçı*/
|
||||
|
||||
@keyframes rain {
|
||||
0% {
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
25% {
|
||||
background-color: red;
|
||||
}
|
||||
|
||||
50% {
|
||||
background-color: green;
|
||||
}
|
||||
|
||||
100% {
|
||||
background-color: yellow;
|
||||
}
|
||||
}
|
|
@ -1,122 +0,0 @@
|
|||
// CREDIT: https://www.joshwcomeau.com/animation/3d-button/
|
||||
|
||||
@mixin button-effect {
|
||||
.pushable {
|
||||
position: relative;
|
||||
border: none;
|
||||
background: transparent;
|
||||
padding: 0;
|
||||
cursor: pointer;
|
||||
outline-offset: 4px;
|
||||
transition: filter 250ms;
|
||||
}
|
||||
|
||||
.shadow {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
// border-radius: 12px;
|
||||
background: hsl(0deg 0% 0% / 0.25);
|
||||
will-change: transform;
|
||||
transform: translateY(2px);
|
||||
transition:
|
||||
transform 600ms cubic-bezier(.3, .7, .4, 1);
|
||||
}
|
||||
|
||||
.edge {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
// border-radius: 12px;
|
||||
background: linear-gradient(to left,
|
||||
hsl(235, 84%, 26%) 0%,
|
||||
hsl(235, 84%, 26%) 8%,
|
||||
hsl(235, 84%, 26%) 92%,
|
||||
hsl(235, 84%, 26%) 100%);
|
||||
}
|
||||
|
||||
.front {
|
||||
display: block;
|
||||
position: relative;
|
||||
padding: 12px 42px;
|
||||
// border-radius: 12px;
|
||||
// font-size: 1.25rem;
|
||||
color: white;
|
||||
background: hsl(188, 88%, 29%);
|
||||
will-change: transform;
|
||||
transform: translateY(-4px);
|
||||
transition:
|
||||
transform 600ms cubic-bezier(.3, .7, .4, 1);
|
||||
}
|
||||
|
||||
.pushable:hover {
|
||||
filter: brightness(110%);
|
||||
}
|
||||
|
||||
.pushable:hover .front {
|
||||
transform: translateY(-6px);
|
||||
transition:
|
||||
transform 250ms cubic-bezier(.3, .7, .4, 1.5);
|
||||
}
|
||||
|
||||
.pushable:active .front {
|
||||
transform: translateY(-2px);
|
||||
transition: transform 34ms;
|
||||
}
|
||||
|
||||
.pushable:hover .shadow {
|
||||
transform: translateY(4px);
|
||||
transition:
|
||||
transform 250ms cubic-bezier(.3, .7, .4, 1.5);
|
||||
}
|
||||
|
||||
.pushable:active .shadow {
|
||||
transform: translateY(1px);
|
||||
transition: transform 34ms;
|
||||
}
|
||||
|
||||
.pushable:focus:not(:focus-visible) {
|
||||
outline: none;
|
||||
}
|
||||
|
||||
.pushable-f {
|
||||
|
||||
.front,
|
||||
.edge,
|
||||
.shadow {
|
||||
border-top-left-radius: 13px;
|
||||
border-bottom-left-radius: 13px;
|
||||
}
|
||||
|
||||
.edge {
|
||||
background: linear-gradient(to left,
|
||||
hsl(235, 84%, 26%) 0%,
|
||||
hsl(235, 84%, 26%) 8%,
|
||||
hsl(235, 84%, 26%) 92%,
|
||||
hsl(193, 100%, 30%) 100%);
|
||||
}
|
||||
}
|
||||
|
||||
.pushable-l {
|
||||
|
||||
.front,
|
||||
.edge,
|
||||
.shadow {
|
||||
|
||||
border-top-right-radius: 13px;
|
||||
border-bottom-right-radius: 13px;
|
||||
}
|
||||
|
||||
.edge {
|
||||
background: linear-gradient(to left,
|
||||
hsl(193, 100%, 30%) 0%,
|
||||
hsl(235, 84%, 26%) 8%,
|
||||
hsl(235, 84%, 26%) 92%,
|
||||
hsl(235, 84%, 26%) 100%);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,22 +0,0 @@
|
|||
/* 2023 Aliberk Sandıkçı*/
|
||||
|
||||
#ders-programi {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
padding: 0px 100px;
|
||||
padding-top: 10px;
|
||||
|
||||
img {
|
||||
max-width: 1309px;
|
||||
max-height: 601px;
|
||||
aspect-ratio: 1309/601;
|
||||
}
|
||||
}
|
||||
|
||||
.min,
|
||||
.sec,
|
||||
.msec {
|
||||
display:flex;
|
||||
width: 7vw;
|
||||
justify-content: center;
|
||||
}
|
|
@ -1,236 +0,0 @@
|
|||
/* 2023 Aliberk Sandıkçı*/
|
||||
@use "button" as b;
|
||||
@use "animation" as a;
|
||||
|
||||
* {
|
||||
-webkit-touch-callout: none;
|
||||
-webkit-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
cursor: default;
|
||||
}
|
||||
|
||||
body,
|
||||
html {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
margin: 0px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
|
||||
background-color: black;
|
||||
color: aliceblue;
|
||||
font-family: "Montserrat", Arial, Helvetica, sans-serif;
|
||||
}
|
||||
|
||||
section {
|
||||
|
||||
// SECTION TOP
|
||||
&#top {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
user-select: none;
|
||||
|
||||
width: 100%;
|
||||
height: 100px;
|
||||
|
||||
.class {
|
||||
margin: 5px;
|
||||
min-width: 20vw;
|
||||
margin-right: auto;
|
||||
font-weight: 800;
|
||||
font-style: oblique;
|
||||
}
|
||||
|
||||
.clock {
|
||||
display: flex;
|
||||
|
||||
#time {
|
||||
display: flex;
|
||||
|
||||
//UNNECESSARY LINES?
|
||||
align-items: center;
|
||||
align-self: center;
|
||||
align-content: center;
|
||||
justify-items: center;
|
||||
justify-self: center;
|
||||
justify-content: center;
|
||||
font-size: 80px;
|
||||
}
|
||||
}
|
||||
|
||||
.settings-box {
|
||||
min-width: 20vw;
|
||||
margin-left: auto;
|
||||
text-align: right;
|
||||
|
||||
button {
|
||||
height: 30px;
|
||||
width: 30px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
#settings {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
align-items: end;
|
||||
font-size: small;
|
||||
margin-top: 5px;
|
||||
|
||||
|
||||
form {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
position: relative;
|
||||
background-color: grey;
|
||||
|
||||
.cell {
|
||||
float: left;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
margin-bottom: 1vh;
|
||||
|
||||
input[type="checkbox"] {
|
||||
//UNNECESSARY LINES?
|
||||
appearance: none;
|
||||
background-color: #fff;
|
||||
margin: 0;
|
||||
width: 1.15em;
|
||||
height: 1.15em;
|
||||
border: 0.15em solid darkslateblue;
|
||||
border-radius: 0.15em;
|
||||
transform: translateY(-0.075em);
|
||||
display: grid;
|
||||
place-content: center;
|
||||
outline: 0px solid white;
|
||||
outline-offset: 0px;
|
||||
|
||||
&::before {
|
||||
//UNNECESSARY LINES?
|
||||
content: "";
|
||||
width: 0.65em;
|
||||
height: 0.65em;
|
||||
transform: scale(0);
|
||||
transition: 120ms transform ease-in-out;
|
||||
box-shadow: inset 1em 1em green;
|
||||
transform-origin: bottom left;
|
||||
clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
|
||||
}
|
||||
|
||||
&:checked::before {
|
||||
transform: scale(1);
|
||||
}
|
||||
|
||||
&:focus {
|
||||
outline: max(2px, 0.15em) solid white;
|
||||
outline-offset: max(2px, 0.15em);
|
||||
}
|
||||
}
|
||||
|
||||
label {
|
||||
padding-left: 5px;
|
||||
display: block;
|
||||
text-align: left;
|
||||
align-self: center;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// SECTION MID
|
||||
&#mid {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
text-align: center;
|
||||
user-select: none;
|
||||
|
||||
#timers {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
|
||||
#timers-menu {
|
||||
ul {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
// padding: 1px;
|
||||
list-style-type: none;
|
||||
box-sizing: border-box;
|
||||
|
||||
@include b.button-effect;
|
||||
|
||||
.front {
|
||||
font-size: medium;
|
||||
font-weight: 500;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#stopwatch {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
|
||||
.timer {
|
||||
font-size: 150px;
|
||||
display: flex;
|
||||
align-self: center;
|
||||
|
||||
.min,
|
||||
.sec,
|
||||
.msec {
|
||||
width: 12vw;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#timer {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
|
||||
.timer {
|
||||
font-size: xx-large;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#yemek-listesi {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
#animations {
|
||||
display: none;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// SECTION BOTTOM
|
||||
&#bottom {
|
||||
margin-top: auto;
|
||||
|
||||
#rainbow {
|
||||
width: 100%;
|
||||
height: 20px;
|
||||
animation: rain 4.72s ease infinite;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.kronometre {
|
||||
text-align: center;
|
||||
margin: auto;
|
||||
font-size: 50px;
|
||||
}
|
|
@ -1,208 +0,0 @@
|
|||
<!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/dev.css">
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>DEV VERSION | iflpanel Tahta</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- MAIN AREA -->
|
||||
<section id="top">
|
||||
<div class="class">
|
||||
<span id="grade">Sınıf</span>
|
||||
<span id="class">Şube</span>
|
||||
|
||||
<!-- DEV -->
|
||||
<!-- DEV --> <span style="font-size: xx-small; line-height: 1px; color:red">(DEV VERSION)</span>
|
||||
<!-- DEV -->
|
||||
</div>
|
||||
|
||||
<div class="clock">
|
||||
<h1 id="time">12.00</h1>
|
||||
</div>
|
||||
<div class="settings-box">
|
||||
<form>
|
||||
<button id="timers-button" type="button" onmouseover="toggleItemDisplay('id', 'timers')"
|
||||
onclick="toggleItemDisplay('id', 'timers')">⏱</button>
|
||||
|
||||
<button id="yemekhane-button" type="button" onmouseover="toggleItemDisplay('id', 'yemek-listesi')"
|
||||
onclick="toggleItemDisplay('id', 'yemek-listesi')">🍔</button>
|
||||
|
||||
<button id="ders-programi-buton" type="button" onmouseover="toggleItemDisplay('id', 'ders-programi')"
|
||||
onclick="toggleItemDisplay('id', 'ders-programi')">📑</button>
|
||||
|
||||
<button id="animation-button" type="button" onmouseover="toggleItemDisplay('id', 'animations')"
|
||||
onclick="toggleItemDisplay('id', 'animations')">🕹️</button>
|
||||
|
||||
<button id="settings-button" type="button" onmouseover="toggleItemDisplay('id', 'settings')"
|
||||
onclick="toggleItemDisplay('id', 'settings')">⚙</button>
|
||||
</form>
|
||||
<div id="settings">
|
||||
<form>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-clockSecond" onchange="toggleConf('id-chx','clockSecond')" checked>
|
||||
<label for="chx-clockSecond">Saniye</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-timerMsec" onchange="toggleConf('id-chx','timerMsec')" checked>
|
||||
<label for="chx-timerMsec">Sayaçlarda Milisaniye</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<!-- onchange="toggleOther('devVersion')" -->
|
||||
<input type="checkbox" id="chx-devVersion" onchange="toggleDevVersion()" checked>
|
||||
<label for="chx-devVersion" style="font-size: x-small;">Geliştirici Sürümü, <br>local-settings move!</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-yksTimer" onchange="toggleConf('id-chx','yksTimer')">
|
||||
<label for="chx-yksTimer">YKS Sayacı</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-fullscreenClock" onchange="toggleConf('id-chx','fullscreenClock')">
|
||||
<label for="chx-fullscreenClock">Tam Ekran Saat</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-hideHeader" onchange="toggleConf('id-chx','hideHeader')">
|
||||
<label for="chx-hideHeader">Üst Barı Gizle</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-oneventSecond" onchange="toggleConf('id-chx','oneventSecond')">
|
||||
<label for="chx-oneventSecond" style="font-size: x-small;">Ders Sonu/Başı Saniye Göster, <br>saniye
|
||||
checkboxını otomatik update et!</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-settingsMaker" onchange="toggleItemDisplay('id-chx','settingsMaker')">
|
||||
<label for="chx-settingsMaker">Ayar Oluşturucuyu Göster</label>
|
||||
</div>
|
||||
<div class="cell">
|
||||
<input type="checkbox" id="chx-mouse" onchange="toggleConf('id-chx','mouse')">
|
||||
<label for="chx-mouse">Mouse Integrasyonu</label>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<hr style="width: 30%; box-sizing: border-box;">
|
||||
|
||||
<!-- INTERACTIVE / FUNCTIONAL AREA -->
|
||||
<section id="mid">
|
||||
<div id="timers">
|
||||
<div id="timers-menu">
|
||||
<ul>
|
||||
<li onmouseover="toggleItemDisplay('id', 'stopwatch')" onclick="toggleItemDisplay('id', 'stopwatch')">
|
||||
<button id="stopwatch-button" class="pushable pushable-f">
|
||||
<span class="shadow"></span>
|
||||
<span class="edge"></span>
|
||||
<span class="front">
|
||||
Kronometre
|
||||
</span>
|
||||
</button>
|
||||
</li>
|
||||
<li id="timer-button" onmouseover="toggleItemDisplay('id', 'timer')"
|
||||
onclick="toggleItemDisplay('id', 'timer')">
|
||||
<button class="pushable pushable-l">
|
||||
<span class="shadow"></span>
|
||||
<span class="edge"></span>
|
||||
<span class="front">
|
||||
Zamanlayıcı
|
||||
</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 type="button" id="start-cro" name="start-cro" value="Başlat" onmouseover="Stopwatch('start')"
|
||||
onclick="Stopwatch('start')" checked>
|
||||
<input 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>yapım aşamasında: geriye doğru sayma özelliği</p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div id="yemek-listesi">
|
||||
<iframe src="https://ifl.meb.k12.tr/meb_iys_dosyalar/35/06/164785/dosyalar/2023_09/26212122_EKIM_YemekListesi.pdf"
|
||||
width="90%" height="800px" style="align-self:center;"></iframe>
|
||||
yapım aşamasında: yemekhane listesi eklenecek
|
||||
</div>
|
||||
|
||||
<div id="ders-programi">
|
||||
<img src="image.png">
|
||||
</div>
|
||||
|
||||
<div id="animations">
|
||||
yapım aşamasında: animasyonlar / oyunlar eklenecek
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- NON-INTERACTIVE DECORATION AREA -->
|
||||
<section id="bottom">
|
||||
<hr>
|
||||
<div id="DEV" style="font-size: x-small;"></div>
|
||||
<div id="rainbow"></div>
|
||||
</section>
|
||||
|
||||
<script src="./assets/js/utils.js"></script>
|
||||
<script src="./assets/js/updates.js"></script>
|
||||
|
||||
<script src="./assets/js/mid.js"></script>
|
||||
|
||||
<script src="./assets/js/initialize.js"></script>
|
||||
|
||||
<script src="./assets/js/timers.js"></script>
|
||||
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
Before Width: | Height: | Size: 108 KiB |
|
@ -1,141 +1,9 @@
|
|||
<!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" />
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>iflpanel Tahta</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!-- MAIN AREA -->
|
||||
<section id="top">
|
||||
<div class="class">
|
||||
<span class="grade">12</span>
|
||||
<span class="branch">C</span>
|
||||
<br>
|
||||
<img src="assets/images/bagis-qr.png" width="50" style="margin-top: 20px;">
|
||||
</div>
|
||||
|
||||
<div class="clock">
|
||||
<h1 id="time">12.00</h1>
|
||||
</div>
|
||||
<div class="settings-box">
|
||||
<form>
|
||||
<button id="timers-button" type="button" onmouseover="toggleTimers()" onclick="toggleTimers()">⏱</button>
|
||||
<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>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<hr style="width: 100%; box-sizing: border-box;">
|
||||
|
||||
<!-- 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>
|
||||
</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>yapım aşamasında: geriye doğru sayma özelliği</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 src="./assets/js/old_main.js"></script>
|
||||
<script src="./assets/js/old_stopwatch.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf8" />
|
||||
</head>
|
||||
<body>
|
||||
<script>window.location.replace("https://tahta.iflpanel.com");</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
22
index.php
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,22 +34,6 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
||||
|
@ -66,11 +50,11 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
<p>You can learn more about me in <a href="about/">about me</a> page</p>
|
||||
<p>You can find my all links in the internet with this <a href="link/">link</a></p>
|
||||
<p>You can see my current works in <a href="now/">now</a> page</p>
|
||||
<p>Also you can support my works/projects or help me cover my server costs in <a href="bagis/">donation</a> page</p>
|
||||
<p>Also you can support my works/projects or help me cover my server costs in <a href="bagis/">donations</a> page</p>
|
||||
</article>
|
||||
<sup style="text-align:center; color:grey;">WIP for website UI/content</sup>
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
|
||||
<?php
|
||||
|
|
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,21 +34,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
|
||||
<title>My Links | Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
@ -98,7 +84,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
</div>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
|
|
|
@ -16,7 +16,7 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
?>
|
||||
|
||||
<head>
|
||||
<!--!Copyright © 2023 Aliberk Sandıkçı-->
|
||||
<!--!Copyright © 2024 Aliberk Sandıkçı-->
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<!-- Meta Content -->
|
||||
|
@ -34,23 +34,9 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
}
|
||||
} ?>
|
||||
|
||||
<!-- Matomo -->
|
||||
<script>
|
||||
var _paq = window._paq = window._paq || [];
|
||||
/* tracker methods like "setCustomDimension" should be called before "trackPageView" */
|
||||
_paq.push(['trackPageView']);
|
||||
_paq.push(['enableLinkTracking']);
|
||||
(function() {
|
||||
var u="//stats.aliberksandikci.com.tr/";
|
||||
_paq.push(['setTrackerUrl', u+'matomo.php']);
|
||||
_paq.push(['setSiteId', '3']);
|
||||
var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
|
||||
g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
|
||||
})();
|
||||
</script>
|
||||
<!-- End Matomo Code -->
|
||||
|
||||
<title>Now | Aliberk Sandıkçı</title>
|
||||
|
||||
<title>Now | Aliberk Sandıkçı</title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
@ -63,15 +49,15 @@ if (!$_SERVER['DOCUMENT_ROOT']) {
|
|||
<article>
|
||||
<h1 class="title">What I'm Doing Now</h1>
|
||||
<ul>
|
||||
<li>📚 Focusing YKS 🤓</li>
|
||||
<li>🧬 Working on a BioInformatic Project with my teammate</li>
|
||||
<li style="font-size:xx-large;">📚 Focusing YKS 🤓</li>
|
||||
</ul>
|
||||
</ul>
|
||||
<p>Last Update: 11 November 2023</p>
|
||||
<p>Last Update: 1 January 2024</p>
|
||||
<p style="font-size:small;">Inspired by: <br><a href="https://johanv.net/now/">https://johanv.net/now/</a><br><a href="https://nownownow.com/">https://nownownow.com/</a></p>
|
||||
</article>
|
||||
|
||||
<footer>
|
||||
<div class="tmpinfo">2023 🄯 Aliberk Sandıkçı</div>
|
||||
<div class="tmpinfo">2024 🄯 Aliberk Sandıkçı</div>
|
||||
</footer>
|
||||
<?php
|
||||
$dir = new DirectoryIterator($_SERVER['DOCUMENT_ROOT'] . "/assets/js");
|
||||
|
|
|
@ -1,28 +1,27 @@
|
|||
[
|
||||
{
|
||||
"todo-active-until": "500",
|
||||
"todo-active-until": "2000",
|
||||
"public-todo": [
|
||||
{
|
||||
"100": [
|
||||
"Tahta Arkaplanı - Yeni Tuş Düzeni",
|
||||
"Tahta Arkaplanı - Ders Programı Menüsü"
|
||||
"Tahta Arkaplanı - Güvenli Saat ve Kronometre",
|
||||
"Tahta Arkaplanı - Ders Programı Menüsü (her sınıf için ayrı!)",
|
||||
"Tahta Arkaplanı - Kronometre ve arayüz için Yeni Tuş Düzeni",
|
||||
"Tahta Arkaplanı - Kronometre için Dakika/Saat ayrımı"
|
||||
]
|
||||
},
|
||||
{
|
||||
"200": [
|
||||
"Tahta Arkaplanı - YKS Sayacı (kapatılıp açılabilir)",
|
||||
"Tahta Arkaplanı - Tam Ekran Saat",
|
||||
"Tahta Arkaplanı - Zamanlayıcı"
|
||||
"Tahta Arkaplanı - Zamanlayıcı (kronometreye ek olarak)",
|
||||
"Tahta Arkaplanı - YarıOtomatik Güncellenebilir Yemek Listesi",
|
||||
"Tahta Arkaplanı - Ekstra Kronometre Özellikleri (alarm, tur sayacı, hedef girme, renklendirme) ve Ekstra ayarlar/seçenekler"
|
||||
]
|
||||
},
|
||||
{
|
||||
"300": [
|
||||
"Tahta Arkaplanı - Erişilebilirlik Ayarları (Mouse Integrasyonu)",
|
||||
"Tahta Arkaplanı - Yarı-Otomatik Güncellenebilir Yemek Listesi"
|
||||
]
|
||||
},
|
||||
{
|
||||
"400": [
|
||||
"İnternet Erişimi - Erkek Yurdu etütleri için Modem Kurulumu",
|
||||
"Tahta Arkaplanı - Değiştirilebilir Canvas, Arkaplan/renk değiştirme. Ekstra Özelleştirmeler"
|
||||
]
|
||||
},
|
||||
|
@ -40,7 +39,9 @@
|
|||
{
|
||||
"2000": [
|
||||
"İFL Kütüphane - Kütüphane'nin geri açılması",
|
||||
"İFL Galeri - Galeri'nin geri açılması"
|
||||
"İFL Galeri - Galeri'nin geri açılması",
|
||||
"İFL'm - Mobil uygulama yapımına başlanması ve fonksiyonel ilk taslak",
|
||||
"İFL QR - Branş ve TYT/AYT Denemeleri için QR okuyucu"
|
||||
]
|
||||
},
|
||||
{
|
||||
|
@ -98,10 +99,10 @@
|
|||
"İFL HUB (Sistem, Tahta/Bilgisayar/Telefon Uygulaması) - Diğer İFL uygulamalarının birleştirilmiş hâli. Üstün forum özellikleri, soru sorma, kaynak paylaşma, soru yazabilme/çözebilme/paylaşabilme, öğretmenlerin öğrencileri değerlendirebilmeleri/test gönderebilmeleri... (EBA + Sınavza + Pakodemy + Soru Çözüm Uygulamaları + Wikipedia + EÖdev) - (IFL TAHTA, IFLSOR, IFL'm ... uyumlu)"
|
||||
]
|
||||
}
|
||||
|
||||
],
|
||||
"personal-todo": [ "BURADA YAZILANLAR KİŞİSEL NOTLARDIR, DİKKATE ALMAYINIZ",
|
||||
"VPN Troubleshooting açıklamaları", "Auto todos fetch", "Ödeme için QR Code", "Bağışlar için otomatik API?"
|
||||
"personal-todo": [
|
||||
"BURADA YAZILANLAR KİŞİSEL NOTLARDIR, DİKKATE ALMAYINIZ",
|
||||
"Kopyala, Kopyalandı bilgi kutucukları için özelleştirmeler(mobil/mouse)"
|
||||
]
|
||||
}
|
||||
]
|