import { Injectable, NotFoundException } from '@nestjs/common'; @Injectable() export class ThemesService { private themes = { 'legal-defense': { name: 'legal-defense', title: 'Legal Defense Resources', description: 'Precedents, strategies, and resources for defending religious freedom', keyPrecedents: [ { case: 'Lukumi v. Hialeah (1993)', court: 'US Supreme Court', outcome: 'UNANIMOUS victory for Santería', significance: 'Laws targeting religious practice are unconstitutional', }, { case: 'Landor v. Louisiana (2025)', court: 'US Supreme Court', outcome: 'Pending', significance: 'Religious minorities have equal First Amendment protection', }, { case: 'Employment Division v. Smith (1990)', court: 'US Supreme Court', outcome: 'Narrowed protections', significance: 'Led to RFRA passage', }, ], defenseTactics: [ 'Document religious practice authenticity', 'Expert witnesses from academic institutions', 'Demonstrate historical continuity', 'Challenge laws that specifically target religious conduct', 'Invoke RFRA for federal cases', 'Cite international human rights standards', ], organizations: [ 'ACLU Religious Freedom Project', 'Becket Fund for Religious Liberty', 'Americans United for Separation of Church State', 'International Association for Religious Freedom', ], }, 'media-misrepresentation': { name: 'media-misrepresentation', title: 'Media Misrepresentation Analysis', description: 'How media distorts Afro-Caribbean religions and how to respond', patterns: [ { pattern: 'Crime Attribution', description: 'Any crime near religious items blamed on religion', response: 'Demand same standard for Christian/mainstream crimes', }, { pattern: 'Sensationalist Language', description: '"Cult", "ritual", "occult" used selectively', response: 'Document neutral coverage of equivalent practices in mainstream religions', }, { pattern: 'Expert Exclusion', description: 'Actual practitioners/scholars rarely consulted', response: 'Provide media list of qualified academic experts', }, { pattern: 'Visual Manipulation', description: 'Dark lighting, ominous music for coverage', response: 'Compare to coverage of other religious ceremonies', }, ], hollywoodMyths: [ { film: 'The Serpent and the Rainbow (1988)', myths: ['Zombie powder', 'Evil bokors'], reality: 'Wade Davis research was later discredited', }, { film: 'Angel Heart (1987)', myths: ['Blood sacrifice', 'Demonic possession'], reality: 'Pure fiction with zero religious accuracy', }, { film: 'The Believers (1987)', myths: ['Child sacrifice', 'Santería as cult'], reality: 'Fabricated "Santería" bears no resemblance to actual practice', }, ], }, 'satanic-panic-history': { name: 'satanic-panic-history', title: 'Satanic Panic: History and Lessons', description: 'The moral panic that destroyed innocent lives (1980s-1990s)', timeline: [ { year: 1980, event: 'Michelle Remembers published', impact: 'Created "recovered memory" phenomenon' }, { year: 1983, event: 'McMartin Preschool accusations begin', impact: 'Longest, most expensive trial in US history - ALL acquitted' }, { year: 1984, event: 'Geraldo Rivera "Devil Worship" special', impact: '20 million viewers, spread panic nationally' }, { year: 1992, event: 'FBI Lanning Report released', impact: 'NO EVIDENCE of organized Satanic crime found' }, { year: 1995, event: 'Most cases overturned on appeal', impact: 'Wrongful convictions exposed' }, ], falseProsecutions: [ { name: 'West Memphis Three', years: 18, outcome: 'Released 2011, no evidence of Satanism' }, { name: 'San Antonio Four', years: 15, outcome: 'Exonerated 2016, homophobia + panic' }, { name: 'Fran and Dan Keller', years: 21, outcome: 'Exonerated 2017, therapist-induced memories' }, ], lessons: [ 'Recovered memory therapy is discredited', 'Moral panics follow predictable patterns', 'Media amplification creates feedback loops', 'Law enforcement training prevents future panics', 'Academic research counters misinformation', ], modernResurgence: 'QAnon incorporates Satanic Panic tropes (2020s)', }, 'academic-recognition': { name: 'academic-recognition', title: 'Academic Recognition of Afro-Caribbean Religions', description: 'How scholarship has legitimized these traditions', institutions: [ { name: 'Harvard Divinity School', programs: ['African Religious Traditions', 'Caribbean Studies'] }, { name: 'Yale Religious Studies', programs: ['Afro-Atlantic Religions', 'Diaspora Studies'] }, { name: 'Duke University', programs: ['Creole Religions', 'Latin American Studies'] }, { name: 'Johns Hopkins', programs: ['Caribbean History', 'Religious Studies'] }, { name: 'FIU Cuban Research Institute', programs: ['Santería Studies', 'Afro-Cuban Culture'] }, { name: 'University of West Indies', programs: ['Caribbean Religious Studies', 'Obeah Research'] }, ], keyScholars: [ { name: 'Karen McCarthy Brown', work: 'Mama Lola (Vodou ethnography)', institution: 'Drew University' }, { name: 'David H. Brown', work: 'Santería Enthroned', institution: 'Emory' }, { name: 'Danielle N. Boaz', work: 'Banning Black Gods', institution: 'UNC Charlotte' }, { name: 'Joseph Murphy', work: 'Santería: African Spirits in America', institution: 'Georgetown' }, ], disciplines: ['Anthropology', 'Religious Studies', 'Sociology', 'History', 'Africana Studies', 'Gender Studies'], thesis: 'Academic consensus: These are legitimate religions, NOT cults or criminal organizations', }, 'persecution-mechanics': { name: 'persecution-mechanics', title: 'How Religious Persecution Works', description: 'Systematic analysis of persecution patterns', stages: [ { stage: 1, name: 'Othering', description: 'Label as "foreign", "primitive", "cult"', examples: ['Vodou = "voodoo"', 'Santería = "cult"'] }, { stage: 2, name: 'Criminalization', description: 'Pass laws specifically targeting practices', examples: ['Obeah Acts', 'Hialeah ordinances'] }, { stage: 3, name: 'Enforcement', description: 'Selective prosecution of practitioners', examples: ['Police raids on terreiros', 'Discriminatory charging'] }, { stage: 4, name: 'Media Amplification', description: 'Sensationalist coverage reinforces bias', examples: ['Satanic Panic news', 'Crime attribution'] }, { stage: 5, name: 'Social Exclusion', description: 'Employment, housing, custody discrimination', examples: ['Job loss', 'Child custody cases'] }, ], whoTargets: [ { actor: 'Governments', motivation: 'Control marginalized populations', method: 'Laws, enforcement' }, { actor: 'Mainstream Churches', motivation: 'Eliminate competition', method: 'Lobbying, media campaigns' }, { actor: 'Media', motivation: 'Ratings through sensationalism', method: 'Selective coverage' }, { actor: 'Criminals', motivation: 'Scapegoat for own actions', method: 'False claims of religious motivation' }, ], }, 'reform-movements': { name: 'reform-movements', title: 'Reform Movements and Progress', description: 'Organizations and efforts working for religious freedom', organizations: [ { name: 'Unuchi Foundation', focus: 'Obeah decriminalization in Jamaica', achievements: '2025 constitutional hearing' }, { name: 'Church of Lukumi Babalu Aye', focus: 'Santería legal rights', achievements: 'Supreme Court victory 1993' }, { name: 'National African Religion Congress', focus: 'Pan-African religious advocacy', achievements: 'Policy engagement' }, { name: 'CARICOM Reparations Commission', focus: 'Colonial legacy remediation', achievements: 'Obeah law reform advocacy' }, ], achievements: [ { year: 1993, achievement: 'Lukumi v. Hialeah - UNANIMOUS Supreme Court victory' }, { year: 1996, achievement: 'Benin establishes National Vodou Day' }, { year: 1998, achievement: 'Barbados decriminalizes Obeah' }, { year: 2000, achievement: 'Trinidad decriminalizes Obeah' }, { year: 2003, achievement: 'Haiti officially recognizes Vodou' }, { year: 2004, achievement: 'St Lucia decriminalizes Obeah' }, ], futureGoals: [ 'Jamaica Obeah decriminalization (2025 hearing)', 'UNESCO recognition for more traditions', 'Law enforcement training programs globally', 'Media representation standards', 'Reparatory justice inclusion', ], }, }; getAllThemes() { return { count: 6, themes: Object.values(this.themes).map((t) => ({ name: t.name, title: t.title, description: t.description, })), }; } getTheme(name: string) { const theme = this.themes[name]; if (!theme) { throw new NotFoundException( `Theme '${name}' not found. Available: legal-defense, media-misrepresentation, satanic-panic-history, academic-recognition, persecution-mechanics, reform-movements`, ); } return theme; } }