mirror of
https://github.com/sbrl/Pepperminty-Wiki.git
synced 2024-11-25 05:22:59 +00:00
185 lines
8.5 KiB
PHP
185 lines
8.5 KiB
PHP
<?php
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
|
|
register_module([
|
|
"name" => "Credits",
|
|
"version" => "0.8.2",
|
|
"author" => "Starbeamrainbowlabs",
|
|
"description" => "Adds the credits page. You *must* have this module :D",
|
|
"id" => "page-credits",
|
|
"code" => function() {
|
|
/**
|
|
* @api {get} ?action=credits Get the credits page
|
|
* @apiName Credits
|
|
* @apiGroup Utility
|
|
* @apiPermission Anonymous
|
|
*/
|
|
|
|
/*
|
|
* ██████ ██████ ███████ ██████ ██ ████████ ███████
|
|
* ██ ██ ██ ██ ██ ██ ██ ██ ██
|
|
* ██ ██████ █████ ██ ██ ██ ██ ███████
|
|
* ██ ██ ██ ██ ██ ██ ██ ██ ██
|
|
* ██████ ██ ██ ███████ ██████ ██ ██ ███████
|
|
*/
|
|
add_action("credits", function() {
|
|
global $settings, $version, $env, $pageindex, $modules;
|
|
|
|
$credits = [
|
|
"Code" => [
|
|
"author" => "Starbeamrainbowlabs",
|
|
"author_url" => "https://starbeamrainbowlabs.com/",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/",
|
|
"icon" => "https://avatars0.githubusercontent.com/u/9929737?v=3&s=24"
|
|
],
|
|
"Mime type to file extension mapper" => [
|
|
"author" => "Chaos",
|
|
"author_url" => "https://stackoverflow.com/users/47529/chaos",
|
|
"thing_url" => "https://stackoverflow.com/a/1147952/1460422",
|
|
"icon" => "https://www.gravatar.com/avatar/aaee40db39ad6b164cfb89cb6ad4d176?s=328&d=identicon&s=24"
|
|
],
|
|
"Parsedown" => [
|
|
"author" => "Emanuil Rusev and others",
|
|
"author_url" => "https://github.com/erusev/",
|
|
"thing_url" => "https://github.com/erusev/parsedown/",
|
|
"icon" => "https://avatars1.githubusercontent.com/u/184170?v=3&s=24"
|
|
],
|
|
"CSS Minification Code" => [
|
|
"author" => "Jean",
|
|
"author_url" => "http://www.catswhocode.com/",
|
|
"thing_url" => "http://www.catswhocode.com/blog/3-ways-to-compress-css-files-using-php"
|
|
],
|
|
"Slightly modified version of Slimdown" => [
|
|
"author" => "Johnny Broadway",
|
|
"author_url" => "https://github.com/jbroadway",
|
|
"thing_url" => "https://gist.github.com/jbroadway/2836900",
|
|
"icon" => "https://avatars2.githubusercontent.com/u/87886?v=3&s=24"
|
|
],
|
|
"Insert tab characters into textareas" => [
|
|
"author" => "Unknown",
|
|
"author_url" => "http://stackoverflow.com/q/6140632/1460422",
|
|
"thing_url" => "https://jsfiddle.net/2wAzx/13/",
|
|
],
|
|
"Default Favicon" => [
|
|
"author" => "bluefrog23",
|
|
"author_url" => "https://openclipart.org/user-detail/bluefrog23/",
|
|
"thing_url" => "https://openclipart.org/detail/19571/peppermint-candy-by-bluefrog23"
|
|
],
|
|
"Bug Reports" => [
|
|
"author" => "nibreh",
|
|
"author_url" => "https://github.com/nibreh/",
|
|
"thing_url" => "",
|
|
"icon" => "https://avatars2.githubusercontent.com/u/7314006?v=3&s=24"
|
|
],
|
|
"More Bug Reports (default credentials + downloader; via Gitter)" => [
|
|
"author" => "Tyler Spivey",
|
|
"author_url" => "https://github.com/tspivey/",
|
|
"thing_url" => "",
|
|
"icon" => "https://avatars2.githubusercontent.com/u/709407?v=4&s=24"
|
|
],
|
|
"PR #135: Fix repeated page names on sidebar" => [
|
|
"author" => "ikisler",
|
|
"author_url" => "https://github.com/ikisler",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/pull/135",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/12506147?v=3&s=24"
|
|
],
|
|
"PR #136: Fix issue where bottom nav is cut off" => [
|
|
"author" => "ikisler",
|
|
"author_url" => "https://github.com/ikisler",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/pull/136",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/12506147?v=3&s=24"
|
|
],
|
|
"PR #140: Edit Previewing" => [
|
|
"author" => "ikisler",
|
|
"author_url" => "https://github.com/ikisler",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/pull/140",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/12506147?v=3&s=24"
|
|
],
|
|
"Issue #153: Authenticated DOS attack (XXD billion laughs attack)" => [
|
|
"author" => "ProDigySML",
|
|
"author_url" => "https://github.com/ProDigySML",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/issues/152",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/16996819?s=24&v=4"
|
|
],
|
|
"Many miscellaneus bug reports and PRs to fix things" => [
|
|
"author" => "Sean Feeney",
|
|
"author_url" => "https://github.com/SeanFromIT",
|
|
"thing_url" => "https://gitter.im/Pepperminty-Wiki/Lobby?at=5d786927460a6f5a1600f1c1",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/10387753?s=24&v=4"
|
|
],
|
|
"Inverted logic fix in the peppermint.json access detector (#179)" => [
|
|
"author" => "Kevin Otte",
|
|
"author_url" => "https://www.nivex.net/",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/pull/179",
|
|
"icon" => "https://avatars3.githubusercontent.com/u/3833404?s=24&v=4"
|
|
],
|
|
"IIS web server documentation" => [
|
|
"author" => "Nathan Nance",
|
|
"author_url" => "https://github.com/npnance",
|
|
"thing_url" => "https://github.com/sbrl/Pepperminty-Wiki/pull/229",
|
|
"icon" => "https://avatars.githubusercontent.com/u/975340?s=24"
|
|
]
|
|
];
|
|
|
|
//// Credits html renderer ////
|
|
$credits_html = "<ul>\n";
|
|
foreach($credits as $thing => $author_details)
|
|
{
|
|
$credits_html .= " <li>";
|
|
$credits_html .= "<a href='" . htmlentities($author_details["thing_url"]) . "'>".htmlentities($thing)."</a> by ";
|
|
if(isset($author_details["icon"]))
|
|
$credits_html .= "<img class='logo small' style='vertical-align: middle;' src='" . htmlentities($author_details["icon"]) . "' /> ";
|
|
$credits_html .= "<a href='" . htmlentities($author_details["author_url"]) . "'>" . $author_details["author"] . "</a>";
|
|
$credits_html .= "</li>\n";
|
|
}
|
|
$credits_html .= "</ul>";
|
|
///////////////////////////////
|
|
|
|
//// Module html renderer ////
|
|
$modules_html = "<table>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Version</th>
|
|
<th>Author</th>
|
|
<th>Description</th>
|
|
</tr>";
|
|
foreach($modules as $module)
|
|
{
|
|
$modules_html .= " <tr>
|
|
<td title='" . $module["id"] . "'>" . $module["name"] . "</td>
|
|
<td>" . $module["version"] . "</td>
|
|
<td>" . $module["author"] . "</td>
|
|
<td>" . $module["description"] . "</td>
|
|
</tr>\n";
|
|
}
|
|
$modules_html .= "</table>";
|
|
//////////////////////////////
|
|
|
|
$title = "Credits - $settings->sitename";
|
|
$content = "<h1>$settings->sitename credits</h1>
|
|
<p>$settings->sitename is powered by Pepperminty Wiki - an entire wiki packed inside a single file, which was built by <a href='//starbeamrainbowlabs.com'>Starbeamrainbowlabs</a>, and can be found <a href='//github.com/sbrl/Pepperminty-Wiki/'>on GitHub</a> (contributors will also be listed here in the future). Pepperminty Wiki is licensed under the <a target='_blank' href='https://www.mozilla.org/en-US/MPL/2.0/'>Mozilla Public License 2.0</a> (<a target='_blank' href='https://tldrlegal.com/license/mozilla-public-license-2.0-(mpl-2)'>simple version</a>).</p>
|
|
<h2>Main Credits</h2>
|
|
$credits_html
|
|
<h2>Site status</h2>
|
|
<table>
|
|
<tr><th>Site name:</th><td>$settings->sitename (<a href='?action=update'>{$settings->admindisplaychar}Update</a>, <a href='?action=configure'>{$settings->admindisplaychar} 🔧 Edit master settings</a>, <a href='?action=user-table'>{$settings->admindisplaychar} 👥 Edit user table</a>, <a href='?action=export'>🏛 Export as zip - Check for permission first</a>)</td></tr>
|
|
<tr><th>Pepperminty Wiki version:</th><td>$version</td></tr>
|
|
<tr><th>Number of pages:</th><td>" . count(get_object_vars($pageindex)) . "</td></tr>
|
|
<tr><th>Number of modules:</th><td>" . count($modules) . "</td></tr>\n";
|
|
if(module_exists("page-sitemap")) {
|
|
$content .= "<tr><th>Sitemap:</th><td><a href='?action=sitemap'>View</a>";
|
|
if($env->is_admin)
|
|
$content .= " | Don't forget to add <code>Sitemap: http://example.com/path/to/index.php?action=sitemap</code> to your <code>robots.txt</code>";
|
|
$content .= "</td></tr>";
|
|
}
|
|
$content .= "\t</table>
|
|
<h2>Installed Modules</h2>
|
|
$modules_html";
|
|
exit(page_renderer::render_main($title, $content));
|
|
});
|
|
}
|
|
]);
|
|
|
|
?>
|