55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
|
|
|
/**@var Bramus\Router\Router $router */
|
|
|
|
use Helpers\Following;
|
|
use Helpers\Settings;
|
|
use Helpers\Misc;
|
|
use Views\Models\SettingsTemplate;
|
|
|
|
$router->mount('/settings', function () use ($router) {
|
|
$router->get('/', function () {
|
|
$latte = Misc::latte();
|
|
$latte->render(Misc::getView('settings'), new SettingsTemplate());
|
|
});
|
|
|
|
$router->post('/proxy', function () {
|
|
if (in_array(Settings::PROXY, $_POST)) {
|
|
foreach (Settings::PROXY as $proxy_element) {
|
|
Settings::set($proxy_element, $_POST[$proxy_element]);
|
|
}
|
|
}
|
|
http_response_code(302);
|
|
header('Location: ./home');
|
|
});
|
|
|
|
$router->post('/following', function () {
|
|
$following = Following::getUsers();
|
|
if (!isset($_POST['mode']) || empty($_POST['mode'])) {
|
|
die('You need to send a mode');
|
|
}
|
|
|
|
switch ($_POST['mode']) {
|
|
case 'add':
|
|
// Add following
|
|
array_push($following, $_POST['account']);
|
|
break;
|
|
case 'remove':
|
|
// Remove following
|
|
$index = array_search($_POST['account'], $following);
|
|
if ($index !== false) {
|
|
unset($following[$index]);
|
|
}
|
|
break;
|
|
default:
|
|
// Invalid
|
|
die('Invalid mode');
|
|
}
|
|
|
|
// Build string
|
|
$following_string = implode(',', $following);
|
|
Settings::set('following', $following_string);
|
|
header('Location: ../settings');
|
|
});
|
|
});
|