File size: 10,029 Bytes
6db0915
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b3fa49d
 
 
 
6db0915
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b3fa49d
 
 
 
6db0915
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b1f9e13
 
6db0915
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
138
139
140
141
142
143
144
145
146
147
148
149
150
151
@inject SignInManager<IdentityUser> SignInManager
@inject UserManager<IdentityUser> UserManager
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>@ViewData["Title"] — DanStore</title>
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@600;700&display=swap" rel="stylesheet" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" />
    <link rel="stylesheet" href="~/css/site.css" asp-append-version="true" />
</head>
<body>
    <header>
        <nav class="border-b border-brand-gray-400 relative" style="border-color: #adb5bd;">
            <div class="max-w-7xl mx-auto px-4 flex items-center justify-between h-16">
                <a href="/" class="font-heading text-2xl font-bold" style="color: #2a2a3d;">DanStore</a>
                <div class="hidden lg:flex items-center gap-6">
                    <a href="/" class="text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Home</a>
                    <a href="/home/shop" class="text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Shop</a>
                    <a href="/cart" class="text-sm font-medium transition-colors duration-200 relative" style="color: #6c757d;">
                        <i class="fas fa-shopping-bag"></i>
                    </a>
                    @if (SignInManager.IsSignedIn(User))
                    {
                        @if (User.IsInRole("Admin"))
                        {
                            <a href="/admin" class="text-sm font-medium transition-colors duration-200" style="color: #2a2a3d; font-weight: 700;">Admin Panel</a>
                        }
                        <a href="/account/profile" class="text-sm font-medium transition-colors duration-200" style="color: #6c757d;">@User.Identity?.Name</a>
                        <form asp-controller="Account" asp-action="Logout" method="post" class="inline">
                            <button type="submit" class="text-sm font-medium transition-colors duration-200 btn btn-sm btn-outline-secondary" style="border: none; background: none; color: #6c757d; cursor: pointer;">Logout</button>
                        </form>
                    }
                    else
                    {
                        <a href="/account/login" class="text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Login</a>
                        <a href="/account/register" class="text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Register</a>
                    }
                </div>
                <button id="mobile-menu-btn" class="lg:hidden flex items-center text-sm font-medium" style="color: #6c757d; background: none; border: none; cursor: pointer; padding: 0.5rem;">
                    <i class="fas fa-bars text-lg"></i>
                </button>
            </div>
            <div id="mobile-menu" class="hidden lg:hidden absolute top-full left-0 w-full bg-white shadow-lg border-t z-50" style="border-color: #adb5bd;">
                <div class="px-4 py-3 space-y-3">
                    <a href="/" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Home</a>
                    <a href="/home/shop" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Shop</a>
                    <a href="/cart" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">
                        <i class="fas fa-shopping-bag mr-2"></i>Cart
                    </a>
                    @if (SignInManager.IsSignedIn(User))
                    {
                        @if (User.IsInRole("Admin"))
                        {
                            <a href="/admin" class="block text-sm font-medium" style="color: #2a2a3d; font-weight: 700;">Admin Panel</a>
                        }
                        <a href="/account/profile" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">@User.Identity?.Name</a>
                        <form asp-controller="Account" asp-action="Logout" method="post">
                            <button type="submit" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d; background: none; border: none; cursor: pointer; padding: 0;">Logout</button>
                        </form>
                    }
                    else
                    {
                        <a href="/account/login" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Login</a>
                        <a href="/account/register" class="block text-sm font-medium transition-colors duration-200" style="color: #6c757d;">Register</a>
                    }
                </div>
            </div>
        </nav>
    </header>

    <main>
        @RenderBody()
    </main>

    <footer class="mt-8 sm:mt-16 py-6 sm:py-12" style="background: #2a2a3d;">
        <div class="max-w-7xl mx-auto px-4">
            <div class="grid grid-cols-2 md:grid-cols-4 gap-4 sm:gap-6">
                <div>
                    <a href="/" class="font-heading text-xl sm:text-2xl font-bold" style="color: #fff;">DanStore</a>
                    <p class="text-xs sm:text-sm mt-2 sm:mt-3 leading-relaxed" style="color: #d4d8dd; max-width: 280px;">
                        Your trusted online marketplace in Pakistan. Quality products, secure payments, and fast delivery.
                    </p>
                </div>
                <div>
                    <h4 class="text-xs sm:text-sm font-semibold uppercase tracking-wide mb-2 sm:mb-3" style="color: #fff;">Shop</h4>
                    <ul class="space-y-1 sm:space-y-1.5">
                        <li><a href="/" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">All Products</a></li>
                        <li><a href="/#new-arrivals" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">New Arrivals</a></li>
                        <li><a href="/#best-sellers" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Best Sellers</a></li>
                    </ul>
                </div>
                <div>
                    <h4 class="text-xs sm:text-sm font-semibold uppercase tracking-wide mb-2 sm:mb-3" style="color: #fff;">Help</h4>
                    <ul class="space-y-1 sm:space-y-1.5">
                        <li><a href="/home/faq" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">FAQ</a></li>
                        <li><a href="/home/contact" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Contact Us</a></li>
                    </ul>
                </div>
                <div>
                    <h4 class="text-xs sm:text-sm font-semibold uppercase tracking-wide mb-2 sm:mb-3" style="color: #fff;">Account</h4>
                    <ul class="space-y-1 sm:space-y-1.5">
                        <li><a href="/account/login" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Login</a></li>
                        <li><a href="/account/register" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Register</a></li>
                        <li><a href="/account/profile" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Profile</a></li>
                        <li><a href="/account/orders" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Orders</a></li>
                        <li><a href="/cart" class="text-xs sm:text-sm transition-colors duration-200" style="color: #d4d8dd;">Cart</a></li>
                    </ul>
                </div>
            </div>
            <div class="border-t mt-4 sm:mt-6 pt-4 sm:pt-6 text-center text-xs sm:text-sm" style="border-color: #8a9aa8; color: #d4d8dd;">
                &copy; 2026 DanStore. All rights reserved.
            </div>
        </div>
    </footer>

    <script src="https://code.jquery.com/jquery-3.7.1.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script>
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha256-Cg1VW4QlW4kNRmBmBvq1KmC26hB1sH9VGQk2qN2jW4=" crossorigin="anonymous"></script>
    <script src="~/js/site.js" asp-append-version="true"></script>
    <script>
        document.addEventListener('DOMContentLoaded', function() {
            var toasts = document.querySelectorAll('.alert-toast');
            toasts.forEach(function(t) {
                setTimeout(function() {
                    t.style.transition = 'opacity 0.3s';
                    t.style.opacity = '0';
                    setTimeout(function() { t.remove(); }, 300);
                }, 2000);
            });
            document.querySelectorAll('.password-toggle').forEach(function(btn) {
                btn.addEventListener('click', function() {
                    var input = this.parentElement.querySelector('input');
                    var icon = this.querySelector('i');
                    if (input.type === 'password') {
                        input.type = 'text';
                        icon.classList.replace('fa-eye', 'fa-eye-slash');
                    } else {
                        input.type = 'password';
                        icon.classList.replace('fa-eye-slash', 'fa-eye');
                    }
                });
            });
        });
    </script>
    @await RenderSectionAsync("Scripts", required: false)
</body>
</html>