2)); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { die("

Server Issue

There has been an error connecting to the server. This what what we've been told: {$e->getMessage()}

"); } } if ($intranet["database_enabled"] && $intranet["logins_enabled"]) { if (!isset($login_page)) { if (isset($_COOKIE["lgid"])) { $stmt = $conn->prepare("SELECT * FROM members INNER JOIN member_security ON member_id=member_security_member WHERE member_security_key = ? LIMIT 1;"); $stmt->execute([$_COOKIE["lgid"]]); if ($stmt->rowCount() === 0) die(header("Location: /login/")); $member = $stmt->fetch(PDO::FETCH_ASSOC); if (!isset($dont_update_activity)) $conn->prepare("UPDATE members SET member_last_active = NOW(), member_current_page = ? WHERE member_id = ?")->execute(["https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]", $member["member_id"]]); define('MEMBER_ID', $member["member_id"]); define('MEMBER_NAME', $member["member_name"]); define('MEMBER_FIRST_NAME', strtok($member["member_name"], ' ')); } else { if (empty($_SERVER["REQUEST_URI"]) || ($_SERVER["REQUEST_URI"] == "/")) { die(header("Location: /login/")); } else { die(header("Location: /login/?redirect_to=" . urlencode($_SERVER["REQUEST_URI"]))); } } } } function format_date($date) { if (DateTime::createFromFormat('Y-m-d H:i:s', $date)) { // Print datetime if it contains timestamp return (new DateTime($date))->format('d/m/Y H:i'); } elseif (DateTime::createFromFormat('Y-m-d', $date)) { // Print date only if it doesn't contains timestamp return (new DateTime($date))->format('d/m/Y'); } else { // Print date if it contains timestamp return ""; } } function time_ago($datetime, $full = false) { $now = new DateTime; $ago = new DateTime($datetime); $diff = $now->diff($ago); $diff->w = floor($diff->d / 7); $diff->d -= $diff->w * 7; $string = array( 'y' => 'year', 'm' => 'month', 'w' => 'week', 'd' => 'day', 'h' => 'hour', 'i' => 'minute', 's' => 'second', ); foreach ($string as $k => &$v) { if ($diff->$k) { $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : ''); } else { unset($string[$k]); } } if (!$full) $string = array_slice($string, 0, 1); return "" . ($string ? implode(', ', $string) . ' ago' : 'just now') . ""; } function throw_message_redirect($error, $location, $type = 'linear-gradient(to right, #00b09b, #96c93d)') { if (!empty($error)) $_SESSION["message"] = $error; switch ($type) { case 'standard': $colour = '#54a0ff'; break; case 'error': $colour = '#ee5253'; break; case 'success': $colour = '#10ac84'; break; default: $colour = '#222f3e'; break; } if (!empty($colour)) $_SESSION["message_colour"] = $colour; die(header("Location: $location")); } function staff_name($id) { global $conn; $stmt = $conn->prepare("SELECT member_name FROM members WHERE member_id = ?;"); $stmt->execute([$id]); $member_details = $stmt->fetch(PDO::FETCH_ASSOC); return $member_details["member_name"]; } function check_permissions($service, $block = false) { global $conn; global $member; $stmt = $conn->prepare("SELECT permission_id FROM permissions WHERE permission_name = ? LIMIT 1"); $stmt->execute([$service]); if ($stmt->rowCount() === 0) return false; $permissionID = $stmt->fetch(PDO::FETCH_NUM); $stmt = $conn->prepare("SELECT * FROM members WHERE JSON_CONTAINS(member_permissions, ?) AND member_id = ?"); $stmt->execute([$permissionID[0], $member["member_id"]]); switch ($stmt->rowCount()) { case 0: if ($block) { echo <<

Access Denied.

We're sorry, you don't have the correct permissions to access this area.

HTML; die; } break; case 1: return (!$block) ? true : false; break; } }