Files
jakob.scheid 15ce39693a new file: a.out
new file:   assets/conversatorai/fonts/SF-Pro-Display-Semibold.otf
	new file:   assets/conversatorai/fonts/SF-Pro-Text-Regular.otf
	new file:   assets/conversatorai/fonts/SF-Pro-Text-Regular.txt
	new file:   assets/conversatorai/fonts/SF-Pro-Text-Regular_richtig.txt
	new file:   assets/conversatorai/index.html
	new file:   assets/conversatorai/scripts/all.js
	new file:   assets/conversatorai/scripts/voice.js
	new file:   assets/conversatorai/styles/all.css
	new file:   assets/conversatorai/styles/mobile.css
	new file:   assets/examples/rating/index.html
	new file:   assets/fonts/SF-Pro-Display-Semibold.otf
	new file:   assets/fonts/SF-Pro-Text-Regular.otf
	new file:   assets/fonts/SF-Pro-Text-Semibold.otf
	new file:   assets/i18n/de/main.js
	new file:   assets/i18n/de/nav/globalfooter.js
	new file:   assets/i18n/de/nav/menus/moreoptions.js
	new file:   assets/i18n/de/pages/contact.js
	new file:   assets/i18n/de/pages/files.js
	new file:   assets/i18n/de/pages/home.js
	new file:   assets/i18n/de/pages/index.js
	new file:   assets/i18n/de/pages/login.js
	new file:   assets/i18n/de/pages/signup.js
	new file:   assets/i18n/de/popups/set-client-language.js
	new file:   assets/i18n/de/private-application-banner.js
	new file:   assets/i18n/de/search.js
	new file:   assets/i18n/en/nav/globalfooter.js
	new file:   assets/i18n/en/nav/menus/moreoptions.js
	new file:   assets/i18n/en/pages/contact.js
	new file:   assets/i18n/en/pages/files.js
	new file:   assets/i18n/en/pages/home.js
	new file:   assets/i18n/en/pages/i18n.js
	new file:   assets/i18n/en/pages/index.js
	new file:   assets/i18n/en/pages/login.js
	new file:   assets/i18n/en/pages/signup.js
	new file:   assets/i18n/en/popups/set-client-language.js
	new file:   assets/i18n/en/private-application-banner.js
	new file:   assets/i18n/en/search.js
	new file:   assets/i18n/it/nav/globalfooter.js
	new file:   assets/i18n/it/nav/menus/moreoptions.js
	new file:   assets/i18n/it/pages/contact.js
	new file:   assets/i18n/it/pages/files.js
	new file:   assets/i18n/it/pages/home.js
	new file:   assets/i18n/it/pages/index.js
	new file:   assets/i18n/it/pages/login.js
	new file:   assets/i18n/it/pages/signup.js
	new file:   assets/i18n/it/popups/set-client-language.js
	new file:   assets/i18n/it/private-application-banner.js
	new file:   assets/i18n/it/search.js
	new file:   assets/i18n/ui-labels/de/main.js
	new file:   assets/i18n/ui-labels/en/main.js
	new file:   assets/i18n/ui-labels/it/main.js
	new file:   assets/img/apps/symbols/logo-150x150.png
	new file:   assets/img/apps/symbols/logo-150x150.svg
	new file:   assets/img/background.jfif
	new file:   assets/img/check/main.svg
	new file:   assets/img/favicon.ico
	new file:   assets/img/favicon.png
	new file:   assets/img/jcloud-ui-icons/angle-down.svg
	new file:   assets/img/jcloud-ui-icons/angle-left.svg
	new file:   assets/img/jcloud-ui-icons/angle-right.svg
	new file:   assets/img/jcloud-ui-icons/angle-up.svg
	new file:   assets/img/jcloud-ui-icons/autocomplete-insert.svg
	new file:   assets/img/jcloud-ui-icons/folder-plus.svg
	new file:   assets/img/jcloud-ui-icons/refresh.svg
	new file:   assets/img/jcloud-ui-icons/search.svg
	new file:   assets/img/jcloud-ui-icons/selected.svg
	new file:   assets/img/jcloud-ui-icons/upload.svg
	new file:   assets/img/logo/logo-30x45.svg
	new file:   assets/img/logo/logo.svg
	new file:   assets/img/nav/go/main.svg
	new file:   assets/img/nav/moreoptions/more-options.svg
	new file:   assets/img/qc/brightness/high.svg
	new file:   assets/img/qc/brightness/low.svg
	new file:   assets/img/qc/notifications/bell.svg
	new file:   assets/img/qc/notifications/dnd.svg
	new file:   assets/img/search.svg
	new file:   assets/legal/de/termsofuse.markdown
	new file:   assets/manifest.webmanifest
	new file:   assets/scripts/change-language/main.js
	new file:   assets/scripts/components/files-item.component.js
	new file:   assets/scripts/constants/main.js
	new file:   assets/scripts/constants/main.min.js
	new file:   assets/scripts/constants/ui-labels/de/main.js
	new file:   assets/scripts/constants/ui-labels/de/main.min.js
	new file:   assets/scripts/constants/ui-labels/en/main.js
	new file:   assets/scripts/constants/ui-labels/en/main.min.js
	new file:   assets/scripts/constants/ui-labels/it/main.js
	new file:   assets/scripts/constants/ui-labels/it/main.min.js
	new file:   assets/scripts/constants/ui-labels/main.js
	new file:   assets/scripts/constants/ui-labels/main.min.js
	new file:   assets/scripts/contact/main.js
	new file:   assets/scripts/contact/main.min.js
	new file:   assets/scripts/elements/dropdown/main.js
	new file:   assets/scripts/elements/dropdown/main.min.js
	new file:   assets/scripts/files/main.js
	new file:   assets/scripts/files/main.min.js
	new file:   assets/scripts/home/main.js
	new file:   assets/scripts/i18n/main.js
	new file:   assets/scripts/i18n/main.min.js
	new file:   assets/scripts/init/init.js
	new file:   assets/scripts/init/init.min.js
	new file:   assets/scripts/main/main.js
	new file:   assets/scripts/main/main.min.js
	new file:   assets/scripts/nav/menus/moreoptions/main.js
	new file:   assets/scripts/nav/menus/moreoptions/main.min.js
	new file:   assets/scripts/popups/change-language/main.js
	new file:   assets/scripts/popups/change-language/main.min.js
	new file:   assets/scripts/popups/popups.js
	new file:   assets/scripts/popups/popups.min.js
	new file:   assets/scripts/scroll/main.js
	new file:   assets/scripts/scroll/main.min.js
	new file:   assets/scripts/search/main.js
	new file:   assets/scripts/tools/main.js
	new file:   assets/scripts/tools/main.min.js
	new file:   assets/scripts/users/main.js
	new file:   assets/scripts/users/main.min.js
	new file:   assets/sitemap.xml
	new file:   assets/styles/elements/apportionment/main.css
	new file:   assets/styles/elements/banners/main.css
	new file:   assets/styles/elements/buttons/main.css
	new file:   assets/styles/elements/checkbox/main.css
	new file:   assets/styles/elements/dropdown/main.css
	new file:   assets/styles/elements/flexbox/main.css
	new file:   assets/styles/elements/inputs/main.css
	new file:   assets/styles/elements/jcloud-ui/dialogs/main.css
	new file:   assets/styles/elements/jcloud-ui/dialogs/mobile/main.css
	new file:   assets/styles/elements/jcloud-ui/dialogs/prompt.css
	new file:   assets/styles/elements/jcloud-ui/dialogs/tablet/main.css
	new file:   assets/styles/elements/jcloud-ui/overlays.css
	new file:   assets/styles/elements/jcloud-ui/textures/glass/main.css
	new file:   assets/styles/elements/lists/actions-list/main.css
	new file:   assets/styles/elements/lists/items-list/main.css
	new file:   assets/styles/elements/lists/items-list/mobile.css
	new file:   assets/styles/elements/main-elements/dark.css
	new file:   assets/styles/elements/main-elements/desktop/main.css
	new file:   assets/styles/elements/main-elements/desktop/main.min.css
	new file:   assets/styles/elements/main-elements/main.css
	new file:   assets/styles/elements/main-elements/mobile/main.css
	new file:   assets/styles/elements/main-elements/tablet/main.css
	new file:   assets/styles/elements/main-elements/tablet_and_desktop/main.css
	new file:   assets/styles/elements/main-elements/tablet_and_desktop/main.min.css
	new file:   assets/styles/elements/page-indicator/main.css
	new file:   assets/styles/font-faces/main.css
	new file:   assets/styles/loaders/loading/main.css
	new file:   assets/styles/loaders/main.css
	new file:   assets/styles/modules/contact/main.css
	new file:   assets/styles/modules/contact/mobile.css
	new file:   assets/styles/modules/files/main.css
	new file:   assets/styles/modules/files/mobile.css
	new file:   assets/styles/modules/home/main.css
	new file:   assets/styles/modules/home/mobile.css
	new file:   assets/styles/modules/home/tablet_and_desktop.css
	new file:   assets/styles/modules/login/main.css
	new file:   assets/styles/modules/search/main.css
	new file:   assets/styles/modules/startpage/main.css
	new file:   assets/styles/modules/startpage/mobile.css
	new file:   assets/styles/modules/startpage/tablet_and_desktop.css
	new file:   assets/styles/nav/globalfooter/main.css
	new file:   assets/styles/nav/globalnav/main.css
	new file:   assets/styles/nav/menus/moreoptions/main.css
	new file:   assets/styles/var/main.css
	new file:   bak
	new file:   index.html
	new file:   index2.html
	new file:   jokisches-reich/Aemter.pdf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/NotoSans-Italic-VariableFont_wdth,wght.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/NotoSans-VariableFont_wdth,wght.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/OFL.txt
	new file:   jokisches-reich/assets/fonts/Noto-Sans/README.txt
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_Condensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_ExtraCondensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Sans/static/NotoSans_SemiCondensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/NotoSerif-Italic-VariableFont_wdth,wght.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/NotoSerif-VariableFont_wdth,wght.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/OFL.txt
	new file:   jokisches-reich/assets/fonts/Noto-Serif/README.txt
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_Condensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_ExtraCondensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Black.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-BlackItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Bold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-BoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-ExtraBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-ExtraBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-ExtraLight.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-ExtraLightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Italic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Light.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-LightItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Medium.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-MediumItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Regular.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-SemiBold.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-SemiBoldItalic.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-Thin.ttf
	new file:   jokisches-reich/assets/fonts/Noto-Serif/static/NotoSerif_SemiCondensed-ThinItalic.ttf
	new file:   jokisches-reich/assets/fonts/noto-serif-v21-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular-eot.eot
	new file:   jokisches-reich/assets/images/flag.jpg
	new file:   jokisches-reich/assets/images/flag.png
	new file:   jokisches-reich/assets/images/flag.svg
	new file:   jokisches-reich/assets/manifest.webmanifest
	new file:   jokisches-reich/assets/styles/main/main.css
	new file:   jokisches-reich/geschichte/index.html
	new file:   jokisches-reich/geschichte/informationen/index.html
	new file:   jokisches-reich/gesetze/assets/styles/main/main.css
	new file:   jokisches-reich/gesetze/index.html
	new file:   jokisches-reich/gesetze/verfassung/index.html
	new file:   jokisches-reich/index.html
	new file:   jokisches-reich/internationales/assets/images/id-card-solid.jpg
	new file:   jokisches-reich/internationales/assets/images/id-card-solid.svg
	new file:   jokisches-reich/internationales/index.html
	new file:   jokisches-reich/internationales/staatsbuergerschaft/index.html
	new file:   jokisches-reich/presse/index.html
	new file:   jokisches-reich/presse/kurzmeldungen/564878/index.html
	new file:   jokisches-reich/presse/kurzmeldungen/753042/index.html
	new file:   jokisches-reich/presse/kurzmeldungen/index.html
	new file:   jokisches-reich/regierung/index.html
	new file:   jokisches-reich/regierung/ministerien/finanzministerium/index.html
	new file:   jokisches-reich/regierung/ministerien/index.html
	new file:   jokisches-reich/regierung/ministerien/ministerium-fuer-aeussere-angelegenheiten/index.html
	new file:   jokisches-reich/regierung/ministerien/ministerium-fuer-digitales/index.html
	new file:   jokisches-reich/regierung/ministerien/ministerium-fuer-innere-angelegenheiten/index.html
	new file:   jokisches-reich/regierung/ministerien/ministerium-fuer-wirtschaft/index.html
	new file:   jokisches-reich/regierung/ministerien/verkehrsministerium/index.html
	new file:   jokisches-reich/regierung/ministerien/verteidigungsministerium/index.html
	new file:   jokisches-reich/sitemap/index.html
	new file:   jokisches-reich/wirtschaft/assets/images/geldscheine-euro.jpg
	new file:   jokisches-reich/wirtschaft/assets/images/gewinndiagramm-steigend.jpg
	new file:   jokisches-reich/wirtschaft/assets/images/jok.png
	new file:   jokisches-reich/wirtschaft/assets/images/jok.svg
	new file:   jokisches-reich/wirtschaft/boerse/index.html
	new file:   jokisches-reich/wirtschaft/index.html
	new file:   jokisches-reich/wirtschaft/jok/index.html
	new file:   legal/user-consent/de/index.html
	new file:   legal/user-consent/en/index.html
	new file:   legal/user-consent/it/index.html
	new file:   seekra/index.html
	new file:   seekra/sign-in-test/index.html
	new file:   seekra/sign-in/index.html
	new file:   seekra/static/aes/index.html
	new file:   seekra/static/aes/main.js
	new file:   seekra/static/img/favicon.ico
	new file:   seekra/static/img/favicon.jpeg
	new file:   seekra/static/img/favicon.png
	new file:   seekra/static/img/favicon/Unbenannt.png
	new file:   seekra/static/img/favicon/favicon.ico
	new file:   seekra/static/img/favicon/favicon.png
	new file:   seekra/static/img/favicon/favicon.svg
	new file:   seekra/static/img/search/magnifying-glass.svg
	new file:   seekra/static/img/user/main.svg
	new file:   seekra/static/skr-clientlib/scripts/js/account/main.js
	new file:   seekra/static/skr-clientlib/scripts/js/tools/main.js
	new file:   seekra/static/skr-clientlib/styles/css/dark/var/main.css
	new file:   seekra/static/skr-clientlib/styles/css/elements/inputs/main.css
	new file:   seekra/static/skr-clientlib/styles/css/footer/globalfooter/main.css
	new file:   seekra/static/skr-clientlib/styles/css/main/main.css
	new file:   seekra/static/skr-clientlib/styles/css/nav/globalnav/navbar/main.css
	new file:   seekra/static/skr-clientlib/styles/css/var/main.css
2025-12-17 16:13:45 +01:00

211 lines
11 KiB
JavaScript

import { loadPageTexts, getPageText } from '../i18n/main.js';
import { hide_login_page, hide_signup_page, show_startpage, show_home } from '../main/main.js';
import { validatePasswordSecurity, countOccurrences, jCloudUIElements } from '../tools/main.js';
import { more_options_menu_hide } from '../nav/menus/moreoptions/main.js';
const submit_email = function () {
const email = document.querySelector('#email');
const passwordContainer = document.querySelector('#password-container');
const password = document.querySelector('#password');
if (email.value.length > 0) {
email.style.borderBottomLeftRadius = '0';
email.style.borderBottomRightRadius = '0';
password.style.borderTopLeftRadius = '0';
password.style.borderTopRightRadius = '0';
password.classList.add('show');
passwordContainer.style.display = 'block';
setTimeout(() => {
passwordContainer.classList.add('show');
}, 10);
};
email.addEventListener('input', function () {
if (email.value.length === 0) {
setTimeout(() => {
passwordContainer.classList.remove('show');
}, 10);
email.style.borderBottomLeftRadius = '10px';
email.style.borderBottomRightRadius = '10px';
password.style.borderTopLeftRadius = '10px';
password.style.borderTopRightRadius = '10px';
password.classList.remove('show');
passwordContainer.style.display = 'none';
};
});
};
const check_password = async function () {
const email = document.querySelector('#email').value;
const password = document.querySelector('#password').value;
document.querySelector('#loading').style.display = 'flex';
const error = document.querySelector('#login-error');
const params = new URLSearchParams();
params.append('e', email);
params.append('p', password);
params.append('s', document.querySelector('#login-options-stay').checked ? 'true' : 'false')
await fetch('https://jcloud-services.ddns.net:1024/get-token', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: params.toString(),
credentials: 'include'
})
.then(async response => {
if (response.status === 200) {
const token = await response.text();
document.cookie = `signed_in=true; path=/; ${document.querySelector('#login-options-stay').checked ? 'Max-Age=1728000' : ''}; Secure; SameSite=strict`;
document.querySelector('#authorized-mom-part').style.display = 'block';
hide_login_page();
show_home();
} else if (response.status === 401) {
error.textContent = await getPageText('/login', '0a3277611792429cbdbea27f8238b2e9', '0');
error.classList.remove('hidden');
} else if (response.status === 404) {
error.textContent = await getPageText('/login', '6f7684f96cfe47e3ad01c1f566de5f53', '0');
error.classList.remove('hidden');
};
})
.catch(async err => { await jCloudUIElements.alert(err) });
document.querySelector('#loading').style.display = 'none';
};
const createUser = async function () {
const error = document.querySelector('#signup-error');
const email = document.querySelector('#signup-email').value;
const password = document.querySelector('#signup-password').value;
const passwordConfirmation = document.querySelector('#signup-password-confirm').value;
const firstName = document.querySelector('#signup-first-name').value;
const lastName = document.querySelector('#signup-last-name').value;
const language = document.querySelector('#signup-language').value;
const birthDate = new Date(document.querySelector('#signup-birth-date').value);
const age = Math.floor((new Date() - birthDate) / (1000 * 60 * 60 * 24));
const preInstalledApplications = document.querySelector('#signup-pre-installed-applications').value;
const preInstalledApplicationsInstallingLocations = document.querySelector('#signup-pre-installed-applications-installing-locations').value;
if (email && password && passwordConfirmation && firstName && lastName && language && birthDate && preInstalledApplications && preInstalledApplicationsInstallingLocations) {
if (age >= 4745) {
if (email.length > 0 && countOccurrences(email, '@') === 1) {
if (password === passwordConfirmation) {
if (validatePasswordSecurity(password)) {
let params = new URLSearchParams();
params.append('p', password);
params.append('fn', firstName);
params.append('ln', lastName);
params.append('lang', language);
params.append('by', birthDate.getFullYear());
params.append('bm', birthDate.getMonth() + 1);
params.append('bd', birthDate.getDate());
params.append('pia', preInstalledApplications);
params.append('il', preInstalledApplicationsInstallingLocations);
await fetch(`https://jcloud-services.ddns.net:1024/user/${email}`, {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: params.toString()
})
.then(async response => {
if (response.status === 202) {
await jCloudUIElements.alert('Das Konto wurde erfolgreich erstellt.');
params = new URLSearchParams();
params.append('e', email);
params.append('p', password);
params.append('s', 'false');
await fetch('https://jcloud-services.ddns.net:1024/session', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: params.toString(),
credentials: 'include'
})
.then(async response => {
if (response.status === 200) {
document.cookie = `User=${email}; path=/; Max-Age=1728000; Secure; Samesite=strict`;
document.cookie = 'signed_in=true; path=/; Max-Age=1728000; Secure; Samesite=strict';
window.location.href = '/';
// hide_signup_page();
// show_home();
// document.querySelector('#authorized-mom-part').style.display = 'block';
};
})
.catch(async err => {
await jCloudUIElements.alert(err);
});
} else if (response.status === 409) {
error.innerHTML = await getPageText('/signup', 'e730f1e7a56a49e383ab4dc25d85072f', '0');
} else if (response.status === 500) {
error.innerHTML = error.innerHTML = await getPageText('/signup', '9094396415c14bfeb09dc3de40c74936', '0');
};
})
.catch(async err => { await jCloudUIElements.alert(err) });
} else {
error.innerHTML = await getPageText('/signup', '676e5f3ada1b40488aa841ae380d6fa3', '0');
};
} else {
error.innerHTML = await getPageText('/signup', '7d6499350697401c8ea2f7ca60d0c474', '1');
};
} else {
error.innerHTML = await getPageText('/signup', '2c04ed45a2d04b42916f5d23ee63e7c1', '0');
};
} else {
error.innerHTML = await getPageText('/signup', '2bc37506b1024fe196a6aea65406b83f', '0');
};
} else {
error.innerHTML = await getPageText('/signup', 'a827a1ffb86e4f0786e951abe4a54ab3', '0');
};
};
const signupPage1 = function () {
const page1 = document.querySelector('#signup-form-page-1');
const page2 = document.querySelector('#signup-form-page-2');
page1.classList.remove('hidden');
page2.classList.add('hidden');
};
const signupPage2 = function () {
const page1 = document.querySelector('#signup-form-page-1');
const page2 = document.querySelector('#signup-form-page-2');
const page3 = document.querySelector('#signup-form-page-3');
page1.classList.add('hidden');
page2.classList.remove('hidden');
page3.classList.add('hidden');
};
const signupPage3 = function () {
const page2 = document.querySelector('#signup-form-page-2');
const page3 = document.querySelector('#signup-form-page-3');
page2.classList.add('hidden');
page3.classList.remove('hidden');
};
const signOut = async function () {
await fetch('https://jcloud-services.ddns.net:1024/session',
{
method: 'DELETE',
credentials: 'include'
}
)
.then(async response => {
if (response.status === 204) {
document.cookie = "User=; path=/; max-age=-1";
document.cookie = "signed_in=; path=/; max-age=-1";
more_options_menu_hide();
show_startpage();
document.querySelector('#authorized-mom-part').style.display = 'none';
history.pushState(null, '', '/');
await loadPageTexts('/');
document.querySelector('#files').setAttribute('class', 'hidden');
document.querySelector('#home').setAttribute('class', 'hidden');
document.querySelector('#link-home').style.display = 'none';
document.querySelector('#user-details-on-footer').style.display = 'none';
document.querySelector('#user-details-on-footer').setAttribute('class', '');
window.scroll(0, 0);
} else {
await jCloudUIElements.alert('Aufgrund eines unbekannten Fehlers ist eine Abmeldung derzeit nicht möglich. Bitte versuchen Sie es später erneut.');
}
})
.catch(async _ => {
await jCloudUIElements.alert('Aufgrund eines Netzwerkfehlers ist eine Abmeldung derzeit nicht möglich. Bitte versuchen Sie es später erneut.');
})
};
export { submit_email, check_password, createUser, signupPage1, signupPage2, signupPage3, signOut };