Files
PU_fork/index.html
2026-03-12 16:50:36 +01:00

123 lines
5.8 KiB
HTML

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description"
content="Project University is a game sandbox which allows you to explore various topics by completing daily tasks.">
<meta name="author" content="TettoX">
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
<link rel="icon" href="img/logo.png">
<title>Project University</title>
<!-- CSS -->
<link rel="stylesheet" href="css/bootstrap-4.5.0.darkly.css" title="darkly">
<link rel="stylesheet" href="css/bootstrap-4.5.0.pink.css" title="pink" disabled>
<link rel="stylesheet" href="css/bootstrap-4.6.2.cosmo.css" title="cosmo" disabled>
<link rel="stylesheet" href="css/bootstrap-4.6.2.minty.css" title="minty" disabled>
<link rel="stylesheet" href="css/fontawesome-all-5.13.1.min.css">
<link rel="stylesheet" href="css/shepherd-8.0.1.css">
<link rel="stylesheet" href="css/bootstrap-select-1.13.18.min.css">
<link rel="stylesheet" href="css/bootstrap-table-1.23.4.min.css">
<link rel="stylesheet" href="css/style.css">
<!--Scripts-->
<script>
window.onerror = function (message, url, lineNumber, colNumber) {
const errorContainer = document.querySelector("#errorContainer")
errorContainer.classList.add("active")
errorContainer.innerHTML = `Internal Error: ${message}, ${url}, ${lineNumber}, ${colNumber}`
return true
};
</script>
<script type="text/javascript" src="libs/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="libs/bootstrap-4.6.2.bundle.min.js"></script>
<script type="text/javascript" src="libs/moment-2.30.1.min.js"></script>
<script type="text/javascript" src="libs/shepherd-8.0.1.min.js"></script>
<script type="text/javascript" src="libs/bootstrap-select-1.13.18.min.js"></script>
<script type="text/javascript" src="libs/bootstrap-table-1.23.4.min.js"></script>
<script type="text/javascript" src="libs/kjua-0.9.0.min.js"></script>
<script type="text/javascript" src="libs/privatebin/base-x-3.0.7.js"></script>
<script type="text/javascript" src="libs/privatebin/rawinflate-0.3.js"></script>
<script type="text/javascript" src="libs/privatebin/zlib-1.2.11.js"></script>
<script type="text/javascript" src="libs/webpack-interface.js"></script>
<script type="text/javascript" src="game.v2025-07-31.bundle.js"></script>
<!-- PWA -->
<meta name="theme-color" content="#ff0055">
<link rel="manifest" href="manifest.webmanifest">
<link rel="apple-touch-icon" href="img/logo_192.jpg">
<script>
if ('serviceWorker' in navigator) {
//thanks google.. & https://andeers.com/2019/07/service-worker-refresh/
window.addEventListener('load', function () {
navigator.serviceWorker.register('sw.js', { scope: "/" }).then(function (registration) {
console.log('ServiceWorker registration successful with scope: ', registration.scope);
registration.addEventListener('updatefound', () => {
let newWorker = registration.installing;
// Listen for when the new worker is ready:
newWorker.addEventListener('statechange', () => {
if (newWorker.state == 'installed') {
if (navigator.serviceWorker.controller) {
// Display button:
document.querySelector('#newUpdateAvailable').classList.remove('d-none');
window.location.href = `index.html?page=home&v=${Math.floor(Math.random()*5000000)}`;
}
}
});
});
}, function (err) {
console.log('ServiceWorker registration failed: ', err);
});
navigator.serviceWorker.addEventListener('message', event => {
if (event.data.type !== 'GET_FILE_DATA') { event.ports[0].postMessage({ error: 'Invalid Message' }); }
getFileData(event.data.filename).then((fileData)=>{
event.ports[0].postMessage(fileData);
});
});
});
}
</script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark sticky-top">
<a class="navbar-brand" href="index.html@page=home">
<div id="nav-logo"></div>
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar" aria-controls="navbar"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbar">
<ul id="nav-auto" class="navbar-nav mr-auto">
</ul>
</div>
</nav>
<div id="idleLogo">
<div class="idle-img"></div>
</div>
<div id="toastContainer"></div>
<div id="confirmationContainer"></div>
<button id="backToTop" class="btn btn-info"><i class="fas fa-angle-up"></i></button>
<button id="newUpdateAvailable" class="btn btn-info d-none" onclick="window.location.href = 'index.html?page=home&v=v2025-07-31'"></button>
<main>
<noscript>This page requires JS to run.</noscript>
</main>
<div id="errorContainer"></div>
</body>
</html>