mirror of
https://repo.getmonero.org/AnonDev/xmrmemes.git
synced 2025-08-03 03:46:38 -04:00
Almost complete site
Add dark / light theme Add social sharing on meme pages Add approving / pending admin section Improve design Add pagination on profiles Make front end date time user friendly Finish rough draft of site And Much more... Still need to fix a few minor things before it goes live. Almost complete.
This commit is contained in:
parent
52a9007882
commit
dbfda5cf9e
39 changed files with 54195 additions and 663 deletions
|
@ -7,7 +7,7 @@
|
|||
<h1>About</h1>
|
||||
<p class="lead">Post Monero memes and get tipped Monero.</p>
|
||||
<p class="lead mb-0">Monero (XMR) Donations Happily Accepted.</p>
|
||||
<img src="{{ $data['qr'] }}" alt="QR code">
|
||||
<img class="img-qr" src="{{ $data['qr'] }}" alt="QR code">
|
||||
<p class="lead">{{ $data['address'] }}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
23
resources/views/api.blade.php
Normal file
23
resources/views/api.blade.php
Normal file
|
@ -0,0 +1,23 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<h1 class="text-center">API Documentation</h1>
|
||||
<p class="lead mt-3 text-center">
|
||||
Memes Endpoint: <code>{{ $data['memes_endpoint'] }}</code>
|
||||
</p>
|
||||
<p class="text-center">
|
||||
API is experimental. Breaking changes may occur in the future.
|
||||
</p>
|
||||
<p class="mb-5 text-center">
|
||||
Rate Limit: 60 Request Per Hour
|
||||
</p>
|
||||
<code>
|
||||
<pre class="bg-white p-1">{{ $data['memes_example'] }}</pre>
|
||||
</code>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
|
@ -6,18 +6,38 @@
|
|||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Dashboard') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
{{ __('You are logged in!') }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@if ($data['memes_pending'])
|
||||
<div class="row row-cols-1 row-cols-md-4 grid-memes mt-3">
|
||||
@foreach ($data['memes_pending'] as $meme)
|
||||
<div class="col mb-4">
|
||||
<div class="card">
|
||||
@if ($meme->image)
|
||||
<img src="{{ url($meme->image) }}" class="card-img-top mx-auto d-block" alt="{{ $meme->title }} Meme">
|
||||
@else
|
||||
<img src="https://picsum.photos/200" class="card-img-top" alt="{{ $meme->title }} Meme">
|
||||
@endif
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">{{ $meme->title }}</h5>
|
||||
<p class="card-text">{{ $meme->caption }}</p>
|
||||
<p class="card-text"><a href="{{ url('meme/approve/' . $meme->id) }}">Approve</a> | <a href="{{ url('meme/destroy/' . $meme->id) }}">Delete</a></p>
|
||||
<p class="card-text">By: <a href="{{ url('/user/' . $meme->user->id) }}">{{ $meme->user->name }}</a></p>
|
||||
<p class="card-text">{{ $meme->created_at->diffForHumans() }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
</a>
|
||||
<p class="card-text">By: <a href="{{ url('/user/' . $meme->user->id) }}">{{ $meme->user->name }}</a></p>
|
||||
<p class="card-text">{{ $meme->meme_tips_total }} XMR Recieved</p>
|
||||
<p class="card-text">{{ $meme->created_at }}</p>
|
||||
<p class="card-text">{{ $meme->created_at->diffForHumans() }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -13,17 +13,18 @@
|
|||
<!-- Scripts -->
|
||||
<script src="{{ asset('js/app.js') }}" defer></script>
|
||||
|
||||
<!-- Fonts -->
|
||||
{{-- <link rel="dns-prefetch" href="//fonts.gstatic.com"> --}}
|
||||
{{-- <link href="https://fonts.googleapis.com/css?family=Nunito" rel="stylesheet"> --}}
|
||||
|
||||
<!-- Styles -->
|
||||
<link href="{{ asset('css/app.css') }}" rel="stylesheet">
|
||||
@if (Session::get('theme'))
|
||||
<link href="{{ url('') . mix('css/app_' . Session::get('theme') . '.css') }}" rel="stylesheet">
|
||||
@else
|
||||
<link href="{{ url('') . mix('css/app_light.css') }}" rel="stylesheet">
|
||||
@endif
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="app">
|
||||
<nav class="navbar navbar-expand-md navbar-light bg-white shadow-sm">
|
||||
<nav class="navbar navbar-expand-md navbar-light bg-light shadow-sm">
|
||||
<div class="container">
|
||||
<a class="navbar-brand" href="{{ url('/') }}">
|
||||
<img class="img-logo" src="{{ url('logo.png') }}" alt="">
|
||||
|
@ -51,6 +52,14 @@
|
|||
|
||||
<!-- Right Side Of Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<span class="nav-item mx-2 my-auto" data-toggle="tooltip" data-placement="bottom" title="{{ Session::get('theme') === 'light' ? 'Dark' : 'Light' }} Theme">
|
||||
@if (Session::get('theme') === 'dark')
|
||||
<a class="btn btn-light" href="{{ url('/theme/light') }}" role="button"><i class="fas fa-sun text-primary"></i></a>
|
||||
@else
|
||||
<a class="btn btn-light" href="{{ url('/theme/dark') }}" role="button"><i class="far fa-moon text-dark"></i></a>
|
||||
@endif
|
||||
</span>
|
||||
|
||||
<!-- Authentication Links -->
|
||||
@guest
|
||||
@if (Route::has('login'))
|
||||
|
@ -96,12 +105,11 @@
|
|||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
<main class="py-4">
|
||||
@yield('content')
|
||||
</main>
|
||||
|
||||
<footer class="container-fluid py-5 bg-white shadow-lg text-center">
|
||||
<footer class="container-fluid py-5 bg-light shadow-lg text-center">
|
||||
<div class="row">
|
||||
<div class="col-6 col-md">
|
||||
<ul class="list-unstyled">
|
||||
|
@ -115,7 +123,7 @@
|
|||
</div>
|
||||
<div class="col-6 col-md">
|
||||
<ul class="list-unstyled">
|
||||
<li><a href="#">API</a></li>
|
||||
<li><a href="{{ url('api') }}">API</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="col-6 col-md">
|
||||
|
|
|
@ -6,6 +6,15 @@
|
|||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Submit Meme') }}</div>
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger mt-3 mb-0">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('meme-create') }}" enctype="multipart/form-data">
|
||||
@csrf
|
||||
|
|
|
@ -16,6 +16,9 @@
|
|||
<div class="card">
|
||||
<div class="card-header">
|
||||
<h5 class="card-title">{{ $data['meme']->title }}</h5>
|
||||
@if ($data['meme']->caption)
|
||||
<p class="card-text mb-1">{{ $data['meme']->caption }}</p>
|
||||
@endif
|
||||
<p class="card-text">By: <a href="{{ url('/user/' . $data['meme']->user->id) }}">{{ $data['meme']->user->name }}</a></p>
|
||||
</div>
|
||||
@if ($data['meme']->image)
|
||||
|
@ -30,7 +33,7 @@
|
|||
</div>
|
||||
<div class="card-footer">
|
||||
<h5 class="card-title">{{ $data['meme']->meme_tips_total }} XMR Recieved</h5>
|
||||
<p class="card-text">Published {{ $data['meme']->created_at }}</p>
|
||||
<p class="card-text">Published {{ $data['meme']->created_at->diffForHumans() }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -38,31 +41,62 @@
|
|||
<div class="row text-center justify-content-center">
|
||||
<div class="col-md-12">
|
||||
<h3 class="mt-4 mb-0">Tip The Creator</h3>
|
||||
<img src="{{ $data['qr'] }}" alt="QR code">
|
||||
<p class="">{{ $data['meme']->address->address }}</p>
|
||||
<img class="img-qr" src="{{ $data['qr'] }}" alt="QR code">
|
||||
<p class="text-break">{{ $data['meme']->address->address }}</p>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<h3 class="mt-4">Monero Tips Recieved</h3>
|
||||
<div class="col-12 col-lg-6">
|
||||
<h4 class="mt-4">Monero Tips Recieved</h4>
|
||||
<div class="table-responsive-md text-left mt-4">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">Amount</th>
|
||||
<th scope="col">Date Recieved</th>
|
||||
<th scope="col">Transaction ID</th>
|
||||
<th scope="col">Date</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($data['meme']['tips'] as $tip)
|
||||
@if ($tip->is_deposit === 1)
|
||||
<tr>
|
||||
<td>{{ $tip->amount_formatted }}</td>
|
||||
<td>{{ $tip->created_at->diffForHumans() }}</td>
|
||||
<td class="text-truncate">
|
||||
<a href="https://testnet.xmrchain.net/tx/{{ $tip->txid }}" target="_blank">
|
||||
{{ $tip->txid }}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12 col-lg-6">
|
||||
<h4 class="mt-4">Monero Tips Sent</h4>
|
||||
<div class="table-responsive-md text-left mt-4">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<td>{{ $tip->amount_formatted }}</td>
|
||||
<td class="d-inline-block text-truncate" style="max-width: 150px;">
|
||||
<a href="https://testnet.xmrchain.net/tx/{{ $tip->txid }}" target="_blank">
|
||||
{{ $tip->txid }}
|
||||
</a>
|
||||
</td>
|
||||
<td>{{ $tip->created_at }}</td>
|
||||
<th scope="col">Amount</th>
|
||||
<th scope="col">Date Sent</th>
|
||||
<th scope="col">Transaction ID</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
@foreach ($data['meme']['tips'] as $tip)
|
||||
@if ($tip->is_deposit === 0)
|
||||
<tr>
|
||||
<td>{{ $tip->amount_formatted }}</td>
|
||||
<td>{{ $tip->created_at->diffForHumans() }}</td>
|
||||
<td class="text-truncate">
|
||||
<a href="https://testnet.xmrchain.net/tx/{{ $tip->txid }}" target="_blank">
|
||||
{{ $tip->txid }}
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
@endif
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<p class="text-center">Total Earnings: {{ $data['user']->tips_total }}</h3>
|
||||
<p class="text-center">Total Memes: {{ $data['user']->memes_total }}</h3>
|
||||
<div class="row row-cols-1 row-cols-md-4 grid-memes">
|
||||
@foreach ($data['user']->memes as $meme)
|
||||
@foreach ($data['memes'] as $meme)
|
||||
<div class="col mb-4">
|
||||
<div class="card">
|
||||
<a href="{{ url('/meme/' . $meme->id) }}">
|
||||
|
@ -23,7 +23,7 @@
|
|||
<h5 class="card-title">{{ $meme->title }}</h5>
|
||||
</a>
|
||||
<p class="card-text">{{ $meme->meme_tips_total }} XMR Recieved</p>
|
||||
<p class="card-text">{{ $meme->created_at }}</p>
|
||||
<p class="card-text">{{ $meme->created_at->diffForHumans() }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -31,5 +31,8 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="d-flex justify-content-center w-100">
|
||||
{{ $data['memes']->links() }}
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue