Add custom company logo upload and simplify kiosk branding.
Deploy Ladill Frontdesk / deploy (push) Successful in 23s
Deploy Ladill Frontdesk / deploy (push) Successful in 23s
Show Ladill Frontdesk or uploaded logo top-left on kiosk; allow logo upload in onboarding and organization settings. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,7 +1,3 @@
|
||||
@php
|
||||
$fdIcon = 'images/launcher-icons/frontdesk.svg';
|
||||
$fdLogo = 'images/logo/ladillfrontdesk-logo.svg';
|
||||
@endphp
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
@@ -25,19 +21,13 @@
|
||||
<div class="absolute -right-16 bottom-0 h-80 w-80 rounded-full bg-violet-200/40 blur-3xl"></div>
|
||||
</div>
|
||||
|
||||
<div class="relative mx-auto flex min-h-screen max-w-3xl flex-col">
|
||||
<div class="fixed inset-x-0 top-0 z-10 h-1.5 bg-gradient-to-r from-indigo-600 to-violet-600"></div>
|
||||
@include('frontdesk.partials.kiosk-brand')
|
||||
|
||||
<div class="relative mx-auto flex min-h-screen max-w-3xl flex-col pt-20">
|
||||
<template x-if="step === 'welcome'">
|
||||
<div class="flex min-h-screen flex-col items-center justify-center px-6 py-12 text-center">
|
||||
<div class="fixed inset-x-0 top-0 h-1.5 bg-gradient-to-r from-indigo-600 to-violet-600"></div>
|
||||
|
||||
<img src="{{ asset($fdIcon) }}?v={{ @filemtime(public_path($fdIcon)) ?: '1' }}"
|
||||
alt=""
|
||||
class="h-24 w-24 drop-shadow-sm">
|
||||
<img src="{{ asset($fdLogo) }}?v={{ @filemtime(public_path($fdLogo)) ?: '1' }}"
|
||||
alt="Ladill Frontdesk"
|
||||
class="mt-5 h-7 w-auto">
|
||||
|
||||
<div class="mt-14 max-w-xl">
|
||||
<div class="flex min-h-[calc(100vh-5rem)] flex-col items-center justify-center px-6 py-12 text-center">
|
||||
<div class="max-w-xl">
|
||||
<p class="text-sm font-semibold uppercase tracking-wider text-indigo-600">Visitor check-in</p>
|
||||
<h1 class="mt-3 text-4xl font-bold tracking-tight text-slate-900 sm:text-5xl">
|
||||
Welcome to {{ $organization->name }}
|
||||
@@ -53,14 +43,7 @@
|
||||
</template>
|
||||
|
||||
<template x-if="step !== 'welcome'">
|
||||
<div class="flex min-h-screen flex-col px-6 py-6">
|
||||
<header class="mb-6 text-center">
|
||||
<img src="{{ asset($fdIcon) }}?v={{ @filemtime(public_path($fdIcon)) ?: '1' }}"
|
||||
alt=""
|
||||
class="mx-auto h-10 w-10">
|
||||
<p class="mt-3 text-sm font-medium text-slate-500">{{ $organization->name }}</p>
|
||||
</header>
|
||||
|
||||
<div class="flex min-h-[calc(100vh-5rem)] flex-col px-6 py-6">
|
||||
<main class="flex-1">
|
||||
<template x-if="step === 'type'">
|
||||
<div>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<h1 class="text-2xl font-semibold text-slate-900">Welcome to Ladill Frontdesk</h1>
|
||||
<p class="mt-2 text-sm text-slate-600">Set up your organization to start managing visitors.</p>
|
||||
|
||||
<form method="POST" action="{{ route('frontdesk.onboarding.store') }}" class="mt-8 space-y-5 rounded-2xl border border-slate-200 bg-white p-6">
|
||||
<form method="POST" action="{{ route('frontdesk.onboarding.store') }}" enctype="multipart/form-data" class="mt-8 space-y-5 rounded-2xl border border-slate-200 bg-white p-6">
|
||||
@csrf
|
||||
|
||||
<div>
|
||||
@@ -24,6 +24,13 @@
|
||||
class="mt-1 w-full rounded-lg border-slate-300 text-sm">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700">Company logo (optional)</label>
|
||||
<p class="mt-1 text-xs text-slate-500">Replaces the Ladill Frontdesk logo on your visitor kiosk.</p>
|
||||
<input type="file" name="logo" accept="image/png,image/jpeg,image/webp,image/svg+xml"
|
||||
class="mt-2 block w-full text-sm text-slate-600 file:mr-3 file:rounded-lg file:border-0 file:bg-indigo-50 file:px-3 file:py-2 file:text-sm file:font-medium file:text-indigo-700">
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700">Timezone</label>
|
||||
<select name="timezone" class="mt-1 w-full rounded-lg border-slate-300 text-sm">
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
@php
|
||||
use App\Support\OrganizationBranding;
|
||||
@endphp
|
||||
<div class="fixed left-0 top-0 z-20 p-6">
|
||||
<img src="{{ OrganizationBranding::logoUrl($organization) }}"
|
||||
alt="{{ OrganizationBranding::logoAlt($organization) }}"
|
||||
class="h-8 w-auto max-w-[220px] object-contain object-left">
|
||||
</div>
|
||||
@@ -6,7 +6,7 @@
|
||||
<h1 class="text-xl font-semibold text-slate-900">Settings</h1>
|
||||
<p class="text-sm text-slate-500">{{ $organization->name }}</p>
|
||||
|
||||
<form method="POST" action="{{ route('frontdesk.settings.update') }}" class="mt-6 max-w-2xl space-y-6">
|
||||
<form method="POST" action="{{ route('frontdesk.settings.update') }}" enctype="multipart/form-data" class="mt-6 max-w-2xl space-y-6">
|
||||
@csrf @method('PUT')
|
||||
|
||||
<section class="rounded-2xl border border-slate-200 bg-white p-5 space-y-4">
|
||||
@@ -24,6 +24,21 @@
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
<div>
|
||||
<label class="block text-sm font-medium text-slate-700">Company logo</label>
|
||||
<p class="mt-1 text-xs text-slate-500">Shown on the visitor kiosk instead of the Ladill Frontdesk logo. PNG, JPG, WebP, or SVG up to 2 MB.</p>
|
||||
@if (\App\Support\OrganizationBranding::hasCustomLogo($organization))
|
||||
<img src="{{ \App\Support\OrganizationBranding::logoUrl($organization) }}"
|
||||
alt="{{ $organization->name }}"
|
||||
class="mt-3 h-12 w-auto max-w-xs rounded-lg border border-slate-200 bg-white object-contain p-2">
|
||||
<label class="mt-3 flex items-center gap-2 text-sm text-slate-600">
|
||||
<input type="checkbox" name="remove_logo" value="1" @checked(old('remove_logo'))>
|
||||
Remove custom logo
|
||||
</label>
|
||||
@endif
|
||||
<input type="file" name="logo" accept="image/png,image/jpeg,image/webp,image/svg+xml"
|
||||
class="mt-3 block w-full text-sm text-slate-600 file:mr-3 file:rounded-lg file:border-0 file:bg-indigo-50 file:px-3 file:py-2 file:text-sm file:font-medium file:text-indigo-700">
|
||||
</div>
|
||||
@else
|
||||
<dl class="text-sm space-y-2">
|
||||
<div class="flex justify-between"><dt class="text-slate-500">Name</dt><dd>{{ $organization->name }}</dd></div>
|
||||
|
||||
Reference in New Issue
Block a user