From 9d1a1cc0f263c9c3ca252dc21034018332aad678 Mon Sep 17 00:00:00 2001 From: Aldarien Date: Fri, 25 Nov 2022 20:52:59 -0300 Subject: [PATCH] UI --- ui/common/Controller/Emails.php | 18 + ui/common/Controller/Home.php | 14 + ui/resources/routes/01_emails.php | 10 + ui/resources/routes/99_home.php | 4 + ui/resources/views/emails/base.blade.php | 14 + ui/resources/views/emails/mailboxes.blade.php | 156 +++++++ ui/resources/views/emails/messages.blade.php | 428 ++++++++++++++++++ ui/resources/views/home.blade.php | 57 +++ ui/resources/views/layout/base.blade.php | 5 + ui/resources/views/layout/body.blade.php | 7 + .../views/layout/body/footer.blade.php | 4 + .../layout/body/footer/scripts.blade.php | 6 + .../layout/body/footer/scripts/main.blade.php | 38 ++ .../views/layout/body/header.blade.php | 5 + .../views/layout/body/header/navbar.blade.php | 5 + ui/resources/views/layout/head.blade.php | 11 + .../views/layout/head/styles.blade.php | 3 + ui/setup/settings/03_urls.php | 2 +- 18 files changed, 786 insertions(+), 1 deletion(-) create mode 100644 ui/common/Controller/Emails.php create mode 100644 ui/common/Controller/Home.php create mode 100644 ui/resources/routes/01_emails.php create mode 100644 ui/resources/routes/99_home.php create mode 100644 ui/resources/views/emails/base.blade.php create mode 100644 ui/resources/views/emails/mailboxes.blade.php create mode 100644 ui/resources/views/emails/messages.blade.php create mode 100644 ui/resources/views/home.blade.php create mode 100644 ui/resources/views/layout/base.blade.php create mode 100644 ui/resources/views/layout/body.blade.php create mode 100644 ui/resources/views/layout/body/footer.blade.php create mode 100644 ui/resources/views/layout/body/footer/scripts.blade.php create mode 100644 ui/resources/views/layout/body/footer/scripts/main.blade.php create mode 100644 ui/resources/views/layout/body/header.blade.php create mode 100644 ui/resources/views/layout/body/header/navbar.blade.php create mode 100644 ui/resources/views/layout/head.blade.php create mode 100644 ui/resources/views/layout/head/styles.blade.php diff --git a/ui/common/Controller/Emails.php b/ui/common/Controller/Emails.php new file mode 100644 index 0000000..a7c7efa --- /dev/null +++ b/ui/common/Controller/Emails.php @@ -0,0 +1,18 @@ +render($response, 'emails.mailboxes'); + } + public function messages(ServerRequestInterface $request, ResponseInterface $response, View $view, string $mailbox): ResponseInterface + { + return $view->render($response, 'emails.messages', ['mailbox_id' => $mailbox]); + } +} \ No newline at end of file diff --git a/ui/common/Controller/Home.php b/ui/common/Controller/Home.php new file mode 100644 index 0000000..903d545 --- /dev/null +++ b/ui/common/Controller/Home.php @@ -0,0 +1,14 @@ +render($response, 'home'); + } +} \ No newline at end of file diff --git a/ui/resources/routes/01_emails.php b/ui/resources/routes/01_emails.php new file mode 100644 index 0000000..a5d9f2d --- /dev/null +++ b/ui/resources/routes/01_emails.php @@ -0,0 +1,10 @@ +group('/emails', function($app) { + $app->group('/mailbox/{mailbox}', function ($app) { + $app->get('[/]', [Emails::class, 'messages']); + }); + $app->get('/mailboxes', Emails::class); + $app->get('[/]', Emails::class); +}); diff --git a/ui/resources/routes/99_home.php b/ui/resources/routes/99_home.php new file mode 100644 index 0000000..f989a1e --- /dev/null +++ b/ui/resources/routes/99_home.php @@ -0,0 +1,4 @@ +get('[/]', Home::class); \ No newline at end of file diff --git a/ui/resources/views/emails/base.blade.php b/ui/resources/views/emails/base.blade.php new file mode 100644 index 0000000..f4e4d40 --- /dev/null +++ b/ui/resources/views/emails/base.blade.php @@ -0,0 +1,14 @@ +@extends('layout.base') + +@section('page_title') + Emails + @hasSection('emails_title') + - + @yield('emails_title') + @endif +@endsection + +@section('page_content') +

Emails

+ @yield('emails_content') +@endsection \ No newline at end of file diff --git a/ui/resources/views/emails/mailboxes.blade.php b/ui/resources/views/emails/mailboxes.blade.php new file mode 100644 index 0000000..fea91fd --- /dev/null +++ b/ui/resources/views/emails/mailboxes.blade.php @@ -0,0 +1,156 @@ +@extends('emails.base') + +@section('emails_content') +

Mailboxes

+
+@endsection + +@push('page_scripts') + +@endpush \ No newline at end of file diff --git a/ui/resources/views/emails/messages.blade.php b/ui/resources/views/emails/messages.blade.php new file mode 100644 index 0000000..a16c0f3 --- /dev/null +++ b/ui/resources/views/emails/messages.blade.php @@ -0,0 +1,428 @@ +@extends('emails.base') + +@section('emails_content') +

Messages -

+
+@endsection + +@push('page_scripts') + +@endpush \ No newline at end of file diff --git a/ui/resources/views/home.blade.php b/ui/resources/views/home.blade.php new file mode 100644 index 0000000..d5f0851 --- /dev/null +++ b/ui/resources/views/home.blade.php @@ -0,0 +1,57 @@ +@extends('layout.base') + +@section('page_content') +

Registered Mailboxes

+
+@endsection + +@push('page_scripts') + +@endpush \ No newline at end of file diff --git a/ui/resources/views/layout/base.blade.php b/ui/resources/views/layout/base.blade.php new file mode 100644 index 0000000..fb96b37 --- /dev/null +++ b/ui/resources/views/layout/base.blade.php @@ -0,0 +1,5 @@ + + +@include('layout.head') +@include('layout.body') + \ No newline at end of file diff --git a/ui/resources/views/layout/body.blade.php b/ui/resources/views/layout/body.blade.php new file mode 100644 index 0000000..3bf15cc --- /dev/null +++ b/ui/resources/views/layout/body.blade.php @@ -0,0 +1,7 @@ + +@include('layout.body.header') +
+ @yield('page_content') +
+@include('layout.body.footer') + \ No newline at end of file diff --git a/ui/resources/views/layout/body/footer.blade.php b/ui/resources/views/layout/body/footer.blade.php new file mode 100644 index 0000000..3dc6d22 --- /dev/null +++ b/ui/resources/views/layout/body/footer.blade.php @@ -0,0 +1,4 @@ + + +@include('layout.body.footer.scripts') \ No newline at end of file diff --git a/ui/resources/views/layout/body/footer/scripts.blade.php b/ui/resources/views/layout/body/footer/scripts.blade.php new file mode 100644 index 0000000..108afea --- /dev/null +++ b/ui/resources/views/layout/body/footer/scripts.blade.php @@ -0,0 +1,6 @@ + + + +@include('layout.body.footer.scripts.main') + +@stack('page_scripts') \ No newline at end of file diff --git a/ui/resources/views/layout/body/footer/scripts/main.blade.php b/ui/resources/views/layout/body/footer/scripts/main.blade.php new file mode 100644 index 0000000..e6a57e3 --- /dev/null +++ b/ui/resources/views/layout/body/footer/scripts/main.blade.php @@ -0,0 +1,38 @@ + \ No newline at end of file diff --git a/ui/resources/views/layout/body/header.blade.php b/ui/resources/views/layout/body/header.blade.php new file mode 100644 index 0000000..42dc14f --- /dev/null +++ b/ui/resources/views/layout/body/header.blade.php @@ -0,0 +1,5 @@ +
+
+ @include('layout.body.header.navbar') +
+
\ No newline at end of file diff --git a/ui/resources/views/layout/body/header/navbar.blade.php b/ui/resources/views/layout/body/header/navbar.blade.php new file mode 100644 index 0000000..92fa22b --- /dev/null +++ b/ui/resources/views/layout/body/header/navbar.blade.php @@ -0,0 +1,5 @@ + +
diff --git a/ui/resources/views/layout/head.blade.php b/ui/resources/views/layout/head.blade.php new file mode 100644 index 0000000..50bfaa0 --- /dev/null +++ b/ui/resources/views/layout/head.blade.php @@ -0,0 +1,11 @@ + + + + Emails + @hasSection('page_title') + - + @yield('page_title') + @endif + + @include('layout.head.styles') + \ No newline at end of file diff --git a/ui/resources/views/layout/head/styles.blade.php b/ui/resources/views/layout/head/styles.blade.php new file mode 100644 index 0000000..8b8ae7f --- /dev/null +++ b/ui/resources/views/layout/head/styles.blade.php @@ -0,0 +1,3 @@ + + +@stack('page_styles') \ No newline at end of file diff --git a/ui/setup/settings/03_urls.php b/ui/setup/settings/03_urls.php index b0ca32d..71f5383 100644 --- a/ui/setup/settings/03_urls.php +++ b/ui/setup/settings/03_urls.php @@ -1,7 +1,7 @@ function() { - $arr = ['base' => '/']; + $arr = ['base' => $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST']]; $arr['api'] = 'http://localhost:8080'; return (object) $arr; }