{{-- Tab 1: Overall Settings Writes to daily_challenges(slug=dsc).setting_details on Save Changes. Field name pattern: main_game[setting_details][][...] Layout notes: - Every control sits inside its own .form-group so labels stay paired with inputs even when the page's right rail shrinks the form column. - The 3 message sections (Individual / All / Subsequent) are Bootstrap cards stacked vertically with mb-3. They used to be
s, which the admin layout was treating as flex children and squashing side-by-side. --}} @component('admin.components.card', ['header' => 'General'])
Stored in setting_details.max_cards. Tick the box to enforce a cap, leave unticked or set to -1 for unlimited.
@endcomponent @component('admin.components.card', ['header' => 'Progression']) {{-- 1. Master toggle on its own row --}}
When off, the progress bar is hidden entirely.

When off, the default circles & green ticks are shown. When on, upload an incomplete and a completed image for each step below — they replace the circle / tick for that step.
{{-- One row per step, injected by stampcard_admin.js (template at bottom of file) --}}
{{-- 2. Progress type below the toggle, on its own row --}}
How the bar counts: by whole cards completed, or by individual grids/stamps.
{{-- 3. Reward-icon positions, with a clear caption ABOVE the checkboxes --}}
Tick a box to display a reward icon over that grid. Order follows the grid order (A, B, C…). JS will render one checkbox per grid that exists on Card 1.
@endcomponent @component('admin.components.card', ['header' => 'Customize Stampcard Messages']) @php $popupSections = [ ['key' => 'completed_card', 'label' => 'Individual Stamp Card Completion', 'help' => 'Shown when a user finishes one card.'], ['key' => 'completed_card_all', 'label' => 'All Stamp Cards Completion', 'help' => 'Shown once the user has completed every available card.'], ['key' => 'new_card', 'label' => 'Subsequent Stamp Card Greeting', 'help' => 'Shown when a new card is unlocked after finishing the previous one.'], ]; @endphp @foreach ($popupSections as $sec) @php $key = $sec['key']; @endphp
{{ $sec['label'] }} {{ $sec['help'] }}
HTML allowed. Use the Upload Image widget below to host a image and drop an <img> tag straight into the title. @include('admin.setting.components._dsc_image_uploader')
HTML allowed. @include('admin.setting.components._dsc_image_uploader')
Each row defines one button on the popup. Add multiple buttons if needed.
Load Popup ID: ID of the popup to load when the button is clicked. (contact DEV PIC for inputting this value)
Onclick JS: JavaScript to execute when the button is clicked. (contact DEV PIC for inputting this value)
Button Text
Button ID
Load Popup ID
Onclick JS
{{-- Rows injected by stampcard_admin.js (template below) --}}
@endforeach @endcomponent {{-- CTA-button row template — cloned by stampcard_admin.js each time +Add CTA is clicked. --}} {{-- Image upload for the custom progress bar --}}