Redesign + Fixes
This commit is contained in:
parent
7718ed6c32
commit
7fe8056e35
67 changed files with 1898 additions and 2799 deletions
|
@ -1,95 +1,26 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'ThemePark') }}</title>
|
||||
@extends('layouts.default')
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('login') }}" action="{{ route('2fa.authenticate') }}">
|
||||
@csrf
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('2fa.authenticate') }}">
|
||||
@csrf
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block" style="font-size: 12px">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block" style="font-size: 12px">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button class="btn btn-custom" style="width: 100%">{{ __('Authenticate') }}</button>
|
||||
<a class="btn btn-link" href="{{ route('logout') }}">{{ __('Logout') }}</a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('2FA Authenticate') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('2fa.authenticate') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="two_factor" class="col-md-2 offset-md-3 col-form-label text-md-right">{{ __('2FA Code') }}</label>
|
||||
|
||||
<div class="col-md-4">
|
||||
<input id="two_factor" type="text" class="form-control @error('two_factor') is-invalid @enderror" name="two_factor" required autocomplete="two_factor" autofocus>
|
||||
|
||||
@error('two_factor')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-6 offset-md-3">
|
||||
<button type="submit" class="btn btn-block btn-primary">
|
||||
{{ __('Authenticate') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-custom" style="width: 100%">{{ __('Authenticate') }}</button>
|
||||
<a class="btn btn-link" href="{{ route('logout') }}">{{ __('Logout') }}</a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -1,27 +1,12 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('login') }}">
|
||||
@csrf
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
@if($errors->any())
|
||||
|
||||
<div class="alert alert-danger" role="alert">
|
||||
|
@ -45,17 +30,4 @@
|
|||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
|
@ -1,27 +1,12 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('password.email') }}">
|
||||
@csrf
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
@if(session('status'))
|
||||
|
||||
<div class="alert alert-success" role="alert">
|
||||
|
@ -39,17 +24,4 @@
|
|||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
|
@ -1,28 +1,13 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('password.update') }}">
|
||||
@csrf
|
||||
<input type="hidden" name="token" value="{{ $token }}">
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
|
||||
<div class="form-group @error('email') has-error @enderror">
|
||||
<div class="input-group">
|
||||
|
@ -53,17 +38,4 @@
|
|||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
|
@ -1,27 +1,12 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<form method="post" action="{{ route('register') }}">
|
||||
@csrf
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
@if($errors->any())
|
||||
|
||||
<div class="alert alert-danger" role="alert">
|
||||
|
@ -55,25 +40,15 @@
|
|||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
@section('javascript')
|
||||
<script>
|
||||
window.onload = function() {
|
||||
const passInput = document.getElementById('password_confirmation');
|
||||
passInput.onpaste = function (e) {
|
||||
e.preventDefault();
|
||||
window.onload = () => {
|
||||
const passInput = document.getElementById('password_confirmation');
|
||||
passInput.onpaste = (e) => {
|
||||
e.preventDefault();
|
||||
};
|
||||
};
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
|
@ -1,25 +1,10 @@
|
|||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<!-- ==============================================
|
||||
Title and Meta Tags
|
||||
=============================================== -->
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<meta name="csrf-token" content="{{ csrf_token() }}">
|
||||
<title>{{ config('app.name', 'Laravel') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
CSS Files
|
||||
=============================================== -->
|
||||
<link href="{{ asset('assets/css/bootstrap.min.css') }}" rel="stylesheet">
|
||||
<link href="{{ asset('assets/css/panel.min.css') }}" rel="stylesheet">
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('body')
|
||||
<div class="page">
|
||||
<div class="form">
|
||||
<h2 class="text-center">ThemePark</h2>
|
||||
@component('components.title')
|
||||
@endcomponent
|
||||
@if (session('resent'))
|
||||
|
||||
<div class="alert alert-success" role="alert">
|
||||
|
@ -31,21 +16,8 @@
|
|||
<p>{{ __('Before proceeding, please check your email for a verification link. If you did not receive an email press the button bellow to resend the email.') }}</p>
|
||||
<form method="POST" action="{{ route('verification.resend') }}">
|
||||
@csrf
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Resend Email') }}</button>.
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Resend Email') }}</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte" style="height: 20px"></a>. All Rights Reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<!-- ==============================================
|
||||
JS Files
|
||||
=============================================== -->
|
||||
<script src="{{ asset('assets/js/jquery.min.js') }}"></script>
|
||||
<script src="{{ asset('assets/js/bootstrap.min.js') }}"></script>
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
8
resources/views/components/attraction.blade.php
Normal file
8
resources/views/components/attraction.blade.php
Normal file
|
@ -0,0 +1,8 @@
|
|||
<div id="attraction-{{ $attraction->id }}" class="col-xs-12 col-sm-6 col-md-4 col-lg-3">
|
||||
<a class="status-card" href="{{ route('ridecount', ['attraction_id' => $attraction->id]) }}" style="background-image: url({{ $attraction->cover }})">
|
||||
<div class="card-body">
|
||||
<h2 class="card-title">{{ \App\Color\MinecraftColor::stripColor($attraction->name) }}</h2>
|
||||
<label id="status-%STATUS_ID%" class="badge" style="background-color: {{ $attraction->status->color }}">{{ $attraction->status->name }}</label>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
28
resources/views/components/navbar.blade.php
Normal file
28
resources/views/components/navbar.blade.php
Normal file
|
@ -0,0 +1,28 @@
|
|||
<div class="banner">
|
||||
<div>
|
||||
@if(!empty(env('APP_LOGO', '')))
|
||||
<img src="{{ env('APP_LOGO') }}" style="max-width: 80%; max-height: 50px; height: auto; width: auto">
|
||||
@else
|
||||
<h2 class="text-center" style="color: #fff">{{ env('APP_NAME', 'ThemePark') }}</h2>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<nav class="navbar navbar-theme">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapses" aria-expanded="false">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="collapse navbar-collapse" id="navbar-collapses" style="text-align: center">
|
||||
<ul class="nav navbar-nav" style="float: none; display: inline-block">
|
||||
{{ $slot }}
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
8
resources/views/components/panel.blade.php
Normal file
8
resources/views/components/panel.blade.php
Normal file
|
@ -0,0 +1,8 @@
|
|||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h4 class='panel-title'>{{ $title }}</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
{{ $slot }}
|
||||
</div>
|
||||
</div>
|
11
resources/views/components/region.blade.php
Normal file
11
resources/views/components/region.blade.php
Normal file
|
@ -0,0 +1,11 @@
|
|||
<div id="region-{{ $region->id }}" class="region">
|
||||
<div class="region-title">
|
||||
<span>{{ \App\Color\MinecraftColor::stripColor($region->name) }}</span>
|
||||
</div>
|
||||
<div class="row" style="margin-top: -20px">
|
||||
@foreach($region->attractions as $attraction)
|
||||
@component('components.attraction', ['attraction' => $attraction])
|
||||
@endcomponent
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
16
resources/views/components/show.blade.php
Normal file
16
resources/views/components/show.blade.php
Normal file
|
@ -0,0 +1,16 @@
|
|||
<div class="card" {!! $style !!}>
|
||||
<img class="card-cover" src="{{ $show->image }}">
|
||||
<div class="card-body">
|
||||
<h4 class="card-title">{{ $show->title }}</h4>
|
||||
<p>{{ $show->description }}</p>
|
||||
|
||||
@if(isset($body))
|
||||
{{ $body }}
|
||||
@endif
|
||||
</div>
|
||||
@if(isset($slot) && !empty(str_replace(' ', '', $slot)))
|
||||
<p class="card-footer">
|
||||
{{ $slot }}
|
||||
</p>
|
||||
@endif
|
||||
</div>
|
7
resources/views/components/title.blade.php
Normal file
7
resources/views/components/title.blade.php
Normal file
|
@ -0,0 +1,7 @@
|
|||
@if(!empty(env('APP_LOGO', '')))
|
||||
<div class="col-xs-12">
|
||||
<img src="{{ env('APP_LOGO') }}" style="max-width: 80%; max-height: 50px; height: auto; width: auto; filter: brightness(0)">
|
||||
</div>
|
||||
@else
|
||||
<h2 class="text-center">{{ env('APP_NAME', 'ThemePark') }}</h2>
|
||||
@endif
|
|
@ -1,55 +0,0 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-6 col-md-4 col-lg-3">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Information</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="col-xs-12" style="margin-bottom: 5px">
|
||||
<img class="center-block" src="{{ Auth::user()->photo() }}">
|
||||
</div>
|
||||
<p><strong>Username:</strong> {{ Auth::user()->username() }}
|
||||
<br><strong>Attraction:</strong> {{ $attraction_name }}</p>
|
||||
<p><strong>Control:</strong> <span id="control" class="control-status status-closed">Disconnected</span></p>
|
||||
<p><strong>Status:</strong> <span id="status" class="control-status status-unknown">Unknown</span></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-6 col-md-8 col-lg-9">
|
||||
<div id="message" class="col-xs-12"></div>
|
||||
<div id="panel" class="col-xs-12" style="margin: 0; padding: 0">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="modal fade" id="notification_modal" role="dialog">
|
||||
<div class="modal-dialog">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal">×</button>
|
||||
<h4 class="modal-title">Notification</h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>Notification message</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('javascript')
|
||||
<script>
|
||||
window.settings = {
|
||||
id: '{{ env('CONTROL_ID', 'themepark') }}',
|
||||
uuid: '{{ Auth::user()->uuid }}',
|
||||
attraction: '{{ $attraction_id }}',
|
||||
pin: '{{ $pin }}'
|
||||
};
|
||||
</script>
|
||||
<script src="{{ asset('assets/js/control.js') }}"></script>
|
||||
@endsection
|
|
@ -1,13 +1,13 @@
|
|||
@component('mail::message')
|
||||
Dear {{ $user->firstname }}
|
||||
Dear {{ $user->firstname }}
|
||||
|
||||
Press the button bellow if you wish to change your current email-address
|
||||
@component('mail::button', ['url' => route('verify_email', ['id' => $user->id, 'token' => $token, 'email' => $email])])
|
||||
Change Email
|
||||
@endcomponent
|
||||
|
||||
Is this email not directed to you or do you not wish to change your email? Than you may ignore this.
|
||||
|
||||
Thanks,<br>
|
||||
{{ config('app.name') }}
|
||||
Press the button bellow if you wish to change your current email-address
|
||||
@component('mail::button', ['url' => route('verify_email', ['id' => $user->id, 'token' => $token, 'email' => $email])])
|
||||
Change Email
|
||||
@endcomponent
|
||||
|
||||
Is this email not directed to you or do you not wish to change your email? Than you may ignore this.
|
||||
|
||||
Thanks,<br>
|
||||
{{ config('app.name') }}
|
||||
@endcomponent
|
||||
|
|
|
@ -1,22 +1,19 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
@php($message = \App\Message::orderByDesc('id')->first())
|
||||
@if(!empty($message))
|
||||
<div class="panel panel-theme news">
|
||||
<div class="panel-heading">
|
||||
@php($time = strtotime($message->created_at))
|
||||
<h3 class="panel-title">{{ \App\Cache\Cache::getUsername($message->uuid) }}<span style="float: right">{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}</span></h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
{!! $message->content !!}
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
@if(!empty($message))
|
||||
@component('components.panel')
|
||||
@slot('title')
|
||||
@php($time = strtotime($message->created_at))
|
||||
{{ \App\Cache\Cache::getUsername($message->uuid) }}<span style="float: right">{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}</span>
|
||||
@endslot
|
||||
{!! $message->content !!}
|
||||
@endcomponent
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -36,8 +36,8 @@
|
|||
<div class="wrapper">
|
||||
<header class="main-header">
|
||||
<a class="logo">
|
||||
<span class="logo-mini"><b>TP</b></span>
|
||||
<span class="logo-lg"><b>ThemePark</b></span>
|
||||
<span class="logo-mini"><b>{{ env('APP_NAME_SHORT', 'TP') }}</b></span>
|
||||
<span class="logo-lg"><b>{{ env('APP_NAME', 'ThemePark') }}</b></span>
|
||||
</a>
|
||||
|
||||
<nav class="navbar navbar-static-top">
|
||||
|
@ -95,16 +95,30 @@
|
|||
<li @if(Request::is('panel/home*')) class="active" @endif><a href="{{ route('panel.home') }}"><i class="fas fa-tachometer-alt"></i> <span>Dashboard</span></a></li>
|
||||
<li @if(Request::is('panel/message*')) class="active" @endif><a href="{{ route('panel.message') }}"><i class="fas fa-feather-alt"></i> <span>Message</span></a></li>
|
||||
<li @if(Request::is('panel/ums*')) class="active" @endif><a href="{{ route('panel.ums') }}"><i class="fas fa-users"></i> User Manager</a></li>
|
||||
<li class="treeview @if(Request::is('panel/show*')) menu-open active @endif">
|
||||
@if(env('SHOWS', false))
|
||||
<li class="treeview @if(Request::is('panel/show*')) menu-open active @endif">
|
||||
<a>
|
||||
<i class="fas fa-theater-masks"></i> <span>Shows</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu" style="display: @if(Request::is('panel/show*')) block @else none @endif">
|
||||
<li @if(Request::is('panel/show') || Request::is('panel/show/*')) class="active" @endif><a href="{{ route('panel.show') }}"><i class="fas fa-feather-alt"></i> Manager</a></li>
|
||||
<li @if(Request::is('panel/shows*')) class="active" @endif><a href="{{ route('panel.shows') }}"><i class="fas fa-calendar-alt"></i> Dates</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
@endif
|
||||
<li class="treeview @if(Request::is('panel/tools*')) menu-open active @endif">
|
||||
<a>
|
||||
<i class="fas fa-theater-masks"></i> <span>Shows</span>
|
||||
<i class="fas fa-wrench"></i> <span>Tools</span>
|
||||
<span class="pull-right-container">
|
||||
<i class="fa fa-angle-left pull-right"></i>
|
||||
</span>
|
||||
</a>
|
||||
<ul class="treeview-menu" style="display: @if(Request::is('panel/show*')) block @else none @endif">
|
||||
<li @if(Request::is('panel/show') || Request::is('panel/show/*')) class="active" @endif><a href="{{ route('panel.show') }}"><i class="fas fa-feather-alt"></i> Manager</a></li>
|
||||
<li @if(Request::is('panel/shows*')) class="active" @endif><a href="{{ route('panel.shows') }}"><i class="fas fa-calendar-alt"></i> Dates</a></li>
|
||||
<ul class="treeview-menu" style="display: @if(Request::is('panel/tools*')) block @else none @endif">
|
||||
<li @if(Request::is('panel/tools/operator*')) class="active" @endif><a href="{{ route('panel.operator') }}"><i class="fas fa-user-cog"></i> Operator</a></li>
|
||||
<li @if(Request::is('panel/tools/css*')) class="active" @endif><a href="{{ route('panel.css') }}"><i class="fas fa-palette"></i> CSS</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
|
@ -129,7 +143,7 @@
|
|||
<div class="pull-right hidden-xs">
|
||||
<b>Version</b> {{ env('APP_VERSION', '1.0') }}
|
||||
</div>
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte"></a>. All rights reserved.</span>
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo.png') }}" alt="IOByte"></a>. All rights reserved.</span>
|
||||
</footer>
|
||||
|
||||
<div class="control-sidebar-bg"></div>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>ThemePark</title>
|
||||
<title>{{ env('APP_NAME', 'ThemePark') }}</title>
|
||||
|
||||
<!-- ==============================================
|
||||
Favicon
|
||||
|
@ -24,30 +24,11 @@
|
|||
</head>
|
||||
<body>
|
||||
|
||||
|
||||
<nav class="navbar navbar-theme navbar-fixed-top">
|
||||
<div class="container-fluid">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapses" aria-expanded="false">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<a class="navbar-brand">ThemePark</a>
|
||||
</div>
|
||||
|
||||
<div class="collapse navbar-collapse" id="navbar-collapses">
|
||||
@yield('navigation')
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
|
||||
@yield('content')
|
||||
@yield('body')
|
||||
|
||||
<footer class="footer">
|
||||
<div class="container">
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo-lg.png') }}" alt="IOByte"></a>. All rights reserved.</span>
|
||||
<span>Copyright © 2019-{{ date('Y') }} <a href="https://www.iobyte.nl/"><img src="{{ asset('assets/img/logo.png') }}" alt="IOByte"></a>. All rights reserved.</span>
|
||||
</div>
|
||||
</footer>
|
||||
|
|
@ -1,27 +1,32 @@
|
|||
@extends('layouts.panel')
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('navigation')
|
||||
<ul class="nav navbar-nav">
|
||||
<li @if(Request::is('/') || Request::is('home*')) class="active" @endif><a href="{{ route('home') }}">Home</a></li>
|
||||
<li @if(Request::is('status*') || Request::is('ridecount*')) class="active" @endif><a href="{{ route('status') }}">Attraction Status</a></li>
|
||||
@if(Route::has('photo'))
|
||||
<li @if(Request::is('photo*')) class="active" @endif><a href="{{ route('photo') }}">ActionFoto's</a></li>
|
||||
@endif
|
||||
<li @if(Request::is('shows*') || Request::is('order*')) class="active" @endif><a href="{{ route('shows') }}">Show</a></li>
|
||||
<li><a href="{{ route('store') }}">Store</a></li>
|
||||
@if(Route::has('openaudiomc'))
|
||||
<li @if(Request::is('openaudiomc*')) class="active" @endif><a href="{{ route('openaudiomc') }}">OpenAudioMC</a></li>
|
||||
@section('body')
|
||||
@component('components.navbar')
|
||||
@if(env('HOME_PAGE', false))
|
||||
<li @if(Request::is('/') || Request::is('home*')) class="active" @endif><a href="{{ route('home') }}">Home</a></li>
|
||||
@endif
|
||||
<li @if(Request::is('status*') || Request::is('ridecount*')) class="active" @endif><a href="{{ route('status') }}">Attraction Status</a></li>
|
||||
@if(Route::has('photo'))
|
||||
<li @if(Request::is('photo*')) class="active" @endif><a href="{{ route('photo') }}">ActionFoto's</a></li>
|
||||
@endif
|
||||
<li @if(Request::is('shows*') || Request::is('order*')) class="active" @endif><a href="{{ route('shows') }}">Show</a></li>
|
||||
@if(Route::has('store'))
|
||||
<li><a href="{{ route('store') }}">Store</a></li>
|
||||
@endif
|
||||
@if(Route::has('openaudiomc'))
|
||||
<li @if(Request::is('openaudiomc*')) class="active" @endif><a href="{{ route('openaudiomc') }}">OpenAudioMC</a></li>
|
||||
@endif
|
||||
|
||||
<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{{ Auth::user()->username() }}<span class="caret"></span></a><ul class="dropdown-menu">
|
||||
<li><a href="{{ route('profile.home') }}">Profile</a></li>
|
||||
@if(Auth::user()->is_admin || Auth::user()->is_root)
|
||||
<li><a href="{{ route('panel.home') }}">Admin</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
@endif
|
||||
<li><a href="{{ route('logout') }}">Logout</a></li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{{ Auth::user()->username() }}<span class="caret"></span></a><ul class="dropdown-menu">
|
||||
<li><a href="{{ route('profile.home') }}">Profile</a></li>
|
||||
@if(Auth::user()->is_admin || Auth::user()->is_root)
|
||||
<li><a href="{{ route('panel.home') }}">Admin</a></li>
|
||||
<li role="separator" class="divider"></li>
|
||||
@endif
|
||||
<li><a href="{{ route('logout') }}">Logout</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
@endcomponent
|
||||
|
||||
@yield('content')
|
||||
@endsection
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
@extends('layouts.panel')
|
||||
@extends('layouts.default')
|
||||
|
||||
@section('navigation')
|
||||
<ul class="nav navbar-nav">
|
||||
@section('body')
|
||||
@component('components.navbar')
|
||||
<li @if(Request::is('profile/home*')) class="active" @endif><a href="{{ route('profile.home') }}">Home</a></li>
|
||||
<li @if(Request::is('profile/security*')) class="active" @endif><a href="{{ route('security') }}">Security</a></li>
|
||||
<li @if(Request::is('profile/change*')) class="active" @endif><a href="{{ route('change') }}">Change</a></li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li class="dropdown">
|
||||
<a class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">{{ Auth::user()->username() }}<span class="caret"></span></a>
|
||||
<ul class="dropdown-menu">
|
||||
|
@ -18,5 +16,7 @@
|
|||
<li><a href="{{ route('logout') }}">Logout</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@endcomponent
|
||||
|
||||
@yield('content')
|
||||
@endsection
|
||||
|
|
|
@ -1,25 +1,22 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
<div class="col-xs-12 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme news">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">OpenAudioMC</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
@if($type === 1)
|
||||
<p>Welcome to the audio client page!
|
||||
<br><br>Unfortunately, this server hasn't linked their OpenAudioMc account to the panel yet, but when they do, this page will re-direct you to your web client so you can open it from here with your personal login token.
|
||||
To get started, login to OpenAudioMc+ using `/oa plus`, go to the "API" tab (as seen in the left side of the page) and copy the url labeled "V1 - Get Token" and paste it into the .env file. Remember to change <strong>"<PLAYER UUID>"</strong> into <strong>"%UUID%"</strong> for correct installation.</p>
|
||||
@elseif($type=== 2)
|
||||
<p>Hey there {{ Auth::user()->username() }}!
|
||||
<br><br>You aren't online in the server right now and thus can't connect to the audio client. Please login or try again in a few seconds.</p>
|
||||
@else
|
||||
<p>You seem to already have an open session with the audio client. You may dismiss this page since you are already connected or try again in a few seconds if you have closed it recently.</p>
|
||||
@endif
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="col-xs-12 col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
@component('components.panel', ['title' => 'OpenAudioMC'])
|
||||
@if($type === 1)
|
||||
<p>Welcome to the audio client page!
|
||||
<br><br>Unfortunately, this server hasn't linked their OpenAudioMc account to the panel yet, but when they do, this page will re-direct you to your web client so you can open it from here with your personal login token.
|
||||
To get started, login to your Craftmend Account, go to the "API" tab and copy the url labeled "Online Players - V1" and paste it into the .env file. Remember to change <strong>"{your api key}"</strong> for correct installation.</p>
|
||||
@elseif($type=== 2)
|
||||
<p>Hey there {{ Auth::user()->username() }}!
|
||||
<br><br>You aren't online in the server right now and thus can't connect to the audio client. Please login or try again in a few seconds.</p>
|
||||
@else
|
||||
<p>You seem to already have an open session with the audio client. You may dismiss this page since you are already connected or try again in a few seconds if you have closed it recently.</p>
|
||||
@endif
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -1,25 +1,21 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="wrapper">
|
||||
<div class="col-lg-4 col-lg-offset-2 col-md-4 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Book Show</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="wrapper">
|
||||
<div class="col-lg-4 col-lg-offset-2 col-md-4 col-md-offset-2">
|
||||
@component('components.panel', ['title' => 'Book Show'])
|
||||
<div class="container-fluid">
|
||||
@if(session('error'))
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ session('error') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
<div class="alert alert-danger" role="alert">
|
||||
{{ session('error') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@elseif(session('success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
|
||||
|
@ -30,13 +26,13 @@
|
|||
<div class="custom-select" style="width: 100%">
|
||||
<select name="date">
|
||||
@if(!empty($dates))
|
||||
<option class="disabled" selected>Select Date:</option>
|
||||
@foreach($dates as $row)
|
||||
@php($time = strtotime($row['date']))
|
||||
<option value="{{ $row['date'] }}" free_seats="{{ $row['free_seats'] }}">{{ date('d-m-Y', $time) }} at {{ date('H:i', $time) }}</option>
|
||||
@endforeach
|
||||
<option class="disabled" selected>Select Date:</option>
|
||||
@foreach($dates as $row)
|
||||
@php($time = strtotime($row['date']))
|
||||
<option value="{{ $row['date'] }}" free_seats="{{ $row['free_seats'] }}">{{ date('d-m-Y', $time) }} at {{ date('H:i', $time) }}</option>
|
||||
@endforeach
|
||||
@else
|
||||
<option class="disabled" selected>No dates to book</option>
|
||||
<option class="disabled" selected>No dates to book</option>
|
||||
@endif
|
||||
</select>
|
||||
</div>
|
||||
|
@ -44,27 +40,12 @@
|
|||
<button type="submit" name="submit" class="btn-custom" style="width: 100%">Book Show</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@endcomponent
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-4">
|
||||
@component('components.show', ['show' => $show, 'style' => ''])
|
||||
<strong>Price: €</strong>{{ $show->price }}
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 col-md-4">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Book Information</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
<h4>{{ $show->title }}</h4>
|
||||
<div class="col-xs-8 col-xs-offset-2 col-lg-8 col-lg-offset-2 col-md-8 col-md-offset-2 col-sm-8 col-sm-offset-2">
|
||||
<img src="{{ $show->image }}" style="height: auto; width: 100%" alt="Image">
|
||||
</div>
|
||||
<div class="col-xs-12 col-lg-12 col-md-12 col-sm-12">
|
||||
<p>{{ $show->description }}</p>
|
||||
<p><strong>Price: €</strong>{{ $show->price }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
41
resources/views/panel/css.blade.php
Normal file
41
resources/views/panel/css.blade.php
Normal file
|
@ -0,0 +1,41 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('page', 'CSS')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2 col-xs-12">
|
||||
<div class="box box-success">
|
||||
<div class="box-header">
|
||||
<h4>Edit CSS</h4>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<form method="post" action="{{ route('panel.css') }}">
|
||||
@csrf
|
||||
|
||||
@foreach($styles as $key => $value)
|
||||
<div class="form-group @error($key) has-error @enderror">
|
||||
<label for="email" class="text-md-right">{{ __(ucfirst($key).':') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="fas fa-tag"></i></span>
|
||||
<input id="{{ $key }}" type="text" class="form-control" placeholder="{{ $value }}" name="{{ $key }}" value="{{ $value }}" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error($key)
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
@endforeach
|
||||
|
||||
<button type="submit" class="btn btn-primary">Change</button>
|
||||
<a href="{{ route('panel.css.reset') }}" class="btn btn-primary" style="float: right">Reset</a>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('javascript')
|
||||
<script src="{{ asset('assets/js/operator.js') }}"></script>
|
||||
@endsection
|
|
@ -53,16 +53,18 @@
|
|||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-3 col-xs-6">
|
||||
<div class="small-box bg-green-gradient">
|
||||
<div class="inner">
|
||||
<h3>{{ $shows }}</h3>
|
||||
<p>Show{{ $shows != 1 ? 's' : '' }}</p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i class="fas fa-theater-masks"></i>
|
||||
@if(env('SHOWS', false))
|
||||
<div class="col-lg-3 col-xs-6">
|
||||
<div class="small-box bg-green-gradient">
|
||||
<div class="inner">
|
||||
<h3>{{ $shows }}</h3>
|
||||
<p>Show{{ $shows != 1 ? 's' : '' }}</p>
|
||||
</div>
|
||||
<div class="icon">
|
||||
<i class="fas fa-theater-masks"></i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -12,17 +12,14 @@
|
|||
<div class="col-lg-12 col-md-8col-xs-12 col-sm-12">
|
||||
@php($message = \App\Message::orderByDesc('id')->first())
|
||||
@if(!empty($message))
|
||||
<div class="panel panel-theme news">
|
||||
<div class="panel-heading">
|
||||
@php($time = strtotime($message->created_at))
|
||||
<h3 class="panel-title">{{ \App\Cache\Cache::getUsername($message->uuid) }}<span style="float: right">{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}</span></h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
@component('components.panel')
|
||||
@slot('title')
|
||||
@php($time = strtotime($message->created_at))
|
||||
{{ \App\Cache\Cache::getUsername($message->uuid) }}<span style="float: right">{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}</span>
|
||||
@endslot
|
||||
|
||||
{!! $message->content !!}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endcomponent
|
||||
@endif
|
||||
</div>
|
||||
|
||||
|
|
88
resources/views/panel/operator.blade.php
Normal file
88
resources/views/panel/operator.blade.php
Normal file
|
@ -0,0 +1,88 @@
|
|||
@extends('layouts.admin')
|
||||
|
||||
@section('page', 'Operator')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-6">
|
||||
<div class="box box-success">
|
||||
<div class="box-header">
|
||||
<h4 class="box-title text-center">Ride Operator Configurator</h4>
|
||||
<i id="sync" class="fas fa-external-link-alt sync"></i>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<form id="operator-form" class="col-12">
|
||||
<div class="input-group mb-3">
|
||||
<span class="input-group-addon"><i class="fas fa-tag"></i></span>
|
||||
<input type="text" class="form-control" name="id" placeholder="ID">
|
||||
</div>
|
||||
|
||||
<div class="settings">
|
||||
<div class="settings-toggle mb-3">
|
||||
<label class="switcher">
|
||||
<input id="template_toggle" name="template_toggle" type="checkbox" checked>
|
||||
<span class="switcher-slider"></span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="settings-text mb-3">
|
||||
<p>Use Template</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="settings" style="display: none">
|
||||
<div class="settings-toggle mb-3">
|
||||
<label class="switcher">
|
||||
<input id="is_template" name="is_template" type="checkbox">
|
||||
<span class="switcher-slider"></span>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="settings-text mb-3">
|
||||
<p>Is Template</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="template" class="input-group mb-3">
|
||||
<span class="input-group-addon"><i class="fas fa-tag"></i></span>
|
||||
<input type="text" class="form-control" name="template" placeholder="Template">
|
||||
</div>
|
||||
<div id="permission" class="input-group mb-3" style="display: none">
|
||||
<span class="input-group-addon"><i class="fas fa-lock"></i></span>
|
||||
<input type="text" class="form-control" name="permission" placeholder="Permission">
|
||||
</div>
|
||||
<div id="start_command" class="input-group mb-3" style="display: none">
|
||||
<span class="input-group-addon"><i class="fas fa-terminal"></i></span>
|
||||
<input type="text" class="form-control" name="start_command" placeholder="Start Command">
|
||||
</div>
|
||||
<div id="stop_command" class="input-group mb-3" style="display: none">
|
||||
<span class="input-group-addon"><i class="fas fa-terminal"></i></span>
|
||||
<input type="text" class="form-control" name="stop_command" placeholder="Stop Command">
|
||||
</div>
|
||||
|
||||
<h3>Items <a class="btn btn-primary">Add Item</a></h3>
|
||||
<div id="items">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-6">
|
||||
<div class="box box-success">
|
||||
<div class="box-header">
|
||||
<h4 class="box-title text-center">Output</h4>
|
||||
</div>
|
||||
<div class="box-body">
|
||||
<span><strong>File Name:</strong> <span id="file_name">panel_id.json</span></span>
|
||||
<pre id="output">Output goes here</pre>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('javascript')
|
||||
<script src="{{ asset('assets/js/operator.js') }}"></script>
|
||||
@endsection
|
|
@ -1,135 +1,127 @@
|
|||
@extends('layouts.profile')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-4 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Change Password</h3>
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-4 col-md-offset-2">
|
||||
@component('components.panel', ['title' => 'Change Password'])
|
||||
<form method="POST" action="{{ route('change.password') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('pass_success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('pass_success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
<div class="form-group @error('pass_password') has-error @enderror">
|
||||
<label for="pass_password" class="text-md-right">{{ __('Current Password:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="pass_password" type="password" class="form-control" placeholder="Current Password" name="password" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('pass_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_password') has-error @enderror">
|
||||
<label for="new_password" class="text-md-right">{{ __('New Password:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="new_password" type="password" class="form-control" placeholder="New Password" name="new_password" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_confirm_password') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="new_confirm_password" type="password" class="form-control" placeholder="Confirm New Password" name="new_confirm_password" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_confirm_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Change Password') }}</button>
|
||||
</form>
|
||||
@endcomponent
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form method="POST" action="{{ route('change.password') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('pass_success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('pass_success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-4">
|
||||
@component('components.panel', ['title' => 'Change Email'])
|
||||
<form method="POST" action="{{ route('change.email') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@endif
|
||||
<div class="form-group @error('pass_password') has-error @enderror">
|
||||
<label for="pass_password" class="text-md-right">{{ __('Current Password:') }}</label>
|
||||
@if(session('email_success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('email_success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="pass_password" type="password" class="form-control" placeholder="Current Password" name="password" required autocomplete="off" autofocus>
|
||||
@endif
|
||||
<div class="form-group @error('email_password') has-error @enderror">
|
||||
<label for="email_password" class="text-md-right">{{ __('Current Password:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="email_password" type="password" class="form-control" placeholder="Current Password" name="password" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('email_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
@error('pass_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_password') has-error @enderror">
|
||||
<label for="new_password" class="text-md-right">{{ __('New Password:') }}</label>
|
||||
<div class="form-group @error('new_email') has-error @enderror">
|
||||
<label for="new_email" class="text-md-right">{{ __('New Email:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="new_password" type="password" class="form-control" placeholder="New Password" name="new_password" required autocomplete="off" autofocus>
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-envelope"></i></span>
|
||||
<input id="new_email" type="email" class="form-control" placeholder="New Email" name="new_email" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_email')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
@error('new_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_confirm_password') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="new_confirm_password" type="password" class="form-control" placeholder="Confirm New Password" name="new_confirm_password" required autocomplete="off" autofocus>
|
||||
<div class="form-group @error('new_confirm_email') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-envelope"></i></span>
|
||||
<input id="new_confirm_email" type="email" class="form-control" placeholder="Confirm New Email" name="new_confirm_email" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_confirm_email')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
@error('new_confirm_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Change Password') }}</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-md-4">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Change Email</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form method="POST" action="{{ route('change.email') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('email_success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('email_success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
<div class="form-group @error('email_password') has-error @enderror">
|
||||
<label for="email_password" class="text-md-right">{{ __('Current Password:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="email_password" type="password" class="form-control" placeholder="Current Password" name="password" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('email_password')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_email') has-error @enderror">
|
||||
<label for="new_email" class="text-md-right">{{ __('New Email:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-envelope"></i></span>
|
||||
<input id="new_email" type="email" class="form-control" placeholder="New Email" name="new_email" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_email')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<div class="form-group @error('new_confirm_email') has-error @enderror">
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-envelope"></i></span>
|
||||
<input id="new_confirm_email" type="email" class="form-control" placeholder="Confirm New Email" name="new_confirm_email" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('new_confirm_email')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Change Email') }}</button>
|
||||
</form>
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Change Email') }}</button>
|
||||
</form>
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('javascript')
|
||||
<script>
|
||||
window.onload = function() {
|
||||
const passInput = document.getElementById('new_confirm_password');
|
||||
passInput.onpaste = function(e) {
|
||||
e.preventDefault();
|
||||
};
|
||||
<script>
|
||||
window.onload = () => {
|
||||
const passInput = document.getElementById('new_confirm_password');
|
||||
passInput.onpaste = (e) => {
|
||||
e.preventDefault();
|
||||
};
|
||||
|
||||
const emailInput = document.getElementById('new_confirm_email');
|
||||
emailInput.onpaste = function(e) {
|
||||
e.preventDefault();
|
||||
};
|
||||
};
|
||||
</script>
|
||||
const emailInput = document.getElementById('new_confirm_email');
|
||||
emailInput.onpaste = (e) => {
|
||||
e.preventDefault();
|
||||
};
|
||||
};
|
||||
</script>
|
||||
@endsection
|
||||
|
|
|
@ -1,46 +1,30 @@
|
|||
@extends('layouts.profile')
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
@if(Auth::user()->hasShows())
|
||||
@foreach(Auth::user()->getShows() as $show)
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{{ $show->title }}</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-lg-9 col-md-9 col-sm-9">
|
||||
<p>{!! $show->description !!}</p>
|
||||
@php($time = strtotime($show->date))
|
||||
<p class="bottom"><strong>Date: </strong>{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}</p>
|
||||
<p><strong>Seat: </strong>{{ $show->seat }}</p>
|
||||
<p><strong>Voucher: </strong>{{ $show->voucher }}</p>
|
||||
</div>
|
||||
<div class="hidden-xs col-lg-3 col-md-3 col-sm-3">
|
||||
<img src="{{ $show->image }}" style="float: right; height: auto; width: 100%; margin: auto" alt="Image">
|
||||
</div>
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
@if(env('SHOWS', false) && Auth::user()->hasShows())
|
||||
<div class="row card-container">
|
||||
@foreach(Auth::user()->getShows() as $show)
|
||||
<div class="col-xs-12 col-md-6">
|
||||
@component('components.show', ['show' => $show, 'style' => 'style="height: 100%"'])
|
||||
@slot('body')
|
||||
@php($time = strtotime($show->date))
|
||||
<p style="margin: 0"><strong>Date: </strong>{{ date('d-m-Y', $time) }} at {{ date('H:m', $time) }}
|
||||
<br><strong>Seat: </strong>{{ $show->seat }}
|
||||
<br><strong>Voucher: </strong>{{ $show->voucher }}</p>
|
||||
@endslot
|
||||
@endcomponent
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
@component('components.panel', ['title' => 'No Shows'])
|
||||
<p>You have no tickets for shows.</p>
|
||||
@endcomponent
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">No Shows</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
<p>You have no tickets for shows.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -5,133 +5,126 @@
|
|||
@endsection
|
||||
|
||||
@section('content')
|
||||
<div class="container-fluid" style="margin-top: 75px">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-4 hidden-xs">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Two-Factor Authentication</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
@if($TFA)
|
||||
<form method="POST" action="{{ route('2fa.toggle') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-4 hidden-xs">
|
||||
@component('components.panel', ['title' => 'Two-Factor Authentication'])
|
||||
@if($TFA)
|
||||
<form method="POST" action="{{ route('2fa.toggle') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<label for="two_factor" class="text-md-right">{{ __('2FA Code:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" maxlength="6" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Disable 2FA') }}</button>
|
||||
</form>
|
||||
@else
|
||||
<form method="POST" action="{{ route('2fa.toggle') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
<div class="text-center">
|
||||
<img src="{{ $QRCode }}" style="max-width: 250px; max-height: 250px; width: 100%; height: auto">
|
||||
</div>
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<label for="two_factor" class="text-md-right">{{ __('2FA Code:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" maxlength="6" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Enable 2FA') }}</button>
|
||||
</form>
|
||||
@endif
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<label for="two_factor" class="text-md-right">{{ __('2FA Code:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" maxlength="6" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Disable 2FA') }}</button>
|
||||
</form>
|
||||
@else
|
||||
<form method="POST" action="{{ route('2fa.toggle') }}" class="col-xs-10 col-xs-offset-1">
|
||||
@csrf
|
||||
|
||||
@if(session('success'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('success') }}
|
||||
<a class="close" data-dismiss="alert" aria-label="close">×</a>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
<div class="text-center">
|
||||
<img src="{{ $QRCode }}" style="max-width: 250px; max-height: 250px; width: 100%; height: auto">
|
||||
</div>
|
||||
<div class="form-group @error('two_factor') has-error @enderror">
|
||||
<label for="two_factor" class="text-md-right">{{ __('2FA Code:') }}</label>
|
||||
|
||||
<div class="input-group">
|
||||
<span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
|
||||
<input id="two_factor" type="text" maxlength="6" class="form-control" name="two_factor" required autocomplete="off" autofocus>
|
||||
</div>
|
||||
@error('two_factor')
|
||||
<span class="help-block">{{ $message }}</span>
|
||||
@enderror
|
||||
</div>
|
||||
|
||||
<button type="submit" class="btn btn-custom" style="width: 100%">{{ __('Enable 2FA') }}</button>
|
||||
</form>
|
||||
@endif
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-md-8">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">Sessions</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<table class="table table-bordered table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="ip">IP</th>
|
||||
<th class="hidden-xs hidden-sm hidden-md">Country</th>
|
||||
<th class="hidden-xs hidden-sm hidden-md">Browser</th>
|
||||
<th class="hidden-xs">Last Activity</th>
|
||||
<th style="width: 50px" class="text-center">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="ip">
|
||||
<code><i class="fa fa-key"></i> {{ preg_replace('/([0-9a-zA-Z])/', '•', Request::ip()) }}</code>
|
||||
<code class="hidden"><i class="fa fa-eye-slash"></i> {{ Request::ip() }}</code>
|
||||
</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ geoip(Request::ip())['country'] }}</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ $agent->browser() }}</td>
|
||||
<td class="hidden-xs">{{ date('H:i:s d-m-Y', time()) }}</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
@foreach($sessions as $session)
|
||||
@php($agent->setUserAgent($session->user_agent))
|
||||
<tr>
|
||||
<td>
|
||||
<code><i class="fa fa-key"></i> {{ preg_replace('/([0-9a-zA-Z])/', '•', $session->ip_address) }}</code>
|
||||
<code class="hidden"><i class="fa fa-eye-slash"></i> {{ $session->ip_address }}</code>
|
||||
</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ geoip($session->ip_address)['country'] }}</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ $agent->browser() }}</td>
|
||||
<td class="hidden-xs">{{ date('H:i:s d-m-Y', $session->last_activity) }}</td>
|
||||
<td><a href="{{ route('session.delete', ['id' => $session->id]) }}" class="btn btn-custom"><span class="glyphicon glyphicon-trash"></span></a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<nav style="float: right">
|
||||
<ul class="pagination">
|
||||
<li @if($page == 1) class="disabled" @endif>
|
||||
<a @if($page != 1) href="{{ route('panel.account', ['page' => ($page - 1)]) }}" @endif aria-label="Previous"><span aria-hidden="true">«</span></a>
|
||||
</li>
|
||||
@for($i = 1; $i <= $pages; $i++)
|
||||
<li @if($i == $page) class="active" @endif>
|
||||
<a @if($i != $page)href="{{ route('panel.account', ['page' => $i]) }}" @endif><span>{{ $i }}</span></a>
|
||||
</li>
|
||||
@endfor
|
||||
<li @if($page == $pages) class="disabled" @endif>
|
||||
<a @if($page != $pages) href="{{ route('panel.account', ['page' => ($page + 1)]) }}" @endif aria-label="Next"><span aria-hidden="true">»</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="col-xs-12 col-md-8">
|
||||
@component('components.panel', ['title' => 'Sessions'])
|
||||
|
||||
<table class="table table-bordered table-striped">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="ip">IP</th>
|
||||
<th class="hidden-xs hidden-sm hidden-md">Country</th>
|
||||
<th class="hidden-xs hidden-sm hidden-md">Browser</th>
|
||||
<th class="hidden-xs">Last Activity</th>
|
||||
<th style="width: 50px" class="text-center">Action</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td class="ip">
|
||||
<code><i class="fa fa-key"></i> {{ preg_replace('/([0-9a-zA-Z])/', '•', Request::ip()) }}</code>
|
||||
<code class="hidden"><i class="fa fa-eye-slash"></i> {{ Request::ip() }}</code>
|
||||
</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ geoip(Request::ip())['country'] }}</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ $agent->browser() }}</td>
|
||||
<td class="hidden-xs">Current Session</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
@foreach($sessions as $session)
|
||||
@php($agent->setUserAgent($session->user_agent))
|
||||
<tr>
|
||||
<td>
|
||||
<code><i class="fa fa-key"></i> {{ preg_replace('/([0-9a-zA-Z])/', '•', $session->ip_address) }}</code>
|
||||
<code class="hidden"><i class="fa fa-eye-slash"></i> {{ $session->ip_address }}</code>
|
||||
</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ geoip($session->ip_address)['country'] }}</td>
|
||||
<td class="hidden-xs hidden-sm hidden-md">{{ $agent->browser() }}</td>
|
||||
<td class="hidden-xs">{{ date('H:i:s d-m-Y', $session->last_activity) }}</td>
|
||||
<td><a href="{{ route('session.delete', ['id' => $session->id]) }}" class="btn btn-custom"><span class="glyphicon glyphicon-trash"></span></a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
</table>
|
||||
<nav style="float: right">
|
||||
<ul class="pagination">
|
||||
<li @if($page == 1) class="disabled" @endif>
|
||||
<a @if($page != 1) href="{{ route('security', ['page' => ($page - 1)]) }}" @endif aria-label="Previous"><span aria-hidden="true">«</span></a>
|
||||
</li>
|
||||
@for($i = 1; $i <= $pages; $i++)
|
||||
<li @if($i == $page) class="active" @endif>
|
||||
<a @if($i != $page)href="{{ route('security', ['page' => $i]) }}" @endif><span>{{ $i }}</span></a>
|
||||
</li>
|
||||
@endfor
|
||||
<li @if($page == $pages) class="disabled" @endif>
|
||||
<a @if($page != $pages) href="{{ route('security', ['page' => ($page + 1)]) }}" @endif aria-label="Next"><span aria-hidden="true">»</span></a>
|
||||
</li>
|
||||
</ul>
|
||||
</nav>
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('javascript')
|
||||
|
|
|
@ -1,32 +1,39 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="wrapper">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme news">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{{ \App\Color\MinecraftColor::stripColor($name) }}</h3>
|
||||
<div class="wrapper">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="col-xs-12" style="margin-bottom: 15px">
|
||||
<a class="status-card" style="background-image: url({{ $attraction->cover }})">
|
||||
<div class="card-body">
|
||||
<h2 class="card-title">{{ \App\Color\MinecraftColor::stripColor($attraction->name) }}</h2>
|
||||
<label id="status-%STATUS_ID%" class="badge" style="background-color: {{ $attraction->status->color }}">{{ $attraction->status->name }}</label>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="col-lg-6 col-xs-12 col-md-6 col-sm-12">
|
||||
<p>Personal: {{ $personal }}</p>
|
||||
<p>Total: {{ $total }}</p>
|
||||
</div>
|
||||
<div class="col-lg-6 col-xs-12 col-md-6 col-sm-12">
|
||||
@if(!empty($top10))
|
||||
@php($i = 1)
|
||||
@foreach($top10 as $row)
|
||||
@php($username = \App\Cache\Cache::getUsername($row->uuid))
|
||||
@if($username !== $row->uuid)
|
||||
<p><b>{{ $i++ }}#</b> {{ $username }}<b>:</b> {{ $row->count }}</p>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
<p>Nobody has ridden this attraction this week</p>
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<div class="container-fluid">
|
||||
@component('components.panel', ['title' => 'Ridecount Statistics'])
|
||||
<div class="col-lg-6 col-xs-12 col-md-6 col-sm-12">
|
||||
<p>Personal: {{ $personal }}</p>
|
||||
<p>Total: {{ $total }}</p>
|
||||
</div>
|
||||
<div class="col-lg-6 col-xs-12 col-md-6 col-sm-12">
|
||||
@if(!empty($top10))
|
||||
@php($i = 1)
|
||||
@foreach($top10 as $row)
|
||||
@php($row->uuid = str_replace('-', '', $row->uuid))
|
||||
@php($username = \App\Cache\Cache::getUsername($row->uuid))
|
||||
@if($username !== $row->uuid)
|
||||
<p><b>{{ $row->num }}#</b> {{ $username }}<b>:</b> {{ $row->count }}</p>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
<p>No top 10 available for this attraction</p>
|
||||
@endif
|
||||
</div>
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -1,44 +1,30 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="wrapper">
|
||||
@if(!empty($shows))
|
||||
@foreach($shows as $show)
|
||||
@php if(empty($show->id)) continue; @endphp
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">{{ $show->title }} <span style="float: right"><a style="text-decoration: none; color: #fff" href="{{ route('order', ['show_id' => $show->id]) }}">Ticket <i class="glyphicon glyphicon-shopping-cart"></i></a></span></h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-lg-9 col-md-9 col-sm-9">
|
||||
<p>{{ $show->description }}</p>
|
||||
<div class="wrapper">
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
@if(!empty($shows))
|
||||
<div class="row card-container">
|
||||
@foreach($shows as $show)
|
||||
@php if(empty($show->id)) continue; @endphp
|
||||
<div class="col-xs-12 col-md-6">
|
||||
@component('components.show', ['show' => $show, 'style' => 'style="height: 100%"'])
|
||||
<strong>Price: €</strong>{{ $show->price }}
|
||||
<span style="float: right">
|
||||
<a style="text-decoration: none; color: #333;" href="{{ route('order', ['show_id' => $show->id]) }}">
|
||||
Buy Ticket <i class="glyphicon glyphicon-shopping-cart"></i>
|
||||
</a>
|
||||
</span>
|
||||
@endcomponent
|
||||
</div>
|
||||
<div class="hidden-xs col-lg-3 col-md-3 col-sm-3">
|
||||
<img src="{{ $show->image }}" style="float: right; height: auto; width: 100%; margin: auto" alt="Image">
|
||||
</div>
|
||||
</div>
|
||||
<p><strong>Price: €</strong>{{ $show->price }}</p>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-lg-6 col-lg-offset-3 col-md-8 col-md-offset-2">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h3 class="panel-title">No Shows</h3>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="container-fluid">
|
||||
@else
|
||||
@component('components.panel', ['title' => 'No Shows'])
|
||||
<p>There are no shows.</p>
|
||||
</div>
|
||||
</div>
|
||||
@endcomponent
|
||||
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endsection
|
||||
|
|
|
@ -1,42 +1,21 @@
|
|||
@extends('layouts.main')
|
||||
|
||||
@section('content')
|
||||
<div class="wrapper">
|
||||
<div class="row x">
|
||||
@php($data = \App\Status::loadData())
|
||||
@if(!empty($data))
|
||||
@foreach($data as $region)
|
||||
<div class="col-lg-3 col-md-6 col-sm-6 col-xs-12 y">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h4 class='panel-title'>{{ \App\Color\MinecraftColor::stripColor($region->name) }}</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
@foreach($region->attractions as $attraction)
|
||||
<div class="col-xs-12 col-lg-6 col-md-6 col-sm-6">
|
||||
<p><span class='col-xs-12 col-sm-12 col-md-12 col-lg-12'><strong><a href="{{ route('ridecount', ['attraction_id' => $attraction->id]) }}" style='text-decoration: none; color: {{ \App\Color\MinecraftColor::color($attraction->name) }}'>{{ \App\Color\MinecraftColor::stripColor($attraction->name) }}</a>:</strong></span> <span class='status col-xs-12 col-sm-12 col-md-12 col-lg-12' style='background-color: {{ \App\Color\MinecraftColor::color($attraction->status) }};'>{{ \App\Color\MinecraftColor::stripColor($attraction->status) }}</span></p>
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-lg-3 col-md-6 col-sm-6 col-xs-12 y">
|
||||
<div class="panel panel-theme">
|
||||
<div class="panel-heading">
|
||||
<h4 class='panel-title'>No Data</h4>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="wrapper">
|
||||
<div class="container-fluid">
|
||||
@php($data = \App\Status::loadData())
|
||||
@if(!empty($data))
|
||||
@foreach($data as $region)
|
||||
@component('components.region', ['region' => $region])
|
||||
@endcomponent
|
||||
@endforeach
|
||||
@else
|
||||
<div class="col-xs-12 col-lg-4 col-lg-offset-4 col-md-8 col-md-offset-2">
|
||||
@component('components.panel', ['title' => 'No Data'])
|
||||
<p>No Regions with attractions found</p>
|
||||
</div>
|
||||
@endcomponent
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
Reference in a new issue