mirror of
https://github.com/torrentpier/torrentpier
synced 2025-07-05 20:41:41 -07:00
feat(ACP): Added robots.txt
editor (#1913)
* feat(admin): Added robots.txt editor * Update admin_robots.tpl * Update admin_robots.php * Update admin_robots.php * Update admin_robots.php * Update admin_robots.tpl * Updated * Updated * Update main.php * Updated
This commit is contained in:
parent
d18f99fa1c
commit
79bb13e17d
5 changed files with 105 additions and 30 deletions
45
admin/admin_robots.php
Normal file
45
admin/admin_robots.php
Normal file
|
@ -0,0 +1,45 @@
|
|||
<?php
|
||||
/**
|
||||
* TorrentPier – Bull-powered BitTorrent tracker engine
|
||||
*
|
||||
* @copyright Copyright (c) 2005-2025 TorrentPier (https://torrentpier.com)
|
||||
* @link https://github.com/torrentpier/torrentpier for the canonical source repository
|
||||
* @license https://github.com/torrentpier/torrentpier/blob/master/LICENSE MIT License
|
||||
*/
|
||||
|
||||
if (!empty($setmodules)) {
|
||||
$module['MODS']['ROBOTS_TXT_EDITOR_TITLE'] = basename(__FILE__);
|
||||
return;
|
||||
}
|
||||
|
||||
require __DIR__ . '/pagestart.php';
|
||||
|
||||
$robots_file = BB_ROOT . 'robots.txt';
|
||||
|
||||
// Обработка сохранения
|
||||
if (isset($_POST['save'])) {
|
||||
$robots_txt = $_POST['robots_txt'] ?? '';
|
||||
|
||||
if (!is_writable($robots_file) && is_file($robots_file)) {
|
||||
bb_die('File robots.txt is not writable #1');
|
||||
}
|
||||
|
||||
$bytes = file_put_contents($robots_file, $robots_txt);
|
||||
if ($bytes === false) {
|
||||
bb_die('Could not write robots.txt #2');
|
||||
}
|
||||
|
||||
bb_die($lang['ROBOTS_TXT_UPDATED_SUCCESSFULLY'] . '<br /><br />' . sprintf($lang['CLICK_RETURN_ROBOTS_TXT_CONFIG'], '<a href="admin_robots.php">', '</a>') . '<br /><br />' . sprintf($lang['CLICK_RETURN_ADMIN_INDEX'], '<a href="index.php?pane=right">', '</a>'));
|
||||
}
|
||||
|
||||
$current_content = '';
|
||||
if (is_file($robots_file)) {
|
||||
$current_content = file_get_contents($robots_file);
|
||||
}
|
||||
|
||||
$template->assign_vars([
|
||||
'S_ACTION' => 'admin_robots.php',
|
||||
'ROBOTS_TXT' => htmlCHR($current_content),
|
||||
]);
|
||||
|
||||
print_page('admin_robots.tpl', 'admin');
|
|
@ -19,7 +19,7 @@ $preview = isset($_POST['preview']);
|
|||
|
||||
if (isset($_POST['post']) && ($bb_cfg['terms'] !== $_POST['message'])) {
|
||||
bb_update_config(['terms' => $_POST['message']]);
|
||||
bb_die($lang['CONFIG_UPDATED']);
|
||||
bb_die($lang['TERMS_UPDATED_SUCCESSFULLY'] . '<br /><br />' . sprintf($lang['CLICK_RETURN_TERMS_CONFIG'], '<a href="admin_terms.php">', '</a>') . '<br /><br />' . sprintf($lang['CLICK_RETURN_ADMIN_INDEX'], '<a href="index.php?pane=right">', '</a>'));
|
||||
}
|
||||
|
||||
$template->assign_vars([
|
||||
|
|
58
composer.lock
generated
58
composer.lock
generated
|
@ -599,16 +599,16 @@
|
|||
},
|
||||
{
|
||||
"name": "composer/ca-bundle",
|
||||
"version": "1.5.6",
|
||||
"version": "1.5.7",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/composer/ca-bundle.git",
|
||||
"reference": "f65c239c970e7f072f067ab78646e9f0b2935175"
|
||||
"reference": "d665d22c417056996c59019579f1967dfe5c1e82"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/f65c239c970e7f072f067ab78646e9f0b2935175",
|
||||
"reference": "f65c239c970e7f072f067ab78646e9f0b2935175",
|
||||
"url": "https://api.github.com/repos/composer/ca-bundle/zipball/d665d22c417056996c59019579f1967dfe5c1e82",
|
||||
"reference": "d665d22c417056996c59019579f1967dfe5c1e82",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -655,7 +655,7 @@
|
|||
"support": {
|
||||
"irc": "irc://irc.freenode.org/composer",
|
||||
"issues": "https://github.com/composer/ca-bundle/issues",
|
||||
"source": "https://github.com/composer/ca-bundle/tree/1.5.6"
|
||||
"source": "https://github.com/composer/ca-bundle/tree/1.5.7"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -671,7 +671,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2025-03-06T14:30:56+00:00"
|
||||
"time": "2025-05-26T15:08:54+00:00"
|
||||
},
|
||||
{
|
||||
"name": "doctrine/lexer",
|
||||
|
@ -2793,16 +2793,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/deprecation-contracts",
|
||||
"version": "v3.5.1",
|
||||
"version": "v3.6.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/deprecation-contracts.git",
|
||||
"reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6"
|
||||
"reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6",
|
||||
"reference": "74c71c939a79f7d5bf3c1ce9f5ea37ba0114c6f6",
|
||||
"url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62",
|
||||
"reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2815,7 +2815,7 @@
|
|||
"name": "symfony/contracts"
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "3.5-dev"
|
||||
"dev-main": "3.6-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
@ -2840,7 +2840,7 @@
|
|||
"description": "A generic function and convention to trigger deprecation notices",
|
||||
"homepage": "https://symfony.com",
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.1"
|
||||
"source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -2856,7 +2856,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-25T14:20:29+00:00"
|
||||
"time": "2024-09-25T14:21:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher",
|
||||
|
@ -2940,16 +2940,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/event-dispatcher-contracts",
|
||||
"version": "v3.5.1",
|
||||
"version": "v3.6.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
|
||||
"reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f"
|
||||
"reference": "59eb412e93815df44f05f342958efa9f46b1e586"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/7642f5e970b672283b7823222ae8ef8bbc160b9f",
|
||||
"reference": "7642f5e970b672283b7823222ae8ef8bbc160b9f",
|
||||
"url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586",
|
||||
"reference": "59eb412e93815df44f05f342958efa9f46b1e586",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -2963,7 +2963,7 @@
|
|||
"name": "symfony/contracts"
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "3.5-dev"
|
||||
"dev-main": "3.6-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
@ -2996,7 +2996,7 @@
|
|||
"standards"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.1"
|
||||
"source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.6.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -3012,7 +3012,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-25T14:20:29+00:00"
|
||||
"time": "2024-09-25T14:21:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/filesystem",
|
||||
|
@ -3428,16 +3428,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/service-contracts",
|
||||
"version": "v3.5.1",
|
||||
"version": "v3.6.0",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/service-contracts.git",
|
||||
"reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0"
|
||||
"reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/e53260aabf78fb3d63f8d79d69ece59f80d5eda0",
|
||||
"reference": "e53260aabf78fb3d63f8d79d69ece59f80d5eda0",
|
||||
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
|
||||
"reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
@ -3455,7 +3455,7 @@
|
|||
"name": "symfony/contracts"
|
||||
},
|
||||
"branch-alias": {
|
||||
"dev-main": "3.5-dev"
|
||||
"dev-main": "3.6-dev"
|
||||
}
|
||||
},
|
||||
"autoload": {
|
||||
|
@ -3491,7 +3491,7 @@
|
|||
"standards"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/service-contracts/tree/v3.5.1"
|
||||
"source": "https://github.com/symfony/service-contracts/tree/v3.6.0"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
@ -3507,7 +3507,7 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2024-09-25T14:20:29+00:00"
|
||||
"time": "2025-04-25T09:37:31+00:00"
|
||||
},
|
||||
{
|
||||
"name": "vlucas/phpdotenv",
|
||||
|
@ -3746,6 +3746,6 @@
|
|||
"platform": {
|
||||
"php": ">=8.1"
|
||||
},
|
||||
"platform-dev": [],
|
||||
"plugin-api-version": "2.3.0"
|
||||
"platform-dev": {},
|
||||
"plugin-api-version": "2.6.0"
|
||||
}
|
||||
|
|
|
@ -1986,6 +1986,11 @@ $lang['USER_POSTS_COUNT_SYNCHRONIZED'] = 'User posts count has been synchronized
|
|||
// Online Userlist
|
||||
$lang['SHOW_ONLINE_USERLIST'] = 'Show the list of online users';
|
||||
|
||||
// Robots.txt editor
|
||||
$lang['ROBOTS_TXT_EDITOR_TITLE'] = 'Manage robots.txt';
|
||||
$lang['ROBOTS_TXT_UPDATED_SUCCESSFULLY'] = 'File robots.txt has been updated successfully';
|
||||
$lang['CLICK_RETURN_ROBOTS_TXT_CONFIG'] = '%sClick Here to return to robots.txt manager%s';
|
||||
|
||||
// Auth pages
|
||||
$lang['USER_SELECT'] = 'Select a User';
|
||||
$lang['GROUP_SELECT'] = 'Select a Group';
|
||||
|
@ -3021,6 +3026,8 @@ $lang['HASH_NOT_FOUND'] = 'Release with hash %s not found';
|
|||
|
||||
$lang['TERMS_EMPTY_TEXT'] = '[align=center]The text of this page is edited at: [url]%s[/url]. This line can see only administrators.[/align]';
|
||||
$lang['TERMS_EXPLAIN'] = 'On this page, you can specify the text of the basic rules of the resource is displayed to users.';
|
||||
$lang['TERMS_UPDATED_SUCCESSFULLY'] = 'Terms have been updated successfully';
|
||||
$lang['CLICK_RETURN_TERMS_CONFIG'] = '%sClick Here to return to Terms editor%s';
|
||||
|
||||
$lang['TR_STATS'] = [
|
||||
0 => 'inactive users in 30 days',
|
||||
|
|
23
styles/templates/admin/admin_robots.tpl
Normal file
23
styles/templates/admin/admin_robots.tpl
Normal file
|
@ -0,0 +1,23 @@
|
|||
<h1>{L_ROBOTS_TXT_EDITOR_TITLE}</h1>
|
||||
<br />
|
||||
|
||||
<form action="{S_ACTION}" method="post">
|
||||
<table class="forumline">
|
||||
<tr>
|
||||
<th>{L_ROBOTS_TXT_EDITOR_TITLE}</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="row1">
|
||||
<textarea class="editor mrg_4" name="robots_txt" id="robots_txt" rows="18" cols="92">{ROBOTS_TXT}</textarea>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="catBottom" colspan="2">
|
||||
<input type="reset" value="{L_CANCEL}" class="liteoption">
|
||||
<input type="submit" value="{L_SAVE}" name="save" class="mainoption">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
|
||||
<br clear="all"/>
|
Loading…
Add table
Add a link
Reference in a new issue