@@ -3,7 +3,7 @@ | |||||
<div class="saved-cards-heading"> | <div class="saved-cards-heading"> | ||||
<h5>Card</h5> <h5>Default</h5> <h5>Delete</h5> | <h5>Card</h5> <h5>Default</h5> <h5>Delete</h5> | ||||
</div> | </div> | ||||
<div v-for="(card, index) in cards" :key="card.id" class="saved-card"> | |||||
<div v-for="card in cards" :key="card.id" class="saved-card"> | |||||
<span>{{card.card.brand[0].toUpperCase() + card.card.brand.substring(1)}} | <span>{{card.card.brand[0].toUpperCase() + card.card.brand.substring(1)}} | ||||
(••••{{card.card.last4}})</span> | (••••{{card.card.last4}})</span> | ||||
<span><input :checked="card.id == preferred" :value="card.id" name="selected-card" type="radio" | <span><input :checked="card.id == preferred" :value="card.id" name="selected-card" type="radio" | ||||
@@ -16,6 +16,8 @@ section { | |||||
position: relative; | position: relative; | ||||
padding-top: 3em; | padding-top: 3em; | ||||
padding-bottom: 3em; | padding-bottom: 3em; | ||||
padding-right: 10px; | |||||
padding-left: 10px; | |||||
overflow: hidden; | overflow: hidden; | ||||
} | } | ||||
@@ -1311,3 +1313,18 @@ div#card-errors { | |||||
width: 3em; | width: 3em; | ||||
height: 2em; | height: 2em; | ||||
} | } | ||||
nav.info-page { | |||||
position: relative; | |||||
} | |||||
main.terms { | |||||
section { | |||||
padding-top: 0; | |||||
padding-bottom: 2em; | |||||
} | |||||
section:nth-child(1) { | |||||
margin-top: 3em; | |||||
} | |||||
} |
@@ -8,6 +8,25 @@ | |||||
<link rel="stylesheet" href="css/main.css"> | <link rel="stylesheet" href="css/main.css"> | ||||
@endsection | @endsection | ||||
@section('login-form') | |||||
@guest | |||||
<form id='login_form' class= 'login' method='POST'> | |||||
<div> | |||||
<label for='sender_email'>Email</label> | |||||
<input required id='login_email' type='email' name='sender_email' placeholder='' | |||||
spellcheck='false'> | |||||
</div> | |||||
<div> | |||||
<label for='sender_password'>Password</label> | |||||
<input required id='login_password' type='password' | |||||
name='sender_password' placeholder='' spellcheck='false'> | |||||
</div> | |||||
<button class='login-btn'type="login">Log in</button> | |||||
<div><p class="error"></p></div> | |||||
</form> | |||||
<div id="nav_toggle" class="nav-toggle"><div> | |||||
@endguest | |||||
@endsection | |||||
@section('content') | @section('content') | ||||
@parent | @parent | ||||
<main> | <main> | ||||
@@ -175,6 +194,17 @@ | |||||
</main> | </main> | ||||
@endsection | @endsection | ||||
@section('footer') | |||||
<footer class='footer text-center'> | |||||
<div class='foot-links'> | |||||
<a href="/terms-and-policy">Terms & Policy</a> | |||||
<a href="mail:support@trendplays.com">Help</a> | |||||
<a id="forgot-password-btn" href="#">Reset Password</a> | |||||
</div> | |||||
<small>©Copyright 2021 Trendplays Network, Inc.</small> | |||||
</footer> | |||||
@endsection | |||||
@section('scripts') | @section('scripts') | ||||
@parent | @parent | ||||
<script src="js/app.js"></script> | <script src="js/app.js"></script> | ||||
@@ -16,42 +16,17 @@ | |||||
<h1>Trendplays</h1> | <h1>Trendplays</h1> | ||||
<img src="/img/arrow-up.svg" height="30px" alt=""> | <img src="/img/arrow-up.svg" height="30px" alt=""> | ||||
</a> | </a> | ||||
@guest | |||||
<form id='login_form' class= 'login' method='POST'> | |||||
<div> | |||||
<label for='sender_email'>Email</label> | |||||
<input required id='login_email' type='email' name='sender_email' placeholder='' | |||||
spellcheck='false'> | |||||
</div> | |||||
<div> | |||||
<label for='sender_password'>Password</label> | |||||
<input required id='login_password' type='password' name='sender_password' placeholder='' spellcheck='false'> | |||||
</div> | |||||
<button class='login-btn'type="login">Log in</button> | |||||
<div><p class="error"></p></div> | |||||
</form> | |||||
<div id="nav_toggle" class="nav-toggle"><div> | |||||
@endguest | |||||
@yield('login-form') | |||||
<span class="icon-bar"></span> | <span class="icon-bar"></span> | ||||
<!-- probably not needed --> | |||||
</nav> | </nav> | ||||
<div @if (count($errors) == 0) { hidden } @endif class='errors'> | |||||
<ul> | |||||
@foreach ($errors->all() as $error) | |||||
<li>{{$error}}</li> | |||||
@endforeach | |||||
</ul> | |||||
</div> | |||||
@yield('content') | |||||
@yield('content') | |||||
@section('footer') | @section('footer') | ||||
<footer class='footer text-center'> | <footer class='footer text-center'> | ||||
<div class='foot-links'> | <div class='foot-links'> | ||||
<a href="/terms">Terms & Policy</a> | |||||
<a href="/terms-and-policy">Terms & Policy</a> | |||||
<a href="mail:support@trendplays.com">Help</a> | <a href="mail:support@trendplays.com">Help</a> | ||||
<a id="forgot-password-btn" href="#">Reset Password</a> | |||||
</div> | </div> | ||||
<small>©Copyright 2021 Trendplays Network, Inc.</small> | <small>©Copyright 2021 Trendplays Network, Inc.</small> | ||||
</footer> | </footer> | ||||
@@ -15,6 +15,7 @@ | |||||
</div> | </div> | ||||
</main> | </main> | ||||
@endsection | @endsection | ||||
@section('footer') | @section('footer') | ||||
@endsection | @endsection | ||||
@@ -0,0 +1,77 @@ | |||||
@extends('master') | |||||
@section('title', 'Terms & Policy') | |||||
@section('heading-style', 'info-page') | |||||
@section('head-metas') | |||||
@parent | |||||
<link rel="stylesheet" href="{{asset('panel.css')}}"> | |||||
@endsection | |||||
@section('content') | |||||
@parent | |||||
<main class="terms"> | |||||
<section> | |||||
<h2>Terms and Conditions</h2> | |||||
<h3>Amet quibusdam?</h3> | |||||
<p>Elit ratione consectetur quas est natus. Reprehenderit accusamus aliquid | |||||
velit repudiandae aliquid illo. Similique sunt quasi dolores dignissimos vitae | |||||
corrupti! Voluptatem quis dignissimos maiores nostrum voluptate cupiditate? | |||||
Perspiciatis eaque officiis?</p> | |||||
<p> | |||||
Elit cupiditate possimus eveniet id tempora Fugit ea at quaerat asperiores doloribus? Inventore ducimus rem quos error fugit Animi iusto nobis modi excepturi nisi Quam perspiciatis autem distinctio explicabo non. | |||||
</p> | |||||
<p> | |||||
Ipsum iure neque cupiditate nemo vel repellendus excepturi sed repudiandae. Placeat repellendus eaque eaque deserunt lorem sequi consectetur. Quibusdam numquam illo amet natus qui similique ratione Eius sequi veniam nihil. | |||||
</p> | |||||
<p> | |||||
Ipsum iure neque cupiditate nemo vel repellendus excepturi sed repudiandae. Placeat repellendus eaque eaque deserunt lorem sequi consectetur. Quibusdam numquam illo amet natus qui similique ratione Eius sequi veniam nihil. | |||||
</p> | |||||
</section> | |||||
<section> | |||||
<h2>Privacy Policy</h2> | |||||
<h3>Amet quibusdam?</h3> | |||||
<p>Elit ratione consectetur quas est natus. Reprehenderit accusamus aliquid | |||||
velit repudiandae aliquid illo. Similique sunt quasi dolores dignissimos vitae | |||||
corrupti! Voluptatem quis dignissimos maiores nostrum voluptate cupiditate? | |||||
Perspiciatis eaque officiis?</p> | |||||
<p> | |||||
Elit cupiditate possimus eveniet id tempora Fugit ea at quaerat asperiores doloribus? Inventore ducimus rem quos error fugit Animi iusto nobis modi excepturi nisi Quam perspiciatis autem distinctio explicabo non. | |||||
</p> | |||||
<p> | |||||
Ipsum iure neque cupiditate nemo vel repellendus excepturi sed repudiandae. Placeat repellendus eaque eaque deserunt lorem sequi consectetur. Quibusdam numquam illo amet natus qui similique ratione Eius sequi veniam nihil. | |||||
</p> | |||||
<p> | |||||
Ipsum iure neque cupiditate nemo vel repellendus excepturi sed repudiandae. Placeat repellendus eaque eaque deserunt lorem sequi consectetur. Quibusdam numquam illo amet natus qui similique ratione Eius sequi veniam nihil. | |||||
</p> | |||||
</section> | |||||
<section> | |||||
<h3>Amet quibusdam?</h3> | |||||
<p>Elit ratione consectetur quas est natus. Reprehenderit accusamus aliquid | |||||
velit repudiandae aliquid illo. Similique sunt quasi dolores dignissimos vitae | |||||
corrupti! Voluptatem quis dignissimos maiores nostrum voluptate cupiditate? | |||||
Perspiciatis eaque officiis?</p> | |||||
</section> | |||||
<section> | |||||
<h3>Amet quibusdam?</h3> | |||||
<p>Elit ratione consectetur quas est natus. Reprehenderit accusamus aliquid | |||||
velit repudiandae aliquid illo. Similique sunt quasi dolores dignissimos vitae | |||||
corrupti! Voluptatem quis dignissimos maiores nostrum voluptate cupiditate? | |||||
Perspiciatis eaque officiis?</p> | |||||
</section> | |||||
</main> | |||||
@endsection | |||||
@section('scripts') | |||||
@parent | |||||
<script src="js/app.js"></script> | |||||
<script src="js/chunk-vendors.js"></script> | |||||
<!-- <script src="main.js"></script> --> | |||||
@endsection |
@@ -5,7 +5,7 @@ | |||||
@section('head-metas') | @section('head-metas') | ||||
@parent | @parent | ||||
<link rel="stylesheet" href="{{asset('panel.css')}}"> | |||||
<link rel="stylesheet" href="/css/panel.css"> | |||||
@endsection | @endsection | ||||
@section('content') | @section('content') | ||||
@@ -30,6 +30,9 @@ Route::get('/', function () { | |||||
Route::view('/panel', 'panel')->middleware([ 'auth', 'verified' ])->name('panel'); | Route::view('/panel', 'panel')->middleware([ 'auth', 'verified' ])->name('panel'); | ||||
Route::view('/terms-and-policy', 'terms-and-policy'); | |||||
//Verification routes | |||||
Route::get('/verify-email', function() { | Route::get('/verify-email', function() { | ||||
if (Auth::user()->email_verified_at) { | if (Auth::user()->email_verified_at) { | ||||
abort(404); | abort(404); | ||||
@@ -52,6 +55,8 @@ Route::post('/resend-verification', function (Request $request) { | |||||
return back()->with('message', 'Verification link sent!'); | return back()->with('message', 'Verification link sent!'); | ||||
})->middleware(['auth', 'throttle:6,1'])->name('verification.send'); | })->middleware(['auth', 'throttle:6,1'])->name('verification.send'); | ||||
//Creation and recovery | |||||
Route::post('/register', [UserController::class, 'create']); | Route::post('/register', [UserController::class, 'create']); | ||||
Route::post('/forgot-password', [UserController::class, | Route::post('/forgot-password', [UserController::class, | ||||
@@ -64,9 +69,14 @@ Route::get('/reset-password/{token}', function ($token) { | |||||
Route::post('/reset-passowrd', [UserController::class, | Route::post('/reset-passowrd', [UserController::class, | ||||
'resetPassword'])->middleware('guest'); | 'resetPassword'])->middleware('guest'); | ||||
Route::post('/login', [UserController::class, | Route::post('/login', [UserController::class, | ||||
'login'])->middleware('guest'); | 'login'])->middleware('guest'); | ||||
Route::get('/logout', [UserController::class, | |||||
'logout'])->middleware('auth'); | |||||
//These should probably be grouped by name later | |||||
Route::get('/panel/user', function (Request $request) { | Route::get('/panel/user', function (Request $request) { | ||||
return $request->user(); | return $request->user(); | ||||
})->middleware([ 'auth', 'verified' ]); | })->middleware([ 'auth', 'verified' ]); | ||||
@@ -84,9 +94,6 @@ Route::get('/panel/orders', [UserController::class, | |||||
Route::get('/panel/services', [ServiceController::class, | Route::get('/panel/services', [ServiceController::class, | ||||
'getServices'])->middleware([ 'auth', 'verified' ]); | 'getServices'])->middleware([ 'auth', 'verified' ]); | ||||
Route::get('/logout', [UserController::class, | |||||
'logout'])->middleware('auth'); | |||||
Route::post('/panel/change-name', [UserController::class, | Route::post('/panel/change-name', [UserController::class, | ||||
'changeName'])->middleware([ 'auth', 'verified' ]); | 'changeName'])->middleware([ 'auth', 'verified' ]); | ||||
@@ -108,6 +115,6 @@ Route::post('/panel/secret', [BillingController::class, | |||||
Route::get('/panel/cards', [BillingController::class, | Route::get('/panel/cards', [BillingController::class, | ||||
'getCards'])->middleware([ 'auth', 'verified' ]); | 'getCards'])->middleware([ 'auth', 'verified' ]); | ||||
// Maybe this should have middlewares? | |||||
//Stripe webhooks | |||||
Route::post('/hooks/charge', | Route::post('/hooks/charge', | ||||
[BillingController::class, 'chargeEvent']); | [BillingController::class, 'chargeEvent']); |