Commit Graph
49 Commits
Author SHA1 Message Date
isaaccladandCursor 9e1d4d5c3d Hide header avatar on mobile and sync shared mobile nav partials.
Profile moves to the bottom nav sheet on small screens; optional search tab
support is synced from the Ladill platform template.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 12:04:09 +00:00
isaaccladandClaude Opus 4.8 75ba450938 Terminal: show the live full working-directory path in the toolbar
Deploy Ladill Hosting / deploy (push) Successful in 45s
The toolbar showed a static ~/public_html. The jailed shell now reports its cwd
via OSC 7 each prompt (jail rcfile keeps the user's prompt + emits it); xterm
captures it and the toolbar shows the full path (/home/<user>/...), updating as
the user cd's. Launcher/rcfile committed in deployment/ for reproducibility.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 07:53:48 +00:00
isaaccladandClaude Opus 4.8 d7b47e67fb Terminal: fill the viewport (height below the panel header, edge-to-edge)
Deploy Ladill Hosting / deploy (push) Successful in 34s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 07:43:56 +00:00
isaaccladandClaude Opus 4.8 01ba91d5ca Terminal: drop the redundant toolbar 'Terminal' label (page header already shows it)
Deploy Ladill Hosting / deploy (push) Successful in 1m3s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 07:36:27 +00:00
isaaccladandClaude Opus 4.8 28b4430c58 Terminal: replace macOS traffic-light dots with a 'Terminal' label
Deploy Ladill Hosting / deploy (push) Successful in 1m42s
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 07:32:49 +00:00
isaaccladandClaude Opus 4.8 77a048921c Add branded boot splash (Ladill Mail style) on app pages
Deploy Ladill Hosting / deploy (push) Successful in 31s
InjectBootSplash middleware shows a self-branded loading splash once per session
while the app boots, then fades out.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 22:11:39 +00:00
isaaccladandCursor 4ba2e86cf5 Standardize desktop topbar widgets to match CRM layout.
Deploy Ladill Hosting / deploy (push) Successful in 30s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-23 18:16:40 +00:00
isaaccladandClaude Opus 4.8 739043755f Add wallet balance widget to the profile menu (after Billing)
Deploy Ladill Hosting / deploy (push) Successful in 28s
Wallet balance peek rendered as a menu row directly under Billing, backed by
a /wallet/balance endpoint (BillingClient) and guarded by Route::has. Also
opens Afia via a direct window event for reliability.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-23 12:25:46 +00:00
isaaccladandCursor e6c2ebeee0 Bind app sessions to the platform auth session.
Deploy Ladill Hosting / deploy (push) Successful in 27s
Clear local sessions when auth.ladill.com signs out and ping the platform session from keepalive.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 08:26:30 +00:00
isaaccladandCursor 56c43a73af Fix domain purchase modal on user-layout order flows.
Deploy Ladill Hosting / deploy (push) Successful in 22s
Include the purchase modal in user-layout and stack it above the order dialog so Get a new domain opens correctly.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 19:29:02 +00:00
isaaccladandCursor c1658d9e7f Remove duplicate close button from domain purchase modal.
Deploy Ladill Hosting / deploy (push) Successful in 25s
Rely on the shared modal component's close control instead of rendering a second one in the embed header.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 19:17:29 +00:00
isaaccladandCursor 537e34cbd7 Wire Ladill domain picker and purchase modal into hosting flows.
Deploy Ladill Hosting / deploy (push) Successful in 51s
Use the Domains API for owned domains across panel, account, and order forms, with an embedded iframe purchase modal instead of redirecting to domains.ladill.com.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 18:01:23 +00:00
isaaccladandCursor 44cfb1d9b9 Fix profile dropdown 500 by using the correct auth user variable.
Deploy Ladill Hosting / deploy (push) Successful in 55s
Topbar defines $u but the menu partial was passed undefined $user.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 10:48:59 +00:00
isaaccladandCursor bb421f3dbc Fix corrupted profileMenuItems in layouts after menu propagation.
Deploy Ladill Hosting / deploy (push) Successful in 1m27s
Remove orphaned array entries that caused Blade parse errors and 500 responses on authenticated pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 10:04:14 +00:00
isaaccladandCursor 53f38ba794 Unify logged-in profile dropdown with platform account menu.
Deploy Ladill Hosting / deploy (push) Successful in 46s
Wire UserProfileMenu and shared Blade partial into topbar, mobile nav, and layouts so menu items match the account portal (Ladill Mail excluded).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 09:33:27 +00:00
isaaccladandCursor d85a7db057 Remove centralized account nav from app sidebar; redirect legacy URLs.
Deploy Ladill Hosting / deploy (push) Successful in 29s
Wallet, Billing, Team, Developers, and Support live on account.ladill.com.
Siloed sidebars keep product nav and app Settings only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 00:42:46 +00:00
isaaccladandClaude Opus 4.8 869a53d168 Sidebar: remove centralized account links; redirect Wallet/Billing to hub
Deploy Ladill Hosting / deploy (push) Successful in 44s
Remove the Wallet/Billing/Team links from the hosting sidebar (managed centrally
at account.ladill.com); keep Support (deep-links to hub) and Settings. Redirect
the now-orphaned account.wallet/account.billing routes to the central hub so
bookmarks still work.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 00:20:13 +00:00
isaaccladandClaude Opus 4.8 2ff74c45ac Remove orphaned account.team/developers routes + repoint sidebar Team
Deploy Ladill Hosting / deploy (push) Successful in 1m11s
Completes the strip: drop the local account.team* and account.developers* route
definitions (the DeveloperController + views were removed in the previous
commit) and point the sidebar Team link to the central account hub. account.switch
retained. (Previous commit landed only the deletions; this makes routes consistent.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 23:59:44 +00:00
isaaccladandClaude Opus 4.8 f206f9bef5 Strip hosting Team & Developers pages; point to central account hub
Deploy Ladill Hosting / deploy (push) Successful in 50s
Team and developer-token management now live on account.ladill.com. Remove the
local account.team* and account.developers* routes, the DeveloperController, and
the (empty) hosting Team/Developers pages; repoint the sidebar Team link to
ladill_account_url('/account/team'). The acting-account switcher (account.switch)
stays — it is load-bearing for multi-account access. Hosting developer-access
authz is already centralized via the identity API (shadow-verified + flipped).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 23:58:52 +00:00
isaaccladandCursor 5e4109384e Fix hosting profile dropdown and align menu with platform.
Deploy Ladill Hosting / deploy (push) Successful in 29s
Add home.ladill.com helper, repair click-outside handling on topbar menus, and expand profile links on desktop and mobile.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 20:40:43 +00:00
isaaccladandCursor 3c18d2f4b5 Use Ladill hosting icon in control panel sidebar.
Deploy Ladill Hosting / deploy (push) Successful in 43s
Replace the generic server glyph with hosting.svg inside the existing purple header badge.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 14:12:32 +00:00
isaaccladandCursor 01325d3edf Fix file manager select-all and delete actions.
Deploy Ladill Hosting / deploy (push) Successful in 27s
Correct a JavaScript syntax error that prevented the file manager Alpine component from loading, and include the confirm modal in the hosting panel layout so delete prompts render.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-18 13:54:18 +00:00
isaaccladandClaude Opus 4.8 a47b469320 Afia: render markdown bold in chat instead of showing raw asterisks
Deploy Ladill Hosting / deploy (push) Successful in 1m27s
Replies came back with **bold** markup that displayed literally to users.
Render the bubble as HTML (escaped first for safety) and convert **text** to
<strong>; newlines already handled by whitespace-pre-line.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-11 08:41:01 +00:00
isaaccladandCursor fabfd18a3c Fix SSO popup callback infinite loop and post-login 500.
Deploy Ladill Hosting / deploy (push) Successful in 1m3s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-09 20:21:47 +00:00
isaaccladandCursor 09911d56d9 Make SSO popup fallback URL work without controller changes.
Deploy Ladill Hosting / deploy (push) Successful in 27s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-09 16:05:35 +00:00
isaaccladandCursor 48fe96074a Fix SSO popup login 500 and add branded signed-out pages.
Deploy Ladill Hosting / deploy (push) Successful in 27s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-09 15:46:24 +00:00
isaaccladandCursor fedd01cdde Keep the app subdomain visible during Ladill SSO login and logout.
Deploy Ladill Hosting / deploy (push) Successful in 34s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-09 12:15:37 +00:00
isaaccladandCursor ca60515dfc Unify primary buttons with gradient pill design across the app.
Deploy Ladill Hosting / deploy (push) Successful in 28s
Add shared btn-primary components and plus icons on create/new actions for a consistent Ladill UI.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 22:49:27 +00:00
isaaccladandCursor 37bff3f05b Move Support link under Account in sidebar.
Deploy Ladill Hosting / deploy (push) Successful in 56s
Place Support with Account navigation instead of the Settings footer.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 20:29:12 +00:00
isaaccladandCursor 98eee39665 Add app-specific mail branding and sidebar Support links.
Deploy Ladill Hosting / deploy (push) Successful in 38s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 20:11:27 +00:00
isaaccladandCursor 79f919bb40 Pin Settings to the sidebar footer in Ladill Hosting.
Deploy Ladill Hosting / deploy (push) Successful in 36s
Move Settings out of the Account and Advanced sections into a pinned footer on both the app and control panel sidebars.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 04:45:35 +00:00
isaaccladandCursor bc08624fff Replace native confirm() dialogs with styled confirm modals.
Deploy Ladill Hosting / deploy (push) Successful in 30s
Add shared confirm-dialog component, Alpine ladillConfirm store, and
swap browser confirms for consistent bottom-sheet modals across user,
admin, and hosting flows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 21:11:04 +00:00
isaaccladandCursor e40f1d997d Show only Ladill app names in the mobile header.
Deploy Ladill Hosting / deploy (push) Successful in 29s
Remove route-based page titles and the uppercase subtitle line so mobile
headers display a single title like Ladill Bird.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 16:44:11 +00:00
isaaccladandCursor d3a379d5bc Add mobile topbar titles and show Afia on all mobile headers.
Deploy Ladill Hosting / deploy (push) Successful in 26s
Route-based subtitle and page titles replace plain app labels in mobile topbars, and the Afia AI button is visible on mobile across topbars and mobile-page-header screens.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 16:30:31 +00:00
isaaccladandCursor b7b9e5ef05 Add a mobile search page for Hosting.
Deploy Ladill Hosting / deploy (push) Successful in 27s
Return an HTML search screen from /search for browser visits and point the bottom nav Search tab at it instead of the dashboard.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 15:38:29 +00:00
isaaccladandCursor e3fd235139 Unify SSO and surface legacy ResellerClub hosting orders on the dashboard.
Deploy Ladill Hosting / deploy (push) Successful in 26s
Add silent OAuth and session keepalive, and show imported RC orders alongside
native hosting accounts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-07 06:33:16 +00:00
isaaccladandCursor c91d25eb3b Fix legacy hosting order page 500 from stale route names.
Deploy Ladill Hosting / deploy (push) Successful in 21s
Point show.blade.php at hosting.legacy.* routes and add the missing input-error component.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 20:35:18 +00:00
isaaccladandCursor d532f5b206 Fix legacy RC hosting orders not appearing after app extraction.
Deploy Ladill Hosting / deploy (push) Successful in 23s
Import RC service orders in hosting:import, map platform_id on legacy models, and wire legacy order manage links to hosting.legacy.show.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 20:31:29 +00:00
isaaccladandCursor 6a0c3d7477 Use inline SVG for domain icon in notification dropdown for portability.
Deploy Ladill Hosting / deploy (push) Successful in 19s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 18:38:52 +00:00
isaaccladandCursor 7fca4a351a Add per-app notifications and enforce hosting brand assets.
Deploy Ladill Hosting / deploy (push) Successful in 24s
Wire local notification inbox in the topbar, sync ladillhosting logo and hosting launcher icon, and fix signed-out page branding.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 18:27:39 +00:00
isaaccladandCursor a0bcf93e53 Add live topbar search for hosting accounts and sites.
Deploy Ladill Hosting / deploy (push) Successful in 20s
Wire a JSON /search endpoint and Alpine dropdown so customers can find accounts, linked domains, and orders from the hosting app header.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 18:06:58 +00:00
isaaccladandCursor 5703a00862 Show linked domains on cards and fix Email leftovers.
Deploy Ladill Hosting / deploy (push) Successful in 24s
Display hosted_sites on account cards, scope Afia and Settings to hosting,
add hosting_settings for notifications, and remove mailbox UI from the
hosting layout and account pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 17:30:40 +00:00
isaaccladandCursor c4bd4efbed Add a real hosting overview dashboard.
Deploy Ladill Hosting / deploy (push) Successful in 22s
Replace the smart redirect on /dashboard with an overview hub (stats,
recent accounts, pending orders) matching Domains and Email, and move
the full account list to /hosting/accounts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 17:21:27 +00:00
isaaccladandCursor 62d33e2a75 Remove app launcher from hosting sidebar footer.
Deploy Ladill Hosting / deploy (push) Successful in 22s
The grid launcher stays in the top bar; the duplicate footer control
cluttered the account sidebar without adding value.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 17:17:07 +00:00
isaaccladandCursor e39a47fa1f Land on account overview and import hosted sites.
Deploy Ladill Hosting / deploy (push) Successful in 25s
Route launcher and home hub entry to the account overview instead of the
control panel, label the sidebar app launcher, and extend hosting:import
to sync hosted_sites with platform_id matching for existing accounts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 17:13:46 +00:00
isaaccladandCursor 1e134a8e4b Add paystack-sheet partial for hosting account renewals.
Deploy Ladill Hosting / deploy (push) Successful in 36s
The account overview page includes this partial for mobile Paystack checkout when exiting the panel.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 17:04:44 +00:00
isaaccladandCursor a2985005ff Replace monolith user.* routes with cross-app URLs.
Deploy Ladill Hosting / deploy (push) Successful in 20s
Hosting type pages and panel views referenced platform routes that do not exist in the extracted app; link to domains, account, and servers apps instead.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 16:46:09 +00:00
isaaccladandCursor c627d83e59 Fix hosting 500s: rc_service_orders migration and account layout.
Deploy Ladill Hosting / deploy (push) Successful in 22s
Account pages were extending the email layout with undefined routes, and hosting type pages queried a missing rc_service_orders table.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 16:41:27 +00:00
isaaccladandCursor e251a4cf60 Initial Ladill Hosting app with Gitea deploy pipeline.
Deploy Ladill Hosting / deploy (push) Failing after 17s
Shared web hosting extracted from the platform monolith, with CI deploy
to /var/www/ladill-hosting matching Bird/Domains/Email.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 16:24:20 +00:00