feat: site admin (#8)

This commit is contained in:
Frankie B 2023-07-16 21:02:51 +01:00 committed by GitHub
commit 7c16dc53b5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
15 changed files with 1378 additions and 52 deletions

View file

@ -0,0 +1,9 @@
@extends('layouts.minimal')
@section('title', 'Error 401: Unauthorized User!')
@section('content')
<h1>{{ $error }}</h1>
<hr/>
@if(isset($description))
<p>{{ $description }}</p>
@endif
@stop

View file

@ -0,0 +1,8 @@
@extends('layouts.minimal')
@section('title', 'Error 401: Unauthorized User!')
@section('content')
<h1>Error 401: Unauthorized User!</h1>
<hr/>
<p>Woah there! Only authorized users can access this page. Please <a href="/login">log in</a> to proceed.</p>
<p>Ended up here on accident? Click <a href="/">here</a> to return to the homepage</u>!</p>
@stop

View file

@ -0,0 +1,12 @@
<nav>
<div>
<a href="/">public home</a> |
<a href="/admin">admin home</a> |
<a href="/admin/guestbook">guestbook</a>
@if (auth()->check())
| ({{ auth()->user()->name }}) <a href="/logout">logout</a>
@else
| <a href="/login">login</a>
@endif
</div>
</nav>

View file

@ -1,12 +1,18 @@
<nav>
<div>
<a href="/">home</a> |
<a href="//git.diskfloppy.me/">cgit</a> |
<a href="//git.diskfloppy.me/">cgit</a> |
<a href="//wiki.diskfloppy.me/">wiki</a> |
<a href="/projects/">projects</a> |
<a href="/calculators/">calculators</a> |
<a href="/computers/">computers</a> |
<a href="/bookmarks/">bookmarks</a> |
<a href="/guestbook/">guestbook</a>
@if (auth()->check())
| <a href="/admin/">admin</a>
| ({{ auth()->user()->name }}) <a href="/logout">logout</a>
@else
| <a href="/login">login</a>
@endif
</div>
</nav>

View file

@ -0,0 +1,23 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
@include('includes.head')
</head>
<body>
<div class="page">
<div class="header">
@include('includes.admin.header')
</div> <!-- header -->
<div id="pagebody">
<div id="content">
@yield('content')
</div> <!-- content -->
<div id="footer" class="pagefooter">
@include('includes.footer')
</div> <!-- footer -->
</div> <!-- pagebody -->
</div> <!-- page -->
</body>
</html>

View file

@ -0,0 +1,33 @@
@extends('layouts.minimal')
@section('title', 'Delete confirm')
@section('content')
<h1>Delete Confirmation</h1>
<hr/>
<p>Are you sure you want to delete this entry?</p>
<h3>Entry Details:</h3>
<table class="gb_entry_details">
<tr>
<td><b>ID:</b></td>
<td>{{ $entry->id }}</td>
</tr>
<tr>
<td><b>Name:</b></td>
<td>{{ $entry->name }}</td>
</tr>
<tr>
<td><b>Date:</b></td>
<td>{{ gmdate("H:i:s - Y-m-d", $entry->timestamp) }}</td>
</tr>
<tr>
<td><b>Message:</b></td>
<td>{{ $entry->message }}</td>
</tr>
</table>
<form action="/admin/guestbook/delete" method="POST">
@csrf
<input type="hidden" name="id" value="{{ $entry->id }}">
<button type="submit">Confirm Delete</button>
</form>
@stop

View file

@ -0,0 +1,27 @@
@extends('layouts.default-admin')
@section('title', 'guestbook')
@section('content')
@php
$entries = DB::select('SELECT id, name, timestamp, message FROM guestbook_entries ORDER BY id DESC');
@endphp
<h1>Entries <small>({{ count($entries) }} total)</small></h1>
@foreach ($entries as $entry)
<table class="gb_admin">
<tr>
<td>
Name:&nbsp;{{ $entry->name }}<br/>
Date:&nbsp;{{ gmdate("H:i:s - Y-m-d", $entry->timestamp) }}
</td>
<td class="gb_del">
<a href="/admin/guestbook/delete?id={{ $entry->id }}">del</a>
</td>
</tr>
<tr>
<td colspan="2" class="gb_message">
<br/>
{{ htmlspecialchars($entry->message) }}
</td>
</tr></table>
@endforeach
@stop

View file

@ -0,0 +1,9 @@
@extends('layouts.default-admin')
@section('title', 'Page Title')
@section('description', 'Page description goes here')
@php
$user = auth()->user();
@endphp
@section('content')
<p>You are logged in as {{ $user->name }} ({{ $user->email }})</p>
@stop