setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $userManager = new \pvv\admin\UserManager($pdo); $as = new \SimpleSAML\Auth\Simple('default-sp'); $as->requireAuth(); $attrs = $as->getAttributes(); $loginname = $attrs['uid'][0]; if(!$loginname) { header('Content-Type: text/plain', true, 403); echo "Du må være logget inn for å se bildegalleriet.\r\n"; exit(); } # Sourced from config.php through include.php $galleryDir = $GALLERY_DIR; $serverPath = $GALLERY_SERVER_PATH; $allowedExtensions = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'svg', 'webp']; $unamefile = $galleryDir . "/usernames.txt"; $unamepairs = file($unamefile); function getDirContents($dir, &$results = array()) { $files = scandir($dir); foreach ($files as $key => $value) { $path = realpath($dir . DIRECTORY_SEPARATOR . $value); if (!is_dir($path)) { //Remove the full path on disk, keep username and relative path to image. $pos = strpos($path, $GLOBALS["galleryDir"]); if ($pos !== false) { $cleanPath = substr_replace($path, "", $pos, strlen($GLOBALS["galleryDir"])); } //Check if the file is an image $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); if (in_array($ext, $GLOBALS["allowedExtensions"])) { $results[] = $cleanPath; } } else if ($value != "." && $value != ".." && $value != ".thumbnails") { //recursively scan directories getDirContents($path, $results); } } return $results; } $images = getDirContents($galleryDir); function cmpModifyTime($a, $b) { $mtime_a = filemtime($galleryDir . $a); $mtime_b = filemtime($galleryDir . $b); return ($mtime_a > $mtime_b) ? -1 : 1; } usort($images, "cmpModifyTime"); $imageTemplate = '
%realname
%user