parent
3388c95dc2
commit
ca82305bff
|
@ -8,6 +8,9 @@ APP_COPYRIGHT=ShuriZma
|
||||||
APP_COPYRIGHT_SINCE=2023
|
APP_COPYRIGHT_SINCE=2023
|
||||||
FOOTER_IMAGE=img/header.png # can be any image type. path should start from public/ (ex. 'img/header.png')
|
FOOTER_IMAGE=img/header.png # can be any image type. path should start from public/ (ex. 'img/header.png')
|
||||||
LANDING_PAGE=false # if set to true a landing page will be added, if false the vehicle list is the landing page
|
LANDING_PAGE=false # if set to true a landing page will be added, if false the vehicle list is the landing page
|
||||||
|
ACCENT_COLOR=red-400 # https://tailwindcss.com/docs/background-color
|
||||||
|
|
||||||
|
KEYBIND_SEPERATOR=; # seperator for keybind combos, thats being used on the db to seperate multiple keys
|
||||||
|
|
||||||
# VEHICLE LIST
|
# VEHICLE LIST
|
||||||
CURRENCY=$ # unit for prices etc
|
CURRENCY=$ # unit for prices etc
|
||||||
|
|
|
@ -0,0 +1,73 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
|
use App\Models\Keybind;
|
||||||
|
use App\Http\Requests\StoreKeybindRequest;
|
||||||
|
use App\Http\Requests\UpdateKeybindRequest;
|
||||||
|
|
||||||
|
class KeybindController extends Controller
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Display a listing of the resource.
|
||||||
|
*/
|
||||||
|
public function index()
|
||||||
|
{
|
||||||
|
$keybinds = Keybind::all();
|
||||||
|
|
||||||
|
|
||||||
|
return response(
|
||||||
|
view('keybinds', [
|
||||||
|
'keybinds' => $keybinds,
|
||||||
|
])
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the form for creating a new resource.
|
||||||
|
*/
|
||||||
|
public function create()
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store a newly created resource in storage.
|
||||||
|
*/
|
||||||
|
public function store(StoreKeybindRequest $request)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Display the specified resource.
|
||||||
|
*/
|
||||||
|
public function show(Keybind $keybind)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show the form for editing the specified resource.
|
||||||
|
*/
|
||||||
|
public function edit(Keybind $keybind)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update the specified resource in storage.
|
||||||
|
*/
|
||||||
|
public function update(UpdateKeybindRequest $request, Keybind $keybind)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the specified resource from storage.
|
||||||
|
*/
|
||||||
|
public function destroy(Keybind $keybind)
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class StoreKeybindRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
//
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Http\Requests;
|
||||||
|
|
||||||
|
use Illuminate\Foundation\Http\FormRequest;
|
||||||
|
|
||||||
|
class UpdateKeybindRequest extends FormRequest
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine if the user is authorized to make this request.
|
||||||
|
*/
|
||||||
|
public function authorize(): bool
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the validation rules that apply to the request.
|
||||||
|
*
|
||||||
|
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array|string>
|
||||||
|
*/
|
||||||
|
public function rules(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
//
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,93 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Database\Factories\KeybindFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Builder;
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
use Illuminate\Support\Carbon;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* App\Models\Keybind
|
||||||
|
*
|
||||||
|
* @property int $keybind_id
|
||||||
|
* @property Carbon|null $created_at
|
||||||
|
* @property Carbon|null $updated_at
|
||||||
|
* @property string $keybind_keys
|
||||||
|
* @property string $keybind_description
|
||||||
|
* @method static KeybindFactory factory($count = null, $state = [])
|
||||||
|
* @method static Builder|Keybind newModelQuery()
|
||||||
|
* @method static Builder|Keybind newQuery()
|
||||||
|
* @method static Builder|Keybind query()
|
||||||
|
* @method static Builder|Keybind whereCreatedAt($value)
|
||||||
|
* @method static Builder|Keybind whereKeybindDescription($value)
|
||||||
|
* @method static Builder|Keybind whereKeybindId($value)
|
||||||
|
* @method static Builder|Keybind whereKeybindKeys($value)
|
||||||
|
* @method static Builder|Keybind whereUpdatedAt($value)
|
||||||
|
* @mixin \Eloquent
|
||||||
|
*/
|
||||||
|
class Keybind extends Model
|
||||||
|
{
|
||||||
|
use HasFactory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return int
|
||||||
|
*/
|
||||||
|
public function getKeybindId(): int
|
||||||
|
{
|
||||||
|
return $this->keybind_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param int $keybind_id
|
||||||
|
*
|
||||||
|
* @return Keybind
|
||||||
|
*/
|
||||||
|
public function setKeybindId(int $keybind_id): Keybind
|
||||||
|
{
|
||||||
|
$this->keybind_id = $keybind_id;
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getKeybindKeys(): string
|
||||||
|
{
|
||||||
|
return $this->keybind_keys;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $keybind_keys
|
||||||
|
*
|
||||||
|
* @return Keybind
|
||||||
|
*/
|
||||||
|
public function setKeybindKeys(string $keybind_keys): Keybind
|
||||||
|
{
|
||||||
|
$this->keybind_keys = $keybind_keys;
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function getKeybindDescription(): string
|
||||||
|
{
|
||||||
|
return $this->keybind_description;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param string $keybind_description
|
||||||
|
*
|
||||||
|
* @return Keybind
|
||||||
|
*/
|
||||||
|
public function setKeybindDescription(string $keybind_description): Keybind
|
||||||
|
{
|
||||||
|
$this->keybind_description = $keybind_description;
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,66 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Policies;
|
||||||
|
|
||||||
|
use App\Models\Keybind;
|
||||||
|
use App\Models\User;
|
||||||
|
use Illuminate\Auth\Access\Response;
|
||||||
|
|
||||||
|
class KeybindPolicy
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Determine whether the user can view any models.
|
||||||
|
*/
|
||||||
|
public function viewAny(User $user): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can view the model.
|
||||||
|
*/
|
||||||
|
public function view(User $user, Keybind $keybind): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can create models.
|
||||||
|
*/
|
||||||
|
public function create(User $user): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can update the model.
|
||||||
|
*/
|
||||||
|
public function update(User $user, Keybind $keybind): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can delete the model.
|
||||||
|
*/
|
||||||
|
public function delete(User $user, Keybind $keybind): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can restore the model.
|
||||||
|
*/
|
||||||
|
public function restore(User $user, Keybind $keybind): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether the user can permanently delete the model.
|
||||||
|
*/
|
||||||
|
public function forceDelete(User $user, Keybind $keybind): bool
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Database\Factories;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\Factory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\Keybind>
|
||||||
|
*/
|
||||||
|
class KeybindFactory extends Factory
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Define the model's default state.
|
||||||
|
*
|
||||||
|
* @return array<string, mixed>
|
||||||
|
*/
|
||||||
|
public function definition(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
//
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,29 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::create('keybinds', function (Blueprint $table) {
|
||||||
|
$table->id('keybind_id');
|
||||||
|
$table->timestamps();
|
||||||
|
$table->string('keybind_keys');
|
||||||
|
$table->text('keybind_description');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('keybinds');
|
||||||
|
}
|
||||||
|
};
|
|
@ -0,0 +1,17 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Database\Seeders;
|
||||||
|
|
||||||
|
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
|
||||||
|
use Illuminate\Database\Seeder;
|
||||||
|
|
||||||
|
class KeybindSeeder extends Seeder
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the database seeds.
|
||||||
|
*/
|
||||||
|
public function run(): void
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
|
}
|
|
@ -13153,6 +13153,22 @@ html{
|
||||||
.input-group > .select{
|
.input-group > .select{
|
||||||
border-radius: 0px;
|
border-radius: 0px;
|
||||||
}
|
}
|
||||||
|
.kbd{
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border-width: 1px;
|
||||||
|
border-color: hsl(var(--bc) / var(--tw-border-opacity));
|
||||||
|
--tw-border-opacity: 0.2;
|
||||||
|
--tw-bg-opacity: 1;
|
||||||
|
background-color: hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));
|
||||||
|
padding-left: 0.5rem;
|
||||||
|
padding-right: 0.5rem;
|
||||||
|
border-radius: var(--rounded-btn, 0.5rem);
|
||||||
|
border-bottom-width: 2px;
|
||||||
|
min-height: 2.2em;
|
||||||
|
min-width: 2.2em;
|
||||||
|
}
|
||||||
.link{
|
.link{
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
text-decoration-line: underline;
|
text-decoration-line: underline;
|
||||||
|
@ -14148,6 +14164,10 @@ html{
|
||||||
margin-top: auto;
|
margin-top: auto;
|
||||||
margin-bottom: auto;
|
margin-bottom: auto;
|
||||||
}
|
}
|
||||||
|
.my-1{
|
||||||
|
margin-top: 0.25rem;
|
||||||
|
margin-bottom: 0.25rem;
|
||||||
|
}
|
||||||
.-mb-\[6\.5rem\]{
|
.-mb-\[6\.5rem\]{
|
||||||
margin-bottom: -6.5rem;
|
margin-bottom: -6.5rem;
|
||||||
}
|
}
|
||||||
|
@ -14229,6 +14249,123 @@ html{
|
||||||
.mt-8{
|
.mt-8{
|
||||||
margin-top: 2rem;
|
margin-top: 2rem;
|
||||||
}
|
}
|
||||||
|
.ml-\[3rem\]{
|
||||||
|
margin-left: 3rem;
|
||||||
|
}
|
||||||
|
.ml-\[2\.5rem\]{
|
||||||
|
margin-left: 2.5rem;
|
||||||
|
}
|
||||||
|
.ml-\[2rem\]{
|
||||||
|
margin-left: 2rem;
|
||||||
|
}
|
||||||
|
.ml-\[1rem\]{
|
||||||
|
margin-left: 1rem;
|
||||||
|
}
|
||||||
|
.mr-\[1rem\]{
|
||||||
|
margin-right: 1rem;
|
||||||
|
}
|
||||||
|
.mr-\[2rem\]{
|
||||||
|
margin-right: 2rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.3rem\]{
|
||||||
|
margin-right: 2.3rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.5rem\]{
|
||||||
|
margin-right: 2.5rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.6rem\]{
|
||||||
|
margin-right: 2.6rem;
|
||||||
|
}
|
||||||
|
.ml-\[1\.5rem\]{
|
||||||
|
margin-left: 1.5rem;
|
||||||
|
}
|
||||||
|
.mr-\[23rem\]{
|
||||||
|
margin-right: 23rem;
|
||||||
|
}
|
||||||
|
.mr-\[3rem\]{
|
||||||
|
margin-right: 3rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.8rem\]{
|
||||||
|
margin-right: 2.8rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.7rem\]{
|
||||||
|
margin-right: 2.7rem;
|
||||||
|
}
|
||||||
|
.mr-\[9\.7rem\]{
|
||||||
|
margin-right: 9.7rem;
|
||||||
|
}
|
||||||
|
.mr-\[12\.7rem\]{
|
||||||
|
margin-right: 12.7rem;
|
||||||
|
}
|
||||||
|
.mr-\[11\.7rem\]{
|
||||||
|
margin-right: 11.7rem;
|
||||||
|
}
|
||||||
|
.mr-\[12rem\]{
|
||||||
|
margin-right: 12rem;
|
||||||
|
}
|
||||||
|
.mr-\[7rem\]{
|
||||||
|
margin-right: 7rem;
|
||||||
|
}
|
||||||
|
.mr-\[3\.5rem\]{
|
||||||
|
margin-right: 3.5rem;
|
||||||
|
}
|
||||||
|
.mr-\[5rem\]{
|
||||||
|
margin-right: 5rem;
|
||||||
|
}
|
||||||
|
.mr-\[4rem\]{
|
||||||
|
margin-right: 4rem;
|
||||||
|
}
|
||||||
|
.mr-\[4\.2rem\]{
|
||||||
|
margin-right: 4.2rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.4rem\]{
|
||||||
|
margin-right: 2.4rem;
|
||||||
|
}
|
||||||
|
.mr-\[3\.7rem\]{
|
||||||
|
margin-right: 3.7rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.9rem\]{
|
||||||
|
margin-right: 2.9rem;
|
||||||
|
}
|
||||||
|
.mr-\[3\.8rem\]{
|
||||||
|
margin-right: 3.8rem;
|
||||||
|
}
|
||||||
|
.ml-\[3\.5rem\]{
|
||||||
|
margin-left: 3.5rem;
|
||||||
|
}
|
||||||
|
.ml-\[3\.6rem\]{
|
||||||
|
margin-left: 3.6rem;
|
||||||
|
}
|
||||||
|
.ml-\[3\.7rem\]{
|
||||||
|
margin-left: 3.7rem;
|
||||||
|
}
|
||||||
|
.ml-\[3\.75rem\]{
|
||||||
|
margin-left: 3.75rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.75rem\]{
|
||||||
|
margin-right: 2.75rem;
|
||||||
|
}
|
||||||
|
.mr-\[2\.74rem\]{
|
||||||
|
margin-right: 2.74rem;
|
||||||
|
}
|
||||||
|
.ml-\[2\.6rem\]{
|
||||||
|
margin-left: 2.6rem;
|
||||||
|
}
|
||||||
|
.ml-\[4\.25rem\]{
|
||||||
|
margin-left: 4.25rem;
|
||||||
|
}
|
||||||
|
.mr-\[3\.25rem\]{
|
||||||
|
margin-right: 3.25rem;
|
||||||
|
}
|
||||||
|
.mr-\[13rem\]{
|
||||||
|
margin-right: 13rem;
|
||||||
|
}
|
||||||
|
.mr-\[14rem\]{
|
||||||
|
margin-right: 14rem;
|
||||||
|
}
|
||||||
|
.mr-\[13\.5rem\]{
|
||||||
|
margin-right: 13.5rem;
|
||||||
|
}
|
||||||
.block{
|
.block{
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
@ -14295,15 +14432,15 @@ html{
|
||||||
.h-\[83rem\]{
|
.h-\[83rem\]{
|
||||||
height: 83rem;
|
height: 83rem;
|
||||||
}
|
}
|
||||||
|
.h-auto{
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
.h-full{
|
.h-full{
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
.h-screen{
|
.h-screen{
|
||||||
height: 100vh;
|
height: 100vh;
|
||||||
}
|
}
|
||||||
.h-auto{
|
|
||||||
height: auto;
|
|
||||||
}
|
|
||||||
.max-h-\[20rem\]{
|
.max-h-\[20rem\]{
|
||||||
max-height: 20rem;
|
max-height: 20rem;
|
||||||
}
|
}
|
||||||
|
@ -14316,12 +14453,6 @@ html{
|
||||||
.max-h-\[90vh\]{
|
.max-h-\[90vh\]{
|
||||||
max-height: 90vh;
|
max-height: 90vh;
|
||||||
}
|
}
|
||||||
.max-h-32{
|
|
||||||
max-height: 8rem;
|
|
||||||
}
|
|
||||||
.max-h-\[70vh\]{
|
|
||||||
max-height: 70vh;
|
|
||||||
}
|
|
||||||
.min-h-\[15rem\]{
|
.min-h-\[15rem\]{
|
||||||
min-height: 15rem;
|
min-height: 15rem;
|
||||||
}
|
}
|
||||||
|
@ -14346,9 +14477,6 @@ html{
|
||||||
.min-h-screen{
|
.min-h-screen{
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
}
|
}
|
||||||
.min-h-\[70vh\]{
|
|
||||||
min-height: 70vh;
|
|
||||||
}
|
|
||||||
.w-1\/5{
|
.w-1\/5{
|
||||||
width: 20%;
|
width: 20%;
|
||||||
}
|
}
|
||||||
|
@ -14397,6 +14525,75 @@ html{
|
||||||
.w-full{
|
.w-full{
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
.w-\[4rem\]{
|
||||||
|
width: 4rem;
|
||||||
|
}
|
||||||
|
.w-\[6rem\]{
|
||||||
|
width: 6rem;
|
||||||
|
}
|
||||||
|
.w-\[5rem\]{
|
||||||
|
width: 5rem;
|
||||||
|
}
|
||||||
|
.w-\[2\.5rem\]{
|
||||||
|
width: 2.5rem;
|
||||||
|
}
|
||||||
|
.w-\[3rem\]{
|
||||||
|
width: 3rem;
|
||||||
|
}
|
||||||
|
.w-\[3\.5rem\]{
|
||||||
|
width: 3.5rem;
|
||||||
|
}
|
||||||
|
.w-\[4\.2rem\]{
|
||||||
|
width: 4.2rem;
|
||||||
|
}
|
||||||
|
.w-\[6\.2rem\]{
|
||||||
|
width: 6.2rem;
|
||||||
|
}
|
||||||
|
.w-\[7\.2rem\]{
|
||||||
|
width: 7.2rem;
|
||||||
|
}
|
||||||
|
.w-\[7rem\]{
|
||||||
|
width: 7rem;
|
||||||
|
}
|
||||||
|
.w-\[6\.9rem\]{
|
||||||
|
width: 6.9rem;
|
||||||
|
}
|
||||||
|
.w-\[10rem\]{
|
||||||
|
width: 10rem;
|
||||||
|
}
|
||||||
|
.w-\[16rem\]{
|
||||||
|
width: 16rem;
|
||||||
|
}
|
||||||
|
.w-\[6\.4rem\]{
|
||||||
|
width: 6.4rem;
|
||||||
|
}
|
||||||
|
.w-\[3\.2rem\]{
|
||||||
|
width: 3.2rem;
|
||||||
|
}
|
||||||
|
.w-\[3\.7rem\]{
|
||||||
|
width: 3.7rem;
|
||||||
|
}
|
||||||
|
.w-\[18rem\]{
|
||||||
|
width: 18rem;
|
||||||
|
}
|
||||||
|
.w-\[17rem\]{
|
||||||
|
width: 17rem;
|
||||||
|
}
|
||||||
|
.w-\[17\.2rem\]{
|
||||||
|
width: 17.2rem;
|
||||||
|
}
|
||||||
|
.w-\[17\.1rem\]{
|
||||||
|
width: 17.1rem;
|
||||||
|
}
|
||||||
|
.w-\[6\.5rem\]{
|
||||||
|
width: 6.5rem;
|
||||||
|
}
|
||||||
|
.w-\[5\.2rem\]{
|
||||||
|
width: 5.2rem;
|
||||||
|
}
|
||||||
|
.w-\[2\.75rem\]{
|
||||||
|
width: 2.75rem;
|
||||||
|
}
|
||||||
.min-w-\[1\.5rem\]{
|
.min-w-\[1\.5rem\]{
|
||||||
min-width: 1.5rem;
|
min-width: 1.5rem;
|
||||||
}
|
}
|
||||||
|
@ -14409,6 +14606,9 @@ html{
|
||||||
.min-w-\[6rem\]{
|
.min-w-\[6rem\]{
|
||||||
min-width: 6rem;
|
min-width: 6rem;
|
||||||
}
|
}
|
||||||
|
.min-w-\[70vw\]{
|
||||||
|
min-width: 70vw;
|
||||||
|
}
|
||||||
.min-w-full{
|
.min-w-full{
|
||||||
min-width: 100%;
|
min-width: 100%;
|
||||||
}
|
}
|
||||||
|
@ -14416,9 +14616,6 @@ html{
|
||||||
min-width: -moz-max-content;
|
min-width: -moz-max-content;
|
||||||
min-width: max-content;
|
min-width: max-content;
|
||||||
}
|
}
|
||||||
.min-w-\[70vw\]{
|
|
||||||
min-width: 70vw;
|
|
||||||
}
|
|
||||||
.max-w-6xl{
|
.max-w-6xl{
|
||||||
max-width: 72rem;
|
max-width: 72rem;
|
||||||
}
|
}
|
||||||
|
@ -14437,6 +14634,9 @@ html{
|
||||||
.max-w-\[40rem\]{
|
.max-w-\[40rem\]{
|
||||||
max-width: 40rem;
|
max-width: 40rem;
|
||||||
}
|
}
|
||||||
|
.max-w-\[70vw\]{
|
||||||
|
max-width: 70vw;
|
||||||
|
}
|
||||||
.max-w-\[8rem\]{
|
.max-w-\[8rem\]{
|
||||||
max-width: 8rem;
|
max-width: 8rem;
|
||||||
}
|
}
|
||||||
|
@ -14450,15 +14650,6 @@ html{
|
||||||
.max-w-xl{
|
.max-w-xl{
|
||||||
max-width: 36rem;
|
max-width: 36rem;
|
||||||
}
|
}
|
||||||
.max-w-\[120rem\]{
|
|
||||||
max-width: 120rem;
|
|
||||||
}
|
|
||||||
.max-w-\[100rem\]{
|
|
||||||
max-width: 100rem;
|
|
||||||
}
|
|
||||||
.max-w-\[70vw\]{
|
|
||||||
max-width: 70vw;
|
|
||||||
}
|
|
||||||
.flex-1{
|
.flex-1{
|
||||||
flex: 1 1 0%;
|
flex: 1 1 0%;
|
||||||
}
|
}
|
||||||
|
@ -14719,6 +14910,10 @@ html{
|
||||||
.border-transparent{
|
.border-transparent{
|
||||||
border-color: transparent;
|
border-color: transparent;
|
||||||
}
|
}
|
||||||
|
.border-cyan-600{
|
||||||
|
--tw-border-opacity: 1;
|
||||||
|
border-color: rgb(8 145 178 / var(--tw-border-opacity));
|
||||||
|
}
|
||||||
.border-opacity-40{
|
.border-opacity-40{
|
||||||
--tw-border-opacity: 0.4;
|
--tw-border-opacity: 0.4;
|
||||||
}
|
}
|
||||||
|
@ -14757,6 +14952,10 @@ html{
|
||||||
--tw-bg-opacity: 1;
|
--tw-bg-opacity: 1;
|
||||||
background-color: rgb(39 39 42 / var(--tw-bg-opacity));
|
background-color: rgb(39 39 42 / var(--tw-bg-opacity));
|
||||||
}
|
}
|
||||||
|
.bg-red-400{
|
||||||
|
--tw-bg-opacity: 1;
|
||||||
|
background-color: rgb(248 113 113 / var(--tw-bg-opacity));
|
||||||
|
}
|
||||||
.fill-red-400{
|
.fill-red-400{
|
||||||
fill: #f87171;
|
fill: #f87171;
|
||||||
}
|
}
|
||||||
|
@ -14832,6 +15031,54 @@ html{
|
||||||
padding-top: 1.5rem;
|
padding-top: 1.5rem;
|
||||||
padding-bottom: 1.5rem;
|
padding-bottom: 1.5rem;
|
||||||
}
|
}
|
||||||
|
.py-\[2rem\]{
|
||||||
|
padding-top: 2rem;
|
||||||
|
padding-bottom: 2rem;
|
||||||
|
}
|
||||||
|
.px-\[2rem\]{
|
||||||
|
padding-left: 2rem;
|
||||||
|
padding-right: 2rem;
|
||||||
|
}
|
||||||
|
.px-\[4rem\]{
|
||||||
|
padding-left: 4rem;
|
||||||
|
padding-right: 4rem;
|
||||||
|
}
|
||||||
|
.px-\[1rem\]{
|
||||||
|
padding-left: 1rem;
|
||||||
|
padding-right: 1rem;
|
||||||
|
}
|
||||||
|
.px-\[4\.1rem\]{
|
||||||
|
padding-left: 4.1rem;
|
||||||
|
padding-right: 4.1rem;
|
||||||
|
}
|
||||||
|
.px-\[4\.3rem\]{
|
||||||
|
padding-left: 4.3rem;
|
||||||
|
padding-right: 4.3rem;
|
||||||
|
}
|
||||||
|
.px-\[4\.2rem\]{
|
||||||
|
padding-left: 4.2rem;
|
||||||
|
padding-right: 4.2rem;
|
||||||
|
}
|
||||||
|
.px-\[3rem\]{
|
||||||
|
padding-left: 3rem;
|
||||||
|
padding-right: 3rem;
|
||||||
|
}
|
||||||
|
.px-\[2\.5rem\]{
|
||||||
|
padding-left: 2.5rem;
|
||||||
|
padding-right: 2.5rem;
|
||||||
|
}
|
||||||
|
.px-\[2\.2rem\]{
|
||||||
|
padding-left: 2.2rem;
|
||||||
|
padding-right: 2.2rem;
|
||||||
|
}
|
||||||
|
.px-\[2\.3rem\]{
|
||||||
|
padding-left: 2.3rem;
|
||||||
|
padding-right: 2.3rem;
|
||||||
|
}
|
||||||
|
.px-\[2\.4rem\]{
|
||||||
|
padding-left: 2.4rem;
|
||||||
|
padding-right: 2.4rem;
|
||||||
|
}
|
||||||
.pb-4{
|
.pb-4{
|
||||||
padding-bottom: 1rem;
|
padding-bottom: 1rem;
|
||||||
}
|
}
|
||||||
|
@ -14990,6 +15237,10 @@ html{
|
||||||
--tw-text-opacity: 1;
|
--tw-text-opacity: 1;
|
||||||
color: rgb(161 161 170 / var(--tw-text-opacity));
|
color: rgb(161 161 170 / var(--tw-text-opacity));
|
||||||
}
|
}
|
||||||
|
.text-cyan-600{
|
||||||
|
--tw-text-opacity: 1;
|
||||||
|
color: rgb(8 145 178 / var(--tw-text-opacity));
|
||||||
|
}
|
||||||
.underline{
|
.underline{
|
||||||
text-decoration-line: underline;
|
text-decoration-line: underline;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
@props(['keys'])
|
||||||
|
@php
|
||||||
|
$layout = [
|
||||||
|
0 => ['ESC' => ['ESC'],'F1' => ['F1', 'ml-[2.5rem] w-[2.5rem]'],'F2' => ['F2'],'F3' => ['F3'],'F4' => ['F4'],'F5' => ['F5', 'ml-[1rem] w-[2.5rem]'],'F6' => ['F6'],'F7' => ['F7'],'F8' => ['F8'],'F9' => ['F9', 'ml-[1rem] w-[2.5rem]'],'F10' => ['F10'],'F11' => ['F11'],'F12' => ['F12'], 'DRUCK' => ['DRUCK', 'ml-[1rem] w-[3rem] text-sm'], 'ROLLEN' => ['ROLLEN', 'w-[3rem] text-sm'], 'PAUSE' => ['PAUSE', 'w-[3rem] text-sm'], 'CAL' => ['CAL', 'ml-[1rem] w-[2.5rem]'], 'SPEAKER' => ['🔈'], 'SPEAKER_LOW' => ['🔉'], 'SPEAKER_HIGH' => ['🔊']],
|
||||||
|
1 => ['^' => ['^'], '1' => ['1'], '2' => ['2'], '3' => ['3'], '4' => ['4'], '5' => ['5'], '6' => ['6'], '7' => ['7'], '8' => ['8'], '9' => ['9'], '0' => ['0'], 'ß' => ['ß'], '´' => ['´'], 'BACKSPACE' => ['←', 'w-[4.2rem]'], 'EINFG' => ['EINFG', 'ml-[1rem] w-[3rem] text-sm'], 'POS1' => ['POS1', 'w-[3rem] text-sm'], 'BILD▲' => ['BILD▲', 'w-[3rem] text-sm'], 'NUM' => ['NUM', 'ml-[1rem] w-[2.5rem]'], 'NUM÷' => ['÷'], 'NUM*' => ['*'], 'NUM-' => ['-']],
|
||||||
|
2 => ['TAB' => ['⇄', 'w-[3.2rem]'], 'Q' => ['Q'], 'W' => ['W'], 'E' => ['E'], 'R' => ['R'], 'T' => ['T'], 'Z' => ['Z'], 'U' => ['U'], 'I' => ['I'], 'O' => ['O'], 'P' => ['P'], 'Ü' => ['Ü'], '+' => ['+'], 'RETURN' => ['↵', 'w-[3.5rem]'], 'ENTF' => ['ENTF', 'ml-[1rem] w-[3rem] text-sm'], 'ENDE' => ['ENDE', 'w-[3rem] text-sm'], 'BILD▼' => ['BILD▼', 'w-[3rem] text-sm'], 'NUM7' => ['7', 'ml-[1rem] w-[2.5rem]'], 'NUM8' => ['8'], 'NUM9' => ['9'], 'NUM+' => ['+']],
|
||||||
|
3 => ['CAPS' => ['⇓', 'w-[4.2rem]'], 'A' => ['A'], 'S' => ['S'], 'D' => ['D'], 'F' => ['F'], 'G' => ['G'], 'H' => ['H'], 'J' => ['J'], 'K' => ['K'], 'L' => ['L'], 'Ö' => ['Ö'], 'Ä' => ['Ä'], '#' => ['#', 'mr-[13.5rem] w-[2.5rem]'], 'NUM4' => ['4', 'ml-[1rem] w-[2.5rem]'], 'NUM5' => ['5'], 'NUM6' => ['6', 'mr-[2.74rem] w-[2.5rem]']],
|
||||||
|
4 => ['SHIFT' => ['⇧', 'w-[3rem]'], '<' => ['<'], 'Y' => ['Y'], 'X' => ['X'], 'C' => ['C'], 'V' => ['V'], 'B' => ['B'], 'N' => ['N'], 'M' => ['M'], ',' => [','], '.' => ['.'], '-' => ['-'], 'RSHIFT' => ['⇧', 'w-[6.5rem]'], 'UP' => ['▲', 'mr-[3.25rem] ml-[4.25rem] w-[3rem]'], 'NUM1' => ['1', 'ml-[1rem] w-[2.5rem]'], 'NUM2' => ['2'], 'NUM3' => ['3'], 'NUM↵' => ['↵']],
|
||||||
|
5 => ['CTRL' => ['CTRL', 'w-[3rem]'], 'HOME' => ['⌘', 'w-[3rem]'], 'ALT' => ['ALT', 'w-[3rem]'], 'SPACE' => ['SPACE', 'w-[17.2rem]'], 'ALTGR' => ['ALTGR', 'w-[3rem]'], 'RHOME' => ['⌘', 'w-[3rem]'], 'FN' => ['FN', 'w-[3rem]'], 'RCTRL' => ['CTRL', 'w-[3rem]'], 'LEFT' => ['◀︎', 'ml-[1rem] w-[3rem]'], 'DOWN' => ['▼', 'w-[3rem]'], 'RIGHT' => ['▶', 'w-[3rem]'], 'NUM0' => ['0', 'ml-[1rem] w-[5.2rem]'], 'NUM.' => ['.', 'mr-[2.75rem] w-[2.5rem]']],
|
||||||
|
]
|
||||||
|
@endphp
|
||||||
|
@foreach($layout as $row)
|
||||||
|
<div class="flex justify-center gap-1 my-1 w-full">
|
||||||
|
@foreach($row as $dbString => $key)
|
||||||
|
<kbd
|
||||||
|
class="kbd border-{{ env('ACCENT_COLOR') }} {{ in_array($key[0], $keys, true) ? ' bg-zinc-700' : ' bg-zinc-800' }} {{ $key[1] ?? 'w-[2.5rem]' }}">{{ $key[0] }}</kbd>
|
||||||
|
@endforeach
|
||||||
|
</div>
|
||||||
|
@endforeach
|
|
@ -37,7 +37,7 @@
|
||||||
<!-- Scripts -->
|
<!-- Scripts -->
|
||||||
<script src="{{ mix('js/app.js') }}" defer></script>
|
<script src="{{ mix('js/app.js') }}" defer></script>
|
||||||
</head>
|
</head>
|
||||||
<body x-data="{ sidebarOpen: false }" class="antialiased bg-zinc-700 text-gray-400 scrollbar-thin scrollbar-thumb-red-400 scrollbar-track-zinc-700 scrollbar-corner-zinc-800 scrollbar-thumb-rounded"
|
<body x-data="{ sidebarOpen: false }" class="antialiased bg-zinc-700 text-gray-400 scrollbar-thin scrollbar-thumb-{{ env('ACCENT_COLOR') }} scrollbar-track-zinc-700 scrollbar-corner-zinc-800 scrollbar-thumb-rounded"
|
||||||
style="font-family: 'PT Sans',sans-serif;">
|
style="font-family: 'PT Sans',sans-serif;">
|
||||||
<div class="min-h-screen">
|
<div class="min-h-screen">
|
||||||
<x-layout.sidebar/>
|
<x-layout.sidebar/>
|
||||||
|
@ -49,7 +49,7 @@
|
||||||
<div class="my-auto mx-auto flex">
|
<div class="my-auto mx-auto flex">
|
||||||
<img src="{{ asset('img/logo.png') }}" alt="" class="h-[3.5rem] mx-2"/>
|
<img src="{{ asset('img/logo.png') }}" alt="" class="h-[3.5rem] mx-2"/>
|
||||||
<div>
|
<div>
|
||||||
<h2 class="text-lg font-bold text-red-400">{{ env('APP_NAME') }}</h2>
|
<h2 class="text-lg font-bold text-{{ env('ACCENT_COLOR') }}">{{ env('APP_NAME') }}</h2>
|
||||||
<p>{{ env('APP_TITLE') }}</p>
|
<p>{{ env('APP_TITLE') }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
@unless ($breadcrumbs->isEmpty())
|
@unless ($breadcrumbs->isEmpty())
|
||||||
<nav aria-label="breadcrumb" class="text-red-400 font-semibold">
|
<nav aria-label="breadcrumb" class="text-{{ env('ACCENT_COLOR') }} font-semibold">
|
||||||
<ol class="flex h-8 space-x-2 text-red-400">
|
<ol class="flex h-8 space-x-2 text-{{ env('ACCENT_COLOR') }}">
|
||||||
@foreach ($breadcrumbs as $breadcrumb)
|
@foreach ($breadcrumbs as $breadcrumb)
|
||||||
@if (!is_null($breadcrumb->url) && $loop->first)
|
@if (!is_null($breadcrumb->url) && $loop->first)
|
||||||
<li class="flex items-center">
|
<li class="flex items-center">
|
||||||
|
@ -9,7 +9,7 @@
|
||||||
</li>
|
</li>
|
||||||
@elseif(!is_null($breadcrumb->url) && !$loop->last)
|
@elseif(!is_null($breadcrumb->url) && !$loop->last)
|
||||||
<li class="flex items-center space-x-1">
|
<li class="flex items-center space-x-1">
|
||||||
<span class="text-red-400">/</span>
|
<span class="text-{{ env('ACCENT_COLOR') }}">/</span>
|
||||||
<a rel="noopener noreferrer" href="{{ $breadcrumb->url }}"
|
<a rel="noopener noreferrer" href="{{ $breadcrumb->url }}"
|
||||||
class="flex items-center px-1 capitalize hover:underline">{{ $breadcrumb->title }}</a>
|
class="flex items-center px-1 capitalize hover:underline">{{ $breadcrumb->title }}</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
class="flex flex-col p-3 bg-zinc-800 text-gray-400 h-screen w-14"
|
class="flex flex-col p-3 bg-zinc-800 text-gray-400 h-screen w-14"
|
||||||
:class="sidebarOpen ? 'w-60' : ''">
|
:class="sidebarOpen ? 'w-60' : ''">
|
||||||
<div class="space-y-3 h-full">
|
<div class="space-y-3 h-full">
|
||||||
<div class="flex items-center justify-between text-red-400 h-[5rem]">
|
<div class="flex items-center justify-between text-{{ env('ACCENT_COLOR') }} h-[5rem]">
|
||||||
<h2 x-show="sidebarOpen" style="display: none;">{{ __('This is a sidebar') }}</h2>
|
<h2 x-show="sidebarOpen" style="display: none;">{{ __('This is a sidebar') }}</h2>
|
||||||
<button x-on:click="sidebarOpen = ! sidebarOpen" class="p-2">
|
<button x-on:click="sidebarOpen = ! sidebarOpen" class="p-2">
|
||||||
<i class="fas fa-bars fa-lg text-red-400"></i>
|
<i class="fas fa-bars fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex-1">
|
<div class="flex-1">
|
||||||
|
@ -15,13 +15,18 @@
|
||||||
@if(env('LANDING_PAGE', false))
|
@if(env('LANDING_PAGE', false))
|
||||||
<x-layout.sidebar.list-element href="{{ route('home') }}" title="{{ __('Home') }}">
|
<x-layout.sidebar.list-element href="{{ route('home') }}" title="{{ __('Home') }}">
|
||||||
<x-slot:icon>
|
<x-slot:icon>
|
||||||
<i class="fa-solid fa-house-chimney fa-lg text-red-400"></i>
|
<i class="fa-solid fa-house-chimney fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</x-slot:icon>
|
</x-slot:icon>
|
||||||
</x-layout.sidebar.list-element>
|
</x-layout.sidebar.list-element>
|
||||||
@endif
|
@endif
|
||||||
|
<x-layout.sidebar.list-element href="{{ route('keybinds') }}" title="{{ __('Keybinds') }}" class="h-[2rem]">
|
||||||
|
<x-slot:icon>
|
||||||
|
<i class="fa-solid fa-keyboard fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
|
</x-slot:icon>
|
||||||
|
</x-layout.sidebar.list-element>
|
||||||
<x-layout.sidebar.list-element href="{{ route('vehicles') }}" title="{{ __('Vehicles') }}" class="h-[2rem]">
|
<x-layout.sidebar.list-element href="{{ route('vehicles') }}" title="{{ __('Vehicles') }}" class="h-[2rem]">
|
||||||
<x-slot:icon>
|
<x-slot:icon>
|
||||||
<i class="fa-solid fa-car fa-lg text-red-400"></i>
|
<i class="fa-solid fa-car fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</x-slot:icon>
|
</x-slot:icon>
|
||||||
</x-layout.sidebar.list-element>
|
</x-layout.sidebar.list-element>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -32,19 +37,19 @@
|
||||||
@if(!Auth::check())
|
@if(!Auth::check())
|
||||||
<x-layout.sidebar.list-element href="{{ route('login') }}" title="{{ __('Login')}}">
|
<x-layout.sidebar.list-element href="{{ route('login') }}" title="{{ __('Login')}}">
|
||||||
<x-slot:icon>
|
<x-slot:icon>
|
||||||
<i class="fa-solid fa-right-to-bracket fa-lg text-red-400"></i>
|
<i class="fa-solid fa-right-to-bracket fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</x-slot:icon>
|
</x-slot:icon>
|
||||||
</x-layout.sidebar.list-element>
|
</x-layout.sidebar.list-element>
|
||||||
@endif
|
@endif
|
||||||
@if(Auth::check())
|
@if(Auth::check())
|
||||||
<x-layout.sidebar.list-element href="{{ route('logout') }}" title="{{ __('Logout') }}">
|
<x-layout.sidebar.list-element href="{{ route('logout') }}" title="{{ __('Logout') }}">
|
||||||
<x-slot:icon>
|
<x-slot:icon>
|
||||||
<i class="fa-solid fa-door-open fa-lg text-red-400"></i>
|
<i class="fa-solid fa-door-open fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</x-slot:icon>
|
</x-slot:icon>
|
||||||
</x-layout.sidebar.list-element>
|
</x-layout.sidebar.list-element>
|
||||||
<x-layout.sidebar.list-element href="{{ route('dashboard') }}" title="{{ __('Dashboard') }}">
|
<x-layout.sidebar.list-element href="{{ route('dashboard') }}" title="{{ __('Dashboard') }}">
|
||||||
<x-slot:icon>
|
<x-slot:icon>
|
||||||
<i class="fa-solid fa-user fa-lg text-red-400"></i>
|
<i class="fa-solid fa-user fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</x-slot:icon>
|
</x-slot:icon>
|
||||||
</x-layout.sidebar.list-element>
|
</x-layout.sidebar.list-element>
|
||||||
@endif
|
@endif
|
||||||
|
@ -52,7 +57,7 @@
|
||||||
</div>
|
</div>
|
||||||
@auth()
|
@auth()
|
||||||
<div x-show="sidebarOpen" style="display: none;" class="flex items-center space-x-4 justify-self-end">
|
<div x-show="sidebarOpen" style="display: none;" class="flex items-center space-x-4 justify-self-end">
|
||||||
<h2 class="text-lg font-semibold text-red-400"><a rel="noopener noreferrer" href="{{ route('profile.edit') }}">{{ Auth::getUser()->getName() }}</a></h2>
|
<h2 class="text-lg font-semibold text-{{ env('ACCENT_COLOR') }}"><a rel="noopener noreferrer" href="{{ route('profile.edit') }}">{{ Auth::getUser()->getName() }}</a></h2>
|
||||||
</div>
|
</div>
|
||||||
@endauth
|
@endauth
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
<button {{ $attributes->merge(['type' => 'submit', 'class' => 'w-full border border-red-400 px-8 py-3 font-semibold rounded-md hover:bg-zinc-700 active:bg-zinc-700 focus-visible:outline-none focus:border-red-500 focus:ring-red-500']) }}>
|
<button {{ $attributes->merge(['type' => 'submit', 'class' => 'w-full border border-' . env('ACCENT_COLOR') . ' px-8 py-3 font-semibold rounded-md hover:bg-zinc-700 active:bg-zinc-700 focus-visible:outline-none focus:border-red-500 focus:ring-red-500']) }}>
|
||||||
{{ $slot }}
|
{{ $slot }}
|
||||||
</button>
|
</button>
|
||||||
|
|
|
@ -7,10 +7,10 @@
|
||||||
<div id="searchContainer" class="flex max-w-min md:min-w-[25rem] mx-auto">
|
<div id="searchContainer" class="flex max-w-min md:min-w-[25rem] mx-auto">
|
||||||
<noscript class="flex">
|
<noscript class="flex">
|
||||||
<input id="search" name="search"
|
<input id="search" name="search"
|
||||||
class="input input-bordered bg-zinc-800 border-red-400 focus:bg-zinc-700 placeholder-gray-400 rounded-l-lg rounded-r-none w-[23rem]" placeholder="{{ $placeholder }}"/>
|
class="input input-bordered bg-zinc-800 border-{{ env('ACCENT_COLOR') }} focus:bg-zinc-700 placeholder-gray-400 rounded-l-lg rounded-r-none w-[23rem]" placeholder="{{ $placeholder }}"/>
|
||||||
<button type="submit" id="select2-btn"
|
<button type="submit" id="select2-btn"
|
||||||
class="btn btn-square bg-zinc-800 border-red-400 hover:bg-zinc-700 rounded-l-none rounded-r-lg">
|
class="btn btn-square bg-zinc-800 border-{{ env('ACCENT_COLOR') }} hover:bg-zinc-700 rounded-l-none rounded-r-lg">
|
||||||
<i class="fa-solid fa-magnifying-glass fa-lg text-red-400"></i>
|
<i class="fa-solid fa-magnifying-glass fa-lg text-{{ env('ACCENT_COLOR') }}"></i>
|
||||||
</button>
|
</button>
|
||||||
</noscript>
|
</noscript>
|
||||||
</div>
|
</div>
|
||||||
|
@ -42,11 +42,11 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
window.addEventListener('load', () => {
|
window.addEventListener('load', () => {
|
||||||
document.getElementById('searchContainer').innerHTML = '<button type="button" x-on:click="$(\'#search\').val(\'\').change();" class="btn btn-square bg-zinc-800 border-red-400 hover:bg-zinc-700 rounded-l-lg rounded-r-none">'
|
document.getElementById('searchContainer').innerHTML = '<button type="button" x-on:click="$(\'#search\').val(\'\').change();" class="btn btn-square bg-zinc-800 border-{{ env('ACCENT_COLOR') }} hover:bg-zinc-700 rounded-l-lg rounded-r-none">'
|
||||||
+ '<i class="fa-solid fa-x fa-xs text-red-400"></i></button>'
|
+ '<i class="fa-solid fa-x fa-xs text-{{ env('ACCENT_COLOR') }}"></i></button>'
|
||||||
+ '<select id="search" name="search" class="bg-zinc-800 border-red-400 focus:bg-zinc-700 placeholder-gray-400 rounded-none w-[21rem]"></select>'
|
+ '<select id="search" name="search" class="bg-zinc-800 border-{{ env('ACCENT_COLOR') }} focus:bg-zinc-700 placeholder-gray-400 rounded-none w-[21rem]"></select>'
|
||||||
+ '<button type="submit" id="select2-btn" class="btn btn-square bg-zinc-800 border-red-400 hover:bg-zinc-700 rounded-l-none rounded-r-lg">'
|
+ '<button type="submit" id="select2-btn" class="btn btn-square bg-zinc-800 border-{{ env('ACCENT_COLOR') }} hover:bg-zinc-700 rounded-l-none rounded-r-lg">'
|
||||||
+ '<i class="fa-solid fa-magnifying-glass fa-lg text-red-400"></i></button>';
|
+ '<i class="fa-solid fa-magnifying-glass fa-lg text-{{ env('ACCENT_COLOR') }}"></i></button>';
|
||||||
|
|
||||||
$('#search').on('select2:select', function (e) {
|
$('#search').on('select2:select', function (e) {
|
||||||
document.getElementById('select2-btn').focus();
|
document.getElementById('select2-btn').focus();
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
<section {{ $attributes(['class' => 'border-b-2 border-red-400 pb-4']) }}>
|
<section {{ $attributes(['class' => 'border-b-2 border-' . env('ACCENT_COLOR') . ' pb-4']) }}>
|
||||||
{{ $slot }}
|
{{ $slot }}
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
@props(['enums' => null, 'alpineVariable', 'placeholder', 'default' => null, 'functionCall' => null, 'bool' => false, 'boolTrue' => 'True', 'boolFalse' => 'False', 'multiple' => false])
|
@props(['enums' => null, 'alpineVariable', 'placeholder', 'default' => null, 'functionCall' => null, 'bool' => false, 'boolTrue' => 'True', 'boolFalse' => 'False', 'multiple' => false])
|
||||||
<noscript>
|
<noscript>
|
||||||
<select id="{{ $alpineVariable }}" tabindex="0"
|
<select id="{{ $alpineVariable }}" tabindex="0"
|
||||||
class="border w-[20rem] bg-zinc-800 border-red-400 placeholder-gray-400 rounded-lg max-h-[20rem] overflow-y-auto text-left text-wrap" {{ $multiple && !$bool ? 'multiple' : '' }}>
|
class="border w-[20rem] bg-zinc-800 border-{{ env('ACCENT_COLOR') }} placeholder-gray-400 rounded-lg max-h-[20rem] overflow-y-auto text-left text-wrap" {{ $multiple && !$bool ? 'multiple' : '' }}>
|
||||||
<option
|
<option
|
||||||
class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200"
|
class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200"
|
||||||
value="">{{ $placeholder }}</option>
|
value="">{{ $placeholder }}</option>
|
||||||
|
@ -27,10 +27,10 @@
|
||||||
window.addEventListener('load', () => {
|
window.addEventListener('load', () => {
|
||||||
document.getElementById('{{ $alpineVariable }}-container').innerHTML = '<div class="dropdown dropdown-hover mx-auto" x-data="{ {{ $alpineVariable }}: {{ !empty(app('request')->input($alpineVariable)) ? json_encode(explode(',', app('request')->input($alpineVariable))) : json_encode([]) }} }">'
|
document.getElementById('{{ $alpineVariable }}-container').innerHTML = '<div class="dropdown dropdown-hover mx-auto" x-data="{ {{ $alpineVariable }}: {{ !empty(app('request')->input($alpineVariable)) ? json_encode(explode(',', app('request')->input($alpineVariable))) : json_encode([]) }} }">'
|
||||||
+ '<div class="flex"><input name="{{ $alpineVariable }}" class="hidden" value="" x-bind:value="{{ $alpineVariable }}"/>'
|
+ '<div class="flex"><input name="{{ $alpineVariable }}" class="hidden" value="" x-bind:value="{{ $alpineVariable }}"/>'
|
||||||
+ '<label tabindex="0" class="btn w-[11rem] bg-zinc-800 border-red-400 focus:bg-zinc-700 hover:bg-zinc-700 placeholder-gray-400 rounded-l-lg rounded-r-none normal-case font-normal" x-text="{{ $alpineVariable }}.length != 0 ? ({{ json_encode($multiple) }} ? {{ "'" . $placeholder . " ('" }} + {{ $alpineVariable }}.length + \' picked)\' : {{ $alpineVariable }}.join(\', \')) : {{ "'" . $placeholder . "'" }}"></label>'
|
+ '<label tabindex="0" class="btn w-[11rem] bg-zinc-800 border-{{ env('ACCENT_COLOR') }} focus:bg-zinc-700 hover:bg-zinc-700 placeholder-gray-400 rounded-l-lg rounded-r-none normal-case font-normal" x-text="{{ $alpineVariable }}.length != 0 ? ({{ json_encode($multiple) }} ? {{ "'" . $placeholder . " ('" }} + {{ $alpineVariable }}.length + \' picked)\' : {{ $alpineVariable }}.join(\', \')) : {{ "'" . $placeholder . "'" }}"></label>'
|
||||||
+ '<button type="button" x-on:click="{{ $alpineVariable }} = []" class="btn btn-square bg-zinc-800 border-red-400 hover:bg-zinc-700 rounded-l-none rounded-r-lg max-w-[2rem]">'
|
+ '<button type="button" x-on:click="{{ $alpineVariable }} = []" class="btn btn-square bg-zinc-800 border-{{ env('ACCENT_COLOR') }} hover:bg-zinc-700 rounded-l-none rounded-r-lg max-w-[2rem]">'
|
||||||
+ '<i class="fa-solid fa-x fa-xs text-red-400"></i></button></div>'
|
+ '<i class="fa-solid fa-x fa-xs text-{{ env('ACCENT_COLOR') }}"></i></button></div>'
|
||||||
+ '<ul tabindex="0" class="dropdown-content border menu flex-nowrap shadow rounded-box w-[13rem] bg-zinc-800 border-red-400 placeholder-gray-400 rounded-lg max-h-[20rem] overflow-y-auto text-left">'
|
+ '<ul tabindex="0" class="dropdown-content border menu flex-nowrap shadow rounded-box w-[13rem] bg-zinc-800 border-{{ env('ACCENT_COLOR') }} placeholder-gray-400 rounded-lg max-h-[20rem] overflow-y-auto text-left">'
|
||||||
@if($bool)
|
@if($bool)
|
||||||
+ '<li><a class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200" x-on:click="{{ $alpineVariable . '.includes(\'' . $boolTrue . '\') ? ' . $alpineVariable . '.splice(' . $alpineVariable .'.indexOf(\'' . $boolTrue . '\'), 1) : ' . $alpineVariable . ' = [\'' . $boolTrue . '\'];' }}">{{ $boolTrue }}</a></li>'
|
+ '<li><a class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200" x-on:click="{{ $alpineVariable . '.includes(\'' . $boolTrue . '\') ? ' . $alpineVariable . '.splice(' . $alpineVariable .'.indexOf(\'' . $boolTrue . '\'), 1) : ' . $alpineVariable . ' = [\'' . $boolTrue . '\'];' }}">{{ $boolTrue }}</a></li>'
|
||||||
+ '<li><a class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200" x-on:click="{{ $alpineVariable . '.includes(\'' . $boolFalse . '\') ? ' . $alpineVariable . '.splice(' . $alpineVariable .'.indexOf(\'' . $boolFalse . '\'), 1) : ' . $alpineVariable . ' = [\'' . $boolFalse . '\'];' }}">{{ $boolFalse }}</a></li>'
|
+ '<li><a class="focus:bg-zinc-700 hover:bg-zinc-700 active:bg-zinc-700 hover:text-gray-200 active:text-gray-200 focus:text-gray-200" x-on:click="{{ $alpineVariable . '.includes(\'' . $boolFalse . '\') ? ' . $alpineVariable . '.splice(' . $alpineVariable .'.indexOf(\'' . $boolFalse . '\'), 1) : ' . $alpineVariable . ' = [\'' . $boolFalse . '\'];' }}">{{ $boolFalse }}</a></li>'
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
$type = $args['type'];
|
$type = $args['type'];
|
||||||
$value = $args['value'] ?? ($type === 'int' ? 0 : '');
|
$value = $args['value'] ?? ($type === 'int' ? 0 : '');
|
||||||
$rowType = 'div';
|
$rowType = 'div';
|
||||||
$classes = ['p-3 border-opacity-40 border-red-400 grow basis-0 border min-w-[6rem]', ($type === 'int' ? 'text-right' : 'text-left'), ($mode === 'tableVertical' ? 'max-w-[8rem] min-h-[5rem]' : ''), ($header ? 'font-bold' : '')];
|
$classes = ['p-3 border-opacity-40 border-' . env('ACCENT_COLOR') . ' grow basis-0 border min-w-[6rem]', ($type === 'int' ? 'text-right' : 'text-left'), ($mode === 'tableVertical' ? 'max-w-[8rem] min-h-[5rem]' : ''), ($header ? 'font-bold' : '')];
|
||||||
$html = '<' . $rowType . ' class="' . implode(' ', $classes) . '">';
|
$html = '<' . $rowType . ' class="' . implode(' ', $classes) . '">';
|
||||||
$valueHtml = match ($type) {
|
$valueHtml = match ($type) {
|
||||||
'string' => $value,
|
'string' => $value,
|
||||||
|
@ -14,7 +14,7 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!empty($args['link'])) {
|
if (!empty($args['link'])) {
|
||||||
$html .= '<a class="text-red-400" href="' . $args['link'] . '">' . $valueHtml . '</a>';
|
$html .= '<a class="text-' . env('ACCENT_COLOR') . '" href="' . $args['link'] . '">' . $valueHtml . '</a>';
|
||||||
} else {
|
} else {
|
||||||
$html .= $valueHtml;
|
$html .= $valueHtml;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
@props(['mode', 'values'])
|
@props(['mode', 'values'])
|
||||||
<div
|
<div
|
||||||
class="min-w-full max-h-[90vh] bg-zinc-800 rounded-[1rem] overflow-y-auto border-opacity-40 border-red-400 border-l border-t {{ $mode === 'tableVertical' ? 'border-r' : 'border-b' }} last:border-none scrollbar-thin">
|
class="min-w-full max-h-[90vh] bg-zinc-800 rounded-[1rem] overflow-y-auto border-opacity-40 border-{{ env('ACCENT_COLOR') }} border-l border-t {{ $mode === 'tableVertical' ? 'border-r' : 'border-b' }} last:border-none scrollbar-thin">
|
||||||
<div class="mx-auto min-w-max {{ $mode === 'tableVertical' ? 'flex' : '' }}">
|
<div class="mx-auto min-w-max {{ $mode === 'tableVertical' ? 'flex' : '' }}">
|
||||||
@foreach($values as $index => $value)
|
@foreach($values as $index => $value)
|
||||||
<x-table.row :header="$index === 0" :values="$value"
|
<x-table.row :header="$index === 0" :values="$value"
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
@props(['disabled' => false])
|
@props(['disabled' => false])
|
||||||
|
|
||||||
<input {{ $disabled ? 'disabled' : '' }} {!! $attributes->merge(['class' => 'border-red-400 focus:border-red-500 focus:ring-red-500 rounded-md shadow-sm w-full px-3 py-2 border bg-transparent']) !!}>
|
<input {{ $disabled ? 'disabled' : '' }} {!! $attributes->merge(['class' => 'border-' . env('ACCENT_COLOR') . ' focus:border-red-500 focus:ring-red-500 rounded-md shadow-sm w-full px-3 py-2 border bg-transparent']) !!}>
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
@endphp
|
@endphp
|
||||||
|
|
||||||
<div
|
<div
|
||||||
class="flex flex-col w-full max-w-[40rem] min-h-[40rem] p-6 space-y-6 overflow-hidden rounded-lg shadow-md bg-zinc-800 text-red-400 m-auto border border-red-400">
|
class="flex flex-col w-full max-w-[40rem] min-h-[40rem] p-6 space-y-6 overflow-hidden rounded-lg shadow-md bg-zinc-800 text-{{ env('ACCENT_COLOR') }} m-auto border border-{{ env('ACCENT_COLOR') }}">
|
||||||
<div>
|
<div>
|
||||||
<label for="image_modal_{{ 'img/vehicles/' . $vehicle->getVehicleId() . '.png' }}"><img src="{{ asset('img/vehicles/' . $vehicle->getVehicleId() . '.png') }}" alt="Photo of {{ $vehicle->getVehicleName() }}"
|
<label for="image_modal_{{ 'img/vehicles/' . $vehicle->getVehicleId() . '.png' }}"><img src="{{ asset('img/vehicles/' . $vehicle->getVehicleId() . '.png') }}" alt="Photo of {{ $vehicle->getVehicleName() }}"
|
||||||
class="rounded-xl cursor-pointer" width="100%"></label>
|
class="rounded-xl cursor-pointer" width="100%"></label>
|
||||||
|
|
|
@ -3,9 +3,54 @@
|
||||||
{{ Breadcrumbs::render('home') }}
|
{{ Breadcrumbs::render('home') }}
|
||||||
</x-slot:breadcrumb>
|
</x-slot:breadcrumb>
|
||||||
<x-slot name="header">
|
<x-slot name="header">
|
||||||
<h1 class="text-lg text-center font-bold">{{ __('Welcome home') }}</h1>
|
<h1 class="text-lg text-center font-bold">{{ __('Keyboard test') }}</h1>
|
||||||
{{ __('GG man! You just found my website.') }}<br>
|
<div class="flex justify-center gap-1 my-1 w-full">
|
||||||
{{ __('You can leave again tho. Nothing to see here.') }}
|
<kbd class="kbd">ESC</kbd>
|
||||||
|
<kbd class="kbd">F1</kbd>
|
||||||
|
<kbd class="kbd">F2</kbd>
|
||||||
|
<kbd class="kbd">F3</kbd>
|
||||||
|
<kbd class="kbd">F4</kbd>
|
||||||
|
<kbd class="kbd">F5</kbd>
|
||||||
|
<kbd class="kbd">F6</kbd>
|
||||||
|
<kbd class="kbd">F7</kbd>
|
||||||
|
<kbd class="kbd">F8</kbd>
|
||||||
|
<kbd class="kbd">F9</kbd>
|
||||||
|
<kbd class="kbd">F10</kbd>
|
||||||
|
<kbd class="kbd">F11</kbd>
|
||||||
|
<kbd class="kbd">F12</kbd>
|
||||||
|
</div>
|
||||||
|
<div class="flex justify-center gap-1 my-1 w-full">
|
||||||
|
<kbd class="kbd">q</kbd>
|
||||||
|
<kbd class="kbd">w</kbd>
|
||||||
|
<kbd class="kbd">e</kbd>
|
||||||
|
<kbd class="kbd">r</kbd>
|
||||||
|
<kbd class="kbd">t</kbd>
|
||||||
|
<kbd class="kbd">z</kbd>
|
||||||
|
<kbd class="kbd">u</kbd>
|
||||||
|
<kbd class="kbd">i</kbd>
|
||||||
|
<kbd class="kbd">o</kbd>
|
||||||
|
<kbd class="kbd">p</kbd>
|
||||||
|
</div>
|
||||||
|
<div class="flex justify-center gap-1 my-1 w-full">
|
||||||
|
<kbd class="kbd">a</kbd>
|
||||||
|
<kbd class="kbd">s</kbd>
|
||||||
|
<kbd class="kbd">d</kbd>
|
||||||
|
<kbd class="kbd">f</kbd>
|
||||||
|
<kbd class="kbd">g</kbd>
|
||||||
|
<kbd class="kbd">h</kbd>
|
||||||
|
<kbd class="kbd">j</kbd>
|
||||||
|
<kbd class="kbd">k</kbd>
|
||||||
|
<kbd class="kbd">l</kbd>
|
||||||
|
</div>
|
||||||
|
<div class="flex justify-center gap-1 my-1 w-full">
|
||||||
|
<kbd class="kbd">y</kbd>
|
||||||
|
<kbd class="kbd">x</kbd>
|
||||||
|
<kbd class="kbd">c</kbd>
|
||||||
|
<kbd class="kbd">v</kbd>
|
||||||
|
<kbd class="kbd">b</kbd>
|
||||||
|
<kbd class="kbd">n</kbd>
|
||||||
|
<kbd class="kbd">m</kbd>
|
||||||
|
<kbd class="kbd">/</kbd>
|
||||||
|
</div>
|
||||||
</x-slot>
|
</x-slot>
|
||||||
<img alt="" src="{{ asset('img/emotes/shurizGG/shurizGG_original.png') }}" class="max-h-[20rem] block mx-auto"/>
|
|
||||||
</x-layout>
|
</x-layout>
|
|
@ -0,0 +1,26 @@
|
||||||
|
@php
|
||||||
|
/** @var \App\Models\Keybind $keybind */
|
||||||
|
$allKeys = [];
|
||||||
|
foreach ($keybinds as $keybind) {
|
||||||
|
$allKeys = array_merge(explode(env('KEYBIND_SEPERATOR'), $keybind->getKeybindKeys()), $allKeys);
|
||||||
|
}
|
||||||
|
@endphp
|
||||||
|
<x-layout title="{{ __('Keybinds') }}">
|
||||||
|
<x-slot:breadcrumb>
|
||||||
|
{{ Breadcrumbs::render('keybinds') }}
|
||||||
|
</x-slot:breadcrumb>
|
||||||
|
<x-slot name="header">
|
||||||
|
<h1 class="text-lg text-center font-bold">{{ __('Keybinds') }}</h1>
|
||||||
|
<x-keyboard :keys="$allKeys"/>
|
||||||
|
</x-slot>
|
||||||
|
@foreach($keybinds as $keybind)
|
||||||
|
<div class="max-w-7xl mx-auto py-6 px-4 sm:px-6 lg:px-8 bg-zinc-800 rounded-[1rem] my-[1rem] text-center grid grid-cols-2">
|
||||||
|
<div>
|
||||||
|
@foreach(explode(env('KEYBIND_SEPERATOR'), $keybind->getKeybindKeys()) as $index => $key)
|
||||||
|
@if($index > 0) + @endif<kbd class="kbd bg-zinc-800 border-{{ env('ACCENT_COLOR') }}">{{ $key }}</kbd>
|
||||||
|
@endforeach
|
||||||
|
</div>
|
||||||
|
{{ $keybind->getKeybindDescription() }}
|
||||||
|
</div>
|
||||||
|
@endforeach
|
||||||
|
</x-layout>
|
|
@ -4,24 +4,24 @@
|
||||||
<div class="flex justify-between flex-1 md:hidden">
|
<div class="flex justify-between flex-1 md:hidden">
|
||||||
@if ($paginator->onFirstPage())
|
@if ($paginator->onFirstPage())
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-4 py-2 text-sm font-medium text-red-400 bg-zinc-700 hover:bg-zinc-700 border border-red-400 cursor-default leading-5 rounded-md">
|
class="relative inline-flex items-center px-4 py-2 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-700 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default leading-5 rounded-md">
|
||||||
{!! __('pagination.previous') !!}
|
{!! __('pagination.previous') !!}
|
||||||
</span>
|
</span>
|
||||||
@else
|
@else
|
||||||
<a href="{{ $paginator->previousPageUrl() }}"
|
<a href="{{ $paginator->previousPageUrl() }}"
|
||||||
class="relative inline-flex items-center px-4 py-2 text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 leading-5 rounded-md focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-zinc-700 transition ease-in-out duration-150">
|
class="relative inline-flex items-center px-4 py-2 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} leading-5 rounded-md focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-zinc-700 transition ease-in-out duration-150">
|
||||||
{!! __('pagination.previous') !!}
|
{!! __('pagination.previous') !!}
|
||||||
</a>
|
</a>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
@if ($paginator->hasMorePages())
|
@if ($paginator->hasMorePages())
|
||||||
<a href="{{ $paginator->nextPageUrl() }}"
|
<a href="{{ $paginator->nextPageUrl() }}"
|
||||||
class="relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 leading-5 rounded-md focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-zinc-700 transition ease-in-out duration-150">
|
class="relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} leading-5 rounded-md focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-zinc-700 transition ease-in-out duration-150">
|
||||||
{!! __('pagination.next') !!}
|
{!! __('pagination.next') !!}
|
||||||
</a>
|
</a>
|
||||||
@else
|
@else
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-red-400 bg-zinc-700 hover:bg-zinc-700 border border-red-400 cursor-default leading-5 rounded-md">
|
class="relative inline-flex items-center px-4 py-2 ml-3 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-700 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default leading-5 rounded-md">
|
||||||
{!! __('pagination.next') !!}
|
{!! __('pagination.next') !!}
|
||||||
</span>
|
</span>
|
||||||
@endif
|
@endif
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
@if ($paginator->onFirstPage())
|
@if ($paginator->onFirstPage())
|
||||||
<span aria-disabled="true" aria-label="{{ __('pagination.previous') }}">
|
<span aria-disabled="true" aria-label="{{ __('pagination.previous') }}">
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-2 py-2 text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 cursor-default rounded-l-md leading-5"
|
class="relative inline-flex items-center px-2 py-2 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default rounded-l-md leading-5"
|
||||||
aria-hidden="true">
|
aria-hidden="true">
|
||||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
||||||
<path fill-rule="evenodd"
|
<path fill-rule="evenodd"
|
||||||
|
@ -57,7 +57,7 @@
|
||||||
</span>
|
</span>
|
||||||
@else
|
@else
|
||||||
<a href="{{ $paginator->previousPageUrl() }}" rel="prev"
|
<a href="{{ $paginator->previousPageUrl() }}" rel="prev"
|
||||||
class="relative inline-flex items-center px-2 py-2 text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 rounded-l-md leading-5 hover:text-red-400 focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-red-400 transition ease-in-out duration-150"
|
class="relative inline-flex items-center px-2 py-2 text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} rounded-l-md leading-5 hover:text-{{ env('ACCENT_COLOR') }} focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-{{ env('ACCENT_COLOR') }} transition ease-in-out duration-150"
|
||||||
aria-label="{{ __('pagination.previous') }}">
|
aria-label="{{ __('pagination.previous') }}">
|
||||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
||||||
<path fill-rule="evenodd"
|
<path fill-rule="evenodd"
|
||||||
|
@ -73,7 +73,7 @@
|
||||||
@if (is_string($element))
|
@if (is_string($element))
|
||||||
<span aria-disabled="true">
|
<span aria-disabled="true">
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 cursor-default leading-5">{{ $element }}</span>
|
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default leading-5">{{ $element }}</span>
|
||||||
</span>
|
</span>
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
@ -83,11 +83,11 @@
|
||||||
@if ($page == $paginator->currentPage())
|
@if ($page == $paginator->currentPage())
|
||||||
<span aria-current="page">
|
<span aria-current="page">
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-red-400 bg-zinc-700 hover:bg-zinc-700 border border-red-400 cursor-default leading-5">{{ $page }}</span>
|
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-700 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default leading-5">{{ $page }}</span>
|
||||||
</span>
|
</span>
|
||||||
@else
|
@else
|
||||||
<a href="{{ $url }}"
|
<a href="{{ $url }}"
|
||||||
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 leading-5 hover:text-red-400 focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-red-400 transition ease-in-out duration-150"
|
class="relative inline-flex items-center px-4 py-2 -ml-px text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} leading-5 hover:text-{{ env('ACCENT_COLOR') }} focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-{{ env('ACCENT_COLOR') }} transition ease-in-out duration-150"
|
||||||
aria-label="{{ __('Go to page :page', ['page' => $page]) }}">
|
aria-label="{{ __('Go to page :page', ['page' => $page]) }}">
|
||||||
{{ $page }}
|
{{ $page }}
|
||||||
</a>
|
</a>
|
||||||
|
@ -99,7 +99,7 @@
|
||||||
{{-- Next Page Link --}}
|
{{-- Next Page Link --}}
|
||||||
@if ($paginator->hasMorePages())
|
@if ($paginator->hasMorePages())
|
||||||
<a href="{{ $paginator->nextPageUrl() }}" rel="next"
|
<a href="{{ $paginator->nextPageUrl() }}" rel="next"
|
||||||
class="relative inline-flex items-center px-2 py-2 -ml-px text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 rounded-r-md leading-5 hover:text-red-400 focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-red-400 transition ease-in-out duration-150"
|
class="relative inline-flex items-center px-2 py-2 -ml-px text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} rounded-r-md leading-5 hover:text-{{ env('ACCENT_COLOR') }} focus:z-10 focus:outline-none focus:border-blue-300 active:bg-zinc-100 active:text-{{ env('ACCENT_COLOR') }} transition ease-in-out duration-150"
|
||||||
aria-label="{{ __('pagination.next') }}">
|
aria-label="{{ __('pagination.next') }}">
|
||||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
||||||
<path fill-rule="evenodd"
|
<path fill-rule="evenodd"
|
||||||
|
@ -110,7 +110,7 @@
|
||||||
@else
|
@else
|
||||||
<span aria-disabled="true" aria-label="{{ __('pagination.next') }}">
|
<span aria-disabled="true" aria-label="{{ __('pagination.next') }}">
|
||||||
<span
|
<span
|
||||||
class="relative inline-flex items-center px-2 py-2 -ml-px text-sm font-medium text-red-400 bg-zinc-800 hover:bg-zinc-700 border border-red-400 cursor-default rounded-r-md leading-5"
|
class="relative inline-flex items-center px-2 py-2 -ml-px text-sm font-medium text-{{ env('ACCENT_COLOR') }} bg-zinc-800 hover:bg-zinc-700 border border-{{ env('ACCENT_COLOR') }} cursor-default rounded-r-md leading-5"
|
||||||
aria-hidden="true">
|
aria-hidden="true">
|
||||||
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
||||||
<path fill-rule="evenodd"
|
<path fill-rule="evenodd"
|
||||||
|
|
|
@ -16,6 +16,12 @@ Breadcrumbs::for('404', function (BreadcrumbTrail $trail) {
|
||||||
$trail->push(__('404 | Not found'), route('home'));
|
$trail->push(__('404 | Not found'), route('home'));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Home > Keybinds
|
||||||
|
Breadcrumbs::for('keybinds', function (BreadcrumbTrail $trail) {
|
||||||
|
$trail->parent('home');
|
||||||
|
$trail->push(__('Keybinds'), route('keybinds'));
|
||||||
|
});
|
||||||
|
|
||||||
// Home > Vehicles
|
// Home > Vehicles
|
||||||
Breadcrumbs::for('vehicles', function (BreadcrumbTrail $trail) {
|
Breadcrumbs::for('vehicles', function (BreadcrumbTrail $trail) {
|
||||||
$trail->parent('home');
|
$trail->parent('home');
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
use App\Http\Controllers\KeybindController;
|
||||||
use App\Http\Controllers\ProfileController;
|
use App\Http\Controllers\ProfileController;
|
||||||
use App\Http\Controllers\VehicleController;
|
use App\Http\Controllers\VehicleController;
|
||||||
use Illuminate\Support\Facades\Route;
|
use Illuminate\Support\Facades\Route;
|
||||||
|
@ -23,6 +24,8 @@ Route::get('/', static function () {
|
||||||
return view('home');
|
return view('home');
|
||||||
})->name('home');
|
})->name('home');
|
||||||
|
|
||||||
|
Route::get('/keybinds', [KeybindController::class, 'index'])->name('keybinds');
|
||||||
|
|
||||||
Route::get('/vehicles', [VehicleController::class, 'index'])->name('vehicles');
|
Route::get('/vehicles', [VehicleController::class, 'index'])->name('vehicles');
|
||||||
Route::get('/vehicles/autocomplete', [VehicleController::class, 'autocomplete'])->name('vehicles.autocomplete');
|
Route::get('/vehicles/autocomplete', [VehicleController::class, 'autocomplete'])->name('vehicles.autocomplete');
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue