How everything works.
One page for everyone: the first half is for visitors using the site, the second half is for Lisa and the administrator running it.
Visiting the site
The home page opens with a short animation — a golden orbital circling the Lisa Millar mark before it implodes and reveals the page. Click anywhere to skip straight to the implosion. Hovering any button or card lights a small blue orbital; clicking fires the same implosion in miniature before the page changes.
Six treatment pages describe each treatment in full, with prices, videos where they exist, and a booking panel. The price list on the home page shows everything on one menu.
Booking an appointment
- Open Book — or any BOOK ONLINE button.
- Pick a treatment. New clients can pick the complimentary consultation.
- Pick a day and time. Only genuinely free slots are offered.
- Enter your details and pay by card. Payment is handled by Stripe — card numbers never touch this website.
How course payments work
A course takes one payment today — the price of a single session — and the remainder is split evenly across the remaining sessions, charged at each visit from the card used at booking. Example: the RF Microneedling course of 4 costs £675; you pay £180 today, then £165 at each of the three remaining visits. The total always matches the published course price exactly.
Install the booking page as an app: open it in Safari or Chrome on your phone and choose Add to Home Screen.
The music player
The bar at the foot of every page is a working Winamp-style player carrying the site's own soundtrack. It plays the album one track after another and keeps playing as you move between pages. The full guide — including skins and the equaliser — is on its own page: the media player guide, also reachable from the small round icon at the top of every page.
Admin — signing in
The admin app lives at lmaesthetics.co.uk/admin. There are two passwords —
Lisa's and the administrator's — both set in api/config.php. Either opens the
same app. Sign-ins last 30 days per device.
- iPhone: open the page in Safari → Share → Add to Home Screen. It installs as "The Cabin" and opens like any other app.
- MacBook: open the page in Safari → File → Add to Dock.
Admin — managing the calendar
The Schedule tab
The day view shows every booking in its time slot. Use the arrows to move between days and Today to jump back. Tap any booking to open it: the client's phone and email are tap-to-call and tap-to-email, and the actions at the foot mark the visit completed, a no-show, or cancelled.
Blocking time out
+ Block time removes any period from online booking — lunch, holidays, training. Blocks show hatched on the schedule; the ✕ on a block removes it.
Your calendar on your own devices
The Settings tab carries a private subscription link. Add it once to Apple Calendar on the iPhone and the MacBook (instructions are beside the link) and every booking appears there automatically, refreshing itself — nothing to sync by hand.
Admin — payments and courses
Open a course booking and its payment schedule is listed instalment by instalment. For each one that is due:
- CHARGE CARD — takes the instalment from the card saved at booking. One tap, done at the visit.
- SEND PAYMENT LINK — if the bank insists the client confirms, the app hands you a Stripe link to text or email instead.
- MARK PAID (CASH) — records a payment taken any other way.
Book session is at the foot of the drawer — pick a date, tap FIND TIMES, tap a slot, and the next session of the course lands on the schedule.
Admin — the Media tab
The Media tab (the small dial icon) manages the site's music player.
Skins
Upload a classic Winamp skin file (.wsz) and the site reads the skin's own
colour design — its playlist and visualiser colour declarations, plus the chassis artwork
where the server can read it — and builds a matching colourway. It appears in the
player's SKIN tray on every page. REMOVE takes it out again; anyone who had chosen it
falls back to Velvet. Six classic skins come pre-installed.
Plugins
Plugin files can be stored and removed here for safe keeping. A classic Winamp plugin is Windows software and cannot run inside a web page, so storage is all that is offered — nothing uploaded here is ever executed.
Admin — Settings
- Opening hours — tick the days worked and set the hours; these drive exactly what clients can book. Saved immediately.
- Calendar link — the Apple Calendar subscription described above.
- Payments log — every checkout, webhook and instalment attempt, accepted or not. A refusal shown to a client carries a six-character reference that matches a row here, so "it didn't work" can always be traced to its cause.
Going live — the three one-time steps
- Paste the Stripe secret key into
api/config.php. - Add a Stripe webhook pointing at
https://lmaesthetics.co.uk/api/webhook.php(events:checkout.session.completed,payment_intent.succeeded) and paste its signing secret into the same file. - Change both passwords in the same file.
To rehearse everything without Stripe, set STRIPE_SIMULATE to true —
a banner marks the admin app so simulation can never be mistaken for live — and set it
back to false before launch.
Troubleshooting
- A client says payment was refused — ask for the six-character reference on their screen and match it in Settings → Payments log; the row names the cause.
- A track shows UNAVAILABLE — its file is missing from
music/; the lists inmusic/mp3.txtname every expected file. - A charge needs the client's bank approval — use SEND PAYMENT LINK; this is the bank's requirement, not a fault.
- Signed out unexpectedly — sign-ins last 30 days; sign in again.