From 5bf7c19ac3ade696f9fa84cd47a838a6ae98790d Mon Sep 17 00:00:00 2001 From: orfelorfel23 Date: Fri, 12 Jun 2026 23:59:18 +0200 Subject: [PATCH] UI: Fixed admin footer with save button, version, and website globe --- src/screens/AdminScreen.tsx | 55 +++++++++++++++++++++++++++++-------- 1 file changed, 44 insertions(+), 11 deletions(-) diff --git a/src/screens/AdminScreen.tsx b/src/screens/AdminScreen.tsx index 6aca92ef..7aaad607 100644 --- a/src/screens/AdminScreen.tsx +++ b/src/screens/AdminScreen.tsx @@ -27,6 +27,7 @@ import { faImages, faFloppyDisk, faFileLines, + faGlobe, } from '@fortawesome/free-solid-svg-icons'; import { THEME } from '../styles/theme'; import { logger } from '../services/logger'; @@ -649,8 +650,15 @@ export default function AdminScreen({ currentSettings, onSave, onClose }: AdminS /> + - + {/* Fixed Footer */} + + + v{appConfig.expo.version} + + + - - App Version {appConfig.expo.version} - Linking.openURL('https://schnappix.orfel.de')}> - schnappix.orfel.de + + Linking.openURL('https://schnappix.orfel.de')} style={styles.globeLink}> + - + {/* Log Modal */} @@ -908,14 +915,40 @@ const styles = StyleSheet.create({ fontWeight: '600', color: THEME.colors.text, }, - saveBtn: { - width: '100%', - maxWidth: 680, + fixedFooter: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + paddingHorizontal: THEME.spacing.xl, + paddingVertical: THEME.spacing.md, + backgroundColor: THEME.colors.surface, + borderTopWidth: 1, + borderTopColor: THEME.colors.border, + }, + footerSideLeft: { + flex: 1, + alignItems: 'flex-start', + justifyContent: 'center', + }, + footerSideRight: { + flex: 1, + alignItems: 'flex-end', + justifyContent: 'center', + }, + versionText: { + color: '#555', + fontSize: 16, + fontWeight: 'bold', + }, + globeLink: { + padding: THEME.spacing.xs, + }, + saveBtnFixed: { + flex: 2, + maxWidth: 400, height: 52, overflow: 'hidden', borderRadius: THEME.borderRadius.md, - marginTop: THEME.spacing.sm, - marginBottom: THEME.spacing.xl, shadowColor: THEME.colors.gradientGlow, shadowOffset: { width: 0, height: 4 }, shadowOpacity: 0.5,