%PDF- %PDF-
Direktori : /www/loslex/test/resources/views/contests/partials/ |
Current File : //www/loslex/test/resources/views/contests/partials/registration-online.blade.php |
<div class="space-y-6" x-data="{ stages: {{ old('stages', $contest->stages ?? 4) }}, squads: {{ old('squads', $contest->squads ?? 4) }}, capacity: {{ old('capacity', $contest->capacity ?? 20) }}, distribution: '{{ old('distribution', $contest->distribution ?? 'asc') }}', get sqdivisions() { let n = Math.floor(this.capacity / this.squads); const arr = []; for (let i = 0; i < this.squads; i++){ arr.push(n) }; if (arr.reduce((a,b) => a+b, 0) === this.capacity) { return arr.toString(); }; if (this.distribution == 'asc') { for(let i = 0; i < this.squads; i++) { arr[i]++; if(arr.reduce((a,b) => a+b, 0) === this.capacity) { return arr.toString(); }; }; } else { for(let i = this.squads - 1; i >= 0; i--) { arr[i]++; if(arr.reduce((a,b) => a+b, 0) === this.capacity) { return arr.toString(); }; }; } }, get sqarr() { return `(${this.sqdivisions})`; }, squadshootstyle: '{{ old('squadshootstyle', !is_null($contest) ? $contest->squad_shoot_style : 'together') }}', get showsqtogether() { return this.squadshootstyle == 'together';}, get showsqmanual() { return this.squadshootstyle == 'manual';}, tbl_pres_start: {{ json_encode(old('presentation_start', !is_null($contest) ? $contest->presentation_start : '')) }} ?? new Array(this.squads), tbl_pres_end: {{ json_encode(old('presentation_end', !is_null($contest) ? $contest->presentation_end : '')) }} ?? new Array(this.squads), tbl_cntst_start: {{ json_encode(old('contest_start', !is_null($contest) ? $contest->contest_start : '')) }} ?? new Array(this.squads), tbl_cntst_end: {{ json_encode(old('contest_end', !is_null($contest) ? $contest->contest_end : '')) }} ?? new Array(this.squads), }"> <div class="flex flex-row flex-wrap gap-x-4"> <div> <x-input-label for="stages" :value="__('Number of stages')" /> <x-text-input class="mt-1" id="stages" name="stages" type="number" x-model.number="stages" /> <x-input-error class="mt-2" :messages="$errors->get('stages')" /> </div> <div> <x-input-label for="squads" :value="__('Number of squads')" /> <x-text-input class="mt-1" id="squads" name="squads" type="number" x-model.number="squads" /> <x-input-error class="mt-2" :messages="$errors->get('squads')" /> </div> <div> <x-input-label for="capacity" :value="__('Capacity')" /> <x-text-input class="mt-1" id="capacity" name="capacity" type="number" x-model.number="capacity" /> <x-input-error class="mt-2" :messages="$errors->get('capacity')" /> </div> <div> <x-input-label for="distribution" :value="__('Squad size distribution')" /> <x-select class="mt-1" id="distribution" name="distribution" x-model="distribution"> <option value="asc">{{__('Auto, larger first')}}</option> <option value="desc">{{__('Auto, larger last')}}</option> </x-select> <x-input-error class="mt-2" :messages="$errors->get('distribution')" /> </div> <div> <x-input-label :value="__('Squad sizes')" /> <div class="mt-1" x-text="sqarr"></div> </div> </div> <div class="flex flex-row flex-wrap gap-x-4"> <div> <x-text-input type="radio" x-model="squadshootstyle" id="squadstogether" name="squadshootstyle" value="together" /> <x-input-label class="!inline ml-1" for="squadstogether" :value="__('Squads shooting at the same time')" /> </div> <div> <x-text-input type="radio" x-model="squadshootstyle" id="squadscustom" name="squadshootstyle" value="manual" /> <x-input-label class="!inline ml-1" for="squadscustom" :value="__('Custom shooting times')" /> </div> </div> <div x-show="showsqtogether" class="flex flex-row flex-wrap gap-x-4"> <div> <x-input-label for="presentation_start_0" :value="__('Presentation start')" /> <x-text-input class="mt-1" id="presentation_start_0" name="presentation_start[0]" type="time" :value="is_array(old('presentation_start')) ? old('presentation_start')[0] : (is_array($contest?->presentation_start) ? $contest->presentation_start[0] : '')" /> <x-input-error class="mt-2" :messages="$errors->get('presentation_start.0')" /> </div> <div> <x-input-label for="presentation_end_0" :value="__('Presentation end')" /> <x-text-input class="mt-1" id="presentation_end_0" name="presentation_end[0]" type="time" :value="is_array(old('presentation_end')) ? old('presentation_end')[0] : (is_array($contest?->presentation_end) ? $contest->presentation_end[0] : '')" /> <x-input-error class="mt-2" :messages="$errors->get('presentation_end.0')" /> </div> <div> <x-input-label for="contest_start_0" :value="__('Contest start')" /> <x-text-input class="mt-1" id="contest_start_0" name="contest_start[0]" type="time" :value="is_array(old('contest_start')) ? old('contest_start')[0] : (is_array($contest?->contest_start) ? $contest->contest_start[0] : '')" /> <x-input-error class="mt-2" :messages="$errors->get('contest_start.0')" /> </div> <div> <x-input-label for="contest_end" :value="__('Contest end')" /> <x-text-input class="mt-1" id="contest_end_0" name="contest_end[0]" type="time" :value="is_array(old('contest_end')) ? old('contest_end')[0] : (is_array($contest?->contest_end) ? $contest->contest_end[0] : '')" /> <x-input-error class="mt-2" :messages="$errors->get('contest_end.0')" /> </div> </div> <div x-show="showsqmanual"> <template x-for="index in squads"> <fieldset x-data="{id: index}" class="flex flex-row flex-wrap gap-x-4 border rounded-md px-4 pb-2"> <legend class="mx-4 px-2" x-text="'Squad ' + index"></legend> <div> <x-input-label ::for="`presentation_start_${id}`" :value="__('Presentation start')" /> <x-text-input class="mt-1" ::id="`presentation_start_${id}`" ::name="`presentation_start[${id}]`" type="time" x-model="tbl_pres_start[id]" /> </div> <div> <x-input-label ::for="`presentation_end_${id}`" :value="__('Presentation end')" /> <x-text-input class="mt-1" ::id="`presentation_end_${id}`" ::name="`presentation_end[${id}]`" type="time" x-model="tbl_pres_end[id]" /> </div> <div> <x-input-label ::for="`contest_start_${id}`" :value="__('Contest start')" /> <x-text-input class="mt-1" ::id="`contest_start_${id}`" ::name="`contest_start[${id}]`" type="time" x-model="tbl_cntst_start[id]" /> </div> <div> <x-input-label ::for="`contest_end_${id}`" :value="__('Contest end')" /> <x-text-input class="mt-1" ::id="`contest_end_${id}`" ::name="`contest_end[${id}]`" type="time" x-model="tbl_cntst_end[id]" /> </div> </fieldset> </template> @error('manualtimetable') <ul class="text-sm text-red-600 space-y-1 mt-2"> @foreach ($errors->get('manualtimetable')[0] as $message) <li>{{ $message }}</li> @endforeach </ul> @enderror </div> </div>