working on a new admin dashboard

This commit is contained in:
2020-04-03 00:06:37 -05:00
parent c2e8b07de0
commit f464080639
7 changed files with 207 additions and 353 deletions

View File

@@ -30,6 +30,10 @@ class AdminController extends Controller
$this->middleware('role:Admin');
}
public function displayTestAdminDashboard() {
return view('admin.dashboards.testdashboard');
}
public function showJournalEntries() {
$dateInit = Carbon::now();
$date = $dateInit->subDays(30);

16
public/css/admin/navbar.css vendored Normal file
View File

@@ -0,0 +1,16 @@
.wrapper {
display: flex;
width: 100%;
}
#sidebar {
width: 250px;
position: fixed;
top: 0;
left: 0;
height: 100vh;
z-index: 999;
background: #7386D5;
color: #fff;
transition: all 0.3s;
}

View File

@@ -1,353 +0,0 @@
@extends('admin.layouts.b4')
@section('content')
<div class="container">
<div class="row justify-content-center">
<h2> Admin Dashboard</h2>
</div>
</div>
<br>
<nav>
<ul class="nav nav-tabs">
<li class="nav-item active"><a class="nav-link active" data-toggle="tab" href="#user">User</a></li>
<li class="nav-item"><a class="nav-link" data-toggle="tab" href="#logins">Login</a></li>
<li class="nav-item"><a class="nav-link" data-toggle="tab" href="#wiki">Wiki</a></li>
<li class="nav-item"><a class="nav-link" data-toggle="tab" href="#taxes">Taxes</a></li>
</ul>
<br>
<div class="tab-content">
<div id="user" class="tab-pane active">
<div class="container-fluid">
<div class="card">
<div class="card-header">
User Information
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Name</th>
<th>Role</th>
<th>Permissions</th>
<th>Action</th>
</thead>
<tbody>
@foreach($userArr as $user)
<tr>
<td>{{ $user['name'] }}</td>
<td>{{ $user['role'] }}</td>
<td>
@if($user['permissions'])
@foreach($user['permissions'] as $perm)
{{ implode(', ', $perm) }}
@endforeach
@else
No Permissions
@endif
</td>
<td>
{!! Form::open(['action' => 'Dashboard\AdminController@displayModifyUser', 'method' => 'POST']) !!}
{{ Form::hidden('user', $user['name']) }}
{{ Form::submit('Modify User', ['class' => 'btn btn-primary']) }}
{!! Form::close() !!}
{!! Form::open(['action' => 'Dashboard\AdminController@removeUser', 'method' => 'POST']) !!}
{{ Form::hidden('user', $user['name']) }}
{{ Form::submit('Remove User', ['class' => 'btn btn-danger']) }}
{!! Form::close() !!}
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
<div id="logins" class="tab-pane fade">
<div class="container">
<div class="row">
<div class="col">
<div class="card">
<div class="card-header">
Add Allowed Login
</div>
<div class="card-body">
{!! Form::open(['action' => 'Dashboard\AdminController@addAllowedLogin', 'method' => 'POST']) !!}
<div class="form-group">
{{ Form::label('allowedEntityId', 'Allowed Entity ID') }}
{{ Form::text('allowedEntityId', '', ['class' => 'form-control']) }}
</div>
<div class="form-group">
{{ Form::label('allowedEntityType', 'Allowed Entity Type') }}
{{ Form::select('allowedEtntityType', ['Corporation' => 'Corporation', 'Alliance' => 'Alliance'], null, ['class' => 'form-control']) }}
</div>
<div class="form-group">
{{ Form::label('allowedEntityName', 'Allowed Entity Name') }}
{{ Form::text('allowedEntityName', '', ['class' => 'form-control']) }}
</div>
<div class="form-group">
{{ Form::label('allowedLoginType', 'Allowed Login Type') }}
{{ Form::select('allowedLoginType', ['Legacy' => 'Legacy', 'Renter' => 'Renter'], null, ['class' => 'form-control']) }}
</div>
{{ Form::submit('Submit', ['class' => 'btn btn-primary']) }}
{!! Form::close() !!}
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
Remove Allowed Login
</div>
<div class="card-body">
{!! Form::open(['action' => 'Dashboard\AdminController@removeAllowedLogin', 'method' => 'POST']) !!}
<div class="form-group">
{{ Form::label('removeAllowedLogin', 'Remove Entity') }}
{{ Form::select('removeAllowedLogin', $entities, null, ['class' => 'form-control']) }}
</div>
{{ Form::submit('Submit', ['class' => 'btn btn-primary']) }}
{!! Form::close() !!}
</div>
</div>
</div>
</div>
</div>
</div>
<div id="wiki" class="tab-pane fade">
<div class="container">
<div class="row">
{!! Form::open(['action' => 'Wiki\WikiController@purgeUsers', 'method' => 'POST']) !!}
<div class="form-group">
{{ Form::label('admin', 'This action will log the administrator who peformed the action.') }}
{{ Form::hidden('admin', auth()->user()->character_id) }}
</div>
{{ Form::submit('Purge Wiki', ['class' => 'btn btn-primary']) }}
{!! Form::close() !!}
</div>
</div>
</div>
<div id="taxes" class="tab-pane fade">
<div class="container-fluid">
<div class="row">
<div class="col">
<div class="card">
<div class="card-header">
PI Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>PI Taxes</th>
</thead>
<tbody>
@foreach($pis as $pi)
<tr>
<td>{{ $pi['date'] }}</td>
<td>{{ $pi['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
Office Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>Office Taxes</th>
</thead>
<tbody>
@foreach($offices as $office)
<tr>
<td>{{ $office['date'] }}</td>
<td>{{ $office['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
Industry Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>Industry Taxes</th>
</thead>
<tbody>
@foreach($industrys as $industry)
<tr>
<td>{{ $industry['date'] }}</td>
<td>{{ $industry['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<br>
<div class="container-fluid">
<div class="row">
<div class="col">
<div class="card">
<div class="card-header">
Reprocessing Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>Reprocessing Taxes</th>
</thead>
<tbody>
@foreach($reprocessings as $reprocessing)
<tr>
<td>{{ $reprocessing['date'] }}</td>
<td>{{ $reprocessing['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
Market Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>Market Taxes</th>
</thead>
<tbody>
@foreach($markets as $market)
<tr>
<td>{{ $market['date'] }}</td>
<td>{{ $market['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
Jump Gate Taxes
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>Jump Gate Taxes</th>
</thead>
<tbody>
@foreach($jumpgates as $jumpgate)
<tr>
<td>{{ $jumpgate['date'] }}</td>
<td>{{ $jumpgate['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<br>
<div class="container-fluid">
<div class="row">
<div class="col">
<div class="card">
<div class="card-header">
PI Transactions
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>PI Transactions</th>
</thead>
<tbody>
@foreach($pigross as $pi)
<tr>
<td>{{ $pi['date'] }}</td>
<td>{{ $pi['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
SRP Actual Paid Out
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>SRP Actual</th>
</thead>
<tbody>
@foreach($srpActual as $actual)
<tr>
<td>{{ $actual['date'] }}</td>
<td>{{ $actual['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<div class="col">
<div class="card">
<div class="card-header">
SRP Loss Values
</div>
<div class="card-body">
<table class="table table-striped table-bordered">
<thead>
<th>Month</th>
<th>SRP Loss</th>
</thead>
<tbody>
@foreach($srpLoss as $loss)
<tr>
<td>{{ $loss['date'] }}</td>
<td>{{ $loss['gross'] }}</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
@endsection

View File

@@ -0,0 +1,9 @@
@extends('layouts.admin.b4')
@section('content')
<div class="container">
<div class="row justify-content-center">
<h2> Admin Dashboard</h2>
</div>
</div>
@endsection

View File

@@ -0,0 +1,80 @@
<!doctype html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-140677389-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-140677389-1');
</script>
<title>{{ config('app.name', 'W4RP Services') }}</title>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- CSRF Token -->
<meta name="csrf-token" content="{{ csrf_token() }}">
<!-- Bootstrap CSS
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.2/css/bootstrap.min.css" integrity="sha384-Smlep5jCw/wG7hdkwQ/Z5nLIefveQRIY9nfy6xoR1uRYBtpZgI6339F5dgvm/e9B" crossorigin="anonymous">
-->
<link rel="stylesheet" href="{{ asset('css/app.css') }}">
<link rel="stylesheet" href="{{ asset('css/bootstrap.css') }}">
<!-- Custom stylesheet for navbar -->
<link ref="stylesheet" href="{{ asset('css/admin/navbar.css') }}">
<!-- Scrollbar Custom CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/malihu-custom-scrollbar-plugin/3.1.5/jquery.mCustomScrollbar.min.css">
</head>
<body>
@include('layouts.admin.navbar')
<!-- Page Content -->
<div id="content">
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<button type="button" id="sidebarCollapse" class="btn btn-info">
<i class="fas fa-align-left"></i>
<span>Toggle Sidebar</span>
</button>
</div>
</nav>
</div>
<!-- Included Messages -->
<div class="container">
@include('inc.messages')
</div>
<!-- Content of the Page -->
@yield('content')
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<!-- Popper.JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<!-- Bootstrap JS -->
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<!-- jQuery Custom Scroller CDN -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/malihu-custom-scrollbar-plugin/3.1.5/jquery.mCustomScrollbar.concat.min.js"></script>
<script>
$(document).ready(function() {
$("#sidebar").mCustomScrollbar({
theme: "minimal"
})
$('#sidebarCollapse').on('click', function() {
//Open or close the navbar
$('#sidebar').toggleClass('active');
//Close the dropdown
$('.collapse.in').toggleClass('in');
//Adjust aria-expanded attributes we use for the open/clossed arrows in our CSS
$('a[aria-expanded=true]').attr('aria-expanded', 'false');
});
});
</script>
</body>
</html>

View File

@@ -0,0 +1,97 @@
<div class="wrapper">
<!-- Sidebar -->
<nav id="sidebar">
<div id="dismiss">
<i class="fas fa-arrow-left"></i>
</div>
<div class="sidebar-header">
<h3>W4RP</h3>
</div>
<ul class="list-unstyled components">
<p>Admin Dashboard</p>
@if(auth()->user()->hasRole('Admin'))
<li class="active">
<a href="#adminSubmenu" data-toggle="collapse" aria-expanded="false">General</a>
<ul class="collapse list-unstyled" id="adminSubmenu">
<li>
<a href="/admin/dashboard/users">Users</a>
</li>
<li>
<a href="/admin/dashboard/taxes">Taxes</a>
</li>
<li>
<a href="/admin/dashboard/logins">Allowed Logins</a>
</li>
<li>
<a href="/admin/dashboard/wiki">Wiki</a>
</li>
<li>
<a href="/admin/dashboard/journal">Wallet Journal</a>
</li>
</ul>
</li>
<li class="active">
<a href="#flexSubmenu" data-toggle="collapse" aria-expanded="false">Flex</a>
<ul class="collapse list-unstyled" id="flexSubmenu">
<li>
<a href="/flex/display">Display</a>
</li>
<li>
<a href="/flex/display/add">Add</a>
</li>
</ul>
</li>
@endif
@if(auth()->user()->hasPermission('moon.admin'))
<li class="active">
<a href="#moonSubmenu" data-toggle="collapse" aria-expanded="false">Moons</a>
<ul class="collapse list-unstyled" id="moonSubmenu">
<li>
<a href="/moons/admin/display/rentals">Display Moons</a>
</li>
<li>
<a href="/moons/admin/updatemoon">Update Moon</a>
</li>
<li>
<a href="/moons/admin/display/request">Moon Request</a>
</li>
</ul>
</li>
@endif
@if(auth()->user()->hasPermission('srp.admin'))
<li class="active">
<a href="#srpSubmenu" data-toggle="collapse" aria-expanded="false">SRP</a>
<ul class="collapse list-unstyled" id="srpSubmenu">
<li>
<a href="/srp/admin/display">SRP Admin Dashboard</a>
</li>
<li>
<a href="/srp/admin/statistics">SRP Statistics</a>
</li>
<li>
<a href="/srp/admin/costcodes/display">SRP Admin Cost Codes</a>
</li>
<li>
<a href="/srp/admin/display/history">SRP History</a>
</li>
</ul>
</li>
@endif
@if(auth()->user()->hasPermission('contract.admin'))
<li class="active">
<a href="#contractSubmenu" data-toggle="collapse" aria-expanded="false">Contracts</a>
<ul class="collapse list-unstyled" id="contractSubmenu">
<li>
<a href="/contracts/admin/display">Contract Admin</a>
</li>
<li>
<a href="/contracts/admin/new">New Contract</a>
</li>
</ul>
</li>
@endif
</ul>
</nav>
<!-- Page Content -->
</div>

View File

@@ -50,6 +50,7 @@ Route::group(['middleware' => ['auth']], function(){
Route::post('/admin/dashboard/wiki/removeallgroups', 'Dashboard\AdminController@removeWikiUserAllGroups');
Route::post('/admin/dashboard/wiki/newgroup', 'Dashboard\AdminController@insertNewWikiUserGroup');
Route::post('/admin/dashboard/wiki/purge', 'Dashboard\AdminController@purgeWikiUsers');
Route::get('/admin/dashboard/test', 'Dashboard\AdminController@displayTestAdminDashboard');
/**
* Blacklist Controller display pages