Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 041a532987 | |||
| c8ca39dd83 | |||
| 363336296c | |||
| d1993f6393 | |||
| 3d28768c05 | |||
| f20fa6fcb4 | |||
| 8d56cc0383 | |||
| f7537ae78e | |||
| c334882f83 | |||
| 45b682aff1 |
119
src/app/admin/page.tsx
Normal file
119
src/app/admin/page.tsx
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from '@/providers/themeProvider/ThemeProvider';
|
||||||
|
import ReactLenis from 'lenis/react';
|
||||||
|
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||||
|
import FooterMedia from '@/components/sections/footer/FooterMedia';
|
||||||
|
import { PlusCircle } from 'lucide-react';
|
||||||
|
|
||||||
|
export default function AdminPage() {
|
||||||
|
const navItems = [
|
||||||
|
{ name: 'Home', id: '/' },
|
||||||
|
{ name: 'Offers', id: '/#offers' },
|
||||||
|
{ name: 'Products', id: '/#products' },
|
||||||
|
{ name: 'Reviews', id: '/#testimonials' },
|
||||||
|
{ name: 'FAQs', id: '/#faq' },
|
||||||
|
{ name: 'Pickup', id: '/#contact' },
|
||||||
|
{ name: 'Admin', id: '/admin' },
|
||||||
|
{ name: 'Staff', id: '/staff' }
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="text-stagger"
|
||||||
|
defaultTextAnimation="reveal-blur"
|
||||||
|
borderRadius="rounded"
|
||||||
|
contentWidth="mediumSmall"
|
||||||
|
sizing="largeSmall"
|
||||||
|
background="blurBottom"
|
||||||
|
cardStyle="outline"
|
||||||
|
primaryButtonStyle="primary-glow"
|
||||||
|
secondaryButtonStyle="layered"
|
||||||
|
headingFontWeight="semibold"
|
||||||
|
>
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingInline
|
||||||
|
navItems={navItems}
|
||||||
|
brandName="VM Super Value"
|
||||||
|
button={{ text: 'Order Pickup', href: '/#contact' }}
|
||||||
|
animateOnLoad={true}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="min-h-screen flex items-center justify-center bg-background text-foreground py-20 px-4 sm:px-6 lg:px-8">
|
||||||
|
<div className="max-w-4xl w-full space-y-8 text-center">
|
||||||
|
<PlusCircle size={64} className="mx-auto text-primary-cta" />
|
||||||
|
<h1 className="text-5xl font-extrabold tracking-tight sm:text-6xl lg:text-7xl">
|
||||||
|
Admin Dashboard
|
||||||
|
</h1>
|
||||||
|
<p className="mt-4 text-xl text-foreground">
|
||||||
|
Welcome, Admin. Here you can upload new product offers, update existing inventory, and manage promotional images.
|
||||||
|
</p>
|
||||||
|
<div className="mt-6 flex flex-col items-center justify-center sm:flex-row space-y-4 sm:space-y-0 sm:space-x-4">
|
||||||
|
<button className="bg-primary-cta text-white py-3 px-6 rounded-lg text-lg font-medium hover:opacity-90 transition-opacity">
|
||||||
|
Upload New Offer
|
||||||
|
</button>
|
||||||
|
<button className="bg-secondary-cta text-white py-3 px-6 rounded-lg text-lg font-medium hover:opacity-90 transition-opacity">
|
||||||
|
Manage Products
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterMedia
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/burj-khalifa-tower-this-skyscraper-is-tallest-man-made-structure-world-measuring-828-m-completed-2009_231208-7567.jpg?_wi=2"
|
||||||
|
imageAlt="Modern supermarket exterior at sunset"
|
||||||
|
logoText="VM Super Value"
|
||||||
|
columns={[
|
||||||
|
{
|
||||||
|
title: 'Shop',
|
||||||
|
items: [
|
||||||
|
{ label: 'Daily Offers', href: '/#offers' },
|
||||||
|
{ label: 'Product Catalog', href: '/#products' },
|
||||||
|
{ label: 'New Arrivals', href: '#' },
|
||||||
|
{ label: 'Wholesale Enquiries', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Customer Service',
|
||||||
|
items: [
|
||||||
|
{ label: 'Pickup Information', href: '/#faq' },
|
||||||
|
{ label: 'Contact Us', href: '/#contact' },
|
||||||
|
{ label: 'FAQs', href: '/#faq' },
|
||||||
|
{ label: 'Feedback', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'About Us',
|
||||||
|
items: [
|
||||||
|
{ label: 'Our Story', href: '/#about' },
|
||||||
|
{ label: 'Testimonials', href: '/#testimonials' },
|
||||||
|
{ label: 'Careers', href: '#' },
|
||||||
|
{ label: 'Store Location', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Legal',
|
||||||
|
items: [
|
||||||
|
{ label: 'Privacy Policy', href: '#' },
|
||||||
|
{ label: 'Terms of Service', href: '#' },
|
||||||
|
{ label: 'Return Policy', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Internal',
|
||||||
|
items: [
|
||||||
|
{ label: 'Admin', href: '/admin' },
|
||||||
|
{ label: 'Staff', href: '/staff' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]}
|
||||||
|
copyrightText="© 2024 VM Super Value. All rights reserved."
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -191,23 +191,23 @@ export default function LandingPage() {
|
|||||||
useInvertedBackground={true}
|
useInvertedBackground={true}
|
||||||
products={[
|
products={[
|
||||||
{
|
{
|
||||||
id: "p1", name: "Organic Red Apples", price: "$3.99/lb", imageSrc: "http://img.b2bpic.net/free-photo/juicy-fresh-apples-wooden-rustic-tray_114579-61904.jpg", imageAlt: "Vibrant red organic apples", rating: 5,
|
id: "p1", name: "Organic Red Apples", price: "₹3.99/lb", imageSrc: "http://img.b2bpic.net/free-photo/juicy-fresh-apples-wooden-rustic-tray_114579-61904.jpg", imageAlt: "Vibrant red organic apples", rating: 5
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p2", name: "Fresh Green Broccoli", price: "$2.49/lb", imageSrc: "http://img.b2bpic.net/free-photo/top-view-green-broccoli-along-with-mushrooms-grey-floor_140725-13457.jpg", imageAlt: "Fresh organic broccoli florets", rating: 4,
|
id: "p2", name: "Fresh Green Broccoli", price: "₹2.49/lb", imageSrc: "http://img.b2bpic.net/free-photo/top-view-green-broccoli-along-with-mushrooms-grey-floor_140725-13457.jpg", imageAlt: "Fresh organic broccoli florets", rating: 4
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p3", name: "Premium Whole Milk", price: "$4.29/gallon", imageSrc: "http://img.b2bpic.net/free-photo/clear-glass-bottle-filled-with-white-liquid_209204-9.jpg", imageAlt: "Carton of premium whole milk", rating: 5,
|
id: "p3", name: "Premium Whole Milk", price: "₹4.29/gallon", imageSrc: "http://img.b2bpic.net/free-photo/clear-glass-bottle-filled-with-white-liquid_209204-9.jpg", imageAlt: "Carton of premium whole milk", rating: 5
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p4", name: "Artisan Sourdough Bread", price: "$5.75", imageSrc: "http://img.b2bpic.net/free-photo/brown-cookies-white-textile_209848-69.jpg", imageAlt: "Freshly baked artisan sourdough bread", rating: 5,
|
id: "p4", name: "Artisan Sourdough Bread", price: "₹5.75", imageSrc: "http://img.b2bpic.net/free-photo/brown-cookies-white-textile_209848-69.jpg", imageAlt: "Freshly baked artisan sourdough bread", rating: 5
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p5", name: "Wild Caught Salmon Fillet", price: "$12.99/lb", imageSrc: "http://img.b2bpic.net/free-photo/delicious-food-groups-arrangement_23-2149235821.jpg", imageAlt: "Fresh wild-caught salmon fillet", rating: 4,
|
id: "p5", name: "Wild Caught Salmon Fillet", price: "₹12.99/lb", imageSrc: "http://img.b2bpic.net/free-photo/delicious-food-groups-arrangement_23-2149235821.jpg", imageAlt: "Fresh wild-caught salmon fillet", rating: 4
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: "p6", name: "Gourmet Cheese Selection", price: "$9.50", imageSrc: "http://img.b2bpic.net/free-photo/delicious-cheese-table_114579-8837.jpg", imageAlt: "Selection of gourmet cheeses", rating: 5,
|
id: "p6", name: "Gourmet Cheese Selection", price: "₹9.50", imageSrc: "http://img.b2bpic.net/free-photo/delicious-cheese-table_114579-8837.jpg", imageAlt: "Selection of gourmet cheeses", rating: 5
|
||||||
},
|
}
|
||||||
]}
|
]}
|
||||||
title="Explore Our Premium Selection"
|
title="Explore Our Premium Selection"
|
||||||
description="Discover a vast variety of high-quality products, from daily essentials to gourmet delights. Find exactly what you need with ease and add to your pickup cart."
|
description="Discover a vast variety of high-quality products, from daily essentials to gourmet delights. Find exactly what you need with ease and add to your pickup cart."
|
||||||
@@ -299,19 +299,19 @@ export default function LandingPage() {
|
|||||||
description="Ready to skip the line? Fill out the form below with your details and preferred pickup time, and we'll have your order ready for you."
|
description="Ready to skip the line? Fill out the form below with your details and preferred pickup time, and we'll have your order ready for you."
|
||||||
inputs={[
|
inputs={[
|
||||||
{
|
{
|
||||||
name: "name", type: "text", placeholder: "Your Full Name", required: true,
|
name: "name", type: "text", placeholder: "Your Full Name", required: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "phone", type: "tel", placeholder: "Phone Number", required: true,
|
name: "phone", type: "tel", placeholder: "Phone Number", required: true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "email", type: "email", placeholder: "Email Address (Optional)"},
|
name: "email", type: "email", placeholder: "Email Address (Optional)"},
|
||||||
{
|
{
|
||||||
name: "pickupTime", type: "datetime-local", placeholder: "Preferred Pickup Time", required: true,
|
name: "pickupTime", type: "datetime-local", placeholder: "Preferred Pickup Time", required: true
|
||||||
},
|
},
|
||||||
]}
|
]}
|
||||||
textarea={{
|
textarea={{
|
||||||
name: "notes", placeholder: "Any special instructions or preferences?", rows: 4,
|
name: "notes", placeholder: "Any special instructions or preferences?", rows: 4
|
||||||
}}
|
}}
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/man-checks-online-veggies-are-organic_482257-76736.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/man-checks-online-veggies-are-organic_482257-76736.jpg"
|
||||||
imageAlt="Customer picking up pre-ordered groceries at a counter"
|
imageAlt="Customer picking up pre-ordered groceries at a counter"
|
||||||
@@ -323,7 +323,7 @@ export default function LandingPage() {
|
|||||||
|
|
||||||
<div id="footer" data-section="footer">
|
<div id="footer" data-section="footer">
|
||||||
<FooterMedia
|
<FooterMedia
|
||||||
imageSrc="http://img.b2bpic.net/free-photo/burj-khalifa-tower-this-skyscraper-is-tallest-man-made-structure-world-measuring-828-m-completed-2009_231208-7567.jpg"
|
imageSrc="http://img.b2bpic.net/free-photo/burj-khalifa-tower-this-skyscraper-is-tallest-man-made-structure-world-measuring-828-m-completed-2009_231208-7567.jpg?_wi=1"
|
||||||
imageAlt="Modern supermarket exterior at sunset"
|
imageAlt="Modern supermarket exterior at sunset"
|
||||||
logoText="VM Super Value"
|
logoText="VM Super Value"
|
||||||
columns={[
|
columns={[
|
||||||
|
|||||||
119
src/app/staff/page.tsx
Normal file
119
src/app/staff/page.tsx
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
"use client";
|
||||||
|
|
||||||
|
import { ThemeProvider } from '@/providers/themeProvider/ThemeProvider';
|
||||||
|
import ReactLenis from 'lenis/react';
|
||||||
|
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
|
||||||
|
import FooterMedia from '@/components/sections/footer/FooterMedia';
|
||||||
|
import { ShoppingBag, Timer, RefreshCcw } from 'lucide-react';
|
||||||
|
|
||||||
|
export default function StaffPage() {
|
||||||
|
const navItems = [
|
||||||
|
{ name: 'Home', id: '/' },
|
||||||
|
{ name: 'Offers', id: '/#offers' },
|
||||||
|
{ name: 'Products', id: '/#products' },
|
||||||
|
{ name: 'Reviews', id: '/#testimonials' },
|
||||||
|
{ name: 'FAQs', id: '/#faq' },
|
||||||
|
{ name: 'Pickup', id: '/#contact' },
|
||||||
|
{ name: 'Admin', id: '/admin' },
|
||||||
|
{ name: 'Staff', id: '/staff' }
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<ThemeProvider
|
||||||
|
defaultButtonVariant="text-stagger"
|
||||||
|
defaultTextAnimation="reveal-blur"
|
||||||
|
borderRadius="rounded"
|
||||||
|
contentWidth="mediumSmall"
|
||||||
|
sizing="largeSmall"
|
||||||
|
background="blurBottom"
|
||||||
|
cardStyle="outline"
|
||||||
|
primaryButtonStyle="primary-glow"
|
||||||
|
secondaryButtonStyle="layered"
|
||||||
|
headingFontWeight="semibold"
|
||||||
|
>
|
||||||
|
<ReactLenis root>
|
||||||
|
<div id="nav" data-section="nav">
|
||||||
|
<NavbarLayoutFloatingInline
|
||||||
|
navItems={navItems}
|
||||||
|
brandName="VM Super Value"
|
||||||
|
button={{ text: 'Order Pickup', href: '/#contact' }}
|
||||||
|
animateOnLoad={true}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="min-h-screen flex items-center justify-center bg-background text-foreground py-20 px-4 sm:px-6 lg:px-8">
|
||||||
|
<div className="max-w-4xl w-full space-y-8 text-center">
|
||||||
|
<ShoppingBag size={64} className="mx-auto text-primary-cta" />
|
||||||
|
<h1 className="text-5xl font-extrabold tracking-tight sm:text-6xl lg:text-7xl">
|
||||||
|
Staff Order Management
|
||||||
|
</h1>
|
||||||
|
<p className="mt-4 text-xl text-foreground">
|
||||||
|
Welcome, Staff. Here you can view incoming online orders, update their pickup status, and monitor customer pickup timings.
|
||||||
|
</p>
|
||||||
|
<div className="mt-6 flex flex-col items-center justify-center sm:flex-row space-y-4 sm:space-y-0 sm:space-x-4">
|
||||||
|
<button className="bg-primary-cta text-white py-3 px-6 rounded-lg text-lg font-medium hover:opacity-90 transition-opacity flex items-center space-x-2">
|
||||||
|
<Timer size={20} /> <span>View Orders</span>
|
||||||
|
</button>
|
||||||
|
<button className="bg-secondary-cta text-white py-3 px-6 rounded-lg text-lg font-medium hover:opacity-90 transition-opacity flex items-center space-x-2">
|
||||||
|
<RefreshCcw size={20} /> <span>Update Status</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="footer" data-section="footer">
|
||||||
|
<FooterMedia
|
||||||
|
imageSrc="http://img.b2bpic.net/free-photo/burj-khalifa-tower-this-skyscraper-is-tallest-man-made-structure-world-measuring-828-m-completed-2009_231208-7567.jpg?_wi=3"
|
||||||
|
imageAlt="Modern supermarket exterior at sunset"
|
||||||
|
logoText="VM Super Value"
|
||||||
|
columns={[
|
||||||
|
{
|
||||||
|
title: 'Shop',
|
||||||
|
items: [
|
||||||
|
{ label: 'Daily Offers', href: '/#offers' },
|
||||||
|
{ label: 'Product Catalog', href: '/#products' },
|
||||||
|
{ label: 'New Arrivals', href: '#' },
|
||||||
|
{ label: 'Wholesale Enquiries', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Customer Service',
|
||||||
|
items: [
|
||||||
|
{ label: 'Pickup Information', href: '/#faq' },
|
||||||
|
{ label: 'Contact Us', href: '/#contact' },
|
||||||
|
{ label: 'FAQs', href: '/#faq' },
|
||||||
|
{ label: 'Feedback', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'About Us',
|
||||||
|
items: [
|
||||||
|
{ label: 'Our Story', href: '/#about' },
|
||||||
|
{ label: 'Testimonials', href: '/#testimonials' },
|
||||||
|
{ label: 'Careers', href: '#' },
|
||||||
|
{ label: 'Store Location', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Legal',
|
||||||
|
items: [
|
||||||
|
{ label: 'Privacy Policy', href: '#' },
|
||||||
|
{ label: 'Terms of Service', href: '#' },
|
||||||
|
{ label: 'Return Policy', href: '#' }
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'Internal',
|
||||||
|
items: [
|
||||||
|
{ label: 'Admin', href: '/admin' },
|
||||||
|
{ label: 'Staff', href: '/staff' }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]}
|
||||||
|
copyrightText="© 2024 VM Super Value. All rights reserved."
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</ReactLenis>
|
||||||
|
</ThemeProvider>
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user