diff options
author | RaindropsSys <raindrops@equestria.dev> | 2023-12-30 23:27:51 +0100 |
---|---|---|
committer | RaindropsSys <raindrops@equestria.dev> | 2023-12-30 23:27:51 +0100 |
commit | 603c7fe54d0a214231de7d2392dff17550e2a827 (patch) | |
tree | 570f544e1f03ae541693744890535a5269fd4e2d /projects | |
parent | 68f0333129cdd934d9f831994d4789951df32ede (diff) | |
download | starshine-603c7fe54d0a214231de7d2392dff17550e2a827.tar.gz starshine-603c7fe54d0a214231de7d2392dff17550e2a827.tar.bz2 starshine-603c7fe54d0a214231de7d2392dff17550e2a827.zip |
Updated 18 files, added 19 files and deleted includes/serverinfo/bin-mac (automated)
Diffstat (limited to 'projects')
-rw-r--r-- | projects/.DS_Store | bin | 0 -> 6148 bytes | |||
-rw-r--r-- | projects/archive/index.php | 44 | ||||
-rw-r--r-- | projects/index.php | 118 |
3 files changed, 162 insertions, 0 deletions
diff --git a/projects/.DS_Store b/projects/.DS_Store Binary files differnew file mode 100644 index 0000000..656da5c --- /dev/null +++ b/projects/.DS_Store diff --git a/projects/archive/index.php b/projects/archive/index.php new file mode 100644 index 0000000..313a52d --- /dev/null +++ b/projects/archive/index.php @@ -0,0 +1,44 @@ +<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/lang.php"; $title = l("lang.archive.title"); require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php"; ?> + +<div id="archive-decoration"></div> + +<div class="container" id="archive-container"> + <h1><?= l("lang.archive.title") ?></h1> + <table id="archive-table"> + <?php $lastYear = null; $lastMonth = null; $projects = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/projects.json"), true); uasort($projects, function ($a, $b) { + return $b["commit"] - $a["commit"]; + }); foreach ($projects as $project): if ($project["archive"]): ?> + <tr> + <td class="archive-table-year"><?php + + $year = date('Y', $project["commit"]); + + if ($year !== $lastYear) { + $lastYear = $year; + $lastMonth = null; + echo("<b>$year</b>"); + } + + ?></td> + <td class="archive-table-month"><?php + + $month = date('F', $project["commit"]); + + if ($month !== $lastMonth) { + $lastMonth = $month; + echo("<b>$month</b>"); + } + + ?></td> + <td> + <a class="archive-table-link" href="/<?= lp() ?>/projects/<?= $project["name"] ?? $project["id"] ?>"> + <?php if (isset($project["icon"])): ?><img class="archive-table-icon" src="/assets/projects/<?= $project["id"] ?>.png" alt="Project icon"><?php else: ?><i class="archive-table-icon bi bi-journal-code"></i><?php endif; ?> + <span class="archive-table-title"><?= $project["display_name"] ?? $project["name"] ?></span> + </a> + </td> + </tr> + <?php endif; endforeach; ?> + </table> +</div> + +<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
\ No newline at end of file diff --git a/projects/index.php b/projects/index.php new file mode 100644 index 0000000..4f87ad7 --- /dev/null +++ b/projects/index.php @@ -0,0 +1,118 @@ +<?php + +global $parts; +$projects = json_decode(file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/includes/data/projects.json"), true); +$project = null; + +if (count($parts) > 1) { + $id = $parts[2]; + + foreach ($projects as $prj) { + if ($prj["name"] === $id || $prj["id"] === $id) { + $project = $prj; + } + } + + if (!isset($project)) { + header("Location: /"); + die(); + } +} else { + header("Location: /"); + die(); +} + +$_p = $project; +$title = $project["display_name"] ?? $project["name"]; require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/header.php"; $project = $_p; ?> + +<div id="project-box" <?php if (isset($project["icon"])): ?>style="background-image: url('/assets/projects/<?= $project['id'] ?>.png');"<?php endif; ?>> + <div id="project-box-inner"> + <div id="project-box-intro"> + <div id="project-box-intro-inner"> + <?php if (isset($project["icon"])): ?><img id="project-box-icon" src="/assets/projects/<?= $project['id'] ?>.png" alt="Project icon"><?php endif; ?> + <h1><?= $project["display_name"] ?? $project["name"] ?></h1> + <p id="project-box-owner"><?= $project["owner"] ?>/<?= $project["name"] ?></p> + <p><?= $project["description"] ?></p> + + <?php if (isset($project["website"]) && $project["website"] !== $project["source"]): ?> + <div id="project-box-links" class="project-box-links-dual"> + <a href="<?= $project["website"] ?>" target="_blank" id="project-box-link-1" class="project-box-link"><i class="bi bi-globe"></i> <?= l("lang.project.actions.website") ?></a> + <a href="<?= $project["source"] ?>" target="_blank" id="project-box-link-2" class="project-box-link"><i class="bi bi-code"></i> <?= l("lang.project.actions.source") ?></a> + </div> + <?php else: ?> + <div id="project-box-links" class="project-box-links-solo"> + <a href="<?= $project["source"] ?>" target="_blank" id="project-box-link-1" class="project-box-link"><i class="bi bi-code"></i> <?= l("lang.project.actions.source") ?></a> + </div> + <?php endif; ?> + </div> + </div> + <div id="project-details"> + <?php + + $newLanguages = []; + + foreach ($project["languages"] as $name => $value) { + if ($name === "Hack") $name = "PHP"; + if (!isset($newLanguages[$name])) $newLanguages[$name] = 0; + $newLanguages[$name] += $value; + } + + $project["languages"] = $newLanguages; + + ?> + <div id="project-details-inner"> + <p id="project-details-update"><i class="bi bi-clock"></i> <?= l("lang.project.update") ?> <?= timeAgo(max($project["commit"], $project["update"])) ?></p> + + <div id="project-details-languages"> + <div id="project-details-languages-1" class="project-details-languages-item"><?php $i = 0; ?> + <div class="project-details-languages-item-title"> + <span class="project-details-languages-item-title-language"><?= array_keys($project["languages"])[$i] ?? " " ?></span> + <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : " " ?></span> + </div> + <div class="project-details-languages-item-bar"> + <div class="project-details-languages-item-bar-fill" style="width: <?= array_values($project["languages"])[$i] ?? "0" ?>%;"></div> + </div> + </div> + <div id="project-details-languages-2" class="project-details-languages-item"><?php $i = 1; ?> + <div class="project-details-languages-item-title"> + <span class="project-details-languages-item-title-language"><?= array_keys($project["languages"])[$i] ?? " " ?></span> + <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : " " ?></span> + </div> + <div class="project-details-languages-item-bar"> + <div class="project-details-languages-item-bar-fill" style="width: <?= array_values($project["languages"])[$i] ?? "0" ?>%;"></div> + </div> + </div> + <div id="project-details-languages-3" class="project-details-languages-item"><?php $i = 2; ?> + <div class="project-details-languages-item-title"> + <span class="project-details-languages-item-title-language"><?= array_keys($project["languages"])[$i] ?? " " ?></span> + <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : " " ?></span> + </div> + <div class="project-details-languages-item-bar"> + <div class="project-details-languages-item-bar-fill" style="width: <?= array_values($project["languages"])[$i] ?? "0" ?>%;"></div> + </div> + </div> + <div id="project-details-languages-4" class="project-details-languages-item"><?php $i = 3; ?> + <div class="project-details-languages-item-title"> + <span class="project-details-languages-item-title-language"><?= array_keys($project["languages"])[$i] ?? " " ?></span> + <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : " " ?></span> + </div> + <div class="project-details-languages-item-bar"> + <div class="project-details-languages-item-bar-fill" style="width: <?= array_values($project["languages"])[$i] ?? "0" ?>%;"></div> + </div> + </div> + <div id="project-details-languages-5" class="project-details-languages-item"><?php $i = 4; ?> + <div class="project-details-languages-item-title"> + <span class="project-details-languages-item-title-language"><?= array_keys($project["languages"])[$i] ?? " " ?></span> + <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : " " ?></span> + </div> + <div class="project-details-languages-item-bar"> + <div class="project-details-languages-item-bar-fill" style="width: <?= array_values($project["languages"])[$i] ?? "0" ?>%;"></div> + </div> + </div> + </div> + </div> + </div> + </div> +</div> + +<?php require_once $_SERVER['DOCUMENT_ROOT'] . "/includes/footer.php"; ?>
\ No newline at end of file |