diff options
| author | ilotterytea <iltsu@alright.party> | 2025-05-03 01:39:13 +0500 |
|---|---|---|
| committer | ilotterytea <iltsu@alright.party> | 2025-05-03 01:39:13 +0500 |
| commit | 64f0533dc1779e7cca5f2678f7ae560df8d922bb (patch) | |
| tree | be319637f1a6ae6839b3685d6348a528025a7248 /src | |
| parent | 0c25e3dd54225b126ad8e48e10f4fbde8ce26ec5 (diff) | |
feat: config sample and more config options
Diffstat (limited to 'src')
| -rw-r--r-- | src/config.php | 32 | ||||
| -rw-r--r-- | src/config.sample.php | 57 | ||||
| -rw-r--r-- | src/partials.php | 6 |
3 files changed, 60 insertions, 35 deletions
diff --git a/src/config.php b/src/config.php deleted file mode 100644 index f5056ce..0000000 --- a/src/config.php +++ /dev/null @@ -1,32 +0,0 @@ -<?php -define("CLIENT_REQUIRES_JSON", isset($_SERVER["HTTP_ACCEPT"]) && $_SERVER["HTTP_ACCEPT"] == "application/json"); - -// DATABASE -define("DB_USER", "kochan"); -define("DB_PASS", "kochan"); -define("DB_URL", "mysql:host=localhost;dbname=tinyemotes;port=3306"); - -// RATINGS -define("RATING_NAMES", [ - "-1" => "COAL", - "1" => "GEM", -]); - -// UPLOADS -define("ANONYMOUS_UPLOAD", false); -define("ANONYMOUS_DEFAULT_NAME", "chud"); - -// EMOTES -define("EMOTE_NAME_MAX_LENGTH", 100); -define("EMOTE_COMMENT_MAX_LENGTH", 100); -define("EMOTE_VISIBILITY_DEFAULT", 2); - -// MODERATION -define("MOD_SYSTEM_DASHBOARD", true); -define("MOD_EMOTES_APPROVE", true); - -// ACCOUNTS -define("ACCOUNT_USERNAME_REGEX", "/^[A-Za-z0-9_]+$/"); -define("ACCOUNT_USERNAME_MAX_LENGTH", 20); -define("ACCOUNT_PFP_MAX_SIZE", [128, 128]); -define("ACCOUNT_BANNER_MAX_SIZE", [1920, 1080]);
\ No newline at end of file diff --git a/src/config.sample.php b/src/config.sample.php new file mode 100644 index 0000000..5962a20 --- /dev/null +++ b/src/config.sample.php @@ -0,0 +1,57 @@ +<?php +// INSTANCE +define("INSTANCE_NAME", "TinyEmotes"); + +// DATABASE +define("DB_USER", "ENTER_DATABASE_USER"); // Database user. MANDATORY! +define("DB_PASS", "ENTER_DATABASE_PASSWORD"); // Database password. MANDATORY! +define("DB_HOST", "ENTER_DATABASE_HOST"); // Database host. Can be 'localhost' if it's on the same machine as Tinyemotes. +define("DB_NAME", "ENTER_DATABASE_NAME"); // Database name. +define("DB_URL", 'mysql:host=' . DB_HOST . ';dbname=' . DB_NAME . ';port=3306'); // Database URL. Change it if you don't use MySQL/MariaDB. + +// RATINGS +define("RATING_ENABLE", true); // Enable ratings for emotes. +define("RATING_NAMES", [ + "-1" => "COAL", + "1" => "GEM", +]); // Rating names. The schema is [ "id/rating_point" => "name" ]. + +// UPLOADS +define("ANONYMOUS_UPLOAD", false); // Allow anonymous upload for emotes. +define("ANONYMOUS_DEFAULT_NAME", "Anonymous"); // Default uploader name for anonymous emotes. It's also used when original uploader has been deleted. + +// EMOTES +define("EMOTE_UPLOAD", true); // Enable emote upload. +define("EMOTE_NAME_MAX_LENGTH", 100); // Max length for emote name. +define("EMOTE_COMMENT_MAX_LENGTH", 100); // Max length for emote comment. +define("EMOTE_VISIBILITY_DEFAULT", 2); // Default visibility for emotes. 0 - unlisted, 1 - public, 2 - pending approval (same as unlisted). +define("EMOTE_MAX_SIZE", [128, 128]); // Max size of emote. +define("EMOTE_NAME_REGEX", "/^[A-Za-z0-9_]+$/"); // RegEx filter for emote names. + +// MODERATION +define("MOD_SYSTEM_DASHBOARD", true); // Enable system dashboard for moderators (/system). +define("MOD_EMOTES_APPROVE", true); // Enable manual emote approval (/system/emotes). + +// REPORTS +define("REPORTS_ENABLE", true); // Enable emote, user reports. + +// ACCOUNTS +define("ACCOUNT_REGISTRATION_ENABLE", true); // Enable account registration. +define("ACCOUNT_USERNAME_REGEX", "/^[A-Za-z0-9_]+$/"); // RegEx filter for account usernames. +define("ACCOUNT_USERNAME_MAX_LENGTH", 20); // Max length for account usernames. +define("ACCOUNT_PFP_MAX_SIZE", [128, 128]); // Max dimensions for account pictures. +define("ACCOUNT_BANNER_MAX_SIZE", [1920, 1080]); // Max dimensions for account banners. + +// TWITCH +define("TWITCH_REGISTRATION_ENABLE", false); // Enable account registration via Twitch. +define("TWITCH_CLIENT_ID", "AAAAAAAAA"); // Client ID of your Twitch application. +define("TWITCH_SECRET_KEY", "BBBBBBBBB"); // Secret key of your Twitch application. +define("TWITCH_REDIRECT_URI", ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') ? "https" : "http") . "://$_SERVER[HTTP_HOST]/account/login/twitch.php"); // Redirect URI of your Twitch application. + +// HCAPTCHA +define("HCAPTCHA_ENABLE", true); // Enable hCaptcha. +define("HCAPTCHA_SECRETKEY", "ES_XXXXXX"); // hCaptcha's secret key. +define("HCAPTCHA_SITEKEY", "YYYYYYY"); // hCaptcha's site key. + +// FOR DEVELOPERS +define("CLIENT_REQUIRES_JSON", isset($_SERVER["HTTP_ACCEPT"]) && $_SERVER["HTTP_ACCEPT"] == "application/json");
\ No newline at end of file diff --git a/src/partials.php b/src/partials.php index 2a560df..2314810 100644 --- a/src/partials.php +++ b/src/partials.php @@ -5,13 +5,13 @@ function html_navigation_bar() <section class="navbar"> <a href="/" class="brand" style="color:black;text-decoration:none;"> <img src="/static/img/brand/mini.webp" alt=""> - <h2 style="margin-left:8px;font-size:24px;"><b><?php echo "alright.party" ?></b></h2> + <h2 style="margin-left:8px;font-size:24px;"><b><?php echo INSTANCE_NAME ?></b></h2> </a> <div class="links"> <a href="/emotes" class="button">Emotes</a> <a href="/emotesets.php" class="button">Emotesets</a> <a href="/users.php" class="button">Users</a> - <?php if (ANONYMOUS_UPLOAD || (isset($_SESSION["user_role"]) && $_SESSION["user_role"]["permission_upload"])) { + <?php if (EMOTE_UPLOAD && (ANONYMOUS_UPLOAD || (isset($_SESSION["user_role"]) && $_SESSION["user_role"]["permission_upload"]))) { echo '<a href="/emotes/upload.php" class="button">Upload</a>'; } ?> <a href="/account" class="button">Account</a> @@ -31,7 +31,7 @@ function html_navigation_bar() $stmt = null; if (isset($_SESSION["user_role"])) { - if ($_SESSION["user_role"]["permission_report"]) { + if (REPORTS_ENABLE && $_SESSION["user_role"]["permission_report"]) { // getting reports $stmt = $db->prepare("SELECT COUNT(*) FROM reports WHERE sender_id = ? AND resolved_by IS NULL"); $stmt->execute([$_SESSION["user_id"]]); |
