summaryrefslogtreecommitdiff
path: root/projects
diff options
context:
space:
mode:
authorRaindropsSys <raindrops@equestria.dev>2023-12-30 23:27:51 +0100
committerRaindropsSys <raindrops@equestria.dev>2023-12-30 23:27:51 +0100
commit603c7fe54d0a214231de7d2392dff17550e2a827 (patch)
tree570f544e1f03ae541693744890535a5269fd4e2d /projects
parent68f0333129cdd934d9f831994d4789951df32ede (diff)
downloadstarshine-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_Storebin0 -> 6148 bytes
-rw-r--r--projects/archive/index.php44
-rw-r--r--projects/index.php118
3 files changed, 162 insertions, 0 deletions
diff --git a/projects/.DS_Store b/projects/.DS_Store
new file mode 100644
index 0000000..656da5c
--- /dev/null
+++ b/projects/.DS_Store
Binary files differ
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>&nbsp;&nbsp;<?= 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>&nbsp;&nbsp;<?= 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>&nbsp;&nbsp;<?= 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>&nbsp;&nbsp;<?= 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] ?? "&nbsp;" ?></span>
+ <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : "&nbsp;" ?></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] ?? "&nbsp;" ?></span>
+ <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : "&nbsp;" ?></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] ?? "&nbsp;" ?></span>
+ <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : "&nbsp;" ?></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] ?? "&nbsp;" ?></span>
+ <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : "&nbsp;" ?></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] ?? "&nbsp;" ?></span>
+ <span class="project-details-languages-item-title-percentage"><?= isset(array_values($project["languages"])[$i]) ? number_format(array_values($project["languages"])[$i], 2) . "%" : "&nbsp;" ?></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