wip player app
This commit is contained in:
1 parent
f9712cbd25
commit
6b1a68e738
13 files changed
+537
-311
No files matched your search
@@ -1,68 +1,98 @@
|
||||
@php
|
||||
use Illuminate\Support\HtmlString;
|
||||
|
||||
@endphp
|
||||
|
||||
|
||||
<div class="grid grid-cols-6 gap-10" class="drag-and-drop" x-data="{ adding: false, removing: false }">
|
||||
<div class="col-span-2 h-full drag-and-drop__container drag-and-drop__container--from">
|
||||
@foreach ($player as $position => $names)
|
||||
<div class="text-bold py-2"> {{ ucfirst(strtolower($position)) }}</div>
|
||||
<div class="grid grid-cols-2 gap-2 cursor-grab drag-and-drop__items"
|
||||
:class="{ 'drag-and-drop__items--removing': removing }" x-on:drop="removing = false"
|
||||
x-on:drop.prevent="
|
||||
const target = event.target.closest('div');
|
||||
const element = document.getElementById(event.dataTransfer.getData('text/plain'));
|
||||
target.appendChild(element);
|
||||
"
|
||||
x-on:dragover.prevent="removing = true" x-on:dragleave.prevent="removing = false">
|
||||
@foreach ($names as $ss_player_id => $name)
|
||||
<div color="gray" id="{{ $ss_player_id }}"
|
||||
class="border border-gray-200 bg-gray-100 p-1 rounded text-xs cursor-grap drag-and-drop__item"
|
||||
:class="{ 'drag-and-drop__item--dragging': dragging }"
|
||||
x-on:dragstart.self="
|
||||
dragging = true;
|
||||
event.dataTransfer.effectAllowed='move';
|
||||
event.dataTransfer.setData('text/plain', event.target.id);
|
||||
"
|
||||
x-on:dragend="dragging = false" x-data="{ dragging: false }" draggable="true">
|
||||
{{ new HtmlString($name) }}
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
<div class="col-span-3 h-full drag-and-drop__container drag-and-drop__container--to">
|
||||
<div class="drag-and-drop__items grid grid-cols-5 gap-2 justify-center w-130 bg-size-[100%_100%] p-2 border-5 border-green-600"
|
||||
style="background-image:url({{ asset('images/soccerfield.png') }});">
|
||||
@foreach ($positions as $pos)
|
||||
@if ($pos)
|
||||
<div class="border-5 border-white/30 h-full aspect-square p-1 m-1 rounded-xl"
|
||||
:class="{ 'drag-and-drop__items--adding': adding }" x-on:drop="adding = false"
|
||||
x-on:drop.prevent="
|
||||
const target = event.target.closest('ul');
|
||||
const element = document.getElementById(event.dataTransfer.getData('text/plain'));
|
||||
target.appendChild(element);
|
||||
"
|
||||
x-on:dragover.prevent="adding = true" x-on:dragleave.prevent="adding = false">
|
||||
<div class="text-white/30 font-black text-center text-xl">
|
||||
{{ $pos }}
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
<div></div>
|
||||
@endif
|
||||
@endforeach
|
||||
{{-- In Tailwind CSS, a value of 24 equals 96 pixels (or 6rem) --}}
|
||||
<div class="w-full">
|
||||
<div class="pb-5 flex flex-row justify-between">
|
||||
<div class="flex flex-row gap-3">
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" size="sm" class="w-24">
|
||||
ATTACK
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" size="sm" class="w-24">
|
||||
MIDFIELD
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" size="sm" class="w-24">
|
||||
DEFENCE
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" size="sm" class="w-24">
|
||||
GOALKEEPER
|
||||
</x-filament::button>
|
||||
</div>
|
||||
<div class="flex flex-row gap-3">
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" icon="phosphor-x-circle">
|
||||
Reset
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="info" icon="phosphor-calculator">
|
||||
Calculate
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="info" icon="phosphor-copy">
|
||||
Copy
|
||||
</x-filament::button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex flex-col gap-3">
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" icon="phosphor-x-circle">
|
||||
Reset
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" icon="phosphor-calculator">
|
||||
Calculate
|
||||
</x-filament::button>
|
||||
<x-filament::button wire:click="openNewUserModal" color="gray" icon="phosphor-copy">
|
||||
Copy
|
||||
</x-filament::button>
|
||||
<div class="chessboard grid w-258 h-182 grid-cols-10 grid-rows-7 relative gap-2"
|
||||
style="background-image:url({{ asset('svg/soccerfield.svg') }});">
|
||||
@foreach ($grid as $key => $elements)
|
||||
@if ($key % 2 == 0)
|
||||
@foreach ($elements as $name)
|
||||
@if (isset($name['color']))
|
||||
<x-filament::badge color="{{ $name['color'] }}" id="{{ $name['player_id'] }}"
|
||||
class="piece size-24 select-none aspect-square">
|
||||
<div>{{ $name['position'] }}</div>
|
||||
<div class="font-bold text-wrap">{{ $name['name'] }}</div>
|
||||
<div class="text-wrap">{{ $name['info'] }}</div>
|
||||
</x-filament::badge>
|
||||
@else
|
||||
<div class="size-24"></div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@foreach ($elements as $pos)
|
||||
@if ($pos)
|
||||
<div class="size-24 bg-white/30 inset-shadow-sm">
|
||||
<div class="font-black text-3xl text-center text-white/25 p-3">
|
||||
{{ $pos }}
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
<div class="size-24"></div>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
|
||||
</div>
|
||||
{{-- <div class="chessboard grid grid-cols-10 w-240 pr-3 gap-0 bg-no-repeat bg-size-[466px_672px] bg-position-[top_left_476px] overflow-hidden"
|
||||
style="background-image:url({{ asset('svg/soccerfield.svg') }});">
|
||||
|
||||
@foreach ($grid as $key => $elements)
|
||||
@if ($key % 2 == 0)
|
||||
@foreach ($elements as $name)
|
||||
@if (isset($name['color']))
|
||||
<x-filament::badge color="{{ $name['color'] }}" id="{{ $name['player_id'] }}"
|
||||
class="piece size-22 m-1 z-20 select-none cursor-grab grid grid-cols-1 gap-3 text-xs">
|
||||
<div>{{ $name['position'] }}</div>
|
||||
<div class="font-bold text-wrap">{{ $name['name'] }}</div>
|
||||
<div class="text-wrap">{{ $name['info'] }}</div>
|
||||
</x-filament::badge>
|
||||
@else
|
||||
<div class="size-22 m-1"></div>
|
||||
@endif
|
||||
@endforeach
|
||||
@else
|
||||
@foreach ($elements as $pos)
|
||||
@if ($pos)
|
||||
<div class="size-22 m-1 bg-white/30 rounded">
|
||||
<div class="font-black text-3xl text-center text-white/25 p-3">
|
||||
{{ $pos }}
|
||||
</div>
|
||||
</div>
|
||||
@else
|
||||
<div class="size-22 m-1"></div>
|
||||
@endif
|
||||
@endforeach
|
||||
@endif
|
||||
@endforeach
|
||||
</div> --}}
|
||||
</div>
|
||||
Reference in new issue
Block a user