49 lines
2.2 KiB
PHP
49 lines
2.2 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<?php
|
|
session_start();
|
|
?>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Tux gallery !</title>
|
|
<link rel="stylesheet" href="static/css/stylesheet.css">
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-sRIl4kxILFvY47J16cr9ZwB07vP4J8+LH7qKQnuqkuIAvNWLzeN8tE5YBujZqJLB" crossorigin="anonymous">
|
|
</head>
|
|
<body>
|
|
<?php include 'include/nav.php'?>
|
|
|
|
<div class="wrapper">
|
|
<section class="info-part">
|
|
<h1>Tux gallery</h1>
|
|
<p>Tux is awesome ! So I made this extremely secure gallery app.</p>
|
|
<?php if (empty($_SESSION['username'])): ?>
|
|
You can also add tux pictures to the gallery, first <a href="login.php">login</a> and then you should be able to upload a new image of tux.
|
|
<?php else: ?>
|
|
First navigate to the <a href="admin/upload.php">upload.php</a> page and upload your tux image from there!
|
|
<?php endif; ?>
|
|
</section>
|
|
<hr>
|
|
<section class="gallery-part">
|
|
<div class="gallery">
|
|
<?php
|
|
foreach (new DirectoryIterator('static/img/gallery') as $file) {
|
|
if($file->isDot()) continue;
|
|
print '<img class="tux-img" src="/static/img/gallery/'. $file->getFilename() . '" onerror="this.onerror=null;this.src=`/static/img/fallback.png`;" data-original="/static/img/gallery/'. $file->getFilename() .'">'; // to do, is there an 'fstring' like for php ? just like in python
|
|
} // xss ? i call it a feature
|
|
?>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/js/bootstrap.bundle.min.js" integrity="sha384-FKyoEForCGlyvwx9Hj09JcYn3nv7wiPVlz7YYwJrWVcXK/BmnVDxM+D2scQbITxI" crossorigin="anonymous"></script>
|
|
<script>
|
|
window.addEventListener("load", () => {
|
|
Array.from(document.getElementsByClassName("tux-img")).forEach(img => {
|
|
img.addEventListener('click', function() {
|
|
window.open(img.dataset.original);
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|