diff options
author | Minteck <contact@minteck.org> | 2022-10-10 20:51:39 +0200 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-10-10 20:51:39 +0200 |
commit | 108525534c28013cfe1897c30e4565f9893f3766 (patch) | |
tree | dd3e5132971f96ab5f05e7f3f8f6dbbf379a19bd /includes/header.inc | |
parent | 2162eaa06f7e4764eb3dcfe130ec2c711d0c62ab (diff) | |
download | pluralconnect-108525534c28013cfe1897c30e4565f9893f3766.tar.gz pluralconnect-108525534c28013cfe1897c30e4565f9893f3766.tar.bz2 pluralconnect-108525534c28013cfe1897c30e4565f9893f3766.zip |
Update
Diffstat (limited to 'includes/header.inc')
-rw-r--r-- | includes/header.inc | 1001 |
1 files changed, 1001 insertions, 0 deletions
diff --git a/includes/header.inc b/includes/header.inc new file mode 100644 index 0000000..e851c85 --- /dev/null +++ b/includes/header.inc @@ -0,0 +1,1001 @@ +<?php global $title; global $pages; + +$readOnly = false; +@file_put_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/.test", "hello"); + +if (file_exists($_SERVER['DOCUMENT_ROOT'] . "/includes/data/.test")) { + unlink($_SERVER['DOCUMENT_ROOT'] . "/includes/data/.test"); +} else { + $readOnly = true; +} + +$isNormallyLoggedIn = false; + +require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/session.inc"; global $isLoggedIn; global $isUserLoggedIn; +if ($readOnly && $isLoggedIn || $readOnly && $isUserLoggedIn) { + $isLoggedIn = false; + $isUserLoggedIn = false; + $isNormallyLoggedIn = true; +} + +$pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); + +function error($errno, $errstr, $file, $line) { + echo(' + <!-- -->"> + <div class="alert alert-danger" style="text-align: left;"> + <b>Error ' . $errno . ':</b> ' . $errstr . ' [' . $file . ':' . $line . '] + </div>'); +} + +if (isset($_GET['errors'])) { + ini_set('display_errors', '1'); + ini_set('display_startup_errors', '1'); + error_reporting(E_ALL); + set_error_handler("error", E_ALL); +} + +global $_MemberName; +global $_MemberPage; +global $_SystemName; +global $_SystemPage; +global $toplevel; + +$pages = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/pages.json"), true); +$page = $pages[$toplevel] ?? [ + "rail" => false +]; + +require_once $_SERVER["DOCUMENT_ROOT"] . "/includes/travelling.inc"; global $travelling; +require_once $_SERVER["DOCUMENT_ROOT"] . "/includes/score.inc"; +require_once $_SERVER["DOCUMENT_ROOT"] . "/includes/pronouns.inc"; +require_once $_SERVER["DOCUMENT_ROOT"] . "/includes/bitset.inc"; +require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/banner.inc"; +require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/rainbow.inc"; +require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/functions.inc"; +require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/ical/main.php"; + +?> +<!doctype html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> + <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"></script> + <title><?= $title ? $title . " ยท " : "" ?>Cold Haze</title> + <?php if (isset($_MemberName) && file_exists($_SERVER['DOCUMENT_ROOT'] . "/assets/uploads/pt-" . $_MemberName . ".png")): ?> + <link rel="shortcut icon" href="/assets/uploads/pt-<?= $_MemberName ?>.png" type="image/png"> + <?php else: ?> + <?php if (isset($_MemberPage) && file_exists($_SERVER['DOCUMENT_ROOT'] . "/assets/icons/favicon/" . $_MemberPage . ".png")): ?> + <link rel="shortcut icon" href="/assets/icons/favicon/<?= $_MemberPage ?>.png" type="image/png"> + <?php else: ?> + <?php if (isset($toplevel) && file_exists($_SERVER['DOCUMENT_ROOT'] . "/assets/icons/favicon/" . $toplevel . ".png")): ?> + <link rel="shortcut icon" href="/assets/icons/favicon/<?= $toplevel ?>.png" type="image/png"> + <?php else: ?> + <?php if (isset($_SystemPage) && file_exists($_SERVER['DOCUMENT_ROOT'] . "/assets/icons/favicon/" . $_SystemPage . ".png")): ?> + <link rel="shortcut icon" href="/assets/icons/favicon/<?= $_SystemPage ?>.png" type="image/png"> + <?php else: ?> + <?php if (isset($_SystemName) && file_exists($_SERVER['DOCUMENT_ROOT'] . "/assets/uploads/" . $_SystemName . ".png") && (!isset($_MemberName) || $_MemberName !== "fusion")): ?> + <link rel="shortcut icon" href="/assets/uploads/<?= $_SystemName ?>.png" type="image/png"> + <?php else: ?> + <link rel="shortcut icon" href="/assets/logo/newlogo.png" type="image/png"> + <?php endif; ?> + <?php endif; ?> + <?php endif; ?> + <?php endif; ?> + <?php endif; ?> + <style> + #admin-page { + margin-left: 32px; + } + + #admin-page .navbar { + margin-left: -32px; + } + + nav.navbar { + background-color: black !important; + border-bottom: 1px solid rgba(255, 255, 255, .25); + } + + body { + background-color: black !important; + color: white; + } + + .hpd-item-card:hover { + background-color: rgba(255, 255, 255, .15) !important; + } + + .hpd-item-card:active, .hpd-item-card:focus { + background-color: rgba(255, 255, 255, .2) !important; + } + + .hpd-system { + transition: opacity 200ms; + } + + .hpd-item-card { + outline-style: solid; + outline-width: 0; + transition: background-color 200ms, outline-width 200ms; + } + + .hpd-item-card:hover { + outline-style: solid; + outline-width: 4px; + } + + .hpd-item-card:active { + outline-style: solid; + outline-width: 6px; + } + + .hpd-system:hover { + opacity: .9 !important; + } + + .hpd-system:active, .hpd-system:focus { + opacity: .8 !important; + } + + .hpd-link:hover { + background-color: rgba(255, 255, 255, .15) !important; + } + + .hpd-link:active, .hpd-link:focus { + background-color: rgba(255, 255, 255, .2) !important; + } + + .list-separator-mobile { + display: none; + } + + @media (max-width: 991px) { + #hpd-cloudburst > div, #hpd-raindrops > div { + grid-template-columns: repeat(3, 1fr) !important; + } + + .list-separator-desktop { + display: none; + } + + span.list-separator-mobile { + display: inline; + } + } + + @media (max-width: 768px) { + #hpd-cloudburst > div, #hpd-raindrops > div { + grid-template-columns: repeat(2, 1fr) !important; + } + } + + @media (max-width: 575px) { + #hpd-cloudburst > div, #hpd-raindrops > div { + grid-template-columns: repeat(1, 1fr) !important; + } + + .hpd-item-card img { + display: inline-block !important; + margin-right: 5px !important; + height: 32px !important; + } + + #hpd-cloudburst > div, #hpd-raindrops > div { + grid-gap: 5px !important; + } + + .hpd-item-card div { + display: inline-block !important; + } + + .hpd-item-card div:nth-child(3)::before { + content: "("; + padding-left: 5px; + color: white !important; + } + + .hpd-item-card div:nth-child(3)::after { + content: ")"; + color: white !important; + } + } + + .dropdown-menu { + background-color: #222; + } + + .dropdown-item:hover { + background-color: rgba(255, 255, 255, .1); + } + + .dropdown-item:active, .dropdown-item:focus { + background-color: rgba(255, 255, 255, .2); + } + + .dropdown-item { + color: white !important; + } + + .dropdown-icon { + filter: invert(1); + } + + .dropdown-toggle .dropdown-icon { + opacity: .5; + transition: 200ms opacity; + } + + .dropdown-toggle:hover .dropdown-icon, .dropdown-toggle:active .dropdown-icon, .dropdown-toggle:focus .dropdown-icon { + opacity: .75; + } + + dd { + margin-left: 20px; + } + + #system-info a { + color: white; + } + + #system-info a:hover { + opacity: .75; + } + + #system-info a:active, #system-info a:focus { + opacity: .5; + } + + @media (max-width: 991px) { + #member-card { + grid-template-columns: repeat(3, 1fr) !important; + } + + .species-name { + display: none; + } + } + + .member-small-only { + display: none; + } + + @media (max-width: 767px) { + #member-card { + grid-template-columns: 1fr !important; + text-align: left; + } + + #member-icon-mobile { + display: inline-block !important; + } + + #system-info { + grid-template-columns: 1fr !important; + } + + #member-icon, #member-icon-outer { + display: none !important; + } + + #member-relations { + grid-template-columns: 1fr !important; + text-align: left; + } + + .member-small-separator { + display: none; + } + + .member-small-only { + display: inline-block; + } + } + + #page-content a { + color: #afd0ff; + } + + #page-content .btn-outline-light:hover { + color: black !important; + } + + #page-content a:hover { + opacity: .75; + } + + #page-content a:active, #page-content a:focus { + opacity: .5; + } + + .tooltip.show { + opacity: 1; + } + + .tooltip-inner { + background: #151515; + box-shadow: 3px 4px 10px #ffffff26; + } + + .alert { + filter: invert(1) hue-rotate(180deg); + } + + .member-link { + color: white !important; + text-decoration: none !important; + } + + .system-action { + border-radius: 10px; + color: white !important; + text-decoration: none !important; + cursor: pointer; + transition: background 200ms; + } + + .system-action:hover { + background: rgba(255, 255, 255, .1); + } + + .table-dark { + --bs-table-bg: #000000; + } + + .comparison { + display: grid; + grid-template-columns: 3fr 1.5fr 2fr repeat(4, 1fr); + } + + .comparison-header { + border-bottom: 2px solid rgba(255, 255, 255, .25); + font-weight: bold; + } + + .comparison-item { + padding: 5px 10px; + text-align: center; + } + + .comparison-item-clickable:hover { + background-color: rgba(255, 255, 255, .1); + } + + .comparison-item-clickable:active, .comparison-item-clickable:focus { + background-color: rgba(255, 255, 255, .25); + } + + @media (min-width: 1400px) { + .comparison-header-l0 { + display: inline; + } + .comparison-header-l1 { + display: none; + } + .comparison-header-l2 { + display: none; + } + .comparison-header-l3 { + display: none; + } + .comparison-header-l4 { + display: none; + } + .comparison-header-l5 { + display: none; + } + .comparison-name-full { + display: inline; + } + .comparison-name-small { + display: none; + } + .comparison-colors { + display: inline; + } + .comparison-relations-count { + display: none; + } + .comparison-relations-full { + display: inline; + } + } + + @media (max-width: 1399px) { + .comparison-header-l0 { + display: none; + } + .comparison-header-l1 { + display: inline; + } + .comparison-header-l2 { + display: none; + } + .comparison-header-l3 { + display: none; + } + .comparison-header-l4 { + display: none; + } + .comparison-header-l5 { + display: none; + } + .comparison-name-full { + display: inline; + } + .comparison-name-small { + display: none; + } + .comparison-colors { + display: inline; + } + .comparison-relations-count { + display: none; + } + .comparison-relations-full { + display: inline; + } + } + + @media (max-width: 1199px) { + .comparison-header-l0 { + display: none; + } + .comparison-header-l1 { + display: none; + } + .comparison-header-l2 { + display: initial; + } + .comparison-header-l3 { + display: none; + } + .comparison-header-l4 { + display: none; + } + .comparison-header-l5 { + display: none; + } + .comparison-name-full { + display: none; + } + .comparison-name-small { + display: inline; + } + .comparison-colors { + display: inline; + } + .comparison-relations-count { + display: inline; + } + .comparison-relations-full { + display: none; + } + } + + @media (max-width: 991px) { + .comparison-header-l0 { + display: none; + } + .comparison-header-l1 { + display: none; + } + .comparison-header-l2 { + display: none; + } + .comparison-header-l3 { + display: initial; + } + .comparison-header-l4 { + display: none; + } + .comparison-header-l5 { + display: none; + } + .comparison-name-full { + display: none; + } + .comparison-name-small { + display: inline; + } + .comparison-colors { + display: none !important; + } + .comparison-relations-count { + display: inline; + } + .comparison-relations-full { + display: none; + } + } + + @media (max-width: 767px) { + .comparison-header-l0 { + display: none; + } + .comparison-header-l1 { + display: none; + } + .comparison-header-l2 { + display: none; + } + .comparison-header-l3 { + display: none; + } + .comparison-header-l4 { + display: initial; + } + .comparison-header-l5 { + display: none; + } + .comparison-name-full { + display: none; + } + .comparison-name-small { + display: none; + } + .comparison-colors { + display: none !important; + } + .comparison-relations-count { + display: inline; + } + .comparison-relations-full { + display: none; + } + } + + @media (max-width: 575px) { + .comparison-header-l0 { + display: none; + } + .comparison-header-l1 { + display: none; + } + .comparison-header-l2 { + display: none; + } + .comparison-header-l3 { + display: none; + } + .comparison-header-l4 { + display: none; + } + .comparison-header-l5 { + display: initial; + } + .comparison-name-full { + display: none; + } + .comparison-name-small { + display: none; + } + .comparison-colors { + display: none !important; + } + .comparison { + grid-template-columns: repeat(3, 2fr) repeat(4, 1fr) !important; + } + .comparison-relations-count { + display: inline; + } + .comparison-relations-full { + display: none; + } + } + + .tree-first-separator { + height: 14px !important; + top: 0 !important; + } + + .tree-l0-separator { + display: inline-block; + width: 20px; + margin-left: 35px; + border-bottom: 1px solid white; + border-left: 1px solid white; + height: 26px; + position: relative; + top: -12px; + } + + .tree-l1 .tree-l0-separator { + border-bottom: none !important; + } + + .tree-l1-separator { + display: inline-block; + width: 20px; + margin-left: 35px; + border-bottom: 1px solid white; + border-left: 1px solid white; + height: 26px; + position: relative; + top: -12px; + left: -10px; + } + + .tree-l1 .tree-l0-separator { + width: 30px; + } + + .tree-l1 .tree-inner { + position: relative; + left: -10px; + } + + .tree-l1 .tree-l0-separator { + border-bottom: none !important; + } + + .tree-l2-separator { + display: inline-block; + width: 20px; + margin-left: 35px; + border-bottom: 1px solid white; + border-left: 1px solid white; + height: 26px; + position: relative; + top: -12px; + left: -10px; + } + + .tree-l2 .tree-l1-separator { + width: 30px; + } + + .tree-l2 .tree-l0-separator { + width: 30px; + } + + .tree-l2 .tree-inner { + position: relative; + left: -10px; + } + + .tree-inner { + display: inline-block; + } + + .navbar-collapse.collapse.show, .navbar-collapse.collapsing { + background: black; + margin: 7px -12px; + padding: 0 12px; + border-bottom: 1px solid rgba(255, 255, 255, .25); + } + + .rainbow-item:hover { + opacity: .75; + } + + .rainbow-item:active { + opacity: .5; + } + + peh-muted { + --bs-text-opacity: 1; + color: #6c757d!important; + } + + .dropdown-toggle::after { + margin-bottom: -3px; + } + + .navbar-nav { + width: 100%; + } + + .card { + background-color: #111; + border: 1px solid rgba(255, 255, 255, .125); + } + + #member-banner-container > #member-banner > #system-info { + border-bottom-right-radius: 0 !important; + border-bottom-left-radius: 0 !important; + } + + #member-details { + background: rgba(255, 255, 255, .1); + border: 1px solid transparent; + border-top: none; + padding: 10px 20px; + border-bottom-left-radius: 10px; + border-bottom-right-radius: 10px; + display: grid; + grid-template-columns: repeat(6, 1fr); + text-align: center; + } + + .navbar-collapse.show { + z-index: 99999; + } + + @media (max-width: 991px) { + div#member-details.member-details-loggedIn { + grid-template-columns: repeat(3, 1fr) !important; + text-align: center; + } + + #member-details { + grid-template-columns: 1fr !important; + text-align: left; + } + } + + @media (max-width: 767px) { + div#member-details.member-details-loggedIn { + grid-template-columns: repeat(2, 1fr) !important; + text-align: left; + } + } + + .linked-card { + opacity: 1 !important; + color: white !important; + text-decoration: none !important; + } + + .linked-card:hover { + opacity: .75 !important; + } + + .linked-card:active { + opacity: .5 !important; + } + + .navbar-brand { + position: relative; + z-index: 9999; + } + </style> +</head> +<body<?php if ($page["rail"] && $isLoggedIn): ?> id="admin-page"<?php endif; ?>> + <nav class="navbar navbar-expand-<?= $isLoggedIn ? 'xl' : 'lg' ?> bg-dark navbar-dark" style="height:60px;"> + <div class="container-fluid"> + <a class="navbar-brand" href="/"><img src="/assets/logo/newlogo.png" alt="" style="width:32px;vertical-align: middle;margin-right:5px;"> <span style="vertical-align: middle;">Cold Haze</span><a> + <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#collapsibleNavbar"> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse" id="collapsibleNavbar"> + <ul class="navbar-nav"> + <?php if (!isset($demoHeader) || !$demoHeader): ?> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown"> + <img src="/assets/icons/global.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">Global</span> + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/"> + <img src="/assets/icons/home.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["home"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/disclaimers"> + <img src="/assets/icons/disclaimers.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["disclaimers"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/relations"> + <img src="/assets/icons/relations.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["relations"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/government"> + <img src="/assets/icons/government.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["government"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/terminology"> + <img src="/assets/icons/terminology.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["terminology"]["name"] ?></span> + </a></li> + <li><hr class="dropdown-divider"></li> + <li><h5 class="dropdown-header">Tools</h5></li> + <li><a class="dropdown-item" href="/-/parser"> + <img src="/assets/icons/parser.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["parser"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/prefix"> + <img src="/assets/icons/prefix.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["prefix"]["name"] ?></span> + </a></li> + </ul> + </li> + <?php if ($isLoggedIn): ?> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown"> + <img src="/assets/icons/admin.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">Administrator</span> + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/-/emergency"> + <img src="/assets/icons/emergency.svg" alt="" style="width:24px;vertical-align: middle;"> + <span class="text-danger" style="vertical-align: middle;"><b><?= $pages["emergency"]["name"] ?></b></span> + </a></li> + <?php + + $frontCloudburst = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/ynmuc/fronters.json"), true)["members"]; + $frontRaindrops = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/gdapd/fronters.json"), true)["members"]; + + if (isset($_GET['pleasure']) || (isset($frontRaindrops[0]) && isset($frontCloudburst[0]) && ( + ((int)date('H') >= 20 || (int)date('H') < 6) && + ($frontCloudburst[0]["id"] === "erknz" && + $frontRaindrops[0]["id"] === "qbzxm") || + ($frontCloudburst[0]["id"] === "zzise" && + $frontRaindrops[0]["id"] === "tfbob") || + ($frontCloudburst[0]["id"] === "vncoa" && + $frontRaindrops[0]["id"] === "qraku") + ))): ?> + <li><a class="dropdown-item" href="/-/pleasure" <?= isset($_GET['pleasure']) ? 'style="opacity: .5;"' : '' ?>> + <img src="/assets/icons/pleasure.svg" alt="" style="width:24px;vertical-align: middle;"> + <span class="text-success" style="vertical-align: middle;"><b><?= $pages["pleasure"]["name"] ?></b></span> + </a></li> + <?php endif; ?> + + <?php if (isset($_GET['wakeup']) || (int)date('H') >= 20 || (int)date('H') < 8): ?> + <li><a class="dropdown-item" href="/-/wakeup" <?= isset($_GET['wakeup']) ? 'style="opacity: .5;"' : '' ?>> + <img src="/assets/icons/wakeup.svg" alt="" style="width:24px;vertical-align: middle;"> + <span class="text-info" style="vertical-align: middle;"><b><?= $pages["wakeup"]["name"] ?></b></span> + </a></li> + <?php endif; ?> + <li><hr class="dropdown-divider"></li> + + <li><h5 class="dropdown-header">Applications</h5></li> + <li><a class="dropdown-item" href="/-/dashboard"> + <img src="/assets/icons/dashboard.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["dashboard"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/fronting"> + <img src="/assets/icons/fronting.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["fronting"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/docs"> + <img src="/assets/icons/docs.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["docs"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/travelling"> + <img src="/assets/icons/travel.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["travelling"]["name"] ?></span> + </a></li> + <li><hr class="dropdown-divider"></li> + + <li><h5 class="dropdown-header">Debugging</h5></li> + <li><a class="dropdown-item" href="/-/debug"> + <img src="/assets/icons/debug.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["debug"]["name"] ?></span> + </a></li> + <li><a class="dropdown-item" href="/-/score"> + <img src="/assets/icons/score.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["score"]["name"] ?></span> + </a></li> + <li><hr class="dropdown-divider"></li> + + <li><a class="dropdown-item" href="/-/logout"> + <img src="/assets/icons/logout.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $pages["logout"]["name"] ?></span> + </a></li> + </ul> + </li> + <?php endif; else: ?> + <li class="nav-item"> + <a class="nav-link" href="/" role="button"> + <img src="/assets/icons/right.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">Reste du site (en anglais)</span> + </a> + </li> + <?php endif; ?> + <?php if (!isset($emergencyHeader) || !$emergencyHeader): ?> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="/cloudburst" role="button" data-bs-toggle="dropdown"> + <img src="/assets/uploads/cloudburst.png" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">Cloudburst System</span> + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/cloudburst"> + <img src="/assets/icons/about.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">About us</span> + </a></li> + <?php + + $subsystems1 = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/subsystems/ynmuc.json"), true); + $subsystemsNotMember = array_values(array_filter($subsystems1, function ($i) { + return $i["source_type"] !== "member"; + })); + + if (count($subsystemsNotMember) > 0): ?> + <li><hr class="dropdown-divider"></li> + <li><h5 class="dropdown-header">Subsystems</h5></li> + <?php foreach ($subsystemsNotMember as $subsystem): $ssData = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/subsystems/ynmuc-" . $subsystem['source'] . ".json"), true); ?> + <li><a class="dropdown-item" href="/cloudburst/-/subsystem/<?= $subsystem['source'] ?>"> + <img src="/assets/uploads/ss-<?= $subsystem['source'] ?>.png" alt="" style="border-radius:5px;width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $ssData['name'] ?? $subsystem['source'] ?></span> + </a></li> + <?php endforeach; ?> + <?php endif; ?> + <li><hr class="dropdown-divider"></li> + <li><h5 class="dropdown-header">Members</h5></li> + <?php foreach (scoreOrder(withTravelers(json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/ynmuc/members.json"), true), "ynmuc"), "ynmuc") as $member): if ($member['name'] !== "unknown" && $member['name'] !== "fusion" && $member['name'] !== "new"): ?> + <li><a class="dropdown-item" href="/<?= $member['name'] ?>"> + <img src="<?= getAsset($member["system"], $member["id"], "heads") ?>" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $member['display_name'] ?? $member['name'] ?></span> + </a></li> + <?php endif; endforeach; ?> + </ul> + </li> + <li class="nav-item dropdown"> + <a class="nav-link dropdown-toggle" href="/raindrops" role="button" data-bs-toggle="dropdown"> + <img src="/assets/uploads/raindrops.png" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">Raindrops System</span> + </a> + <ul class="dropdown-menu"> + <li><a class="dropdown-item" href="/raindrops"> + <img src="/assets/icons/about.svg" class="dropdown-icon" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;">About us</span> + </a></li> + <?php + + $subsystems1 = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/subsystems/gdapd.json"), true); + $subsystemsNotMember = array_values(array_filter($subsystems1, function ($i) { + return $i["source_type"] !== "member"; + })); + + if (count($subsystemsNotMember) > 0): ?> + <li><hr class="dropdown-divider"></li> + <li><h5 class="dropdown-header">Subsystems</h5></li> + <?php foreach ($subsystemsNotMember as $subsystem): $ssData = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/subsystems/gdapd-" . $subsystem['source'] . ".json"), true); ?> + <li><a class="dropdown-item" href="/raindrops/-/subsystem/<?= $subsystem['source'] ?>"> + <img src="/assets/uploads/ss-<?= $subsystem['source'] ?>.png" alt="" style="border-radius:5px;width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $ssData['name'] ?? $subsystem['source'] ?></span> + </a></li> + <?php endforeach; ?> + <?php endif; ?> + <li><hr class="dropdown-divider"></li> + <li><h5 class="dropdown-header">Members</h5></li> + <?php foreach (scoreOrder(withTravelers(json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/gdapd/members.json"), true), "gdapd"), "gdapd") as $member): if ($member['name'] !== "unknown" && $member['name'] !== "fusion" && $member['name'] !== "new"): ?> + <li><a class="dropdown-item" href="/<?= $member['name'] ?>"> + <img src="<?= getAsset($member["system"], $member["id"], "heads") ?>" alt="" style="width:24px;vertical-align: middle;"> + <span style="vertical-align: middle;"><?= $member['display_name'] ?? $member['name'] ?></span> + </a></li> + <?php endif; endforeach; ?> + </ul> + </li> + <?php if ($isLoggedIn): ?> + <li class="nav-item" style="margin-left: auto;"> + <a class="nav-link" href="/-/user"> + <?php global $_PROFILE; ?> + <span style="vertical-align: middle;"> + <?= $_PROFILE["name"] ?> + </span> + <img alt="" src="/assets/icons/shield.svg" style="filter:invert(1);width:24px;vertical-align: middle;"> + </a> + </li> + <?php elseif ($isUserLoggedIn): ?> + <li class="nav-item" style="margin-left: auto;"> + <a class="nav-link" href="/-/user"> + <?php global $_PROFILE; ?> + <span style="vertical-align: middle;"> + <?= $_PROFILE["name"] ?> + </span> + <img alt="" src="/assets/icons/shield.svg" style="filter:invert(1);width:24px;vertical-align: middle;"> + </a> + </li> + <?php else: ?> + <li class="nav-item" style="margin-left: auto;"> + <a class="nav-link" href="/-/login"> + <?php global $_PROFILE; ?> + <span style="vertical-align: middle;"> + Not logged in + </span> + <img alt="" src="/assets/icons/login.svg" style="filter:invert(1);width:24px;vertical-align: middle;"> + </a> + </li> + <?php endif; ?> + <?php endif; ?> + </ul> + </div> + </div> + </nav> + +<?php if ($page["rail"] && $isLoggedIn): ?> + <?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/rail.inc"; ?> +<?php endif; ?> |