Spaces:
Sleeping
Sleeping
File size: 5,847 Bytes
1fff71f 2e18bf2 1fff71f ee67a7f 1fff71f |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{% block title %}PrepMate - Profile and Contact Management{% endblock %}</title>
<!-- Bootstrap 5.3 CDN -->
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.0/font/bootstrap-icons.css" rel="stylesheet">
<!-- Custom CSS -->
<link rel="stylesheet" href="{{ url_for('static', filename='css/custom.css') }}">
{% block head %}{% endblock %}
</head>
<body>
<!-- Navigation -->
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">
<div class="container-fluid">
<a class="navbar-brand" href="/">
<i class="bi bi-people-fill"></i> PrepMate
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
{% if session.get('user_id') %}
<!-- Logged in navigation -->
<li class="nav-item">
<a class="nav-link" href="{{ url_for('profile.view_profile') }}">
<i class="bi bi-person-circle"></i> My Profile
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url_for('contacts.list_contacts') }}">
<i class="bi bi-people"></i> My Contacts
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url_for('settings.view_settings') }}">
<i class="bi bi-gear"></i> Settings
</a>
</li>
<li class="nav-item">
<span class="nav-link">
<i class="bi bi-person-badge"></i> {{ session.get('display_name', 'User') }}
</span>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ url_for('auth.logout') }}">
<i class="bi bi-box-arrow-right"></i> Logout
</a>
</li>
{% else %}
<!-- Not logged in -->
<li class="nav-item">
<a class="nav-link" href="{{ url_for('auth.login') }}">
<i class="bi bi-box-arrow-in-right"></i> Login
</a>
</li>
{% endif %}
</ul>
</div>
</div>
</nav>
<!-- Branded Header - Feature 013-ui-cleanup-header -->
<header class="py-3 mb-4 border-bottom">
<div class="container">
<div class="d-flex justify-content-center align-items-center gap-3">
<a href="http://memmachine.ai"
target="_blank"
rel="noopener noreferrer"
class="text-decoration-none text-dark d-flex align-items-center gap-2">
<img src="https://avatars.githubusercontent.com/u/226739620?s=48&v=4"
alt="MemMachine Logo"
width="34"
height="34"
loading="lazy">
<span class="fs-5 fw-semibold">Powered by MemMachine</span>
</a>
<a href="https://github.com/MemMachine/MemMachine"
target="_blank"
rel="noopener noreferrer"
aria-label="View MemMachine on GitHub"
class="text-dark fs-4">
<i class="bi bi-github"></i>
</a>
<a href="https://discord.gg/usydANvKqD"
target="_blank"
rel="noopener noreferrer"
aria-label="Join MemMachine Discord community"
class="text-dark fs-4">
<i class="bi bi-discord"></i>
</a>
</div>
</div>
</header>
<!-- Flash messages -->
<div class="container mt-3">
{% with messages = get_flashed_messages(with_categories=true) %}
{% if messages %}
{% for category, message in messages %}
<div class="alert alert-{{ category }} alert-dismissible fade show" role="alert">
{{ message }}
<button type="button" class="btn-close" data-bs-dismiss="alert"></button>
</div>
{% endfor %}
{% endif %}
{% endwith %}
</div>
<!-- Main content -->
<main class="container my-4">
{% block content %}{% endblock %}
</main>
<!-- Footer -->
<footer class="bg-light text-center text-muted py-3 mt-5">
<div class="container">
<p class="mb-0">© 2025 PrepMate. Profile and Contact Management.</p>
</div>
</footer>
<!-- Bootstrap JS Bundle -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
<!-- Custom JS -->
<script src="{{ url_for('static', filename='js/app.js') }}"></script>
{% block scripts %}{% endblock %}
</body>
</html>
|