Features implemented: 1. Expired QRIS order handling with dual-path approach - Product orders: QR regeneration button - Consulting orders: Immediate cancellation with slot release 2. Standardized status badge wording to "Pending" 3. Fixed TypeScript error in MemberDashboard 4. Dynamic badge colors from branding settings 5. Dynamic page title from branding settings 6. Logo/favicon file upload with auto-delete 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
26 lines
950 B
HTML
26 lines
950 B
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<!-- Title will be dynamically updated from branding settings -->
|
|
<title>Loading...</title>
|
|
<meta name="description" content="Learn. Grow. Succeed." />
|
|
<meta name="author" content="LearnHub" />
|
|
|
|
<meta property="og:title" content="LearnHub" />
|
|
<meta property="og:description" content="Learn. Grow. Succeed." />
|
|
<meta property="og:type" content="website" />
|
|
<meta property="og:image" content="https://lovable.dev/opengraph-image-p98pqg.png" />
|
|
|
|
<meta name="twitter:card" content="summary_large_image" />
|
|
<meta name="twitter:site" content="@LearnHub" />
|
|
<meta name="twitter:image" content="https://lovable.dev/opengraph-image-p98pqg.png" />
|
|
</head>
|
|
|
|
<body>
|
|
<div id="root"></div>
|
|
<script type="module" src="/src/main.tsx"></script>
|
|
</body>
|
|
</html>
|