From 7d74ebea2715d38e6a0ae9f5bb4fd4a4abe22147 Mon Sep 17 00:00:00 2001 From: flashwave Date: Tue, 23 Jan 2018 10:23:25 +0100 Subject: [PATCH] Basic profile. --- routes.php | 3 ++ src/Controllers/UserController.php | 16 +++++++ views/nova/user/master.twig | 1 + views/nova/user/view.twig | 74 ++++++++++++++++++++++++++++++ 4 files changed, 94 insertions(+) create mode 100644 src/Controllers/UserController.php create mode 100644 views/nova/user/master.twig create mode 100644 views/nova/user/view.twig diff --git a/routes.php b/routes.php index 5a0de7b6..e0e3aa68 100644 --- a/routes.php +++ b/routes.php @@ -2,6 +2,7 @@ use Aitemu\Route; use Misuzu\Controllers\AuthController; use Misuzu\Controllers\HomeController; +use Misuzu\Controllers\UserController; return [ Route::get('/', 'index', HomeController::class), @@ -12,4 +13,6 @@ return [ Route::get('/auth/register', 'register', AuthController::class), Route::post('/auth/register', 'register', AuthController::class), Route::get('/auth/logout', 'logout', AuthController::class), + + Route::get('/user/{id:i}', 'view', UserController::class), ]; diff --git a/src/Controllers/UserController.php b/src/Controllers/UserController.php new file mode 100644 index 00000000..93f5abb9 --- /dev/null +++ b/src/Controllers/UserController.php @@ -0,0 +1,16 @@ +templating; + $twig->vars(['profile' => User::findOrFail($userId)]); + return $twig->render('user.view'); + } +} diff --git a/views/nova/user/master.twig b/views/nova/user/master.twig new file mode 100644 index 00000000..e4f20e20 --- /dev/null +++ b/views/nova/user/master.twig @@ -0,0 +1 @@ +{% extends '@nova/master.twig' %} diff --git a/views/nova/user/view.twig b/views/nova/user/view.twig new file mode 100644 index 00000000..709b5862 --- /dev/null +++ b/views/nova/user/view.twig @@ -0,0 +1,74 @@ +{% extends '@nova/user/master.twig' %} + +{% set title = 'profile / ' ~ profile.username %} +{% set banner_large = true %} +{% set wrapper_classes = 'profile' %} +{% set banner_classes = 'profile__banner' %} + +{% set hierarchies = { + 'founder': { + 'display': profile.user_id == 1, + 'icon': 'fa-cog', + 'text': 'Founder', + }, + 'staff': { + 'display': false, + 'icon': 'fa-gavel', + 'text': 'Staff', + }, + 'developer': { + 'display': false, + 'icon': 'fa-code', + 'text': 'Developer', + }, + 'contributor': { + 'display': false, + 'icon': 'fa-heart', + 'text': 'Contributor', + }, + 'premium': { + 'display': false, + 'icon': 'fa-heart', + 'text': 'Contributor', + }, + 'banned': { + 'display': false, + 'icon': 'fa-trash', + 'text': 'Banned', + }, +} %} + +{% block banner_content %} + {% spaceless %} + + {% endspaceless %} +{% endblock %} + +{% block content %} +
+ {% spaceless %} +
+
+
+ {% for id, data in hierarchies %} + {% if data.display %} +
+
+
{{ data.text }}
+
+ {% endif %} + {% endfor %} +
+
+ {% endspaceless %} +
+
+
+{% endblock %}