diff options
Diffstat (limited to 'routes/preferences.php')
| -rw-r--r-- | routes/preferences.php | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/routes/preferences.php b/routes/preferences.php new file mode 100644 index 0000000..c7e27fc --- /dev/null +++ b/routes/preferences.php @@ -0,0 +1,25 @@ +<?php + +use Digitigrade\Model\UserAccount; +use Digitigrade\Router; +use Digitigrade\UserSettings; + +Router::getInstance()->mount('/preferences', function (array $args) { + $user = UserAccount::requireByCurrentSession(); + render_template('preferences_page', ['user' => $user]); +}); + +Router::getInstance()->mount('/fragment/preferences', function (array $args) { + $user = UserAccount::requireByCurrentSession(); + $settings = new UserSettings($user); + $saved = false; + if ($_SERVER['REQUEST_METHOD'] == 'POST') { + // updating the preferences + $user->actor->requestToFollow = $_POST['requestToFollow'] == 'true'; + $user->actor->save(); + $settings->set('interface.smallUnreadIndicators', $_POST['smallIndicators']); + + $saved = true; + } + render_template('preferences_form', ['user' => $user, 'saved' => $saved]); +});
\ No newline at end of file |
