From 7fda0a4ddc768c1f3b7ef5f770c37624deed4c4d Mon Sep 17 00:00:00 2001 From: visualGravitySense Date: Thu, 29 Jan 2026 02:08:10 +0200 Subject: [PATCH] Refactor Academy and Contact pages - Restored CourseCard and PartnerCard components in Academy.tsx for better modularity. - Enhanced the educational partners section with a grid layout. - Reintroduced Supabase integration and form validation in Contact.tsx. - Improved terminal input handling and social media icons. - Merged UI improvements while maintaining core functionalities. Signed-off-by: Aitor Alien <111972684+Alien69Flow@users.noreply.github.com> --- RECOVERY_PLAN.md | 109 + academy_163d4b1.tsx | 386 + academy_diff.tsx | 610 ++ analysis.diff | Bin 0 -> 50084 bytes contact_163d4b1.tsx | 515 ++ contact_diff.tsx | 635 ++ package-lock.json | 11286 ++++++++++++++++++++++++++ package.json | 3 +- src/integrations/supabase/client.ts | 15 + src/pages/Academy.tsx | 531 +- src/pages/Contact.tsx | 865 +- tailwind.config.ts | 9 + 12 files changed, 14630 insertions(+), 334 deletions(-) create mode 100644 RECOVERY_PLAN.md create mode 100644 academy_163d4b1.tsx create mode 100644 academy_diff.tsx create mode 100644 analysis.diff create mode 100644 contact_163d4b1.tsx create mode 100644 contact_diff.tsx create mode 100644 package-lock.json create mode 100644 src/integrations/supabase/client.ts diff --git a/RECOVERY_PLAN.md b/RECOVERY_PLAN.md new file mode 100644 index 0000000..1305934 --- /dev/null +++ b/RECOVERY_PLAN.md @@ -0,0 +1,109 @@ +# Recovery Plan: Academy.tsx & Contact.tsx + +## Analysis Summary + +### Commit History +- **163d4b1** "UFO menu and contact full" - ✅ WORKING VERSION +- **0af248f** "Reverted to commit 3981950c..." - ❌ BROKE THINGS +- **67d2a12** "Update Academy.tsx" - ⚠️ CURRENT (has improvements but broken) + +--- + +## Academy.tsx - Issues Identified + +### ❌ What Broke (Current vs Working): + +1. **Component Structure** + - ❌ Removed `CourseCard` and `PartnerCard` components + - ❌ Changed from Card-based UI to expandable motion cards + - ❌ Lost the clean, reusable component pattern + +2. **Data Structure Changes** + - ❌ Changed `subModules` → `modules` (inconsistent naming) + - ❌ Changed partners from flat array to categorized structure + - ❌ Lost ~30+ partners (only kept ~10 in categories) + +3. **Missing Features** + - ❌ Removed "Master Certification Program" featured section + - ❌ Removed "Ready to Expand Your Cosmic Knowledge?" CTA section + - ❌ Lost comprehensive partner list + +### ✅ Good Changes to Keep (from 67d2a12): + +1. **UI Improvements** + - ✅ Better hero section styling + - ✅ Improved animations with framer-motion + - ✅ Better responsive design + +2. **Data Improvements** + - ✅ Added 4th module to "Abundance & Freedom" (Revenue Architecture) + - ✅ Better module descriptions + - ✅ More organized topic lists + +--- + +## Contact.tsx - Issues Identified + +### ❌ What Broke (Current vs Working): + +1. **Form Functionality** + - ❌ Removed Supabase integration (commented out) + - ❌ Changed to mailto: link (less functional, no server-side handling) + - ❌ Removed form validation with zod schema + - ❌ Removed error handling and error display + +2. **Terminal Features** + - ❌ Simplified terminal responses (lost comprehensive AI responses) + - ❌ Removed AI Tor avatar display + - ❌ Removed system messages + - ❌ Lost detailed command handling (DAO, NFT, token info, etc.) + +3. **UI Components** + - ❌ Removed `SocialIcon` component with custom SVG icons + - ❌ Removed Quick Support Cards section (Documentation, Legal, Support, Community) + - ❌ Simplified social links structure + - ❌ Lost better organized layout + +### ✅ Good Changes to Keep (from 67d2a12): + +1. **UI Improvements** + - ✅ Better header styling ("COMMUNICATIONS") + - ✅ Improved form layout + - ✅ Better terminal styling + +--- + +## Recovery Strategy + +### Academy.tsx Recovery: +1. **Restore working structure** from 163d4b1: + - Keep `CourseCard` and `PartnerCard` components + - Restore full partners list + - Restore featured sections + +2. **Merge good improvements** from 67d2a12: + - Add 4th module (Revenue Architecture) to Abundance & Freedom + - Keep improved descriptions + - Keep better hero styling (if compatible) + +### Contact.tsx Recovery: +1. **Restore working structure** from 163d4b1: + - Restore Supabase integration + - Restore zod validation + - Restore comprehensive terminal responses + - Restore Quick Support Cards + - Restore SocialIcon component + +2. **Merge good improvements** from 67d2a12: + - Keep improved header styling + - Keep better form layout (if compatible) + +--- + +## Implementation Steps + +1. ✅ Analyze differences (COMPLETED) +2. ⏳ Restore Academy.tsx with merged improvements +3. ⏳ Restore Contact.tsx with merged improvements +4. ⏳ Test both pages +5. ⏳ Verify all functionality works diff --git a/academy_163d4b1.tsx b/academy_163d4b1.tsx new file mode 100644 index 0000000..050e817 --- /dev/null +++ b/academy_163d4b1.tsx @@ -0,0 +1,386 @@ +import React from 'react'; +import { GraduationCap, BookOpen, Video, Users, Award, Sparkles, Leaf, Brain, Coins, ShoppingCart, Heart, Lightbulb, ExternalLink } from 'lucide-react'; +import { Button } from '@/components/ui/button'; +import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; +const CourseCard = ({ + title, + description, + icon, + modules, + color +}: { + title: string; + description: string; + icon: React.ReactNode; + modules: Array<{ + name: string; + topics: string[]; + }>; + color: string; +}) => +
+ +
+
+ {icon} +
+
+ + {modules.length} modules + +
+
+ + {title} + + + {description} + +
+ + +
+ {modules.map((module, index) =>
+

+ + {index + 1} + + {module.name} +

+
    + {module.topics.map((topic, topicIndex) =>
  • + ┬╖ + {topic} +
  • )} +
+
)} +
+ + +
+
; +const PartnerCard = ({ + name, + url, + logoUrl +}: { + name: string; + url: string; + logoUrl?: string; +}) => +
+
+ {logoUrl ?
+ {`${name} { + const target = e.target as HTMLImageElement; + target.style.display = 'none'; + target.nextElementSibling?.classList.remove('hidden'); + }} /> +
+ {name.charAt(0)} +
+
:
+ {name.charAt(0)} +
} +

+ {name} +

+ +
+
; +const Academy: React.FC = () => { + const courses = [{ + title: "Abundance & Freedom", + description: "Master the fundamentals of digital economy, blockchain and sustainable financial systems to create abundance and financial freedom.", + icon: , + color: "bg-gradient-to-r from-green-400 to-green-600", + modules: [{ + name: "EcoFinTech", + topics: ["Circularity + ESG Criteria + Efficiency & Sustainability + Growth & Development", "System Dynamics (Complex / Dynamic) [Critical Degrowth | Theories]", "Digitalization + Money & Payment Systems + Iterative Design Methodologies", "Economy & Finance - General Macro & Particular Micro + Game Theory"] + }, { + name: "Electronic Commerce", + topics: ["Fundamental characteristics", "Foundations and infrastructure", "Practical advantages and uses", "Forms and types of implementation"] + }, { + name: "Blockchain & Cryptography", + topics: ["Digital Assets (Crypto + Tokens, Bitcoin, Altcoins, Stablecoins)", "Digital Properties (NFTs + Smart Contracts)", "Applications & Decentralized Finance (DeFi)"] + }] + }, { + title: "Self-Management & Sustainability", + description: "Learn to manage your life sustainably by integrating ecology, permaculture and conscious management of energy, space and time.", + icon: , + color: "bg-gradient-to-r from-emerald-400 to-emerald-600", + modules: [{ + name: "Ecological Foundations", + topics: ["Ecosystem understanding and biodiversity principles", "Climate change adaptation and mitigation strategies", "Natural resource management and conservation", "Environmental impact assessment and reduction"] + }, { + name: "Permaculture Design", + topics: ["Permaculture ethics and principles", "Site analysis and design methodology", "Food forest creation and management", "Water harvesting and management systems", "Soil regeneration and composting techniques"] + }, { + name: "Conscious Living", + topics: ["Mindful consumption and zero-waste practices", "Energy efficiency in daily life", "Sustainable transportation choices", "Community building and local resilience"] + }, { + name: "Time & Space Management", + topics: ["Productivity systems aligned with natural rhythms", "Sacred space creation and maintenance", "Work-life integration practices", "Digital minimalism and tech wellness"] + }] + }, { + title: "Harmony & Transcendence", + description: "Explore the deepest dimensions of being through consciousness, meditation, philosophical alchemy and sacred nutrition.", + icon: , + color: "bg-gradient-to-r from-purple-400 to-purple-600", + modules: [{ + name: "Consciousness & Energy", + topics: ["Attention & Concentration - Attitude | Aptitude", "Consciousness (Unconsciousness | Preconsciousness | Subconscious)", "Equanimity | Fullness - Focus | Perception", "Determination | Intention | Purpose | Meaning"] + }, { + name: "Meditations & Yoga", + topics: ["Advanced meditation techniques", "Integral yoga practice", "Body-mind-spirit integration"] + }, { + name: "Alchemy & Philosophy", + topics: ["Alchemy: Self-transcendence | Transcendence", "Liberal Arts (Trivium + Quadrivium)", "Hermeneutics | Heuristics", "Philosophy: Spiritual and Intellectual Illumination"] + }] + }]; + const partners = [{ + name: "Academia", + url: "https://www.academia.edu/", + logoUrl: "/lovable-uploads/Academy/Academia.svg" + }, { + name: "Alchemy", + url: "https://www.alchemy.com/", + logoUrl: "/lovable-uploads/Academy/Alchemy.png" + }, { + name: "Bitcoin", + url: "https://bitcoin.org", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/4/46/Bitcoin.svg" + }, { + name: "AulaFacil", + url: "https://www.aulafacil.com/", + logoUrl: "https://www.aulafacil.com/favicon.ico" + }, { + name: "Climate Reanalyzer", + url: "https://climatereanalyzer.org/", + logoUrl: "/lovable-uploads/Academy/ClimateReanalyzer.svg" + }, { + name: "Coursera", + url: "https://www.coursera.org/", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/9/97/Coursera-Logo_600x600.svg" + }, { + name: "Cursa", + url: "https://cursa.app/", + logoUrl: "/lovable-uploads/Academy/Cursa.webp" + }, { + name: "edX", + url: "https://www.edx.org/", + logoUrl: "/lovable-uploads/Academy/edX.png" + }, { + name: "ESA", + url: "https://www.esa.int/", + logoUrl: "/lovable-uploads/Academy/ESA.svg" + }, { + name: "Explore", + url: "https://explore.org/", + logoUrl: "/lovable-uploads/Academy/Explore.png" + }, { + name: "FutureLearn", + url: "https://www.futurelearn.com/", + logoUrl: "https://www.futurelearn.com/favicon.ico" + }, { + name: "Google for Education", + url: "https://edu.google.com/", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg" + }, { + name: "Google Growth", + url: "https://grow.google/", + logoUrl: "/lovable-uploads/Academy/GrowGoogle.png" + }, { + name: "HackerRank", + url: "https://www.hackerrank.com/", + logoUrl: "/lovable-uploads/Academy/HackerRank.svg" + }, { + name: "HackMD", + url: "https://hackmd.io/", + logoUrl: "/lovable-uploads/Academy/HackMD.svg" + }, { + name: "Hotmart", + url: "https://www.hotmart.com/", + logoUrl: "/lovable-uploads/Academy/Hotmart.png" + }, { + name: "KAGRA", + url: "https://khanacademy.org/", + logoUrl: "https://cdn.kastatic.org/images/khan-logo-dark-background.png" + }, { + name: "Khan Academy", + url: "https://gwcenter.icrr.u-tokyo.ac.jp/", + logoUrl: "/lovable-uploads/Academy/KAGRA.svg" + }, { + name: "LIGO", + url: "https://www.ligo.caltech.edu/", + logoUrl: "/lovable-uploads/Academy/LIGO.png" + }, { + name: "LSC-Canfranc", + url: "https://lsc-canfranc.es/", + logoUrl: "/lovable-uploads/Academy/LSC.png" + }, { + name: "Map of the Universe", + url: "https://mapoftheuniverse.net/", + logoUrl: "/lovable-uploads/Academy/Universe.jpg" + }, { + name: "MasterClass", + url: "https://masterclass.com/", + logoUrl: "/lovable-uploads/Academy/MasterClass.jpeg" + }, { + name: "MOOC", + url: "https://mooc.org/", + logoUrl: "/lovable-uploads/Academy/Mooc.png" + }, { + name: "NASA Eyes", + url: "https://eyes.nasa.gov/apps/solar-system/#/home", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/e/e5/NASA_logo.svg" + }, { + name: "OEGlobal", + url: "https://oeglobal.org/", + logoUrl: "/lovable-uploads/OEGlobalLogo.jpeg" + }, { + name: "OpenUpEd", + url: "https://openuped.eu/", + logoUrl: "/lovable-uploads/OpenUpEdLogo.jpeg" + }, { + name: "Skillshare", + url: "https://www.skillshare.com/", + logoUrl: "/lovable-uploads/SkillShareLogo.jpeg" + }, { + name: "Udacity", + url: "https://www.udacity.com/", + logoUrl: "/lovable-uploads/UdacityLogo.svg" + }, { + name: "Udemy", + url: "https://www.udemy.com/", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/e/e3/Udemy_logo.svg" + }, { + name: "UNED", + url: "https://iedra.uned.es/", + logoUrl: "/lovable-uploads/Academy/UNED.png" + }, { + name: "UNESCO", + url: "https://www.unesco.org/", + logoUrl: "/lovable-uploads/UnescoLogo.svg" + }, { + name: "Unity Learn", + url: "https://learn.unity.com/", + logoUrl: "/lovable-uploads/UnityLearnLogo.svg" + }, { + name: "Unreal Engine", + url: "https://www.unrealengine.com/en-US/learn", + logoUrl: "https://upload.wikimedia.org/wikipedia/commons/d/da/Unreal_Engine_Logo.svg" + }, { + name: "UNSSC", + url: "https://unssc.org/", + logoUrl: "/lovable-uploads/UNSSCLogo.png" + }, { + name: "Virgo-GW", + url: "https://www.virgo-gw.eu/", + logoUrl: "/lovable-uploads/VirgoLogo.svg" + }]; + return
+ {/* Academy Background Image */} +
+
+
+
+ Academy Official Logo +
+

+ Academy +

+

+ Acquire complete attention capabilities to connect, discover and expand knowledge and skills. + This helps you evolve and propels you towards an optimal experience with fullness of flow, + as well as increase the benefits of your quality of life and more sustainable gains, with complete wellbeing. +

+
+ + {/* Featured Program */} + +
+ +

+ Master Certification Program +

+ + Become a certified Explorer and Navigator of the ΔlieπFlΦw $pac€ and unlock exclusive opportunities in our expanding cosmic ecosystem. + +
+ {["3 integrated main courses", "8 specialized modules", "Bootcamps with live mentoring sessions", "On-chain NFT credential"].map((feature, index) =>
+
+

{feature}

+
)} +
+ +
+
+
+ +
+ +
+
+
+
+
+ + {/* Course Grid */} +
+

+ Main Courses +

+

+ Explore our comprehensive training programs +

+
+ {courses.map((course, index) => )} +
+
+ + {/* Enhanced Partners Section */} +
+

+ Educational Partners +

+

+ We collaborate with the world's best educational platforms +

+
+ {partners.map((partner, index) => )} +
+
+ + {/* CTA Section */} + + +

+ Ready to Expand Your Cosmic Knowledge? +

+ + Join thousands of space navigators on their journey to master the principles of the decentralized multiverse. + +
+ + +
+
+
+
+
+
; +}; +export default Academy; diff --git a/academy_diff.tsx b/academy_diff.tsx new file mode 100644 index 0000000..321825f --- /dev/null +++ b/academy_diff.tsx @@ -0,0 +1,610 @@ +diff --git a/src/pages/Academy.tsx b/src/pages/Academy.tsx +index a5d0c7d..fdcfe14 100644 +--- a/src/pages/Academy.tsx ++++ b/src/pages/Academy.tsx +@@ -1,386 +1,238 @@ +-import React from 'react'; +-import { GraduationCap, BookOpen, Video, Users, Award, Sparkles, Leaf, Brain, Coins, ShoppingCart, Heart, Lightbulb, ExternalLink } from 'lucide-react'; ++import React, { useState } from 'react'; ++import { motion, AnimatePresence } from 'framer-motion'; ++import { ++ ShieldCheck, Coins, Leaf, Brain, GraduationCap, ++ Zap, ExternalLink, ChevronDown, Award, CheckCircle2 ++} from 'lucide-react'; + import { Button } from '@/components/ui/button'; +-import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; +-const CourseCard = ({ +- title, +- description, +- icon, +- modules, +- color +-}: { +- title: string; +- description: string; +- icon: React.ReactNode; +- modules: Array<{ +- name: string; +- topics: string[]; +- }>; +- color: string; +-}) => +-
+- +-
+-
+- {icon} +-
+-
+- +- {modules.length} modules +- +-
+-
+- +- {title} +- +- +- {description} +- +-
+- +- +-
+- {modules.map((module, index) =>
+-

+- +- {index + 1} +- +- {module.name} +-

+-
    +- {module.topics.map((topic, topicIndex) =>
  • +- ┬╖ +- {topic} +-
  • )} +-
+-
)} +-
+- +- +-
+-
; +-const PartnerCard = ({ +- name, +- url, +- logoUrl +-}: { +- name: string; +- url: string; +- logoUrl?: string; +-}) => +-
+-
+- {logoUrl ?
+- {`${name} { +- const target = e.target as HTMLImageElement; +- target.style.display = 'none'; +- target.nextElementSibling?.classList.remove('hidden'); +- }} /> +-
+- {name.charAt(0)} +-
+-
:
+- {name.charAt(0)} +-
} +-

+- {name} +-

+- +-
+-
; +-const Academy: React.FC = () => { +- const courses = [{ ++ ++// --- DATA DEFINITIVA: 3 MÓDULOS CON 4 BLOQUES CADA UNO --- ++const academyModules = [ ++ { ++ id: 1, + title: "Abundance & Freedom", ++ tag: "DATA_FLOW", + description: "Master the fundamentals of digital economy, blockchain and sustainable financial systems to create abundance and financial freedom.", + icon: , +- color: "bg-gradient-to-r from-green-400 to-green-600", +- modules: [{ +- name: "EcoFinTech", +- topics: ["Circularity + ESG Criteria + Efficiency & Sustainability + Growth & Development", "System Dynamics (Complex / Dynamic) [Critical Degrowth | Theories]", "Digitalization + Money & Payment Systems + Iterative Design Methodologies", "Economy & Finance - General Macro & Particular Micro + Game Theory"] +- }, { +- name: "Electronic Commerce", +- topics: ["Fundamental characteristics", "Foundations and infrastructure", "Practical advantages and uses", "Forms and types of implementation"] +- }, { +- name: "Blockchain & Cryptography", +- topics: ["Digital Assets (Crypto + Tokens, Bitcoin, Altcoins, Stablecoins)", "Digital Properties (NFTs + Smart Contracts)", "Applications & Decentralized Finance (DeFi)"] +- }] +- }, { ++ modules: [ ++ { name: "EcoFinTech & Dynamics", topics: ["Circularity + ESG Criteria", "System Dynamics", "Macro & Micro Economy", "Game Theory"] }, ++ { name: "Electronic Commerce", topics: ["Foundations & Infrastructure", "Practical Advantages", "Implementation Types", "E-commerce Features"] }, ++ { name: "Blockchain & Cryptography", topics: ["Digital Assets (BTC, NFTs)", "DeFi & ReFi Deep Dive", "Smart Contracts", "DePIN & IPFS"] }, ++ { name: "Revenue Architecture", topics: ["Automated Systems", "Scalability Frameworks", "Digital Properties", "Market Efficiency"] } ++ ] ++ }, ++ { ++ id: 2, ++ title: "Harmony & Transcendence", ++ tag: "FLOW_SPACE", ++ description: "Explore Tesla equations, magnetic fields, and unified physics. Understanding gravitational force unification through neutrinos.", ++ icon: , ++ modules: [ ++ { name: "Tesla & Unified Physics", topics: ["Tesla Equations & Scalar Waves", "Magnetic Field Flux", "Neutrino Unification Theory", "Gravitational Synergy"] }, ++ { name: "Consciousness & Perception", topics: ["Attention & Concentration", "Subconscious Mapping", "Reality Tunnels", "Neuro-Acoustics"] }, ++ { name: "Yoga & Sadhana", topics: ["Advanced Meditation", "Integral Yoga", "Sadhana Practice", "Bio-Homeostatic Balance"] }, ++ { name: "Alchemy & TAO", topics: ["Trivium & Quadrivium", "Hermeneutics", "Spiritual Illumination", "Wu Wei & Flow State"] } ++ ] ++ }, ++ { ++ id: 3, + title: "Self-Management & Sustainability", ++ tag: "HEALTH_FLOW", + description: "Learn to manage your life sustainably by integrating ecology, permaculture and conscious management of energy, space and time.", + icon: , +- color: "bg-gradient-to-r from-emerald-400 to-emerald-600", +- modules: [{ +- name: "Ecological Foundations", +- topics: ["Ecosystem understanding and biodiversity principles", "Climate change adaptation and mitigation strategies", "Natural resource management and conservation", "Environmental impact assessment and reduction"] +- }, { +- name: "Permaculture Design", +- topics: ["Permaculture ethics and principles", "Site analysis and design methodology", "Food forest creation and management", "Water harvesting and management systems", "Soil regeneration and composting techniques"] +- }, { +- name: "Conscious Living", +- topics: ["Mindful consumption and zero-waste practices", "Energy efficiency in daily life", "Sustainable transportation choices", "Community building and local resilience"] +- }, { +- name: "Time & Space Management", +- topics: ["Productivity systems aligned with natural rhythms", "Sacred space creation and maintenance", "Work-life integration practices", "Digital minimalism and tech wellness"] +- }] +- }, { +- title: "Harmony & Transcendence", +- description: "Explore the deepest dimensions of being through consciousness, meditation, philosophical alchemy and sacred nutrition.", +- icon: , +- color: "bg-gradient-to-r from-purple-400 to-purple-600", +- modules: [{ +- name: "Consciousness & Energy", +- topics: ["Attention & Concentration - Attitude | Aptitude", "Consciousness (Unconsciousness | Preconsciousness | Subconscious)", "Equanimity | Fullness - Focus | Perception", "Determination | Intention | Purpose | Meaning"] +- }, { +- name: "Meditations & Yoga", +- topics: ["Advanced meditation techniques", "Integral yoga practice", "Body-mind-spirit integration"] +- }, { +- name: "Alchemy & Philosophy", +- topics: ["Alchemy: Self-transcendence | Transcendence", "Liberal Arts (Trivium + Quadrivium)", "Hermeneutics | Heuristics", "Philosophy: Spiritual and Intellectual Illumination"] +- }] +- }]; +- const partners = [{ +- name: "Academia", +- url: "https://www.academia.edu/", +- logoUrl: "/lovable-uploads/Academy/Academia.svg" +- }, { +- name: "Alchemy", +- url: "https://www.alchemy.com/", +- logoUrl: "/lovable-uploads/Academy/Alchemy.png" +- }, { +- name: "Bitcoin", +- url: "https://bitcoin.org", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/4/46/Bitcoin.svg" +- }, { +- name: "AulaFacil", +- url: "https://www.aulafacil.com/", +- logoUrl: "https://www.aulafacil.com/favicon.ico" +- }, { +- name: "Climate Reanalyzer", +- url: "https://climatereanalyzer.org/", +- logoUrl: "/lovable-uploads/Academy/ClimateReanalyzer.svg" +- }, { +- name: "Coursera", +- url: "https://www.coursera.org/", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/9/97/Coursera-Logo_600x600.svg" +- }, { +- name: "Cursa", +- url: "https://cursa.app/", +- logoUrl: "/lovable-uploads/Academy/Cursa.webp" +- }, { +- name: "edX", +- url: "https://www.edx.org/", +- logoUrl: "/lovable-uploads/Academy/edX.png" +- }, { +- name: "ESA", +- url: "https://www.esa.int/", +- logoUrl: "/lovable-uploads/Academy/ESA.svg" +- }, { +- name: "Explore", +- url: "https://explore.org/", +- logoUrl: "/lovable-uploads/Academy/Explore.png" +- }, { +- name: "FutureLearn", +- url: "https://www.futurelearn.com/", +- logoUrl: "https://www.futurelearn.com/favicon.ico" +- }, { +- name: "Google for Education", +- url: "https://edu.google.com/", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/2/2f/Google_2015_logo.svg" +- }, { +- name: "Google Growth", +- url: "https://grow.google/", +- logoUrl: "/lovable-uploads/Academy/GrowGoogle.png" +- }, { +- name: "HackerRank", +- url: "https://www.hackerrank.com/", +- logoUrl: "/lovable-uploads/Academy/HackerRank.svg" +- }, { +- name: "HackMD", +- url: "https://hackmd.io/", +- logoUrl: "/lovable-uploads/Academy/HackMD.svg" +- }, { +- name: "Hotmart", +- url: "https://www.hotmart.com/", +- logoUrl: "/lovable-uploads/Academy/Hotmart.png" +- }, { +- name: "KAGRA", +- url: "https://khanacademy.org/", +- logoUrl: "https://cdn.kastatic.org/images/khan-logo-dark-background.png" +- }, { +- name: "Khan Academy", +- url: "https://gwcenter.icrr.u-tokyo.ac.jp/", +- logoUrl: "/lovable-uploads/Academy/KAGRA.svg" +- }, { +- name: "LIGO", +- url: "https://www.ligo.caltech.edu/", +- logoUrl: "/lovable-uploads/Academy/LIGO.png" +- }, { +- name: "LSC-Canfranc", +- url: "https://lsc-canfranc.es/", +- logoUrl: "/lovable-uploads/Academy/LSC.png" +- }, { +- name: "Map of the Universe", +- url: "https://mapoftheuniverse.net/", +- logoUrl: "/lovable-uploads/Academy/Universe.jpg" +- }, { +- name: "MasterClass", +- url: "https://masterclass.com/", +- logoUrl: "/lovable-uploads/Academy/MasterClass.jpeg" +- }, { +- name: "MOOC", +- url: "https://mooc.org/", +- logoUrl: "/lovable-uploads/Academy/Mooc.png" +- }, { +- name: "NASA Eyes", +- url: "https://eyes.nasa.gov/apps/solar-system/#/home", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/e/e5/NASA_logo.svg" +- }, { +- name: "OEGlobal", +- url: "https://oeglobal.org/", +- logoUrl: "/lovable-uploads/OEGlobalLogo.jpeg" +- }, { +- name: "OpenUpEd", +- url: "https://openuped.eu/", +- logoUrl: "/lovable-uploads/OpenUpEdLogo.jpeg" +- }, { +- name: "Skillshare", +- url: "https://www.skillshare.com/", +- logoUrl: "/lovable-uploads/SkillShareLogo.jpeg" +- }, { +- name: "Udacity", +- url: "https://www.udacity.com/", +- logoUrl: "/lovable-uploads/UdacityLogo.svg" +- }, { +- name: "Udemy", +- url: "https://www.udemy.com/", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/e/e3/Udemy_logo.svg" +- }, { +- name: "UNED", +- url: "https://iedra.uned.es/", +- logoUrl: "/lovable-uploads/Academy/UNED.png" +- }, { +- name: "UNESCO", +- url: "https://www.unesco.org/", +- logoUrl: "/lovable-uploads/UnescoLogo.svg" +- }, { +- name: "Unity Learn", +- url: "https://learn.unity.com/", +- logoUrl: "/lovable-uploads/UnityLearnLogo.svg" +- }, { +- name: "Unreal Engine", +- url: "https://www.unrealengine.com/en-US/learn", +- logoUrl: "https://upload.wikimedia.org/wikipedia/commons/d/da/Unreal_Engine_Logo.svg" +- }, { +- name: "UNSSC", +- url: "https://unssc.org/", +- logoUrl: "/lovable-uploads/UNSSCLogo.png" +- }, { +- name: "Virgo-GW", +- url: "https://www.virgo-gw.eu/", +- logoUrl: "/lovable-uploads/VirgoLogo.svg" +- }]; +- return
+- {/* Academy Background Image */} +-
+-
+-
+-
+- Academy Official Logo +-
+-

+- Academy +-

+-

+- Acquire complete attention capabilities to connect, discover and expand knowledge and skills. +- This helps you evolve and propels you towards an optimal experience with fullness of flow, +- as well as increase the benefits of your quality of life and more sustainable gains, with complete wellbeing. +-

+-
++ modules: [ ++ { name: "Ecological Foundations", topics: ["Biodiversity Principles", "Climate Adaptation", "Resource Management", "Mitigation Strategies"] }, ++ { name: "Permaculture Design", topics: ["Syntropic Farming", "Water Harvesting", "Soil Regeneration", "Food Forest Design"] }, ++ { name: "Conscious Living", topics: ["Daily Mudras", "Prana Breathing", "Energy Channels", "Zero-Waste & Nutrition"] }, ++ { name: "Time & Space Management", topics: ["Circadian Rhythms", "Feng Shui", "Digital Minimalism", "Sacred Space Design"] } ++ ] ++ } ++]; + +- {/* Featured Program */} +- +-
+- +-

+- Master Certification Program +-

+- +- Become a certified Explorer and Navigator of the ΔlieπFlΦw $pac€ and unlock exclusive opportunities in our expanding cosmic ecosystem. +- +-
+- {["3 integrated main courses", "8 specialized modules", "Bootcamps with live mentoring sessions", "On-chain NFT credential"].map((feature, index) =>
+-
+-

{feature}

+-
)} +-
+- +-
+-
+-
+- +-
+- +-
++// --- PARTNERS POR CATEGORÍAS (ALFABÉTICO) --- ++const partnerCategories = [ ++ { ++ label: 'ACADEMY PARTNERS', ++ partners: [ ++ { name: "Academia", url: "https://www.academia.edu/", logo: "Academia.svg" }, ++ { name: "Coursera", url: "https://www.coursera.org/", logo: "Coursera.svg" }, ++ { name: "UNESCO", url: "https://www.unesco.org/", logo: "UnescoLogo.svg" } ++ ] ++ }, ++ { ++ label: 'DATAFLOW', ++ partners: [ ++ { name: "Alchemy", url: "https://www.alchemy.com/", logo: "Alchemy.png" }, ++ { name: "Bitcoin", url: "https://bitcoin.org", logo: "Bitcoin.svg" } ++ ] ++ }, ++ { ++ label: 'ECOFLOW', ++ partners: [ ++ { name: "Ecology", url: "https://www.ecology.org/", logo: "Ecology.png" } ++ ] ++ }, ++ { ++ label: 'GAMEFLOW', ++ partners: [ ++ { name: "GameTheory", url: "https://plato.stanford.edu/entries/game-theory/", logo: "GameTheory.png" } ++ ] ++ }, ++ { ++ label: 'HEALTHFLOW', ++ partners: [ ++ { name: "Yazio", url: "https://www.yazio.com/", logo: "Yazio.png" } ++ ] ++ }, ++ { ++ label: 'SPACEFLOW', ++ partners: [ ++ { name: "ESA", url: "https://www.esa.int/", logo: "ESA.svg" }, ++ { name: "NASA Eyes", url: "https://eyes.nasa.gov/", logo: "NASA_logo.svg" }, ++ { name: "Virgo", url: "https://www.virgo-gw.eu/", logo: "VirgoLogo.svg" } ++ ] ++ } ++]; ++ ++const Academy = () => { ++ const [expandedModule, setExpandedModule] = useState(null); ++ ++ return ( ++
++ ++ {/* 1. HERO ORIGINAL (RESTAURADO) */} ++
++ ++
++ Logo ++ ++ ++

++ Academy ++

++ ++

++ "Acquire complete attention capabilities to connect, discover and expand knowledge and skills. Evolve towards an optimal experience with fullness of flow." ++

++ ++
++ Ready to evolve? Join the decentralized learning revolution ++
++
++ ++ {/* 2. MÓDULOS (GRID HORIZONTAL CON EXPANSIÓN) */} ++
++ {academyModules.map((module) => ( ++ ++
setExpandedModule(expandedModule === module.id ? null : module.id)} ++ className="p-10 cursor-pointer" ++ > ++
++
++ {module.icon} +
++ +
++ ++

{module.title}

++

{module.description}

++ ++ ++ {expandedModule === module.id && ( ++ ++ {module.modules.map((sub, i) => ( ++
++

++ {sub.name} ++

++
    ++ {sub.topics.map((topic, j) => ( ++
  • ++ ΓÇó {topic} ++
  • ++ ))} ++
++
++ ))} ++ ++
++ )} ++
+
+- +- +- {/* Course Grid */} +-
+-

+- Main Courses +-

+-

+- Explore our comprehensive training programs +-

+-
+- {courses.map((course, index) => )} +-
+-
++
++ ))} ++
+ +- {/* Enhanced Partners Section */} +-
+-

+- Educational Partners +-

+-

+- We collaborate with the world's best educational platforms +-

+-
+- {partners.map((partner, index) => )} ++ {/* 3. MASTER CERTIFICATION (ORIGINAL) */} ++
++
++
++
++
++ ++
++
++

Master Certification

++

On-chain validation of your evolutionary journey through the flow.

++
+
++ +
++
++
+ +- {/* CTA Section */} +- +- +-

+- Ready to Expand Your Cosmic Knowledge? +-

+- +- Join thousands of space navigators on their journey to master the principles of the decentralized multiverse. +- +-
+- +- ++ {/* 4. PARTNERS (FUNCIONALIDAD TOTAL) */} ++
+-
; ++ ++ ++ ); + }; ++ + export default Academy; diff --git a/analysis.diff b/analysis.diff new file mode 100644 index 0000000000000000000000000000000000000000..c3cf254b80fa6510cb1d776c6636a2d9a43592af GIT binary patch literal 50084 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 + +// Social media icons - using official brand SVGs where possible +const SocialIcon: React.FC<{ name: string; className?: string }> = ({ name, className = "w-5 h-5" }) => { + const icons: Record = { + discord: ( + + + + ), + telegram: ( + + + + ), + x: ( + + + + ), + facebook: ( + + + + ), + instagram: ( + + + + ), + linkedin: ( + + + + ), + github: ( + + + + ), + threads: ( + + + + ), + gitbook: ( + + + + ), + tiktok: ( + + + + ), + }; + + return icons[name] || ; +}; + +const Contact: React.FC = () => { + // Form state + const [formData, setFormData] = useState({ + name: '', + email: '', + subject: '', + message: '' + }); + const [isSubmitting, setIsSubmitting] = useState(false); + const [formErrors, setFormErrors] = useState>>({}); + + // Terminal state + const [terminalInput, setTerminalInput] = useState(''); + const [terminalHistory, setTerminalHistory] = useState>([ + { type: 'system', text: '> AlienFlowSpace Communication Terminal v2.0' }, + { type: 'system', text: '> Establishing secure connection...' }, + { type: 'ai', text: '¡Hola, viajero cósmico! Soy AI Tor. ¿En qué puedo ayudarte hoy?' }, + ]); + const [isTyping, setIsTyping] = useState(false); + const terminalRef = useRef(null); + const inputRef = useRef(null); + + // Auto-scroll terminal + useEffect(() => { + if (terminalRef.current) { + terminalRef.current.scrollTop = terminalRef.current.scrollHeight; + } + }, [terminalHistory]); + + const handleFormChange = (e: React.ChangeEvent) => { + const { name, value } = e.target; + setFormData(prev => ({ ...prev, [name]: value })); + // Clear error when user types + if (formErrors[name as keyof ContactFormData]) { + setFormErrors(prev => ({ ...prev, [name]: undefined })); + } + }; + + const handleFormSubmit = async (e: React.FormEvent) => { + e.preventDefault(); + + // Validate form + const result = contactFormSchema.safeParse(formData); + if (!result.success) { + const errors: Partial> = {}; + result.error.errors.forEach(err => { + if (err.path[0]) { + errors[err.path[0] as keyof ContactFormData] = err.message; + } + }); + setFormErrors(errors); + return; + } + + setIsSubmitting(true); + + try { + const { error } = await supabase.functions.invoke('send-contact-email', { + body: formData + }); + + if (error) throw error; + + toast.success('¡Mensaje enviado!', { + description: 'Te responderemos lo antes posible.' + }); + + // Reset form + setFormData({ name: '', email: '', subject: '', message: '' }); + } catch (error) { + console.error('Error sending message:', error); + toast.error('Error al enviar', { + description: 'Por favor intenta de nuevo o contacta por email directamente.' + }); + } finally { + setIsSubmitting(false); + } + }; + + const handleTerminalSubmit = (e: React.FormEvent) => { + e.preventDefault(); + if (!terminalInput.trim()) return; + + setTerminalHistory(prev => [...prev, { type: 'user', text: terminalInput }]); + const userMessage = terminalInput.toLowerCase(); + setTerminalInput(''); + setIsTyping(true); + + setTimeout(() => { + let response = ''; + + if (userMessage.includes('dao') || userMessage.includes('gobernanza') || userMessage.includes('votar')) { + response = 'La DAO de AlienFlowSpace opera en Polygon. Puedes participar en votaciones y propuestas a través de Aragon. ¿Quieres que te envíe el enlace directo?'; + } else if (userMessage.includes('nft') || userMessage.includes('colección')) { + response = 'Nuestras colecciones NFT están disponibles en OpenSea: Alien69Flow y AlienFlowSpace. Son tu pasaporte al ecosistema. ¿Te interesa más información sobre los beneficios?'; + } else if (userMessage.includes('ayuda') || userMessage.includes('soporte')) { + response = 'Estoy aquí para ayudarte. Puedes preguntarme sobre: DAO, NFTs, tokenomics, roadmap, partners o cualquier duda técnica. También puedes contactar al equipo por Telegram: @AlienFlow'; + } else if (userMessage.includes('legal') || userMessage.includes('términos')) { + response = 'Para consultas legales, revisa nuestra política de privacidad en /privacy-policy. Para asuntos específicos, contacta: alien69flow@proton.me'; + } else if (userMessage.includes('token') || userMessage.includes('afs') || userMessage.includes('a69')) { + response = 'Los tokens principales son $AFS (AlienFlowSpace) y $A69 (Alien69Flow), ambos en la red Polygon. ¿Quieres información sobre tokenomics o cómo adquirirlos?'; + } else if (userMessage.includes('hola') || userMessage.includes('hi') || userMessage.includes('hello')) { + response = '¡Bienvenido a bordo! 👽 ¿Qué te gustaría saber sobre AlienFlowSpace? Puedo ayudarte con información sobre la DAO, NFTs, tokens, roadmap y mucho más.'; + } else { + response = 'Interesante consulta. Déjame procesar... Para asistencia detallada, te sugiero contactar directamente por Telegram (@AlienFlow) o email. ¿Hay algo específico sobre el ecosistema que pueda explicarte?'; + } + + setTerminalHistory(prev => [...prev, { type: 'ai', text: response }]); + setIsTyping(false); + }, 1500); + }; + + const socialLinks = [ + { icon: 'discord', name: 'Discord', link: '', text: 'discord.gg/alienflow', comingSoon: true }, + { icon: 'telegram', name: 'Telegram', link: 'https://t.me/AlienFlow', text: '@AlienFlow' }, + { icon: 'x', name: 'X (Twitter)', link: 'https://x.com/alien69flow', text: '@alien69flow' }, + { icon: 'facebook', name: 'Facebook', link: 'https://www.facebook.com/Alien69Flow', text: 'Alien69Flow' }, + { icon: 'instagram', name: 'Instagram', link: 'https://www.instagram.com/alien69flow/', text: '@alien69flow' }, + { icon: 'threads', name: 'Threads', link: 'https://threads.net/@alien69flow', text: '@alien69flow' }, + { icon: 'linkedin', name: 'LinkedIn', link: 'https://linkedin.com/company/alienflowspace', text: 'AlienFlowSpace' }, + { icon: 'github', name: 'GitHub', link: 'https://github.com/Alien69Flow', text: 'Alien69Flow' }, + { icon: 'gitbook', name: 'GitBook', link: 'https://alienflowspace.gitbook.io/DAO', text: 'Documentation' }, + { icon: 'tiktok', name: 'TikTok', link: '', text: '@alienflowspace', comingSoon: true }, + ]; + + return ( +
+
+
+ {/* Hero */} + +

+ + Contact + +

+

+ Centro de comunicaciones intergaláctico. Conecta con el equipo y la comunidad. +

+
+ + {/* Contact Form Section */} + +
+

+ + Envíanos un Mensaje +

+
+
+ + + {formErrors.name &&

{formErrors.name}

} +
+
+ + + {formErrors.email &&

{formErrors.email}

} +
+
+ + + {formErrors.subject &&

{formErrors.subject}

} +
+
+ +