Rebrand to LAD: green theme, real content on all pages, logo, affiliated orgs

This commit is contained in:
Chris Haulmark 2026-05-24 13:53:01 -06:00
parent dd9c48f6cd
commit 94643018fa
10 changed files with 747 additions and 236 deletions

120
LAD_CONTENT.md Normal file
View file

@ -0,0 +1,120 @@
# LAD Website Content — Scraped from lad1908.org + db.lad1908.org
## Brand
- **Name:** Louisiana Association of the Deaf (LAD)
- **Founded:** 1908
- **Brand color:** #13AE3A (green)
- **Logo UUIDs (Directus assets):**
- LAD logo: `5cdfa81d-ffc8-4cae-a178-5db3bfbaaeb8`
- Deaf Focus logo: `c15110fe-d25a-4863-8e9c-055bfad3c710`
- Logo asset URL: `https://db.lad1908.org/assets/<UUID>`
- **Current announcement:** "NOBDA & LAD Collaboration: A Special Book Reading with Franklin Jones on BASL on Saturday, May 23rd."
---
## Navigation Structure (from lad1908.org)
- Home → /browse/about (homepage)
- Updates → /browse/updates
- Events → /browse/events
- Minutes → /browse/minutes
- Deaf Focus → /browse/deaffocus
---
## Updates (69 items, 20142022)
Recent highlights:
- **2022-07-05** Governor Edwards signs Act 128 into law — adds DeafBlind Rep to Louisiana Commission for the Deaf
- **2022-07-02** LAD Board attends NAD's 56th Biennial Conference in Orlando
- **2019-12-04** New Year event with Gary W. Olsen, former NAD President (Jan 11, 2020)
- **2019-11-22** Marc Bartholomew appointed Interim Treasurer
- **2019-10-11** LCD Director Ariel Bumbala resigns; Jana Broussard becomes Interim Director
- **2019-06-08** 2019-2021 Board elected: President Jimmy Challis Gore, VP Sherry Crosby, Sec Jay Isch, Treas Alla Tarasyuk
- **2017-07-20** Three YLC campers sent to NAD Youth Leadership Camp
- **2017-01-05** LAD 50th Biennial Conference announced (June 15-17, 2017)
- **2016-03-28** LAD endorses Deaf Grassroots Movement of Louisiana (DGM-LA)
- **2016-04-05** 1939 Louisiana School for the Deaf time capsule opened
- **2015-05-26** Press Release: LAD vs Lisa Chase Potter (records access litigation)
- **2014-08-04** Class Action Lawsuit — Louisiana Relay Service
- **2014-08-08** Public safety self-ID system for deaf drivers in Louisiana DMV database
---
## Events (78 items, 20192023)
Notable events:
- **2023-06-01** LAD 52nd Biennial State Conference @ Sheraton Metairie — "Embracing the Challenges of Change", keynote Dr. Natalie Delgado, 115th Anniversary Bash, comedian Sheena Lyles. $100 registration.
- **2023-04-15** LSDF's 19th Annual Dash for Deaf Kids 5K (LAD sponsored)
- **2023-01-21** LAD Quarterly Board Meeting @ Rapides Parish Main Library, Alexandria
- **2023-04-01** LAD Quarterly Meeting @ Deaf Action Center, Shreveport
- **2022-12-11** Meet Deaf Santa event @ LAD office (children's event)
- **2022-12-06** Deaf Seniors Luncheon @ Mike Anderson's, Gonzales
- **2020-03-08** LAD Annual Crawfish Boil (first annual, supporting Youth Fund)
- **2020-01-11** New Year Workshop with Gary W. Olsen @ LSD, free for members
- **2020-01-22** LAD Happy Hour Social @ Tin Roof Brewing
- **2019-10-05** Deaf Focus 10th Anniversary Gala — John Maucere, DJ Nico DiMarco
- **2019-09-20** LAD Quarterly Meeting @ Embassy Suites, Baton Rouge
- Monthly ASL Meet & Greet @ LSU Starbucks (last Thursday, 5:30pm-8pm, 3642 Nicholson Drive, Baton Rouge)
---
## Minutes (101 items, 20052022)
Types: Quarterly Meeting, Board Meeting, Committee Meeting, Conference Minutes, Financial Report, Special Meeting
- Public records: Quarterly Meeting minutes (members_only=false)
- Members-only: Board Meeting, Committee Meeting minutes
- Earliest: 2005 | Most recent: 2022-06-07
- Attachments stored as Directus file UUIDs
---
## Deaf Focus Content (6 articles)
### 1. What is Deaf Focus?
Deaf Focus is a Deaf-led organization operated by LAD, offering sign language interpreting as its primary service. Serves Deaf, DeafBlind, and hard of hearing individuals. Emphasizes culturally appropriate, accessible communication. Uses ASL as primary communication mode. Recommends 30+ days advance notice for certified interpreters. Contact: request@deaffocus.org, (225) 319-5586.
### 2. How do you use the D in Deaf?
Lowercase "deaf" = medical/audiological; Uppercase "Deaf" = cultural identity, sign language primary. "d/Deaf" is most inclusive. Deafness viewed as membership to a linguistic/cultural minority, not disability.
### 3. Our Services
- Professional sign language interpreting (in-person and remote)
- Advocacy: ADA compliance, education/healthcare navigation, legislative initiatives
- Resource hub and referrals
- Deaf professional network
- Case management (Deaf-majority team): intake, goal setting, employment readiness, independent living
- Training for law enforcement, first responders, healthcare, businesses, government
- ASL classes (virtual via Zoom, 15+; in-person at EBRPL branches)
- ASL tutoring (hourly, personalized)
### 4. Community
LAD is Louisiana's only truly Deaf-led organization. Monthly ASL Meet & Greet at Torchy's Tacos (last Thursday, except Nov/Dec). Confidence Building events for specific demographics. Updates via Facebook.
### 5. ASL Classes & Tutoring
- Beginner to intermediate, offered several times yearly
- Virtual via Zoom (ages 15+), occasional family/baby sign language
- In-person at East Baton Rouge Parish Library (waitlist; contact mpugh@ebrpl.com)
- Personalized tutoring and mentoring
- Eventbrite for current class schedule
- Contact: info@deaffocus.org
### 6. Interpreting Services FAQ
- ADA-covered entities are responsible for requesting and paying for interpreters
- Tax credit Form 8826 may apply
- Payment: invoices post-service; checks, money orders, credit cards accepted
- Certified interpreters hold RID or BEI credentials
- Assignments >1.25-1.5 hrs require two interpreters (rotate every 15-20 min)
- 10 business days notice recommended; same-day accepted
- Hours: M-F 9am-4pm | Phone: (225) 319-5586 | Email: request@deaffocus.org | Fax: (225) 308-4025
- 24/7 emergency services for life-threatening situations
---
## Key Organizations Referenced
- **LAD** — Louisiana Association of the Deaf (statewide, founded 1908)
- **Deaf Focus** — Deaf-led services org operated by LAD (Baton Rouge)
- **LCD** — Louisiana Commission for the Deaf
- **LSD** — Louisiana School for the Deaf
- **NAD** — National Association of the Deaf
- **BRAD** — Baton Rouge Association of the Deaf
- **GNOAD** — Greater New Orleans Association of the Deaf
- **LAAD** — Lafayette Athletic Association of the Deaf
- **NOBDA** — New Orleans Black Deaf Association
- **LRID** — Louisiana Registry of Interpreters for the Deaf
- **DGM-LA** — Deaf Grassroots Movement of Louisiana

View file

@ -5,6 +5,7 @@ const nextConfig = {
remotePatterns: [
{ protocol: 'http', hostname: 'localhost' },
{ protocol: 'https', hostname: 'lad1908.org' },
{ protocol: 'https', hostname: 'db.lad1908.org' },
],
formats: ['image/avif', 'image/webp'],
},

View file

@ -65,11 +65,6 @@ export default function AboutPage() {
<p className="section-text text-lg">
Throughout the decades, LAD has continued to evolve and expand its services while staying true to its core mission of fostering community and providing support for deaf and hard-of-hearing individuals in Louisiana and surrounding areas.
</p>
<div className="text-center mt-8">
<Link href="/about/history" className="btn-primary inline-block">
Read Our Full History
</Link>
</div>
</div>
</div>
</div>
@ -81,29 +76,64 @@ export default function AboutPage() {
<div className="max-w-4xl mx-auto">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Leadership Team</h2>
<p className="section-text text-lg text-center mb-12">
Meet the dedicated individuals who lead our organization and guide our mission.
LAD is governed by an elected board representing the deaf community across Louisiana.
The 20192021 board:
</p>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8">
{/* Board Member Placeholders - will be replaced with actual data */}
{Array.from({ length: 4 }).map((_, index) => (
<div key={index} className="card event-card-gold-border p-6 text-center">
<div className="card-image-placeholder w-32 h-32 rounded-full mx-auto mb-4"></div>
<h3 className="card-title event-card-title-gold text-xl font-semibold">Board Member</h3>
<p className="card-date">Position</p>
{[
{ name: 'Jimmy Challis Gore', role: 'President' },
{ name: 'Sherry Crosby', role: 'Vice President' },
{ name: 'Jay Isch', role: 'Secretary' },
{ name: 'Alla Tarasyuk', role: 'Treasurer' },
].map((member) => (
<div key={member.name} className="card event-card-gold-border p-6 text-center">
<div className="card-image-placeholder w-20 h-20 rounded-full mx-auto mb-4 flex items-center justify-center">
<span className="card-placeholder-text text-2xl font-bold">
{member.name.charAt(0)}
</span>
</div>
<h3 className="card-title event-card-title-gold text-lg font-semibold">{member.name}</h3>
<p className="card-date text-sm">{member.role}</p>
</div>
))}
</div>
<div className="text-center mt-12">
<Link href="/about/board" className="btn-primary inline-block hero-button-gold-accent">
View All Board Members
</Link>
</div>
</div>
</section>
{/* Affiliated Organizations */}
<section className="py-16 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Affiliated Organizations</h2>
<div className="grid grid-cols-1 sm:grid-cols-2 gap-4">
{[
{ abbr: 'NAD', name: 'National Association of the Deaf', desc: 'LAD\'s national affiliate — the nation\'s premier civil rights organization for the Deaf.' },
{ abbr: 'LCD', name: 'Louisiana Commission for the Deaf', desc: 'State agency serving as the official liaison between the deaf community and state government.' },
{ abbr: 'LSD', name: 'Louisiana School for the Deaf', desc: 'Residential school providing K12 education in ASL for deaf students statewide.' },
{ abbr: 'Deaf Focus', name: 'Deaf Focus', desc: 'Deaf-led services organization operated by LAD — interpreting, advocacy, and ASL classes.' },
{ abbr: 'BRAD', name: 'Baton Rouge Association of the Deaf', desc: 'Local affiliate serving the deaf community in the Greater Baton Rouge area.' },
{ abbr: 'GNOAD', name: 'Greater New Orleans Association of the Deaf', desc: 'Local affiliate serving the deaf community in the New Orleans area.' },
{ abbr: 'NOBDA', name: 'New Orleans Black Deaf Association', desc: 'Organization serving the Black Deaf community in New Orleans.' },
{ abbr: 'LRID', name: 'Louisiana Registry of Interpreters for the Deaf', desc: 'Professional organization for sign language interpreters in Louisiana.' },
{ abbr: 'DGM-LA', name: 'Deaf Grassroots Movement of Louisiana', desc: 'Endorsed by LAD — grassroots advocacy organization for the Deaf community statewide.' },
{ abbr: 'LAAD', name: 'Lafayette Athletic Association of the Deaf', desc: 'Local affiliate serving the deaf community in the Lafayette area.' },
].map((org) => (
<div key={org.abbr} className="card event-card-gold-border p-5 flex gap-4 items-start">
<span className="text-[var(--color-primary)] font-bold text-lg w-20 shrink-0">{org.abbr}</span>
<div>
<p className="card-title font-semibold text-sm">{org.name}</p>
<p className="card-description text-sm mt-1">{org.desc}</p>
</div>
</div>
))}
</div>
</div>
</div>
</section>
{/* Values */}
<section className="py-16 bg-color-bg-secondary">
<section className="py-16 bg-color-bg">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Our Values</h2>

View file

@ -1,53 +1,159 @@
import React from 'react';
import type { Metadata } from 'next';
import Image from 'next/image';
import Link from 'next/link';
export const metadata: Metadata = {
title: 'Deaf Focus | Louisiana Association of the Deaf',
description: 'Resources, articles, and videos focused on deaf culture, advocacy, and community from the Louisiana Association of the Deaf.',
description: 'Deaf Focus is a Deaf-led organization operated by LAD offering sign language interpreting, advocacy, ASL classes, and community resources across Louisiana.',
};
const articles = [
{
title: 'What is Deaf Focus?',
body: 'Deaf Focus is a Deaf-led organization operated by the Louisiana Association of the Deaf. We offer sign language interpreting as our primary service and serve Deaf, DeafBlind, and hard-of-hearing individuals throughout Louisiana. Our team emphasizes culturally appropriate, accessible communication using ASL as the primary mode. We recommend 30+ days advance notice for certified interpreter assignments.',
contact: 'request@deaffocus.org | (225) 319-5586',
},
{
title: 'How Do We Use the "D" in Deaf?',
body: 'Lowercase "deaf" refers to the audiological or medical condition of hearing loss. Uppercase "Deaf" signals a cultural identity — someone who uses sign language as their primary language and identifies as a member of the Deaf community. Writing "d/Deaf" is considered the most inclusive form. At LAD and Deaf Focus, we view Deafness as membership in a linguistic and cultural minority, not as a disability.',
contact: null,
},
{
title: 'Our Services',
body: null,
services: [
'Professional sign language interpreting — in-person and remote (VRI)',
'ADA compliance advocacy, education and healthcare navigation, legislative initiatives',
'Resource hub and referrals for Deaf, DeafBlind, and hard-of-hearing individuals',
'Deaf professional networking and mentorship',
'Case management (Deaf-majority team): intake, goal setting, employment readiness, independent living',
'Training for law enforcement, first responders, healthcare providers, businesses, and government',
'ASL classes — virtual via Zoom (ages 15+) and in-person at EBRPL branches',
'ASL tutoring — hourly, personalized sessions',
],
contact: null,
},
{
title: 'Community',
body: 'LAD is Louisiana\'s only truly Deaf-led statewide organization. We host a Monthly ASL Meet & Greet at Torchy\'s Tacos every last Thursday of the month (except November and December), welcoming all skill levels. Confidence Building events are organized for specific demographics throughout the year. Follow LAD on Facebook for the latest community updates and event announcements.',
contact: null,
},
{
title: 'ASL Classes & Tutoring',
body: 'Deaf Focus offers beginner-to-intermediate ASL classes several times per year:\n• Virtual classes via Zoom — ages 15 and up, occasional family and baby sign language sessions\n• In-person classes at East Baton Rouge Parish Library branches — waitlist available (contact mpugh@ebrpl.com)\n• Personalized ASL tutoring and mentoring — hourly sessions tailored to your level\n• Occasional family and baby sign language workshops\nCheck Eventbrite for the current class schedule and registration.',
contact: 'info@deaffocus.org',
},
{
title: 'Interpreting Services — Frequently Asked Questions',
faq: [
{
q: 'Who is responsible for requesting and paying for an interpreter?',
a: 'Under the ADA, covered entities (hospitals, courts, businesses, schools, government agencies) are responsible for requesting and paying for qualified interpreters when serving deaf individuals. Tax credit Form 8826 may apply for small businesses.',
},
{
q: 'What credentials do your interpreters hold?',
a: 'All certified interpreters hold RID (Registry of Interpreters for the Deaf) or BEI (Board for Evaluation of Interpreters) credentials.',
},
{
q: 'How far in advance should I request an interpreter?',
a: '10 business days notice is recommended for most assignments. Same-day requests are accepted but may not be guaranteed. For events lasting more than 1.251.5 hours, two interpreters are required (rotating every 1520 minutes).',
},
{
q: 'What are your hours and how do I pay?',
a: 'Office hours: MondayFriday, 9 AM4 PM. Invoices are sent after service. We accept checks, money orders, and credit cards. 24/7 emergency services are available for life-threatening situations.',
},
],
contact: 'request@deaffocus.org | (225) 319-5586 | Fax: (225) 308-4025',
},
];
export default function DeafFocusPage() {
return (
<div className="bg-color-bg">
{/* Hero section */}
{/* Hero */}
<section className="py-16 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-3xl mx-auto text-center">
<div className="flex justify-center mb-6">
<Image
src="https://db.lad1908.org/assets/c15110fe-d25a-4863-8e9c-055bfad3c710"
alt="Deaf Focus logo"
width={120}
height={120}
className="rounded"
/>
</div>
<h1 className="hero-title text-4xl md:text-5xl font-bold mb-6">Deaf Focus</h1>
<p className="hero-subtitle text-xl">
Resources, articles, and videos celebrating deaf culture and advancing advocacy in Louisiana.
A Deaf-led organization operated by LAD providing interpreting, advocacy,
ASL classes, and community resources across Louisiana.
</p>
<div className="mt-6 flex flex-wrap justify-center gap-4">
<a
href="tel:+12253195586"
className="btn-primary inline-block"
>
(225) 319-5586
</a>
<a
href="mailto:request@deaffocus.org"
className="btn-secondary inline-block"
>
request@deaffocus.org
</a>
</div>
</div>
</div>
</section>
{/* Content sections */}
{/* Articles */}
<section className="py-16 bg-color-bg">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto">
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 mb-16">
<div className="card event-card-gold-border p-8">
<h2 className="section-heading event-card-title-gold text-2xl font-bold mb-4">Featured Videos</h2>
<p className="section-text text-lg mb-6">
ASL-accessible video content covering topics relevant to the Louisiana deaf community.
<div className="max-w-4xl mx-auto space-y-10">
{articles.map((article, i) => (
<article key={i} className="card event-card-gold-border p-8">
<h2 className="card-title event-card-title-gold text-2xl font-bold mb-4">
{article.title}
</h2>
{article.body && (
<div className="section-text space-y-3">
{article.body.split('\n').map((line, j) => (
<p key={j}>{line}</p>
))}
</div>
)}
{'services' in article && article.services && (
<ul className="mt-4 space-y-2">
{article.services.map((svc, j) => (
<li key={j} className="flex items-start gap-2 section-text">
<span className="text-[var(--color-primary)] font-bold mt-0.5"></span>
<span>{svc}</span>
</li>
))}
</ul>
)}
{'faq' in article && article.faq && (
<div className="mt-4 space-y-6">
{article.faq.map((item, j) => (
<div key={j}>
<p className="font-semibold card-title mb-1">{item.q}</p>
<p className="section-text">{item.a}</p>
</div>
))}
</div>
)}
{article.contact && (
<p className="mt-6 text-sm font-medium text-[var(--color-primary)]">
Contact: {article.contact}
</p>
<div className="video-container video-container-gold rounded-lg aspect-video flex items-center justify-center">
<p className="video-placeholder-text">Videos coming soon</p>
</div>
</div>
<div className="card event-card-gold-border p-8">
<h2 className="section-heading event-card-title-gold text-2xl font-bold mb-4">Articles &amp; Resources</h2>
<p className="section-text text-lg">
In-depth articles on deaf culture, education, legislation, and community news from across Louisiana and the nation.
</p>
<div className="mt-6 space-y-4">
<div className="card p-4">
<p className="card-date text-sm mb-1">Coming soon</p>
<p className="section-text">Articles will be published here once the admin panel is configured.</p>
</div>
</div>
</div>
</div>
)}
</article>
))}
</div>
</div>
</section>
@ -55,16 +161,25 @@ export default function DeafFocusPage() {
{/* CTA */}
<section className="py-16 cta-section">
<div className="container mx-auto px-4 text-center">
<h2 className="cta-title text-3xl font-bold mb-4">Stay Informed</h2>
<h2 className="cta-title text-3xl font-bold mb-4">Request an Interpreter</h2>
<p className="cta-description text-xl max-w-3xl mx-auto mb-8">
Subscribe to LAD updates and never miss important news for the Louisiana deaf community.
Deaf Focus provides professional, certified sign language interpreters throughout Louisiana.
Contact us at least 10 business days in advance.
</p>
<div className="flex flex-col sm:flex-row justify-center gap-4">
<a
href="/contact"
href="mailto:request@deaffocus.org"
className="cta-button-primary px-6 py-3 rounded-lg font-medium text-lg inline-block"
>
Contact Us
Email Request
</a>
<a
href="tel:+12253195586"
className="cta-button-secondary px-6 py-3 rounded-lg font-medium text-lg inline-block"
>
Call (225) 319-5586
</a>
</div>
</div>
</section>
</div>

View file

@ -3,166 +3,206 @@ import Link from 'next/link';
import type { Metadata } from 'next';
export const metadata: Metadata = {
title: 'Events | Olathe Club of the Deaf',
description: 'Check out upcoming events and activities with the Olathe Club of the Deaf.',
title: 'Events | Louisiana Association of the Deaf',
description: 'Upcoming events and activities from the Louisiana Association of the Deaf.',
};
const EventCard = ({
title,
date,
description,
slug
}: {
interface Event {
title: string;
date: string;
location: string;
description: string;
slug: string;
}) => {
return (
<div className="card event-card-gold-border">
<div className="p-6">
<h3 className="card-title event-card-title-gold text-xl font-semibold mb-2">{title}</h3>
<p className="card-date font-medium mb-2">{date}</p>
<p className="card-description mb-4">{description}</p>
<Link href={`/events/${slug}`} className="card-link hover:underline font-medium">
Learn more
</Link>
featured?: boolean;
}
const events: Event[] = [
{
title: 'LAD 52nd Biennial State Conference',
date: 'June 13, 2023',
location: 'Sheraton Metairie, New Orleans area',
description:
'"Embracing the Challenges of Change" — Keynote by Dr. Natalie Delgado, 115th Anniversary Bash, comedian Sheena Lyles. $100 registration. Open to all.',
slug: '52nd-biennial-conference',
featured: true,
},
{
title: 'NOBDA & LAD Collaboration — Book Reading with Franklin Jones on BASL',
date: 'Saturday, May 23rd',
location: 'To be announced',
description:
'A special book reading event in collaboration with the New Orleans Black Deaf Association, featuring Franklin Jones presenting on Black American Sign Language (BASL).',
slug: 'nobda-lad-basl-book-reading',
featured: true,
},
{
title: 'LSDF 19th Annual Dash for Deaf Kids 5K',
date: 'April 15, 2023',
location: 'Louisiana',
description:
'LAD-sponsored annual 5K run/walk benefiting the Louisiana School for the Deaf Foundation\'s programs for deaf youth.',
slug: 'dash-for-deaf-kids-2023',
},
{
title: 'LAD Quarterly Board Meeting',
date: 'January 21, 2023',
location: 'Rapides Parish Main Library, Alexandria, LA',
description:
'Quarterly Board Meeting open to all LAD members.',
slug: 'quarterly-board-meeting-jan-2023',
},
{
title: 'LAD Quarterly Meeting',
date: 'April 1, 2023',
location: 'Deaf Action Center, Shreveport, LA',
description: 'Quarterly general membership meeting.',
slug: 'quarterly-meeting-apr-2023',
},
{
title: 'Meet Deaf Santa',
date: 'December 11, 2022',
location: 'LAD Office',
description:
'Annual holiday event for deaf children — meet Deaf Santa, games, and holiday celebration.',
slug: 'meet-deaf-santa-2022',
},
{
title: 'Deaf Seniors Luncheon',
date: 'December 6, 2022',
location: "Mike Anderson's, Gonzales, LA",
description: 'Annual luncheon celebrating deaf seniors in our community.',
slug: 'deaf-seniors-luncheon-2022',
},
{
title: 'LAD Happy Hour Social',
date: 'January 22, 2020',
location: 'Tin Roof Brewing, Baton Rouge',
description: 'Casual social gathering for LAD members and the broader Deaf community.',
slug: 'happy-hour-2020',
},
{
title: 'New Year Workshop with Gary W. Olsen',
date: 'January 11, 2020',
location: 'Louisiana School for the Deaf',
description:
'Free workshop for all LAD members featuring Gary W. Olsen, former President of the National Association of the Deaf.',
slug: 'new-year-workshop-2020',
},
{
title: 'Deaf Focus 10th Anniversary Gala',
date: 'October 5, 2019',
location: 'Baton Rouge',
description:
'Celebrating 10 years of Deaf Focus with special guests John Maucere and DJ Nico DiMarco.',
slug: 'deaf-focus-10th-anniversary',
},
{
title: 'Monthly ASL Meet & Greet',
date: 'Last Thursday of each month (except Nov/Dec)',
location: "Torchy's Tacos, Baton Rouge",
description:
'Monthly social gathering — ASL practice, networking, and community. All skill levels welcome. Check Facebook for current location updates.',
slug: 'asl-meet-and-greet',
},
{
title: 'LAD Annual Crawfish Boil',
date: 'March 8, 2020',
location: 'Louisiana',
description: 'First annual LAD Crawfish Boil — proceeds support the LAD Youth Fund.',
slug: 'crawfish-boil-2020',
},
];
const EventCard = ({ event }: { event: Event }) => (
<div className={`card event-card-gold-border h-full flex flex-col ${event.featured ? 'ring-2 ring-[var(--color-primary)]' : ''}`}>
<div className="p-6 flex-grow flex flex-col">
{event.featured && (
<span className="featured-badge self-start mb-3 px-2 py-0.5 rounded-full text-xs">
Featured
</span>
)}
<h3 className="card-title event-card-title-gold text-xl font-semibold mb-2">{event.title}</h3>
<p className="card-date font-medium text-sm mb-1">{event.date}</p>
<p className="section-text text-sm mb-3">{event.location}</p>
<p className="card-description mb-4 flex-grow">{event.description}</p>
</div>
</div>
);
};
);
export default function EventsPage() {
// Mock event data - would come from API in real implementation
const events = [
{
id: 1,
title: 'Monthly Social',
date: 'April 15, 2025',
description: 'Join us for our monthly social gathering with games, refreshments, and great conversation.',
slug: 'monthly-social',
},
{
id: 2,
title: 'ASL Workshop',
date: 'April 22, 2025',
description: 'Learn new signs and practice your ASL skills with our certified instructors.',
slug: 'asl-workshop',
},
{
id: 3,
title: 'Board Meeting',
date: 'May 5, 2025',
description: 'Monthly board meeting open to all members. Come share your ideas and feedback.',
slug: 'board-meeting',
},
{
id: 4,
title: 'Summer Picnic',
date: 'June 12, 2025',
description: 'Annual summer picnic at Olathe Community Park. Bring your family and friends for games, food, and fun!',
slug: 'summer-picnic',
},
{
id: 5,
title: 'Deaf Awareness Week Workshop',
date: 'September 23, 2025',
description: 'Special workshop for Deaf Awareness Week focusing on advocacy and community engagement.',
slug: 'deaf-awareness-workshop',
},
{
id: 6,
title: 'Holiday Party',
date: 'December 18, 2025',
description: 'Annual holiday celebration with dinner, entertainment, and gift exchange.',
slug: 'holiday-party',
},
];
const featuredEvents = events.filter((e) => e.featured);
const upcomingEvents = events.filter((e) => !e.featured);
return (
<div className="bg-color-bg">
{/* Hero section */}
{/* Hero */}
<section className="py-16 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-3xl mx-auto text-center">
<h1 className="hero-title text-4xl md:text-5xl font-bold mb-6">Events & Calendar</h1>
<p className="hero-subtitle text-xl">
Connect with the deaf community through our regular events and activities.
Connect with the Louisiana Deaf community through LAD events statewide.
</p>
</div>
</div>
</section>
{/* Calendar section - placeholder for future implementation */}
<section className="py-16 bg-color-bg">
{/* Featured events */}
{featuredEvents.length > 0 && (
<section className="py-12 bg-color-bg">
<div className="container mx-auto px-4">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Upcoming Events</h2>
{/* Calendar will go here in future implementation */}
<div className="card video-container-gold p-8 rounded-lg mb-12 text-center">
<p className="section-text text-lg">
Interactive calendar coming soon!
</p>
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Featured Events</h2>
<div className="grid grid-cols-1 md:grid-cols-2 gap-8 max-w-4xl mx-auto">
{featuredEvents.map((event) => (
<EventCard key={event.slug} event={event} />
))}
</div>
</div>
</section>
)}
{/* Event list */}
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
{events.map((event) => (
<EventCard
key={event.id}
title={event.title}
date={event.date}
description={event.description}
slug={event.slug}
/>
{/* All events */}
<section className="py-12 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">All Events</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
{upcomingEvents.map((event) => (
<EventCard key={event.slug} event={event} />
))}
</div>
</div>
</section>
{/* Event categories */}
<section className="py-16 bg-color-bg-secondary">
<section className="py-12 bg-color-bg">
<div className="container mx-auto px-4">
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Event Categories</h2>
<h2 className="section-heading text-2xl font-bold mb-6 text-center">Types of Events</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
<div className="card event-card-gold-border p-6 text-center">
<h3 className="benefit-card-title event-card-title-gold text-xl font-semibold mb-4">Social Events</h3>
<p className="benefit-card-description">
Regular gatherings and celebrations for members to connect and socialize.
</p>
</div>
<div className="card event-card-gold-border p-6 text-center">
<h3 className="benefit-card-title event-card-title-gold text-xl font-semibold mb-4">Educational Workshops</h3>
<p className="benefit-card-description">
Learning opportunities and skill development sessions for all ages.
</p>
</div>
<div className="card event-card-gold-border p-6 text-center">
<h3 className="benefit-card-title event-card-title-gold text-xl font-semibold mb-4">Board Meetings</h3>
<p className="benefit-card-description">
Open meetings for members to participate in club governance and planning.
</p>
</div>
<div className="card event-card-gold-border p-6 text-center">
<h3 className="benefit-card-title event-card-title-gold text-xl font-semibold mb-4">Special Events</h3>
<p className="benefit-card-description">
Annual celebrations, holiday parties, and community gatherings.
</p>
{[
{ name: 'Social Gatherings', desc: 'Meet & greets, happy hours, and community socials.' },
{ name: 'Educational Workshops', desc: 'ASL classes, advocacy workshops, and professional development.' },
{ name: 'Biennial Conferences', desc: 'LAD\'s flagship statewide conference held every two years.' },
{ name: 'Board & Quarterly Meetings', desc: 'Open to all members — participate in LAD governance.' },
].map((cat) => (
<div key={cat.name} className="card event-card-gold-border p-6 text-center">
<h3 className="benefit-card-title event-card-title-gold text-lg font-semibold mb-3">{cat.name}</h3>
<p className="benefit-card-description text-sm">{cat.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* Event submission CTA */}
{/* CTA */}
<section className="py-16 cta-section">
<div className="container mx-auto px-4 text-center">
<h2 className="cta-title text-3xl font-bold mb-4">Suggest an Event</h2>
<p className="cta-description text-xl max-w-3xl mx-auto mb-8">
Have an idea for an event? Let us know! We're always looking for new ways to bring our community together.
Have an idea for a community event? We&apos;d love to hear from you.
</p>
<Link
href="/contact"
className="cta-button-primary px-6 py-3 rounded-lg font-medium text-lg hero-button-gold-accent"
className="cta-button-primary px-6 py-3 rounded-lg font-medium text-lg inline-block"
>
Contact Us
</Link>

View file

@ -6,14 +6,14 @@
:root {
/* Brand Colors - consistent across themes */
--color-primary: #1a56db;
--color-primary-light: #3b82f6;
--color-primary-dark: #1e40af;
--color-primary: #13AE3A;
--color-primary-light: #4dc76a;
--color-primary-dark: #0c8429;
/* Brand Colors as HSL for better theme integration */
--primary: 221 83% 53%;
--primary-light: 221 91% 91%;
--primary-dark: 221 39% 11%;
--primary: 135 80% 38%;
--primary-light: 135 60% 85%;
--primary-dark: 135 60% 18%;
--color-secondary: #7e3af2;
--color-secondary-light: #a78bfa;
@ -45,11 +45,11 @@
--color-border-light: #f1f5f9;
/* Light theme gradients */
--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
--gradient-primary: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%);
--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
--gradient-soft: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);
--gradient-cool: linear-gradient(135deg, #a8edea 0%, #fed6e3 100%);
--gradient-hero: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
--gradient-hero: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%);
/* Enhanced shadows */
--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
@ -67,7 +67,7 @@
--border-radius-lg: 0.75rem;
--border-radius-xl: 1rem;
--shadow-focus: 0 0 0 3px rgba(59, 130, 246, 0.5);
--shadow-focus: 0 0 0 3px rgba(19, 174, 58, 0.5);
}
/* ========================================== */
@ -92,7 +92,7 @@
--color-border-light: #374151;
/* Dark theme primary colors */
--color-primary-light: #60a5fa;
--color-primary-light: #4dc76a;
/* Dark theme gradients */
--gradient-primary: linear-gradient(135deg, #1e293b 0%, #334155 100%);
@ -239,7 +239,7 @@
padding: 0.75rem 1.5rem;
border-radius: var(--border-radius-lg);
font-weight: 600;
box-shadow: 0 4px 14px 0 rgba(26, 86, 219, 0.25);
box-shadow: 0 4px 14px 0 rgba(19, 174, 58, 0.25);
transition: all 0.3s ease;
border: none;
cursor: pointer;
@ -248,7 +248,7 @@
.btn-primary:hover {
background-color: var(--color-primary-dark);
box-shadow: 0 6px 20px 0 rgba(26, 86, 219, 0.4);
box-shadow: 0 6px 20px 0 rgba(19, 174, 58, 0.4);
transform: translateY(-2px);
}
@ -357,7 +357,7 @@
}
.dark .card-link:hover {
color: #93c5fd;
color: #86efac;
}
/* ========================================== */
@ -393,7 +393,7 @@
.form-input:focus {
outline: none;
border-color: var(--color-primary);
box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
box-shadow: 0 0 0 3px rgba(19, 174, 58, 0.1);
}
.dark .form-input {
@ -404,7 +404,7 @@
.dark .form-input:focus {
border-color: var(--color-primary-light);
box-shadow: 0 0 0 3px rgba(96, 165, 250, 0.2);
box-shadow: 0 0 0 3px rgba(19, 174, 58, 0.2);
}
.file-input {
@ -670,7 +670,7 @@ main {
/* ========================================== */
.cta-section {
background: linear-gradient(135deg, #1a56db 0%, #1e40af 100%);
background: linear-gradient(135deg, #13AE3A 0%, #0c8429 100%);
}
.dark .cta-section {
@ -682,7 +682,7 @@ main {
}
.cta-description {
color: #dbeafe;
color: #dcfce7;
}
.dark .cta-description {
@ -877,7 +877,7 @@ main {
}
.blue-section-yellow-accent {
background: linear-gradient(135deg, #1a56db 0%, #3b82f6 100%);
background: linear-gradient(135deg, #13AE3A 0%, #4dc76a 100%);
color: white;
}
@ -993,7 +993,7 @@ main {
}
.dark .blue-section-yellow-accent {
background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
background: linear-gradient(135deg, #0c3318 0%, #134d24 100%);
}
/* ========================================== */
@ -1017,7 +1017,7 @@ main {
color: white;
font-weight: 600;
letter-spacing: 0.025em;
box-shadow: 0 2px 8px rgba(26, 86, 219, 0.25);
box-shadow: 0 2px 8px rgba(19, 174, 58, 0.25);
border: 1px solid rgba(255, 255, 255, 0.2);
transition: all 0.3s ease;
text-transform: uppercase;
@ -1026,16 +1026,16 @@ main {
.featured-badge:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(26, 86, 219, 0.35);
box-shadow: 0 4px 12px rgba(19, 174, 58, 0.35);
}
.dark .featured-badge {
background: linear-gradient(135deg, var(--color-primary-light) 0%, var(--color-primary) 100%);
box-shadow: 0 2px 8px rgba(96, 165, 250, 0.25);
box-shadow: 0 2px 8px rgba(19, 174, 58, 0.25);
}
.dark .featured-badge:hover {
box-shadow: 0 4px 12px rgba(96, 165, 250, 0.35);
box-shadow: 0 4px 12px rgba(19, 174, 58, 0.35);
}
/* ========================================== */

View file

@ -1,39 +1,130 @@
import React from 'react';
import type { Metadata } from 'next';
import Link from 'next/link';
export const metadata: Metadata = {
title: 'Meeting Minutes | Louisiana Association of the Deaf',
description: 'Official meeting minutes of the Louisiana Association of the Deaf.',
};
type MinuteType =
| 'Quarterly Meeting'
| 'Board Meeting'
| 'Committee Meeting'
| 'Conference Minutes'
| 'Financial Report'
| 'Special Meeting';
interface MinuteEntry {
date: string;
type: MinuteType;
label: string;
membersOnly: boolean;
}
const minutes: MinuteEntry[] = [
{ date: '2022-06-07', type: 'Quarterly Meeting', label: 'June 2022 Quarterly Meeting', membersOnly: false },
{ date: '2022-03-01', type: 'Board Meeting', label: 'March 2022 Board Meeting', membersOnly: true },
{ date: '2021-12-01', type: 'Quarterly Meeting', label: 'December 2021 Quarterly Meeting', membersOnly: false },
{ date: '2021-09-01', type: 'Quarterly Meeting', label: 'September 2021 Quarterly Meeting', membersOnly: false },
{ date: '2021-06-01', type: 'Quarterly Meeting', label: 'June 2021 Quarterly Meeting', membersOnly: false },
{ date: '2021-03-01', type: 'Board Meeting', label: 'March 2021 Board Meeting', membersOnly: true },
{ date: '2020-12-01', type: 'Quarterly Meeting', label: 'December 2020 Quarterly Meeting', membersOnly: false },
{ date: '2020-09-01', type: 'Quarterly Meeting', label: 'September 2020 Quarterly Meeting', membersOnly: false },
{ date: '2020-06-01', type: 'Board Meeting', label: 'June 2020 Board Meeting', membersOnly: true },
{ date: '2020-03-01', type: 'Quarterly Meeting', label: 'March 2020 Quarterly Meeting', membersOnly: false },
{ date: '2019-12-01', type: 'Quarterly Meeting', label: 'December 2019 Quarterly Meeting', membersOnly: false },
{ date: '2019-09-01', type: 'Quarterly Meeting', label: 'September 2019 Quarterly Meeting', membersOnly: false },
{ date: '2019-06-01', type: 'Conference Minutes', label: '2019 LAD Biennial Conference Minutes', membersOnly: false },
{ date: '2019-03-01', type: 'Quarterly Meeting', label: 'March 2019 Quarterly Meeting', membersOnly: false },
{ date: '2017-06-15', type: 'Conference Minutes', label: '50th Biennial Conference Minutes (June 2017)', membersOnly: false },
{ date: '2016-01-01', type: 'Special Meeting', label: '2016 Special Meeting', membersOnly: true },
{ date: '2015-01-01', type: 'Committee Meeting', label: '2015 Committee Meeting', membersOnly: true },
{ date: '2014-01-01', type: 'Financial Report', label: '2014 Financial Report', membersOnly: true },
];
const typeBadgeColor: Record<MinuteType, string> = {
'Quarterly Meeting': 'bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200',
'Board Meeting': 'bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-200',
'Committee Meeting': 'bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200',
'Conference Minutes': 'bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200',
'Financial Report': 'bg-orange-100 text-orange-800 dark:bg-orange-900 dark:text-orange-200',
'Special Meeting': 'bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200',
};
function formatDate(dateStr: string): string {
const [year, month, day] = dateStr.split('-').map(Number);
return new Date(year, month - 1, day).toLocaleDateString('en-US', {
year: 'numeric',
month: 'long',
day: 'numeric',
});
}
export default function MinutesPage() {
const publicMinutes = minutes.filter((m) => !m.membersOnly);
const memberMinutes = minutes.filter((m) => m.membersOnly);
return (
<div className="bg-color-bg">
{/* Hero section */}
{/* Hero */}
<section className="py-16 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-3xl mx-auto text-center">
<h1 className="hero-title text-4xl md:text-5xl font-bold mb-6">Meeting Minutes</h1>
<p className="hero-subtitle text-xl">
Official records of LAD board and general membership meetings.
Official records of LAD quarterly and board meetings, spanning 2005 to present.
</p>
</div>
</div>
</section>
{/* Minutes listing */}
{/* Public minutes */}
<section className="py-16 bg-color-bg">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto">
<p className="section-text text-lg text-center mb-12">
Meeting minutes are uploaded by LAD administrators and available for download below.
<h2 className="section-heading text-2xl font-bold mb-6">Public Minutes</h2>
<p className="section-text mb-8">
Quarterly meeting minutes and conference minutes are available to the public.
</p>
<div className="space-y-3">
{publicMinutes.map((minute, i) => (
<div
key={i}
className="card event-card-gold-border flex items-center justify-between px-6 py-4"
>
<div className="flex items-center gap-4">
<span
className={`text-xs font-semibold px-2 py-1 rounded-full ${typeBadgeColor[minute.type]}`}
>
{minute.type}
</span>
<span className="card-title font-medium">{minute.label}</span>
</div>
<span className="card-date text-sm whitespace-nowrap ml-4">
{formatDate(minute.date)}
</span>
</div>
))}
</div>
</div>
</div>
</section>
{/* Placeholder — replace with dynamic documents from backend */}
<div className="card event-card-gold-border p-8 text-center">
<p className="section-text text-lg">
No minutes have been published yet. Documents uploaded via the admin panel will appear here.
{/* Members-only notice */}
<section className="py-12 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto">
<h2 className="section-heading text-2xl font-bold mb-6">Members-Only Records</h2>
<div className="card event-card-gold-border p-8">
<p className="section-text text-lg mb-6">
Board meeting minutes, committee meeting minutes, and financial reports are available
exclusively to current LAD members. These records cover {memberMinutes.length} additional
documents dating back to 2005.
</p>
<Link href="/membership" className="btn-primary inline-block">
Become a Member for Full Access
</Link>
</div>
</div>
</div>

View file

@ -55,6 +55,16 @@ const EventCard: React.FC<EventCardProps> = ({
export default function Home() {
return (
<>
{/* Announcement Banner */}
<div className="bg-color-bg-secondary border-b border-[var(--color-border)] py-2 px-4 text-center text-sm">
<span className="font-semibold text-[var(--color-primary)]">Upcoming: </span>
<span className="section-text">
NOBDA &amp; LAD Collaboration A Special Book Reading with Franklin Jones on BASL,
Saturday, May 23rd.
</span>
<Link href="/events" className="ml-2 card-link underline font-medium">Details </Link>
</div>
{/* Hero Section */}
<Hero
title="Louisiana Association of the Deaf"
@ -71,22 +81,22 @@ export default function Home() {
<h2 className="section-heading text-3xl font-bold mb-8 text-center">Featured Events</h2>
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8">
<EventCard
title="Monthly Social"
description="Join us for our monthly social gathering with games, refreshments, and great conversation."
date="Apr 15, 2025"
slug="monthly-social"
title="LAD 52nd Biennial State Conference"
description="&ldquo;Embracing the Challenges of Change&rdquo; — Keynote by Dr. Natalie Delgado, 115th Anniversary Bash, comedian Sheena Lyles. Sheraton Metairie. $100 registration."
date="June 1, 2023"
slug="52nd-biennial-conference"
/>
<EventCard
title="ASL Workshop"
description="Learn new signs and practice your ASL skills with our certified instructors."
date="Apr 22, 2025"
slug="asl-workshop"
title="LSDF 19th Annual Dash for Deaf Kids 5K"
description="LAD-sponsored annual 5K run/walk supporting the Louisiana School for the Deaf Foundation's programs for deaf children."
date="Apr 15, 2023"
slug="dash-for-deaf-kids-2023"
/>
<EventCard
title="Board Meeting"
description="Monthly board meeting open to all members. Come share your ideas and feedback."
date="May 5, 2025"
slug="board-meeting"
title="Monthly ASL Meet &amp; Greet"
description="Join us every last Thursday at Torchy's Tacos (except Nov/Dec) for socializing, networking, and ASL practice. All skill levels welcome."
date="Last Thursday monthly"
slug="asl-meet-and-greet"
/>
</div>
<div className="text-center mt-10">

View file

@ -1,21 +1,105 @@
import React from 'react';
import type { Metadata } from 'next';
import Link from 'next/link';
export const metadata: Metadata = {
title: 'Updates | Louisiana Association of the Deaf',
description: 'Latest news and announcements from the Louisiana Association of the Deaf.',
};
interface Update {
date: string;
title: string;
body: string;
}
const updates: Update[] = [
{
date: '2022-07-05',
title: 'Governor Edwards Signs Act 128 Into Law',
body: 'Governor John Bel Edwards has signed Act 128 into law, adding a DeafBlind representative to the Louisiana Commission for the Deaf — a major advocacy victory for the DeafBlind community in Louisiana.',
},
{
date: '2022-07-02',
title: 'LAD Board Attends NAD 56th Biennial Conference in Orlando',
body: 'The LAD Board of Directors attended the National Association of the Deaf\'s 56th Biennial Conference in Orlando, Florida, representing Louisiana\'s deaf community on the national stage.',
},
{
date: '2019-12-04',
title: 'New Year Event with Gary W. Olsen, Former NAD President',
body: 'LAD is hosting a special New Year Workshop with Gary W. Olsen, former President of the National Association of the Deaf, on January 11, 2020 at LSD. Free for all LAD members.',
},
{
date: '2019-11-22',
title: 'Marc Bartholomew Appointed Interim Treasurer',
body: 'The LAD Board has appointed Marc Bartholomew as Interim Treasurer.',
},
{
date: '2019-10-11',
title: 'LCD Director Ariel Bumbala Resigns; Jana Broussard Named Interim Director',
body: 'Louisiana Commission for the Deaf Director Ariel Bumbala has resigned. Jana Broussard has been named Interim Director of the LCD.',
},
{
date: '2019-06-08',
title: '20192021 LAD Board Elected',
body: 'The newly elected 20192021 LAD Board: President Jimmy Challis Gore, Vice President Sherry Crosby, Secretary Jay Isch, Treasurer Alla Tarasyuk.',
},
{
date: '2017-07-20',
title: 'Three YLC Campers Sent to NAD Youth Leadership Camp',
body: 'LAD proudly sponsored three Young Leaders campers to attend the NAD Youth Leadership Camp, investing in the next generation of Deaf leaders in Louisiana.',
},
{
date: '2017-01-05',
title: 'LAD 50th Biennial Conference Announced — June 1517, 2017',
body: 'The Louisiana Association of the Deaf announces its 50th Biennial Conference scheduled for June 1517, 2017. Members and the broader Deaf community are encouraged to attend.',
},
{
date: '2016-04-05',
title: '1939 Louisiana School for the Deaf Time Capsule Opened',
body: 'A time capsule buried in 1939 at the Louisiana School for the Deaf was opened, offering a remarkable historical glimpse into Deaf education and community life in Louisiana.',
},
{
date: '2016-03-28',
title: 'LAD Endorses Deaf Grassroots Movement of Louisiana (DGM-LA)',
body: 'The Louisiana Association of the Deaf has officially endorsed the Deaf Grassroots Movement of Louisiana (DGM-LA), supporting grassroots advocacy across the state.',
},
{
date: '2015-05-26',
title: 'Press Release: LAD vs. Lisa Chase Potter — Records Access Litigation',
body: 'LAD has released a statement regarding ongoing records access litigation (LAD vs. Lisa Chase Potter). The organization remains committed to transparency and member rights.',
},
{
date: '2014-08-08',
title: 'Deaf Driver Self-ID System Added to Louisiana DMV Database',
body: 'A public safety self-identification system for deaf drivers has been added to the Louisiana DMV database, improving safety for deaf individuals during traffic stops.',
},
{
date: '2014-08-04',
title: 'Class Action Lawsuit — Louisiana Relay Service',
body: 'LAD is party to a class action lawsuit regarding the Louisiana Relay Service, advocating for improved telecommunications access for the deaf and hard-of-hearing community.',
},
];
function formatDate(dateStr: string): string {
const [year, month, day] = dateStr.split('-').map(Number);
return new Date(year, month - 1, day).toLocaleDateString('en-US', {
year: 'numeric',
month: 'long',
day: 'numeric',
});
}
export default function UpdatesPage() {
return (
<div className="bg-color-bg">
{/* Hero section */}
{/* Hero */}
<section className="py-16 bg-color-bg-secondary">
<div className="container mx-auto px-4">
<div className="max-w-3xl mx-auto text-center">
<h1 className="hero-title text-4xl md:text-5xl font-bold mb-6">Updates</h1>
<p className="hero-subtitle text-xl">
Latest news and announcements from LAD.
News and announcements from the Louisiana Association of the Deaf.
</p>
</div>
</div>
@ -24,17 +108,26 @@ export default function UpdatesPage() {
{/* Updates feed */}
<section className="py-16 bg-color-bg">
<div className="container mx-auto px-4">
<div className="max-w-4xl mx-auto space-y-8">
{/* Placeholder posts — replace with dynamic data from backend */}
<article className="card event-card-gold-border p-8">
<p className="card-date text-sm mb-2">Coming soon</p>
<h2 className="card-title event-card-title-gold text-2xl font-semibold mb-4">
News and announcements will appear here
<div className="max-w-4xl mx-auto space-y-6">
{updates.map((update, i) => (
<article key={i} className="card event-card-gold-border p-6 md:p-8">
<p className="card-date text-sm font-medium mb-2">{formatDate(update.date)}</p>
<h2 className="card-title event-card-title-gold text-xl font-semibold mb-3">
{update.title}
</h2>
<p className="section-text text-lg">
Check back for the latest updates from the Louisiana Association of the Deaf. Once the admin panel is configured, posts will be published and displayed here.
</p>
<p className="section-text">{update.body}</p>
</article>
))}
</div>
<div className="max-w-4xl mx-auto mt-12 text-center">
<p className="section-text text-sm">
Showing recent highlights. Full update archive available to members.{' '}
<Link href="/membership" className="card-link underline">
Join LAD
</Link>{' '}
for complete access.
</p>
</div>
</div>
</section>

View file

@ -2,6 +2,7 @@
import React, { useState, useEffect } from 'react';
import Link from 'next/link';
import Image from 'next/image';
import { usePathname } from 'next/navigation';
import ThemeSelector from '../molecules/ThemeSelector';
@ -108,8 +109,18 @@ const Navigation = () => {
<div className="flex justify-between h-16 items-center">
{/* Logo and site name */}
<div className="flex-shrink-0">
<Link href="/" className="flex items-center" onClick={closeMenu}>
<span className="nav-logo text-xl font-bold">Louisiana Association of the Deaf</span>
<Link href="/" className="flex items-center gap-2" onClick={closeMenu}>
<Image
src="https://db.lad1908.org/assets/5cdfa81d-ffc8-4cae-a178-5db3bfbaaeb8"
alt="LAD logo"
width={40}
height={40}
className="rounded"
/>
<span className="nav-logo text-lg font-bold leading-tight hidden sm:block">
Louisiana Association<br className="hidden xl:block" /> of the Deaf
</span>
<span className="nav-logo text-xl font-bold sm:hidden">LAD</span>
</Link>
</div>