auditionadmin/resources/views/admin/audition-settings.blade.php

129 lines
7.9 KiB
PHP

<x-layout.app>
<x-slot:page_title>Audition Settings</x-slot:page_title>
<x-layout.page-section-container>
<x-form.form id="settingsForm" method="POST" action="{{ route('audition-settings-save') }}">
<x-layout.page-section>
<x-slot:section_name>Group Information</x-slot:section_name>
<x-form.body-grid columns="12" class="m-3">
<x-form.field label_text="Organization Name" name="auditionName" colspan="8" :value="auditionSetting('auditionName')"/>
<x-form.field label_text="Abbreviation" name="auditionAbbreviation" colspan="4" :value="auditionSetting('auditionAbbreviation')"/>
<x-form.field label_text="Organizer Name" name="organizerName" colspan="6" :value="auditionSetting('organizerName')"/>
<x-form.field label_text="Organizer Email" type="email" name="organizerEmail" colspan="6" :value="auditionSetting('organizerEmail')"/>
</x-form.body-grid>
</x-layout.page-section>
<x-layout.page-section>
<x-slot:section_name>Registration Settings</x-slot:section_name>
<x-slot:section_description>If students cannot advance to further honor groups, leave next event name blank</x-slot:section_description>
<x-form.body-grid columns="12" class="m-3">
<x-form.field label_text="Registration Code" name="registrationCode" colspan="3" :value="auditionSetting('registrationCode')"/>
<x-form.field label_text="Next Event Name" name="advanceTo" colspan="4" :value="auditionSetting('advanceTo')"/>
<x-form.select name="nomination_ensemble_rules" colspan="4">
<x-slot:label>Nomination Ensemble Rules</x-slot:label>
{{-- Values should be one of the options in the boot method NominationEnsembleServiceProvider --}}
<option value="disabled" {{ auditionSetting('nomination_ensemble_rules') === 'disabled' ? 'selected':'' }}>
No Nomination Ensembles
</option>
<option value="scobda" {{ auditionSetting('nomination_ensemble_rules') === 'scobda' ? 'selected':'' }}>
SCOBDA Rules
</option>
<option value="meobda" {{ auditionSetting('nomination_ensemble_rules') === 'meobda' ? 'selected':'' }}>
MEOBDA Rules
</option>
</x-form.select>
</x-form.body-grid>
</x-layout.page-section>
<x-layout.page-section>
<x-slot:section_name>Optional Student Data</x-slot:section_name>
<x-form.body-grid columns 12 class="m-3">
<div class="col-span-6 flex space-x-3">
<x-form.toggle-checkbox
checked="{{ auditionSetting('student_data_collect_shirt_size') }}"
name="student_data_collect_shirt_size"/>
<span>Collect Student Shirt Size</span>
</div>
</x-form.body-grid>
</x-layout.page-section>
<x-layout.page-section>
<x-slot:section_name>Scoring Settings</x-slot:section_name>
<x-form.body-grid columns="12" class="m-3">
<div class="col-span-6 flex space-x-3">
<x-form.toggle-checkbox
checked="{{ auditionSetting('judging_enabled') }}"
name="judging_enabled"/>
<span>Enable score entry by judges</span>
</div>
<div class="col-span-6 flex space-x-3">
<x-form.toggle-checkbox
checked="{{ auditionSetting('olympic_scoring') }}"
name="olympic_scoring"/>
<span>Olympic scoring</span>
</div>
</x-form.body-grid>
</x-layout.page-section>
<x-layout.page-section>
<x-slot:section_name>Financial Settings</x-slot:section_name>
<x-form.body-grid columns="12" class="m-3" x-data="{ show_invoicing_options: {{ auditionSetting('invoicing_enabled') ? 'true':'false'}} }">
<div class="col-span-12 flex space-x-3">
<x-form.toggle-checkbox
x-model="show_invoicing_options"
checked="{{ auditionSetting('invoicing_enabled') }}"
name="invoicing_enabled"/>
<span>Enable Invoicing</span>
</div>
<x-form.select name="fee_structure" colspan="6" x-show="show_invoicing_options">
<x-slot:label>Fee Structure</x-slot:label>
{{-- Values should be one of the options in the boot method InvoiceDataServiceProvider --}}
<option value="oneFeePerEntry" {{ auditionSetting('fee_structure') === 'oneFeePerEntry' ? 'selected':'' }}>
One fee per entry
</option>
<option value="oneFeePerStudent" {{ auditionSetting('fee_structure') === 'oneFeePerStudent' ? 'selected':'' }}>
One fee per student - one late fee per student if any of their entries are late
</option>
<option value="oneFeePerStudentPerEvent" {{ auditionSetting('fee_structure') === 'oneFeePerStudentPerEvent' ? 'selected':'' }}>
One fee per student per event - one late fee per student if any of their entries are late
</option>
</x-form.select>
<x-form.field label_text="Late Fee"
name="late_fee"
colspan="3"
:value="number_format(auditionSetting('late_fee') / 100,2) "
x-show="show_invoicing_options"/>
<x-form.field label_text="School Membership Fee"
name="school_fee"
colspan="3"
:value="number_format(auditionSetting('school_fee') / 100,2)"
x-show="show_invoicing_options"/>
</x-form.body-grid>
</x-layout.page-section>
<x-layout.page-section>
<x-slot:section_name>Payment Address</x-slot:section_name>
<x-form.body-grid columns="12" class="m-3">
{{-- <x-form.field label_text="Payment Address" name="payment_address" colspan="5" :value="auditionSetting('payment_address')"/>--}}
<x-form.textarea colspan="5" name="payment_address" id="payment_address" rows="5">
<x-slot:label>Payment Address</x-slot:label>
{{ auditionSetting('payment_address') }}
</x-form.textarea>
<x-form.field label_text="Payment City" name="payment_city" colspan="3" :value="auditionSetting('payment_city')"/>
<x-form.field label_text="Payment State" name="payment_state" colspan="2" :value="auditionSetting('payment_state')"/>
<x-form.field label_text="Payment Zip" type="number" name="payment_zip" colspan="2" :value="auditionSetting('payment_zip')"/>
</x-form.body-grid>
</x-layout.page-section>
<div class="grid grid-cols-12">
<div class="col-span-2 col-start-11 my-5 mr-3">
<x-form.button type="submit" Save Settings>Save Settings</x-form.button>
</div>
</div>
</x-form.form>
</x-layout.page-section-container>
</x-layout.app>