Compare commits

...

12 Commits

24 changed files with 169 additions and 97 deletions
@@ -49,8 +49,7 @@ class WinningBidsResource extends Resource
->searchable(),
TextInput::make('winning_cost')
->label('Winning Bid')
->prefix('$')
->numeric(),
->prefix('$'),
]);
}
+23 -9
View File
@@ -163,21 +163,32 @@ class PagesController extends Controller
public function editwinners(Request $edit_win_req)
{
if (!$edit_win_req->winid) {
$winners = WinningBids::all();
return view('editwinners', ['winners' => $winners]);
if ($edit_win_req->id) {
$winner = WinningBids::with(['items', 'bidders'])->find($edit_win_req->id);
$bidders = Bidders::all();
$items = Items::all();
return view('editwinners', ['winner' => $winner, 'bidders' => $bidders, 'items' => $items]);
}
if (!$edit_win_req->winid) {
$winners = WinningBids::with(['items', 'bidders'])->get();
return view('winnersbyitem', ['winnersbyitem_results' => $winners]);
}
$winning_bid_id = $edit_win_req->winid;
$winner_bidder = $edit_win_req->winnerbiddernum;
$winner_item = $edit_win_req->winneritemnum;
$winner_cost = $edit_win_req->winnerbid;
$winner_insert = WinningBids::where('idwinning_bids', $winning_bid_id)
->update(
[
'winning_bidder_num' => $winner_bidder,
'winning_item_num' => $winner_item,
'winning_cost' => $winner_cost
]
);
return redirect('editwinners');
return redirect('winnersbyitem');
}
public function finaltally()
@@ -299,7 +310,8 @@ class PagesController extends Controller
public function reprintReceipt(Request $reprint_receipt_req)
{
if (!$reprint_receipt_req->reprintbiddernum) {
return view('reprint_receipt_form');
$bidders = Bidders::has('checkout')->get();
return view('reprint_receipt_form', ['bidders' => $bidders]);
} else {
$bidnum=$reprint_receipt_req->reprintbiddernum;
$checkout_result = Checkout::where('bidder_num', '=', $bidnum)
@@ -346,7 +358,8 @@ class PagesController extends Controller
public function winnertotal(Request $winnertotal_req)
{
if (!$winnertotal_req->winnerbiddernum) {
return view('winnertotalform');
$bidders = Bidders::all();
return view('winnertotalform', ['bidders' => $bidders]);
}
$winner_total_bidder = $winnertotal_req->winnerbiddernum;
$winnertotal_list_results = DB::select("SELECT
@@ -502,7 +515,8 @@ class PagesController extends Controller
public function awardcategories(Request $category_req)
{
if (!$category_req->category) {
return view('awardcategories');
$categories = CarShowCategory::all();
return view('awardcategories', ['categories' => $categories]);
}
$category = $category_req->category;
if ($category_req->has('vehtype')) {
@@ -528,7 +542,7 @@ class PagesController extends Controller
}
public function showscores()
{
$carshowscore_results = VehicleScores::with(['scoredVehicle'])
$carshowscore_results = VehicleScores::with(['scoredVehicle', 'scoredVehicle.vehicleOwner'])
->groupBy('vehicle')
->selectRaw('*, sum(vehicle_scores.overall_score) as totalscore')
->orderBy('totalscore', 'desc')
@@ -537,7 +551,7 @@ class PagesController extends Controller
}
public function showscoresbycar()
{
$carshowscore2_results = VehicleScores::with(['scoredVehicle'])
$carshowscore2_results = VehicleScores::with(['scoredVehicle', 'scoredVehicle.vehicleOwner'])
->groupBy('vehicle')
->selectRaw('*, sum(vehicle_scores.overall_score) as totalscore')
//->orderBy('scoredVehicle.vehicleOwner.bidder_assigned_number')
+2 -2
View File
@@ -24,11 +24,11 @@ class CarShowWinner extends Model
public function awardVehicle()
{
return $this->hasMany('App\Models\Vehicles', 'id', 'vehicle');
return $this->belongsTo('App\Models\Vehicles', 'vehicle', 'id');
}
public function awardCategory()
{
return $this->hasMany('App\Models\CarShowCategory', 'id', 'category');
return $this->belongsTo('App\Models\CarShowCategory', 'category', 'id');
}
}
+1 -1
View File
@@ -30,6 +30,6 @@ class VehicleScores extends Model
public function scoredVehicle()
{
return $this->hasMany('App\Models\Vehicles', 'id', 'vehicle');
return $this->belongsTo('App\Models\Vehicles', 'vehicle', 'id');
}
}
+1 -1
View File
@@ -1 +1 @@
/home/sjcsauction/public_html/.well-known
auction/home/sjcsauction/public_html/.well-known
+1 -1
View File
@@ -26,7 +26,7 @@
<tbody>
@foreach($categories as $category)
<tr>
<td>{{ $category->cat_name }}</td>
<td>{{ $category->category_name }}</td>
</tr>
@endforeach
</tbody>
+12 -6
View File
@@ -20,17 +20,23 @@
<table class="table table-vcenter card-table">
<thead>
<tr>
<th>Vehicle Name</th>
<th>Judge</th>
<th>Score</th>
<th>#</th>
<th>Owner</th>
<th>Year</th>
<th>Make</th>
<th>Model</th>
<th>Total Score</th>
</tr>
</thead>
<tbody>
@foreach($scores_results as $score)
<tr>
<td>{{ $score->vehicles->make }} {{ $score->vehicles->model }}</td>
<td>{{ $score->judges->judge_name }}</td>
<td>{{ $score->score }}</td>
<td>{{ $score->scoredVehicle->owner }}</td>
<td>{{ $score->scoredVehicle->vehicleOwner->bidder_fname ?? '' }} {{ $score->scoredVehicle->vehicleOwner->bidder_lname ?? '' }}</td>
<td>{{ $score->scoredVehicle->year }}</td>
<td>{{ $score->scoredVehicle->make }}</td>
<td>{{ $score->scoredVehicle->model }}</td>
<td>{{ $score->totalscore }}</td>
</tr>
@endforeach
</tbody>
+13 -3
View File
@@ -20,14 +20,24 @@
<thead>
<tr>
<th>Category</th>
<th>Winner</th>
<th>Place</th>
<th>#</th>
<th>Owner</th>
<th>Year</th>
<th>Make</th>
<th>Model</th>
</tr>
</thead>
<tbody>
@foreach($winners as $winner)
<tr>
<td>{{ $winner->awardCategory->cat_name }}</td>
<td>{{ $winner->awardVehicle->make }} {{ $winner->awardVehicle->model }}</td>
<td>{{ $winner->awardCategory->category_name }}</td>
<td>{{ $winner->place }}</td>
<td>{{ $winner->awardVehicle->owner }}</td>
<td>{{ $winner->awardVehicle->vehicleOwner->bidder_fname ?? '' }} {{ $winner->awardVehicle->vehicleOwner->bidder_lname ?? '' }}</td>
<td>{{ $winner->awardVehicle->year }}</td>
<td>{{ $winner->awardVehicle->make }}</td>
<td>{{ $winner->awardVehicle->model }}</td>
</tr>
@endforeach
</tbody>
+1
View File
@@ -50,5 +50,6 @@
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush
+1 -28
View File
@@ -1,34 +1,6 @@
@extends('tablar::page')
@section('content')
<script src="https://cdn.jsdelivr.net/npm/tom-select@2.4.3/dist/js/tom-select.complete.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/tom-select@2.4.3/dist/css/tom-select.bootstrap5.min.css" rel="stylesheet">
<style>
.ts-wrapper .ts-control, .ts-wrapper .ts-control input { background-color: #ffffff !important; border: 1px solid #ced4da !important; }
.ts-dropdown { background-color: #ffffff !important; }
</style>
<script>
document.addEventListener("DOMContentLoaded", () => {
document.querySelectorAll('select').forEach((el) => {
if (el.tomselect) return;
new TomSelect(el, {
copyClassesToDropdown: false,
dropdownParent: 'body',
controlInput: '<input>',
sortField: {
field: 'text',
direction: 'asc',
func: function(a, b) {
const numA = parseInt(a.text, 10);
const numB = parseInt(b.text, 10);
return numA - numB;
}
}
});
});
});
</script>
<div class="page-header d-print-none">
<div class="container-xl">
<div class="row g-2 align-items-center">
@@ -65,3 +37,4 @@
</div>
</div>
@endsection
@include('components.tomselect')
+35 -6
View File
@@ -5,7 +5,7 @@
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
<h2 class="page-title">Edit Winners</h2>
<h2 class="page-title">Edit Winner</h2>
</div>
</div>
</div>
@@ -14,24 +14,53 @@
<div class="container-xl">
<div class="card">
<div class="card-body">
@if($winner)
<form method="POST" action="/editwinners" class="row g-3">
{{ csrf_field() }}
<input type="hidden" name="winid" value="{{ $winner->idwinning_bids }}">
<div class="col-md-6">
<label for="id" class="form-label">Winner ID</label>
<input type="text" name="id" id="id" class="form-control" value="{{ $winner->id }}" readonly>
<label for="winnerbiddernum" class="form-label">Bidder</label>
<select name="winnerbiddernum" id="winnerbiddernum" class="form-select" required>
@foreach($bidders as $bidder)
<option value="{{ $bidder->idbidders }}" {{ $winner->winning_bidder_num == $bidder->idbidders ? 'selected' : '' }}>
{{ $bidder->bidder_assigned_number }} - {{ $bidder->bidder_fname }} {{ $bidder->bidder_lname }}
</option>
@endforeach
</select>
</div>
<div class="col-md-6">
<label for="score" class="form-label">Score</label>
<input type="number" name="score" id="score" class="form-control" value="{{ $winner->score }}" required>
<label for="winneritemnum" class="form-label">Item</label>
<select name="winneritemnum" id="winneritemnum" class="form-select" required>
@foreach($items as $item)
<option value="{{ $item->iditems }}" {{ $winner->winning_item_num == $item->iditems ? 'selected' : '' }}>
{{ $item->item_assigned_num }} - {{ $item->item_desc }}
</option>
@endforeach
</select>
</div>
<div class="col-md-4">
<label for="winnerbid" class="form-label">Winning Amount</label>
<input type="text" name="winnerbid" id="winnerbid" class="form-control" value="{{ $winner->winning_cost }}" required>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary">Update Score</button>
<button type="submit" class="btn btn-primary">Update Winner</button>
<a href="/winnersbyitem" class="btn btn-link">Cancel</a>
</div>
</form>
@else
<div class="alert alert-danger">
Winner not found. <a href="/winnersbyitem">Back to list</a>
</div>
@endif
</div>
</div>
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush
+15
View File
@@ -82,6 +82,21 @@
</div>
</div>
</div>
<div class="row mt-4">
<div class="col-12">
<a href="https://hackathon.tfmm.co/mywinnings" target="_blank" class="btn btn-red btn-lg w-100 py-3 fs-2">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-credit-card me-2" width="32" height="32" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M3 5m0 3a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v8a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3z"></path>
<path d="M3 10l18 0"></path>
<path d="M7 15l.01 0"></path>
<path d="M11 15l2 0"></path>
</svg>
Self-Checkout (Pay Online)
</a>
</div>
</div>
</div>
</div>
@endsection
+1
View File
@@ -42,5 +42,6 @@
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush
@@ -20,7 +20,12 @@
{{ csrf_field() }}
<div class="col-md-6">
<label for="reprintbiddernum" class="form-label">Bidder Number</label>
<input type="text" name="reprintbiddernum" id="reprintbiddernum" class="form-control" required>
<select name="reprintbiddernum" id="reprintbiddernum" class="form-select" required>
<option value="">Select Bidder</option>
@foreach($bidders as $bidder)
<option value="{{ $bidder->idbidders }}">{{ $bidder->bidder_assigned_number }} - {{ $bidder->bidder_fname }} {{ $bidder->bidder_lname }}</option>
@endforeach
</select>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary">Reprint Receipt</button>
@@ -33,5 +38,6 @@
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush
+22 -21
View File
@@ -10,6 +10,19 @@
<div class="card card-md">
<div class="card-body">
<h2 class="h2 text-center mb-4">Login to your account</h2>
@if (session('status'))
<div class="alert alert-success" role="alert">
{{ session('status') }}
</div>
@endif
@if (session('error'))
<div class="alert alert-danger" role="alert">
{{ session('error') }}
</div>
@endif
<form action="{{route('login')}}" method="post" autocomplete="off" novalidate>
@csrf
<div class="mb-3">
@@ -62,28 +75,16 @@
<div class="hr-text">or</div>
<div class="card-body">
<div class="row">
<div class="col"><a href="#" class="btn btn-white w-100">
<!-- Download SVG icon from http://tabler-icons.io/i/brand-github -->
<svg xmlns="http://www.w3.org/2000/svg" class="icon text-github" width="24" height="24"
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path
d="M9 19c-4.3 1.4 -4.3 -2.5 -6 -3m12 5v-3.5c0 -1 .1 -1.4 -.5 -2c2.8 -.3 5.5 -1.4 5.5 -6a4.6 4.6 0 0 0 -1.3 -3.2a4.2 4.2 0 0 0 -.1 -3.2s-1.1 -.3 -3.5 1.3a12.3 12.3 0 0 0 -6.2 0c-2.4 -1.6 -3.5 -1.3 -3.5 -1.3a4.2 4.2 0 0 0 -.1 3.2a4.6 4.6 0 0 0 -1.3 3.2c0 4.6 2.7 5.7 5.5 6c-.6 .6 -.6 1.2 -.5 2v3.5"/>
<div class="col">
<a href="{{ url('auth/social/oidc') }}" class="btn btn-white w-100">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-login" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2"></path>
<path d="M20 12h-13l3 -3m0 6l-3 -3"></path>
</svg>
Login with Github
</a></div>
<div class="col"><a href="#" class="btn btn-white w-100">
<!-- Download SVG icon from http://tabler-icons.io/i/brand-twitter -->
<svg xmlns="http://www.w3.org/2000/svg" class="icon text-twitter" width="24" height="24"
viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none"
stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"/>
<path
d="M22 4.01c-1 .49 -1.98 .689 -3 .99c-1.121 -1.265 -2.783 -1.335 -4.38 -.737s-2.643 2.06 -2.62 3.737v1c-3.245 .083 -6.135 -1.395 -8 -4c0 0 -4.182 7.433 4 11c-1.872 1.247 -3.739 2.088 -6 2c3.308 1.803 6.913 2.423 10.034 1.517c3.58 -1.04 6.522 -3.723 7.651 -7.742a13.84 13.84 0 0 0 .497 -3.753c-.002 -.249 1.51 -2.772 1.818 -4.013z"/>
</svg>
Login with Twitter
</a></div>
Login with Single Sign-On
</a>
</div>
</div>
</div>
</div>
+15
View File
@@ -76,6 +76,21 @@
<button type="submit" class="btn btn-primary w-100">Create new account</button>
</div>
</div>
<div class="hr-text">or</div>
<div class="card-body">
<div class="row">
<div class="col">
<a href="{{ url('auth/social/oidc') }}" class="btn btn-white w-100">
<svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-login" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
<path stroke="none" d="M0 0h24v24H0z" fill="none"></path>
<path d="M14 8v-2a2 2 0 0 0 -2 -2h-7a2 2 0 0 0 -2 2v12a2 2 0 0 0 2 2h7a2 2 0 0 0 2 -2v-2"></path>
<path d="M20 12h-13l3 -3m0 6l-3 -3"></path>
</svg>
Login with Single Sign-On
</a>
</div>
</div>
</div>
</form>
<div class="text-center text-muted mt-3">
Already have account? <a href="{{route('login')}}" tabindex="-1">Sign in</a>
@@ -11,7 +11,6 @@
@include('tablar::partials.header.theme-mode')
@include('tablar::partials.header.notifications')
</div>
@include('tablar::partials.header.top-right')
</div>
<div class="collapse navbar-collapse" id="navbar-menu">
<div class="d-flex flex-column flex-md-row flex-fill align-items-stretch align-items-md-center">
@@ -9,7 +9,6 @@
<div class="nav-item d-none d-md-flex me-3">
<div class="btn-list">
@include('tablar::partials.header.header-button')
</div>
</div>
@@ -18,6 +17,5 @@
@include('tablar::partials.header.notifications')
</div>
@include('tablar::partials.header.top-right')
</div>
</div>
@@ -9,7 +9,6 @@
@include('tablar::partials.header.theme-mode')
@include('tablar::partials.header.notifications')
</div>
@include('tablar::partials.header.top-right')
</div>
<div class="collapse navbar-collapse" id="navbar-menu">
<div>
@@ -12,7 +12,6 @@
<div class="nav-item d-none d-md-flex me-3">
<div class="btn-list">
@include('tablar::partials.header.header-button')
</div>
</div>
@@ -21,7 +20,6 @@
@include('tablar::partials.header.notifications')
</div>
@include('tablar::partials.header.top-right')
</div>
<div class="collapse navbar-collapse" id="navbar-menu">
@@ -15,14 +15,12 @@
<div class="navbar-nav flex-row d-lg-none">
<div class="nav-item d-none d-lg-flex me-3">
<div class="btn-list">
@include('tablar::partials.header.header-button')
</div>
</div>
<div class="d-none d-lg-flex">
@include('tablar::partials.header.theme-mode')
@include('tablar::partials.header.notifications')
</div>
@include('tablar::partials.header.top-right')
</div>
<div class="collapse navbar-collapse" id="sidebar-menu">
+2 -1
View File
@@ -40,7 +40,7 @@
<div class="col-md-4">
<label for="winning_cost" class="form-label">Winning Amount</label>
<input type="number" name="winning_cost" id="winning_cost" step="0.01" class="form-control" required>
<input type="text" name="winning_cost" id="winning_cost" class="form-control" required>
</div>
<div class="col-12">
@@ -54,5 +54,6 @@
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush
+7 -4
View File
@@ -24,18 +24,21 @@
<th class="sort" data-sort="item-desc">Item Description</th>
<th class="sort" data-sort="winner">Winner</th>
<th class="sort" data-sort="bid">Winning Bid</th>
<th>Actions</th>
</tr>
</thead>
<tbody class="list">
</thead>
<tbody class="list">
@foreach($winnersbyitem_results as $winner)
<tr>
<td class="item-num">{{ $winner->items->item_assigned_num }}</td>
<td class="item-desc">{{ $winner->items->item_desc }}</td>
<td class="winner">{{ $winner->bidders->bidder_fname }} {{ $winner->bidders->bidder_lname }}</td>
<td class="bid">${{ number_format($winner->winning_cost, 2) }}</td>
<td>
<a href="/editwinners?id={{ $winner->idwinning_bids }}" class="btn btn-sm btn-white">Edit</a>
</td>
</tr>
@endforeach
</tbody>
@endforeach </tbody>
</table>
</div>
</div>
+9 -3
View File
@@ -5,7 +5,7 @@
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
<h2 class="page-title">Reprint Receipt</h2>
<h2 class="page-title">Winner Total</h2>
</div>
</div>
</div>
@@ -19,8 +19,13 @@
<form method="POST" action="/winnertotal" class="row g-3">
{{ csrf_field() }}
<div class="col-md-6">
<label for="biddernum" class="form-label">Bidder Number</label>
<input type="text" name="biddernum" id="biddernum" class="form-control" required>
<label for="winnerbiddernum" class="form-label">Bidder Number</label>
<select name="winnerbiddernum" id="winnerbiddernum" class="form-select" required>
<option value="">Select Bidder</option>
@foreach($bidders as $bidder)
<option value="{{ $bidder->idbidders }}">{{ $bidder->bidder_assigned_number }} - {{ $bidder->bidder_fname }} {{ $bidder->bidder_lname }}</option>
@endforeach
</select>
</div>
<div class="col-12">
<button type="submit" class="btn btn-primary">Get Total</button>
@@ -33,5 +38,6 @@
</div>
</div>
@endsection
@include('components.tomselect')
@push('js')
@endpush