Fix demo banner: i18n for demo button, icon alignment, add addon mgmt & OIDC to full version features

This commit is contained in:
Maurice
2026-03-21 11:11:54 +01:00
parent 2000371844
commit e70fe50ae3
2 changed files with 11 additions and 8 deletions

View File

@@ -15,8 +15,10 @@ const texts = {
'API-Schluessel (Google Maps, Wetter)', 'API-Schluessel (Google Maps, Wetter)',
'Benutzer- & Rechteverwaltung', 'Benutzer- & Rechteverwaltung',
'Automatische Backups', 'Automatische Backups',
'Addon-Verwaltung (aktivieren/deaktivieren)',
'OIDC / SSO Single Sign-On',
], ],
addonsTitle: 'Modulare Addons', addonsTitle: 'Modulare Addons (in der Vollversion deaktivierbar)',
addons: [ addons: [
['Vacay', 'Urlaubsplaner mit Kalender, Feiertagen & Fusion'], ['Vacay', 'Urlaubsplaner mit Kalender, Feiertagen & Fusion'],
['Atlas', 'Weltkarte mit besuchten Laendern & Reisestatistiken'], ['Atlas', 'Weltkarte mit besuchten Laendern & Reisestatistiken'],
@@ -43,8 +45,10 @@ const texts = {
'API key management (Google Maps, Weather)', 'API key management (Google Maps, Weather)',
'User & permission management', 'User & permission management',
'Automatic backups', 'Automatic backups',
'Addon management (enable/disable)',
'OIDC / SSO single sign-on',
], ],
addonsTitle: 'Modular Addons', addonsTitle: 'Modular Addons (can be deactivated in full version)',
addons: [ addons: [
['Vacay', 'Vacation planner with calendar, holidays & user fusion'], ['Vacay', 'Vacation planner with calendar, holidays & user fusion'],
['Atlas', 'World map with visited countries & travel stats'], ['Atlas', 'World map with visited countries & travel stats'],
@@ -61,7 +65,7 @@ const texts = {
}, },
} }
const featureIcons = [Upload, Key, Users, Database] const featureIcons = [Upload, Key, Users, Database, Puzzle, Shield]
const addonIcons = [CalendarDays, Globe, ListChecks, Wallet, FileText, ArrowRightLeft] const addonIcons = [CalendarDays, Globe, ListChecks, Wallet, FileText, ArrowRightLeft]
export default function DemoBanner() { export default function DemoBanner() {
@@ -152,15 +156,14 @@ export default function DemoBanner() {
const Icon = addonIcons[i] const Icon = addonIcons[i]
return ( return (
<div key={name} style={{ <div key={name} style={{
display: 'flex', alignItems: 'flex-start', gap: 8,
background: '#f8fafc', borderRadius: 10, padding: '8px 10px', background: '#f8fafc', borderRadius: 10, padding: '8px 10px',
border: '1px solid #f1f5f9', border: '1px solid #f1f5f9',
}}> }}>
<Icon size={14} style={{ flexShrink: 0, color: '#111827', marginTop: 1 }} /> <div style={{ display: 'flex', alignItems: 'center', gap: 6, marginBottom: 2 }}>
<div> <Icon size={12} style={{ flexShrink: 0, color: '#111827' }} />
<span style={{ fontSize: 11, fontWeight: 700, color: '#111827' }}>{name}</span> <span style={{ fontSize: 11, fontWeight: 700, color: '#111827' }}>{name}</span>
<p style={{ fontSize: 10, color: '#94a3b8', margin: '2px 0 0', lineHeight: 1.3 }}>{desc}</p>
</div> </div>
<p style={{ fontSize: 10, color: '#94a3b8', margin: 0, lineHeight: 1.3, paddingLeft: 18 }}>{desc}</p>
</div> </div>
) )
})} })}

View File

@@ -404,7 +404,7 @@ export default function LoginPage() {
onMouseLeave={e => { e.currentTarget.style.transform = 'translateY(0)'; e.currentTarget.style.boxShadow = '0 2px 12px rgba(245, 158, 11, 0.3)' }} onMouseLeave={e => { e.currentTarget.style.transform = 'translateY(0)'; e.currentTarget.style.boxShadow = '0 2px 12px rgba(245, 158, 11, 0.3)' }}
> >
<Plane size={18} /> <Plane size={18} />
Demo ausprobieren ohne Registrierung {language === 'de' ? 'Demo ausprobierenohne Registrierung' : 'Try the demo — no registration needed'}
</button> </button>
)} )}
</div> </div>