diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 5095fe61..b123d92b 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -43,24 +43,21 @@ const config: Config = { }, }, - presets: [ - [ - 'classic', - { - docs: { - sidebarPath: './sidebars.ts', - // Please change this to your repo. - // Remove this to remove the "edit this page" links. - editUrl: - 'https://github.com/opencloud-eu/docs/tree/main', - }, - blog: false, - theme: { - customCss: './src/css/custom.css', - }, - } satisfies Preset.Options, - ], +presets: [ + [ + 'classic', + { + docs: { + sidebarPath: require.resolve('./sidebars.ts'), + editUrl: 'https://github.com/opencloud-eu/docs/tree/main', + }, + blog: false, + theme: { + customCss: require.resolve('./src/css/custom.css'), + }, + } satisfies Preset.Options, ], +], themeConfig: { image: 'img/oc-docs-social-card.jpg', @@ -92,6 +89,10 @@ const config: Config = { position: 'left', label: 'Dev', }, + { + type: 'docsVersionDropdown', + position: 'right', + }, { type: 'localeDropdown', position: 'right' diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0.json b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0.json new file mode 100644 index 00000000..451399a9 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0.json @@ -0,0 +1,235 @@ +{ + "version.label": { + "message": "Next", + "description": "The label for version current" + }, + "sidebar.tutorialSidebar.category.admin": { + "message": "admin", + "description": "The label for category admin in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.user": { + "message": "user", + "description": "The label for category user in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Manage Files and Folders": { + "message": "Verwalten von Dateien und Ordnern", + "description": "The label for category Manage Files and Folders in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Manage Files and Folders.link.generated-index.description": { + "message": "Anleitung zur Verwaltung von Dateien und Ordnern.", + "description": "The generated-index page description for category Manage Files and Folders in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Share Files and Folders": { + "message": "Teilen von Dateien und Ordnern", + "description": "The label for category Share Files and Folders in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Share Files and Folders.link.generated-index.description": { + "message": "Anleitung zum Teilen von Dateien und Ordnern.", + "description": "The generated-index page description for category Share Files and Folders in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Working in teams with Spaces": { + "message": "Arbeiten im Team mit Spaces", + "description": "The label for category Working in teams with Spaces in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Working in teams with Spaces.link.generated-index.description": { + "message": "Anleitung zum Thema Spaces.", + "description": "The generated-index page description for category Working in teams with Spaces in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.User Interface and Navigation": { + "message": "Benutzeroberfläche und Navigation", + "description": "The label for category User Interface and Navigation in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.User Interface and Navigation.link.generated-index.description": { + "message": "Anleitung zur Benutzeroberfläche und Navigation in OpenCloud.", + "description": "The generated-index page description for category User Interface and Navigation in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Administration of OpenCloud": { + "message": "Administration von OpenCloud", + "description": "The label for category Administration of OpenCloud in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Administration of OpenCloud.link.generated-index.description": { + "message": "Anleitung zur Verwaltung deiner OpenCloud.", + "description": "The generated-index page description for category Administration of OpenCloud in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Roles": { + "message": "Rollen", + "description": "The label for category Roles in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.Roles.link.generated-index.description": { + "message": "Anleitung zur Vergabe von Rollen in OpenCloud.", + "description": "The generated-index page description for category Roles in sidebar tutorialSidebar" + }, + "sidebar.user.category.Manage Files and Folders": { + "message": "Verwalten von Dateien und Ordnern", + "description": "The label for category Manage Files and Folders in sidebar user" + }, + "sidebar.user.category.Manage Files and Folders.link.generated-index.description": { + "message": "Anleitung zur Verwaltung von Dateien und Ordnern.", + "description": "The generated-index page description for category Manage Files and Folders in sidebar user" + }, + "sidebar.user.category.Share Files and Folders": { + "message": "Teilen von Dateien und Ordnern", + "description": "The label for category Share Files and Folders in sidebar user" + }, + "sidebar.user.category.Share Files and Folders.link.generated-index.description": { + "message": "Anleitung zum Teilen von Dateien und Ordnern.", + "description": "The generated-index page description for category Share Files and Folders in sidebar user" + }, + "sidebar.user.category.Working in teams with Spaces": { + "message": "Arbeiten im Team mit Spaces", + "description": "The label for category Working in teams with Spaces in sidebar user" + }, + "sidebar.user.category.Working in teams with Spaces.link.generated-index.description": { + "message": "Anleitung zum Thema Spaces.", + "description": "The generated-index page description for category Working in teams with Spaces in sidebar user" + }, + "sidebar.user.category.User Interface and Navigation": { + "message": "Benutzeroberfläche und Navigation", + "description": "The label for category User Interface and Navigation in sidebar user" + }, + "sidebar.user.category.User Interface and Navigation.link.generated-index.description": { + "message": "Anleitung zur Benutzeroberfläche und Navigation in OpenCloud.", + "description": "The generated-index page description for category User Interface and Navigation in sidebar user" + }, + "sidebar.user.category.Administration of OpenCloud": { + "message": "Administration von OpenCloud", + "description": "The label for category Administration of OpenCloud in sidebar user" + }, + "sidebar.user.category.Administration of OpenCloud.link.generated-index.description": { + "message": "Anleitung zur Verwaltung deiner OpenCloud.", + "description": "The generated-index page description for category Administration of OpenCloud in sidebar user" + }, + "sidebar.user.category.Roles": { + "message": "Rollen", + "description": "The label for category Roles in sidebar user" + }, + "sidebar.user.category.Roles.link.generated-index.description": { + "message": "Anleitung zur Vergabe von Rollen in OpenCloud.", + "description": "The generated-index page description for category Roles in sidebar user" + }, + "sidebar.tutorialSidebar.category.OpenCloud Desktop": { + "message": "OpenCloud Desktop", + "description": "The label for category OpenCloud Desktop in sidebar tutorialSidebar" + }, + "sidebar.tutorialSidebar.category.OpenCloud Desktop.link.generated-index.description": { + "message": "Tutorials about the OpenCloud Desktop.", + "description": "The generated-index page description for category OpenCloud Desktop in sidebar tutorialSidebar" + }, + "sidebar.user.category.OpenCloud Desktop": { + "message": "OpenCloud Desktop", + "description": "The label for category OpenCloud Desktop in sidebar user" + }, + "sidebar.user.category.OpenCloud Desktop.link.generated-index.description": { + "message": "Anleitungen zu OpenCloud Desktop.", + "description": "The generated-index page description for category OpenCloud Desktop in sidebar user" + }, + "sidebar.admin.category.Welcome": { + "message": "Welcome", + "description": "The label for category Welcome in sidebar admin" + }, + "sidebar.admin.category.Getting Started": { + "message": "Getting Started", + "description": "The label for category Getting Started in sidebar admin" + }, + "sidebar.admin.category.Getting Started.link.generated-index.description": { + "message": "🚀 Getting Started", + "description": "The generated-index page description for category Getting Started in sidebar admin" + }, + "sidebar.admin.category.Docker": { + "message": "Docker", + "description": "The label for category Docker in sidebar admin" + }, + "sidebar.admin.category.Other": { + "message": "Other", + "description": "The label for category Other in sidebar admin" + }, + "sidebar.admin.category.Configuration": { + "message": "Configuration", + "description": "The label for category Configuration in sidebar admin" + }, + "sidebar.admin.category.Configuration.link.generated-index.description": { + "message": "⚙️ Configuration", + "description": "The generated-index page description for category Configuration in sidebar admin" + }, + "sidebar.admin.category.Maintenance": { + "message": "Maintenance", + "description": "The label for category Maintenance in sidebar admin" + }, + "sidebar.admin.category.Maintenance.link.generated-index.description": { + "message": "🛠️ Maintenance", + "description": "The generated-index page description for category Maintenance in sidebar admin" + }, + "sidebar.admin.category.Resources": { + "message": "Resources", + "description": "The label for category Resources in sidebar admin" + }, + "sidebar.admin.category.Resources.link.generated-index.description": { + "message": "Resources", + "description": "The generated-index page description for category Resources in sidebar admin" + }, + "sidebar.dev.category.Web": { + "message": "Web", + "description": "The label for category Web in sidebar dev" + }, + "sidebar.dev.category.Development": { + "message": "Development", + "description": "The label for category Development in sidebar dev" + }, + "sidebar.dev.category.Testing": { + "message": "Testing", + "description": "The label for category Testing in sidebar dev" + }, + "sidebar.dev.category.Extension System": { + "message": "Extension System", + "description": "The label for category Extension System in sidebar dev" + }, + "sidebar.dev.category.Extension Types": { + "message": "Extension Types", + "description": "The label for category Extension Types in sidebar dev" + }, + "sidebar.user.category.Files and Folders": { + "message": "Dateien und Ordner", + "description": "Tutorials for managing your files and folders in the OpenCloud iOS App." + }, + "sidebar.user.category.Files and Folders.link.generated-index.description": { + "message": "Anleitungen rund um Dateien und Ordner", + "description": "Tutorials for managing your files and folders in the OpenCloud iOS App." + }, + "sidebar.user.category.General": { + "message": "Allgemein", + "description": "Tutorials about installing, setup and overview of the OpenCloud iOS App." + }, + "sidebar.user.category.General.link.generated-index.description": { + "message": "Anleitungen zur Installation, Einrichtung und Übersicht.", + "description": "Tutorials for managing your files and folders in the OpenCloud iOS App." + }, + "sidebar.user.category.Shares": { + "message": "Teilen", + "description": "Tutorials about creating shares the OpenCloud iOS App." + }, + "sidebar.user.category.Shares.link.generated-index.description": { + "message": "Anleitungen zum Teilen von Dateien und Ordner in der OpenClous iOS App.", + "description": "Tutorials about creating shares the OpenCloud iOS App." + }, + "sidebar.user.category.OpenCloud iOS App": { + "message": "OpenCloud iOS App", + "description": "Tutorials about the OpenCloud iOS App." + }, + "sidebar.user.category.OpenCloud iOS App.link.generated-index.description": { + "message": "Anleitungen für die OpenCloud iOS App.", + "description": "The generated-index page description for category OpenCloud iOS App in sidebar tutorialSidebar" + }, + "sidebar.user.category.Overview": { + "message": "Übersicht", + "description": "Overview of the user interface of the OpenCloud iOS App." + }, + "sidebar.user.category.Overview.link.generated-index.description": { + "message": "Übersicht der Benutzeroberfläche in der OpenCloud iOS App.", + "description": "The generated-index page description for category Overview in sidebar tutorialSidebar" + }, + "sidebar.user.category.Common functionality": { + "message": "Allgemeine Funktionen", + "description": "Label für die Kategorie Common Functionality in der deutschen Sidebar" + } + +} \ No newline at end of file diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/app-tokens.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/app-tokens.md new file mode 100644 index 00000000..c18b5d66 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/app-tokens.md @@ -0,0 +1,74 @@ +--- +sidebar_position: 2 +id: app-tokens +title: App Tokens +description: App Tokens in OpenCLoud +draft: false +--- + +# App-Tokens + +App-Tokens ermöglichen es Ihnen, externe Apps und Dienste (z. B. WebDAV-Clients) zu verbinden, ohne Ihr Hauptpasswort zu verwenden. + +Dies verbessert die Sicherheit auf mehrere Arten: + +- Ihr Login-Passwort muss nicht an Drittanbieter-Anwendungen weitergegeben werden. +- App-Tokens können widerrufen werden. Wenn Sie befürchten, dass ein Token kompromittiert wurde, löschen Sie es einfach. +- App-Tokens können ein Ablaufdatum haben. Das reduziert potenzielle Angriffsflächen. + +Zusätzlich zur erhöhten Sicherheit verbessern App-Tokens auch die Kompatibilität mit Drittanbieter-Anwendungen. Viele +Anwendungen unterstützen moderne Login-Verfahren wie OpenID Connect nicht und akzeptieren nur Standard-Logins mit Benutzername +und Passwort. Ihr Benutzername in Kombination mit einem App-Token dient genau diesem Zweck. + +:::important +App-Tokens ermöglichen Drittanbieter-Anwendungen Zugriff auf all Ihre Daten. Erstellen Sie daher +für jede Anwendung ein eigenes App-Token und wählen Sie ein angemessenes Ablaufdatum. +Wenn Sie keinen vollständigen Zugriff gewähren möchten, verwenden Sie stattdessen einen öffentlichen Link. +::: + +## App-Token erstellen + +- Gehen Sie in Ihren OpenCloud-Kontoeinstellungen zum Bereich „App-Tokens“. +- Klicken Sie auf „+ Neu“, um ein neues Token zu erstellen. + + Create App Token + +- Geben Sie einen Namen für das Token ein (z. B. „WebDAV Client“). +- Wählen Sie ein Ablaufdatum, um die Sicherheit zu erhöhen. +- Klicken Sie auf „Bestätigen“. + + Namen eingeben und Ablaufdatum wählen + +## App-Token kopieren + +- Nach der Erstellung wird das Token nur ein einziges Mal angezeigt. +- Kopieren Sie es sofort und bewahren Sie es sicher auf. + + Copy Token + +:::note +Wenn Sie das Token verlieren, müssen Sie es löschen und ein neues erstellen. +::: + +## App-Token verwenden + +Sie können das Token nun anstelle Ihres Passworts verwenden, zum Beispiel bei: + +- WebDAV +- Externen Apps +- Drittanbieter-Diensten + +:::info +Der Benutzername entspricht in der Regel dem Benutzernamen Ihres regulären Logins. +Wenn der Identity Provider jedoch im Autoprovisioning-Modus läuft, kann nur die UUID verwendet werden. +Diese finden Sie in der Übersicht der Einstellungen. +::: + +## App-Token löschen + +Wenn ein Token nicht mehr benötigt wird: + +- Gehen Sie erneut zum Bereich „App-Tokens“. +- Klicken Sie auf das Papierkorb-Symbol neben dem entsprechenden Token, um es zu entfernen. + +So stellen Sie sicher, dass ungenutzte Tokens nicht missbraucht werden können. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/copy-token.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/copy-token.png new file mode 100644 index 00000000..1ea6fc6b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/copy-token.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/create.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/create.png new file mode 100644 index 00000000..7f57f552 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/create.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/enter-name.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/enter-name.png new file mode 100644 index 00000000..20c30bec Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/app-tokens/enter-name.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/admin-einstellungen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/admin-einstellungen.png new file mode 100644 index 00000000..1ed8d0d6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/admin-einstellungen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/allgemein.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/allgemein.png new file mode 100644 index 00000000..e8fb7d14 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/allgemein.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/gruppen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/gruppen.png new file mode 100644 index 00000000..cdf91131 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/gruppen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/personen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/personen.png new file mode 100644 index 00000000..71a000f4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/personen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/spaces.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/spaces.png new file mode 100644 index 00000000..0e234f21 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/settings/spaces.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/preferences.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/preferences.png new file mode 100644 index 00000000..4f26606c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/preferences.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/webdav-url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/webdav-url.png new file mode 100644 index 00000000..4cea59fc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/img/webdav/webdav-url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/settings.md new file mode 100644 index 00000000..c216d790 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/settings.md @@ -0,0 +1,56 @@ +--- +sidebar_position: 1 +id: settings +title: Einstellungen +description: Einstellungen +draft: false +--- + +# Überblick über den Admin-Bereich + +Im Admin-Bereich von OpenCloud haben Sie umfangreiche Verwaltungsoptionen für Ihre Organisation. Hier sind die wichtigsten Bereiche: +Admin settings + +## Allgemein + +- Versionsübersicht: + Im Bereich Allgemein kannst du Informationen zu deiner aktuellen OpenCloud-Version einsehen und prüfen, ob eine neuere Version verfügbar ist. + Admin general + +:::note +Die Versionsprüfung kann von einem Administrator deaktiviert worden sein. +Wenn diese Option ausgeschaltet ist, werden Informationen über neuere Versionen nicht angezeigt. +::: + +## Benutzer + +- Übersicht der Benutzer + Hier haben Sie einen Überblick über alle Benutzer von Ihre OpenCloud. +- Benutzer verwalten: + Abhängig von Ihren Benutzerverwaltungseinstellungen können Sie: + - Benutzer erstellen oder löschen + - Benutzer bearbeiten (z.B. Rechte oder Einstellungen ändern) + - Quota (Speicherplatz) von Benutzern ändern + - Benutzer in Gruppen hinzufügen oder entfernen + - Allow or prohibit logins (for individual users) + Admin users + +## Gruppen + +- Übersicht der Gruppen + Hier können Sie die vorhandenen Gruppen Ihrer OpenCloud anzeigen. +- Gruppen verwalten: + Sie können lokale Gruppen erstellen, bearbeiten oder löschen und Mitglieder hinzufügen oder entfernen. +- Importierte Gruppen: Externe Gruppen, die über ein externes Benutzerverwaltungssystem importiert wurden, können hier nicht bearbeitet werden. Diese Gruppen sind mit einem Sperrsymbol + gekennzeichnet, um anzuzeigen, dass sie gesperrt sind. + Admin groups + +## Spaces + +- Übersicht der Spaces + Hier sehen Sie alle vorhandenen Spaces in Ihrer OpenCloud. + - Space Management: Als Administrator haben Sie volle Rechte auf: + - Bearbeiten + - Deaktivieren oder aktivieren + - Löschen + Admin spaces diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/web-dav.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/web-dav.md new file mode 100644 index 00000000..2c1c4f4a --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/admin/web-dav.md @@ -0,0 +1,92 @@ +--- +sidebar_position: 3 +id: web-dav +title: WebDAV +description: Verbindung zu einem Space via WebDAV +draft: false +--- + +# Verbindung zu einem Space via WebDAV herstellen + +Mit WebDAV kannst du OpenCloud-Spaces als Netzlaufwerke auf deinem Gerät einbinden und deine Dateien direkt über den Dateimanager verwalten – ganz ohne Browser. + +## Voraussetzungen + +- Ein gültiges OpenCloud-Konto mit aktivierter WebDAV-Information in den Einstellungen +- Zugriff auf einen Space in OpenCloud +- Ein WebDAV-Client (z. B. integrierte Unterstützung des Betriebssystems oder [Mountain Duck](https://mountainduck.io/)) +- (Optional, aber empfohlen) Ein App-Token + → [So erstellst du ein App-Token](./app-tokens.md) + +## Schritt-für-Schritt-Anleitung + +### WebDAV-Informationen in der Oberfläche aktivieren + +Um die WebDAV-Informationen für deine Spaces anzuzeigen: + +- Gehe zu den Kontoeinstellungen +- Aktiviere „WebDAV-Info in der Detailansicht anzeigen“ + + WebDAV-Info aktivieren + +### App-Token erstellen (falls erforderlich) + +Einige WebDAV-Clients (insbesondere solche ohne OIDC-Unterstützung wie Mountain Duck) benötigen ein App-Token zur Authentifizierung. + +:::note +Wir empfehlen aus Sicherheitsgründen die Verwendung eines App-Tokens anstelle deines Passworts. +::: + +- Gehe zu Einstellungen > App-Tokens +- Klicke auf „+ Neu“, gib einen Namen ein und wähle ein Ablaufdatum +- Kopiere den Token sofort – er wird nur einmal angezeigt + → [Siehe App-Token-Anleitung](./app-tokens.md) + +### WebDAV-URL abrufen + +Öffne das Info-Panel deines Spaces in der OpenCloud-Weboberfläche. + +Du findest dort einen Abschnitt „WebDAV“ – kopiere die vollständige URL. Diese sieht beispielsweise so aus: + +`https://cloud.example.de/remote.php/dav/spaces/12345678-abcd-efgh-ijkl-987654321000/` + +WebDAV-URL + +### Verbindung via WebDAV herstellen + +Stelle nun die Verbindung zu deinem Gerät über die WebDAV-URL her: + +- Benutzername: dein OpenCloud-Benutzername +- Passwort: dein App-Token (oder Passwort, falls erlaubt) + +Du kannst je nach Betriebssystem unterschiedliche Clients verwenden: + +## Windows + +- Öffne den Datei-Explorer → Klicke auf „Dieser PC“ → Wähle „Netzlaufwerk verbinden“ +- Gib die WebDAV-URL ein +- Authentifiziere dich mit Benutzername und App-Token + +## macOS + +- Wähle im Finder „Gehe zu“ > „Mit Server verbinden…“ +- Gib die WebDAV-URL ein +- Melde dich mit deinen Zugangsdaten oder dem App-Token an + +## Linux + +- Nutze die Funktion „Mit Server verbinden“ deines Dateimanagers +- Format der URL: + `davs://cloud.beispiel.de/remote.php/dav/spaces//` + +:::note +Nach erfolgreicher Verbindung verhält sich dein Space wie ein normaler Ordner. +::: + +:::note + +- Wenn dein WebDAV-Client OIDC unterstützt, ist ein App-Token eventuell nicht erforderlich +- Verwende immer `https://` für einen sicheren Zugriff +- App-Tokens können jederzeit in den Kontoeinstellungen widerrufen werden + +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/create-rename-move.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/create-rename-move.md new file mode 100644 index 00000000..e8e0fbed --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/create-rename-move.md @@ -0,0 +1,85 @@ +--- +sidebar_position: 1 +id: create-rename-move +title: Erstellen - Umbenennen - Verschieben +description: Erstellen - Umbenennen - Verschieben +draft: false +--- + +# Erstellen, Umbenennen und Verschieben von Dateien und Ordnern + +Mit der OpenCloud Android-App können Sie Ihre Inhalte ganz einfach verwalten. Sie können neue Ordner und Dateien erstellen, Elemente umbenennen und an andere Speicherorte verschieben – direkt von Ihrem Android-Smartphone oder -Tablet aus. + +## Dateien und Ordner erstellen + +Tippen Sie auf das „+“-Symbol unten rechts. + +Neu erstellen + +Wählen Sie im Menü aus, was Sie erstellen möchten: + +### Ordner erstellen + +- Tippen Sie auf „Neuer Ordner“ +- Geben Sie einen Namen für Ihren Ordner ein +- Tippen Sie auf „OK“ + +Ordner erstellen + +### Dokument erstellen (erfordert Collabora) + +Wenn Collabora Online in Ihrer OpenCloud-Instanz aktiviert ist: + +- Tippen Sie auf „Neues Dokument“ +- Wählen Sie den Dokumenttyp (Text, Tabelle, Präsentation) +- Geben Sie einen Dateinamen ein und bestätigen Sie + +Dateityp wählen + +Das Dokument wird in einem integrierten Browserfenster mit **Collabora** zur Bearbeitung geöffnet. + +Collabora öffnen +Collabora bearbeiten + +## Dateien oder Ordner umbenennen + +So benennen Sie eine Datei oder einen Ordner in der OpenCloud Android-App um: + +- Tippen Sie auf die „drei Punkte (…)“ neben dem Element, das Sie umbenennen möchten + +Drei-Punkte-Menü + +- Wählen Sie „Umbenennen“ aus dem Menü + +Umbenennen wählen + +- Geben Sie den neuen Namen für die Datei oder den Ordner ein + +Neuen Namen eingeben + +- Tippen Sie auf „OK“, um die Änderungen zu übernehmen + +OK tippen +Neuer Name übernommen + +Der neue Name wird sofort gespeichert. + +## Dateien oder Ordner verschieben + +So verschieben Sie eine Datei oder einen Ordner in der OpenCloud Android-App: + +- Tippen Sie auf die „drei Punkte (…)“ neben der Datei oder dem Ordner, die bzw. den Sie verschieben möchten + +Drei-Punkte-Menü auswählen + +- Wählen Sie „Verschieben“ oder „Kopieren“ aus dem Menü + +Verschieben oder Kopieren wählen + +Navigieren Sie zum Zielordner +Tippen Sie auf „Hierher verschieben“ oder „Hierher kopieren“ + +Einfügen auswählen +Datei wurde verschoben + +Die Datei oder der Ordner wird nun am neuen Speicherort angezeigt. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/upload-make-available-offline.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/upload-make-available-offline.md new file mode 100644 index 00000000..c47cde20 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/files-and-folders/upload-make-available-offline.md @@ -0,0 +1,65 @@ +--- +sidebar_position: 2 +id: upload-make-available-offline +title: Hochladen - Offline verfügbar machen +description: Dateien hochladen in Android +draft: false +--- + +# Dateien hochladen in Android + +Mit der OpenCloud Android-App können Sie ganz einfach Dateien hochladen und für die Offline-Nutzung verfügbar machen. + +## Dateien hochladen + +### Gewünschten Ordner öffnen + +Navigieren Sie zu dem Ordner, in dem Sie eine Datei hochladen möchten. + +### Tippen Sie auf das „+“-Symbol unten rechts + +und wählen Sie „Hochladen“ + +Plus-Schaltfläche + +### Upload-Option wählen + +Im Menü können Sie wählen: + +- „Hochladen“ – eine Datei aus dem Gerätespeicher hochladen +- „Bild von Kamera“ – ein Foto oder Video mit der Kamera des Smartphones oder Tablets aufnehmen und hochladen + +Upload-Optionen + +### Auswahl bestätigen + +Wählen Sie die Datei oder das Medium aus, das Sie hochladen möchten. Der Upload startet automatisch. + +## Dateien offline verfügbar machen + +Sie können Dateien offline verfügbar machen, damit Sie auch ohne Internetverbindung darauf zugreifen können. + +### Tippen Sie auf die drei Punkte (...) neben der Datei + +Drei-Punkte-Menü + +### Wählen Sie „Offline verfügbar machen“ + +Die Datei wird heruntergeladen und lokal auf Ihrem Gerät gespeichert. + +Offline verfügbar machen + +:::info +Offline-Dateien sind mit einem rosa Kreis mit weißem Häkchen markiert. +::: + +Als offline markiert + +## Offline-Verfügbarkeit entfernen + +Um Speicherplatz freizugeben: + +- Tippen Sie auf die drei Punkte (...) bei einer offline gespeicherten Datei +- Wählen Sie „Offline-Verfügbarkeit aufheben“ + +Diese Funktionen helfen Ihnen, auch ohne Internet produktiv zu bleiben! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/installation.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/installation.md new file mode 100644 index 00000000..5e9a8d27 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/installation.md @@ -0,0 +1,37 @@ +--- +sidebar_position: 1 +id: installation +title: Installieren der Android App +description: Installieren derOpenCloud Android app +draft: false +--- + +# Installieren der OpenCloud Android app + +Anleitung zur Installation der OpenCloud Android-App. + +## Play Store + +Öffne den Play Store auf deinem Android-Smartphone oder Tablet. + +## OpenCloud + +Suche nach „OpenCloud“ oder klicke auf folgenden Link, um direkt zur App zu gelangen: + +[OpenCloud im Play Store](https://play.google.com/store/apps/details?id=eu.opencloud.android) + +Android Installation + +## Installieren + +Tippe auf „Installieren“, um die App herunterzuladen. + +## App Icon + +Nach der Installation findest du die OpenCloud-App auf deinem Startbildschirm. + +Icon + +## Einrichten + +Öffne die App und folge den Anweisungen auf dem Bildschirm, um sie einzurichten. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-fileslist.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-fileslist.md new file mode 100644 index 00000000..ca886c53 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-fileslist.md @@ -0,0 +1,61 @@ +--- +sidebar_position: 2 +id: account-fileslist +title: Dateilisten-Menü +description: Dateilisten-Menü +draft: false +--- + +# Hier ist eine Übersicht über das Dateilisten-Menü der OpenCloud Android-App + +Dieser Abschnitt erklärt die zentralen Elemente der Benutzeroberfläche der OpenCloud Android-App und deren Funktionen. + +Fileslist-Overview + +## 1. Account Menu + +Bietet Zugriff auf die Kontoeinstellungen. + +## 2. Search + +Ermöglicht die Suche nach Dateien, Ordnern oder geteilten Elementen innerhalb der App. + +## 3. Manage Accounts + +Zeigt das aktive Konto an und ermöglicht das Hinzufügen eines weiteren Kontos. + +## 4. Sort by + +Ermöglicht das Sortieren von Dateien nach Name, Datum, Größe oder anderen Kriterien. + +## 5. View Mode + +Erlaubt das Umschalten zwischen verschiedenen Ansichtsmodi. + +## 6. Files List + +Zeigt den Inhalt des aktuellen Ordners als Liste von Dateien und Ordnern an. + +## 7. Add Button + +Öffnet Optionen zum Hochladen von Dateien, Erstellen von Ordnern oder Hinzufügen neuer Inhalte. + +## 8. Personal + +Ermöglicht den schnellen Wechsel zum persönlichen Bereich. + +## 9. Shares + +Ermöglicht den schnellen Wechsel zur Liste der geteilten Elemente. + +## 10. Spaces + +Ermöglicht den schnellen Wechsel zur Liste der Bereiche (Spaces). + +## 11. Uploads + +Ermöglicht den schnellen Wechsel zur Liste der Uploads. + +## 12. Offline + +Ermöglicht den schnellen Zugriff auf eine Liste von Dateien und Ordnern, die offline verfügbar sind. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-overview.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-overview.md new file mode 100644 index 00000000..46b6235e --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/overview/account-overview.md @@ -0,0 +1,43 @@ +--- +sidebar_position: 1 +id: account-overview +title: Account-Menü +description: Account-Menü +draft: false +--- + +# Account Menu + +Hier ist ein Überblick über das Kontomenü in der OpenCloud Android-App + +Account Menue Button + +Account Menue + +## 1. Account Menu Item + +Öffnet die Hauptoptionen und Einstellungen des Kontos. + +## 2. Active Account + +Zeigt an, welches Benutzerkonto derzeit aktiv ist. + +## 3. Settings Menu Item + +Öffnet die allgemeinen Einstellungen und Konfigurationsoptionen. + +## 4. Feedback Item + +Hier kannst du uns Feedback zu deiner Erfahrung mit der OpenCloud Android-App senden. + +## 5. Help Menu Item + +Hier findest du Links zu unserer Dokumentationsseite und weiteren Hilfeseiten. + +## 6. Privacy Policy Item + +Hier findest du den vollständigen Eintrag zu unserer Datenschutzrichtlinie. + +## 7. Used Quota + +Zeigt an, wie viel deines Speicherplatzes du bisher genutzt hast. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/set-up.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/set-up.md new file mode 100644 index 00000000..e9c4ee77 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/set-up.md @@ -0,0 +1,46 @@ +--- +sidebar_position: 2 +id: set-up +title: Einrichten der OpenCloud Android App +description: Einrichten der OpenCloud Android App +draft: false +--- + +# Einrichtung deines OpenCloud-Kontos + +Nach der Installation der App kannst du jetzt dein OpenCloud-Konto einrichten. + +## Einrichtung starten + +- Wenn du die OpenCloud Android-App zum ersten Mal startest, erscheint folgender Bildschirm. + + Einrichtung starten + +- Um ein zusätzliches Konto einzurichten, tippe auf die Schaltfläche „Konten verwalten“ und wähle „Konto hinzufügen“. + + Zusätzliches Konto + +## Deine Server-URL eingeben + +- Gib die URL deines OpenCloud-Servers ein (z. B. `https://cloud.beispiel.de`) +- Tippe auf „>“, um fortzufahren. + + Server-URL eingeben + +## Die Login-Seite + +- Die Login-Seite öffnet sich, und du musst deinen Benutzernamen und dein Passwort eingeben. +- Tippe anschließend auf „Einloggen“. + +- Im folgenden Bildschirm gibst du der App die Berechtigung, auf deine Benutzerinformationen zuzugreifen und eine dauerhafte Verbindung zu deinem Konto herzustellen, indem du auf die Schaltfläche „Zulassen“ tippst. + + Login-Seite öffnen + Anmeldung fortsetzen + +## Einrichtung abschließen + +Sobald der Login abgeschlossen ist, wird dein Konto zur App hinzugefügt. + +Dein OpenCloud-Konto ist jetzt vollständig eingerichtet und einsatzbereit! + +Konto ist eingerichtet diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/settings.md new file mode 100644 index 00000000..e4ec9d1a --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/general/settings.md @@ -0,0 +1,89 @@ +--- +sidebar_position: 4 +id: settings +title: Einstellungen +description: Einstellungen der OpenCloud Android App +draft: false +--- + +# Einstellungen + +In den Einstellungen der Android-App können Änderungen vorgenommen werden, wie z. B.: + +- Sicherheit +- Benachrichtigungen verwalten +- Protokollierung +- Erweiterte Einstellungen + und mehr + +Settings + +## Userinterface + +### 1. Security + +Hier kannst du Sperren für den Zugriff auf die App festlegen und Berührungen mit anderen sichtbaren Fenstern zulassen. + +### 2. Manage notifications + +Hier kannst du Benachrichtigungen der OpenCloud Android-App zulassen. + +### 3. Logging + +Hier kannst du die Protokollierungsfunktion aktivieren oder deaktivieren und den Speicherort der Protokolldatei festlegen. + +### 4. Automatic picture uploads + +Hier kannst du Speicherort und Verhalten der automatisch hochgeladenen Bilder verwalten. + +### 5. Automatic video uploads + +Hier kannst du Speicherort und Verhalten der automatisch hochgeladenen Videos verwalten. + +### 6. Advanced + +Hier kannst du folgende Optionen einstellen:
+ +#### Show hidden files + +- Anzeige versteckter Dateien aktivieren oder deaktivieren. + +#### Delete local copies + +- Automatisch heruntergeladene Dateien, die nicht offline verfügbar sind, werden entfernt, wenn sie für eine bestimmte Zeit nicht verwendet wurden. + +### 7. More + +Hier kannst du folgende Optionen einstellen:
+ +#### Help + +- Hier findest du Links zu unserer Dokumentationsseite und zu Hilfethemen. + +#### Sync your contacts, calendars and tasks + +- Hier kannst du einstellen, welche Kontakte, Kalender und Aufgaben mit der OpenCloud Android-App synchronisiert werden. + +#### Access document provider + +- Vorgeschlagene App, um Dateien über den nativen Android-Dateibrowser zu durchsuchen. + +#### Send feedback + +- Hier kannst du uns Feedback zu deiner Erfahrung mit der OpenCloud Android-App senden. + +#### Recommend to a friend + +- Hier kannst du einen Link zum Herunterladen der Android-App weiterleiten. + +### 8. Privacy Policy + +Hier findest du den vollständigen Eintrag zu unserer Datenschutzrichtlinie. + +### 9. What's new in the latest version? + +Hier findest du Informationen zu Änderungen und Neuerungen in der neuesten Version der OpenCloud Android-App. + +### 10. App version + +Hier siehst du, welche App-Version verwendet wird. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/choose-file-type.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/choose-file-type.png new file mode 100644 index 00000000..c332d51a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/choose-file-type.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-folder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-folder.png new file mode 100644 index 00000000..fe378e07 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-folder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-new.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-new.png new file mode 100644 index 00000000..27f5c999 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/create-new.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/edit-collabora.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/edit-collabora.png new file mode 100644 index 00000000..a4553112 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/edit-collabora.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/enter-rename.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/enter-rename.png new file mode 100644 index 00000000..bd21dc41 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/enter-rename.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/file-moved.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/file-moved.png new file mode 100644 index 00000000..1e3e7882 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/file-moved.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/new-name-applied.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/new-name-applied.png new file mode 100644 index 00000000..9cd1a3bf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/new-name-applied.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/open-collabora.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/open-collabora.png new file mode 100644 index 00000000..2cd160b0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/open-collabora.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-move-or-copy.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-move-or-copy.png new file mode 100644 index 00000000..7502f321 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-move-or-copy.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-paste.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-paste.png new file mode 100644 index 00000000..d4ad9ec6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-paste.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-rename.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-rename.png new file mode 100644 index 00000000..a7b91218 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/select-rename.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/tap-ok.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/tap-ok.png new file mode 100644 index 00000000..e03c214c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/tap-ok.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots-move.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots-move.png new file mode 100644 index 00000000..1e0a4426 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots-move.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots.png new file mode 100644 index 00000000..1e0a4426 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/create-rename-move-android/three-dots.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/make-available-offline.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/make-available-offline.png new file mode 100644 index 00000000..48deeab3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/make-available-offline.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/marked-offline.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/marked-offline.png new file mode 100644 index 00000000..4fcffecd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/marked-offline.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/three-dots.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/three-dots.png new file mode 100644 index 00000000..081c1bf8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/three-dots.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-options.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-options.png new file mode 100644 index 00000000..1079de39 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-options.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-plus-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-plus-button.png new file mode 100644 index 00000000..cfabce3f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/files-and-folders/upload-make-available-offline-android/upload-plus-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/android-installation.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/android-installation.png new file mode 100644 index 00000000..b516c104 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/android-installation.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/icon-on-screen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/icon-on-screen.png new file mode 100644 index 00000000..1d0422de Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/installation/icon-on-screen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-1.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-1.png new file mode 100644 index 00000000..c153b76a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-1.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-2.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-2.png new file mode 100644 index 00000000..f4415c9a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/account-2.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/fileslist.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/fileslist.png new file mode 100644 index 00000000..3a11d07e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/overview/fileslist.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-result.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-result.png new file mode 100644 index 00000000..8bf41bec Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-result.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-symbol.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-symbol.png new file mode 100644 index 00000000..f5f78e60 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/search-symbol.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/searchbar.png new file mode 100644 index 00000000..2b85d863 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/search/searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/account-set-up.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/account-set-up.png new file mode 100644 index 00000000..6ca0dc7c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/account-set-up.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/additional-account.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/additional-account.png new file mode 100644 index 00000000..639edd19 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/additional-account.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/continue-sign-in.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/continue-sign-in.png new file mode 100644 index 00000000..6128f26e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/continue-sign-in.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/enter-server-url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/enter-server-url.png new file mode 100644 index 00000000..35d49b60 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/enter-server-url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/open-login-page.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/open-login-page.png new file mode 100644 index 00000000..ac3243f4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/open-login-page.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/start-setup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/start-setup.png new file mode 100644 index 00000000..cb68cc51 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/set-up/start-setup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/settings/settings.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/settings/settings.png new file mode 100644 index 00000000..fb087e6b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/settings/settings.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-menue.png new file mode 100644 index 00000000..cf6edd31 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-option.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-option.png new file mode 100644 index 00000000..2eeb23f1 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/invite-option.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/permissions.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/permissions.png new file mode 100644 index 00000000..bd1be677 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/permissions.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/searchbar.png new file mode 100644 index 00000000..cf83b2fb Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/shared-with.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/shared-with.png new file mode 100644 index 00000000..25e881a5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/shared-with.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/sharing-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/sharing-button.png new file mode 100644 index 00000000..2e025f7f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/sharing-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/three-dot-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/three-dot-menue.png new file mode 100644 index 00000000..667b47de Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/invite/three-dot-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-button.png new file mode 100644 index 00000000..aa0f502f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-options.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-options.png new file mode 100644 index 00000000..77bff0c7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/create-link-options.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/created-link.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/created-link.png new file mode 100644 index 00000000..6491ab9f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/created-link.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/expiration-date.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/expiration-date.png new file mode 100644 index 00000000..3ff37f3a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/expiration-date.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/password.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/password.png new file mode 100644 index 00000000..b949382d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/password.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/share-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/share-button.png new file mode 100644 index 00000000..d2d3a435 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/share-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/sharing-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/sharing-button.png new file mode 100644 index 00000000..2e025f7f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/sharing-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/three-dot-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/three-dot-menue.png new file mode 100644 index 00000000..667b47de Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shares/links/three-dot-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/create-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/create-button.png new file mode 100644 index 00000000..153f1261 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/create-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/created-shortcut.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/created-shortcut.png new file mode 100644 index 00000000..0e78f28f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/created-shortcut.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/plus-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/plus-button.png new file mode 100644 index 00000000..41268f1a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/plus-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-menue.png new file mode 100644 index 00000000..b3b0e52b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-name.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-name.png new file mode 100644 index 00000000..e5869e75 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/shortcut-name.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/url.png new file mode 100644 index 00000000..2b595881 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/shortcuts/url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-button.png new file mode 100644 index 00000000..51cb9a76 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-menue.png new file mode 100644 index 00000000..996affae Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/search-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-button.png new file mode 100644 index 00000000..49706c6b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-overview.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-overview.png new file mode 100644 index 00000000..ca0964dc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-overview.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol-menue.png new file mode 100644 index 00000000..44e50695 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol.png new file mode 100644 index 00000000..d6bcb82a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/img/spaces/spaces-plus-symbol.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/index.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/index.md new file mode 100644 index 00000000..56efb18f --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/index.md @@ -0,0 +1,20 @@ +--- +title: OpenCloud Android App +--- + +import DocCardList from '@theme/DocCardList'; + +Die OpenCloud Android App ermöglicht den mobilen Zugriff auf OpenCloud über Android Geräte. +Sie bietet grundlegende Funktionen für das Arbeiten unterwegs, einschließlich Dateiverwaltung, Uploads und schneller Zusammenarbeit. + +#### Hauptfunktionen + +- Dateimanagement: Anzeigen, Hochladen, Teilen und Organisieren von Dateien und Ordnern +- Zugriff auf Spaces und darin gespeicherte Inhalte +- Volltext- und Metadatensuche zum schnellen Auffinden von Dokumenten +- Unterstützung für gemeinsames Arbeiten über Web Office +- Synchronisation von Änderungen in Echtzeit + +Einsatzbereich: Ideal für alle, die von unterwegs auf ihre OpenCloud-Daten zugreifen und grundlegende Aufgaben mobil erledigen möchten. + + diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/search.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/search.md new file mode 100644 index 00000000..7fca128d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/search.md @@ -0,0 +1,29 @@ +--- +sidebar_position: 4 +id: search +title: Suche +description: Suche in der Android-App +draft: false +--- + +# Suchfunktion + +Hier erklären wir, wie du die Suchfunktion in der OpenCloud Android-App verwendest. + +## Suchsymbol + +Wechsle in den Space, in dem du suchen möchtest, und tippe auf das Suchsymbol, um die Suchfunktion zu öffnen. + +Lupensymbol + +## Suchleiste + +In der Suchleiste kannst du nach Datei- oder Ordnernamen suchen. + +Suchleiste + +## Suchergebnis + +In diesem Bereich werden die Suchergebnisse angezeigt. + +Suchergebnisse diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/invite.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/invite.md new file mode 100644 index 00000000..7003599c --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/invite.md @@ -0,0 +1,55 @@ +--- +sidebar_position: 1 +id: invite +title: Einladen zum Teilen +description: Einladen zum Teilen +draft: false +--- + +# Dateien und Ordner per Einladung mit Personen und Gruppen teilen + +Hier erklären wir, wie man Dateien und Ordner per Einladung mit anderen Personen und Gruppen innerhalb deiner OpenCloud in der OpenCloud Android-App teilen kann. + +## Drei-Punkte-Menü + +Klicke auf das „Drei-Punkte-Menü“ neben der Datei oder dem Ordner. + +Three-dot menue + +## Teilen + +Wähle nun den Menüpunkt „Teilen“ aus. + +Shareing-Button + +## Benutzer und Gruppen + +In der folgenden Auswahl klicke auf das Plus bei „Benutzer und Gruppen“. + +Share with + +## Teilen-Menü + +Das Teilen-Menü öffnet sich, dort kannst du in der Suchleiste nach Personen oder Gruppen suchen, die du einladen möchtest. + +Share with menue +Search bar + +## Berechtigungen + +Um die Freigabeberechtigungen einzustellen, klicke auf das Stiftsymbol neben dem Papierkorb-Symbol. + +Permissions + +- Erstellen: + Nutzer können Dateien und Ordner erstellen und hochladen. +- Ändern: + Nutzer können Dateien und Ordner bearbeiten. +- Löschen: + Nutzer können Dateien und Ordner löschen. + +## Erstellen + +Sobald die Einladung erstellt ist, siehst du sie in der Datei- oder Ordnerübersicht. + +Shared with diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/links.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/links.md new file mode 100644 index 00000000..70b6c2bf --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shares/links.md @@ -0,0 +1,63 @@ +--- +sidebar_position: 2 +id: links +title: Per Link teilen +description: Per Link teilen +draft: false +--- + +# Dateien und Ordner per Link teilen + +Hier erklären wir, wie man Dateien und Ordner per Link mit anderen in der OpenCloud Android-App teilen kann. + +## Drei-Punkte-Menü + +Klicke auf das Drei-Punkte-Menü neben der Datei oder dem Ordner. + +Three-dot menue + +## Teilen + +Wähle nun den Menüpunkt „Teilen“ aus. + +Share + +## Öffentlicher Link + +In der folgenden Auswahl klicke auf „Öffentliche Links“. + +Create link + +## Link erstellen + +Hier kannst du verschiedene Optionen für den zu erstellenden Link auswählen und festlegen. + +Overview link menue + +- Linkname + + Gib hier einen Namen für deinen Link ein. + +- Passwort + + Ein Passwort ist erforderlich. Bitte gib eines ein, um fortzufahren. + +Password + +- Ablaufdatum + + Hier kannst du eine Zeitspanne festlegen, wie lange der Link verfügbar sein soll. + +Link expiration date + +## Link speichern + +Um den Link zu erstellen, musst du nun auf „Speichern“ klicken. + +Share + +## Erstellter Link + +Sobald der Link erstellt ist, siehst du ihn mit dem vergebenen Namen in der Datei- oder Ordnerübersicht. + +created link diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shortcuts.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shortcuts.md new file mode 100644 index 00000000..4c623e18 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/shortcuts.md @@ -0,0 +1,47 @@ +--- +sidebar_position: 5 +id: shortcuts +title: Verlinkungen in der OpenCloud Android App +description: Verlinkungen +draft: false +--- + +# Verlinkung in der OpenCloud Android-App + +Hier zeigen wir dir, wie du Verlinkungen in der Android-App erstellen kannst. + +## Plus-Symbol + +Klicke auf das „Plus-Symbol“ und wähle „New Shortcut“ aus. + +Plus button + +## Verlinkungs-Menü + +Ein Menü öffnet sich mit Optionen für Verlinkungen. + +Shortcut menue + +## URL eingeben + +Um eine Verlinkung zu einer Webseite zu erstellen, gib die Adresse der Webseite unter „URL“ ein. + +URL + +## Verlinkungsnamen eingeben + +Hier gibst du einen Namen für die Verlinkung ein, unter dem sie angezeigt wird. + +Name of the shortcut + +## Erstellen-Button + +Um die Verlinkung zu erstellen, klicke auf „Create“. + +Create button + +## Erstellte Verlinkung + +Deine erstellte Verlinkung wird nun angezeigt und kann verwendet werden. + +Shortcut diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/spaces.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/spaces.md new file mode 100644 index 00000000..155f8577 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/android-app/spaces.md @@ -0,0 +1,57 @@ +--- +sidebar_position: 6 +id: spaces +title: Spaces +description: Spaces in der OpenCloud Android App +draft: false +--- + +# Der Bereich „Verlinkungen“ in der OpenCloud Android-App + +Der Bereich „Verlinkungen“ bietet einen zentralen Ort für die Zusammenarbeit in Gruppen oder Teams. In einem Space können mehrere Nutzer gemeinsam auf Dateien und Ordner zugreifen, Inhalte organisieren und Änderungen nachvollziehen. + +## Space-Übersicht + +Um die Space-Übersicht zu öffnen, tippe auf den „Spaces-Button“ in der unteren Leiste des Bildschirms. + +Spaces Button + +Anschließend erscheint die Space-Übersicht, in der alle Spaces aufgelistet sind, in denen du Mitglied bist oder die du selbst erstellt hast. + +Spaces Overview + +## Suchfunktion + +Durch Tippen auf das Suchsymbol öffnet sich die Suchleiste sowie das Suchmenü für Spaces. + +Search Function + +Search Menue + +## Funktionen innerhalb eines Spaces + +Durch Tippen auf das Plus-Symbol erscheinen die verfügbaren Funktionen innerhalb eines Spaces. + +Plus Icon + +Functions in Spaces + +## Erstellen-Menü + +Dieser Abschnitt beschreibt die verfügbaren Aktionen im Erstellen-Menü eines Spaces. + +### 1. Hochladen + +Dateien vom Gerät auswählen und in den Space hochladen. + +### 2. Neuer Ordner + +Neue Ordner erstellen, um Inhalte übersichtlich zu strukturieren. + +### 3. Neues Dokument + +Ein neues Dokument direkt im Space erstellen – ohne separate App. + +### 4. Neue Verlinkung + +Eine Verlinkung zu einer Datei oder einem Ordner im Space erstellen, um schnellen Zugriff zu ermöglichen. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/common-issues.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/common-issues.md new file mode 100644 index 00000000..84fd4af0 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/common-issues.md @@ -0,0 +1,54 @@ +--- +sidebar_position: 10 +id: common-issues +title: Häufige Probleme & Hilfe +description: Häufige Probleme & Hilfe +draft: false +--- + +# Häufige Probleme & Hilfe + +## Symlinks werden mit dem Desktop-Client nicht synchronisiert + +### Problem + +Symbolische Links (Symlinks) werden vom OpenCloud Desktop-Client nicht synchronisiert. Nutzer stellen häufig fest, dass verlinkte Ordner oder Dateien fehlen oder nicht zugänglich sind. + +### Erklärung + +Symlinks werden aus mehreren wichtigen Gründen bewusst von der Synchronisation ausgeschlossen: + +- Nicht portabel: Symlinks verweisen oft auf Pfade, die nur auf dem ursprünglichen Rechner existieren. Auf einem anderen Gerät ist der Zielpfad in der Regel nicht vorhanden. +- Nicht im Webinterface nutzbar: Das Webinterface kann Symlinks nicht interpretieren oder darstellen. +- Problematisch unter Windows: Die Unterstützung von Symlinks unter Windows ist eingeschränkt und inkonsistent. +- Gefahr von Endlosschleifen: Symlinks könnten aufeinander verweisen und so zu einer endlosen Synchronisationsschleife führen. +- Identitätsverlust: Wenn der Client dem Symlink folgen und das Ziel synchronisieren würde, entstünde lediglich eine reguläre Kopie. Die Eigenschaft als Symlink ginge dabei verloren. + +### Lösung + +#### Ordner außerhalb des Synchronisationsverzeichnisses mit Symlinks einbinden + +Wenn Sie einen Ordner außerhalb Ihres Synchronisationsverzeichnisses synchronisieren möchten, können Sie diesen verschieben und am ursprünglichen Ort durch einen Symlink ersetzen. + +##### Beispiel + +Sie möchten den Ordner `/foo/A` synchronisieren, aber Ihr Sync-Root ist `/home/bar/OpenCloud/Personal`. + +1. Verschieben Sie den Ordner in das Synchronisationsverzeichnis: + + ```bash + mv /foo/A /home/bar/OpenCloud/Personal/foo/A + ``` + +## Dateien mit "~$" im Namen werden nicht synchronisiert + +Der OpenCloud Desktop Client synchronisiert keine Dateien, die mit `~$` beginnen, wie z. B. `~$document.docx`. +Dabei handelt es sich um temporäre Sperrdateien, die von Microsoft Office-Anwendungen (Word, Excel, PowerPoint) erstellt werden, solange ein Dokument geöffnet ist. + +Anzeige, dass ~$ Dateien von der Synchronisierung ausgeschlossen sind + +Es sind keine eigentlichen Inhaltsdateien, sondern interne Marker, die verhindern sollen, dass mehrere Benutzer gleichzeitig dasselbe Dokument bearbeiten. +Sobald die Datei geschlossen wird, entfernt Office die `~$`-Datei automatisch. + +Weitere Informationen finden Sie in der Erklärung von Microsoft: +[Beschreibung, wie Word temporäre Dateien erstellt](https://support.microsoft.com/de-de/topic/description-of-how-word-creates-temporary-files-66b112fb-d2c0-8f40-a0be-70a367cc4c85) diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/conflict-files.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/conflict-files.md new file mode 100644 index 00000000..ef3cf4da --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/conflict-files.md @@ -0,0 +1,54 @@ +--- +sidebar_position: 10 +id: file-conflicts +title: Dateikonflikte handhaben +description: Wie Dateikonflikte handhaben +draft: false +--- + +# Behebung von Dateikonflikten im OpenCloud Desktop-Client + +Wenn Dateien sowohl lokal als auch auf dem Server geändert werden, bevor eine Synchronisierung stattfindet, erstellt der Desktop-Client sogenannte „Konfliktkopien“. Beispiele: + +- `conflict.txt` (Server-Version) +- `conflict (conflicted copy JJJJ-MM-TT HHMMSS).txt` (lokale Version) + +Konfliktdateien im Explorer + +Dies passiert in der Regel, wenn: + +- sich die lokale und die Server-Version einer Datei gleichzeitig verändern, +- und die App diese Änderungen nicht automatisch zusammenführen kann. + +## Wie Sie benachrichtigt werden + +In der Übersicht des Desktop-Clients erscheint eine Benachrichtigung, wenn Konfliktdateien erkannt wurden. +Das bedeutet, dass mehrere Versionen derselben Datei existieren – häufig, weil Änderungen auf verschiedenen Geräten vorgenommen wurden, bevor eine Synchronisierung erfolgen konnte. +Die Benachrichtigung dient als Hinweis, dass Sie die Konflikte prüfen und entscheiden sollten, wie die Versionen zusammengeführt oder behalten werden. + +Benachrichtigung zu Dateikonflikten im Desktop-Client + +## So lösen Sie Dateikonflikte manuell + +1. Öffnen Sie beide Dateien (das Original und die Konfliktkopie). +2. Vergleichen und kombinieren Sie die Unterschiede manuell. +3. Bearbeiten Sie die ursprüngliche Datei (`conflict.txt`), um alle relevanten Änderungen zu übernehmen. +4. Löschen Sie die Konfliktkopie, sobald die Änderungen zusammengeführt wurden. +5. Lassen Sie die aktualisierte Originaldatei bestehen – die Synchronisierung wird dann wie gewohnt fortgesetzt. + +## Good Practices zur Vermeidung von Konflikten + +- Vermeiden Sie es, dieselbe Datei gleichzeitig auf mehreren Geräten zu bearbeiten. +- Warten Sie immer, bis die Synchronisierung abgeschlossen ist, bevor Sie lokale Änderungen vornehmen. + +## Warum Konfliktdateien entstehen + +Der Desktop-Client erkennt einen Konflikt, wenn: + +- sowohl die lokale als auch die Server-Version einer Datei seit der letzten Synchronisierung geändert wurden, +- der Abgleich anhand von Datei-IDs und Checksummen erfolgt – nicht nur anhand von Zeitstempeln. +- zur Sicherheit beide Versionen erhalten bleiben, wobei die lokale Datei mit `"(conflicted copy ...)"` umbenannt wird. + +Konfliktdateien entstehen lokal und erscheinen nicht automatisch auf dem Server – es sei denn, sie werden ausdrücklich hochgeladen. + +Treten Konflikte häufig auf – auch bei einfachen Änderungen – kann dies auf Berechtigungsprobleme, schreibgeschützte Dateien oder darauf hinweisen, dass dieselben Dateien zusätzlich über andere Tools synchronisiert werden. In diesem Fall sollten Sie die Protokolle und Dateiattribute prüfen. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/file-names.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/file-names.md new file mode 100644 index 00000000..a0d210ce --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/file-names.md @@ -0,0 +1,67 @@ +--- +sidebar_position: 11 +id: file-names +title: Dateinamensbeschränkungen +description: Dateinamensbeschränkungen im OpenCloud Desktop-Client +draft: false +--- + +# Dateinamensbeschränkungen im OpenCloud Desktop-Client + +Bei der Verwendung des OpenCloud Desktop-Clients müssen Datei- und Ordnernamen bestimmte Anforderungen des Betriebssystems (OS) erfüllen, um eine reibungslose Synchronisierung zwischen verschiedenen Plattformen zu gewährleisten. +Diese Einschränkungen werden nicht von OpenCloud erzwungen, sondern stammen aus systembedingten Beschränkungen. + +## Wichtige Richtlinien + +- Verwenden Sie keine verbotenen Zeichen oder reservierten Namen in Dateinamen – unabhängig vom Betriebssystem. +- Wenn Sie von Linux/macOS zu einer Windows-basierten Freigabe synchronisieren, stellen Sie sicher, dass die Dateinamen mit den Windows-Benennungsregeln kompatibel sind. +- Um unter Linux/macOS beim Synchronisieren mit Windows nur die Groß-/Kleinschreibung zu ändern (z. B. `File.txt` → `file.txt`), benennen Sie die Datei zunächst in einen komplett neuen Namen um, lassen Sie sie synchronisieren und benennen Sie sie danach in den gewünschten Namen um. + +## Häufige Einschränkungen + +### a. Maximale Pfadlänge + +Windows begrenzt Dateipfade standardmäßig auf 260 Zeichen. +Wenn Ihr Synchronisierungs-Stammverzeichnis diesen Wert überschreitet, zeigt der Desktop-Client folgende Warnung an: +„The path 'YOUR.LONG.PATH' is too long. Please enable long paths in the Windows settings or choose a different folder.“ + +Unter Windows 10 und neuer kann diese Beschränkung aufgehoben werden, indem "Long Paths" aktiviert werden. Siehe [Microsoft-Dokumentation](https://learn.microsoft.com/de-de/windows/win32/fileio/maximum-file-path-limitation?tabs=registry#enable-long-paths-in-windows-10-version-1607-and-later). + +### b. Verbotene Zeichen + +| Betriebssystem | Verbotene Zeichen | +| -------------- | ------------------------------- | ------------ | +| Windows | `<`, `>`, `:`, `"`, `/`, `\`, ` | `, `?`, `\*` | + +### c. Nicht druckbare ASCII-Zeichen + +- Linux/macOS: NUL (Zeichencode 0) +- Windows: ASCII 0 – 31 + +Auch wenn diese Zeichen auf manchen Systemen gültig sind, führen sie häufig zu Problemen bei der Synchronisierung. + +### d. Reservierte Dateinamen (Windows) + +Vermeiden Sie die Verwendung folgender Dateinamen: +`CON`, `PRN`, `AUX`, `NUL`, `COM1` – `COM9`, `LPT1` – `LPT9` + +### e. Besondere Regeln + +- Unter Linux/macOS beim Synchronisieren zu SMB können Dateinamen, die sich nur in der Groß-/Kleinschreibung unterscheiden, zu Konflikten führen – benennen Sie Dateien eindeutig, um Fehler zu vermeiden. +- Unter Windows dürfen Dateinamen nicht mit einem Leerzeichen oder Punkt (`.`) enden. + +## Beispiel + +Das Erstellen einer Datei mit dem Namen `example.` oder `example.LPT1` unter macOS kann zwar erfolgreich mit OpenCloud synchronisiert werden. +Beim Zugriff über einen Windows-Client werden diese Dateien jedoch möglicherweise abgelehnt, da sie gegen reservierte Namens- oder Formatregeln verstoßen, was zu inkonsistentem Synchronisierungsverhalten zwischen Geräten führt. + +## Zusammenfassung + +| Einschränkungstyp | Maßnahme | +| ------------------------- | ------------------------------------------------------ | +| Pfadlänge | Pfade unter ~260 Zeichen halten (außer bei Long Paths) | +| Verbotene Zeichen | Nicht erlaubte Zeichen aus Namen entfernen | +| Steuerzeichen | Nicht druckbare ASCII-Zeichen vermeiden | +| Reservierte Dateinamen | Keine Windows-reservierten Namen verwenden | +| Nur Groß-/Kleinschreibung | Vorher temporär umbenennen, dann synchronisieren | +| Endzeichen | Keine Dateinamen mit Leerzeichen oder Punkt beenden | diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/logging.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/logging.md new file mode 100644 index 00000000..4f470209 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/logging.md @@ -0,0 +1,61 @@ +--- +sidebar_position: 5 +id: logging +title: Logfiles sammeln +description: Logfiles sammeln in OpenCloud +draft: false +--- + +# Protokollierung in einem temporären Verzeichnis in OpenCloud Desktop + +Wenn Sie Protokolle für die Fehlersuche erstellen müssen, gehen Sie wie folgt vor: + +## Öffnen Sie die Log-Einstellungen + +- Klicken Sie auf Einstellungen → Erweitert → Log-Einstellungen + +logging access + +## Aktivieren Sie die Protokollierung + +- Aktivieren Sie im Fenster Protokollausgabe das Kontrollkästchen Protokollierung in temporärem Ordner aktivieren. +- Um dem Support-Team und den Entwicklern zu helfen, ist es hilfreich, das Log Http traffic zu aktivieren + +enable logging + +## Finden Sie die Log-Dateien + +- Klicken Sie auf Ordner öffnen, um auf die Protokolle zuzugreifen. + +open logfile folder + +- Wählen Sie die Protokolldateien für den Zeitraum aus, in dem das Problem aufgetreten ist. + +logfiles overview + +:::note +Diese Protokolle können helfen, Probleme mit OpenCloud Desktop zu diagnostizieren und zu beheben. +::: + +### Log Inhalt Beschreibung + +`25-02-17 09:02:35:174 [ info sync.httplogger ]: REQUEST 3710cc12-7391-4793-8e89-00499dc11983 {„request“:{„body“:{„length“:0},„header“:{„accept“:„*/*“,„accept-language“:„en_DE“,„original-request-id“:„3710cc12-7391-4793-8e89-00499dc11983“,„user-agent“:"Mozilla/5. 0 (Macintosh) mirall/1.0.0-git (OpenCloud, macos-24. 3.0 ClientArchitecture: x86_64 OsArchitecture: arm64)„,“x-request-id„:“3710cc12-7391-4793-8e89-00499dc11983„},“info„:{“cached„:false,“id„:“3710cc12-7391-4793-8e89-00499dc11983„,“method„:“GET„,“url„:“https://cloud.opencloud.test/.well-known/openid-configuration"}}}` + +| Log Inhalt | Beschreibung | +| ------------------------------------ | --------------------------------------------------------------------- | +| 25-02-17 09:02:35:174 | Zeitstempel der Anfrage | +| [ info sync.httplogger ] | Bezeichnung der Protokollkategorie | +| 3710cc12-7391-4793-8e89-00499dc11983 | X-REQUEST-ID (wird verwendet, um Anfragen und Antworten abzugleichen) | +| Header: { } | Liste der HTTP-Header | +| Data: [] | HTTP-Bodies (JSON, XML) | +| (112ms) | Antwortzeit (seit Absenden der Anfrage) | + +### X-REQUEST-ID für die Fehlersuche verwenden + +- Die OpenCloud-Desktop-Anwendung sendet mit jeder Anfrage einen X-REQUEST-ID-Header. +- Diese ID hilft bei der Suche nach entsprechenden Anfragen und Antworten in den Protokollen. +- Sie können Ihren Webserver so konfigurieren, dass er die X-REQUEST-ID zu seinen Protokollen hinzufügt, um eine tiefere Analyse zu ermöglichen. + +:::note +Diese Funktion ist nützlich für die Fehlersuche bei Synchronisationsproblemen, die Überwachung von Netzwerkaktivitäten und die Behebung von Verbindungsproblemen. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/multiple-accounts.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/multiple-accounts.md new file mode 100644 index 00000000..17f6139a --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/common-functionality/multiple-accounts.md @@ -0,0 +1,44 @@ +--- +sidebar_position: 8 +id: multiple-accounts +title: Mehrere Konten einrichten +description: Nutzung von mehreren Konten in OpenCloud Desktop +draft: false +--- + +# Mehrere Konten in OpenCloud Desktop verwenden + +Sie können mehrere Konten von verschiedenen OpenCloud-Servern mit Ihrem lokalen Rechner synchronisieren. Dies ermöglicht Ihnen, Dateien von verschiedenen Instanzen innerhalb desselben Desktop-Clients zu verwalten. + +## Wie man ein neues Konto hinzufügt + +- Öffnen Sie den OpenCloud Desktop +- Klicken Sie auf Konto hinzufügen + +add accounts + +- Folgen Sie dem standard Einrichtungsprozess: + - Geben Sie die Server-URL ein + - Melden Sie sich mit Ihren Anmeldedaten an + - Autorisieren Sie den Zugang + +## Wechseln zwischen Konten + +- Nachdem Sie mehrere Konten hinzugefügt haben, werden diese in der Kontoübersicht im Einstellungsmenü angezeigt +- Sie können einfach zwischen ihnen wechseln, um die Synchronisierungseinstellungen für jedes Konto separat zu verwalten + +switch accounts + +## Wie Dateien lokal gespeichert werden + +- In Ihrem Datei-Explorer hat jedes Konto einen eigenen Ordner +- Standardmäßig sind die Ordner benannt: + - OpenCloud (für das erste Konto) + - OpenCloud (2) (für das zweite Konto) + - OpenCloud (3) (für das dritte Konto), und so weiter + +multiple accounts in explorer or finder + +:::note +Diese Einrichtung stellt sicher, dass Dateien von verschiedenen Konten organisiert bleiben und nicht vermischt werden. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-file.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-file.png new file mode 100644 index 00000000..444ed1d0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-file.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-info.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-info.png new file mode 100644 index 00000000..f2f2de29 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/conflict-files/conflict-info.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-access.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-access.png new file mode 100644 index 00000000..a5ff0436 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-access.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-enable.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-enable.png new file mode 100644 index 00000000..5b8cdc41 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-enable.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-logfiles.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-logfiles.png new file mode 100644 index 00000000..47731da8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-logfiles.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-open-folder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-open-folder.png new file mode 100644 index 00000000..3ae406ad Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/logging/logging-open-folder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-add-account.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-add-account.png new file mode 100644 index 00000000..64b46fd1 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-add-account.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-locally.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-locally.png new file mode 100644 index 00000000..9e4ccc9f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-locally.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-switch-accounts.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-switch-accounts.png new file mode 100644 index 00000000..c6385e7f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/multiple-accounts/multiple-accounts-switch-accounts.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-accept-access.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-accept-access.png new file mode 100644 index 00000000..72d6a503 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-accept-access.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-advanced-configuration.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-advanced-configuration.png new file mode 100644 index 00000000..c3da8219 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-advanced-configuration.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-all-set.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-all-set.png new file mode 100644 index 00000000..296c632f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-all-set.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-enter-url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-enter-url.png new file mode 100644 index 00000000..2caf368e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-enter-url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-login.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-login.png new file mode 100644 index 00000000..17be764d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-login.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-user-password.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-user-password.png new file mode 100644 index 00000000..8122b278 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/set-up-user-password.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-advanced-configuration.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-advanced-configuration.png new file mode 100644 index 00000000..5ca66f4f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-advanced-configuration.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-all-set.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-all-set.png new file mode 100644 index 00000000..1a139f8b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/set-up/windows/set-up-all-set.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-advanced.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-advanced.png new file mode 100644 index 00000000..5a1bc247 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-advanced.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-bandwidth.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-bandwidth.png new file mode 100644 index 00000000..607b8f7d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-bandwidth.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-general.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-general.png new file mode 100644 index 00000000..c414893f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-general.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-network.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-network.png new file mode 100644 index 00000000..531ddb4b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-network.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-overview.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-overview.png new file mode 100644 index 00000000..58997459 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/settings-overview.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/windows/settings-general.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/windows/settings-general.png new file mode 100644 index 00000000..88049dbf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/settings/windows/settings-general.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-choose-what-to-sync.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-choose-what-to-sync.png new file mode 100644 index 00000000..5ef70a99 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-choose-what-to-sync.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-menu.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-menu.png new file mode 100644 index 00000000..fedf5ca6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-menu.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-three-dot.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-three-dot.png new file mode 100644 index 00000000..14b38e29 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/sync-settings/sync-settings-three-dot.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-manage-account.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-manage-account.png new file mode 100644 index 00000000..f94c6edf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-manage-account.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-remove.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-remove.png new file mode 100644 index 00000000..b9310b15 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/uninstall/uninstall-remove.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/always-keep-on-this-device.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/always-keep-on-this-device.png new file mode 100644 index 00000000..b4172d48 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/always-keep-on-this-device.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/free-up-space.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/free-up-space.png new file mode 100644 index 00000000..68bab6b7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/free-up-space.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full-pinned.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full-pinned.png new file mode 100644 index 00000000..398b7790 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full-pinned.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full.png new file mode 100644 index 00000000..2bca9d9a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/full.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/placeholder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/placeholder.png new file mode 100644 index 00000000..c3db85f2 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/img/vfs/placeholder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/index.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/index.md new file mode 100644 index 00000000..7b963d1c --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/index.md @@ -0,0 +1,17 @@ +--- +title: OpenCloud Desktop Client +--- + +import DocCardList from '@theme/DocCardList'; + +Der OpenCloud Desktop Client ermöglicht die Synchronisation von Dateien zwischen einem lokalen Computer und der OpenCloud. +Er stellt sicher, dass Dateien offline verfügbar sind und dass Änderungen automatisch synchronisiert werden, sobald wieder eine Internetverbindung besteht. +Der Client ist für Windows, macOS und Linux verfügbar. + +#### Hauptfunktionen + +- Synchronisation von Dateien und Ordnern zwischen Desktop- oder Laptop-Computern und der OpenCloud +- Automatische Aktualisierung bei Änderungen +- Offline-Zugriff auf wichtige Daten + + diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/installation.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/installation.md new file mode 100644 index 00000000..a385b038 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/installation.md @@ -0,0 +1,68 @@ +--- +sidebar_position: 1 +id: installation +title: Installation +description: Install OpenCloud Desktop Client on Linux +draft: false +--- + +# Installation on Linux (AppImage with AppImageLauncher) + +The OpenCloud Desktop Client is available as an AppImage for Linux. +Using AppImageLauncher is recommended to ensure proper system integration, menu entries, and simplified updates. + +## Install AppImageLauncher + +AppImageLauncher integrates AppImages into your system and manages them like regular applications. + +Follow the installation instructions here: + +[AppImageLauncher Installation Guide](https://github.com/TheAssassin/AppImageLauncher/releases/tag/v3.0.0-beta-3) +lation + +## Download the OpenCloud AppImage + +Download the latest or desired `.AppImage` version from the official release page: + +- [OpenCloud Desktop Releases on GitHub](https://github.com/opencloud-eu/desktop/releases) + +Save the file to your preferred download directory. + +## Integrate the AppImage + +Once AppImageLauncher is installed: + +1. Right-click the downloaded `OpenCloud.AppImage`. +2. Select “Open with AppImageLauncher”. +3. Confirm integration when prompted. + +AppImageLauncher will automatically: + +- store the AppImage in the correct location +- register a menu entry +- ensure the app behaves like a native application + +## Launching OpenCloud Desktop + +After integration, you can start the client as usual through your application menu: + +- open your Application Launcher +- search for OpenCloud Desktop +- start the application + +The client will guide you through the initial setup. + +## Updating the AppImage + +When a new version is available, download the updated AppImage from GitHub. +AppImageLauncher will detect it and offer to replace the existing version automatically. + +## Uninstallation + +To remove the OpenCloud Desktop Client: + +1. Open your application menu. +2. Search for OpenCloud Desktop +3. Select the option to remove or uninstall the AppImage (menu wording may vary depending on distribution and launcher). + +AppImageLauncher will cleanly remove the integrated AppImage. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/set-up.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/set-up.md new file mode 100644 index 00000000..6acc8466 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/set-up.md @@ -0,0 +1,55 @@ +--- +sidebar_position: 2 +id: set-up +title: OpenCloud Desktop einrichten +description: Einrichtung Ihres OpenCloud Desktop +draft: false +--- + +# OpenCloud Desktop einrichten + +Folgen Sie diesen einfachen Schritten, um Ihren OpenCloud Desktop zu installieren, zu konfigurieren und Ihre Dateien mühelos zu synchronisieren. + +## Server-URL eingeben + +- Öffnen Sie Ihren OpenCloud Desktop +- Geben Sie die URL Ihrer OpenCloud-Instanz ein +- Klicken Sie auf **„Weiter“** + + URL eingeben + +## Anmeldung über den Webbrowser + +- Klicken Sie auf „Webbrowser öffnen“, um sich automatisch anzumelden +- Alternativ können Sie die angezeigte URL kopieren und manuell in Ihren Browser einfügen + + Browser öffnen zur Anmeldung + +## Zugangsdaten eingeben + +- Geben Sie Ihren Benutzernamen und Ihr Passwort ein +- Klicken Sie auf „Login“ + + Zugangsdaten eingeben + +## Zugriff gewähren + +- Bestätigen Sie die Zugriffsanfrage, um Ihr Konto mit OpenCloud Desktop zu verknüpfen. + + Zugriff gewähren + +## Einrichtung abschließen + +## Optionale erweiterte Konfiguration + +- Wählen Sie aus, ob alle Dateien synchronisiert werden sollen oder nur bestimmte Ordner (dies kann später angepasst werden). +- Ändern Sie den lokalen Download-Ordner, in dem Ihre Dateien gespeichert werden. + + Erweiterte Konfiguration + +Wenn alles bereit ist, klicken Sie auf „Fertig“, um die Einrichtung abzuschließen. + +Einrichtung abgeschlossen + +Der OpenCloud Desktop ist nun erfolgreich eingerichtet. +Sie können jetzt Ihre Dateien nahtlos zwischen Ihrem Gerät und dem OpenCloud-Server synchronisieren! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/settings.md new file mode 100644 index 00000000..13dc09c6 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/settings.md @@ -0,0 +1,53 @@ +--- +sidebar_position: 3 +id: settings +title: Einstellungen in Linux +description: Einstellungen in OpenCloud Desktop für Linux +draft: false +--- + +# Einstellungen in OpenCloud Desktop ändern + +Sie können die Einstellungen des OpenCloud Desktop mit den folgenden Schritten anpassen: + +## Einstellungen öffnen + +- Klicken Sie auf "Einstellungen“ in der oberen rechten Ecke von OpenCloud Desktop + +settings overview + +## Übersicht der Einstellungen + +### Allgemeine Einstellungen + +- Aktivieren oder Deaktivieren des automatischen Starts bei der Anmeldung +- Legen Sie Ihre bevorzugte Sprache fest + + settings-general + +### Erweiterte Einstellungen + +- Versteckte Dateien synchronisieren +- Entscheiden Sie, ob gelöschte Dateien in den lokalen Papierkorb verschoben werden sollen +- Bearbeiten Sie die Liste der ignorierten Dateien +- Aktivieren Sie eine Debug-Protokolldatei für die Fehlersuche + + settings advanced + +### Netzwerkeinstellungen + +- Wählen Sie aus, wie der Client mit Proxy-Einstellungen umgehen soll: + - Kein Proxy + - Systemproxy verwenden (Standard) + - Manuelles Eingeben eines Proxys + + settings network + + ### Download- und Upload-Bandbreite + +- Legen Sie Bandbreitenlimits fest: + - Kein Limit (Standard) + - Automatische Anpassung des Limits + - Ein bestimmtes Limit manuell einstellen + + settings bandwith diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/sync-settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/sync-settings.md new file mode 100644 index 00000000..2cd30a2d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/linux/sync-settings.md @@ -0,0 +1,57 @@ +--- +sidebar_position: 3 +id: sync-settings-linux +title: Synchronisationseinstellungen unter Linux +description: Synchronisationseinstellungen unter Linux +draft: false +--- + +# Linux: Synchronisationseinstellungen + +Auf Linux werden die Dateien auf Ihr System heruntergeladen. Über den OpenCloud Desktop Client können Sie festlegen, was synchronisiert werden soll und wie oft. + +## Zugriff auf die Synchronisationseinstellungen + +1. Öffnen Sie den OpenCloud Desktop Client. +2. Gehen Sie zur Account-Ansicht. +3. Klicken Sie auf das Drei-Punkte-Menü (...) neben dem Space, den Sie konfigurieren möchten. + +Account-Spaces-Menü + +## Synchronisationsoptionen + +Synchronisationsoptionen-Menü + +### In Linux Dateimanager anzeigen + +- Öffnet den Space im Dateimanager Ihrer Linux-Desktopumgebung. + +### Im Webbrowser anzeigen + +- Öffnet den Space in Ihrem Webbrowser. +- Eine Anmeldung kann erforderlich sein, falls Sie noch nicht eingeloggt sind. + +### Jetzt synchronisieren + +- Löst eine sofortige manuelle Synchronisation aus. + +### Synchronisation pausieren + +- Stoppt die Synchronisation vorübergehend. +- Kann jederzeit über Synchronisation fortsetzen wieder aktiviert werden. + +### Synchronisationsverbindung entfernen + +- Beendet die Synchronisation des Spaces, löscht jedoch nicht die lokalen Dateien. +- Der Space bleibt auf dem Server erhalten. + +### Auswahl der zu synchronisierenden Dateien + +- Wählen Sie bestimmte Ordner aus, die lokal synchronisiert werden sollen. +- Spart Speicherplatz, indem nur die benötigten Dateien synchronisiert werden. + +Zu synchronisierende Dateien auswählen + +:::note +Dateien und Ordner, die nicht zur Synchronisation ausgewählt wurden, sind lokal nicht verfügbar. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/installation.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/installation.md new file mode 100644 index 00000000..00792585 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/installation.md @@ -0,0 +1,63 @@ +--- +sidebar_position: 1 +id: installation +title: Installation +description: OpenCloud Client installieren +draft: false +--- + +# Installation auf macOS (.pkg-Datei) + +Der OpenCloud Desktop Client wird als signierte `.pkg`-Installer-Datei für macOS bereitgestellt. +Diese Installationsmethode integriert die Anwendung sauber ins System und folgt dem Standard-Installationsprozess von macOS. + +## Installer herunterladen + +Laden Sie die neueste oder gewünschte `.pkg`-Datei von der offiziellen Release-Seite herunter: + +- [OpenCloud Desktop Releases auf GitHub](https://github.com/opencloud-eu/desktop/releases) + +Speichern Sie die Datei in Ihrem Downloads-Ordner. + +## Installer ausführen + +1. Doppelklicken Sie auf die heruntergeladene `.pkg`-Datei. +2. Der macOS-Installer öffnet sich automatisch. +3. Folgen Sie den Anweisungen auf dem Bildschirm, um die Installation abzuschließen. + +Der Installer legt OpenCloud Desktop im Applications-Ordner ab. + +## Anwendung starten + +Nach der Installation können Sie OpenCloud Desktop starten über: + +- den Applications-Ordner +- Launchpad +- oder über Spotlight (drücken Sie `Cmd + Leertaste` und suchen Sie nach „OpenCloud Desktop“) + +## Erster Start + +Beim ersten Start führt der Client Sie durch: + +- die Anmeldung mit Ihrem OpenCloud-Konto +- die Auswahl der Synchronisationseinstellungen +- die Konfiguration grundlegender Optionen + +Die Anwendung ist nun einsatzbereit auf macOS. + +## Deinstallation + +Um den OpenCloud Desktop Client vom System zu entfernen: + +1. Öffnen Sie den Applications-Ordner. +2. Suchen Sie nach OpenCloud Desktop.app. +3. Ziehen Sie die Anwendung in den Papierkorb oder klicken Sie mit der rechten Maustaste und wählen Sie In den Papierkorb legen. +4. Leeren Sie den Papierkorb, um die Deinstallation abzuschließen. + +Optionale Konfigurationsdateien können im Benutzerverzeichnis verbleiben: + +- `~/Library/Application Support/OpenCloud/` +- `~/Library/Preferences/eu.opencloud.desktop.plist` +- `~/Library/Logs/OpenCloud/` + +Diese Dateien können manuell gelöscht werden, wenn eine vollständige Bereinigung gewünscht ist. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/set-up.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/set-up.md new file mode 100644 index 00000000..36bd8c14 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/set-up.md @@ -0,0 +1,55 @@ +--- +sidebar_position: 2 +id: set-up +title: OpenCloud Desktop einrichten +description: Einrichtung Ihres OpenCloud Desktop +draft: false +--- + +# OpenCloud Desktop einrichten + +Folgen Sie diesen einfachen Schritten, um Ihren OpenCloud Desktop zu installieren, zu konfigurieren und Ihre Dateien mühelos zu synchronisieren. + +## Server-URL eingeben + +- Öffnen Sie Ihren OpenCloud Desktop +- Geben Sie die URL Ihrer OpenCloud-Instanz ein +- Klicken Sie auf „Weiter“ + + URL eingeben + +## Anmeldung über den Webbrowser + +- Klicken Sie auf „Webbrowser öffnen“, um sich automatisch anzumelden +- Alternativ können Sie die angezeigte URL kopieren und manuell in Ihren Browser einfügen + + Browser öffnen zur Anmeldung + +## Zugangsdaten eingeben + +- Geben Sie Ihren Benutzernamen und Ihr Passwort ein +- Klicken Sie auf **„Login“** + + Zugangsdaten eingeben + +## Zugriff gewähren + +- Bestätigen Sie die Zugriffsanfrage, um Ihr Konto mit dem OpenCloud Desktop zu verknüpfen. + + Zugriff gewähren + +## Einrichtung abschließen + +## Optionale erweiterte Konfiguration + +- Wählen Sie aus, ob alle Dateien synchronisiert werden sollen oder nur bestimmte Ordner (dies kann später angepasst werden). +- Ändern Sie den lokalen Download-Ordner, in dem Ihre Dateien gespeichert werden. + + Erweiterte Konfiguration + +Wenn alles bereit ist, klicken Sie auf „Fertig“, um die Einrichtung abzuschließen. + +Einrichtung abgeschlossen + +Der OpenCloud Desktop ist nun erfolgreich eingerichtet. +Sie können jetzt nahtlos Ihre Dateien zwischen Ihrem Gerät und dem OpenCloud-Server synchronisieren! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/settings.md new file mode 100644 index 00000000..0904ac04 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/settings.md @@ -0,0 +1,53 @@ +--- +sidebar_position: 3 +id: settings +title: Einstellungen in macOS +description: Einstellungen in OpenCloud Desktop für macOS +draft: false +--- + +# Einstellungen in OpenCloud Desktop ändern + +Sie können die Einstellungen des OpenCloud Desktop mit den folgenden Schritten anpassen: + +## Einstellungen öffnen + +- Klicken Sie auf "Einstellungen“ in der oberen rechten Ecke von OpenCloud Desktop + +settings overview + +## Übersicht der Einstellungen + +### Allgemeine Einstellungen + +- Aktivieren oder Deaktivieren des automatischen Starts bei der Anmeldung +- Legen Sie Ihre bevorzugte Sprache fest + + settings-general + +### Erweiterte Einstellungen + +- Versteckte Dateien synchronisieren +- Entscheiden Sie, ob gelöschte Dateien in den lokalen Papierkorb verschoben werden sollen +- Bearbeiten Sie die Liste der ignorierten Dateien +- Aktivieren Sie eine Debug-Protokolldatei für die Fehlersuche + + settings advanced + +### Netzwerkeinstellungen + +- Wählen Sie aus, wie der Client mit Proxy-Einstellungen umgehen soll: + - Kein Proxy + - Systemproxy verwenden (Standard) + - Manuelles Eingeben eines Proxys + + settings network + + ### Download- und Upload-Bandbreite + +- Legen Sie Bandbreitenlimits fest: + - Kein Limit (Standard) + - Automatische Anpassung des Limits + - Ein bestimmtes Limit manuell einstellen + + settings bandwith diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/sync-settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/sync-settings.md new file mode 100644 index 00000000..50e02859 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/macos/sync-settings.md @@ -0,0 +1,57 @@ +--- +sidebar_position: 3 +id: sync-settings-mac +title: Synchronisationseinstellungen unter macOS +description: Synchronisationseinstellungen unter macOS +draft: false +--- + +# macOS: Synchronisationseinstellungen + +Auf macOS werden die Dateien auf Ihr System heruntergeladen. Über den OpenCloud Desktop Client können Sie festlegen, was synchronisiert werden soll und wie oft. + +## Zugriff auf die Synchronisationseinstellungen + +1. Öffnen Sie den OpenCloud Desktop Client. +2. Gehen Sie zur Account-Ansicht. +3. Klicken Sie auf das Drei-Punkte-Menü neben dem Space, den Sie konfigurieren möchten. + +Account-Spaces-Menü + +## Synchronisationsoptionen + +Synchronisationsoptionen-Menü + +### In Finder anzeigen + +- Öffnet den Space im Finder. + +### Im Webbrowser anzeigen + +- Öffnet den Space in Ihrem Webbrowser. +- Eine Anmeldung kann erforderlich sein, falls Sie noch nicht eingeloggt sind. + +### Jetzt synchronisieren + +- Löst eine sofortige manuelle Synchronisation aus. + +### Synchronisation pausieren + +- Stoppt die Synchronisation vorübergehend. +- Kann jederzeit über Synchronisation fortsetzen wieder aktiviert werden. + +### Synchronisationsverbindung entfernen + +- Beendet die Synchronisation des Spaces, löscht jedoch nicht die lokalen Dateien. +- Der Space bleibt auf dem Server erhalten. + +### Auswahl der zu synchronisierenden Dateien + +- Wählen Sie bestimmte Ordner aus, die lokal synchronisiert werden sollen. +- Spart Speicherplatz, indem nur die benötigten Dateien synchronisiert werden. + +Zu synchronisierende Dateien auswählen + +:::note +Dateien und Ordner, die nicht zur Synchronisation ausgewählt wurden, sind lokal nicht verfügbar. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/settings.md new file mode 100644 index 00000000..de491308 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/settings.md @@ -0,0 +1,58 @@ +--- +sidebar_position: 3 +id: settings +title: Einstellungen +description: Ändern der Einstellungen in OpenCloud Desktop +draft: false +--- + +# Einstellungen in OpenCloud Desktop ändern + +Sie können die Einstellungen des OpenCloud Desktop mit den folgenden Schritten anpassen: + +## Einstellungen öffnen + +- Klicken Sie auf "Einstellungen“ in der oberen rechten Ecke von OpenCloud Desktop + +settings overview + +## Übersicht der Einstellungen + +### Allgemeine Einstellungen + +- Aktivieren oder Deaktivieren des automatischen Starts bei der Anmeldung +- Wählen Sie, ob Desktop-Benachrichtigungen angezeigt werden sollen +- Legen Sie Ihre bevorzugte Sprache fest + + settings-general + +### Erweiterte Einstellungen + +- Versteckte Dateien synchronisieren +- Entscheiden Sie, ob gelöschte Dateien in den lokalen Papierkorb verschoben werden sollen +- Bearbeiten Sie die Liste der ignorierten Dateien +- Aktivieren Sie eine Debug-Protokolldatei für die Fehlersuche + + settings advanced + +### Netzwerkeinstellungen + +- Wählen Sie aus, wie der Client mit Proxy-Einstellungen umgehen soll: + - Kein Proxy + - Systemproxy verwenden (Standard) + - Manuelles Eingeben eines Proxys + + settings network + + ### Download- und Upload-Bandbreite + +- Legen Sie Bandbreitenlimits fest: + - Kein Limit (Standard) + - Automatische Anpassung des Limits + - Ein bestimmtes Limit manuell einstellen + + settings bandwith + +:::note +Indem Sie diese Einstellungen anpassen, können Sie OpenCloud Desktop nach Ihren Bedürfnissen optimieren! +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/installation.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/installation.md new file mode 100644 index 00000000..b778a112 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/installation.md @@ -0,0 +1,57 @@ +--- +sidebar_position: 1 +id: installation +title: Installation +description: Installiere den OpenCloud Client +draft: false +--- + +# Installation unter Windows + +Der OpenCloud Desktop Client für Windows ist über den Microsoft Store verfügbar. +Die Installation über den Store sorgt für einen einfachen Installationsprozess, automatische Updates und eine nahtlose Integration in Windows. + +## Microsoft Store öffnen + +Öffne den Microsoft Store auf deinem Windows-Gerät und suche nach OpenCloud Desktop, +oder klicke auf den untenstehenden Button, um direkt zur App-Seite zu gelangen: + + + Download from Microsoft Store + + +## „Installieren“ klicken + +Klicke auf der App-Seite auf Installieren, um den OpenCloud Desktop Client herunterzuladen und zu installieren. + +Der Microsoft Store übernimmt die Installation automatisch und legt die Anwendung an der richtigen Stelle im System ab. + +## Anwendung starten + +Nach Abschluss der Installation kannst du den Client über das Startmenü öffnen, indem du nach OpenCloud Desktop suchst. +Die Anwendung führt dich durch die erste Einrichtung, einschließlich der Anmeldung mit deinem Konto. + +## Automatische Updates + +Der Microsoft Store hält den OpenCloud Desktop Client automatisch auf dem neuesten Stand. +Updates werden im Hintergrund installiert und erfordern keine manuellen Schritte. + +Dies stellt sicher, dass: + +- immer die neuesten Funktionen verfügbar sind +- Sicherheitsverbesserungen zeitnah angewendet werden +- volle Kompatibilität mit aktuellen Windows-Versionen gewährleistet ist + +:::note +Die Installation über den Microsoft Store sorgt für automatische Updates, eine bessere Systemintegration und reduziert den Bedarf an manueller Wartung. +::: + +## Deinstallation (optional) + +Falls du den Client deinstallieren möchtest: + +1. Öffne das Startmenü. +2. Suche nach OpenCloud Desktop. +3. Klicke mit der rechten Maustaste auf die Anwendung und wähle Deinstallieren. + +Windows entfernt die App und deren Komponenten sauber über diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/set-up.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/set-up.md new file mode 100644 index 00000000..dd44b11d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/set-up.md @@ -0,0 +1,55 @@ +--- +sidebar_position: 2 +id: set-up +title: OpenCloud Desktop einrichten +description: Einrichtung Ihres OpenCloud Desktop +draft: false +--- + +# OpenCloud Desktop einrichten + +Folgen Sie diesen einfachen Schritten, um Ihren OpenCloud Desktop zu installieren und zu konfigurieren und Ihre Dateien mühelos zu synchronisieren. + +## Server-URL eingeben + +- Öffnen Sie Ihren OpenCloud Desktop +- Geben Sie die URL Ihrer OpenCloud-Instanz ein +- Klicken Sie auf „Weiter“ + + URL eingeben + +## Anmeldung über den Webbrowser + +- Klicken Sie auf „Webbrowser öffnen“, um sich automatisch anzumelden +- Alternativ können Sie die angezeigte URL kopieren und manuell in Ihren Browser einfügen + + Browser öffnen zur Anmeldung + +## Zugangsdaten eingeben + +- Geben Sie Ihren Benutzernamen und Ihr Passwort ein +- Klicken Sie auf „Login“ + + Zugangsdaten eingeben + +## Zugriff gewähren + +- Bestätigen Sie die Zugriffsanfrage, um Ihr Konto mit dem OpenCloud Desktop zu verknüpfen. + + Zugriff gewähren + +## Einrichtung abschließen + +## Optionale erweiterte Konfiguration + +- Wählen Sie aus, ob alle vorhandenen Spaces synchronisiert werden sollen oder ob die Synchronisation manuell eingerichtet werden soll. +- Ändern Sie den lokalen Download-Ordner, in dem Ihre Dateien gespeichert werden. + + Erweiterte Konfiguration + +Wenn alles bereit ist, klicken Sie auf „Fertig“, um die Einrichtung abzuschließen. + +Einrichtung abgeschlossen + +Der OpenCloud Desktop wurde erfolgreich eingerichtet. +Sie können nun direkt damit beginnen, Ihre Dateien nahtlos zwischen Ihrem Gerät und dem OpenCloud-Server zu synchronisieren! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/settings.md new file mode 100644 index 00000000..0b6cc625 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/settings.md @@ -0,0 +1,52 @@ +--- +sidebar_position: 3 +id: settings +title: Einstellungen in Windows +description: Einstellungen in OpenCloud Desktop für Windows +draft: false +--- + +# Einstellungen in OpenCloud Desktop ändern + +Sie können die Einstellungen des OpenCloud Desktop mit den folgenden Schritten anpassen: + +## Einstellungen öffnen + +- Klicken Sie auf "Einstellungen“ in der oberen rechten Ecke von OpenCloud Desktop + +settings overview + +## Übersicht der Einstellungen + +### Allgemeine Einstellungen + +- Legen Sie Ihre bevorzugte Sprache fest + + settings-general + +### Erweiterte Einstellungen + +- Versteckte Dateien synchronisieren +- Entscheiden Sie, ob gelöschte Dateien in den lokalen Papierkorb verschoben werden sollen +- Bearbeiten Sie die Liste der ignorierten Dateien +- Aktivieren Sie eine Debug-Protokolldatei für die Fehlersuche + + settings advanced + +### Netzwerkeinstellungen + +- Wählen Sie aus, wie der Client mit Proxy-Einstellungen umgehen soll: + - Kein Proxy + - Systemproxy verwenden (Standard) + - Manuelles Eingeben eines Proxys + + settings network + + ### Download- und Upload-Bandbreite + +- Legen Sie Bandbreitenlimits fest: + - Kein Limit (Standard) + - Automatische Anpassung des Limits + - Ein bestimmtes Limit manuell einstellen + + settings bandwith diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/sync-settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/sync-settings.md new file mode 100644 index 00000000..4dff2e36 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/desktop-client/windows/sync-settings.md @@ -0,0 +1,65 @@ +--- +sidebar_position: 4 +id: sync-settings-win +title: Synchronisationseinstellungen unter Windows +description: Synchronisationseinstellungen unter Windows +draft: false +--- + +# Windows: Synchronisationseinstellungen + +Der OpenCloud Desktop Client nutzt das Windows Virtual File System (VFS), um Ihre Cloud-Daten direkt in den Windows-Dateiexplorer zu integrieren. +Dateien und Ordner werden angezeigt, ohne dass sie vollständig heruntergeladen werden müssen – das spart lokalen Speicherplatz. + +## Status der Datei + +Dateien und Ordner können verschiedene Stati haben, je nachdem, ob sie lokal gespeichert oder nur online verfügbar sind. + +### Immer auf diesem Gerät verfügbar (full pinned) + +- Lokal gespeichert und jederzeit offline zugänglich. +- Windows entfernt diese Datei nicht automatisch. + +Symbol vollständig angeheftet + +### Auf diesem Gerät verfügbar (full) + +- Heruntergeladen und offline verfügbar. +- Kann von Windows entfernt werden, wenn Speicherplatz benötigt wird. +- Neu erstellte oder hinzugefügte Dateien erhalten automatisch diesen Status. + +Symbol vollständig + +### Online verfügbar (placeholder) + +- Wird im Datei-Explorer angezeigt, befindet sich jedoch nur in der Cloud. +- Wird beim Öffnen automatisch heruntergeladen; Internetverbindung erforderlich. + +Symbol Platzhalter + +## Elemente offline verfügbar machen + +Um eine Datei, einen Ordner oder einen Space lokal zu speichern: + +1. Klicken Sie im Datei-Explorer mit der rechten Maustaste auf das Element. +2. Wählen Sie „Immer auf diesem Gerät beibehalten“. + +Auswahl: Immer auf diesem Gerät behalten + +## Speicherplatz freigeben + +Um lokale Kopien zu entfernen, während die Elemente weiterhin im Datei-Explorer sichtbar bleiben: + +1. Klicken Sie mit der rechten Maustaste auf das Element. +2. Wählen Sie „Speicherplatz freigeben“. + +Auswahl: Speicherplatz freigeben + +## Zugriff auf Dateien + +- Online-only Dateien werden automatisch heruntergeladen, sobald Sie sie öffnen. +- Änderungen werden zurück zu OpenCloud synchronisiert. + +:::note +Für Dateien, die nur online verfügbar sind, ist eine Internetverbindung erforderlich. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/activity.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/activity.md new file mode 100644 index 00000000..5aa056e4 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/activity.md @@ -0,0 +1,32 @@ +--- +sidebar_position: 8 +id: activities +title: Aktivitäten +description: Aktivitäten einer Datei oder eines Ordners in OpenCloud anzeigen +draft: false +--- + +# Anzeigen der Aktivitäten von Dateien und Ordner + +Um herauszufinden, wer eine Datei oder einen Ordner bearbeitet hat und welche Aktionen ausgeführt wurden, führen Sie die folgenden Schritte aus: + +## Aktivitäten anzeigen + +- Details öffnen + - rechts Klick auf die Datei oder den Ordner, oder klicken Sie auf die drei Punkte in der entsprechenden Zeile. + + +- Wählen Sie "Details" in dem Kontextmenü aus. + + +- Wählen Sie Aktivitäten + - In der rechten Seitenleiste wird ein Pop-up geöffnet, dort wählen Sie "Aktivitäten" aus. + + +- Aktivitäten anzeigen + - Alle Aktivitäten, die mit dieser Datei oder diesem Ordner durchgeführt werden, werden jetzt angezeigt. + + +:::info +Mit dieser Funktion können Sie alle Änderungen und Aktionen verfolgen! +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/create-rename-move.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/create-rename-move.md new file mode 100644 index 00000000..1d945cbe --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/create-rename-move.md @@ -0,0 +1,56 @@ +--- +sidebar_position: 1 +id: create-rename-move +title: Erstellen - Umbenennen - Verschieben +description: Erstellen - Umbenennen - Verschieben +draft: false +--- + +# Erstellen - Umbenennen - Verschieben + +Sie können ganz einfach neue Text-, Tabellen- und Präsentationsdateien in der Weboberfläche erstellen. Diese können Sie auch umbenennen oder an einen anderen Speicherort verschieben + +## Erstellen von Dateien und Ordnern + +- Klicken Sie auf die Schaltfläche "+ Neu" oben in der Actionbar. + +- Wählen Sie im Menü den gewünschten "Dateityp", den Sie erstellen möchten. + +- Geben Sie einen Namen für die Datei oder den Ordner in das angezeigte Fenster ein. + +- Klicken Sie auf "Erstellen". + + + Fertig! Die Datei oder der Ordner wurde erstellt. + Wenn es sich um eine Datei handelt, wird sie automatisch im Bearbeitungsmodus geöffnet. + +## Umbenennen von Dateien und Ordnern + +- Öffnen Sie das Kontextmenü, indem Sie entweder: - mit der rechten Maustaste auf die Datei oder den Ordner klicken, - oder indem Sie auf die drei Punkte rechts in der entsprechenden Zeile klicken. + +- Wählen Sie die Option „Umbenennen“. + + + +- Geben Sie den neuen Namen für die Datei oder den Ordner in das angezeigte Fenster ein. Bestätigen Sie, indem Sie auf "Umbenennen" klicken. + + + +Fertig! Der neue Name wird angewendet. + +## Verschieben von Dateien und Ordnern + +- Treffen Sie eine Auswahl: + - Wählen Sie die Datei(en) oder Ordner aus, die Sie verschieben möchten. + +- Öffnen Sie das Kontextmenü: + - Klicken Sie mit der rechten Maustaste auf die Datei + - oder den Ordner oder klicken Sie auf die drei Punkte in der entsprechenden Zeile. + + - Wählen Sie die Option „Ausschneiden“ aus dem Menü. + +- Ziel auswählen: - Navigieren Sie zu dem Ordner oder Speicherort, an den die Datei oder der Ordner verschoben werden soll. - Klicken Sie in der Aktionsleiste auf „Hier einfügen“. + + + +Die Datei oder der Ordner ist jetzt im neuen Speicherort verschoben und nicht mehr am ursprünglichen Speicherort vorhanden. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/delete-restore.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/delete-restore.md new file mode 100644 index 00000000..ce746f5a --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/delete-restore.md @@ -0,0 +1,61 @@ +--- +sidebar_position: 3 +id: delete-restore +title: Löschen - Wiederherstellen +description: Löschen - Wiederherstellen +draft: false +--- + +# Löschen - Wiederherstellen + +## Dateien und Ordner löschen + +- Wählen Sie die Datei(en) oder Ordner aus, die Sie löschen möchten. + + + +- Klicken Sie mit der rechten Maustaste auf die Auswahl, - oder klicken Sie auf die drei Punkte in der Zeile der Datei/des Ordners. + + + +- Wählen Sie die Option „Löschen“ im Menü. + + + +:::info +Alternativ können Sie auch auf „Löschen“ in der Aktionsleiste klicken. +::: + +- Die Dateien oder Ordner werden in den Bereich „Gelöschte Dateien“ verschoben. Sie können bei Bedarf von dort wiederhergestellt werden. + + + +## Dateien und Ordner wiederherstellen + +- Navigieren Sie zu "Gelöschte Dateien" + - Klicken Sie in der linken Seitenleiste auf "Gelöschte Dateien". + + + - Dateien aus Ihrem persönlichen Bereich finden Sie unter "Personal". + - Dateien aus anderen Bereichen (z.B. "Space 1") finden Sie in ihren jeweiligen Räumen. + + +- Dateien oder Ordner auswählen: + - Klicken Sie auf die Datei(en) oder Ordner, die Sie wiederherstellen möchten. + + + - Klicken Sie mit der rechten Maustaste + - oder klicken Sie auf die drei Punkte neben der Auswahl. + + +- Wählen Sie "Restore" aus dem Menü. + + + +:::info +Alternnativ können Sie auch auf "Restore" in der Aktionsleiste klicken. +::: + +:::note +Die Dateien oder Ordner werden an ihren ursprünglichen Standort wiederhergestellt. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten-button.png new file mode 100644 index 00000000..5b213643 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten.png new file mode 100644 index 00000000..06e30308 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/aktivitaeten.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/details-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/details-button.png new file mode 100644 index 00000000..daa8951e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/details-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/drei-punkte-menue.png new file mode 100644 index 00000000..867104fe Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/activity/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/actionbar-ausschneiden.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/actionbar-ausschneiden.png new file mode 100644 index 00000000..9ec702dd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/actionbar-ausschneiden.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/drei-punkte-menue.png new file mode 100644 index 00000000..867104fe Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/eingefuegte-datei.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/eingefuegte-datei.png new file mode 100644 index 00000000..569a02b8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/eingefuegte-datei.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/erstellen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/erstellen-button.png new file mode 100644 index 00000000..b735c869 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/erstellen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/hier-einfuegen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/hier-einfuegen-button.png new file mode 100644 index 00000000..191c1d80 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/hier-einfuegen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-button.png new file mode 100644 index 00000000..730fe537 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-optionen.png new file mode 100644 index 00000000..3a778416 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neu-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neuen-ordner-erstellen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neuen-ordner-erstellen.png new file mode 100644 index 00000000..b735c869 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/neuen-ordner-erstellen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/ordner-auswaehlen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/ordner-auswaehlen.png new file mode 100644 index 00000000..a0cd11a5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/ordner-auswaehlen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/rechts-klick-ausschneiden.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/rechts-klick-ausschneiden.png new file mode 100644 index 00000000..44c0928b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/rechts-klick-ausschneiden.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-button.png new file mode 100644 index 00000000..054cc613 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-option.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-option.png new file mode 100644 index 00000000..4692cdca Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-option.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-popup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-popup.png new file mode 100644 index 00000000..39d3abcb Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/create-rename-move/umbenennen-popup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue-in-geloeschte-dateien.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue-in-geloeschte-dateien.png new file mode 100644 index 00000000..87e37aca Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue-in-geloeschte-dateien.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue.png new file mode 100644 index 00000000..867104fe Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/geloeschte-dateien.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/geloeschte-dateien.png new file mode 100644 index 00000000..d796c32b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/geloeschte-dateien.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/loeschen-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/loeschen-optionen.png new file mode 100644 index 00000000..2b4228d9 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/loeschen-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner-in-geloeschte-dateien.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner-in-geloeschte-dateien.png new file mode 100644 index 00000000..1ec665b4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner-in-geloeschte-dateien.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner.png new file mode 100644 index 00000000..7b32ef41 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/markierter-ordner.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/ordner-in-geloeschte-dateien.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/ordner-in-geloeschte-dateien.png new file mode 100644 index 00000000..cc91b0ce Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/ordner-in-geloeschte-dateien.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/struktur-in-geloeschte-dateien.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/struktur-in-geloeschte-dateien.png new file mode 100644 index 00000000..e5711279 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/struktur-in-geloeschte-dateien.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/wiederherstellungs-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/wiederherstellungs-optionen.png new file mode 100644 index 00000000..5d3fb509 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/delete-restore/wiederherstellungs-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/erstellen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/erstellen-button.png new file mode 100644 index 00000000..a2f4f0ce Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/erstellen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/neu-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/neu-button.png new file mode 100644 index 00000000..f5a30db5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/neu-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/pop-up-window.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/pop-up-window.png new file mode 100644 index 00000000..6c212ad1 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/pop-up-window.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-button.png new file mode 100644 index 00000000..34e0eec7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-rechts-klick.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-rechts-klick.png new file mode 100644 index 00000000..7dc3f312 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut-rechts-klick.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut.png new file mode 100644 index 00000000..da71dc08 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/shortcut.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/url-und-titel.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/url-und-titel.png new file mode 100644 index 00000000..65c979c8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/link/url-und-titel.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/drop-down-menu-searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/drop-down-menu-searchbar.png new file mode 100644 index 00000000..decc857a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/drop-down-menu-searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/search-example.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/search-example.png new file mode 100644 index 00000000..990d0b4a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/search-example.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/searchbar.png new file mode 100644 index 00000000..1e09d061 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/search/searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/details-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/details-button.png new file mode 100644 index 00000000..9f0df011 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/details-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/drei-punkte-menue.png new file mode 100644 index 00000000..1ed66b4f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-auswaehlen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-auswaehlen.png new file mode 100644 index 00000000..35e79757 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-auswaehlen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-loeschen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-loeschen.png new file mode 100644 index 00000000..7ffe6590 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tag-loeschen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tags-zeile.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tags-zeile.png new file mode 100644 index 00000000..f830adcb Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/tags/tags-zeile.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/herunterladen-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/herunterladen-optionen.png new file mode 100644 index 00000000..1cc6f309 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/herunterladen-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-button.png new file mode 100644 index 00000000..af60301a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-fenster.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-fenster.png new file mode 100644 index 00000000..c571c13f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-fenster.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-optionen.png new file mode 100644 index 00000000..48dbdeef Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/hochladen-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/markierte-datei.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/markierte-datei.png new file mode 100644 index 00000000..24aef37e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/markierte-datei.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/meldung-rechts-unten.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/meldung-rechts-unten.png new file mode 100644 index 00000000..b2c895f8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/meldung-rechts-unten.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/zip-datei.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/zip-datei.png new file mode 100644 index 00000000..1e55552c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/upload-download-unzip/zip-datei.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/details-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/details-button.png new file mode 100644 index 00000000..af0bce83 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/details-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/drei-punkte-menue.png new file mode 100644 index 00000000..867104fe Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-button.png new file mode 100644 index 00000000..b56161be Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-optionen.png new file mode 100644 index 00000000..d9883d48 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen.png new file mode 100644 index 00000000..264da208 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/img/versions/versionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/search.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/search.md new file mode 100644 index 00000000..c9471760 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/search.md @@ -0,0 +1,25 @@ +--- +sidebar_position: 4 +id: search +title: Suche +description: Nutzen der Suche in OpenCloud +draft: false +--- + +# Die Suchleiste in OpenCloud verwenden + +Sie können die Suchleiste in der oberen Leiste verwenden, um Dateien und Inhalte schnell zu finden. + +## So funktioniert die Suche + +- Die Suchleiste befindet sich am oberen Rand der Top-Bar in der Web-Oberfläche. + + +- Klicken Sie auf das Dropdown-Menü neben der Suchleiste. +- Wählen Sie, ob Sie in allen Dateien oder nur im aktuellen Ordner suchen möchten. + + +- Die Suchfunktion sucht sowohl nach Dateinamen als auch nach dem Inhalt der Dateien, um relevante Ergebnisse anzuzeigen. + + +Mit diesen Schritten finden Sie Ihre Dateien und Ordner schnell und effizient! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/shortcut.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/shortcut.md new file mode 100644 index 00000000..fc117b33 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/shortcut.md @@ -0,0 +1,40 @@ +--- +sidebar_position: 5 +id: shourtcut +title: Verknüpfung +description: Verknüpfung erstellen in OpenCloud +draft: false +--- + +# Verknüpfung + +Mit OpenCloud können Sie Verknüpfung zu Websites oder Dateien erstellen + +## Verknüpfung erstellen + +- Klicken Sie auf "+ Neu" in den Batch-Aktionen und wählen Sie "Verknüpfung“. + + + + +- Link oder Datei einfügen + - Geben Sie in dem sich öffnenden Fenster den Link oder den Namen der Datei ein, die Sie verlinken möchten. + - Alternativ können Sie die gewünschte Datei auch aus der Liste auswählen, nachdem Sie die ersten Buchstaben eingegeben haben. + + +- Verknüpfung benennen + - Geben Sie einen Namen für die Verknüpfung ein. + + +- Verknüpfung erstellen + - Klicken Sie auf "Erstellen“, um die Verknüpfung zu speichern. + + +## Verknüpfung nutzen + +- Klicken Sie auf die Verknüpfung, um die verlinkte Webseite oder Datei in einem neuen Browser-Tab zu öffnen, + +- oder mit einem „Rechtsklick“ und „Öffnen “. + + + öffnet sich die verlinkte Webseite oder Datei in einem neuen Browser-Tab. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/tags.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/tags.md new file mode 100644 index 00000000..69f6874d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/tags.md @@ -0,0 +1,45 @@ +--- +sidebar_position: 6 +id: tags +title: Tags +description: Hinzufügen und verwalten von Tags in OpenCloud +draft: false +--- + +# Tags hinzufügen und verwalten mit OpenCloud + +Mit OpenCloud können Sie Dateien und Ordner mit Tags versehen, um diese einfacher zu suchen oder zu gruppieren. Hier erfahren Sie, wie es funktioniert + +## Tag hinzufügen + +- Kontextmenü öffnen + - Machen Sie einen Rechtsklick auf die Datei oder den Ordner, oder + - Klicken Sie auf die drei Punkte in der entsprechenden Zeile + + +- Details auswählen + - Wählen Sie im Kontextmenü die Option "Details“ aus + + +## Tag eingeben + +- Klicken Sie in das Eingabefeld neben "Tags“ + + + +- Wählen Sie einen vorhandenen Tag aus, oder geben Sie einen neuen Begriff ein, um einen neuen Tag zu erstellen. + + +Der Tag wird hinzugefügt und ist nun mit der Datei oder dem Ordner verknüpft. + +## Tag entfernen + +- Öffnen Sie erneut die „Details“ der Datei/des Ordners + + + +- Suchen Sie den Tag, den Sie entfernen möchten. +- Klicken Sie auf das „X“ neben dem Tag, um ihn zu löschen + + +Die Datei oder der Ordner ist nun nicht mehr mit diesem Tag verbunden. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/upload-download-unzip.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/upload-download-unzip.md new file mode 100644 index 00000000..373437dc --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/upload-download-unzip.md @@ -0,0 +1,44 @@ +--- +sidebar_position: 2 +id: upload-download-unzip +title: Hochladen - Herunterladen - Entpacken +description: Hochladen - Herunterladen - Entpacken +draft: false +--- + +# Hochladen - Herunterladen - Entpacken + +## Hochladen von Dateien und Ordnern + +- Klicke Sie auf “Hochladen” in der Actionbar. + + +- Wählen Sie aus ob eine Datei oder ein Ordner hochgeladen werden soll. + +- Wählen Sie die Dateien oder Ordner aus: + - Im Fenster welches sich öffnet, wählen Sie die gewünschten Dateien oder Ordner aus. + - Es können mehrere Dateien oder Ordner gleichzeitig ausgewählt werden. +- Bestätigen Sie den Upload: + - Klicken Sie auf "Öffnen“, um den Upload zu starten. + - Nach Abschluss des Uploads erscheint eine Meldung in der unteren rechten Ecke. + +- Alternativ: + - Ziehen Sie die Dateien oder Ordner direkt aus Ihrem Explorer-Fenster in den Browser, um sie hochzuladen. + +## Herunterladen von Dateien und Ordnern + +- Wählen Sie die gewünschten Dateien oder Ordner entweder durch: + - Klicken Sie in die Dateizeile + - oder durch Klicken auf das Kästchen am Anfang der Zeile. + +- Öffnen Sie das Kontextmenü - Durch Rechtsklick - oder durch Klick auf die drei Punkte neben der Datei. - oder durch Klick auf die Download-Schaltfläche in der Actionbar + + +- Wählen sie "Herunterladen" aus dem Menü aus. + +## Entpacken + +- Wenn Sie mehrere Dateien oder Ordner herunterladen, werden diese als ZIP-Datei gespeichert. + + + Entpacken Sie die ZIP-Datei nach dem Herunterladen auf Ihrem Gerät. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/versions.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/versions.md new file mode 100644 index 00000000..8739650f --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/files-and-folders/versions.md @@ -0,0 +1,33 @@ +--- +sidebar_position: 7 +id: versions +title: Versionen +description: Verwalten der Versionen von Dateien OpenCloud +draft: false +--- + +# Verwalten von Versionen für Dateien und Ordner in OpenCloud + +OpenCloud speichert verschiedene Versionen von Dateien. Dies erlaubt Ihnen, frühere Versionen wiederherzustellen oder herunterzuladen + +## Versionen anzeigen und wiederherstellen + +- Details öffnen + - Rechtsklick auf die Datei + - oder Klick auf die drei Punkte in der entsprechenden Dateizeile. + + - Wählen Sie "Details “ aus dem Kontextmenü. + + +- Versionen auswählen + - Wählen Sie in der rechten Seitenleiste, die sich öffnet, den Punkt "Versionen “. + + + +- Versionen anzeigen + - Alle Versionen der Datei werden angezeigt. + + - Sie können nun die gewünschte Version wiederherstellen oder herunterladen. + + +Diese Schritte geben Ihnen Zugriff auf ältere Versionen Ihrer Dateien zu jeder Zeit! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/account-settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/account-settings.md new file mode 100644 index 00000000..2c3c4f80 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/account-settings.md @@ -0,0 +1,83 @@ +--- +sidebar_position: 2 +id: settings +title: Konto Einstellungen +description: Nutzer Account Einstellungen in OpenCloud +draft: false +--- + +# Benutzereinstellungen in OpenCloud + +In OpenCloud haben Sie die Möglichkeit, verschiedene Einstellungen für Ihr Benutzerkonto vorzunehmen, um es nach Ihren Bedürfnissen anzupassen. + +## Auf die Einstellungen zugreifen + +- Klicken Sie oben rechts auf den Avatar +- Wählen Sie den Punkt „Einstellungen“ + Einstellungen öffnen + +## Kontoinformationen + +In den Einstellungen können Sie zwischen verschiedenen Abschnitten wählen: + +### Profil + +- Profilbild +- Benutzername / Login-Name +- Vor- und Nachname +- E-Mail-Adresse +- Persönlicher Speicherplatz +- Gruppenmitgliedschaften + +Kontoinformationen + +### Avatar + +Im Bereich Profilbild können Sie Ihr Avatar-Bild ändern: + +- Klicken Sie auf „Hochladen“ unter Ihrem Avatar-Symbol + Avatar-Menü +- Wählen Sie Ihr Avatar-Bild aus und klicken Sie auf „Hochladen“ + Avatar hochladen +- Es öffnet sich nun ein Fenster, in dem Sie Ihr Bild anpassen können. Klicken Sie anschließend auf „Set“. + Avatar-Einstellungen +- Danach wird Ihr Avatar für Ihr Konto übernommen. + Sichtbarer Avatar + +## Einstellungen + +Je nach Grundkonfiguration können Sie die folgenden Optionen ändern: + +- Sprache: + Wählen Sie die gewünschte Sprache für Ihre Benutzeroberfläche. +- Passwort: + Ändern Sie Ihr Passwort für den Zugriff auf Ihr Benutzerkonto. +- Design (Theme): + Passen Sie das Erscheinungsbild der Benutzeroberfläche nach Ihren Vorlieben an. +- E-Mail-Benachrichtigungen: + Legen Sie fest, welche E-Mail-Benachrichtigungen Sie von OpenCloud erhalten möchten. +- Anzeigeoptionen: + Richten Sie die WebDAV-Einstellungen ein, um externen Zugriff auf Dateien und Ordner zu ermöglichen. + Einstellungen + +## Erweiterungen + +Unter "Erweiterungen" können Sie installierte Erweiterungen konfigurieren, wie z. B. die Fortschrittsanzeige, sofern verfügbar. +Erweiterungen + +## Kalender + +Unter „Kalender“ können Sie auf Ihren persönlichen Kalender zugreifen und ihn, sofern konfiguriert, in Apps von Drittanbietern wie Thunderbird, Apple Kalender und andere integrieren. + +Calendar + +## DSGVO + +Unter "DSGVO" können Sie einen Datenexport Ihrer persönlichen Daten anfordern, falls gewünscht. +DSGVO + +## App-Tokens + +Mit "App-Tokens" können Sie externe Apps und Dienste (wie WebDAV-Clients) sicher verbinden, ohne Ihr Hauptpasswort zu verwenden. + +App-Tokens diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/file-list-adjustments.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/file-list-adjustments.md new file mode 100644 index 00000000..3f0c460c --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/file-list-adjustments.md @@ -0,0 +1,31 @@ +--- +sidebar_position: 3 +id: customization_file_list +title: Anpassungen der Datei-Liste +description: Anpassungen der Datei-Liste in OpenCloud +draft: false +--- + +# Anpassungen der Datei-Liste in OpenCloud + +Wenn Sie auf das Einstellungssymbol auf der rechten Seite der Benutzeroberfläche klicken, gelangen Sie zu den Optionen für die Anpassung der Ansicht. Hier können Sie die Anzeige anpassen + +## Verfügbare Optionen + +Settings icon + +- Versteckte Dateien anzeigen + - Aktivieren oder deaktivieren Sie die Anzeige von versteckten Dateien. + - Bei versteckten Dateien handelt es sich oft um System- oder Konfigurationsdateien. + +- Dateierweiterungen anzeigen + - Legen Sie fest, ob die Dateierweiterungen (z. B. `.docx`, `.jpg`) hinter den Dateinamen angezeigt werden sollen. Dies erleichtert die Identifizierung von Dateitypen. + +- Dateien pro Seite + - Geben Sie an, wie viele Dateien pro Seite in einem Ordner angezeigt werden sollen. + - Nützlich für das Navigieren in Ordnern mit vielen Dateien. + +- Kachelgröße + - Passen Sie die Größe der Symbole und Schaltflächen an: + - Kleine Kacheln für eine kompaktere Ansicht. + - Große Kacheln für eine übersichtlichere Ansicht. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/access.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/access.png new file mode 100644 index 00000000..f67f948d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/access.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/account-information.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/account-information.png new file mode 100644 index 00000000..bbc47d0d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/account-information.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/app-tokens.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/app-tokens.png new file mode 100644 index 00000000..767a6a87 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/app-tokens.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-menu.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-menu.png new file mode 100644 index 00000000..b3a62067 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-menu.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-settings.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-settings.png new file mode 100644 index 00000000..901d273d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-settings.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-upload.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-upload.png new file mode 100644 index 00000000..8dba8bbb Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/avatar-upload.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/calendar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/calendar.png new file mode 100644 index 00000000..4b3cb48b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/calendar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/extensions.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/extensions.png new file mode 100644 index 00000000..99973e23 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/extensions.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/gdpr.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/gdpr.png new file mode 100644 index 00000000..b78eb24e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/gdpr.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/preferences.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/preferences.png new file mode 100644 index 00000000..19efcc9f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/preferences.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/visible-avatar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/visible-avatar.png new file mode 100644 index 00000000..bd12c150 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/account-settings/visible-avatar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/files-list-adjustment/einstellungs-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/files-list-adjustment/einstellungs-button.png new file mode 100644 index 00000000..7a77856f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/files-list-adjustment/einstellungs-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/overview/ueberblick.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/overview/ueberblick.png new file mode 100644 index 00000000..3215c807 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/overview/ueberblick.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/kachel.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/kachel.png new file mode 100644 index 00000000..1a086293 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/kachel.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/klassisch.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/klassisch.png new file mode 100644 index 00000000..0183aefa Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/klassisch.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/verdichtet.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/verdichtet.png new file mode 100644 index 00000000..e1f8e407 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/img/view-modes/verdichtet.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/index.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/index.md new file mode 100644 index 00000000..73bc244d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/index.md @@ -0,0 +1,16 @@ +--- +title: Web Benutzeroberfläche und Navigation +--- + +import DocCardList from '@theme/DocCardList'; + +Der Web Client ist die zentrale Benutzeroberfläche von OpenCloud. +Er ermöglicht den vollständigen Zugriff über den Browser, ohne dass zusätzliche Software installiert werden muss. + +#### Hauptfunktionen + +- Dateimanagement: Erstellen, Hochladen, Bearbeiten, Teilen und Organisieren von Dateien und Ordnern +- Verwaltung von Spaces sowie Benutzer- und Gruppeneinstellungen +- Collabora Online für die gemeinsame Bearbeitung von Dokumenten in Echtzeit + + diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/overview.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/overview.md new file mode 100644 index 00000000..60d3348d --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/overview.md @@ -0,0 +1,89 @@ +--- +sidebar_position: 1 +id: overview +title: Übersicht +description: Überblick der Web Benutzeroberfläche +draft: false +--- + +# Überblick der Web Benutzeroberfläche + +Die OpenCloud Web Benutzeroberfläche besteht aus mehreren Bereichen, die Ihnen helfen, effizient mit Dateien und Einstellungen zu arbeiten + +Overview + +## 1. Linke Seitenleiste + +Die Seitenleiste enthält die Navigationselemente wie Spaces, Dateien, Freigaben und Einstellungen. + +## 2. App-Wechsler + +Das Menü in der linken oberen Ecke ermöglicht es Ihnen, zwischen verschiedenen Apps und Modulen zu wechseln. + +## 3. Obere Leiste + +Die obere Leiste enthält wichtige Funktionen wie die Suchleiste, Benutzeraktionen und globale Einstellungen. + +## 4. Suchleiste + +Ermöglicht Ihnen das schnelle Auffinden von Dateien, Ordnern oder Räumen. + +## 5. Dateiliste + +Zeigt alle Dateien und Ordner in einer Auswahlansicht an. + +## 6. Breadcrumbs-Menü + +Zeigt den aktuellen Pfad Ihrer Navigation an und ermöglicht es Ihnen, schnell zu vorherigen Verzeichnissen zurückzuspringen. + +## 7. Batch-Aktionen + +Ermöglicht Ihnen das Bearbeiten, Verschieben oder Löschen mehrerer ausgewählter Dateien zur gleichen Zeit. + +## 8. Ansichtsmodi + +Bietet verschiedene Anzeigeoptionen für die Dateiliste: + +- Listenansicht +- Kachelansicht +- Komprimierte Ansicht + +## 9. Ansichtseinstellungen + +Hier können Sie zusätzliche Anzeigeoptionen wie Sortierung oder Spaltenauswahl anpassen. + +## 10. Benutzermenü + +Klicken Sie auf Ihr Profilbild in der oberen rechten Ecke, um zu Einstellungen, Abmeldung und Kontooptionen zu gelangen. + +## 11. Rechte Seitenleiste + +Zeigt zusätzliche Informationen und Panels für Anteile, Aktivitäten oder Dateidetails. + +## 12. Aktionen + +Hier finden Sie Aktionen wie Herunterladen, Teilen, Löschen oder Bearbeiten für ausgewählte Dateien. + +## 13. Drei-Punkte-Menü + +Bietet weitere Optionen für Dateien, Ordner oder Bereiche. + +## 14. Aktionen-Panel + +Zeigt mögliche Aktionen für die ausgewählte Datei, z. B. Umbenennen oder Verschieben. + +## 15. Freigabe-Panel + +Hier können Sie Dateien und Ordner intern oder extern freigeben und Berechtigungen verwalten. + +## 16. Versionen + +Zeigt eine Übersicht der Versionen einer ausgewählten Datei oder Ordner. + +## 17. Aktivitätsleiste + +Zeigt eine Übersicht über Änderungen und Aktivitäten innerhalb eines Bereichs oder einer Datei. + +## 18. Kontextmenü + +Ein Rechtsklick auf eine Datei oder einen Ordner öffnet das Kontextmenü mit spezifischen Optionen. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/view-modes.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/view-modes.md new file mode 100644 index 00000000..98b5f723 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/general/view-modes.md @@ -0,0 +1,28 @@ +--- +sidebar_position: 4 +id: view-modes +title: Anzeigemodi +description: Ansicht der Dateiliste in OpenCloud ändern +draft: false +--- + +# Dateilistenansichten in OpenCloud ändern + +In OpenCloud können Sie zwischen verschiedenen Anzeigemodi für Ihre Dateien und Ordner wählen, um die Anzeige nach Ihren Wünschen anzupassen + +## Verfügbare Anzeigesmodi + +### Standard-Tabellenansicht + +Die klassische Listenansicht, in der alle Dateien und Ordner in einer detaillierten Tabelle angezeigt werden. +Default + +### Verdichtete Tabellenansicht + +Eine kompaktere Version der Tabellenansicht, in der die Daten enger zusammengefasst sind, um Platz zu sparen. +Condensed + +### Kachelansicht + +Eine Ansicht, in der Dateien und Ordner als Kacheln dargestellt werden. Ideal für visuelle Darstellungen und wenn Sie schnell auf Symbole zugreifen möchten. +Tiles diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/img/common-issues/desktop-excluded.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/img/common-issues/desktop-excluded.png new file mode 100644 index 00000000..fc0b1339 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/img/common-issues/desktop-excluded.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/intro.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/intro.md new file mode 100644 index 00000000..dee0cfad --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/intro.md @@ -0,0 +1,88 @@ +--- +sidebar_position: 1 +title: Willkommen +description: Willkommen +--- + + + +import OcLogoPetrol from '/static/img/oc-logo-petrol.svg'; +import OcLogoLilac from '/static/img/oc-logo-lilac.svg'; + + + +# Willkommen + + + + +## Wilkommen zur OpenCloud Wissensdatenbank + +Hier finden Sie alle wichtigen Informationen, um erfolgreich die ersten Schritte in OpenCloud zu gehen, technische +Probleme flexibel selber zu beheben und häufig gestellte Fragen zu beantworten. + +## Was ist OpenCloud? + +OpenCloud ist die File-Sharing- und Kollaborationslösung der Heinlein Gruppe. + +Durch intelligentes Dateimanagement und eine starke Open-Source-Community werden Dateien zu wertvollen Ressourcen – effektiv strukturiert und langfristig nutzbar. Mit flexiblen Datenräumen und intelligenten Zugriffsrechten können Teams jederzeit und von überall auf Daten zugreifen und gemeinsam daran arbeiten – barrierefrei und mit hoher Produktivität. + +Der Zugriff auf OpenCloud ist auf verschiedene Arten möglich – je nach Gerät und Anwendungsfall: + +- Der [Web Client](./general/) bietet den vollständigen Zugriff auf alle Funktionen der OpenCloud direkt im Browser. Er ermöglicht Dateimanagement, Benutzer- und Space-Verwaltung sowie die Online-Zusammenarbeit über Collabora. +- Der [Desktop Client](./desktop-client/) synchronisiert Dateien zwischen der OpenCloud und einem lokalen Computer und ermöglicht so die Offline-Arbeit sowie automatische Aktualisierungen. +- Die mobilen Apps für [iOS](./ios-app/) und [Android](./android-app/) bieten schnellen Zugriff auf Dateien und grundlegende Verwaltungsfunktionen – auch unterwegs. + +Jeder Client ist für einen bestimmten Anwendungsfall konzipiert: +der Web Client für die umfassende Online-Nutzung, der Desktop Client für die lokale Synchronisierung und die mobilen Apps für produktives Arbeiten von unterwegs. + +## Wie kann ich OpenCloud nutzen? + +Anweisungen zur Installation und Einrichtung Ihrer eigenen OpenCloud finden Sie nur in Englisch in der [„Admin“-Dokumentation](/docs/admin/welcome/index.md) unter [Erste Schritte](/docs/admin/getting-started/). + +## Dokumentations-Versionen + +Unsere Dokumentation ist versioniert, damit Sie stets die passende Version zu Ihrer Software finden. + +- Rolling-Version: Entspricht immer dem aktuellen Entwicklungsstand. Änderungen werden laufend eingepflegt – die Dokumentation kann jedoch nicht vollständig sein, da neue Features ggf. noch nicht dokumentiert sind. Ideal bei Nutzung von Vorab- oder Entwicklungs-versionen. +- Stable Release-Versionen: Dokumentation zu offiziellen Releases – eingefroren, geprüft und unverändert seit Freigabe. + +Über das Versionsmenü oben rechts können Sie jederzeit zwischen der Rolling-Version und den einzelnen Release-Versionen wechseln. + +## Inhaltsverzeichnis + +### [Benutzeroberfläche und Navigation](./general) + +Hier finden Sie allgemeine Informationen zu Kontoeinstellungen, Anpassungsmöglichkeiten und Ansichtsmodi. + +### [Verwalten von Dateien und Ordner](./files-and-folders) + +Hier finden Sie Informationen zur Verwaltung von Dateien und Ordnern. + +### [Teilen von Dateien und Ordner](./sharing) + +Hier erfahren Sie, wie Sie Dateien und Ordner freigeben können. + +### [Arbeiten im Team mit Spaces](./spaces) + +Hier finden Sie Informationen zur Arbeit mit Spaces. + +### [OpenCloud Desktop](./desktop-client) + +Hier finden Sie Anleitungen zur Installation und Einrichtung des Desktop-Clients. + +### [OpenCloud iOS App](./ios-app/) + +Hier erhalten Sie Informationen zur Nutzung der OpenCloud iOS App. + +### [Rollen](./roles) + +Hier erfahren Sie mehr über die verschiedenen zuweisbaren Rollen. + +### [Administration von OpenCloud](./admin) + +Hier finden Sie Informationen über die Administrationsfunktionen und deren Nutzungsmöglichkeiten. + +### [Häufige Probleme und Hilfe](./common-issues.md) + +Hier finden Sie Informationen zu häufigen Problemen und Hilfe zu deren Lösung. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/create-rename-move.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/create-rename-move.md new file mode 100644 index 00000000..e3830f37 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/create-rename-move.md @@ -0,0 +1,119 @@ +--- +sidebar_position: 1 +id: create-rename-move +title: Erstellen - Umbenennen - Verschieben +description: Erstellen - Umbenennen - Verschieben +draft: false +--- + +# Erstellen, Umbenennen und Verschieben von Dateien und Ordnern + +Mit der OpenCloud iOS-App verwalten Sie Ihre Inhalte ganz einfach. Erstellen Sie neue Ordner und Dateien, benennen Sie Elemente um und verschieben Sie sie an andere Speicherorte – alles direkt von Ihrem iPhone oder iPad aus. + +## Erstellen von Dateien und Ordnern + +- Tippen Sie oben rechts auf die Schaltfläche "+". + +Neu erstellen + +Wählen Sie aus dem Menü aus, was Sie erstellen möchten: + +### Erstellen Sie einen Ordner + +– Tippen Sie auf "Ordner erstellen" +– Geben Sie einen Namen für Ihren Ordner ein +– Tippen Sie auf "Done" + +Ordner erstellen + +### Erstellen Sie ein Dokument (erfordert Collabora) + +Wenn Collabora Online in Ihrer OpenCloud-Instanz aktiviert ist: + +– Tippen Sie auf "Neues Dokument" +– Wählen Sie den Dokumenttyp (Text, Tabelle, Präsentation) +– Geben Sie einen Dateinamen ein und bestätigen Sie. + +Wählen Sie den Dateityp + +Das Dokument wird zur Bearbeitung in einer integrierten Webansicht mit Collabora geöffnet. + +In Collabora öffnen +In Collabora bearbeiten + +### Machen Sie ein Foto oder Video + +- Wählen Sie "Foto oder Video aufnehmen" aus dem Menü + +wählen Sie Foto oder Video aufnehmen aus + +– Die Kamera Ihres Geräts wird geöffnet. +– Nehmen Sie ein Foto oder Video auf. + +Machen Sie ein Foto + +- Die Medien werden direkt in Ihrem OpenCloud-Konto gespeichert + +Foto gespeichert + +### Dokument scannen + +Scannen Sie Papierdokumente mit Ihrem iOS-Gerät: + +- Wählen Sie "Dokument scannen" +- Richten Sie die Kamera auf Ihr Dokument. +- OpenCloud erkennt die Ränder automatisch und scannt das Dokument. + +Sie können dann: + +– Den Scan zuschneiden oder drehen +– Den Farbmodus wechseln (Farbe, Graustufen, Schwarzweiß) +– Ein Dateiformat wählen (PDF, JPEG, PNG) +– Als einseitige oder mehrseitige Datei speichern + +Das gescannte Dokument wird in Ihrem OpenCloud-Konto gespeichert. + +## Dateien oder Ordner umbenennen + +So benennen Sie eine Datei oder einen Ordner in der OpenCloud iOS-App um: + +- Tippen Sie auf die drei Punkte (⋯) neben dem Element, das Sie umbenennen möchten. + +Klicken Sie auf das Drei-Punkte-Menü + +- Wählen Sie "Umbenennen" aus dem Menü + +Wählen Sie umbenennen + +- Geben Sie den neuen Namen für die Datei oder den Ordner ein + +Geben Sie den neuen Namen ein + +- Tippen Sie auf "Done", um die Änderungen zu übernehmen + +Tippen Sie auf fertig +Neuer angewendeter Name + +Der neue Name wird sofort gespeichert. + +## Dateien oder Ordner verschieben + +So verschieben Sie eine Datei oder einen Ordner in der OpenCloud iOS-App: + +- Tippen Sie auf die drei Punkte (⋯) neben der Datei oder dem Ordner, die/den Sie verschieben möchten. + +Wählen Sie das Drei-Punkte-Menü + +- Wählen Sie "Ausschneiden" oder "Kopieren" aus dem Menü + +Wählen Sie Ausschneiden oder Kopieren + +- Navigieren Sie zum Zielordner. +- Tippen Sie auf die drei Punkte (⋯) im Zielordner und wählen Sie Einfügen. + +Wählen Sie einfügen +Datei ist verschoben + +Die Datei oder der Ordner wird jetzt am neuen Speicherort angezeigt. + +--- diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/upload-make-available-offline.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/upload-make-available-offline.md new file mode 100644 index 00000000..29a930fc --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/files-and-folders/upload-make-available-offline.md @@ -0,0 +1,59 @@ +--- +sidebar_position: 2 +id: upload-make-available-offline +title: Hochladen - Offline verfügbar machen +description: Hochladen - Offline verfügbar machen +draft: false +--- + +# Dateien hochladen + +Mit der OpenCloud iOS-App können Sie ganz einfach Dateien hochladen und offline verfügbar machen. + +## Gewünschten Ordner öffnen + +Navigieren Sie zu dem Ordner, in den Sie eine Datei hochladen möchten. + +## Tippen Sie oben rechts auf das "+"-Symbol + +Plus Symbol + +## Upload-Option auswählen + +Im Menü können Sie Folgendes auswählen: + +– "Datei hochladen" – Laden Sie eine Datei aus der Dateien-App Ihres Geräts hoch. +– "Aus Ihrer Fotobibliothek hochladen" – Laden Sie ein vorhandenes Foto oder Video aus Ihrer Medienbibliothek hoch. + +Upload-Optionen + +## Auswahl bestätigen + +Wählen Sie die hochzuladende Datei oder das Medium aus. Der Upload startet automatisch. + +## Dateien offline verfügbar machen + +Sie können Dateien auch offline verfügbar machen, sodass sie auch ohne Internetverbindung zugänglich sind. + +- Tippen Sie auf die drei Punkte (⋯) neben der Datei + +Offline verfügbar machen + +- Wählen Sie "Offline verfügbar machen" aus + +Die Datei wird heruntergeladen und lokal auf Ihrem Gerät gespeichert. + +Offline verfügbar machen + +- Offlinedateien sind mit einem Wolkensymbol mit Häkchen gekennzeichnet. + +Offline verfügbar machen + +## Offline-Verfügbarkeit entfernen + +So geben Sie Speicherplatz frei: + +- Tippen Sie erneut auf die drei Punkte (⋯) einer Offline-Datei. +- Wählen Sie "Offline-Zugriff entfernen". + +Mit diesen Funktionen sind Sie immer vorbereitet – auch wenn Sie offline sind! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/installation.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/installation.md new file mode 100644 index 00000000..eaca3ce5 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/installation.md @@ -0,0 +1,35 @@ +--- +sidebar_position: 1 +id: installation +title: Installieren der iOS App +description: Installieren der iOS App +draft: false +--- + +# 📱 Installieren der iOS-App + +## App Store + +Öffnen Sie den App Store auf Ihrem iPhone oder iPad + +## OpenCloud + +Suchen Sie nach "OpenCloud" oder klicken Sie direkt auf den folgenden Link: + +[OpenCloud im App Store](https://apps.apple.com/de/app/opencloud-your-data-anywhere/id6743121005) + +iOS Installation + +## Installieren + +Tippen Sie auf "Laden", um die App zu installieren + +## App Icon + +Nach der Installation finden Sie die OpenCloud App auf Ihrem Home-Bildschirm + +icon + +## Einrichten + +Öffnen Sie die App und folgen Sie den Anweisungen zur Einrichtung diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-fileslist.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-fileslist.md new file mode 100644 index 00000000..a30ed2e0 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-fileslist.md @@ -0,0 +1,53 @@ +--- +sidebar_position: 2 +id: account-fileslist +title: Dateilisten-Menü +description: Dateilisten-Menü +draft: false +--- + +# Überblick über die Benutzeroberfläche + +In diesem Abschnitt werden die zentralen Elemente der Benutzeroberfläche der OpenCloud iOS-App und deren Funktionen erklärt. + +Dateiliste-Übersicht + +## 1. Konto-Menü + +Bietet Zugriff auf die Kontoeinstellungen. + +## 2. Navigationsverlauf + +Ermöglicht das Zurück- und Vorwärtsnavigieren durch zuvor besuchte Ansichten oder Ordner. + +## 3. Suche + +Ermöglicht die Suche nach Dateien, Ordnern oder geteilten Inhalten innerhalb der App. + +## 4. Hinzufügen-Schaltfläche + +Öffnet Optionen zum Hochladen von Dateien, Erstellen von Ordnern oder Hinzufügen neuer Inhalte. + +## 5. Drei-Punkte-Menü + +Zeigt zusätzliche Aktionen oder Einstellungen zur aktuellen Ansicht oder zum aktuellen Element an. + +## 6. Sortierung + +Ermöglicht das Sortieren von Dateien nach Name, Datum, Größe oder anderen Kriterien. + +## 7. Ansichtsmodus + +Ermöglicht das Umschalten zwischen verschiedenen Ansichtsmodi. + +## 8. Auswahlmodus + +Aktiviert den Mehrfachauswahlmodus, um mehrere Dateien oder Ordner gleichzeitig auszuwählen. + +## 9. Dateiliste + +Zeigt den Inhalt des aktuellen Ordners als Liste von Dateien und Ordnern an. + +## 10. Breadcrumb-Menü + +Zeigt den aktuellen Ordnerpfad an und ermöglicht die schnelle Navigation zu übergeordneten Ordnern. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-overview.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-overview.md new file mode 100644 index 00000000..9745f244 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/overview/account-overview.md @@ -0,0 +1,56 @@ +--- +sidebar_position: 1 +id: account-overview +title: Account-Menü +draft: false +--- + +# Kontomenü + +In der iOS-App bietet das Kontomenü Zugriff auf verschiedene persönliche und freigabebezogene Funktionen. + +Dateiübersicht + +## 1. Kontomenüeintrag + +Öffnet die Hauptoptionen und Einstellungen des Kontos. + +## 2. Aktives Konto + +Zeigt an, welches Benutzerkonto derzeit aktiv ist. + +## 3. Persönlicher Bereich + +Bietet Zugriff auf die persönlichen Dateien und Ordner der nutzenden Person. + +## 4. Freigaben + +Zeigt Dateien und Ordner, die mit anderen geteilt wurden oder empfangen wurden. + +## 5. Spaces + +Öffnet eine Liste kollaborativer Bereiche oder Teamordner. + +## 6. Suche + +Ermöglicht die Suche nach Dateien, Ordnern und Inhalten. + +## 7. Zuletzt verwendet + +Zeigt eine Liste der zuletzt geöffneten oder bearbeiteten Dateien. + +## 8. Offline verfügbar + +Zeigt Dateien an, die für den Offline-Zugriff markiert wurden. + +## 9. Status + +Zeigt den aktuellen Synchronisations- oder Verbindungsstatus an. + +## 10. Konto hinzufügen + +Ermöglicht das Hinzufügen eines neuen Kontos zur App. + +## 11. Einstellungen + +Öffnet die allgemeinen Einstellungen und Konfigurationsoptionen. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/set-up.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/set-up.md new file mode 100644 index 00000000..ed0655a9 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/set-up.md @@ -0,0 +1,50 @@ +--- +sidebar_position: 2 +id: set-up +title: Einrichten der OpenCloud iOS App +description: Einrichten deines OpenCloud Accounts +draft: false +--- + +# 🔐 Einrichten deines OpenCloud Accounts + +Nachdem du die App installiert hast, kannst du deinen OpenCloud Account einrichten. + +## S tarte die Einrichtung + +- Tippe auf „Start setup“, um zu beginnen. +- Wenn du bereits einen Account eingerichtet hast und einen weiteren hinzufügen möchtest, tippe auf das „+“-Symbol unten links auf dem Bildschirm. + +Einrichtung starten +Zusätzlichen Account hinzufügen + +## Server-URL eingeben + +- Gib die URL deines OpenCloud Servers ein (z. B. `https://cloud.beispiel.de`) +- Tippe auf „Proceed“, um fortzufahren. + +Server-URL eingeben + +## Login Seite öffnen + +- Tippe auf „Open login page“ +- Tippe anschließend auf „Fortfahren“, um die Anmeldeseite im Browser zu starten + +Login-Seite öffnen +Anmeldung fortsetzen + +## Anmelden und Zugriff erlauben + +- Melde dich mit deinen OpenCloud Zugangsdaten an +- Erlaube der App den Zugriff auf deine Benutzerinformationen und die kontinuierliche Anmeldung + +Zugangsdaten eingeben +Zugriff gewähren + +## Einrichtung abschließen + +- Nach erfolgreicher Anmeldung wird dein Account in der App hinzugefügt +- Optional kannst du deinem Account einen benutzerdefinierten Anzeigenamen geben + (Standardmäßig erscheint er als `BENUTZERNAME@DEINE.DOMAIN`) + +Benutzerdefinierter Name diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/settings.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/settings.md new file mode 100644 index 00000000..76d9d046 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/general/settings.md @@ -0,0 +1,103 @@ +--- +sidebar_position: 4 +id: settings +title: Einstellungen +description: Einstellungen der iOS App +draft: false +--- + +# Einstellungen + +In den iOS-App Einstellungen können Änderungen vorgenommen werden wie z.B + + - Benutzeroberfläche + - Datennutzung + - erweiterte Einstellungen + - Mediadateien + und mehr + +Einstellungen + +## Userinterface + +### 1. Theme + +Hier kann ausgewählt werden, ob man die App im "Light-" oder "Darkmode" betreiben möchte. + +### 2. Sucheinstellungen + +Hier kann man einstellen, wo die Suchfunktion agieren soll: + +- Ordner +- Baum +- Space +- Account +- Server + +### 3. Logging + +Hier kann die Loggingfunktion aktiviert und deaktiviert werden, sowie der Speicherort des Logfiles angegeben werden. + +## Data Usage + +### 4. Mobile Datennutzung + +Hier kann eingestellt werden, ob die App mit mobilen Daten genutzt werden kann oder nicht. + +### 5. Löschen von nicht verwendeten lokalen Kopien + +Hier kann eingestellt werden, wann nicht genutzte lokale Kopien gelöscht werden sollen. + +## Advanced Settings + +### 6. Anzeigen von versteckten Dateien und Ordnern + +Hier kann das Anzeigen von verstecken Dateien und Ordnern aktiviert und deaktiviert werden. + +### 7. Zeige Ordner oben + +Hier kann man einstellen, ob die Ordner in der Listenansicht vor den Dateien angezeigt werden sollen. + +### 8. Gesten deaktivieren + +Hier kann die Gestensteuerung deaktiviert werden, um Mehfachauswahl und das Ziehen von Dateien und Ordnern zu verhindern. + +### 9. Diagnose aktivieren + +Hier kann ausgewählt werden, ob die App im Hintergrund Diagnosen ausführen darf. + +## Media Files + +### 10. Herunterladen anstelle von streamen + +Hier kann eingestellt werden, ob eine Datei direkt heruntergeladen oder gestreamt werden soll. + +### 11. Medien hochladen + +Hier kann man einstellen, ob z.B. bestimmte Dateien beim hochladen konvertiert werden sollen, wie HEIC zu JPEG. + +## More + +### 12. Hilfe und Kontakt + +Hier findet man Links zu unserer Dokumentaionsseite und Hilfelinks. + +### 13. Einem Freund empfehlen + +Hier kann man einen Link zum Download der iOS-App weiterleiten. + +### 14. Datenschutzrichtlinie + +Hier findet man einen vollständigen Eintrag zu unseren Datenschutzrichtlinien. + +### 15. Nutzungsbedingungen + +Hier findet man einen vollständigen Eintrag zu unseren Nutzungsbedingen. + +### 16. Anerkennungen + +Teile der App können urheberrechtlich geschütztes Material verwenden, dessen Verwendung hier anerkannt wird. + +### 17. App Version + +Hier kann ausgelesen werden, welche App Version verwendet wird. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/choose-file-type.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/choose-file-type.png new file mode 100644 index 00000000..0e014e28 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/choose-file-type.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-folder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-folder.png new file mode 100644 index 00000000..ba69d2a9 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-folder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-new.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-new.png new file mode 100644 index 00000000..c925a437 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/create-new.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/edit-collabora.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/edit-collabora.png new file mode 100644 index 00000000..79a870c1 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/edit-collabora.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/enter-rename.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/enter-rename.png new file mode 100644 index 00000000..6023a359 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/enter-rename.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/file-moved.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/file-moved.png new file mode 100644 index 00000000..df5c8fe3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/file-moved.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/new-name-applied.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/new-name-applied.png new file mode 100644 index 00000000..3c9a4223 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/new-name-applied.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/open-collabora.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/open-collabora.png new file mode 100644 index 00000000..890e17a7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/open-collabora.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/photo-saved.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/photo-saved.png new file mode 100644 index 00000000..651c303f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/photo-saved.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-cut-or-copy.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-cut-or-copy.png new file mode 100644 index 00000000..36e6376b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-cut-or-copy.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-paste.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-paste.png new file mode 100644 index 00000000..55ea34e2 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-paste.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-rename.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-rename.png new file mode 100644 index 00000000..3555bd60 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-rename.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-take-photo.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-take-photo.png new file mode 100644 index 00000000..776241fc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/select-take-photo.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/take-photo.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/take-photo.png new file mode 100644 index 00000000..9c82a064 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/take-photo.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/tap-done.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/tap-done.png new file mode 100644 index 00000000..cc09b695 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/tap-done.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots-move.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots-move.png new file mode 100644 index 00000000..5005f980 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots-move.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots.png new file mode 100644 index 00000000..f2684289 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/create-rename-move/three-dots.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/make-available-offline.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/make-available-offline.png new file mode 100644 index 00000000..c7f66a58 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/make-available-offline.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/marked-offline.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/marked-offline.png new file mode 100644 index 00000000..6a414eaa Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/marked-offline.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/three-dots.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/three-dots.png new file mode 100644 index 00000000..200f2d4f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/three-dots.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-options.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-options.png new file mode 100644 index 00000000..ee3c63a7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-options.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-plus-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-plus-button.png new file mode 100644 index 00000000..f2a7ceef Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/files-and-folders/upoload-make-available-offline/upload-plus-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/icon-on-screen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/icon-on-screen.png new file mode 100644 index 00000000..a86cb5c3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/icon-on-screen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/ios-installation.jpg b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/ios-installation.jpg new file mode 100644 index 00000000..70eaa186 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/installation/ios-installation.jpg differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/account.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/account.png new file mode 100644 index 00000000..ffd97623 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/account.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/fileslist.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/fileslist.png new file mode 100644 index 00000000..cf8773d8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/overview/fileslist.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/date.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/date.png new file mode 100644 index 00000000..c4a31e2b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/date.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/save-search.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/save-search.png new file mode 100644 index 00000000..63f439b2 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/save-search.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-location.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-location.png new file mode 100644 index 00000000..b2084313 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-location.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-menue.png new file mode 100644 index 00000000..ec300254 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-result.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-result.png new file mode 100644 index 00000000..551f4f7b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-result.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-symbol.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-symbol.png new file mode 100644 index 00000000..3ecbd499 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/search-symbol.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/searchbar.png new file mode 100644 index 00000000..755fa905 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/size.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/size.png new file mode 100644 index 00000000..708f9690 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/size.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/type.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/type.png new file mode 100644 index 00000000..72d249a6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/search/type.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/add-additional-account.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/add-additional-account.png new file mode 100644 index 00000000..e3ecc6c0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/add-additional-account.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/continue-sign-in.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/continue-sign-in.png new file mode 100644 index 00000000..ebe6f25a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/continue-sign-in.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/custom-name.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/custom-name.png new file mode 100644 index 00000000..056a6225 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/custom-name.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-credentials.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-credentials.png new file mode 100644 index 00000000..bb31e743 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-credentials.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-server-url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-server-url.png new file mode 100644 index 00000000..90af12a6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/enter-server-url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/grant-access.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/grant-access.png new file mode 100644 index 00000000..1f36079e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/grant-access.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/open-login-page.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/open-login-page.png new file mode 100644 index 00000000..195e3350 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/open-login-page.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/start-setup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/start-setup.png new file mode 100644 index 00000000..69ab090f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/set-up/start-setup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/settings/einstellungen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/settings/einstellungen.png new file mode 100644 index 00000000..93fc10ab Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/settings/einstellungen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/choose-invites.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/choose-invites.png new file mode 100644 index 00000000..0a632fc7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/choose-invites.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-button.png new file mode 100644 index 00000000..a4ae9d18 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-menue.png new file mode 100644 index 00000000..13c5854a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-option.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-option.png new file mode 100644 index 00000000..d5f398ba Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/invite-option.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/permissions.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/permissions.png new file mode 100644 index 00000000..3848f49a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/permissions.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/searchbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/searchbar.png new file mode 100644 index 00000000..f7aa1ecf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/searchbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/shared-with.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/shared-with.png new file mode 100644 index 00000000..80566d86 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/shared-with.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/sharing-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/sharing-button.png new file mode 100644 index 00000000..cb96657d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/sharing-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/three-dot-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/three-dot-menue.png new file mode 100644 index 00000000..fb1ec63e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/invite/three-dot-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-button.png new file mode 100644 index 00000000..9b38d54a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-options.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-options.png new file mode 100644 index 00000000..e126b5de Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/create-link-options.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/created-link.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/created-link.png new file mode 100644 index 00000000..233aa012 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/created-link.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/expiration-date.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/expiration-date.png new file mode 100644 index 00000000..33eda696 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/expiration-date.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/link-name.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/link-name.png new file mode 100644 index 00000000..3f70f6c0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/link-name.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/password.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/password.png new file mode 100644 index 00000000..b6814c10 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/password.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/share-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/share-button.png new file mode 100644 index 00000000..ac909edf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/share-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-button.png new file mode 100644 index 00000000..cb96657d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-options.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-options.png new file mode 100644 index 00000000..05f86cd4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/sharing-options.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/three-dot-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/three-dot-menue.png new file mode 100644 index 00000000..fb1ec63e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shares/links/three-dot-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/choose-file-or-folder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/choose-file-or-folder.png new file mode 100644 index 00000000..ff7c3266 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/choose-file-or-folder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut-button.png new file mode 100644 index 00000000..de479b95 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut.png new file mode 100644 index 00000000..a55ff6ed Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/create-shortcut.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/created-shortcut.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/created-shortcut.png new file mode 100644 index 00000000..ccf7a2b8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/created-shortcut.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/pick-file-or-folder.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/pick-file-or-folder.png new file mode 100644 index 00000000..3f2a0899 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/pick-file-or-folder.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-button.png new file mode 100644 index 00000000..d66a0b33 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-menue.png new file mode 100644 index 00000000..9247ed80 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/plus-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/select-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/select-button.png new file mode 100644 index 00000000..18ab749b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/select-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-menue.png new file mode 100644 index 00000000..f65abb1d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-name.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-name.png new file mode 100644 index 00000000..7673f7fa Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/shortcut-name.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/url.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/url.png new file mode 100644 index 00000000..2e455795 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/shortcuts/url.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/plus-symbol.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/plus-symbol.png new file mode 100644 index 00000000..a8bb6ed5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/plus-symbol.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-button.png new file mode 100644 index 00000000..5893e8ba Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-menue.png new file mode 100644 index 00000000..3aff8866 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/search-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-button.png new file mode 100644 index 00000000..8f44b7e1 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-functions.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-functions.png new file mode 100644 index 00000000..60db0866 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-functions.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-overview.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-overview.png new file mode 100644 index 00000000..0973862f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/spaces-overview.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/three-point-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/three-point-menue.png new file mode 100644 index 00000000..e6e214bd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/img/spaces/three-point-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/index.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/index.md new file mode 100644 index 00000000..84e9e8da --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/index.md @@ -0,0 +1,20 @@ +--- +title: OpenCloud iOS App +--- + +import DocCardList from '@theme/DocCardList'; + +Die OpenCloud iOS App ermöglicht den mobilen Zugriff auf OpenCloud über iPhone oder iPad. +Sie bietet grundlegende Funktionen für das Arbeiten unterwegs, einschließlich Dateiverwaltung, Uploads und schneller Zusammenarbeit. + +#### Hauptfunktionen + +- Dateimanagement: Anzeigen, Hochladen, Teilen und Organisieren von Dateien und Ordnern +- Zugriff auf Spaces und darin gespeicherte Inhalte +- Volltext- und Metadatensuche zum schnellen Auffinden von Dokumenten +- Unterstützung für gemeinsames Arbeiten über Web Office +- Synchronisation von Änderungen in Echtzeit + +Einsatzbereich: Ideal für alle, die von unterwegs auf ihre OpenCloud-Daten zugreifen und grundlegende Aufgaben mobil erledigen möchten. + + diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/search.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/search.md new file mode 100644 index 00000000..ec6a6f20 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/search.md @@ -0,0 +1,72 @@ +--- +sidebar_position: 4 +id: search +title: Suche +description: Suche +draft: false +--- + +# Suchfunktion + +Hier erklären wir, wie du die Suchfunktion in der OpenCloud iOS-App verwendest. + +## Suchsymbol + +- Klicke auf das Suchsymbol, um die Suchfunktion zu öffnen + + Magnifying glass icon + +## Suchfunktion + +- Die Suchfunktion bietet verschiedene Optionen, mit denen du deine Suche eingrenzen kannst + +## Suchleiste + +- In der Suchleiste kannst du nach Datei- oder Ordnernamen suchen. + + Search bar + +## Suchort + +Durch Klicken auf die Option links neben der Suchleiste kannst du festlegen, wo gesucht werden soll. + +- Ordner: + Sucht nur im aktuellen Ordner. +- Baum: + Sucht im aktuellen Ordner und allen darin enthaltenen Unterordnern. +- Space: + Sucht im aktuellen Space, einschließlich aller darin enthaltenen Ordner und Unterordner. +- Konto: + Sucht im gesamten angemeldeten Konto, einschließlich aller Spaces, Ordner und Unterordner. +- Server: + Sucht auf dem gesamten Server. + + Search location + +## Typ + +- Durch Klicken auf die Option „Typ“ kannst du festlegen, nach welchem Dateityp gesucht werden soll + + File type + +## Datum + +- Durch Klicken auf die Option „Datum“ kannst du den Zeitraum festlegen, in dem gesucht werden soll + + Date + +## Größe + +- Durch Klicken auf die Option „Größe“ kannst du die gesuchte Dateigröße eingrenzen + +## Suche speichern + +- Durch Klicken auf das „Kreissymbol“ mit den drei Punkten kannst du die aktuelle Suche speichern + + Save search + +## Suchergebnis + +- In diesem Bereich werden die Suchergebnisse angezeigt + + Search results diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/invite.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/invite.md new file mode 100644 index 00000000..14cf488c --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/invite.md @@ -0,0 +1,62 @@ +--- +sidebar_position: 1 +id: invite +title: Einladen zum Teilen +description: Einladen zum Teilen +draft: false +--- + +# Dateien und Ordner mit Personen und Gruppen per Einladung teilen + +Hier erklären wir, wie man in der OpenCloud iOS-App, Dateien und Ordner per Einladung mit anderen Personen und Gruppen innerhalb der eigenen OpenCloud teilt + +## Drei-Punkte-Menü + +- Klicken Sie auf das "Drei-Punkte-Menü" neben der Datei oder Ordner + +Drei-Punkte-Menü + +## Teilen + +- Wählen Sie nun den Menüpunkt "Sharing" aus + +Teilen + +## Teilen mit + +- In der folgenden Auswahl klicken Sie auf "invite" + +Teilen mit + +## Teilen Menü + +- Es öffnet sich das Teilen Menü, in dem Sie über die Suchleiste nach Personen oder Gruppen suchen können, die Sie einladen möchten + +Teilen mit Menü +Suchleiste +Auswahl Personen und/oder Gruppen + +## Berechtigungen + +- Hier können Sie auswählen welche Berechtiigungen Personen und Gruppen haben sollen: + +Berechtigungen + + - Viever: + Personen können die Inhalte nur anzeigen und herunterladen, jedoch nicht bearbeiten, erstellen oder hochladen. + - Editor: + Personen können die Inhalte anzeigen, herunterladen, Dateien hochladen, bearbeiten und erstellen. + - Custom: + Hier können die Berechtigungen individuell gewählt werden. + +## Einladen + +- Um den Link nun zu erstellen müssen Sie auf "Invite" klicken + +Einladen + +## Link erstellt + +- Wenn die Einladung erstellt ist, sehen Sie diese in der Datei- oder Ordnerübersicht + +geteilt mit diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/links.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/links.md new file mode 100644 index 00000000..8b90ab8b --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shares/links.md @@ -0,0 +1,81 @@ +--- +sidebar_position: 2 +id: links +title: Per Link teilen +description: Per Link teilen +draft: false +--- + +# Dateien und Ordner per Link teilen + +Hier erklären wir, wie man in der OpenCloud iOS-App Dateien und Ordner per Link mit anderen teilen kann. + +## Drei-Punkte-Menü + +- Tippe auf das Drei-Punkte-Menü neben der Datei oder dem Ordner + + Drei-Punkte-Menü + +## Teilen + +- Wähle nun den Menüpunkt „Share“ aus + + Teilen + +## Link erstellen + +- Klicke in der folgenden Auswahl auf „Create Link“ + + Link erstellen + +## Optionen + +- Hier kannst du mehrere Optionen für den zu erstellenden Link auswählen und festlegen + + Übersicht Link-Menü + +## Linkname + +- Gib hier einen Namen für deinen Link ein + + Linkname + +## Linkfunktionen + +- Hier kannst du auswählen, welche Funktion dein Link haben soll: + + Freigabeoptionen + - Personen einladen: + Nur eingeladene Personen haben Zugriff auf den Link und dessen Inhalt. + - Kann anzeigen: + Personen können den Inhalt des Links nur ansehen und herunterladen, aber nicht bearbeiten, erstellen oder hochladen. + - Kann hochladen: + Personen können den Inhalt des Links ansehen und Dateien hochladen, aber nicht bearbeiten oder erstellen. + - Kann verwalten: + Personen können Dateien ansehen, herunterladen und hochladen, aber nicht bearbeiten oder erstellen. + - Kann bearbeiten: + Personen können den Inhalt des Links ansehen, herunterladen, hochladen, bearbeiten und erstellen. + +## Passwort + +- Hier musst du ein Passwort eingeben. Du kannst eines selbst wählen oder automatisch generieren lassen + + Passwort + +## Verfügbarkeitszeitraum + +- Hier kannst du einen Zeitraum festlegen, für den der Link verfügbar sein soll + + Ablaufdatum des Links + +## Erstellen + +- Um den Link zu erstellen, musst du nun auf „Share“ klicken + + Teilen + +## Erstellt Link + +- Sobald der Link erstellt wurde, wird er mit dem vergebenen Namen in der Datei- oder Ordnerübersicht angezeigt + + Erstellter Link diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shortcuts.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shortcuts.md new file mode 100644 index 00000000..410a17b5 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/shortcuts.md @@ -0,0 +1,67 @@ +--- +sidebar_position: 5 +id: shortcuts +title: Verlinkungen in der OpenCloud iOS App +description: Verlinkungen in der OpenCloud iOS App +draft: false +--- + +# Shortcut in der OpenCloud iOS-App + +Hier zeigen wir dir, wie du Shortcuts in der iOS-App erstellst. + +## „+“-Symbol + +- Tippe auf das „+“-Symbol + + Plus symbol + +## Drop-down-Menü + +- Es öffnet sich ein Drop-down-Menü + + Drop-down menu + +## Shortcut erstellen + +- Wähle „Shortcut erstellen“ aus + + Select create shortcut + +## Shortcut-Optionen + +- Es öffnet sich ein Menü mit Optionen für Shortcuts + + Shortcut menu + +## URL + +- Um einen Shortcut zu einer Website zu erstellen, gib unter „URL“ die Adresse der Website ein + + URL + +## Dateien und Ordner auswählen + +- Um einen Shortcut zu einer Datei oder einem Ordner in OpenCloud zu erstellen, tippe auf die Option „Datei oder Ordner auswählen“ + + Select file or folder option + Select file or folder + Select + +## Shortcut-Name + +- Gib hier einen Namen für den Shortcut ein, unter dem er angezeigt werden soll + + Name of the shortcut + +## Erstellen-Button + +- Tippe auf „Shortcut erstellen“, um den Shortcut zu erstellen + + Create shortcut + +## Erstellter Shortcut + +- Dein erstellter Shortcut wird nun angezeigt und kann verwendet werden + + Shortcut diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/spaces.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/spaces.md new file mode 100644 index 00000000..ca5aa596 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/ios-app/spaces.md @@ -0,0 +1,75 @@ +--- +sidebar_position: 6 +id: spaces +title: Spaces +description: Spaces in OpenCloud iOS app +draft: false +--- + +# Der Bereich „Spaces“ in der OpenCloud iOS-App + +Der Bereich „Spaces“ bietet einen zentralen Ort für die Zusammenarbeit in Gruppen oder Teams. In einem Space können mehrere Personen gemeinsam auf Dateien und Ordner zugreifen, Inhalte organisieren und Änderungen nachverfolgen. + +## Spaces-Übersicht + +Um die Spaces-Übersicht zu öffnen, tippe im Kontomenü auf die Schaltfläche „Spaces“. + +Spaces Button + +Anschließend erscheint die Spaces-Übersicht, in der alle Spaces aufgelistet sind, in denen du Mitglied bist oder die du selbst erstellt hast. + +Spaces Overview + +## Suchfunktion + +Durch Tippen auf das Suchsymbol öffnet sich das Suchmenü für Spaces. + +Search Function + +Search Menu + +## Funktionen innerhalb eines Spaces + +Durch Tippen auf das Plus-Symbol erscheinen die verfügbaren Funktionen innerhalb eines Spaces. + +Plus Icon + +Functions in Spaces + +## Hinzufügen-Menü + +Das Hinzufügen-Menü in der iOS-App ermöglicht es Nutzer\*innen, Inhalte direkt in einem Space zu erstellen oder hochzuladen. + +### 1. Ordner erstellen + +Neue Ordner erstellen, um Inhalte übersichtlich zu strukturieren. + +### 2. Neues Dokument + +Ein neues Dokument direkt im Space erstellen, ohne eine separate App zu nutzen. + +### 3. Dateien hochladen + +Dateien vom eigenen Gerät auswählen und in den Space hochladen. + +### 4. Aus Mediathek hochladen + +Auf die iOS-Fotomediathek zugreifen und Bilder oder Videos direkt in den Space laden. + +### 5. Foto oder Video aufnehmen + +Die iOS-Kamera nutzen, um Fotos oder Videos aufzunehmen und direkt in den Space hochzuladen. + +### 6. Shortcut erstellen + +Einen Shortcut zu einer Datei oder einem Ordner im Space erstellen, um schneller darauf zugreifen zu können. + +### 7. Dokument scannen + +Die Gerätekamera verwenden, um physische Dokumente zu scannen und sie direkt als PDF im Space zu speichern. + +## Drei-Punkte-Menü + +Durch Tippen auf das Drei-Punkte-Menü öffnet sich ein Pop-up-Menü, in dem du den Space offline verfügbar machen kannst. + +Three-Dot Menu diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/share-roles.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/share-roles.md new file mode 100644 index 00000000..3307c6f6 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/share-roles.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 3 +id: share-roles +title: Rollen beim Teilen +description: Rollen beim Teilen in OpenCloud +draft: false +--- + +# Rollen beim teilen in OpenCloud + +| Rolle | anzeigen | herunterladen | hochladen | bearbeiten | erstellen | löschen | nur doc, img, pdf mit Wasserzeichen anzeigen | +| :--------------------- | :------: | :-----------: | :-------: | :--------: | :-------: | :-----: | :------------------------------------------: | +| kann anzeigen (geheim) | - | - | - | - | - | - | x | +| kann anzeigen | x | x | - | - | - | - | - | +| kann hochladen | x | x | x | - | - | - | - | +| kann bearbeiten | x | x | x | x | x | x | - | + +## Space-Mitglieder-Rollen und -Rechte + +In einem Space können Mitglieder verschiedene Rollen haben, die bestimmen, was sie mit gemeinsamen Dateien und Ordnern tun können. + +### Kann ansehen (sicher) + +- Sie können nur Dokumente, Bilder und PDFs anzeigen. +- Die Dateien werden mit einem Wasserzeichen versehen. +- Das Herunterladen ist nicht erlaubt. + +### Kann anzeigen + +- Sie können Dateien und Ordner anzeigen und herunterladen. +- Keine Einschränkungen beim Herunterladen. + +### Kann hochladen + +- Sie können Dateien und Ordner anzeigen, herunterladen und hochladen. + +### Kann bearbeiten + +- Sie können Dateien und Ordner bearbeiten, hinzufügen und löschen. +- Voller Zugriff auf die Änderung gemeinsamer Inhalte. + +Jede Rolle gibt eine andere Zugriffsstufe, so dass jeder Benutzer die richtigen Berechtigungen erhält! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/space-roles.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/space-roles.md new file mode 100644 index 00000000..571e9d25 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/space-roles.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 2 +id: space-roles +title: Rollen für Spaces +--- + +### Rollen für Spaces in OpenCloud + +| Role | anzeigen | herunterladen | hochladen | bearbeiten | erstellen | löschen | Mitglieder verwalten | deaktivieren / aktivieren Space | Quota bearbeiten | Space löschen | +| :-------------- | :------: | :-----------: | :-------: | :--------: | :-------: | :-----: | :------------------: | :-----------------------------: | :--------------: | :-----------: | +| Kann anzeigen | x | x | - | - | - | - | - | - | - | - | +| Kann bearbeiten | x | x | x | x | x | x | - | - | - | - | +| Kann verwalten | x | x | x | x | x | x | x | x | x | x | + +## Space Rollen und Berechtigungen + +In einem Space können Mitglieder verschiedene Rollen haben, die ihnen unterschiedliche Zugriffsebenen geben. + +### Kann anzeigen + +Mit dieser Rolle kann das Mitglied Dateien im Space ansehen und herunterladen, aber keine Änderungen vornehmen, keine Dateien und Ordner hochladen oder neue erstellen. + +### Kann bearbeiten + +Mit dieser Rolle kann das Mitglied alles tun, was ein „Can View“-Mitglied tun kann, plus: + +- Dateien in den Space hochladen +- Hinzufügen von neuen Dateien und Ordnern +- Löschen von Dateien und Ordnern, einschließlich ihrer Historie +- Gelöschte Dateien wiederherstellen + +### Kann verwalten + +Diese Rolle verleiht dem Mitglied alle Fähigkeiten von „Kann bearbeiten“, plus: + +- Hinzufügen oder Entfernen von Mitgliedern aus dem Space +- Ändern der Rollen anderer Mitglieder im Space +- Aktivieren und Deaktivieren des Spaces +- Bearbeiten der Quote des Spaces +- Löschen des Spaces + +Jede Rolle bestimmt, was ein Mitglied innerhalb des Spaces tun kann! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/user-roles.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/user-roles.md new file mode 100644 index 00000000..8c181c7b --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/roles/user-roles.md @@ -0,0 +1,69 @@ +--- +sidebar_position: 1 +id: user-roles +title: Rollen für Nutzer +--- + +# Nutzerrollen in OpenCloud + +| Rolle | Persönlicher Space | Spaces erstellen | Spaces verwalten | Nutzer und Gruppen verwalten | +| :---------------- | :----------------: | :--------------: | :--------------: | :--------------------------: | +| Administrator | x | x | x | x | +| Space Manager/-in | x | x | x | - | +| Person | x | - | x | - | +| User Light | - | - | x | - | + +## Administrator + +Die Administrator-Rolle in OpenCloud hat die gleichen Fähigkeiten wie ein Space-Administrator, verfügt aber zusätzlich über spezielle Berechtigungen zur Verwaltung von Benutzern, Gruppen und Systemeinstellungen. +Allerdings haben Administratoren keinen direkten Zugriff auf Space-Daten oder die Möglichkeit, Benutzer zu Spaces hinzuzufügen, für die sie nicht die Rolle „kann verwalten“ haben. Nachfolgend sind die wichtigsten Aktionen aufgeführt, die ein Administrator durchführen kann: + +- Lokale Benutzer und Gruppen erstellen und löschen + + Administratoren können neue lokale Benutzer hinzufügen und bestehende lokale Benutzer aus dem System entfernen. + Sie können auch lokale Gruppen erstellen und löschen, um Benutzer effizient zu organisieren. + +- Benutzer und Gruppen bearbeiten + + Benutzerdetails wie Namen, E-Mail-Adressen und Rollen können geändert werden. + Gruppen können durch Hinzufügen oder Entfernen von Mitgliedern nach Bedarf aktualisiert werden. + +- Anmeldung verhindern + + Falls erforderlich, können Administratoren Benutzerkonten deaktivieren und so verhindern, dass sie sich anmelden können. + Dies ist nützlich aus Sicherheitsgründen oder wenn ein Konto nicht mehr benötigt wird. + +- Spaces verwalten (ohne Zugriff auf Space-Daten) + + Administratoren können Spaces verwalten, z. B. aktivieren, deaktivieren oder löschen, umbenennen oder die Quote anpassen, auch wenn sie nicht die Rolle „kann verwalten“ haben. + Sie können jedoch nicht auf die Dateien innerhalb eines Spaces zugreifen oder ihm Mitglieder hinzufügen. + +- Das Logo ändern + + Das Systemlogo kann aktualisiert werden, um das Firmenbranding widerzuspiegeln. + Dies kann in den Admin-Einstellungen unter dem Abschnitt „Allgemein“ vorgenommen werden. + +## Space Manager/-in + +Ein Space-Administrator hat die höchste Ebene der Kontrolle über Spaces. Er kann: + +- Spaces erstellen und verwalten +- in Spaces, die er nicht erstellt hat, die Rolle „Kann bearbeiten“ zugewiesen bekommen +- Einen persönlichen Space haben, in dem er Dateien und Ordner erstellen und Daten hochladen kann + +## Person + +Ein normaler Benutzer hat Zugang zu seinem eigenen Space und kann Teil anderer Spaces sein. Er kann: + +- Dateien und Ordner in seinem persönlichen Space erstellen +- Eigene Daten hochladen und verwalten +- Als Mitglied zu einem Space hinzugefügt werden +- Kann die Rolle „Kann bearbeiten“ in einem Space haben + +## User Light + +Ein User Light hat einen eingeschränkten Zugang und verfügt nicht über einen eigenen Space. Er kann: + +- Als Mitglied zu einem Space hinzugefügt werden +- Kann die Rolle „Kann bearbeiten“ in einem Space haben +- Er kann keine Dateien und Ordner erstellen oder Daten in einen persönlichen Space hochladen. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/external.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/external.md new file mode 100644 index 00000000..aabb029e --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/external.md @@ -0,0 +1,68 @@ +--- +sidebar_position: 2 +id: external +title: Extern Teilen +description: Externes Teilen von Dateien und Ordner in OpenCloud +draft: false +--- + +# Öffentliche Links - Externes Teilen von Dateien und Ordner in OpenCloud + +Mit Öffenlichen Links können Dateien und Ordner organisationsübergreifend geteilt werden. + +## Schritte zum Erstellen eines öffentlichen Links + +- Klicken Sie auf das "Drei-Punkte-Menü “ neben dem Datei- oder Ordnernamen, den Sie freigeben möchten. + Drei Punkte Menü + +- Wählen Sie "Teilen “ aus dem Dropdown-Menü. + Teilen auswählen + +- Auf der rechten Seite des Bildschirms öffnet sich ein Seitenleistenfenster. + Seitenleistenfenser + +- Scrollen Sie im Fenster der Seitenleiste nach unten und klicken Sie auf "Link hinzufügen “. + + + +- Ein Pop-up-Fenster wird geöffnet, in dem Sie die folgenden Optionen einstellen können: + Klick auf Link hinzufügen + Link hinzufügen button + +## Optionen im Pop-up-Fenster + +- Wählen Sie die gewünschten Zugriffsrechte für die Empfänger: + - "Kann ansehen “: + Der Link-Empfänger kann die Datei ansehen und herunterladen, aber keine Dateien bearbeiten oder hochladen. + - "Kann bearbeiten “: + Der Linkempfänger kann die Datei anzeigen, herunterladen, bearbeiten und löschen sowie Dateien in den Ordner hochladen + - "Datei ablegen (geheim) “: + Der Link-Empfänger kann nur Dateien hochladen, aber den Inhalt nicht anzeigen oder bearbeiten. + + Zugriffsrechte + +- Aktivieren Sie das Passwort, indem Sie es in das Eingabefeld unter "Passwort “ eingeben. +- Die Passwortanforderungen erscheinen unterhalb des Eingabefeldes. + Password Eingabe +- Hier sind drei Icons: + - Ein Symbol zeigt das Passwort unverschlüsselt an, um Ihre Eingabe zu überprüfen. + Unencrypt password + - Ein weiteres Symbol kopiert das Kennwort in die Zwischenablage. + Passwort kopieren + - Das letzte Symbol erzeugt automatisch ein Zufallspasswort. + Random Passwort generieren + +- Geben Sie unter „Ablaufdatum“ ein Datum ein, um eine zeitliche Begrenzung für den Link festzulegen. Wenn das Datum abgelaufen ist, ist der Link nicht mehr zugänglich. + Ablaufdatum + +- Wenn Sie kein Datum eingeben, ist der Link immer zugänglich. + +## Link erstellen + +- Wenn Sie alle Optionen eingestellt haben, klicken Sie auf "Link kopieren “, um den öffentlichen Link zu erstellen. + + Link kopieren + +- Der Link ist nun erstellt und kann mit den Empfängern geteilt werden. + +Mit diesen Schritten können Sie Dateien und Ordner sicher und individuell mit externen Nutzern teilen! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/file-drop.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/file-drop.md new file mode 100644 index 00000000..578a7e61 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/file-drop.md @@ -0,0 +1,50 @@ +--- +sidebar_position: 3 +id: file-drop +title: File Drop +description: File Drop (geheim) +draft: false +--- + +# File Drop (geheim) - So funktioniert es + +Mit dem File Drop können Personen, die einen bestimmten Link erhalten (die sogenannten "Linkempfänger"), Dateien in einen gemeinsamen Ordner hochladen +Der Trick: Die "Linkempfänger“ können die bereits im Ordner befindlichen Dateien nicht sehen. + +## Erstellen Sie eine "Dateiablage" + +- Klicken Sie auf das "Drei-Punkte-Menü“ neben dem Namen der Datei oder des Ordners, den Sie freigeben möchten. + Drei Punkte Menü +- Wählen Sie Teilen aus dem Dropdown-Menü. + + Drop down Menü + +- Auf der rechten Seite des Bildschirms öffnet sich ein Sidebar-Fenster. + +- Im Seitenleistenfenster finden Sie den Bereich Öffentliche Links und klicken dort auf die Schaltfläche Link hinzufügen. + Seitenleistenfenster +- Wählen Sie unter Optionen "File Drop (geheim)“ aus. + Klick auf Link hinzufügen + Filedrop auswählen +- Geben Sie ein Passwort ein und bestätigen Sie die Eingaben mit einem Klick auf "Link kopieren“. +- Du kannst außerdem ein „Ablaufdatum“ festlegen, wenn der Link automatisch ablaufen soll. Weitere Informationen zur Einstellung eines Ablaufdatums findest du unter [Externe Freigabe](./external). + + Passwort eingeben und Link kopieren + +- Nun senden Sie den Link und das Passwort an einen "Linkempfänger". + +## To do's für den "Linkempfänger“ + +- Der "Linkempfänger“ öffnet den empfangenen Link in einem Browser. + File drop website +- Der "Linkempfänger" gibt das Passwort ein und klickt dann auf "Weiter“. + Passwort eingeben und Weiter klicken +- Dateien hochladen: + - Der "Dateiablageordner“ wird geöffnet. Der "Linkempfänger“ kann hier seine Dateien hochladen, ohne den vorhandenen Inhalt des Ordners einsehen zu können. + File drop area + - Zur Bestätigung, dass der Upload erfolgreich war, erscheint ein Pop-up-Fenster in der unteren rechten Ecke. + Upload bestätigt + +:::important +Der "Linkempfänger“ hat keinen Zugriff auf bestehende Dateien - er kann nur neue Dateien hinzufügen. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/ablaufdatum.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/ablaufdatum.png new file mode 100644 index 00000000..5de77f76 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/ablaufdatum.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/drei-punkte-menue.png new file mode 100644 index 00000000..ee3d5d38 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-hinzufuegen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-hinzufuegen.png new file mode 100644 index 00000000..d507b0b3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-hinzufuegen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-kopieren-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-kopieren-button.png new file mode 100644 index 00000000..e1df12d3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/link-kopieren-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-auswahl.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-auswahl.png new file mode 100644 index 00000000..474c2b4b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-auswahl.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-button.png new file mode 100644 index 00000000..44e0b343 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-popup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-popup.png new file mode 100644 index 00000000..ec7b2776 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/oeffentliche-links-popup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-auswahl.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-auswahl.png new file mode 100644 index 00000000..caf3214e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-auswahl.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-1.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-1.png new file mode 100644 index 00000000..a36ebaae Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-1.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-2.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-2.png new file mode 100644 index 00000000..7d836f03 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-2.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-3.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-3.png new file mode 100644 index 00000000..e1e49b57 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/passwort-icon-3.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/rechte.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/rechte.png new file mode 100644 index 00000000..7657da80 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/rechte.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/sidebar-fenster.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/sidebar-fenster.png new file mode 100644 index 00000000..41bf9fdd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/sidebar-fenster.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/teilen-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/teilen-menue.png new file mode 100644 index 00000000..cf7c52b5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/extern/teilen-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/drei-punkte-menue.png new file mode 100644 index 00000000..ee3d5d38 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-bildschirm.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-bildschirm.png new file mode 100644 index 00000000..cab0f395 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-bildschirm.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-button.png new file mode 100644 index 00000000..54a64ff4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-website.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-website.png new file mode 100644 index 00000000..f4f129bc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/file-drop-website.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/hochladen-bestaedigung.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/hochladen-bestaedigung.png new file mode 100644 index 00000000..a5ff9d83 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/hochladen-bestaedigung.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/link-hinzufuegen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/link-hinzufuegen.png new file mode 100644 index 00000000..d507b0b3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/link-hinzufuegen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/oeffentliche-links-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/oeffentliche-links-button.png new file mode 100644 index 00000000..44e0b343 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/oeffentliche-links-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-popup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-popup.png new file mode 100644 index 00000000..a659c7ed Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-popup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-und-link-kopieren.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-und-link-kopieren.png new file mode 100644 index 00000000..8b817904 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/passwort-und-link-kopieren.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/sidebar-fenster.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/sidebar-fenster.png new file mode 100644 index 00000000..41bf9fdd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/sidebar-fenster.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/teilen-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/teilen-menue.png new file mode 100644 index 00000000..cf7c52b5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/file-drop/teilen-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/drei-punkte-menue.png new file mode 100644 index 00000000..ee3d5d38 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/mit-personen-teilen-auswahl.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/mit-personen-teilen-auswahl.png new file mode 100644 index 00000000..8320f8d5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/mit-personen-teilen-auswahl.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-drop-down-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-drop-down-menue.png new file mode 100644 index 00000000..09dea2f0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-drop-down-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-optionen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-optionen.png new file mode 100644 index 00000000..fb1d9058 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/rechte-optionen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/sidebar-fenster.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/sidebar-fenster.png new file mode 100644 index 00000000..41bf9fdd Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/sidebar-fenster.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/suchleiste.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/suchleiste.png new file mode 100644 index 00000000..f57da467 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/suchleiste.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-button.png new file mode 100644 index 00000000..2c9e21df Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-menue.png new file mode 100644 index 00000000..cf7c52b5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/img/intern/teilen-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/internal.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/internal.md new file mode 100644 index 00000000..112a4fcf --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/sharing/internal.md @@ -0,0 +1,45 @@ +--- +sidebar_position: 1 +id: internal +title: Intern Teilen +description: Organisationsinterne Freigabe von Dateien und Ordnern in OpenCloud +draft: false +--- + +# Organisationsinterne Freigabe von Dateien und Ordnern in OpenCloud + +Hier sind die Schritte zum Teilen von Dateien oder Ordnern mit anderen Mitgliedern oder Gruppen + +- Klicken Sie auf das "Drei-Punkte-Menü “ neben dem Datei- oder Ordnernamen, den Sie freigeben möchten. + Drei Punkte Menü + +- Wählen Sie "Teilen “ aus dem Dropdown-Menü. + Teilen auswählen + +- Auf der rechten Seite des Bildschirms wird ein Seitenleistenfenster geöffnet. + Seitenleistenfenster + +- Oben im Fenster der Seitenleiste finden Sie den Bereich "Interne Freigabe “. + Interne Freigabe auswählen +- Suchen Sie nach einzelnen Mitgliedern oder ganzen Gruppen, indem Sie sie in die Suchleiste eingeben. + Nach Personen suchen +- Wählen Sie die Personen oder Gruppen aus, für die Sie den Ordner oder die Datei freigeben möchten. + +- Wählen Sie die Rechte für die ausgewählten Mitglieder oder Gruppen: + - „Kann anzeigen“: + Die Mitglieder können die Datei nur anzeigen und herunterladen, aber nicht bearbeiten oder in den gemeinsamen Ordner hochladen. + - „Kann hochladen“: + Mitglieder können die Datei anzeigen und herunterladen und ihre eigenen Dateien in den gemeinsamen Ordner hochladen. + - „Kann bearbeiten“: + Mitglieder haben die gleichen Rechte wie bei den anderen Optionen, können aber auch neue Dateien erstellen, bestehende Dateien bearbeiten und löschen. + + Drop Down Menü + Rechte Optionen + +- Klicken Sie auf "Teilen “, um die Auswahl zu bestätigen. + + Teilen klicken + +- Die gemeinsam genutzten Mitglieder oder Gruppen werden im selben Fenster unter "gemeinsam genutzt mit “ aufgeführt. + +Mit diesen Schritten können Sie schnell und einfach Dateien und Ordner innerhalb Ihrer Organisation freigeben und den Zugriff entsprechend verwalten. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/add-user.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/add-user.md new file mode 100644 index 00000000..a0995ee2 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/add-user.md @@ -0,0 +1,49 @@ +--- +sidebar_position: 3 +id: add_members +title: Mitglieder hinzufügen +description: Mitglieder zu Space hinzufügen in OpenCloud +draft: false +--- + +# Füge ein neues Mitglied zu deinem Space in OpenCloud hinzu + +Sie können ganz einfach neue Mitglieder einladen, um gemeinsam in deinem Space zu arbeiten. Folgen Sie dazu den folgenden Schritten. + +- Gehen Sie zu Ihrem Space und öffnen Sie das Mitgliedermenü. + +Member menu + +- Im Menü „Mitglieder“ können Sie nach dem Benutzer aus Ihrer Organisation suchen, den Sie hinzufügen möchten. + +search user + +- Wählen Sie die gewünschten Rechte für das Mitglied aus, z.B. ob die Person nur lesen oder auch bearbeiten darf. + +Choose rights + +- Klicken Sie auf „Hinzufügen“, um das Mitglied in den Space einzuladen. + +Member added + +- Um die Rechte eines Mitglieds zu ändern, öffnen Sie das Mitgliedermenü, klicken Sie auf den entsprechenden Benutzer und wählen Sie die gewünschten neuen Rechte aus. + +Change rights + +- Öffnen Sie das Mitgliedermenü, klicken Sie auf das Drei-Punkte-Menü neben dem Mitglied, das Sie entfernen möchten, und wählen Sie „Mitglied entfernen“. + +Remove user + +:::note +Das entfernte Mitglied verliert sofort den Zugang zum Space. +::: + +:::important + +- Das hinzugefügte Mitglied hat sofortigen Zugriff auf den Space. +- Achtung: Jeder Benutzer mit dem Recht „kann verwalten“ hat die Berechtigung, den Space zu deaktivieren und zu löschen. +- Ein gelöschter Space kann nicht wiederhergestellt werden, seien Sie also vorsichtig, wem Sie diese Rechte gewähren. + +::: + +Dies gibt Ihnen die Möglichkeit, Mitglieder zu Ihrem Space hinzuzufügen und die Berechtigungen entsprechend festzulegen! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/create.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/create.md new file mode 100644 index 00000000..c07864f4 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/create.md @@ -0,0 +1,41 @@ +--- +sidebar_position: 2 +id: create +title: Space erstellen +description: Space erstellen und Dateien teilen in OpenCloud +draft: false +--- + +# Spaces erstellen und Daten in OpenCloud teilen + +Mit Spaces können Sie Daten mit bestimmten Personen innerhalb Ihrer Organisation teilen. Alle Mitglieder eines Spaces haben den definierten Zugriff auf die Daten, welche Sie durch den Rechten für jedes Mitglied anpassen können. + +## Einen neuen Space erstellen + +- Gehen Sie auf den Menüpunkt Spaces in der linken Seitenleiste + + Linke Seitenleiste + +- Klicken Sie auf "+ Neuer Space" + + Space erstellen + +- Geben Sie den gewünschten Namen für den Space ein. + + benennen + +- Klicken Sie auf Erstellen. + + erstellen Button + +## Space anzeigen + +Ihr neuer Space erscheint nun unter Spaces und ist bereit, genutzt zu werden. + +Neuer Space + +Mit diesen Schritten haben Sie schnell und einfach einen Space erstellt und können mit dem Datenaustausch beginnen! + +:::important +Spaces können nur innerhalb Ihrer eigenen Organisation dauerhaft freigegeben werden. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/customize.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/customize.md new file mode 100644 index 00000000..ab88c61b --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/customize.md @@ -0,0 +1,54 @@ +--- +sidebar_position: 8 +id: customize +title: Spaces Anpassen +description: Anpassen eines Space in OpenCloud +draft: false +--- + +# Spaces anpassen in OpenCloud + +Sie können Ihren Space an zwei Stellen anpassen: + +- In der Space-Übersicht +- Sobald Sie sich bereits im Space befinden + +## So passen Sie Ihren Space an + +- Klicken Sie auf das „Kontextmenü“ in der Space-Übersicht oder direkt im Space. + +### Beschreibung bearbeiten + +Klicken Sie auf „Beschreibung bearbeiten". Schreiben Sie Ihre Beschreibung in den geöffneten Texteditor, speichern und schließen Sie ihn. + +Beschreibung erstellen +Beschreibung Editor + +Die Beschreibung des Spaces kann auch direkt im Space geändert werden, indem man auf den Stift neben der Beschreibung klickt. + +Beschreibung bearbeiten + +### Untertitel bearbeiten + +Klicken Sie auf „Untertitel bearbeiten". Schreiben Sie den gewünschten Untertitel in den geöffneten Texteditor und speichern Sie. + +Untertitel ändern +Untertitel bearbeiten und speichern + +### Bilder bearbeiten + +Klicken Sie auf „Bild bearbeiten". Wählen Sie im geöffneten Fenster das gewünschte Bild für Ihren Space aus und bestätigen Sie. Wählen Sie nun den gewünschten Ausschnitt aus und bestätigen Sie. + +Spacebild bearbeiten +Spacebild zuschneiden +Spacebild + +### Symbol festlegen + +Klicken Sie auf „Symbol festlegen". Wählen Sie im geöffneten Fenster das gewünschte Symbol für Ihren Space aus. + +Symbol als Spacebild Option +Symbol Auswahl +Symbol als Spacebild + +Mit diesen Schritten können Sie den Raum nach Ihren Wünschen gestalten und anpassen! diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/delete.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/delete.md new file mode 100644 index 00000000..77b1a3a8 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/delete.md @@ -0,0 +1,44 @@ +--- +sidebar_position: 6 +id: delete +title: Space Löschen +description: Löschen eines Space in OpenCloud +draft: false +--- + +# Einen Space löschen in OpenCloud + +Bevor Sie einen Space löschen können, muss er zunächst deaktiviert werden. + +## Space deaktivieren + +- Folgen Sie der Anleitung unter [Einen Space deaktivieren](./disable-enable), um den Space in den deaktivierten Zustand zu versetzen, bevor Sie ihn löschen. + +- Wenn der Space nach der Deaktivierung nicht mehr sichtbar ist, klicken Sie auf den Filter Deaktivierte Spaces einblenden, um ihn wieder anzuzeigen. + + Select Space + +## Space löschen + +- Wählen Sie den Space aus, den Sie löschen möchten. + Select Space + +- Klicken Sie in der oberen Leiste auf Löschen, + Delete Top-Bar + +oder + +- öffnen Sie das Drei-Punkte-Menü und wählen Sie Löschen. + + Context Menu + +- Bestätigen Sie, dass Sie sicher sind, dass Sie den Platz löschen wollen + + Confirm + +:::caution +Ein gelöschter Speicherplatz kann nicht wiederhergestellt werden. Er ist dauerhaft und unwiederbringlich gelöscht. +Seien Sie daher vorsichtig, wem Sie die Verwaltungsrechte für Ihren Space erteilen. + +Bitte denken Sie daran, vor dem Löschen sicherzustellen, dass keine wichtigen Daten verloren gehen. +::: diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/enable-disable.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/enable-disable.md new file mode 100644 index 00000000..012dfa08 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/enable-disable.md @@ -0,0 +1,67 @@ +--- +sidebar_position: 5 +id: disable-enable +title: Deaktivieren und Aktivieren +description: Deaktivieren und aktivieren eines Space in OpenCloud +draft: false +--- + +# Deaktivieren und Aktivieren von Spaces in OpenCloud + +Ein Space kann auf verschiedene Weise deaktiviert und später wieder aktiviert werden. Diese Funktion kann nur von einem Space-Admin oder dem Cloud-Admin ausgeführt werden. + +## Space deaktivieren + +- Wählen Sie den gewünschten Space aus. +- Klicken Sie auf Deaktivieren in der Top-Leiste. + + Admin general + +- Alternativ können Sie auch auf das Drei-Punkte-Menü in der Spaceübersicht klicken und Deaktivieren aus dem Menü wählen. + + Admin general + +- Gehen Sie direkt in den Space. +- Klicken Sie dort auf das Drei-Punkte-Menü und wählen Sie Deaktivieren. + + Admin general + +- Bestätigen Sie die Deaktivierung. + + Admin general + + :::note + Es werden keine Daten gelöscht, aber nur der Space-Admin oder der Cloud-Admin können den Space aktivieren. + ::: + +## Space aktivieren + +- Nachdem ein Space deaktiviert wurde, erscheint die Option Aktivieren nun anstelle von Deaktivieren. + + Admin general + +- Durch klicken auf Aktivieren wird der Space wieder reaktiviert. + +- Wenn der deaktivierte Space nicht sichtbar ist, kann der Filter Deaktivierte Spaces einblenden aktiviert werden. + + Admin general + +- Klicken Sie auf den Filter, um den Space wieder anzuzeigen, damit dieser wieder aktiviert werden kann. + + Admin general + +## Aktivieren durch den Administrator + +- In den Administrationseinstellungen unter Spaces kann auch ein Cloud-Admin oder Firmen-Admin den Space reaktivieren. + +- Der Administrator klickt auf das Drei-Punkte-Menü und wählt Aktivieren. + + Admin general + +- Bestätigen Sie die Auswahl, indem Sie auf Aktivieren klicken. + Admin general + +- Der Space wird nun wieder in der Spaceübersicht angezeigt. + Admin general + +So können Sie einen Space deaktivieren und bei Bedarf wieder aktivieren. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglied-entfernen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglied-entfernen.png new file mode 100644 index 00000000..7e0435b6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglied-entfernen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-hinzufuegen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-hinzufuegen.png new file mode 100644 index 00000000..3aca7ed9 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-hinzufuegen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-menue.png new file mode 100644 index 00000000..5e3533f9 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-suche.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-suche.png new file mode 100644 index 00000000..d67077b6 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/mitglieder-suche.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte-aendern.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte-aendern.png new file mode 100644 index 00000000..c2313145 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte-aendern.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte.png new file mode 100644 index 00000000..bb7c881f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/add-user/rechte.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/benennen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/benennen.png new file mode 100644 index 00000000..699acc9d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/benennen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/erstellen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/erstellen-button.png new file mode 100644 index 00000000..5d0fd342 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/erstellen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/linke-seitenleiste.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/linke-seitenleiste.png new file mode 100644 index 00000000..8a29b4b4 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/linke-seitenleiste.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/neuer-space.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/neuer-space.png new file mode 100644 index 00000000..96a7e893 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/neuer-space.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/space-erstellen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/space-erstellen.png new file mode 100644 index 00000000..e6a8239e Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/create/space-erstellen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-bearbeiten.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-bearbeiten.png new file mode 100644 index 00000000..5b317bbb Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-bearbeiten.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-editor.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-editor.png new file mode 100644 index 00000000..4f4c7616 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-editor.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-erstellen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-erstellen.png new file mode 100644 index 00000000..95d6c391 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/beschreibung-erstellen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-bearbeiten.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-bearbeiten.png new file mode 100644 index 00000000..d2411205 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-bearbeiten.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-zuschneiden.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-zuschneiden.png new file mode 100644 index 00000000..fb645a11 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild-zuschneiden.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild.png new file mode 100644 index 00000000..7844a15a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/spacebild.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild-option.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild-option.png new file mode 100644 index 00000000..e4e0c74b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild-option.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild.png new file mode 100644 index 00000000..5294c4e8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-als-spacebild.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-auswahl.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-auswahl.png new file mode 100644 index 00000000..f84fe66b Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/symbol-auswahl.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-aendern.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-aendern.png new file mode 100644 index 00000000..052b0671 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-aendern.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-bearbeiten.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-bearbeiten.png new file mode 100644 index 00000000..8209df46 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/customize/untertitel-bearbeiten.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/deaktivieren-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/deaktivieren-button.png new file mode 100644 index 00000000..bee6a812 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/deaktivieren-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/einblenden.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/einblenden.png new file mode 100644 index 00000000..4135cff7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/einblenden.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-bestaetigen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-bestaetigen.png new file mode 100644 index 00000000..06b30684 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-bestaetigen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-kontext-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-kontext-menue.png new file mode 100644 index 00000000..0e1e2f3d Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-kontext-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-top-bar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-top-bar.png new file mode 100644 index 00000000..b58bc1c0 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/loeschen-top-bar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/space-auswaehlen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/space-auswaehlen.png new file mode 100644 index 00000000..5a0d2051 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/delete/space-auswaehlen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-bestaetigen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-bestaetigen.png new file mode 100644 index 00000000..1c6c7b26 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-bestaetigen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-button.png new file mode 100644 index 00000000..9fe66b79 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/aktivieren-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-bestaetigen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-bestaetigen.png new file mode 100644 index 00000000..758f6c31 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-bestaetigen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-spaceuebersicht.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-spaceuebersicht.png new file mode 100644 index 00000000..55cc5f00 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivieren-spaceuebersicht.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivierte-spaces-einblenden.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivierte-spaces-einblenden.png new file mode 100644 index 00000000..4135cff7 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/deaktivierte-spaces-einblenden.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/drei-punkte-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/drei-punkte-menue.png new file mode 100644 index 00000000..43b622bc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/drei-punkte-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/im-space-deaktivieren.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/im-space-deaktivieren.png new file mode 100644 index 00000000..94c6b9dc Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/im-space-deaktivieren.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/reaktivieren.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/reaktivieren.png new file mode 100644 index 00000000..1bcdfa48 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/reaktivieren.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/space-nicht-sichtbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/space-nicht-sichtbar.png new file mode 100644 index 00000000..91ebaac5 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/space-nicht-sichtbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/wieder-verfuegbar.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/wieder-verfuegbar.png new file mode 100644 index 00000000..66b9ae0c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/enable-disable/wieder-verfuegbar.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/hinzufuegen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/hinzufuegen-button.png new file mode 100644 index 00000000..8adbf349 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/hinzufuegen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-rechte.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-rechte.png new file mode 100644 index 00000000..fe488db8 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-rechte.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-suchleiste.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-suchleiste.png new file mode 100644 index 00000000..a5f26e72 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/mitglieder-suchleiste.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/space-mitglieder-menue.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/space-mitglieder-menue.png new file mode 100644 index 00000000..59ab8fdf Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/invite-user/space-mitglieder-menue.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/bestaetigen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/bestaetigen-button.png new file mode 100644 index 00000000..a02de736 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/bestaetigen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/individuelle-quota.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/individuelle-quota.png new file mode 100644 index 00000000..b3454ff3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/individuelle-quota.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/quota-aendern-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/quota-aendern-button.png new file mode 100644 index 00000000..49522e06 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/quota-aendern-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/standard-quota.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/standard-quota.png new file mode 100644 index 00000000..2bde1e6a Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/quota/standard-quota.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/space-mit-neuem-namen.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/space-mit-neuem-namen.png new file mode 100644 index 00000000..f58419f3 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/space-mit-neuem-namen.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-button.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-button.png new file mode 100644 index 00000000..a7bb15ac Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-button.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-popup.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-popup.png new file mode 100644 index 00000000..8b96ce94 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/rename/umbenennen-popup.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/alan-left.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/alan-left.png new file mode 100644 index 00000000..01e2c417 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/alan-left.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaces.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaces.png new file mode 100644 index 00000000..95ee417f Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaces.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti-alan-left.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti-alan-left.png new file mode 100644 index 00000000..a1ebee16 Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti-alan-left.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti.png b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti.png new file mode 100644 index 00000000..7ba9019c Binary files /dev/null and b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/img/why-spaces/spaghetti.png differ diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/quota.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/quota.md new file mode 100644 index 00000000..ad162bce --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/quota.md @@ -0,0 +1,30 @@ +--- +sidebar_position: 4 +id: space-quota +title: Space Quota +description: Editieren der Space Quota +draft: false +--- + +# Quota eines Spaces bearbeiten + +Als Space-Administrator können Sie die Speicherkapazität (Quota) eines Spaces anpassen, um den verfügbaren Speicherplatz nach Bedarf zu erhöhen oder zu verringern. + +## Steps to edit the Space quota + +- Wählen Sie die Option Quota ändern in der Top-Bar oder im Drei-Punkte-Menü + Context-Menu + +- In dem sich öffnenden Fenster stehen zwei Optionen zur Verfügung: +- Wählen Sie eine Standardgröße (z.B. 5 GB) aus dem Dropdown-Menü. + + Select-quota + +- Geben Sie eine individuelle Speichergröße ein. + + Enter-quota + +- Klicken Sie auf Bestätigen, um die Änderung zu übernehmen. + Enter-quota + +Das Kontingent des Speicherplatzes wird, den neuen Einstellungen entsprechend, aktualisiert. diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/rename.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/rename.md new file mode 100644 index 00000000..1708bbf7 --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/rename.md @@ -0,0 +1,23 @@ +--- +sidebar_position: 7 +id: rename +title: Space umbenennen +description: Umbennen eines Space in OpenCloud +draft: false +--- + +# Einen Space in OpenCloud umbenennen + +Du kannst einen bestehenden Space jederzeit umbenennen, um seinen Zweck oder Inhalt besser widerzuspiegeln. + +- Klicke in der Space-Übersicht auf das Drei-Punkte-Menü oder mache einen Rechtsklick auf den Space und wähle Umbenennen aus. + +Rename + +- Gib den neuen Namen für den Space ein und bestätige. + +confirm + +- Dein Space wurde nun umbenannt. + +Renamed Space diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/spaces-best-practices.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/spaces-best-practices.md new file mode 100644 index 00000000..a8d368ed --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/spaces-best-practices.md @@ -0,0 +1,146 @@ +--- +sidebar_position: 9 +id: best-practice +title: Best practice +description: Best Practices zur Organisation von Spaces in OpenCloud +--- + +# Best Practices zur Organisation von Spaces in OpenCloud + +Spaces sind kollaborative Bereiche, die von mehreren Nutzern verwendet +werden. Anders als persönlicher Speicher müssen sie so aufgebaut sein, +dass sie Klarheit, Zusammenarbeit und Skalierbarkeit unterstützen. +Dieser Leitfaden hilft dir dabei, Spaces gut organisiert und langfristig +nutzbar einzurichten und zu pflegen. + +## Allgemeine Grundsätze + +- Erst planen -- Behandle Spaces nicht wie spontanen Ablagespeicher. + Denke voraus. +- In Rollen und Teams denken -- Strukturiere anhand der Zusammenarbeit + von Personen. +- Skalierbarkeit beachten -- Wähle eine Struktur, die jetzt _und_ + später mit mehr Nutzern funktioniert. +- Konsistenz anwenden -- Benennung, Zugriffsrechte und Aufbau sollten + gemeinsamen Regeln folgen. + +## Ordnerstruktur: Empfohlene Muster + +### Beispiel: Familie + +```plaintext +📁 Familien-Space + ├── 📂 Dokumente + │ ├── 🧾 Versicherungen + │ └── 📑 Verträge + ├── 📂 Fotos + │ ├── 📸 2024 + │ └── 📸 2023 + └── 📂 Gemeinsame Notizen +``` + +### Schule / Kindergarten + +```plaintext +📁 2024 + ├── 📂 Klasse 3B + │ ├── 📂 Unterrichtsmaterial + │ ├── 📂 Elternkommunikation + │ ├── 📂 Hausaufgaben + │ └── 📂 Veranstaltungen & Fotos + ├── 📂 Klasse 4C + │ ├── 📂 Unterrichtsmaterial + │ ├── 📂 Elternkommunikation + │ ├── 📂 Hausaufgaben + │ └── 📂 Veranstaltungen & Fotos +``` + +### Unternehmen / Team + +```plaintext +📁 Marketing-Team + ├── 📂 Kampagnen + │ ├── 📂 Q1-2025 + │ └── 📂 Q2-2025 + ├── 📂 Vorlagen + ├── 📂 Berichte + └── 📂 Meeting-Notizen +``` + +## Namenskonventionen + +- Klare, beschreibende Namen verwenden -- vermeide „Neuer Ordner" oder + kryptische Titel +- Bevorzuge lowercase-mit-bindestrichen oder Title Case +- Relevante Daten hinzufügen: `bericht-2025-Q2.pdf` oder + `Budget 2024.xlsx` +- Sonderzeichen vermeiden: `& % $ § !` können Integrationen stören + +## Richtlinien für Eigentümerschaft & Zugriffe + +- Space Owner festlegen: verantwortlich für Struktur und + Berechtigungen +- Wenn möglich Gruppen für Zugriffskontrolle nutzen (z. B. `staff`, + `students`, `parents`) +- Sensible Inhalte in separate Ordner mit eingeschränktem Zugriff + auslagern +- Bearbeitungs- und Leserechte klar definieren + +## Archivierung & Aufräumen + +- Einen Archiv-Ordner für alte oder ungenutzte Dateien einrichten +- Den Space jährlich überprüfen und veraltete Inhalte entfernen +- Bei Unsicherheit Versionierung nutzen oder vor dem Löschen + exportieren + +## Häufige Stolperfallen + +--- + +❌ Nicht tun ✅ Besser so + +--- + +Alle Dateien im Root-Ordner ablegen Klare Unterordner verwenden + +Persönliche und gemeinsame Inhalte Persönliche Daten in „Persönlich" +mischen belassen + +Allen Nutzern Vollzugriff geben Least-Privilege-Prinzip anwenden + +Uneinheitliche Benennungen nutzen Konventionen definieren & +einhalten + +--- + +## Schnellstart-Vorlage zum Teilen + +Du kannst diese Vorlage für neue Spaces verwenden: + +```plaintext +📁 [Team-/Projektname] + ├── 📂 Dokumente + ├── 📂 Planung + ├── 📂 Ressourcen + ├── 📂 Archiv + └── README.md (Zweck, Struktur, Regeln des Spaces) +``` + +## Zusammenfassung + +--- + +Ziel Vorgehen + +--- + +Spaces leicht navigierbar Klare Ordnernamen & Hierarchie nutzen +machen + +Berechtigungschaos vermeiden Eigentümer und Rollen definieren + +Ordnung behalten Regelmäßig prüfen und archivieren + +Zusammenarbeit fördern Gruppenrechte & standardisierte Benennung + +--- diff --git a/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/why-spaces.md b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/why-spaces.md new file mode 100644 index 00000000..105faaea --- /dev/null +++ b/i18n/de/docusaurus-plugin-content-docs/version-4.0.0/user/spaces/why-spaces.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 1 +id: why-spaces +title: Warum Spaces? +description: Warum man Spaces nutzen sollte +draft: false +--- + +# Warum du Spaces verwenden solltest – und wie sie sich vom klassischen Teilen unterscheiden + +## Das Problem mit klassischem Teilen + +### Ein einfaches Beispiel + +- Alan erstellt einen Ordner mit dem Namen „Projekt“ und teilt ihn mit mehreren Personen. + Mitglieder-Menü +- Später verlässt Alan die Organisation. +- Da Alans Account gelöscht wird, verschwinden auch einige geteilte Ordner. +- Benutzer verlieren den Zugriff auf bestimmte Ordner und deren Inhalte. + + Mitglieder-Menü + +### Dieses Szenario zeigt mehrere Risiken auf + +- Potenzieller Datenverlust, wenn der ursprüngliche Eigentümer das Unternehmen verlässt +- Projektdaten werden auf das persönliche Speicherkontingent angerechnet – ungünstig für Teamarbeit +- Administrativer Aufwand beim Übertragen der Eigentümerschaft +- Chaos durch „Spaghetti“-Sharing – Benutzer verlieren den Überblick in „Mit mir geteilt“ oder „Von mir geteilt“ + +## Die Vorteile von Spaces + +Spaces wurden entwickelt, um diese Einschränkungen zu überwinden und eine stabilere, teamfreundlichere Lösung zu bieten: + +- **Organisationsgebunden:** Spaces gehören der Organisation, nicht einzelnen Personen. +- **Gemeinsame Verwaltung:** Mehrere Benutzer können einen Space gemeinsam verwalten. +- **Eigenes Speicherkontingent:** Jeder Space hat ein eigenes Speicherkontingent, unabhängig vom persönlichen Speicherplatz. + + Mitglieder-Menü + +:::note +Spaces machen Zusammenarbeit einfacher, sicherer und skalierbarer – besonders in professionellen Umgebungen. +::: diff --git a/i18n/en/docusaurus-plugin-content-docs/current.json b/i18n/en/docusaurus-plugin-content-docs/current.json index 6c5b5f19..cdee59e9 100644 --- a/i18n/en/docusaurus-plugin-content-docs/current.json +++ b/i18n/en/docusaurus-plugin-content-docs/current.json @@ -1,6 +1,6 @@ { "version.label": { - "message": "Next", + "message": "rolling", "description": "The label for version current" }, "sidebar.tutorialSidebar.category.admin": { diff --git a/versioned_docs/version-4.0.0/admin/configuration/_category_.json b/versioned_docs/version-4.0.0/admin/configuration/_category_.json new file mode 100644 index 00000000..2d7a2344 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Configuration", + "position": 3, + "link": { + "type": "generated-index", + "description": "⚙️ Configuration", + "slug": "admin/configuration" + } +} diff --git a/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/_category_.json b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/_category_.json new file mode 100644 index 00000000..ea73b421 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Authentication and Identity Management", + "position": 10 +} diff --git a/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/external-idp.md b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/external-idp.md new file mode 100644 index 00000000..1b207dc7 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/external-idp.md @@ -0,0 +1,195 @@ +--- +sidebar_position: 1 +id: external-idp +title: External OpenID Connect Identity Provider +description: Integrating external OpenID Connect Identity Providers +draft: false +--- + +# Integrating external OpenID Connect Identity Providers + +## Requirements + +OpenCloud is able to integrate with external OpenID Connect Identity Providers +(IDP). However the implementation is currently somewhat opinionated and has +certain requirements on the IDP. The project is working on loosening some +of the requirements in order to allow OpenCloud to work with a broader range of +identity providers. + +This is the list of minimal requirements that an IDP needs to fulfill in order +to work with OpenCloud: + +- All clients provided by OpenCloud ([Web](https://github.com/opencloud-eu/web/), + [Desktop](https://github.com/opencloud-eu/desktop/), [Android](https://github.com/opencloud-eu/android/) + and [iOS](https://github.com/opencloud-eu/ios/)), are implemented as public clients using the + authorization code flow with PKCE. Therefore the IDP needs to support this flow. +- All clients, except the Web client, use predefined client IDs. Therefore the IDP needs to + be able to create clients with predefined IDs. +- All clients, except the Web client, use a hardcoded list of scopes they request from the IDP. + As certain features of OpenCloud (especially the automatic role assignment) rely on specific claims + being present in the access token or the UserInfo response, the IDP needs to be able to provide + additional claims in the Tokens even if the client does not explicitly request them via scopes. + +## OpenCloud Configuration + +The following environment variables are relevant when connecting OpenCloud to +an external IDP. An example configuration for Keycloak is provided the +[Keycloak integration](keycloak.md) documentation. + +- `OC_OIDC_ISSUER`: Set this to the issuer URL of the external Identity Provider +- `OC_EXCLUDE_RUN_SERVICES`: When using and external IDP the built-in Identity Provider + does not need to run. So add `idp` here to prevent the internal `idp` service from + starting. +- `PROXY_OIDC_REWRITE_WELLKNOWN`: Set this to `true` to expose the Identity + Provider's `.well-known/openid-configuration` endpoint via the OpenCloud base + urls. This helps the oidc clients, that do not yet support discovery via + webfinger to locate the Identity Provider's configuration. +- `PROXY_USER_OIDC_CLAIM` and `PROXY_USER_CS3_CLAIM`: These two variables + configure how the users mapped between the Identity Provider and OpenCloud. + `PROXY_USER_OIDC_CLAIM` defines the OIDC claim that OpenCloud uses to + uniquely identify a user. It is matched against the OpenCloud user attribute + defined in `PROXY_USER_CS3_CLAIM`. E.g. if `PROXY_USER_OIDC_CLAIM` is set to + `preferred_username` and `PROXY_USER_CS3_CLAIM` is set to `username` then an + OpenID Connect user, that has the `preferred_username` set to `alan` will map + to the OpenCloud user with username `alan`. +- `PROXY_AUTOPROVISION_ACCOUNTS` and `GRAPH_USERNAME_MATCH`: When + `PROXY_AUTOPROVISION_ACCOUNTS` is set to `true`, OpenCloud will create a new + user account in the LDAP Database for every user who logs in via OpenID + Connect for the first time. Enabling this requires access to a writable LDAP + server. For smaller setups this can be the built-in LDAP server provided by + the `idm` service. If set to `false` all users logging in must already be + existing in the LDAP server. (The mapping between the OIDC and LDAP users + happens based on the aforementioned `PROXY_USER_OIDC_CLAIM` and + `PROXY_USER_CS3_CLAIM` settings. Set `GRAPH_USERNAME_MATCH` to `none` when + `PROXY_AUTOPROVISION_ACCOUNTS` is set to `true` to disable OpenCloud's + default restrictions on allowed characters in usernames. +- `PROXY_ROLE_ASSIGNMENT_DRIVER` and `GRAPH_ASSIGN_DEFAULT_USER_ROLE`: For + details see below + +### Automatic Role Assignments + +:::note +As the OpenCloud clients currently only request a hardcoded list of `scopes`, +the automatic role-assignment currently requires the IDP to be able to provide +additional claims in the Access Token and the UserInfo endpoint independent of +the requested `scopes`. If your IDP does not support this, automatic role +assignment will not work. +::: + +When users login into OpenCloud, they get a user role assigned +automatically. The automatic role assignment can be configured in different +ways. The `PROXY_ROLE_ASSIGNMENT_DRIVER` environment variable (or the `driver` +setting in the `role_assignment` section of the configuration file) select which +mechanism to use for the automatic role assignment. + +When set to `default`, all users which do not have a role assigned at the time +of first login will get the role 'user' assigned. This is also the +default behavior if `PROXY_ROLE_ASSIGNMENT_DRIVER` is unset. + +When `PROXY_ROLE_ASSIGNMENT_DRIVER` is set to `oidc` the role assignment for a +user will happen based on the values of an OpenID Connect Claim of that user. +The name of the OpenID Connect Claim to be used for the role assignment can be +configured via the `PROXY_ROLE_ASSIGNMENT_OIDC_CLAIM` environment variable. It +is also possible to define a mapping of claim values to role names defined in +OpenCloud via a `yaml` configuration. See the following `proxy.yaml` snippet +for an example. + +```yaml +role_assignment: + driver: oidc + oidc_role_mapper: + role_claim: opencloudRoles + role_mapping: + - role_name: admin + claim_value: myAdminRole + - role_name: spaceadmin + claim_value: mySpaceAdminRole + - role_name: user + claim_value: myUserRole + - role_name: guest + claim_value: myGuestRole +``` + +This would assign the role `admin` to users with the value `myAdminRole` in the claim `opencloudRoles`. +The role `user` to users with the values `myUserRole` in the claims `opencloudRoles` and so on. + +Claim values that are not mapped to a specific OpenCloud role will be ignored. + +Note: An OpenCloud user can only have a single role assigned. If the configured +`role_mapping` and a user's claim values result in multiple possible roles for a user, the order in +which the role mappings are defined in the configuration is important. The first role in the +`role_mappings` where the `claim_value` matches a value from the user's roles claim will be assigned +to the user. So if e.g. a user's `opencloudRoles` claim has the values `myUserRole` and +`mySpaceAdminRole` that user will get the OpenCloud role `spaceadmin` assigned (because `spaceadmin` +appears before `user` in the above sample configuration). + +If a user's claim values don't match any of the configured role mappings an error will be logged and +the user will not be able to login. + +The default `role_claim` (or `PROXY_ROLE_ASSIGNMENT_OIDC_CLAIM`) is `roles`. The default `role_mapping` is: + +```yaml +- role_name: admin + claim_value: opencloudAdmin +- role_name: spaceadmin + claim_value: opencloudSpaceAdmin +- role_name: user + claim_value: opencloudUser +- role_name: guest + claim_value: opencloudGuest +``` + +:::note +When `PROXY_ROLE_ASSIGNMENT_DRIVER` is set to `oidc` it is recommended to set `GRAPH_ASSIGN_DEFAULT_USER_ROLE` to `false`. +::: + +## Client Configuration + +OpenCloud requires several OIDC clients to be configured in the Identity Provider. + +### Web Client + +The web client is used for browser-based access to OpenCloud: + +- Client ID: `web` +- Client Type: Public client +- Redirect URIs: + - `https://your-domain.example.com/` + - `https://your-domain.example.com/oidc-callback.html` + - `https://your-domain.example.com/oidc-silent-redirect.html` + +### Desktop Client + +The desktop client is used for the OpenCloud desktop application: + +- Client ID: `OpenCloudDesktop` +- Client Type: Public client +- Redirect URIs: + - `http://127.0.0.1` + - `http://localhost` + +### Mobile App Clients + +#### Android App + +- Client ID: `OpenCloudAndroid` +- Client Type: Public client +- Redirect URIs: `oc://android.opencloud.eu` +- Post Logout Redirect URIs: `oc://android.opencloud.eu` + +#### iOS App + +- Client ID: `OpenCloudIOS` +- Client Type: Public client +- Redirect URIs: `oc://ios.opencloud.eu` +- Post Logout Redirect URIs: `oc://ios.opencloud.eu` + +### Additional Clients + +#### Cyberduck File Transfer Client + +- Client ID: `Cyberduck` +- Client Type: Public client +- Redirect URIs: + - `x-cyberduck-action:oauth` + - `x-mountainduck-action:oauth` diff --git a/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/index.md b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/index.md new file mode 100644 index 00000000..8c271154 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/index.md @@ -0,0 +1,64 @@ +--- +title: 'Authentication and Identity Management' +--- + +# Authentication and Identity Management + +OpenCloud offers two ways to handle user authentication: + +1. **Built-in IDP (Identity Provider)**: + - Based on LibreGraph Connect (Lico) + - Targeted at smaller installations (up to 500 users) + - Designed for standalone or small deployments + +2. **External IDP**: + - Keycloak as the recommended OIDC provider for larger installations + - Support for Azure AD, EntraID, ADFS through Keycloak + - Enterprise-focused solution + +## Your Use Cases + +### Choose Lico if you need + +- A simple, lightweight and minimal OpenID Connect Provider +- Small to medium deployments +- Minimal resource footprint +- Quick setup with basic features +- Ideal for development environment +- No Multifactor Authentication (MFA) and migration path to other IDPs + +### Choose Keycloak if you need + +- Enterprise-grade IAM solution +- Complex authorization requirements +- Multifactor Authentication +- Advanced user federation +- Fine-grained permissions +- Multiple authentication methods +- Large-scale deployments +- Commercial support options + +### Bottom Line + +Keycloak is a comprehensive, enterprise-ready IAM platform with extensive features including SSO, user federation, and support for multiple protocols like OpenID Connect, OAuth 2.0, and SAML, while Lico is a lightweight OpenID Connect provider with integrated web login and consent forms, designed as a simpler alternative for smaller installations. Keycloak offers more features but requires more resources and expertise, while Lico provides a minimalist approach suitable for basic authentication needs. + +## Authentication with Keycloak + +For production environments, we recommend using Keycloak with LDAP integration. This setup provides a robust authentication system that can scale to enterprise needs. + +OpenCloud now supports two authentication modes when using Keycloak with LDAP: + +### Shared User Directory Mode + +In this mode, LDAP serves as a central user directory for both Keycloak and OpenCloud. +This setup is suitable for scenarios where the LDAP server is not under the control of the OpenCloud admin and can be connected to KeyCloak and OpenCloud using standard attributes and a read-only bind user. + +For detailed configuration and setup instructions, see the [Keycloak Shared User Directory](/docs/admin/configuration/authentication-and-user-management/keycloak#shared-user-directory-mode) guide. + +### Autoprovisioning Mode + +In this mode, Keycloak is holding all users and OpenCloud autoprovisions new users during first login. +This mode is suitable in scenarios where the OpenIDConnect provider is external and not under control of the OpenCloud admin. To mitigate that lack of control, OpenCloud will use an LDAP server which is fully under the control of the OpenCloud admin to store the users and groups and additional attributes. +OpenCloud can disable users for login to actively prevent unwanted access to the system when the workflow with the external Identity Provider is slow or indirect. In this case, the LDAP server needs an OpenCloud Schema and write access for the LDAP bind user. + +For detailed configuration and setup instructions, see the [Keycloak with Autoprovisioning](/docs/admin/configuration/authentication-and-user-management/keycloak#autoprovisioning-mode) guide. diff --git a/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak-user.md b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak-user.md new file mode 100644 index 00000000..1e265dba --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak-user.md @@ -0,0 +1,106 @@ +--- +sidebar_position: 4 +id: keycloak-user +title: Adding user with Keycloak +description: Adding user with Keycloak +draft: false +--- + +# Creating New Users in Keycloak for OpenCloud + +This guide explains how to create new users in Keycloak for OpenCloud, including "User Light" without personal spaces. While OpenCloud currently does not have a built-in "invite external user" feature, this functionality can be replicated using Keycloak. + +## Background + +One of the most frequently requested features by administrators has been support for guest or external users. Previously, this was discussed as adding external users during the sharing process. These users were provisioned on the fly and received an invite link. + +Although OpenCloud does not natively support this method, similar functionality can be achieved using Keycloak for user management. + +## Assign Admin Permissions in Keycloak + +To manage users and groups for OpenCloud, you need a user with administrative privileges in the Keycloak realm. + +- Log in to Keycloak as an admin. +- Navigate to the OpenCloud realm +- Assign appropriate roles (such as `manage-user` and `view-users`) to the user you want to promote. + +Example: A user named `dennis` is assigned as a Realm Admin. + +Add admin roles to user + +Once assigned, the user can log in as a Realm Administrator and access user and group management. + +## Add New User with standard rights (no Space) + +With admin permissions, you can now create users and groups: + +- Login in Keycloak OpenCloud Realm with the user who has admin rights under `https://keycloak.YOUR.DOMAIN/admin/openCloud/console/#/openCloud` + +- Navigate to the "Users" section in the Keycloak Admin Console + +- Click Add User + Add user + +- Fill in the required user details (e.g., username, email) + Fill out user information + +- Optionally assign the user to one or more groups. + +- Click on "Create" + +- Set an inital password + +Set initial user password + +:::note +In the opencloud-compose setup, the default user role is `OpenCloudGuest`. +This means new users will not receive a personal space by default. +You can change the default role in "Realm Settings" under "User Registration" in the Keycloak admin console. + +## First Login Experience for the "User Light" + +When a "User Light" logs in for the first time, they will: + +- Be prompted to change their password +- Update their profile (name, email, etc.) +- Verify their email address + +if this was set before. + +After successful login, they will not receive a personal space — fulfilling the guest user requirement. + +Guest login + +## Optional: Enable Self Registration + +You can allow users to register themselves without manual creation. + +To enable self-registration: + +- Log in to Keycloak as an admin. +- Go to the Login settings in the OpenCloud realm. +- Enable the User Registration option. + +Enable self registration + +### Self Registration Flow + +- Users see a Register option on the login screen. + +Register Button + +- They complete the registration form. + +Fill out the registration form + +After loggin in, the user has now the "User Light" Role with no personal Space. + +## Summary + +By leveraging Keycloak: + +- You can create and manage guest users for OpenCloud. +- Guest users can log in without receiving a personal space. +- You can streamline the process with self-registration. + +This setup provides a flexible and scalable way to manage external and lightweight users in OpenCloud through Keycloak. diff --git a/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak.md b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak.md new file mode 100644 index 00000000..173f2f9e --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/authentication-and-user-management/keycloak.md @@ -0,0 +1,338 @@ +--- +sidebar_position: 3 +id: keycloak +title: Keycloak Integration +description: Keycloak Integration +draft: false +--- + +# Keycloak Integration + +OpenCloud supports using Keycloak as an external identity provider, providing enterprise-grade identity management capabilities. This guide explains how to set up and configure Keycloak with OpenCloud. +This guide is divided into three main sections: + +- [Keycloak Integration Overview](#opencloud-configuration-for-keycloak-general): A brief overview of the integration process. +- [Shared User Directory Mode](#configuration-for-shared-directory-mode): Keycloak and OpenCloud share a common LDAP directory for user management. +- [Autoprovisioning Mode](#configuration-for-autoprovisioning-mode): OpenCloud autoprovisions users in a separate LDAP directory managed by OpenCloud. + +## OpenCloud Configuration for Keycloak (General) + +When using Keycloak as the identity provider, you need to understand the general configuration settings if you want to configure your custom integration. + +You can also use one of our predefined Docker Compose setups, which are located in the `opencloud-compose` repository. These setups include all necessary configurations for Keycloak and OpenLDAP. + +### Server Configuration + +```env +PROXY_AUTOPROVISION_ACCOUNTS=true|false # that depends on your setup +PROXY_ROLE_ASSIGNMENT_DRIVER=oidc +OC_OIDC_ISSUER=https://your-domain.example.com/realms/openCloud +WEB_OPTION_ACCOUNT_EDIT_LINK_HREF=https://your-domain.example.com/realms/openCloud/account +PROXY_OIDC_REWRITE_WELLKNOWN=true +PROXY_USER_OIDC_CLAIM=preferred_username|sub|uuid # this depends on your setup +# admin and demo accounts must be created in Keycloak +OC_ADMIN_USER_ID: "" +SETTINGS_SETUP_DEFAULT_ASSIGNMENTS: "false" +GRAPH_ASSIGN_DEFAULT_USER_ROLE: "false" +GRAPH_USERNAME_MATCH=none +OC_EXCLUDE_RUN_SERVICES=idp,idm # it is not supported to run keycloak with the built-in idm +``` + +Look [OpenCloud external IDP configuration](/docs/admin/configuration/authentication-and-user-management/external-idp#opencloud-configuration) for some more details about these settings. + +### Client Configuration + +The [OIDC clients](/docs/admin/configuration/authentication-and-user-management/external-idp#client-configuration) required by OpenCloud are pre-configured in the Docker Compose setup and match the clients used by the built-in IdP. + +### Manual Client Configuration + +If you need to manually configure the clients in Keycloak: + +1. Log in to the Keycloak admin console +2. Select the OpenCloud realm +3. Navigate to Clients and click Create +4. Configure each client according to the specifications above +5. Ensure all clients have the appropriate scopes: + - web-origins + - profile + - roles + - groups + - basic + - email + +### Advanced Configuration + +#### Backchannel Logout + +OpenCloud supports Keycloak's backchannel logout feature, which allows Keycloak to notify OpenCloud when a user logs out. This ensures that all sessions are properly terminated: + +- Backchannel Logout URL: `https://your-domain.example.com/backchannel_logout` +- Backchannel Logout Session Required: `true` + +## Shared User Directory Mode + +```mermaid +graph TD + subgraph opencloud["OpenCloud Deployment"] + OpenCloud["OpenCloud Server"] + Keycloak("Keycloak
(OIDC Provider)") + end + subgraph existing["Existing Infrastructure"] + LDAP[("LDAP Server
(Shared User Directory)")] + end + + OpenCloud -->|"User and Groups are looked up for sharing"| LDAP + OpenCloud -->|"Reads Roles from claims"| Keycloak + Keycloak -->|"Verify credentials"| LDAP + LDAP -->|"Import Users and Groups"| Keycloak + + classDef service fill:#3498db,stroke:#2c3e50,stroke-width:2px,rx:10px,ry:10px; + classDef storage fill:#2ecc71,stroke:#27ae60,stroke-width:2px,rx:10px,ry:10px; + classDef readonly fill:#87CEFA,stroke:#4682B4,stroke-width:3px,rx:10px,ry:10px; + classDef general stroke-width:2px,rx:10px,ry:10px; + + class OpenCloud,Keycloak service; + class LDAP storage; + class existing,directory readonly; + class opencloud general; +``` + +In this mode, a readable LDAP Directory with existing users serves as a central user directory for both Keycloak and OpenCloud. + +Key characteristics: + +- LDAP is the source of truth for user information +- The LDAP server uses standard attributes (uid, cn, sn, givenName, mail) +- A common unique identifier (e.g. `entryUUID` or `objectGUID`) guarantees stable user mapping even if users are changing +- Both Keycloak and OpenCloud read user data directly from LDAP +- User accounts must exist in LDAP before they can log in or receive shares +- LDAP is configured as read-only for OpenCloud +- OpenCloud can create custom groups only if a subtree of the read-only LDAP can be writable + +### LDAP Assumptions for Shared Directory Mode + +OpenCloud can work with any LDAP schema containing standard attributes: + +- User attributes: `uid`, `cn`, `sn`, `givenName`, `mail` +- Groups are stored in a dedicated organizational unit +- Default configuration sets LDAP as read-only + +Example LDAP Structure: + +```bash +dc=example,dc=org # Base DN +├── ou=users # User organizational unit +│ ├── uid=user1 # User entries +│ └── uid=user2 +└── ou=groups # Group organizational unit + ├── cn=admins # Group entries + ├── cn=users + └── ou=custom (optional) # Optional custom groups tree, writable by OpenCloud + ├── cn=teamA # Custom Group entries + └── cn=teamB +``` + +:::tip + +It is possible to use a writable subtree of the LDAP server for custom groups. This is useful if you want to create groups in OpenCloud that are not managed by Keycloak. + +This feature is optional and can be disabled by setting `GRAPH_LDAP_GROUP_CREATE_BASE_DN` to an empty string. + +::: + +### Configuration for Shared Directory Mode + +Keycloak and OpenCloud can be configured using environment variables: + +```bash +# Basic Keycloak configuration +KEYCLOAK_DOMAIN=keycloak.example.org +KEYCLOAK_REALM=openCloud + +# OpenCloud OIDC configuration +OC_OIDC_ISSUER=https://${KEYCLOAK_DOMAIN:-keycloak.opencloud.test}/realms/${KEYCLOAK_REALM:-openCloud} +WEB_OPTION_ACCOUNT_EDIT_LINK_HREF=https://${KEYCLOAK_DOMAIN:-keycloak.opencloud.test}/realms/${KEYCLOAK_REALM:-openCloud}/account +PROXY_OIDC_REWRITE_WELLKNOWN=true +PROXY_USER_OIDC_CLAIM=uuid # this claim needs to be configured in the keycloak realm to use the keycloak user id +PROXY_USER_CS3_CLAIM=userid +# admin and demo accounts must be created in Keycloak +OC_ADMIN_USER_ID="" +SETTINGS_SETUP_DEFAULT_ASSIGNMENTS=false +GRAPH_ASSIGN_DEFAULT_USER_ROLE=false +GRAPH_USERNAME_MATCH=none + +# OpenCloud LDAP configuration +OC_LDAP_URI=ldaps://ldap-server:1636 +OC_LDAP_SERVER_WRITE_ENABLED=false # assuming the external ldap main tree is not writable +# Disable non writable attributes in the OpenCloud Admin UI +FRONTEND_READONLY_USER_ATTRIBUTES="user.onPremisesSamAccountName,user.displayName,user.mail,user.passwordProfile,user.accountEnabled,user.appRoleAssignments" +OC_LDAP_INSECURE=true +OC_LDAP_BIND_DN=cn=admin,dc=opencloud,dc=eu +OC_LDAP_BIND_PASSWORD=admin-password +OC_LDAP_USER_BASE_DN=ou=users,dc=opencloud,dc=eu +OC_LDAP_USER_SCHEMA_ID=entryUUID +OC_LDAP_DISABLE_USER_MECHANISM=none +OC_LDAP_GROUP_BASE_DN=ou=groups,dc=opencloud,dc=eu +OC_LDAP_GROUP_SCHEMA_ID=entryUUID +# Custom groups feature when a writable subtree is available +GRAPH_LDAP_GROUP_CREATE_BASE_DN=ou=custom,ou=groups,dc=opencloud,dc=eu +GRAPH_LDAP_SERVER_UUID=true + +``` + +### Example Docker Compose Configuration - Shared Directory Mode + +OpenCloud provides complete example deployments using Docker Compose: + +1. Navigate to the `opencloud-compose` repository +2. Edit the `.env` file to enable the Shared Directory Mode: + +For Shared Directory Mode: + +```bash +# Enable services +COMPOSE_FILE=docker-compose.yml:idm/ldap-keycloak.yml:traefik/opencloud.yml:traefik/ldap-keycloak.yml +# Your public keycloak domain without protocol +KEYCLOAK_DOMAIN=your-keycloak-domain.example.com +# Admin user login name. Defaults to "kcadmin". +KEYCLOAK_ADMIN= +# Admin user login password. Defaults to "admin". +KEYCLOAK_ADMIN_PASSWORD= +``` + +The Docker Compose file `idm/ldap-keycloak.yml` contains the complete configuration for each component. + +Keycloak is configured during startup by importing the `keycloak-realm.dist.json` file. This file contains the configuration for the OpenCloud realm, including client settings, roles, and user federation. This file is located in the `config/keycloak` directory of the `opencloud-compose` repository. + +:::warning + +Keycloak can import the realm configuration file only once during the first startup. If you need to change the configuration, you must delete the Keycloak container and volume and restart it. This will reset Keycloak to its initial state. + +::: + +## Autoprovisioning Mode + +In this mode, Keycloak is holding all users and OpenCloud autoprovisions new users during first login. +This mode is suitable in scenarios where the OpenIDConnect provider is external and not under control of the OpenCloud admin. To mitigate that lack of control, OpenCloud will use an LDAP server which is fully under the control of the OpenCloud admin to store the users and groups and additional attributes. + +```mermaid +graph TD + subgraph opencloud["OpenCloud Deployment"] + LDAP[("`LDAP Server + - managed by opencloud + - custom schema`")] + OpenCloud["`OpenCloud Server`"] + Stop((("Block
disabled
Users"))) + end + subgraph existing["Existing Infrastructure"] + Keycloak("`Keycloak
(OIDC Provider)`") + UserDirectory[("`Federated Identity Provider + - Microsoft + - Google + - and others`")] + end + + OpenCloud -->|"User and Groups are created during first user login"| LDAP + OpenCloud <-->|"User and Groups are looked up for sharing"| LDAP + OpenCloud -- "Reads Users, Attributes, Group memberships and Roles from OIDC claims" --> Stop --> Keycloak + UserDirectory -->|"Import Users and Groups"| Keycloak + + classDef service fill:#3498db,stroke:#2c3e50,stroke-width:2px,rx:10px,ry:10px; + classDef storage fill:#2ecc71,stroke:#27ae60,stroke-width:2px,rx:10px,ry:10px; + classDef readonly fill:#87CEFA,stroke:#4682B4,stroke-width:3px,rx:10px,ry:10px; + classDef general stroke-width:2px,rx:10px,ry:10px; + + class OpenCloud,Keycloak service; + class LDAP storage; + class existing,directory readonly; + class opencloud general; +``` + +- Keycloak manages the users, groups, and roles +- The OpenCloud Clients and Sessions are configured in Keycloak +- Simplified user management with "just-in-time" provisioning +- Federation with external identity providers is supported (e.g., Google, GitHub, Facebook, Microsoft) +- In this case, we need to provide an LDAP server which is fully controlled by OpenCloud and needs a custom [LDAP Schema](https://github.com/opencloud-eu/opencloud/blob/main/deployments/examples/shared/config/ldap/schemas/10_opencloud_schema.ldif). + +### Configuration for Autoprovisioning Mode + +Keycloak, OpenCloud and OpenLDAP can be configured using environment variables: + +```bash +# Basic Keycloak configuration +KEYCLOAK_DOMAIN=keycloak.example.org +KEYCLOAK_REALM=openCloud + +# OpenCloud OIDC configuration +OC_OIDC_ISSUER=https://${KEYCLOAK_DOMAIN:-keycloak.opencloud.test}/realms/${KEYCLOAK_REALM:-openCloud} +WEB_OPTION_ACCOUNT_EDIT_LINK_HREF=https://${KEYCLOAK_DOMAIN:-keycloak.opencloud.test}/realms/${KEYCLOAK_REALM:-openCloud}/account +PROXY_OIDC_REWRITE_WELLKNOWN=true +PROXY_USER_OIDC_CLAIM=sub +PROXY_AUTOPROVISION_CLAIM_USERNAME=sub +PROXY_USER_CS3_CLAIM=username +# admin and demo accounts must be created in Keycloak +OC_ADMIN_USER_ID="" +SETTINGS_SETUP_DEFAULT_ASSIGNMENTS=false +GRAPH_ASSIGN_DEFAULT_USER_ROLE=false +GRAPH_USERNAME_MATCH=none + +# OpenCloud LDAP configuration +OC_LDAP_URI=ldaps://ldap-server:1636 +OC_LDAP_SERVER_WRITE_ENABLED=true +# Disable non writable attributes in the OpenCloud Admin UI +FRONTEND_READONLY_USER_ATTRIBUTES="user.onPremisesSamAccountName,user.displayName,user.mail,user.passwordProfile,user.memberOf" +OC_LDAP_INSECURE=true +OC_LDAP_BIND_DN=cn=admin,dc=opencloud,dc=eu +OC_LDAP_BIND_PASSWORD=admin-password +OC_LDAP_USER_BASE_DN=ou=users,dc=opencloud,dc=eu +OC_LDAP_DISABLE_USER_MECHANISM=none +OC_LDAP_GROUP_BASE_DN=ou=groups,dc=opencloud,dc=eu +``` + +### Example Docker Compose Configuration - Autoprovisioning Mode + +OpenCloud provides complete example deployments using Docker Compose: + +1. Navigate to the `opencloud-compose` repository +2. Edit the `.env` file to enable the Autoprovisioning Mode: + +For Autoprovisioning Mode: + +```bash +# Enable services +COMPOSE_FILE=docker-compose.yml:idm/external-idp.yml:traefik/opencloud.yml +# Your public keycloak domain without protocol +IDP_DOMAIN=your-idp-domain.example.com +# The openCloud users need to be able to edit their account in the external IdP +IDP_ACCOUNT_URL=https://your-idp-domain.example.com/realms/openCloud/account +``` + +The Docker Compose file `idm/external-idp.yml` contains the complete configuration for each OpenCloud component. The file `10_opencloud_ldap_schema.ldif` contains the OpenCloud LDAP schema and is loaded during the startup of the OpenLdap container. In this mode, your IdP setup is not part of the OpenCloud Deployment. + +:::warning + +Your external IdP configuration must match the settings described in the [Client Configuration](#client-configuration) section above. + +Your external IdP must provide the required claims for user provisioning and role assignment. + +Claims: + +- `sub`: Unique identifier for the user (used as username in OpenCloud) +- `roles`: List of roles assigned to the user (used for role assignment in OpenCloud) +- `name`: User's full name (optional, used for display purposes) +- `preferred_username`: User's preferred username (optional, more intuitive during login) +- `email`: User's email address (optional, used for notifications) +- `groups`: List of groups the user belongs to (optional, used for group assignments in OpenCloud) + +::: + +## Troubleshooting + +Common issues and solutions: + +- User cannot log in: + - Check LDAP connectivity and user existence + - Check if each user has an OpenCloud Role assigned + - Verify that the client IDs and redirect URIs match exactly +- Groups not synchronized: Verify group mappings in Keycloak +- User creation fails (autoprovisioning mode): Ensure LDAP has write permissions in Autoprovisioning Mode diff --git a/versioned_docs/version-4.0.0/admin/configuration/collabora.md b/versioned_docs/version-4.0.0/admin/configuration/collabora.md new file mode 100644 index 00000000..c888fae2 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/collabora.md @@ -0,0 +1,44 @@ +--- +sidebar_position: 70 +id: collabora +title: Collabora additional fonts +description: How to add additional fonts to Collabora +draft: false +--- + +# Installing Additional Fonts for Collabora + +By default, Collabora Online provides only a limited set of fonts. +To ensure proper document rendering — especially for Microsoft Office documents — you may want to install additional font packages such as `ttf-mscorefonts` or other TrueType/OpenType fonts on your server. + +## 1. Access the Server and Update System Packages + +Before installing new fonts, make sure your system packages are up to date: + +```bash +apt update +``` + +## 2. Install Microsoft Core Fonts + +Install the Microsoft Core Fonts package to add common fonts such as Arial or Comic Sans MS: + +```bash +apt install ttf-mscorefonts-installer +``` + +During the installation, you will be prompted to accept the EULA (End User License Agreement). + +Accept EULA + +## 3. Restart Collabora + +After the installation is complete, restart your docker-compose setup to apply the changes: + +```bash +docker compose restart +``` + +Once restarted, Collabora will recognize the newly installed fonts, and they will be available when editing documents. + +New Fonts added diff --git a/versioned_docs/version-4.0.0/admin/configuration/frontend-update-check.md b/versioned_docs/version-4.0.0/admin/configuration/frontend-update-check.md new file mode 100644 index 00000000..f35e5e4b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/frontend-update-check.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 15 +id: frontend-check-updates +title: Frontend Update check +description: How to disable the frontend check for updates in OpenCloud. +draft: false +--- + +# Disable frontend update check + +By default, OpenCloud performs a frontend check to verify if you are running the latest version. + +check is true + +## Edit the `.env` File + +Open the environment configuration file located in your `opencloud-compose` directory: + +```bash +nano opencloud-compose/.env +``` + +Set the `FRONTEND_CHECK_FOR_UPDATES` environment variable to `false` to disable the frontend check for updates: + +```env +FRONTEND_CHECK_FOR_UPDATES=false +``` + +## Restart Docker Services + +After saving the file, shut down and restart the Docker containers to apply the changes: + +```bash +docker compose down +docker compose up -d +``` + +## Result + +The frontend will no longer display a message about newer versions being available. + +check is false diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/app-store.png b/versioned_docs/version-4.0.0/admin/configuration/img/app-store.png new file mode 100644 index 00000000..51b8c9de Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/app-store.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/collabora/accept-eula.png b/versioned_docs/version-4.0.0/admin/configuration/img/collabora/accept-eula.png new file mode 100644 index 00000000..772aa08b Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/collabora/accept-eula.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/collabora/new-fonts.png b/versioned_docs/version-4.0.0/admin/configuration/img/collabora/new-fonts.png new file mode 100644 index 00000000..3ababdbc Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/collabora/new-fonts.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/decomposeds3-with-minio.png b/versioned_docs/version-4.0.0/admin/configuration/img/decomposeds3-with-minio.png new file mode 100644 index 00000000..d53e7ff0 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/decomposeds3-with-minio.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-false.png b/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-false.png new file mode 100644 index 00000000..daa2f160 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-false.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-true.png b/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-true.png new file mode 100644 index 00000000..4be5cf58 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/frontend-update-check/check-true.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/add-user.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/add-user.png new file mode 100644 index 00000000..26d97b3c Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/add-user.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/enable-self-registration.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/enable-self-registration.png new file mode 100644 index 00000000..85091905 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/enable-self-registration.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-registration-form.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-registration-form.png new file mode 100644 index 00000000..7b6a4b8d Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-registration-form.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-userinfo.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-userinfo.png new file mode 100644 index 00000000..1cf5f03f Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/fill-out-userinfo.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/guest-login.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/guest-login.png new file mode 100644 index 00000000..1916c7a2 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/guest-login.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/register-button.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/register-button.png new file mode 100644 index 00000000..a5056e75 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/register-button.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-admin-roles.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-admin-roles.png new file mode 100644 index 00000000..9135e76d Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-admin-roles.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-password.png b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-password.png new file mode 100644 index 00000000..026944e2 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/keycloak/add-user/set-password.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/img/login-page.png b/versioned_docs/version-4.0.0/admin/configuration/img/login-page.png new file mode 100644 index 00000000..0a8306f2 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/configuration/img/login-page.png differ diff --git a/versioned_docs/version-4.0.0/admin/configuration/logging.md b/versioned_docs/version-4.0.0/admin/configuration/logging.md new file mode 100644 index 00000000..b8ae8d48 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/logging.md @@ -0,0 +1,49 @@ +--- +sidebar_position: 90 +id: logging +title: Logging +description: Logging in OpenCloud +draft: false +--- + +# Logging in OpenCloud + +Logging helps monitor OpenCloud’s health and diagnose issues. Log output varies by level, from minimal to detailed. By default, logs are written to `stderr`. In Docker deployments, logs are accessible via `docker logs`. + +## Log Levels + +Set the global log level using the `OPEN_CLOUD_LOG_LEVEL` environment variable. You can also override it per service using service-specific variables. Default is `error`. + +## The log levels are + +### FATAL + +Critical issues that cause the application to shut down — such as config errors or missing dependencies. + +### ERROR + +Severe problems that block proper operation and require admin attention. + +### WARN + +Unexpected conditions that don’t stop the app but may need investigation. + +### INFO + +Routine events that confirm expected behavior and operation. + +### DEBUG + +Highly detailed messages for diagnosing problems. Use cautiously in production due to verbosity. + +## Request Correlation + +### X-Request-ID + +OpenCloud supports tracing using the `X-Request-ID` header. Clients send a UUID v4 with each request, which is included in backend logs for correlation. + +To manually test with `curl`, add: + +```bash +--header "X-Request-ID: " +``` diff --git a/versioned_docs/version-4.0.0/admin/configuration/mail-notifications.md b/versioned_docs/version-4.0.0/admin/configuration/mail-notifications.md new file mode 100644 index 00000000..1e898420 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/mail-notifications.md @@ -0,0 +1,66 @@ +--- +sidebar_position: 40 +id: mail-notifications +title: Mail Notifications +description: How to activate mail notifications in OpenCloud +draft: false +--- + +# Mail notifications in OpenCloud + +This guide shows how to configure your OpenCloud instance to send notification E-Mails by modifying the `.env` file in your OpenCloud setup + +## Open the .env File + +Edit the file with your preferred text editor: + +```bash +nano .env +``` + +Or use vim, code, or gedit as you prefer. + +## Add or modify these Environment Variables + +Adjust the following lines in your `.env` file according to your SMTP provider and requirements. +Note: `SMTP_TRANSPORT_ENCRYPTION` and `SMTP_INSECURE` may vary depending on your setup. + +SMTP Settings: + +```env +SMTP_HOST=YOUR_SMTP_HOST +SMTP_PORT=1025 +SMTP_SENDER=noreply@your.text +SMTP_USERNAME=YOUR_USERNAME +SMTP_PASSWORD=YOUR_PASSWORD +SMTP_TRANSPORT_ENCRYPTION=none +SMTP_INSECURE=true +SMTP_AUTHENTICATION=auto +``` + +See section [Environment Variables](https://docs.opencloud.eu/docs/dev/server/Services/notifications/notifications-envvars/) in the developers documentation for possible values for these variables. Note, that the environment variables are prefixed with `NOTIFICATIONS_`, so `NOTIFICATIONS_SMTP_AUTHENTICATION` shows possible values for `SMTP_AUTHENTICATION` in the `.env` file. + +Per default the `notifications` service is disabled. To send out notifications, the service must be enabled via: + +```env +START_ADDITIONAL_SERVICES="notifications" +``` + +:::warning +In the .env file, values should be written without quotation marks. Do not use 'single quotes' or "double quotes" — just enter the plain value. +::: + +## Save and exit + +For nano, press Ctrl + O to save and Ctrl + X to exit. + +## Restart OpenCloud + +Apply the changes by restarting the OpenCloud services: + +```bash +docker compose down +docker compose up -d +``` + +OpenCloud is now successfully configured to deliver notification emails, including those triggered by actions such as file sharing. diff --git a/versioned_docs/version-4.0.0/admin/configuration/radicale-integration.md b/versioned_docs/version-4.0.0/admin/configuration/radicale-integration.md new file mode 100644 index 00000000..72118577 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/radicale-integration.md @@ -0,0 +1,73 @@ +--- +sidebar_position: 50 +id: radicale-integration +title: Calendar and Contacts Integration with Radicale +description: How to enable Calendar and Contacts integration via Radicale in OpenCloud +draft: false +--- + +# Integration with Radicale + +OpenCloud is able to act as an authenticating reverse proxy for the open-source +CalDAV and CardDAV Server [Radicale](https://radicale.org). With that, users +get a calender- and contacts server out of the box with OpenCloud that can be +used with a wide selection of desktop- and mobile clients without hassle. + +The `opencloud-compose` deployment example already contains all the required pieces to +setup the integration. This guide explains the required steps to achieve that. + +:::note +The calendar and contacts feature is - until further notice - intended for +non-customers, i.e. please note that it is not covered under our business +license, and we do not provide professional support for it. This means that +this feature is maintained and supported on best effort without warranty. +::: + +## Setting up Calendar and Contacts Integration with Radicale + +To use this feature you need at least OpenCloud Version 2.3.0. Earlier releases lack +some of the required features. This guide assumes that you already have a running +deployment based on the `opencloud-compose` deployment example. + +### Configure the `.env` file to deploy Radicale + +In the root directory of the `opencloud-compose` deployment example, +add the radicale component to the `COMPOSE_FILE` variable in your `.env` file or add it directly to the startup command: + +```bash +COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml:radicale/radicale.yml +``` + +or `docker compose -f docker-compose.yml -f traefik/opencloud.yml -f radicale/radicale.yml up` + +### Update the deployment + +```bash +docker compose up -d +``` + +This will launch an additional container (called `radicale`) using the +`opencloudeu/radicale` container image and reconfigure the OpenCloud instance +to automatically forward all authenticated traffic on +`https:///caldav` and +`https:///carddav` to the radicale container adding +information about the authenticated users. + +Radicale is configured to automatically create default calendar and address book for every authenticated user. + +## Accessing the Calendar and Address Book + +Users should now be able to access their address book and calendar with any +capable CalDAV/CardDAV software (OpenCloud does currently not provide any UI +to access them). + +As very few clients currently support authentication via OpenID Connect you can use +the "App Token" feature in the user's settings page to generate an application specific +password that can be used for authentication in most existing CalDAV/CardDAV clients. + +As OpenCloud implements support for the `.well-known/carddav` and `.well-known/caldav` +endpoint. Many clients are able to automatically discover existing calendars and +address books. So the only thing that is needed for those clients to work is +to set `https://` as the target URL for calendars and +address books together with the OpenCloud username as the username and the +generated app token as the password for authentication. diff --git a/versioned_docs/version-4.0.0/admin/configuration/remove-password-link.md b/versioned_docs/version-4.0.0/admin/configuration/remove-password-link.md new file mode 100644 index 00000000..8ee10f89 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/remove-password-link.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 80 +id: remove-password-from-link +title: Remove mandatory password from public link +description: Remove mandatory password from public link +draft: false +--- + +# Disable Mandatory Password for Public Links + +By default, OpenCloud requires a password for public shares. If you'd like to disable this requirement, follow the steps below. + +## Edit the `.env` File + +Open the environment configuration file located in your `opencloud-compose` directory: + +```bash +nano opencloud-compose/.env +``` + +Add the following environment variable to disable the password requirement for public links: + +```env +OC_SHARING_PUBLIC_SHARE_MUST_HAVE_PASSWORD=false +``` + +## Restart Docker Services + +After saving the file, shut down and restart the Docker containers to apply the changes: + +```bash +docker compose down +docker compose up -d +``` + +## Result + +The system no longer enforces a password when creating public share links. + +:::note +This change applies globally to all public shares created after the restart. +::: diff --git a/versioned_docs/version-4.0.0/admin/configuration/set-default-quota.md b/versioned_docs/version-4.0.0/admin/configuration/set-default-quota.md new file mode 100644 index 00000000..7d4288a8 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/set-default-quota.md @@ -0,0 +1,77 @@ +--- +sidebar_position: 30 +id: default-user-quota +title: Set default user quota +description: How to set default user quota +draft: false +--- + +# Set Default Quota per User Role + +You can define default storage quotas for specific user roles in OpenCloud by configuring the proxy service. This ensures that any newly created user with a given role automatically receives the specified quota. + +## Define Role-Based Quotas in `proxy.yaml` + +To configure quotas, edit the `opencloud.proxy.yaml` file and add the `role_quotas` section with role IDs and the desired quota in bytes: + +```bash +nano opencloud-compose/config/opencloud.proxy.yaml +``` + +Example configuration: + +```yaml +role_quotas: + 'd7beeea8-8ff4-406b-8fb6-ab2dd81e6b11': 1073741824 +``` + +This assigns a 1 GB quota to all new users with the "User" role. + +## Role IDs + +Use the following role IDs to configure different quotas: + +- User: + `d7beeea8-8ff4-406b-8fb6-ab2dd81e6b11` + +- SpaceAdmin: + `2aadd357-682c-406b-8874-293091995fdd` + +- Admin: + `71881883-1768-46bd-a24d-a356a2afdf7f` + +:::note +Quota values are defined in bytes. +::: + +## Mount the Configuration in Docker + +To apply the configuration, mount the updated `proxy.yaml` into your Docker container. + +1. Open the `docker-compose.yaml` file: + +```bash +nano opencloud-compose/docker-compose.yaml +``` + +2. Add the following line under the `volumes` section for the proxy container: + +```yaml +- ./config/opencloud/proxy.yaml:/etc/opencloud/proxy.yaml +``` + +## Apply the Changes + +Restart the OpenCloud container to apply the new configuration: + +```bash +docker compose up -d +``` + +## Result + +All newly created users who receive a role defined in the `role_quotas` section will automatically have the specified quota assigned. + +:::info +This configuration does **not** affect existing users. Only new users will receive the default quota. +::: diff --git a/versioned_docs/version-4.0.0/admin/configuration/storage/_category_.json b/versioned_docs/version-4.0.0/admin/configuration/storage/_category_.json new file mode 100644 index 00000000..e59f400f --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/storage/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Storage", + "position": 20 +} diff --git a/versioned_docs/version-4.0.0/admin/configuration/storage/cephfs.md b/versioned_docs/version-4.0.0/admin/configuration/storage/cephfs.md new file mode 100644 index 00000000..097069e0 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/storage/cephfs.md @@ -0,0 +1,7 @@ +--- +sidebar_position: 2 +id: storage-cephfs +title: 'CephsFS' +description: CephsFS +draft: true +--- diff --git a/versioned_docs/version-4.0.0/admin/configuration/storage/decomposeds3.md b/versioned_docs/version-4.0.0/admin/configuration/storage/decomposeds3.md new file mode 100644 index 00000000..b73c1a61 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/storage/decomposeds3.md @@ -0,0 +1,84 @@ +--- +sidebar_position: 3 +id: storage-decomposeds3 +title: 'Decomposeds3' +description: Decomposeds3 Storage Driver +draft: false +--- + +# Decomposeds3 Storage Driver + +Decomposeds3 is a storage driver for OpenCloud that uses MinIO — an S3-compatible object storage — to store files efficiently. This setup combines the scalability of S3 with seamless integration into OpenCloud. + +:::warning + +This setup includes **No Migration Path** from existing storage solutions. If you are already using another storage backend, you will need to migrate your data manually. + +::: + +## Configure an S3 Bucket + +1. **Access your S3 Service**: Log in to your S3-compatible service (e.g., Hetzner S3, MinIO, AWS S3). +2. **Create a Bucket**: Create a new bucket named `opencloud` (or any name you prefer). +3. **Set Permissions**: Ensure the bucket has the necessary permissions for read and write operations +4. **Note the Endpoint and Credentials**: Make a note of the endpoint URL, access key, and secret key for your S3 service. +5. **CORS Configuration**: If your S3 service requires CORS configuration, ensure that it allows requests from your OpenCloud domain. +6. **Region**: Note the region where your bucket is created, as it may be required for configuration. + +## Setup OpenCloud + +Navigate to the folder containing the Docker Compose configuration: + +```bash +cd opencloud-compose +``` + +Open the `.env` file and fill the required configuration variables: + +```bash +nano .env +``` + +Now we need all the information about the S3 bucket we created earlier. Modify the following lines in your `.env` file: + +```yaml +# Configure the S3 storage endpoint. Defaults to "http://minio:9000" for testing purposes. +DECOMPOSEDS3_ENDPOINT=https//your-s3-endpoint.example.com +# S3 region. Defaults to "default". +DECOMPOSEDS3_REGION=eu-central-1 +# S3 access key. Defaults to "opencloud" +DECOMPOSEDS3_ACCESS_KEY= +# S3 secret. Defaults to "opencloud-secret-key" +DECOMPOSEDS3_SECRET_KEY= +# S3 bucket. Defaults to "opencloud" +DECOMPOSEDS3_BUCKET=opencloud +``` + +Add `storage/decomposeds3.yml` to the `COMPOSE_FILE` variable +or include it directly in the startup command: + +```bash +docker compose -f docker-compose.yml -f storage/decomposeds3.yml up +``` + +Start all containers in the background: + +```bash +docker compose up -d +``` + +## Login + +Open your browser and log in. + +After logging in, you should see the OpenCloud interface: + +Login Page + +OpenCloud with decomposeds3 and MinIO + +## Troubleshooting + +If you run into any issues or errors, check the following resource: + +- [Common Issues & Help](/docs/admin/resources/common-issues) diff --git a/versioned_docs/version-4.0.0/admin/configuration/storage/posixfs.md b/versioned_docs/version-4.0.0/admin/configuration/storage/posixfs.md new file mode 100644 index 00000000..6651acef --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/storage/posixfs.md @@ -0,0 +1,118 @@ +--- +sidebar_position: 1 +id: storage-posix +title: 'PosixFS' +description: PosixFX Storage Driver +draft: false +--- + +# PosixFS Storage Driver + +PosixFS is a storage driver that saves OpenClouds files and folders in a folder structure how the user sees that in the web interface or other clients. That is a difference to the previously used driver DecomposedFS, which stores files in a technical folder structure that has limited meaning for admins. + +PosixFS Driver supports two different modes: + +- The _non collaborative mode_ where the filesystem tree in use is exclusively granted to OpenCloud +- The _collaborative mode_ where modifications of the underlying file tree are permitted by other processes than OpenCloud + +## General Notes + +The following general notes apply to both modes of the driver. + +### Metadata + +To enable OpenCloud to operate without a database, additional metadata is stored using the extended file attributes of each file. If the total size of this metadata exceeds the limitations imposed by the underlying file system, it is automatically moved to a separate metadata file. In such cases, only a reference to this metadata file remains in the extended attributes. This entire process is handled transparently by OpenCloud. + +### Access Model + +To ensure reliable operation in _non-collaborative mode_, the underlying file system used by the PosixFS driver must not be modified while OpenCloud is running. The assigned file system tree must be exclusively reserved for access by OpenCloud. +All files and directories must be owned by the same user and group under which the OpenCloud process is running. File and directory permissions must allow OpenCloud to read, write, and traverse the entire tree. + +These conditions are automatically fulfilled as long as the root directory of the assigned tree is writable. + +#### Assimilation + +When OpenCloud starts up, it scans the assigned file system tree for newly added or modified files and directories. During this process, metadata is updated and internal caches are built accordingly. This is referred to as the _assimilation_ of new resources. + +It is important to note that assimilation does not trigger post-upload checks, such as virus scanning. Since the files are already in their final location within the file system, such checks would be ineffective at this stage and are therefore skipped. + +However, indexing for the search service does take place for assimilated resources. + +### Startup + +When OpenCloud with PosixFS starts up, it is running over the entire file system to warm up the caches. This might take some time. + +### Backup + +With PosixFS backup and restore is easy. The entire OpenCloud filesystem tree can be snapshotted regularly and restored as needed. It depends on the filesystem type how that has to be done in detail. + +### Migration + +PosixFS in this so called _non collaborative mode_ is the default for new installations of OpenCloud. There is currently no way to migrate OpenCloud installations with DecomposedFS backend to PosixFS. + +If that is needed, data needs to be copied into a new installation of OpenCloud. + +## PosixFS Non Collaborative Mode + +This describes special aspects of the non collaborative mode. + +### External Access + +When OpenCloud is shut down, limited manipulation of the underlying file system tree is possible for certain administration tasks such as + +- adding files and folders +- removing files and folders +- renaming files and folders + +:::warning + +Whenever files are manipulated externally to OpenCloud, it is important to remember to + +- shut down OpenCloud before starting +- do not lose the extended file attributes of individual files +- set the file- and folder permissions correctly + +::: + +### Configuration + +The PosixFS storage driver is part of the default OpenCloud bundle. + +Involved configuration settings (environment variables) to enable PosixFS are: + +- `STORAGE_USERS_DRIVER` defaults to `posix` from version `2.0.0`, in older versions it needs to be explicitly set +- `STORAGE_USERS_ID_CACHE_STORE` needs to be set to `nats-js-kv` +- `STORAGE_USERS_POSIX_ROOT` can be omitted for default, or set the storage root directory + +## PosixFS Collaborative Mode + +This section describes the collaborative mode of the PosixFS driver, which allows the file system to be modified while OpenCloud is running. Changes made in this mode are reflected in real time in OpenCloud clients. + +### Usage + +Collaborative mode should always be used with caution. It is intended only for well-defined use cases that are carefully planned, configured, and tested. Operation must take place in a controlled environment. + +Compared to non-collaborative mode, collaborative mode requires significantly more system resources to monitor the file system. Server hardware must be appropriately sized to handle this increased load. + +### External Access + +External access to files is permitted under specific conditions. File changes are detected and assimilated in real time. + +The following guidelines are critical for smooth and reliable operation: + +- Creating new files and folders is the preferred method of external modification. +- Do not use symbolic links. +- Moving files across OpenCloud spaces is not supported and will not be detected as such. +- Editing or deleting large numbers of files may cause errors in tree size calculation. +- Continuously monitor server system resources to identify potential bottlenecks. +- Carefully configure components such as Apache Tika to optimize indexing performance. + +It is essential to maintain correct file ownership and permissions when modifying the file system externally. Files must be created with the correct user and permissions from the outset. Retroactive changes are discouraged, as assimilation may already be in progress. + +### Configuration + +In addition to the configuration required for non-collaborative mode, the following setting must be enabled for local file systems such as XFS, ext4, and others: + +```env +STORAGE_USERS_POSIX_WATCH_FS=true +``` diff --git a/versioned_docs/version-4.0.0/admin/configuration/web-applications.md b/versioned_docs/version-4.0.0/admin/configuration/web-applications.md new file mode 100644 index 00000000..d3d6783e --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/configuration/web-applications.md @@ -0,0 +1,66 @@ +--- +sidebar_position: 60 +id: web-applications +title: Web Apps +description: How to enable web applications in OpenCloud +draft: false +--- + +# Web Applications + +Administrators have the ability to provide additional web applications to their users. This feature is especially useful for organizations that want to integrate third-party tools or provide internally developed apps within the OpenCloud environment. + +## Installing a Web Application + +You can install a web application in just a few steps: + +### Open the App Store + +Use the Application Switcher in the top navigation bar of OpenCloud and navigate to the App Store. + +App Store + +### Download the Application + +Find and download the application you want to install. + +### Extract and copy + +Unzip the downloaded archive and copy the extracted folder into the web application directory. +By default, this path is: + +```bash +opencloud-compose/config/opencloud/apps +``` + +:::note +If you are adding an app to an already running system, verify whether the `/web/assets/apps` directory exists inside your `$OC_DATA_DIR`. +If it does not exist, create it manually. +::: + +### Restart OpenCloud + +Restart the OpenCloud stack using the following command: + +```bash +docker compose restart +``` + +### Access in OpenCloud + +Once the app is copied to the correct location, it will automatically appear in the OpenCloud interface. + +## Configure a Web Application + +Some OpenCloud apps require additional configuration — for example, the External Sites app. + +This particular app can be configured by creating the file config.json in the web apps directory: + +```bash +/web/assets/apps/external-sites/config.json +``` + +:::note +Configuration details vary between apps. +For specific setup instructions, please refer to the [official documentation](https://github.com/opencloud-eu/web-extensions/tree/main) of the respective app. +::: diff --git a/versioned_docs/version-4.0.0/admin/getting-started/_category_.json b/versioned_docs/version-4.0.0/admin/getting-started/_category_.json new file mode 100644 index 00000000..b426a8f4 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Getting Started", + "position": 2, + "link": { + "type": "generated-index", + "description": "🚀 Getting Started", + "slug": "admin/getting-started" + } +} diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/_category_.json b/versioned_docs/version-4.0.0/admin/getting-started/container/_category_.json new file mode 100644 index 00000000..edb9237b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Container", + "position": 2 +} diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/_category_.json b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/_category_.json new file mode 100644 index 00000000..0f0aa612 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Docker-Compose", + "position": 1 +} diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-compose-base.md b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-compose-base.md new file mode 100644 index 00000000..451502fe --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-compose-base.md @@ -0,0 +1,274 @@ +--- +sidebar_position: 1 +id: docker-compose-base +title: Docker Compose +description: Full-blown featureset including web office. +draft: false +--- + +# OpenCloud with Docker Compose + +Install a internet facing OpenCloud with SSL certification with Docker Compose. + +This installation documentation is for Ubuntu and Debian systems. The software can also be installed on other Linux distributions, but the commands and package managers may differ. + +## Prerequisites + +- Four domains pointing to your server: + - `cloud.YOUR.DOMAIN` → OpenCloud frontend + - `collabora.YOUR.DOMAIN` → Collabora Online Server + - `wopiserver.YOUR.DOMAIN` → WOPI server for document editing + - `traefik.YOUR.DOMAIN` → Traefik dashboard + + Alternatively, you can use a wildcard domain (`*.YOUR.DOMAIN`) + +- A hosted server (e.g., Hetzner, AWS, or your own VPS) with Linux and SSH access + +## Connect to Your Server + +Log into your server via SSH: + +```bash +ssh root@YOUR.SERVER.IP +``` + +## Install Docker + +Update your system and install Docker. + +First, perform an update and upgrade: + +```bash +apt update && apt upgrade -y +``` + +Install Docker following the [official Docker guide](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) + +Once Docker is installed, enable and start the service: + +```bash +systemctl enable docker && systemctl start docker +``` + +## Clone the OpenCloud Repository + +Download the necessary configuration files: + +```bash +git clone https://github.com/opencloud-eu/opencloud-compose.git +``` + +## Configure the .env File for Staging Certificates + +Before requesting real SSL certificates, test the setup with Let's Encrypt’s staging environment. + +### Navigate to the OpenCloud configuration folder + +```bash +cd opencloud-compose +``` + +### Create environment file + +```bash +cp .env.example .env +``` + +:::note +The repository includes .env.example as a template with default settings and documentation. Your actual .env file is excluded from version control (via .gitignore) to prevent accidentally committing sensitive information like passwords and domain-specific settings. +::: + +Edit the `.env` file with the editor of your choice: + +### In our example we use nano + +```bash +nano .env +``` + +## Modify these settings + +### Disable insecure mode + +```bash +# INSECURE=true +``` + +### Set your domain names + +```bash +TRAEFIK_DOMAIN=traefik.YOUR.DOMAIN +OC_DOMAIN=cloud.YOUR.DOMAIN +COLLABORA_DOMAIN=collabora.YOUR.DOMAIN +WOPISERVER_DOMAIN=wopiserver.YOUR.DOMAIN +``` + +### Set your admin password + +```bash +INITIAL_ADMIN_PASSWORD=YourSecurePassword +``` + +### Set your email for SSL certification + +```bash +TRAEFIK_ACME_MAIL=your@email.com +``` + +### Use Let's Encrypt staging certificates (for testing) + +```bash +TRAEFIK_ACME_CASERVER=https://acme-staging-v02.api.letsencrypt.org/directory +``` + +### Set your deployment options + +For Example without Collabora: + +```bash +COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml +``` + +Save and exit. + +### Production Setup Consideration + +:::caution Production Setup Recommended +By default, OpenCloud stores configuration and data inside internal Docker volumes. +This works fine for local development or quick evaluations — but is not suitable for production environments. +::: + +#### Mount Persistent Volumes + +In production, you should mount persistent local directories for configuration and data to ensure: + +- Data durability +- Easier backups and recovery +- Full control over storage location and permissions + +Update your `.env` file with custom paths: + +```env +OC_CONFIG_DIR=/your/local/path/opencloud/config +OC_DATA_DIR=/your/local/path/opencloud/data +``` + +:::tip Folder Permissions + +Ensure these folders exist and are owned by user and group 1000:1000, which the Docker containers use by default: + +```bash +sudo mkdir -p /your/local/path/opencloud/{config,data} +sudo chown -R 1000:1000 /your/local/path/opencloud +``` + +::: + +If these variables are left unset, Docker will use internal volumes, which do not persist if the containers are removed — not recommended for real-world use. + +:::caution Security Warning + +The user with UID 1000 on your host system will have full access to these mounted directories. This means that any local user account with this ID can read, modify, or delete OpenCloud config and data files. + +This can pose a security risk in shared or multi-user environments. Make sure to implement proper user and permission management and consider isolating access to these directories. + +::: + +#### Use production release container + +To avoid accidentally updating to a version with breaking changes, you should specify the production container version to be used in your `.env` file: + +```env +OC_DOCKER_IMAGE=opencloudeu/opencloud +OC_DOCKER_TAG=2 +``` + +## Start OpenCloud + +Launch OpenCloud using Docker Compose: + +```bash +docker compose up -d +``` + +This will start all required services in the background. + +## Verify SSL Certification + +In your web browser, visit: + +```bash +https://cloud.YOUR.DOMAIN +``` + +You should see a security warning because the staging certificate is not fully trusted. +Same should appear with the other domains you are using. + +Example with Chrome browser: + +Certificate Details + +- Check the certificate details to confirm it’s from Let's Encrypt Staging. + + Certificate Details + Certificate Details + +## Apply a Real SSL Certificate + +Once the staging certificate works, switch to a production certificate. + +### Stop Docker Compose + +```bash +docker compose down +``` + +### Remove old staging certificates + +```bash +rm -r certs +``` + +(If you changed volume names, adjust accordingly.) + +### Disable staging mode in `.env` + +```bash +nano .env +``` + +Comment the staging server: + +```bash +# TRAEFIK_ACME_CASERVER=https://acme-staging-v02.api.letsencrypt.org/directory +``` + +### Restart OpenCloud with a real SSL certificate + +```bash +docker compose up -d +``` + +✅ Now, visiting `https://cloud.YOUR.DOMAIN` should show a secure connection with a valid SSL certificate. + +Certificate Details + +## Log into OpenCloud + +Open a browser and visit: + +```bash +https://cloud.YOUR.DOMAIN +``` + +Login with: + +Username: `admin` + +Password: (your password) + +Admin general + +## Troubleshooting + +If you encounter any issues, check the [Common Issues & Help](/docs/admin/resources/common-issues) diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-external-proxy.md b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-external-proxy.md new file mode 100644 index 00000000..9395d412 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/docker-external-proxy.md @@ -0,0 +1,287 @@ +--- +sidebar_position: 2 +id: external-proxy +title: Behind External Proxy +description: How to run OpenCloud behind an external Nginx proxy with Certbot (manual setup). +draft: false +--- + +# Running OpenCloud Behind an External Proxy (Nginx + Certbot Setup) + +This guide walks you through setting up OpenCloud behind an external Nginx reverse proxy with Let's Encrypt certificates using `certbot certonly --webroot`. + +## Requirements + +- A public server with a static IP +- Proper DNS records for your domain: + - `cloud.YOUR.DOMAIN` + - `collabora.YOUR.DOMAIN` + - `wopiserver.YOUR.DOMAIN` +- Installed software: + - [Docker & Docker Compose](https://docs.docker.com/engine/install/) + - `nginx` + - `certbot` + +## Connect to Your Server + +Log into your server via SSH: + +```bash +ssh root@YOUR.SERVER.IP +``` + +## Install Docker + +Update your system and install Docker. + +First, perform an update and upgrade: + +```bash +apt update && apt upgrade -y +``` + +Install Docker following the [official Docker guide](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) + +Once Docker is installed, enable and start the service: + +```bash +systemctl enable docker && systemctl start docker +``` + +## Install Nginx & Certbot + +Now install Nginx & Certbot + +## Create a Webroot Directory for Certbot + +```bash +sudo mkdir -p /var/www/certbot +sudo chown -R www-data:www-data /var/www/certbot +``` + +## Temporary Nginx Config for HTTP Challenge + +Create a temporary config to allow HTTP validation: + +```bash +sudo nano /etc/nginx/sites-available/certbot-challenge +``` + +Paste the following config and adjust the URLs: + +```nginx +server { + listen 80; + server_name cloud.YOUR.DOMAIN collabora.YOUR.DOMAIN wopiserver.YOUR.DOMAIN; + + root /var/www/certbot; + + location /.well-known/acme-challenge/ { + allow all; + try_files $uri =404; + } +} +``` + +Enable and reload Nginx: + +```bash +sudo ln -s /etc/nginx/sites-available/certbot-challenge /etc/nginx/sites-enabled/ +sudo nginx -t && sudo systemctl reload nginx +``` + +## Obtain SSL Certificates + +Use `certbot` to get your TLS certificates with adjusted URLs: + +```bash +sudo certbot certonly --webroot \ + -w /var/www/certbot \ + -d cloud.YOUR.DOMAIN \ + -d collabora.YOUR.DOMAIN \ + -d wopiserver.YOUR.DOMAIN \ + --email your@email.com \ + --agree-tos \ + --no-eff-email +``` + +Your certificates will be saved under: + +- `/etc/letsencrypt/live/cloud.YOUR.DOMAIN/fullchain.pem` +- `/etc/letsencrypt/live/cloud.YOUR.DOMAIN/privkey.pem` + +## Configure and start OpenCloud + +Clone the OpenCloud Compose repo and set your environment: + +```bash +git clone https://github.com/opencloud-eu/opencloud-compose.git +cd opencloud-compose +cp .env.example .env +nano .env +``` + +Set the following environment variables: + +```env +# INSECURE=true + +COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:external-proxy/opencloud.yml:external-proxy/collabora.yml + +OC_DOMAIN=cloud.YOUR.DOMAIN + +INITIAL_ADMIN_PASSWORD=YOUR.SECRET.PASSWORD + +COLLABORA_DOMAIN=collabora.YOUR.DOMAIN + +WOPISERVER_DOMAIN=wopiserver.YOUR.DOMAIN +``` + +The initial Admin password is mandatory for security reasons. + +Start the docker compose setup + +```bash +docker compose up -d +``` + +## Set Up the Final Nginx Reverse Proxy + +### Remove the temporary certbot config + +```bash +sudo rm /etc/nginx/sites-enabled/certbot-challenge +``` + +### Create a new proxy config + +```bash +sudo nano /etc/nginx/sites-available/opencloud +``` + +Paste the following configuration and adjust the URLs: + +```nginx +# Redirect HTTP to HTTPS +server { + listen 80; + server_name cloud.YOUR.DOMAIN collabora.YOUR.DOMAIN wopiserver.YOUR.DOMAIN; + + location /.well-known/acme-challenge/ { + root /var/www/certbot; + } + + location / { + return 301 https://$host$request_uri; + } +} + +# OpenCloud +server { + listen 443 ssl http2; + server_name cloud.YOUR.DOMAIN; + + ssl_certificate /etc/letsencrypt/live/cloud.YOUR.DOMAIN/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/cloud.YOUR.DOMAIN/privkey.pem; + # Increase max upload size (required for Tus — without this, uploads over 1 MB fail) + client_max_body_size 10M; + # Disable buffering - essential for SSE + proxy_buffering off; + proxy_request_buffering off; + + # Extend timeouts for long connections + proxy_read_timeout 3600s; + proxy_send_timeout 3600s; + keepalive_timeout 3600s; + + # Prevent nginx from trying other upstreams + proxy_next_upstream off; + + # Increase max upload size (required for Tus — without this, uploads over 1 MB fail) + client_max_body_size 10M; + + # Disable buffering - essential for SSE + proxy_buffering off; + proxy_request_buffering off; + + # Extend timeouts for long connections + proxy_read_timeout 3600s; + proxy_send_timeout 3600s; + keepalive_requests 100000; + keepalive_timeout 5m; + http2_max_concurrent_streams 512; + + # Prevent nginx from trying other upstreams + proxy_next_upstream off; + + location / { + proxy_pass http://127.0.0.1:9200; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } +} + +# Collabora +server { + listen 443 ssl http2; + server_name collabora.YOUR.DOMAIN; + + ssl_certificate /etc/letsencrypt/live/cloud.YOUR.DOMAIN/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/cloud.YOUR.DOMAIN/privkey.pem; + # Increase max upload size to collabora editor + client_max_body_size 10M; + + location / { + proxy_pass http://127.0.0.1:9980; + proxy_set_header Host $host; + } + + location ~ ^/cool/(.*)/ws$ { + proxy_pass http://127.0.0.1:9980; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "Upgrade"; + proxy_set_header Host $host; + } + +} + +# WOPI Server +server { + listen 443 ssl http2; + server_name wopiserver.YOUR.DOMAIN; + + ssl_certificate /etc/letsencrypt/live/cloud.YOUR.DOMAIN/fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/cloud.YOUR.DOMAIN/privkey.pem; + + location / { + proxy_pass http://127.0.0.1:9300; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } +} +``` + +:::note +We enabled HTTP/2 and increased keep-alive limits to prevent large syncs from failing and ensure stable client connections, since nginx closes connections after ~1,000 requests by default. +::: + +Thanks to [mitexleo](https://github.com/mitexleo) for the Ngnix example configuration on GitHub and [zerox80](https://github.com/zerox80) for the adjustments + +Enable and reload Nginx: + +```bash +sudo ln -s /etc/nginx/sites-available/opencloud /etc/nginx/sites-enabled/ +sudo nginx -t && sudo systemctl reload nginx +``` + +## Test Certificate Renewal + +```bash +sudo certbot renew --dry-run +``` + +Your OpenCloud instance is now running securely behind a fully configured external Nginx reverse proxy with HTTPS. diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/keycloak.md b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/keycloak.md new file mode 100644 index 00000000..f6762b0b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/docker-compose/keycloak.md @@ -0,0 +1,91 @@ +--- +sidebar_position: 4 +id: keycloak +title: Keycloak +description: 'OpenCloud with Keycloak.' +draft: true +--- + +# Keycloak Integration + +## Enable Keycloak + +To enable Keycloak for identity and access management, uncomment the following lines in your `.env` file + +```env +# Enable services +COMPOSE_FILE=docker-compose.yml:idm/ldap-keycloak.yml:traefik/opencloud.yml:traefik/ldap-keycloak.yml +# Your public keycloak domain without protocol +KEYCLOAK_DOMAIN=your-keycloak-domain.example.com +# Admin user login name. Defaults to "kcadmin". +KEYCLOAK_ADMIN= +# Admin user login password. Defaults to "admin". +KEYCLOAK_ADMIN_PASSWORD= +``` + +The Docker Compose file `idm/ldap-keycloak.yml` contains the complete configuration for each component. + +Keycloak is configured during startup by importing the `keycloak-realm.dist.json` file. This file contains the configuration for the OpenCloud realm, including client settings, roles, and user federation. This file is located in the `config/keycloak` directory of the `opencloud-compose` repository. + +## Starting OpenCloud + +After starting OpenCloud, Keycloak will be available at + +```bash +https://keycloak.your.domain +``` + +## Initial User Setup in Keycloak + +Once Keycloak is running + +### Open your browser and go to + +```bash +https://keycloak.your.domain +``` + +Keycloak dashboard + +### Log in with the admin credentials (default is admin / admin) + +Keycloak login + +### In the top-left dropdown (labeled Keycloak), switch to the OpenCloud realm + +Top left dropdown menue + +### Navigate to the "Users" section and click "Add user" + +User section + +- Fill in a username +- Optionally add email, first/last name +- Click "Create" + Fill in userdata + +### Go to the "Credentials" tab + +- Click "Set password" + Credentials +
+- Set a temporary password +- Enable "Temporary" to force password change on first login (optional) +- Click "Save" + Set password + +### Go to the "Role Mapping" tab + +Role mapping + +- Click "Assign role" + Assign role + +- In the dialog, click "Filter by realm roles" + Filter by realm roles + +- Choose the appropriate role (e.g., user, admin, etc.) +- Click "Assign" + Realm roles + +The user can now log in via OpenCloud using the Keycloak credentials. diff --git a/versioned_docs/version-4.0.0/admin/getting-started/container/docker.md b/versioned_docs/version-4.0.0/admin/getting-started/container/docker.md new file mode 100644 index 00000000..11cfcff8 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/container/docker.md @@ -0,0 +1,79 @@ +--- +sidebar_position: 1 +id: docker +title: Docker +description: Classic docker setup. +draft: false +--- + +# Docker + +Spin up a temporary local instance of OpenCloud using Docker + +## Prerequisites + +- Linux, Mac or Windows Subsystem for Linux [(WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) +- [Docker](https://docs.docker.com/compose/install/) + +## Create Required Directories for Bind Mounts + +```bash +mkdir -p $HOME/opencloud/opencloud-config +mkdir -p $HOME/opencloud/opencloud-data +``` + +## Pull OpenCloud Image + +```bash +docker pull opencloudeu/opencloud-rolling:latest +``` + +## Initialize OpenCloud (First-time Setup) + +```bash +docker run --rm -it \ + -v $HOME/opencloud/opencloud-config:/etc/opencloud \ + -v $HOME/opencloud/opencloud-data:/var/lib/opencloud \ + -e IDM_ADMIN_PASSWORD=admin \ + opencloudeu/opencloud-rolling:latest init +``` + +You can set your own password using `IDM_ADMIN_PASSWORD=your_password`. If not set, a password will be auto-generated + +Admin general + +## Start OpenCloud + +```bash +docker run \ + --name opencloud \ + --rm \ + -d \ + -p 9200:9200 \ + -v $HOME/opencloud/opencloud-config:/etc/opencloud \ + -v $HOME/opencloud/opencloud-data:/var/lib/opencloud \ + -e OC_INSECURE=true \ + -e PROXY_HTTP_ADDR=0.0.0.0:9200 \ + -e OC_URL=https://localhost:9200 \ + opencloudeu/opencloud-rolling:latest +``` + +## Login + +Login with your browser: + +- [https://localhost:9200](https://localhost:9200) +- user: admin +- password: admin + +Admin general + +## Conclusion + +Your OpenCloud server is now running and ready to use 🚀 + +## Troubleshooting + +If you encounter any issues or errors, try finding a solution here: + +- [Common Issues & Help](/docs/admin/resources/common-issues) diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud-subdirectory.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud-subdirectory.png new file mode 100755 index 00000000..29c9ba45 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud-subdirectory.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud.png new file mode 100755 index 00000000..b59d1611 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/cd-opencloud.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/corepack-enable.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/corepack-enable.png new file mode 100755 index 00000000..3fd2cea9 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/corepack-enable.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/git-clone.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/git-clone.png new file mode 100755 index 00000000..0eb9aaa0 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/git-clone.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-corepack.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-corepack.png new file mode 100755 index 00000000..98b72812 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-corepack.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-git.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-git.png new file mode 100755 index 00000000..147d64dd Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-git.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-golang.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-golang.png new file mode 100755 index 00000000..62d92fee Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-golang.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-npm.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-npm.png new file mode 100755 index 00000000..bd9cf3a2 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/install-npm.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/localhost-warnung.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/localhost-warnung.png new file mode 100755 index 00000000..ff8a45fb Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/localhost-warnung.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/login.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/login.png new file mode 100755 index 00000000..326d15d8 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/login.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-init.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-init.png new file mode 100755 index 00000000..bc574062 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-init.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-server.png b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-server.png new file mode 100755 index 00000000..5583b427 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/bare-metal/opencloud-server.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/assign-role.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/assign-role.png new file mode 100644 index 00000000..958157da Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/assign-role.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-details.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-details.png new file mode 100644 index 00000000..43a55d06 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-details.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-viewer.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-viewer.png new file mode 100644 index 00000000..073b90d6 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/certificate-viewer.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/credentials.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/credentials.png new file mode 100644 index 00000000..bacb58de Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/credentials.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/fill-in-userdata.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/fill-in-userdata.png new file mode 100644 index 00000000..84ca4263 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/fill-in-userdata.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/filter-by-realm-roles.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/filter-by-realm-roles.png new file mode 100644 index 00000000..38545036 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/filter-by-realm-roles.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-dashboard.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-dashboard.png new file mode 100644 index 00000000..e57acb11 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-dashboard.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-login.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-login.png new file mode 100644 index 00000000..fa4c020f Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/keycloak-login.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/login.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/login.png new file mode 100644 index 00000000..0baae258 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/login.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/realm-roles.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/realm-roles.png new file mode 100644 index 00000000..f6e867be Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/realm-roles.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/role-mapping.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/role-mapping.png new file mode 100644 index 00000000..018e08d0 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/role-mapping.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/set-password.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/set-password.png new file mode 100644 index 00000000..382249f5 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/set-password.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/status-secure.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/status-secure.png new file mode 100644 index 00000000..e0625c57 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/status-secure.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/subordinate-ca's.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/subordinate-ca's.png new file mode 100644 index 00000000..318c99ee Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/subordinate-ca's.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/top-left-dropdown.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/top-left-dropdown.png new file mode 100644 index 00000000..d8cdbd9a Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/top-left-dropdown.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/users-section.png b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/users-section.png new file mode 100644 index 00000000..7ee11163 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/docker-compose/users-section.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/collabora-accept-self-signed-cert.png b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/collabora-accept-self-signed-cert.png new file mode 100644 index 00000000..1faad6a7 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/collabora-accept-self-signed-cert.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/docker-opencloud-init.png b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/docker-opencloud-init.png new file mode 100644 index 00000000..61e5b83e Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/docker-opencloud-init.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-docker-compose-up.png b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-docker-compose-up.png new file mode 100644 index 00000000..44ba2bb7 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-docker-compose-up.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-login.png b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-login.png new file mode 100644 index 00000000..0baae258 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/quick-guide/quick-login.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/change-env-for-storage.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/change-env-for-storage.png new file mode 100644 index 00000000..adf3dc57 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/change-env-for-storage.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-compose-check.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-compose-check.png new file mode 100644 index 00000000..8bb71e91 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-compose-check.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-user-check.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-user-check.png new file mode 100644 index 00000000..1cca0686 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/docker-user-check.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/error-mounting.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/error-mounting.png new file mode 100644 index 00000000..102f05fb Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/error-mounting.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/find-external-hd.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/find-external-hd.png new file mode 100644 index 00000000..d98d3d82 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/find-external-hd.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/format-drive.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/format-drive.png new file mode 100644 index 00000000..3fc6190f Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/format-drive.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ip-router.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ip-router.png new file mode 100644 index 00000000..e3f74d76 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ip-router.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/noip.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/noip.png new file mode 100644 index 00000000..f27367b1 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/noip.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/oc-domain.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/oc-domain.png new file mode 100644 index 00000000..abddfa64 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/oc-domain.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/portforwarding.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/portforwarding.png new file mode 100644 index 00000000..a46f439b Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/portforwarding.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/reachable-via-URL.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/reachable-via-URL.png new file mode 100644 index 00000000..9fd80f33 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/reachable-via-URL.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ssh-activate.png b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ssh-activate.png new file mode 100644 index 00000000..704ea0e1 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/getting-started/img/raspberrypi/ssh-activate.png differ diff --git a/versioned_docs/version-4.0.0/admin/getting-started/kubernetes.md b/versioned_docs/version-4.0.0/admin/getting-started/kubernetes.md new file mode 100644 index 00000000..27b5b020 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/kubernetes.md @@ -0,0 +1,7 @@ +--- +sidebar_position: 8 +id: kubernetes +title: Kubernetes +description: Kubernetes +draft: true +--- diff --git a/versioned_docs/version-4.0.0/admin/getting-started/other/_category_.json b/versioned_docs/version-4.0.0/admin/getting-started/other/_category_.json new file mode 100644 index 00000000..f7650f9b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/other/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Other", + "position": 3 +} diff --git a/versioned_docs/version-4.0.0/admin/getting-started/other/bare-metal.md b/versioned_docs/version-4.0.0/admin/getting-started/other/bare-metal.md new file mode 100644 index 00000000..3615fe19 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/other/bare-metal.md @@ -0,0 +1,131 @@ +--- +sidebar_position: 5 +id: bare-metal +title: Bare-Metal +description: Manual, minimalist setup with essential features. +draft: false +--- + +# Bare-Metal + +User Guide for Installing OpenCloud Bare-Metal + +Follow the steps below to install and configure OpenCloud on your system.
+This example is on Linux Ubuntu 24.04 distribution! + +:::danger[Disclaimer] +Bare-metal deployments are not officially supported by OpenCloud. They are great for quick evaluation but are undocumented and have a minimalist feature set. If you choose this setup, you are on your own. With great power comes great responsibility. +::: + +## Install Git and clone the repository + +- Open a terminal. + +- Update your package list: + + ```bash + sudo apt update && apt upgrade + ``` + +- Install Git using the following command: + + ```bash + sudo apt install git + ``` + + install git + +- Clone the OpenCloud repository: + + ```bash + git clone https://github.com/opencloud-eu/opencloud.git + ``` + + git clone + +## Install the required packages + +- Download and install Go by following the official guide: 🔗[**go.dev/doc/install**](https://go.dev/doc/install) + +- Install npm (Node Package Manager): + + ```bash + sudo apt install npm -y + ``` + + install npm + +- Install corepack globally: + + ```bash + sudo npm install -g corepack + ``` + + install corepack + +- Enable `pnpm` using corepack: + + ```bash + corepack enable pnpm + ``` + + corepack enable + +## Build process and OpenCloud initialization + +- Navigate to the OpenCloud directory: + + ```bash + cd opencloud + ``` + + cd opencloud + +- Run the build generate process: + + ```bash + make clean generate + make -C opencloud build + ``` + +- Navigate into the opencloud subdirectory that was just built: + + ```bash + cd opencloud + ``` + +- Initialize OpenCloud with insecure configuration and set an admin password: + + ```bash + ./bin/opencloud init --insecure true --admin-password admin + ``` + + opencloud init + +- Start the OpenCloud server: + + ```bash + ./bin/opencloud server + ``` + + opencloud server + +## Login + +Login with your browser: + +- [https://localhost:9200](https://localhost:9200) +- user: **admin** +- password: **admin** + +login + +## Conclusion + +Your OpenCloud server is now running and ready to use 🚀 + +## Troubleshooting + +If you encounter any issues or errors, try finding a solution here + +- [Common Issues & Help](/docs/admin/resources/common-issues) diff --git a/versioned_docs/version-4.0.0/admin/getting-started/other/raspberry-pi.md b/versioned_docs/version-4.0.0/admin/getting-started/other/raspberry-pi.md new file mode 100644 index 00000000..7bae052e --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/other/raspberry-pi.md @@ -0,0 +1,281 @@ +--- +sidebar_position: 6 +id: raspberry-pi +title: Raspberry Pi +description: OpenCLoud on a Raspberry Pi +draft: false +--- + +# OpenCloud on a Raspberry Pi + +:::note +The installation of OpenCloud on a Raspberry Pi is intended for private or non-production use only. +It is not recommended for enterprise or critical environments due to the hardware's limited resources and potential performance constraints. +::: + +## Hardware requirements + +- Minimum Raspberry Pi 4B with at least 4 GB RAM connected via LAN or WLAN +- Micro SD card with at least 32 GB storage space +- External hard disk or USB stick (optional) for additional storage space + +## Install operating system + +- Install Raspberry Pi OS + A very detailed and understandable guide is available at: + [Raspberry Pi Getting Started](https://pimylifeup.com/raspberry-pi-getting-started/) + +- SSH must be activated + activate ssh + +- If the Raspberry Pi is to be connected to WLAN, the login data for the WLAN must be entered. + +## Connecting with SSH + +Start the Raspberry Pi with the SD card and connect via SSH. +The IP for this can be viewed in your router. + +find ip from raspberry-pi in router + +### Establish connection via SSH + +```bash +ssh pi@YOUR-IP +``` + +After the first login, you should change the password for security reasons: + +```bash +passwd +``` + +## Installing Docker and Docker Compose + +Detailed installation instructions for Docker can be found here: +[Install Docker on Raspberry Pi](https://pimylifeup.com/raspberry-pi-docker/) + +- Perform update and upgrade: + +```bash +sudo apt update && sudo apt upgrade -y +``` + +- Install Docker via script: + +```bash +curl -fsSL test.docker.com -o get-docker.sh && sh get-docker.sh +``` + +- Add current user to the Docker group: + +```bash +sudo usermod -aG docker ${USER} +``` + +- Check if it's working: + +```bash +groups ${USER} +``` + +Check docker user + +- Reboot the Raspberry Pi: + +```bash +sudo shutdown -r now +``` + +## Clone OpenCloud repository + +```bash +git clone https://github.com/opencloud-eu/opencloud-compose.git +``` + +## Start the Docker Compose setup + +```bash +cd opencloud-compose +``` + +Copy the `.env.example` file: + +```bash +cp .env.example .env +``` + +Edit the `.env` file: + +```bash +nano .env +``` + +Add the minimal OpenCloud setup: + +```bash +COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml +``` + +Set your admin password + +```bash +INITIAL_ADMIN_PASSWORD=YourSecurePassword +``` + +Then start Docker: + +```bash +docker compose up +``` + +Now OpenCloud is running locally on your Raspberry Pi, and you can adjust it to your needs. + +We will describe how to mount an external disk or USB stick and make OpenCloud available outside the local network using No-IP. + +## Mount external hard disk or USB stick + +### Find your external drive + +```bash +lsblk +``` + +find the external hd + +### Format the drive to ext4 + +```bash +sudo mkfs.ext4 /dev/sda1 -L DATA +``` + +format drive + +### Add fstab entry for auto-mounting + +Open `fstab`: + +```bash +sudo nano /etc/fstab +``` + +Add this line: + +```bash +LABEL=DATA /mnt/data ext4 auto,defaults 0 0 +``` + +### Create the mount point and set permissions + +```bash +sudo mkdir -p /mnt/data +sudo chown -R 1000:1000 /mnt/data +``` + +### Mount the drive + +```bash +sudo mount -a +``` + +If an error occurs: + +error mounting + +Run: + +```bash +systemctl daemon-reload +``` + +And try mounting again. + +## Mount external storage in Docker + +Stop Docker: + +```bash +docker compose down +``` + +Open the `.env` file: + +```bash +cd opencloud-compose +nano .env +``` + +Set the `OC_DATA_DIR` variable to your mounted storage path, e.g.: + +```env +OC_DATA_DIR=/mnt/data +``` + +change env for storage + +Restart Docker: + +```bash +docker compose up +``` + +## Make OpenCloud externally available + +### Create DynDNS hostname + +Register at [No-IP](https://www.noip.com/) and create a hostname, e.g. `opencloud.webhop.me`. + +noip hostname input + +### Configure DynDNS in your router + +Use your router’s web interface to: + +- Locate the Dynamic DNS settings +- Select **No-IP** as provider +- Enter your No-IP credentials +- Use the created hostname (e.g. `opencloud.webhop.me`) +- Save and test the settings + +More help: [No-IP Support](https://www.noip.com/support/knowledgebase/how-to-configure-ddns-in-router) + +### Configure port forwarding + +1. Ensure your Raspberry Pi always has the same IP address: + - Either via static IP or DHCP assignment in the router + +2. In your router settings, look for **Port Forwarding**, **NAT**, or **Port Sharing** + +3. Forward the following ports to your Raspberry Pi: + +- TCP Port 80 (HTTP) +- TCP Port 443 (HTTPS) + +portforwarding in router + +### Update OC_DOMAIN + +SSH into your Pi and update the domain: + +```bash +cd opencloud-compose +docker compose down +nano .env +``` + +Edit the `OC_DOMAIN` value: + +```env +OC_DOMAIN=opencloud.webhop.me +``` + +change the OC_DOMAIN variable + +Restart Docker: + +```bash +docker compose up +``` + +Now your OpenCloud should be reachable via your URL. + +reachable-via-URL diff --git a/versioned_docs/version-4.0.0/admin/getting-started/requirements.md b/versioned_docs/version-4.0.0/admin/getting-started/requirements.md new file mode 100644 index 00000000..02d5e84e --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/getting-started/requirements.md @@ -0,0 +1,14 @@ +--- +sidebar_position: 1 +id: requirements +title: Requirements +description: Runs on anything from a Raspberry Pi to a data center. +draft: false +--- + +| Category | Details | +| :---------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Server Operating System |
  • Production: Linux
  • Testing and development: MacOS or Windows WSL
| +| Database |
  • None (OpenCloud stores files exclusively on the storage to minimize complexity and ensure maximum reliability)
| +| Storage |
  • The `posix` and `decomposed` storage drivers require:
    • a fully POSIX compliant filesystem
      • local e.g. ext4, XFS, ZFS
      • network e.g. CephFS, GPFS, NFS v4.2 or later
    • atomic read after write consistency for directory metadata (NFS mount option `noac`)
  • `decomposeds3` additionally requires an S3 bucket
  • `posix` requires extended attributes (offloading metadata >1KB into dedicated files)
| +| Hardware requirements | Minimum (Minimal bare-metal Deployment - Up to 10 Users)
  • eg. Raspberry Pi 3
  • 1 GHz (Single-core)
  • 512 MB Ram
  • Storage: depends on data usage
Medium (Deployment - Up to 1,000 Users)
  • 2 GHz (Dual-core)
  • 8 GB Ram
  • Storage: depends on data usage
General:
  • Disk Performance (IOPS): Input/output operations per second (IOPS) should be unrestricted for maintaining optimal performance.
  • The server requirements vary based on load factors such as requests per second, number of client devices per user, file volume, post-processing tasks, and additional apps like Collabora. Proper sizing depends on these variables and should be adjusted accordingly.
| diff --git a/versioned_docs/version-4.0.0/admin/maintenance/_category_.json b/versioned_docs/version-4.0.0/admin/maintenance/_category_.json new file mode 100644 index 00000000..10686631 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Maintenance", + "position": 4, + "link": { + "type": "generated-index", + "description": "🛠️ Maintenance", + "slug": "admin/maintenance" + } +} diff --git a/versioned_docs/version-4.0.0/admin/maintenance/backup.md b/versioned_docs/version-4.0.0/admin/maintenance/backup.md new file mode 100644 index 00000000..71bfa6ca --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/backup.md @@ -0,0 +1,91 @@ +--- +sidebar_position: 2 +id: backup +title: Backup +description: Backup +draft: false +--- + +# Backup + +Regular backups are essential to ensure that your OpenCloud instance can be restored in case of issues + +## General considerations + +### Storage Options + +OpenCloud supports two different storage setups: + +- Pure POSIX Setup: All data (configuration, blobs, and metadata) is stored on a POSIX-compliant filesystem. + +- Distributed Setup: Blobs are stored on an S3-compliant storage, while configuration and metadata remain on a POSIX-compliant filesystem + +To determine which filesystems are supported, see: Filesystems and Shared Storage + +## Backup strategies + +### Consistent Backup Requirement + +To create a consistent backup, the OpenCloud instance must be stopped before starting the backup process. After the backup is complete, the instance can be restarted + +There are two recommended approaches: + +- Snapshot-based backup (recommended) + - If your storage system supports snapshots, creating a backup only takes a few seconds + + - Snapshots should be copied to secondary storage or used by backup software for additional security + +- Backup software approach + +- If snapshots are not available, you can use any backup software of your choice +- For more details on data locations, refer to the Default Paths documentation + +## Required backup components + +- Configuration data + +- System data (shares the root path with metadata if not defined separately) + +- Metadata (varies depending on the storage setup) + +- Blobs (stored with metadata on POSIX or separately on S3) + +- ⚠️ If the search index is not backed up, it must be recreated after restoration. + +- Additionally, consider backing up: + +- The OpenCloud binary or container used + +- The configuration files + +- This ensures compatibility when restoring and prevents issues caused by software version mismatches + +## Pure POSIX setup + +If all data (configuration, blobs, and metadata) is stored on a POSIX-compliant filesystem + +- Stop the OpenCloud instance + +- Create a backup of all data sets + +- If everything is on one filesystem, this is straightforward + +- If separate filesystems are used for configuration and blobs/metadata, back up each one individually + +- Restart the OpenCloud instance after the backup is complete + +## Distributed setup + +If blobs are stored on S3, while configuration and metadata remain on a POSIX-compliant filesystem + +- Stop the OpenCloud instance + +- Back up the configuration and metadata + +- Back up the S3 bucket according to the guidelines of your S3 provider + +- Restart the OpenCloud instance after the backup is complete + +:::note +With these backup strategies, you can ensure that your OpenCloud instance remains secure and restorable in case of issues +::: diff --git a/versioned_docs/version-4.0.0/admin/maintenance/dataexport.md b/versioned_docs/version-4.0.0/admin/maintenance/dataexport.md new file mode 100644 index 00000000..21081de5 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/dataexport.md @@ -0,0 +1,29 @@ +--- +sidebar_position: 5 +id: dataexport +title: Data Export +description: Information about data export. +draft: false +--- + +# Data Export + +## Files + +OpenCloud stores files by default in the file system under the path `/var/lib/opencloud/`. Any other path that is local to the server instance running the OpenCloud backend can be configured as alternative path using the environment variable `OC_BASE_DATA_PATH`. + +Files and folders are stored in a folder structure underneath that base path in folder `data/storage/users/`. + +Files are by default stored in the original format and not encrypted. + +## Metadata + +File metadata is stored in the file system with every file. It is either in the extended file attributes (user namespace) or in a separate metadata file. That file is in the [MessagePack](https://msgpack.org) format and can be read with the CLI tools for that file type. + +## Configuration + +Configuration files are written as yaml files by default under `$HOME/.config/OpenCloud`. + +## Other + +Other, non-file-related metadata such as links is also stored under the general data base path, in JSON format. diff --git a/versioned_docs/version-4.0.0/admin/maintenance/img/generate-pass-nc.png b/versioned_docs/version-4.0.0/admin/maintenance/img/generate-pass-nc.png new file mode 100644 index 00000000..e9ef5994 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/maintenance/img/generate-pass-nc.png differ diff --git a/versioned_docs/version-4.0.0/admin/maintenance/img/init-diff.png b/versioned_docs/version-4.0.0/admin/maintenance/img/init-diff.png new file mode 100644 index 00000000..94b6f0a0 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/maintenance/img/init-diff.png differ diff --git a/versioned_docs/version-4.0.0/admin/maintenance/migrate.md b/versioned_docs/version-4.0.0/admin/maintenance/migrate.md new file mode 100644 index 00000000..7b9fe2fe --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/migrate.md @@ -0,0 +1,229 @@ +--- +sidebar_position: 3 +id: migrate +title: Migrate +description: Guide to migrating data using rclone. +draft: false +--- + +import Tabs from '@theme/Tabs' +import TabItem from '@theme/TabItem' + +# Migrate + +Migrate Personal Space Data to OpenCloud Using rclone + +This guide will help you migrate personal space data from `NextCloud` and `oCIS` to `OpenCloud` using `rclone`. Follow these steps carefully to ensure a smooth migration! + +## Generate users token using CLI or API + + + + +## Run OpenCloud with the following configuration + +Modify `.env` file: + +```bash +START_ADDITIONAL_SERVICES="auth-app" +``` + +Enable `auth-app` service: + +```bash +PROXY_ENABLE_APP_AUTH="true" +``` + +### Generate user token using CLI + +Access the OpenCloud container: + +```bash +docker exec -it opencloud-compose-opencloud-1 sh +``` + +Generate an authentication token for a user (e.g., `alan`) with expiration (`h`, `m`, `s`): + +```bash +opencloud auth-app create --user-name=alan --expiration=72h +``` + +## Generate user token using API + +Requires additional configuration! Start the server with: + +```bash +AUTH_APP_ENABLE_IMPERSONATION=true +``` + +Then generate a token via API: + +```bash +curl -vk -XPOST 'https://opencloud_url/auth-app/tokens?expiry=72h&userName=alan' -uadmin:admin +``` + + + + + +### Run oCIS with the following configuration + +Modify `.env` file: + +```bash +START_ADDITIONAL_SERVICES="auth-app" +``` + +Enable `auth-app` service: + +```bash +PROXY_ENABLE_APP_AUTH="true" +``` + +## Generate user token using CLI + +Access the oCIS container: + +```bash +docker exec -it ocis_full-ocis-1 sh +``` + +Generate an authentication token for a user (e.g., `einstein`) with expiration (`h`, `m`, `s`): + +```bash +ocis auth-app create --user-name=einstein --expiration=72h +``` + +## Generate user token using API + +Requires additional configuration! Start the server with: + +```bash +AUTH_APP_ENABLE_IMPERSONATION=true +``` + +Then generate a token via API: + +```bash +curl -vk -XPOST 'https://ocis_url/auth-app/tokens?expiry=72h&userName=einstein' -uadmin:admin +``` + + + + + +### Go to `Settings` → `Security` + +Create a new App Password + +![Generate App Password](./img/generate-pass-nc.png) + + + + +## Install rclone + +Download and install rclone by following the official guide: [rclone.org/install](https://rclone.org/install/) + +## Encrypt Authentication Tokens + +```bash +rclone obscure +``` + +## Create the rclone Configuration + +Edit the rclone configuration file: + +```bash +nano ~/.config/rclone/rclone.conf +``` + +- Example Configuration + +```bash +[opencloud-admin] +type = webdav +url = https://opencloud_url/remote.php/webdav +vendor = opencloud +owncloud_exclude_shares = true +user = admin +pass = sQOM4mn2DdR9ihRGkyAMcd50W6mniaSqSfx2qVOdBJs +description = opencloud-admin + +[opencloud-alan] +type = webdav +url = https://opencloud_url/remote.php/webdav +vendor = opencloud +owncloud_exclude_shares = true +user = alan +pass = sQOM4mn2DdR9ihRGkyAMcd50W6mniaSqSfx2qVOdBJs +description = opencloud-alan + +[ocis-admin] +type = webdav +url = https://ocis_url/remote.php/webdav +vendor = ocis +owncloud_exclude_shares = true +user = admin +pass = Sav5354nRTgBHyItQeCZp9tCBidX2BxbuMx_dDLwxqs +description = ocis-admin + +[ocis-einstein] +type = webdav +url = https://ocis_url/remote.php/webdav +vendor = ocis-einstein +owncloud_exclude_shares = true +user = einstein +pass = dcYsf3PNvBxaIi7MMq-bqg74KMWWWS8p3uFT-WD17SA +description = ocis-einstein + +[nc-admin] +type = webdav +url = http://nc_url/remote.php/webdav +vendor = nc +owncloud_exclude_shares = true +user = admin +pass = IBSkhC1wCDdS2Gt9iBV-C9IqlGek +description = nc-admin + +[nc-bob] +type = webdav +url = http://localhost:8080/remote.php/webdav +vendor = nc-bob +owncloud_exclude_shares = true +user = bob +pass = ufOK3zPDjR4meEwwy3cWUVA18Lf8TpubBRyPL5m9KC508PkMiEVAXTxg6olu +description = nc-bob + +``` + +## Copy Data to OpenCloud + +Use `rclone copy` to transfer data from `oCIS` and `Nextcloud` to `OpenCloud`: + +```bash +rclone copy ocis-admin:/ opencloud-admin:/ --no-check-certificate -P # Copy oCIS admin personal space to OpenCloud admin space +rclone copy ocis-einstein:/ opencloud-alan:/ --no-check-certificate -P # Copy oCIS bob's personal space to OpenCloud admin space +rclone copy nc-bob:/ opencloud-alan:/ --no-check-certificate -P # Copy Nextcloud admin personal space to OpenCloud admin space + +``` + +## Migration Results and Limitations + +Congratulations! You have successfully migrated personal space data to OpenCloud! + +- Successfully Migrated + - Personal space files + +- Not Migrated + - Shared files + - Public links + - Project spaces + - Trash-bin contents + - File versions + - Metadata + +## Security Step: Delete Tokens + +Once the migration is complete, please delete tokens to prevent unauthorized access! diff --git a/versioned_docs/version-4.0.0/admin/maintenance/uninstall.md b/versioned_docs/version-4.0.0/admin/maintenance/uninstall.md new file mode 100644 index 00000000..d7750380 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/uninstall.md @@ -0,0 +1,85 @@ +--- +sidebar_position: 4 +id: uninstall +title: Uninstall +description: Guide to uninstall OpenCloud. +draft: false +--- + +# Uninstall OpenCloud with Docker Compose + +:::warning +This guide will completely remove all OpenCloud data. Make sure to back up any important files before proceeding. +::: + +## Stop and Remove Docker Containers + +Navigate to your `opencloud-compose` directory (where your `docker-compose.yml` file is located), then run: + +```bash +docker compose down +``` + +To also remove unnamed volumes and orphan containers: + +```bash +docker compose down --volumes --remove-orphans +``` + +## Remove Docker Volumes + +To check your existing volumes: + +```bash +docker volume ls +``` + +Typical OpenCloud volumes may include: + +`opencloud_compose_opencloud-data` + +`opencloud_compose_opencloud-config` + +To delete specific volumes: + +```bash +docker volume rm opencloud_compose_opencloud-data opencloud_compose_opencloud-config +``` + +Or to clean up all unused volumes (be careful!): + +```bash +docker volume prune +``` + +## Delete Mounted Directories (if used) + +If your .env referenced local folders such as /mnt/opencloud/data, you should delete those manually: + +```bash +sudo rm -rf /mnt/opencloud/data +sudo rm -rf /mnt/opencloud/config +``` + +Adjust the paths to match your setup. + +## Remove the Compose Project Folder (Optional) + +If you want to delete the entire project directory: + +```bash +cd .. +rm -rf opencloud-compose +``` + +## Result + +After completing these steps, OpenCloud is fully removed, including: + +- All Docker containers + +- All persistent volumes + +- Any local folders and mounts + +- Optional project directory diff --git a/versioned_docs/version-4.0.0/admin/maintenance/upgrade/_category_.json b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/_category_.json new file mode 100644 index 00000000..2c2bbf9b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Upgrade", + "position": 1, + "link": { + "type": "generated-index", + "description": "Upgrade", + "slug": "admin/maintainance/upgrade" + } +} diff --git a/versioned_docs/version-4.0.0/admin/maintenance/upgrade/release-notes.md b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/release-notes.md new file mode 100644 index 00000000..6440e596 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/release-notes.md @@ -0,0 +1,35 @@ +--- +sidebar_position: 3 +id: release-notes +title: Release Notes +description: Release Notes +draft: false +--- + +# Release Notes: Migration from v2.x.x to v3.0.0 + +- Version: 3.0.0 +- Type: Major Release (Breaking Changes in the GraphAPI) +- [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.0.0) + +## Who Is Affected? + +This release introduces a breaking change in the GraphAPI. +If you are using OpenCloud only through official clients (Web, Desktop, or Mobile), no migration is needed. + +If you're using any other software that utilizes the GraphAPI, that software might need to be adjusted to follow the new behavior of the GraphAPI. + +## Key Changes + +The following endpoints of the GraphAPI were changed in a way that is not backwards compatible with the previous releases: + +```http +GET /v1.0/me/drives/ +GET /v1.0/drives/ +GET /v1beta1/drives/ +GET /v1beta1/me/drives/ +``` + +:::note +Due to performance optimizations, these endpoints no longer automatically expand all permissions on the drives root items. If needed, the permissions can be explicitly requested via the appropriate $expand query option. +::: diff --git a/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade-4.0.0.md b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade-4.0.0.md new file mode 100644 index 00000000..0b48f030 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade-4.0.0.md @@ -0,0 +1,241 @@ +--- +sidebar_position: 2 +id: upgrade-4.0.0 +title: Upgrade 4.0.0 +description: Upgrading to 4.0.0 +draft: false +--- + +import Tabs from '@theme/Tabs' +import TabItem from '@theme/TabItem' + +# Upgrading to OpenCloud 4.0.0 + +This guide explains how to upgrade from the previous stable opencloud_full Compose setup to the new +[opencloud-compose](https://github.com/opencloud-eu/opencloud-compose.git) repository structure. +It covers both types of persistent storage used in earlier deployments: + +- Bind mounts: host directories mapped into containers. +- Docker named volumes: volumes managed directly by Docker. + +Following this guide, you can safely migrate to the stable v4.0.0 release of OpenCloud. + +## Before You Begin + +- Determine Your Deployment Type: This guide covers two common setups: + - Bind Mounts: Config and data are stored in directories on the host machine (e.g., `/mnt/opencloud/config`). + - Docker Named Volumes: Config and data are managed by Docker. You will need your `COMPOSE_PROJECT_NAME` to access them. +- Check Paths: If you are using bind mounts, ensure you know the correct paths on your host system. You can find them by inspecting your current container's `docker run` command or `docker-compose.yml` file (look for `volumes:` sections that map to host paths). For a running container, `docker inspect opencloud_full-opencloud-1` also exposes this information in the `Mounts` section. + +## Backup Config and Data + +:::important +Important: Always create a backup before upgrading to prevent data loss. +We strongly recommend following the [backup documentation](/docs/admin/maintenance/backup) and creating copies of your configuration and data directories. +::: + + +If your config and data are stored in host directories (bind mounts), create a direct copy of these folders. + +### Example (adjust paths to match your setup) + +```bash +cp -a /mnt/opencloud/config /mnt/opencloud/config-backup +cp -a /mnt/opencloud/data /mnt/opencloud/data-backup +``` + + + + + +### Create backup directory + +```bash +mkdir -p ~/opencloud-backups +``` + +### Backup config and data + +```bash +docker cp opencloud_full-opencloud-1:/var/lib/opencloud ~/opencloud-backups/data-backup +docker cp opencloud_full-opencloud-1:/etc/opencloud ~/opencloud-backups/config-backup +``` + + + + + +## Stop OpenCloud + +First, gracefully stop your currently running OpenCloud instance: + + + + + +```bash +docker stop opencloud +``` + + + + + +```bash +docker compose stop +``` + + + + + +## Pull the 4.0.0 Production Release Image + +```bash +docker pull opencloudeu/opencloud:4.0.0 +``` + +## Update Deployment Configuration + + + + + +### Clone the opencloud-compose Repository + +Clone the official opencloud-compose repository onto your server: + +```bash +git clone https://github.com/opencloud-eu/opencloud-compose.git +cd opencloud-compose +``` + +### Migrate Environment Variables + +Transfer your existing environment variables to the new opencloud-compose structure. Refer to the [Docker Compose configuration documentation](/docs/admin/getting-started/container/docker-compose/docker-compose-base.md) for detailed instructions. + + + + + +## Verify Configuration Changes + +Go inside the container: + +If your config is stored in host directories (change `` to your home directory. In our example it is `/mnt` ): + +```bash +docker run --rm -it --entrypoint /bin/sh -v /opencloud/opencloud-config:/etc/opencloud opencloudeu/opencloud:4.0.0 +``` + +or, if you use Docker Named Volumes (replace ``with your volume name. In our example it is `opencloud_full_opencloud-config`): + +```bash +docker run --rm -it --entrypoint /bin/sh \ + -v :/etc/opencloud \ + opencloudeu/opencloud:4.0.0 +``` + +Check for configuration changes: + +```bash +opencloud init --diff +``` + +Example output: + +```bash +opencloud init --diff +Do you want to configure OpenCloud with certificate checking disabled? + This is not recommended for public instances! [yes | no = default] yes +running in diff mode +diff -u /etc/opencloud/opencloud.yaml /etc/opencloud/opencloud.yaml.tmp +--- /etc/opencloud/opencloud.yaml ++++ /etc/opencloud/opencloud.yaml.tmp +@@ -3,6 +3,7 @@ + machine_auth_api_key: k55Y7i3Djeeu4aPPNzM67Q39rf3ZHz^9 + system_user_api_key: GeTXN@Mj7-4n8Yhuwb&#oq8Gb1hF7Q%^ + transfer_secret: ANy#T5.IvknED9-Ud39+YmlXzN^TdaKi ++url_signing_secret: zB#FtAYid24Z^DkuBoTllnId=igo!tCO + system_user_id: 8cc36d34-cd87-4434-b9e2-726e5553609c + admin_user_id: 34a73600-a02c-4064-8aec-341cd1865a71 + graph: + +diff written to /etc/opencloud/opencloud.config.patch +``` + +Apply any necessary changes to `/etc/opencloud/opencloud.yaml` based on the diff output. In this example, add `url_signing_secret` to your `opencloud.yaml`. + +## Start OpenCloud (v4.0.0) + + + + + +```bash +docker run \ + --name opencloud \ + --rm \ + -d \ + -p 9200:9200 \ + -v $HOME/opencloud/opencloud-config:/etc/opencloud \ + -v $HOME/opencloud/opencloud-data:/var/lib/opencloud \ + -e OC_INSECURE=true \ + -e PROXY_HTTP_ADDR=0.0.0.0:9200 \ + -e OC_URL=https://localhost:9200 \ + opencloudeu/opencloud:4.0.0 +``` + + + + + +## Important Note for Existing Deployments + +If you previously deployed OpenCloud using the project name `opencloud_full` (our earlier example) and are now switching to the official [opencloud-compose](https://github.com/opencloud-eu/opencloud-compose) repository, you may need to specify the original project name to ensure: + +- Network compatibility - for services like S3 that need to be on the same network +- Volume persistence - to access existing Docker volumes + +Run the command with your original project name: + +```bash +docker compose -p opencloud_full up -d +``` + +Alternatively, set the project name permanently in the .env file: + +```bash +COMPOSE_PROJECT_NAME=opencloud_full +``` + +Then use the standard command: + +```bash +docker compose up -d +``` + + + + + +## Verification + +Your OpenCloud instance should now be running on `v4.0.0`. + +### Essential Checks + +- User Accounts — Confirm all users can log in successfully +- Shared Folders — Verify shared folder permissions and access +- Public Links — Test that public links remain functional +- Data Integrity — Ensure all files and folders are accessible +- Service Health — Check logs for any errors or warnings + +## Troubleshooting + +If you encounter issues during or after the upgrade: + +1. Review the logs for error messages +2. Consult the [troubleshooting guide](/docs/admin/resources/common-issues) +3. Restore from backup if necessary +4. Contact support or open an issue on [GitHub](https://github.com/opencloud-eu/opencloud/issues) diff --git a/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade.md b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade.md new file mode 100644 index 00000000..d16fa90b --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/maintenance/upgrade/upgrade.md @@ -0,0 +1,88 @@ +--- +sidebar_position: 1 +id: update +title: Upgrade +description: Keep your setup up to date with the latest features! +draft: false +--- + +# Upgrade + +import Tabs from '@theme/Tabs' +import TabItem from '@theme/TabItem' + +This guide provides steps to upgrade OpenCloud for both [docker](docs/admin/getting-started/container/docker.md) and [docker compose](docs/admin/getting-started/container/docker-compose/docker-compose-base.md) + +## Stop OpenCloud + +Stop the currently running OpenCloud instance: + + + + ```Shell + docker stop opencloud + ``` + + + ```Shell + docker compose stop + ``` + + + +## Backup Config and Data + +It is recommended to create a [backup](/docs/admin/maintenance/backup) before proceeding with the upgrade. + +## Pull the new Opencloud version + +```bash +docker pull opencloudeu/opencloud:{tag} +``` + +## Verify Configuration Changes + +If upgrading from an older release, check for required configuration changes: + +Go inside the container: + +```bash +docker run --rm -it --entrypoint /bin/sh -v $HOME/opencloud/opencloud-config:/etc/opencloud opencloudeu/opencloud:{tag} +``` + +```bash +opencloud init --diff +``` + +If you see `no changes, your config is up to date`, no further action is needed. Otherwise, update your `opencloud.yaml` file accordingly and start OpenCloud. + +init -diff + +## Start OpenCloud with updated image + + + + ```Shell + docker run \ + --name opencloud \ + --rm \ + -it \ + -p 9200:9200 \ + -v $HOME/opencloud/opencloud-config:/etc/opencloud \ + -v $HOME/opencloud/opencloud-data:/var/lib/opencloud \ + -e OC_INSECURE=true \ + -e PROXY_HTTP_ADDR=0.0.0.0:9200 \ + -e OC_URL=https://localhost:9200 \ + opencloudeu/opencloud:{tag} + ``` + + + ```Shell + OC_DOCKER_IMAGE=opencloudeu/opencloud OC_DOCKER_TAG=tag docker compose up -d + ``` + + + +## Conclusion + +Make sure that all previously created data, users, shared files, public links exist. diff --git a/versioned_docs/version-4.0.0/admin/resources/_category_.json b/versioned_docs/version-4.0.0/admin/resources/_category_.json new file mode 100644 index 00000000..f15580f8 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Resources", + "position": 5, + "link": { + "type": "generated-index", + "description": "Resources", + "slug": "admin/resources" + } +} diff --git a/versioned_docs/version-4.0.0/admin/resources/common-issues.md b/versioned_docs/version-4.0.0/admin/resources/common-issues.md new file mode 100644 index 00000000..0c5b28af --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/common-issues.md @@ -0,0 +1,146 @@ +--- +sidebar_position: 4 +id: common-issues +title: Common Issues & Help +description: Common issues & help +draft: false +--- + +# Common Issues & Help + +## Check whether the containers are running + +```bash +docker ps +``` + +Admin general + +Several containers should be listed here, e.g., for opencloud, traefik, etc. + +## Accept Self-Signed Certificates + +As the local environment is self-signed, you must accept the security risk in your browser. + +For Firefox: + +You need to click on Advanced + +Admin general + +Confirm the risk with Accept the risk and Continue + +Admin general + +## Docker Permission Issues + +If your Docker Compose setup fails to start and the logs contain messages such as `permission denied`, it's likely due to incorrect ownership of local directories used by the containers. + +Example log output: + +```bash +opencloud-1 | {"level":"fatal","service":"nats","time":"2025-04-08T09:59:59Z","line":"github.com/opencloud-eu/opencloud/services/nats/pkg/logging/nats.go:33","message":"Can't start JetStream: could not create storage directory - mkdir /var/lib/opencloud/nats: permission denied"} +``` + +This error typically occurs when the mounted directories are owned by the wrong user, such as `root`, instead of the standard Docker user (`UID 1000`). + +Incorrect directory ownership: + +```bash +drwxr-xr-x 3 root root 4096 Apr 8 09:59 opencloud-data +``` + +Correct ownership should be: + +```bash +drwxr-xr-x 9 1000 1000 4096 Apr 7 07:57 opencloud-data +``` + +To resolve this issue, adjust the ownership of the directory using the `chown` command: + +```bash +chown -R 1000:1000 opencloud-data +``` + +:::caution +Security Warning + +The user with UID 1000 on your host system will have full access to these mounted directories. This means that any local user account with this ID can read, modify, or delete OpenCloud config and data files. + +This can pose a security risk in shared or multi-user environments. Make sure to implement proper user and permission management and consider isolating access to these directories. + +::: + +Ensure you apply this to all relevant folders that are mounted into your containers. This will grant the Docker container the necessary permissions to access and write to these directories. + +## Change Admin Password Set in `.env` + +If you initially set the OpenCloud admin password using the `.env` file, please note: + +:::caution +You cannot simply change the password again by editing the `.env` file. +Once the container is running, password changes must be made via the Web UI or terminal. +::: + +### Option 1: Change via Web UI + +If the current admin password is known: + +1. Log in to the OpenCloud Web Interface. +2. Navigate to Settings > Security. +3. Enter your current password and choose a new one. + +> If the admin password is forgotten or you prefer command-line tools, use the terminal method below. + +### Option 2: Change via Terminal + +If the admin password is forgotten or needs to be changed via the terminal: + +#### Stop the Docker container + +First, stop your OpenCloud container: + +```bash +docker compose stop opencloud +``` + +#### Run the password reset command + +Use the following command to reset the password: + +```bash +sudo docker run -it --rm -v :/var/lib/opencloud -v :/etc/opencloud opencloudeu/opencloud: idm resetpassword +``` + +#### Replace + +`` – Docker volume for OpenCloud data + +`` – Docker volume for OpenCloud config + +`` – Use latest or your specific version + +🔍 How to find the volume names +You can list your current Docker volumes with: + +```bash +docker volume ls +``` + +Look for volumes like: + +`opencloud-compose_opencloud-data` + +`opencloud-compose_opencloud-config` + +#### Example for standard setup + +```bash +sudo docker run -it --rm -v opencloud-compose_opencloud-data:/var/lib/opencloud -v opencloud-compose_opencloud-config:/etc/opencloud opencloudeu/opencloud:latest idm resetpassword +``` + +#### Start the container again + +```bash +docker compose up -d +``` diff --git a/versioned_docs/version-4.0.0/admin/resources/demo-user.md b/versioned_docs/version-4.0.0/admin/resources/demo-user.md new file mode 100644 index 00000000..957bfe5d --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/demo-user.md @@ -0,0 +1,97 @@ +--- +sidebar_position: 5 +id: demo-user +title: Demo User +description: Demo User Overview +draft: false +--- + +# Demo User Overview + +This page introduces the pre-configured demo users available in OpenCloud. These users are designed to help you explore the platform’s features, test different roles, and experience OpenCloud from various perspectives without setting up new accounts. + +Each demo user has specific permissions and access levels, allowing you to simulate real-world scenarios such as admin management, file sharing, and collaboration. + +Below, you’ll find details about each user, including their roles and login credentials. + +| Name | User Name | Password | Role | Group membership | +| :------------------ | :-------: | :------: | :---------: | :----------------------------------------------: | +| Dennis Ritchie | dennis | demo | Admin | basic-haters, programmers, unix-lovers, users | +| Margaret Hamilton | margaret | demo | Space Admin | apollos, programmers, users | +| Alan Turing | alan | demo | User | chess-lovers, machine-lovers, programmers, users | +| Lynn Conway | lynn | demo | User | programmers, users, vlsi-lovers | +| Mary Kenneth Keller | mary | demo | User | bible-readers, users | + +## Dennis Ritchie + +OpenCloud Username: dennis + +Role: Admin + +Co-developer of UNIX & inventor of the C programming language + +Dennis Ritchie + +- Studied physics and applied mathematics at Harvard University +- Worked at Bell Labs from 1967, where he developed the first version of the Unix operating system +- Died in 2011, but his influence on modern software development remains immeasurable + +## Margaret Hamilton + +OpenCloud Username: margaret + +Role: Space Admin + +Software pioneer & NASA developer + +Margaret Hamilton + +- Studied mathematics at Earlham College +- Developed the on-board flight software for NASA as a software engineer at MIT +- Her work was crucial to the success of the Apollo 11 mission in 1969 +- From 1976 to 1984, she was the Managing Director of Higher Order Software (HOS) + +## Alan Turing + +OpenCloud Username: alan + +Role: User + +Father of modern computer science & codebreaker in the Second World War + +Alan Turing + +- British logician, mathematician, and computer scientist +- Developed the theoretical foundations of modern computer technology +- Made a decisive contribution to the decryption of the German Enigma cipher +- Was discriminated against and persecuted because of his homosexuality + +## Lynn Conway + +OpenCloud Username: lynn + +Role: User + +Computer scientist & microchip design pioneer + +Lynn Conway + +- Studied electrical engineering at Columbia University +- Developed VLSI design methodology, revolutionizing microchip development +- Worked at IBM, but was dismissed after gender transition; later contributed at Xerox PARC +- Professor of electrical engineering and computer science at the University of Michigan +- Advocate for transgender rights and diversity in STEM fields + +## Mary Kenneth Keller + +OpenCloud Username: mary + +Role: User + +First woman with a PhD in computer science + +Mary Kenneth Keller + +- Was a nun and studied mathematics (Bachelor & Master of Science) +- First woman to work at Dartmouth College's Computer Science Center +- Founded and chaired the first computer science department at Clarke University, Iowa, for over 20 years diff --git a/versioned_docs/version-4.0.0/admin/resources/faq.md b/versioned_docs/version-4.0.0/admin/resources/faq.md new file mode 100644 index 00000000..ac13880a --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/faq.md @@ -0,0 +1,342 @@ +--- +sidebar_position: 1 +id: faq +title: FAQ +description: Frequently asked questions FAQ +draft: false +--- + +# FAQ + +Welcome to the frequently asked questions (FAQ). Here you will find answers to the most common questions. + +## General Questions + +
+What problem does OpenCloud solve for me? + +### Simplified Administration + +OpenCloud is designed to be straightforward to set up and manage, allowing administrators to handle the system with minimal effort and without unnecessary complexity. + +### Independent File-sharing + +OpenCloud is designed to give you a privacy-focused alternative to mainstream platforms like Microsoft OneDrive or Google Drive, freeing you from reliance on big tech services and their data-collection practices. + +
+ +
+How does OpenCloud differ from other open source file sharing applications? + +OpenCloud is simpler and more reliable than existing PHP-based solutions. OpenCloud stands out by offering a radically simplified architecture compared to other open-source file-sharing solutions. While many alternatives require maintaining complex stacks involving multiple components like PHP, MySQL, Redis, and Apache — creating a web of dependencies and potential security risks—OpenCloud avoids this entirely. It writes data directly to disk instead of relying on a dedicated database, making it much easier to maintain and far more reliable. With OpenCloud, you can focus on your files without worrying about intricate setups or data loss risks. + +
+ +
+Is OpenCloud 100% open source? + +Yes. The source code of OpenCloud is licenced under the Apache 2 licence. + +
+ +## Cost and Licensing + +
+Is OpenCloud free to use? + +Yes, please! + +
+ +
+Can I use it for commercial purposes? + +Absolutely! + +
+ +
+If OpenCloud is free, how are the employees paid? + +We're glad you asked. +We provide a paid support subscription, see [https://opencloud.eu/en/product/service-and-support](https://opencloud.eu/en/product/service-and-support). With a support subscription you’ll be the first to know about security vulnerabilities and receive detailed instructions on how to address them or how to integrate OpenCloud into your existing systems and storage. We also provide Long-Term-Support if you don't want to upgrade your system so frequently. + +
+ +
+Are there educational or non-profit discounts or support plans? + +Please contact sales for such inquiries and we'll find a good solution. + +
+ +## Privacy and Security + +
+Does OpenCloud comply with privacy regulations such as GDPR or HIPAA? + +Yes, of course! + +
+ +## Features and Functionality + +
+What types of files can I store and share with OpenCloud? + +No restrictions. You can store and share any filetype. If necessary, you can restrict the upload of certain filetypes like .exe or documents with macros like xlsm. + +
+ +
+Is there an upload file size limit in OpenCloud? + +Nope. + +
+ +
+Does OpenCloud support real-time collaboration and editing? + +Yes. We use the WOPI standard for realtime collaboration in the web office application Collabora. + +
+ +
+Can I create and manage user accounts and permissions? + +Yes, you can either use the built-in user management system or integrate OpenCloud with your existing identity management. + +
+ +
+Are there mobile apps, and do they offer the same features as the desktop version? + +We provide apps for Windows, MacOS, Linux, iOS and Android. Please refer to the roadmap to see when the apps will be available: [https://opencloud.eu/roadmap](https://opencloud.eu/roadmap) + +
+ +
+Does OpenCloud support versioning? + +Yes. In case you made a mistake, you can always jump back to older versions of a file. We got your back! + +
+ +## Deployment and Installation + +
+Can I self-host OpenCloud on my own server? + +Yes and we encourage you to do so! (We do not provide a SaaS service that stores your files on our servers, like Google Drive or Microsoft OneDrive do.) + +
+ +
+What are the system requirements for hosting OpenCloud? + +The system requirements for hosting OpenCloud depend heavily on the number of concurrent users and the workload they generate, such as the frequency of their requests. OpenCloud is versatile—it can run on anything from a Raspberry Pi to a large data center setup. + +For example, a Raspberry Pi 4 can support hundreds of registered users, but the key factor is the number of users actively using the system at the same time. Concurrent users, especially those using desktop or mobile clients (which frequently check for updates), require more resources. Additional features like the web office integration Collabora or antivirus scanning also impact performance. + +For a minimal setup, OpenCloud can comfortably support 20 concurrent users browsing files via the web interface. As your user base or workload increases, scaling the hardware accordingly will ensure smooth performance. A factor to scale performance is just to add storage, as OpenCloud needs storage IOPS for performance. + +Key Factors for Optimal Performance: + +- Storage IOPS: The performance of OpenCloud highly relies on the amount of IOPS of your storage - the more, the better. +- Network throughput: Another factor for enhancing the performance of OpenCloud is network throughput in distributed storage. + +
+ +
+How difficult is it to set up, and is technical expertise required? + +One of our goals is to make the deployment of OpenCloud as simple as possible. Depending on your experience, it's possible to set up a basic OpenCloud instance in less than 1 minute. See [the Quick Start](https://docs.opencloud.eu/docs/admin/intro) + +
+ +
+Can it be deployed in a Docker or Kubernetes environment? + +Yes. + +- Docker Compose: The docker compose files are maintained and tested by us. +- Community HELM charts: Feel free to contribute! + +
+ +## Customization and Extensibility + +
+Can I add modifications like add-ons or extensions? + +Yes, OpenCloud allows you customizations: + +- Wordings: You can replace specific terms, such as changing the word “Spaces” to “Datarooms” to better fit your terminology. +- Extensions: The web UI also supports custom web extensions. Check out our developer documentation [here] to learn how to get started with creating and adding your own extensions and find existing extensions [here]. + +
+ +## Collaboration and Sharing + +
+How does file sharing work within OpenCloud? + +OpenCloud offers three main ways to share files, making it easy to collaborate and manage access: + +### Personal Share + +Share files with registered users within your organization. You can assign permissions such as view, edit, or download, providing flexible control over file access. + +### Share via Link + +Share files with anyone, even outside your organization, by generating a link. No account is required for accessing the file. + +### Spaces + +Spaces are user-independent datarooms that belong to the organization rather than an individual. This ensures files remain within the organization, even if users leave. Examples of Spaces include school classes, collaborative projects, or organizational units like Marketing, Sales, or Finance. Spaces are easier for admins to manage, as they can be self-managed by designated users. + +### Special Feature: Secret File Drop + +The Secret File Drop allows anonymous users to securely upload files (e.g., homework, photos or even whistleblower material) without needing an account. + +
+ +
+Can I share files with external users? + +Yes. You can share files with anyone, even outside your organization, by generating a link. No account is required for accessing the file. Link sharing can be disabled if needed. + +
+ +
+Does it support federated sharing between different instances? + +Yes, federated sharing is possible via Open Cloud Mesh (OCM). This feature allows you to securely share files and collaborate across different instances, even if they are hosted by different organizations. + +For example, a company with multiple branches in different regions could use OCM to share files between instances, enabling collaboration across teams while maintaining control over local data. + +
+ +
+Are there limits on the number of users or size of files shared? + +No. + +
+ +## Data Management + +
+Where is my data stored, and can I choose the storage location? + +OpenCloud is a fully self-hosted (on-premise) solution, meaning you have complete control over where your data is stored. You can choose the server and country where OpenCloud will be installed. Unlike SaaS services like Google Drive or Microsoft OneDrive, which store your files on their servers, OpenCloud gives you full control over your data, ensuring privacy and security on your terms. + +
+ +
+Does it support integration with third-party storage solutions like S3 Storage? + +Yes, the following storage can be used: + +- Posix Storage +- S3ng +- Ceph + +
+ +## Support and Community + +
+How often is OpenCloud updated, and how are updates delivered? + +Download updates on download.opencloud.eu or via docker hub. + +OpenCloud is released in three different release types: Production, Rolling and Daily. Each of them is targeted to a specific use case and audience group. + +
+ +## Migration + +
+Can I migrate from ownCloud or Nextcloud? + +Yes, there will be a migration available in 2025. + +
+ +## Compliance and Legal + +
+Is OpenCloud compliant with GDPR (DSGVO) or HIPAA? + +Yes, of course! + +
+ +
+Is the OpenCloud Web UI accessible according to EN 301 549 / WCAG / BITV 2.0? + +Yes, the OpenCloud Web UI is accessible according to EN 301 549, WCAG, and BITV 2.0. We believe that accessibility is important for everyone, not just for individuals with disabilities, as it benefits all users at some point in their lives. + +As we release new features every 3 weeks, we ensure that accessibility is integrated into the feature development lifecycle. While we strive to maintain high accessibility standards, we’re only human and occasional mistakes may happen. If a new feature unintentionally impacts accessibility, we treat it as a bug and address it in the next release. + +If you encounter any accessibility violations, please let us know so we can promptly resolve the issue. + +
+ +
+Can access controls and permissions be configured to meet regulatory requirements? + +Yes, OpenCloud offers robust access control and permission settings that can be fully configured to meet various regulatory requirements. You can define user roles, assign specific permissions, and set up granular access controls to ensure compliance with industry standards and regulations such as GDPR, HIPAA, and others. With OpenCloud, you have the flexibility to control who accesses your data, what actions they can perform, and how data is shared, ensuring that your system remains secure and compliant with the required regulations. + +
+ +
+How does it handle requests for data access or deletion under GDPR? + +OpenCloud provides users with the ability to trigger a GDPR Export in a self-service manner. This export generates a detailed report of all personal data stored in the context of OpenCloud, excluding the user’s own files. The report includes relevant data related to the user’s account and activity within the system, ensuring transparency and compliance with GDPR requirements. For the deletion of personal files, users have full control to manage and remove their own data as needed. + +
+ +## Miscellaneous + +
+Does OpenCloud offer multi-language support? + +Yes, OpenCloud fully maintains both English and German languages. Additionally, the web UI offers support for other languages, which are listed below. Please note that these languages are not 100% translated and are maintained by the community on a best-effort basis. We appreciate the contributions from our community to help improve the language support over time. + +Community maintained languages: + +- Albanian +- Afrikaans +- Arabic +- Bosnian +- Bulgarian +- Chinese +- Croatian +- Czech +- Estonian +- French +- Galician +- Georgian +- Greek +- Hebrew +- Indonesian +- Italian +- Japanese +- Korean +- Dutch +- Polish +- Portuguese +- Romanian +- Russian +- Serbian +- Sinhala +- Slovak +- Spanish +- Swedish +- Turkish +- Ukrainian + +
diff --git a/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-accept-security-risk.png b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-accept-security-risk.png new file mode 100644 index 00000000..69606873 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-accept-security-risk.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-advanced.png b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-advanced.png new file mode 100644 index 00000000..ce4ef77f Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-advanced.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-docker-running.png b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-docker-running.png new file mode 100644 index 00000000..5e0cde78 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/common-issues/quick-docker-running.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/admin.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/admin.png new file mode 100644 index 00000000..6c6a319d Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/admin.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/alan-turing.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/alan-turing.png new file mode 100644 index 00000000..7adc97d2 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/alan-turing.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/dennis-ritchie.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/dennis-ritchie.png new file mode 100644 index 00000000..baa33575 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/dennis-ritchie.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/lynn-conway.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/lynn-conway.png new file mode 100644 index 00000000..dc0892b1 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/lynn-conway.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/margaret-hamilton.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/margaret-hamilton.png new file mode 100644 index 00000000..023748be Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/margaret-hamilton.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/demo-user/mary-kenneth-keller.png b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/mary-kenneth-keller.png new file mode 100644 index 00000000..699ac496 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/demo-user/mary-kenneth-keller.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/Release Cycle OpenCloud.png b/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/Release Cycle OpenCloud.png new file mode 100644 index 00000000..9b950d11 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/Release Cycle OpenCloud.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/semver.png b/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/semver.png new file mode 100644 index 00000000..c8181a00 Binary files /dev/null and b/versioned_docs/version-4.0.0/admin/resources/img/lifecycle/semver.png differ diff --git a/versioned_docs/version-4.0.0/admin/resources/lifecycle.md b/versioned_docs/version-4.0.0/admin/resources/lifecycle.md new file mode 100644 index 00000000..edc6ef21 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/lifecycle.md @@ -0,0 +1,71 @@ +--- +sidebar_position: 2 +id: lifecycle +title: Release Lifecycle +description: Release Lifecycle +draft: false +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +## Release Types + +OpenCloud offers three release types to suit different needs: Rolling, Production, and LTS. For most users, Rolling is ideal, providing the latest features every few weeks. Production focuses on stability. LTS (Long-Term Support Release) is designed specifically for businesses that need longevity and extended backports. + +Release types + +### Advantage of the LTS Releases + +With LTS, businesses can continue using an older production release without needing to upgrade to the latest version, while still receiving critical security patches and critical stability fixes. This makes LTS the perfect choice for organizations seeking a stable long-term solution. LTS is available exclusively to customers with a service and support entitlement through a business license. + +| Rolling | Production | LTS | +| :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +|
  • For enthusiasts
  • Contains latest features
  • Every 3 weeks
  • Automated quality assurance
  • Community supported
  • Documentation on best effort
|
  • For production
  • Focus on stability
  • About every 6 months
  • Full quality assurance
  • Professional support
  • Documented
|
  • For production
  • Focus on longevity
  • Backports for 2 years
  • Full quality assurance
  • Professional support
  • Documented
| + +## Release Dates + + + + | Version | Release Date | Release Notes & Download| + |:--------|:-------------|:--------------| + | - | 2026 January 5 | - | + | - | 2025 December 15 | - | + | - | 2025 November 24 | - | + | v3.7.0 | 2025 November 3 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.7.0) | + | v3.6.0 | 2025 October 27 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.6.0) | + | v3.5.0 | 2025 September 22 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.5.0) | + | v3.4.0 | 2025 September 2 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.4.0) | + | v3.3.0 | 2025 August 11 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.3.0) | + | v3.2.0 | 2025 July 21 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.2.0) | + | v3.1.0 | 2025 June 30 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.1.0) | + | v3.0.0 | 2025 June 10 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v3.0.0) | + | v2.3.0 | 2025 May 19 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.3.0) | + | v2.2.0 | 2025 April 28 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.2.0) | + | v2.1.0 | 2025 April 07 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.1.0) | + | v2.0.0 | 2025 March 26 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.0) | + | v1.1.0 | 2025 March 18 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v1.1.0) | + | v1.0.0 | 2025 February 24 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v1.0.0) | + + + + | Version | Release Date | Release Notes & Download | + |:--------|:-------------|:--------------| + | - | 2025 December 1 | - | + | v2.0.5 | 2025 October 29 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.5) | + | v2.0.4 | 2025 July 16 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.4) | + | v2.0.3 | 2025 June 10 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.3) | + | v2.0.2 | 2025 May 2 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.2) | + | v2.0.1 | 2025 April 28 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.1) | + | v2.0.0 | 2025 March 26 | [Details · Download](https://github.com/opencloud-eu/opencloud/releases/tag/v2.0.0) | + + + LTS Releases will be availabile as the second Production Releases will be published. Until then a LTS release makes no sense. + + + +## Versioning Scheme: Semantic Versioning + +OpenCloud follows [Semantic Versioning](https://semver.org/), also known as SemVer. Version numbers are structured as MAJOR.MINOR.PATCH. Breaking changes increase the MAJOR version, new backward-compatible features increase the MINOR version, and backward-compatible bug fixes increment the PATCH version. + +Semantic Versioning diff --git a/versioned_docs/version-4.0.0/admin/resources/whats-new.md b/versioned_docs/version-4.0.0/admin/resources/whats-new.md new file mode 100644 index 00000000..a8e6f734 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/resources/whats-new.md @@ -0,0 +1,11 @@ +--- +sidebar_position: 1 +id: whats-new +title: What's New +description: Release notes +draft: false +--- + +# Release notes + +Please find the [Release notes on Github](https://github.com/opencloud-eu/opencloud/releases/latest). diff --git a/versioned_docs/version-4.0.0/admin/welcome/_category_.json b/versioned_docs/version-4.0.0/admin/welcome/_category_.json new file mode 100644 index 00000000..94a4e637 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/welcome/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Welcome", + "position": 1 +} diff --git a/versioned_docs/version-4.0.0/admin/welcome/datasheet.md b/versioned_docs/version-4.0.0/admin/welcome/datasheet.md new file mode 100644 index 00000000..eb8fc492 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/welcome/datasheet.md @@ -0,0 +1,72 @@ +--- +sidebar_position: 2 +id: datasheet +title: Datasheet +description: Datasheet +draft: false +--- + +## Deployment Options + +| Category | Details | +| :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Types |
  • On-Premises
  • Managed Service: Available through partners
  • SaaS: Available through partners
| +| Container (recommended) |
  • Docker Compose or Podman
  • Kubernetes Helm Charts (available with a [business subscription](https://opencloud.eu/en/product/service-and-support) )
| +| Bare-Metal (not officially supported) |
  • OpenCloud can run as a single binary. However, integrating additional services like Collabora, Apache Tika for search, or antivirus is not documented. Bare-metal deployments are not officially supported by OpenCloud. They are great for quick evaluation but are undocumented and have a minimalist feature set.
| + +## Backup + +| Category | Details | +| :-------------- | :------------------------------------------------------------------------------------------------------------------------------------------- | +| Backup strategy |
  • Snapshots: Backups can be easily done solely through storage snapshots, eliminating the need for complex database backups.
| + +## Security + +| Category | Details | +| :------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Encryption |
  • Transport Encryption: TLS
  • Server-Side Encryption: S3 SSE
  • E2EE Client-Side Encryption: Handled exclusively via OS-native encryption
| +| Access management |
  • RBAC (Role-Based Access Control)
  • 2FA / MFA
  • SSO (LDAP, SAML, OAuth)
| +| Auditing & Logging |
  • Detailed logs, audit trails, monitoring APIs
| +| File Firewall |
  • Prevent upload of restricted filetypes based on a allow- or denylist.
| +| Antivirus |
  • ClamAV (default)
  • ICAP: Integrate 3rd party anti-virus scanner via Internet Content Adaptation Protocol (ICAP)
| +| Data Loss Prevention |
  • Collabora Secure View
| + +## Identity Management + +| Category | Details | +| :--------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Integrated |
  • Integrated user and group management (LibreIDM) for up to 500 users. Designed for standalone or small-sized deployments that do not rely on third-party identity services, usually for friends and family.
| +| External |
  • OpenID Connect (OIDC): Integration of external identity providers via Keycloak.
  • Integration of Azure AD, EntraID, ADFS
| + +## Compliance + +| Regulation | Details | +| :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| EU-GDPR |
  • Compliant
| +| WCAG 2.1 / BITV 2.0 Web Accessibility |
  • Compliant. To prevent accessibility regressions, we treat any accessibility violation as a bug and continuously fix these issues as part of our daily software development lifecycle.
| + +## High Availability + +| Category | Details | +| :-------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Redundancy & Failover |
  • Supported in clustered environments to ensure high availability and system reliability.
  • Automatic failover mechanisms help minimize downtime in case of hardware or software failures.
| + +## Integrations + +| Category | Details | +| :---------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Plugins & Extensibility |
  • Web: Extension system for adding custom functionality.
  • Server: Microservices architecture for modular and scalable server-side extensions
| + +## APIs + +| API | Description | +| :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| WebDAV |
  • Standard file API for remote file transfer over HTTP/HTTPS using TUS for resumable, interruption-tolerant transfers.
| +| GraphAPI |
  • Microsoft Graph API for managing cloud storage and collaboration spaces.
| +| gRPC |
  • High-performance RPC framework for microservice communication.
| +| OCS |
  • API for programmatic file/folder sharing and management.
| +| OCM |
  • Open Cloud Mesh API for federated file and folder sharing between different file cloud platforms like Cernbox, ownCloud, Nextcloud or Seafile .
| +| SSE |
  • Server-sent event stream for real-time client notifications.
| +| WOPI |
  • Microsoft API for integrating Office apps with third-party storage, e.g., Collabora.
| +| KQL |
  • Keyword Query Language (KQL) is a search language to perform advanced searches by filtering and querying structured data, metadata, and documents efficiently.
| +| ICAP |
  • Network protocol for offloading content scanning (e.g., antivirus).
| diff --git a/versioned_docs/version-4.0.0/admin/welcome/features.md b/versioned_docs/version-4.0.0/admin/welcome/features.md new file mode 100644 index 00000000..42962caa --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/welcome/features.md @@ -0,0 +1,431 @@ +--- +sidebar_position: 1 +id: features +title: Features +description: Features +draft: false +--- + +## Key Features at a Glance + +- Seamless File Synchronization: Access your files across all devices. +- Secure & Flexible File Sharing: Share files with granular roles, expiration dates, and password protection. +- Spaces - Collaborative Team Folders: Ensure continuity even if team members leave. +- Real-Time Collaboration: Work on documents simultaneously with Collabora Web Office. +- Advanced Search & Organization: Use full-text search, tags, and filters for quick access. +- Unlimited Storage & Uploads: No file size restrictions. +- Privacy-First Design: Zero-Knowledge principle ensures admins can't access user content. +- Cross-Client Availability: Works on Windows, Mac, Linux, Android, iOS, and Web. + +## File Management + +**Functions for storage, access and organization of files.** + +Full control over storage and access. Seamless operation across all devices. + +### Access from Anywhere + +Files and folders can be opened, synchronized, and shared from any location and device—via browser, desktop client (Windows, macOS, Linux), or mobile apps (iOS, Android). + +### Synchronization Across Devices + +Changes are synchronized automatically across all connected devices, in real time via the respective OpenCloud client. + +### Offline Access + +Users can mark files or folders for offline use to open and edit them without an internet connection. Changes are automatically synced once connectivity is restored. + +### Files On-Demand + +Files can be viewed directly in the device’s File Explorer and are stored efficiently, as they are only downloaded when needed. Large folder structures are immediately accessible without full synchronization, reducing network load and sync overhead. Available on Windows desktop operating systems and mobile clients. + +### Advanced Search + +Files can be found quickly—by title or full text. The search provides live suggestions and supports filtering by file type, modification date, tag, or storage location. + +### Versioning and Recovery + +Every change is automatically saved as a version and can be restored at any time. Administrators can define how many versions to keep and the rules for deleting older versions. + +### No Limit on File Size, Count, or Type + +OpenCloud supports storing any number of files in any format and size. + +### Folders and Tags + +Files can be organized in hierarchical folder structures or with tags. Tags serve as a cross-project taxonomy, while folders typically represent team or project structures. + +### Open Files with Native Applications + +Files in OpenCloud can be opened directly with local programs, edited, and saved back—without manual exporting or importing. Files remain in their original OpenCloud location and keep their permissions, version history, etc. + +### Resuming Interrupted Uploads + +Uploads interrupted by connection issues are automatically resumed. Transfers use the TUS protocol (Resumable Uploads), ensuring even very large files can be uploaded without data loss. + +### Automatic Upload + +New or changed files are automatically uploaded as soon as a connection is available. Users and administrators can define which folders sync automatically, exclude certain file types, and configure parallel uploads. Transfers run in the background and adapt to connection quality and system resources. + +### Integration as a Network Drive + +OpenCloud can be integrated as a network drive in standard operating systems and behaves like a local drive. This uses WebDAV or the native desktop client. + +### Document Scanning via Camera + +Using the mobile app, documents can be captured with the camera, automatically cropped, and saved as PDFs in OpenCloud. + +### Unlimited Storage Space + +There are no system-side limits on the number or size of stored files. Available capacity depends on the deployed server or storage infrastructure. + +### Integrated Preview + +Documents, images, videos, and audio files can be viewed directly in the browser, desktop client, and mobile apps. Common formats are supported. On mobile devices, previews use native viewers or Collabora integration. + +### Personal Storage + +Each user has a private storage area visible only to them by default. Files can be organized, shared, or moved to Spaces from here—ensuring clear separation between personal and shared work areas. + +### Customizable Storage Limits (Quotas) + +Administrators can assign storage limits per user or Space to allocate storage efficiently. + +## Usability & User Experience + +**Simple and blazing fast to use for all user groups.** + +Intuitive usage without training. Accessibility for all users. Consistent, brand-compliant user experience. + +### Fast User Interface + +The application remains responsive even in folders with many files and avoids unnecessary page reloads. Asynchronous updates keep lists and detail views usable without interruptions. + +### Drag & Drop, Multi-Selection, Copy/Paste + +Files can be moved via drag & drop, multiple files can be selected at once, and actions like copy/paste can be performed using keyboard shortcuts—just like in a desktop file manager. Everyday file operations thus become faster and feel familiar. + +### Accessible User Interface + +The OpenCloud web interface is optimized according to the European Accessibility Act (EAA) and WCAG 2.1/BITV 2.0 guidelines for users with visual, motor, or cognitive impairments. It provides clear keyboard navigation, understandable labels, sufficient color contrast, and full screen-reader and focus support—helping organizations meet legal and procurement requirements. + +### Email Notifications + +Users receive email notifications about events such as new shares or membership changes in a Space. + +### Customizable View Modes + +Files can be displayed in list, tile, or compact views. Columns, visible elements, and items per page can be configured to keep large directories tidy. + +### Color Scheme Selection + +Users can switch between light and dark modes to improve readability under different lighting conditions and reduce eye strain. + +### Responsive Design + +The interface adjusts automatically to screen sizes from smartphones to 8K monitors. Navigation and file views remain fully usable without separate desktop or mobile apps. + +### Consistent Look & Feel + +Web, desktop, and mobile apps follow a unified interaction concept. Consistent navigation patterns and icons reduce onboarding time and user errors. + +### Individual Branding + +Administrators can create or customize design themes, including color palettes, logos, backgrounds, and UI elements. A fully accessible theme can be automatically generated from a single corporate color or defined manually. This allows OpenCloud to seamlessly match an organization’s corporate design. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +## Collaboration & Productivity + +**Collaborative work in real time and structured team organization:** Real-time collaboration without additional software. Structured workflows and a unified work environment. + +### Workspaces for Teams and Projects (“Spaces”) + +Spaces are independent work areas that go beyond simple folders. They bundle files, permissions, and responsibilities for projects or departments and can be managed separately—with dedicated owners, rules, and storage limits. This creates a clear separation between personal storage, team/project files, and organization-wide content. + +### Delegated Space Administration + +Project or team leads can manage individual Spaces without requiring global admin rights. Member and permission management can thus be decentralized. + +### Internal Sharing + +Files and folders can be shared with users or groups within the organization. Access rights such as read, edit, or upload can be precisely controlled to ensure secure collaboration. + +### External Sharing + +Content can be shared securely with customers, service providers, suppliers, or authorities via password-protected links or guest accounts (soon). + +### Federation – Sharing Across Sites or Organizations + +Enables secure collaboration between multiple OpenCloud instances, e.g., across branches or subsidiaries. Files are shared directly across servers without creating duplicates. Authentication and access rights are centrally managed. + +### Web Office + +Through Collabora Online integration, office documents can be opened and collaboratively edited directly within the web interface—without local installation. Users can comment, co-edit in real time, and rely on full compatibility with Microsoft Office and OpenDocument formats. + +### Real-Time Editing + +Multiple users can work on the same files simultaneously. Changes sync immediately, and automatic locking mechanisms prevent version conflicts—ensuring smooth co-editing. + +### Calendar and Contacts + +Integration with CalDAV and CardDAV enables teams to manage shared calendars and contact lists directly in OpenCloud. Appointments and deadlines can be linked to files, and shared contacts can be centrally maintained. Compatible with Apple Calendar, Outlook, Thunderbird, Evolution, and others. Note that this feature is not Supported in the business licence. + +## Compliance & Data Protection + +**Protects data and fulfills all legal requirements.** + +Maximum data security and transparent processing. Trusted for regulated industries. + +### Zero-Knowledge Principle + +Administrators can manage Spaces (e.g., cleanup, quota changes) but cannot access its content. This ensures full confidentiality: even admins cannot view user data. + +### Compliance with Data Protection and Security Policies + +OpenCloud meets key international standards such as GDPR, ISO 27001, CCPA, HIPAA, FERPA, SOC 2, and CRA through features like encryption, audit logs, and access controls. Actual certifiability depends on the operational model: self-hosted deployments fall under the operator’s responsibility, while the Business Licence follows auditable, policy-compliant processes. OpenCloud integrates with existing compliance or GRC systems and provides exportable audit data. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### §20 GDPR Personal Data Export + +Includes features that support GDPR compliance (e.g., personal data export according to §20 GDPR.). +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Server-Side Encryption + +Files are encrypted automatically when stored on the server. The key resides securely on the server and protects against physical access or unauthorized access to drives or backups. Combined with TLS in transit, this provides consistent security—but does not prevent admin-level access inside the application (unlike end-to-end encryption). + +### Metadata Encryption + +Sensitive metadata such as file names or tags can also be stored encrypted, preventing third parties from inferring content based on file structure or names. + +### Ransomware Protection + +Files encrypted by an infected user can be restored to their pre-attack state, keeping data safe and available. + +### Audit Logs and Change Tracking + +All security-relevant actions—uploads, shares, deletions, login attempts—are logged. File and metadata changes can be traced down to user level for full transparency. + +### Virus Protection + +Incoming and synchronized files are scanned automatically for malware. OpenCloud uses ICAP interfaces (e.g., for ClamAV, Sophos, Kaspersky) and integrates with existing security gateways. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### File Firewall + +Prevents unsafe file uploads by blocking defined file types (e.g., executables, macros). Admins centrally manage allow/deny lists and apply them to users and Spaces. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Protected Preview with Watermarks + +Documents can be displayed with dynamic watermarks to deter screenshots or unauthorized sharing. Watermarks may include username, timestamp, or organization ID for traceability. Based on “Secure View” using Collabora or OnlyOffice. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +## Identity and Access Management (IAM) + +**Central, secure management of users, roles, and permissions.** + +Centralized user and group management. Secure access across organizational boundaries. Integration with existing identity systems. + +### Password Policies and Generator + +Enforces strong passwords with rules for complexity and expiration. A “Banned Password List” blocks weak patterns (e.g., “Password123”). An integrated generator creates compliant passwords. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Two-Factor Authentication (2FA/MFA) + +Adds a second authentication factor beyond the password. Enforced via the connected identity provider (e.g., Keycloak). Supports TOTP, push notifications, and FIDO2/U2F tokens. + +### Role-Based Access Control (RBAC) + +User rights are assigned centrally via roles reflecting the organizational structure. RBAC simplifies management in complex environments and enables fine-grained control (e.g., link creation rules, password enforcement, preset expiration dates). + +### Biometric Unlock (Touch & Face ID) + +The mobile app can be unlocked using fingerprint or facial recognition, improving security. + +### Multiple Accounts per Client + +Users can use multiple accounts in parallel on desktop and mobile clients, making it easy to switch between work, tenant, and private contexts. + +### LDAP + +OpenCloud supports LDAP systems such as OpenLDAP, FreeIPA, or Univention Directory via secure bindings with filter support. + +### Active Directory + +The Business Licence supports integration with Microsoft Active Directory and Azure Entra ID, including optional managed connectivity for paying customers. + +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Single Sign-On (SSO) + +Users log in with their central company account. Supported protocols include OpenID Connect, LDAP, SAML 2.0, and OAuth 2.0. + +### External Identity Providers (IdP) + +OpenCloud integrates with leading IdPs such as Keycloak, Azure AD, EntraID, or ADFS—ideal for environments with existing directory infrastructures. + +### Share Links + +Content can be shared externally via link, optionally protected with a password and expiration date. Links are quick and simple but offer limited traceability compared to guest accounts. + +### Guest Accounts (soon) + +External users receive personal, password-protected accounts. Their access is fully attributable and auditable, with policies for expiration, 2FA/MFA, and individual revocation—ideal for compliance-sensitive use cases. + +### Session Management + +Administrators can monitor, terminate, or limit user sessions to prevent unauthorized access, especially on shared or remote devices. + +## Operation & Deployment + +**Reliable, scalable, and professional operation.** + +High stability, minimal downtime, secure deployment, and scalable architecture. + +### Snapshots and Backups + +Automated snapshots enable restoring whole instances or individual user areas. Backups can be scheduled and stored locally or externally. Because metadata is stored directly with the files, elements such as versions and tags remain intact during restores or migrations—without dependency on database states. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Security Advisories + +Business Licence customers receive early security notifications about new vulnerabilities, including risk assessments and scheduled patch plans. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Kubernetes Deployment + +OpenCloud can be deployed as containerized microservices in Kubernetes clusters using Helm charts for installation, scaling, and upgrades. Automated orchestration enables load balancing, self-healing, zero-downtime deployments, and dynamic scaling. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Scalable Enterprise Storage Systems + +Integrates storage systems like CephFS, GPFS (IBM Spectrum Scale), or S3-compatible backends to support petabyte-scale volumes with high performance and redundancy. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Performance and Load Optimization + +Optimized for scalability and speed through parallel transfers and distributed I/O. Monitoring with Prometheus and Grafana enables continuous analysis and scaling. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Multi-Tenancy + +Multiple organizational units can be hosted on the same instance—ideal for corporations, public authorities, or service providers. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Metadata Stored in Files + +All metadata, including tags and version information, is stored securely within the system and remains consistent across storage environments. + +### High Availability and Failover + +Redundant nodes can take over operations automatically in case of component failure, preventing downtime. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Long-Term Support (LTS) + +Business customers receive long-term supported versions with security updates and bug fixes—suitable for critical and compliance-sensitive environments. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Installation and Security Check + +Before deployment or upgrades, OpenCloud runs configuration and security checks and provides an assessment with recommendations. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Mass Rollouts + +Clients can be preconfigured with a server address for simplified mass deployment, reducing helpdesk requests. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Guaranteed Upgrade Support + +Supports smooth upgrades across major and minor versions with migration paths for data and accounts. The Business Licence provides validated scripts, compatibility checks, and rollback options. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Service Level Agreements (SLA) + +The Business Licence includes SLAs with defined response and resolution times, priority support, escalation management, and security notifications—ensuring professional operation. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### On-Demand Support + +During planned changes or upgrades, an OpenCloud engineer is available live for immediate troubleshooting and guidance. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Air-Gapped Operation + +OpenCloud can run in isolated networks without internet access. Installation, updates, and extensions occur via internal repositories or offline media. External integrations (e.g., Web Office) can also be hosted on-premises to keep all data within the isolated environment. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +## Integrations & Interfaces + +**Open APIs and extensions for seamless integration and automation.** + +Third-party extensibility and custom development. Open architecture for automation and data exchange. + +### Plugin Architecture + +OpenCloud’s functionality can be extended or customized. The documented developer interface offers hooks, events, and a modular framework for server-side extensions. + +### Client SDKs + +SDKs for Desktop, Mobile, and Web encapsulate OpenCloud’s server interfaces, allowing developers to build client-side applications or integrations without implementing API calls manually. Supported languages include Objective-C, TypeScript, PHP, Go, and C++. + +### Headless and Microservices Architecture + +OpenCloud uses a modern headless architecture that separates UI from backend services. Individual services can be operated, scaled, or developed independently. + +### File and Collaboration APIs + +OpenCloud supports WebDAV for file access and sync, WOPI for office integration, OCS for user and app communication, and OCM for federated sharing across compatible systems. + +### Native REST API + +Provides automation-friendly access to nearly all OpenCloud features—user and rights management, file operations, integration into external systems, and more. + +### Federation API + +Allows connecting multiple OpenCloud or compatible platforms (e.g., Nextcloud, ownCloud). + +### GraphAPI + +Used for communication between clients and the server, inspired by Microsoft Graph. + +### Security, Compliance, and Monitoring APIs + +The Business Licence includes extended APIs for security checks, compliance monitoring, and real-time reporting. ICAP enables external antivirus/DLP integration, KQL supports compliance data analysis, and SSE provides live notifications and monitoring. +:::info supported within the [business licence](https://opencloud.eu/en/product/service-and-support) +::: + +### Custom File Types + +Admins and developers can define custom file types and metadata structures to adapt OpenCloud to industry-specific needs (e.g., medical, legal, industrial). Managed via the plugin system and REST APIs. diff --git a/versioned_docs/version-4.0.0/admin/welcome/index.md b/versioned_docs/version-4.0.0/admin/welcome/index.md new file mode 100644 index 00000000..3b338142 --- /dev/null +++ b/versioned_docs/version-4.0.0/admin/welcome/index.md @@ -0,0 +1,33 @@ +--- +title: Welcome! +slug: /admin/intro +--- + +# Welcome to OpenCloud Admin Docs + +Welcome to OpenCloud, your self-hosted file sharing platform: Secure, simple and reliable. This documentation helps you to get started, configure, and maintain OpenCloud. + +## Quick start + +```bash +curl -L https://opencloud.eu/install | /bin/bash +``` + +## What’s Inside? + +- Getting Started – Set up and deploy OpenCloud +- Configuration – Customize and integrate with existing systems and storage +- Maintenance – Learn how to update, backup and migrate + +## Documentation Versions + +Our documentation is versioned to ensure you always find the right information for your software version. + +- Rolling Version: Reflects the current development state. Changes are continuously added, but the documentation may be incomplete, as new features might not yet be documented. Ideal if you are using a pre-release or development build. +- Stable Release Versions: Documentation for officially released versions — frozen, reviewed, and unchanged since publication. + +You can switch between the Rolling version and specific Release versions using the version menu in the top right corner. + +## Need Help? + +Check our [GitHub Discussion](https://github.com/orgs/opencloud-eu/discussions), or [Matrix Channel](https://matrix.to/#/#opencloud:matrix.org). Let’s get started! diff --git a/versioned_docs/version-4.0.0/dev/cdperf.md b/versioned_docs/version-4.0.0/dev/cdperf.md new file mode 100644 index 00000000..a13c70c3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/cdperf.md @@ -0,0 +1,7 @@ +--- +id: cdperf +title: cdPerf +custom_edit_url: https://github.com/opencloud-eu/opencloud/edit/main/docs/cdperf.md +--- + +The cdPerf documentation can be found here. diff --git a/versioned_docs/version-4.0.0/dev/intro.md b/versioned_docs/version-4.0.0/dev/intro.md new file mode 100644 index 00000000..66629c3a --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/intro.md @@ -0,0 +1,16 @@ +--- +sidebar_position: 1 +id: intro +title: Welcome +custom_edit_url: https://github.com/opencloud-eu/opencloud/edit/main/docs/intro.md +--- + +# Welcome + +Welcome to the OpenCloud Developer Documentation. + +Please be patient, we are working on the content. + +If you want to contribute to the dev docs, please visit [OpenCloud on Github](https://github.com/opencloud-eu/). + +Contents will be transferred during the build process. diff --git a/versioned_docs/version-4.0.0/dev/server/_category_.json b/versioned_docs/version-4.0.0/dev/server/_category_.json new file mode 100644 index 00000000..2d1556d7 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Server", + "position": 2 +} diff --git a/versioned_docs/version-4.0.0/dev/server/apis/_category_.json b/versioned_docs/version-4.0.0/dev/server/apis/_category_.json new file mode 100644 index 00000000..c345e05a --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Apis", + "position": 1 +} \ No newline at end of file diff --git a/versioned_docs/version-4.0.0/dev/server/apis/grpc_apis/index.md b/versioned_docs/version-4.0.0/dev/server/apis/grpc_apis/index.md new file mode 100644 index 00000000..5b6aa07e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/grpc_apis/index.md @@ -0,0 +1,52 @@ +--- +title: gRPC +sidebar_position: 2 +--- + +## **R**emote   **P**rocedure   **C**alls + +[gRPC](https://grpc.io) is a modern open source high performance Remote Procedure Call (RPC) framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking and authentication. It is also applicable in last mile of distributed computing to connect devices, mobile applications and browsers to backend services. + +## Advantages of gRPC + +### 🚀 Performance + +gRPC uses http/2 by default and is faster than REST. When using protocol buffers for encoding, the information comes on and off the wire much faster than JSON. Latency is an important factor in distributed systems. JSON encoding creates a noticeable factor of latency. For distributed systems and high data loads, gRPC can actually make an important difference. Other than that, gRPC supports multiple calls via the same channel and the connections are bidirectional. A single connection can transmit requests and responses at the same time. gRPC keeps connections open to reuse the same connection again which prevents latency and saves bandwidth. + +### 🛡️ Robustness + +gRPC empowers better relationships between clients and servers. The rules of communication are strictly enforced. That is not the case in REST calls, where the client and the server can send and receive anything they like and hopefully the other end understands what to do with it. In gRPC, to make changes to the communication, both client and server need to change accordingly. This prevents mistakes specially in microservice architectures. + +### 🔍 Debuggability + +gRPC requests are re-using the same context and can be tracked or traced across multiple service boundaries. +This helps to identify slow calls and see what is causing delays. It is possible to cancel requests which cancels +them on all involved services. + +### 📦 Microservices + +gRPC has been evolving and has become the best option for communication between microservices because of its unmatched +performance and its polyglot nature. One of the biggest strengths of microservices is the freedom of programming +languages and technologies. By using gRPC we can leverage all the advantages of strictly enforced communication +standards combined with freedom of choice between different programming languages - whichever would fit best. + +:::info gRPC Advantages + +- http/2 +- protocol buffers +- reusable connections +- multi language support + +::: + +## CS3 APIs + +![CS3 Organization](/img/cs3org.png) + +The [CS3 APIs](https://github.com/cs3org/cs3apis) connect storages and application providers. + +The CS3 APIs follow Google and Uber API design guidelines, specially on error handling and naming convention. You can read more about these +guidelines at [Google Api Design](https://cloud.google.com/apis/design) and [Uber Protocol](https://github.com/uber/prototool/blob/dev/style/README.md). + +The CS3 APIs use [Protocol Buffers version 3 (proto3)](https://github.com/protocolbuffers/protobuf) as their +Interface Definition Language (IDL) to define the API interface and the structure of the payload messages. diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/authorization.md b/versioned_docs/version-4.0.0/dev/server/apis/http/authorization.md new file mode 100644 index 00000000..c1da13f1 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/authorization.md @@ -0,0 +1,142 @@ +--- +title: Authorization +sidebar_position: 40 +--- + +In its default configuration, OpenCloud supports three authentication methods as outlined on the [OIDC official site](https://openid.net/specs/openid-connect-core-1_0.html#rfc.section.3): + +1. Authorization Code Flow +2. Implicit Flow +3. Hybrid Flow + +For detailed information on OpenCloud's support for OpenID Connect (OIDC), please consult the [Official Documentation](/docs/admin/configuration/authentication-and-user-management). + +While selecting an OpenCloud client for authentication, take note of specific limitations such as the `Redirect URI`: + +| Source | Redirect URI | +| ------- | -------------------------------------------- | +| Android | oc://android.opencloud.eu | +| iOS | oc://ios.opencloud.eu | +| Desktop | `http://127.0.0.1`
`http://localhost` | + +In this example, the desktop app's `client_id` are being used. + +```bash +client_id=OpenCloudDesktop +``` + +## Authorization Code Flow + +1. Requesting authorization + + To initiate the OIDC Code Flow, you can use tools like curl and a web browser. + The user should be directed to a URL to authenticate and give their consent (bypassing consent is against the standard): + + ```plaintext + https://cloud.opencloud.test/signin/v1/identifier/_/authorize?client_id=client_id&scope=openid+profile+email+offline_access&response_type=code&redirect_uri=http://path-to-redirect-uri + ``` + + After a successful authentication, the browser will redirect to a URL that looks like this: + + ```plaintext + http://path-to-redirect-uri?code=mfWsjEL0mc8gx0ftF9LFkGb__uFykaBw&scope=openid%20profile%20email%20offline_access&session_state=32b08dd...&state= + ``` + + For the next step extract the code from the URL. + + In the above example, + the code is `mfWsjEL0mc8gx0ftF9LFkGb__uFykaBw` + +2. Requesting an access token + + The next step in the OIDC Code Flow involves an HTTP POST request + to the token endpoint of the **OpenCloud Identity Server**. + + ```bash + curl -vk -X POST https://cloud.opencloud.test/konnect/v1/token \ + -d "grant_type=authorization_code" \ + -d "code=3a3PTcO-WWXfN3l1mDN4u7G5PzWFxatU" \ + -d "redirect_uri=http:path-to-redirect-uri" \ + -d "client_id=client_id" + ``` + + Response looks like this: + + ```json + { + "access_token": "eyJhbGciOid...", + "token_type": "Bearer", + "id_token": "eyJhbGciOi...", + "refresh_token": "eyJhbGciOiJ...", + "expires_in": 300 + } + ``` + +3. Refreshing an access token + + If the access token has expired, you can get a new one using the refresh token. + + ```bash + curl -vk -X POST https://cloud.opencloud.test/konnect/v1/token \ + -d "grant_type=refresh_token" \ + -d "refresh_token=eyJhbGciOiJ..." \ + -d "redirect_uri=http://path-to-redirect-uri" \ + -d "client_id=client_id" + ``` + + Response looks like this: + + ```json + { + "access_token": "eyJhbGciOi...", + "token_type": "Bearer", + "expires_in": 300 + } + ``` + +## Implicit Code Flow + +When using the implicit flow, tokens are provided in a URI fragment of the redirect URL. +Valid values for the `response_type` request parameter are: + +- token +- id_token token + +:::warning Important Warning +If you are using the implicit flow, `nonce` parameter is required in the initial `/authorize` request. +`nonce=pL3UkpAQPZ8bTMGYOmxHY/dQABin8yrqipZ7iN0PY18=` + +bash command to generate cryptographically random value + +```bash +openssl rand -base64 32 +``` + +::: +The user should be directed to a URL to authenticate and give their consent (bypassing consent is against the standard): + +```bash +https://cloud.opencloud.test/signin/v1/identifier/_/authorize?client_id=client_id&scope=openid+profile+email+offline_access&response_type=id_token+token&redirect_uri=http://path-to-redirect-uri&nonce=pL3UkpAQPZ8bTMGYOmxHY/dQABin8yrqipZ7iN0PY18= +``` + +After a successful authentication, the browser will redirect to a URL that looks like this: + +```bash +http://path-to-redirect-uri#access_token=eyJhbGciOiJQUzI...&expires_in=300&id_token=eyJhbGciOiJ...&scope=email%20openid%20profile&session_state=c8a1019f5e054d...&state=&token_type=Bearer +``` + +For the next step, extract the access_token from the URL. + +```bash +access_token = 'eyJhbGciOiJQ...' +``` + +## Hybrid Flow + +The Hybrid Flow in OpenID Connect melds features from both the Implicit and Authorization Code flows. It allows clients to directly retrieve certain tokens from the Authorization Endpoint, yet also offers the option to acquire additional tokens from the Token Endpoint. + +The Authorization Server redirects back to the client with appropriate parameters in the response, based on the value of the response_type request parameter: + +- code token +- code id_token +- code id_token token diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/groups.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/groups.md new file mode 100644 index 00000000..e2b16100 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/groups.md @@ -0,0 +1,269 @@ +--- +title: Groups +sidebar_position: 40 +--- + +## Groups API + +The Groups API is implementing a subset of the functionality of the +[MS Graph Group resource](https://docs.microsoft.com/en-us/graph/api/resources/group?view=graph-rest-1.0) +The JSON representation of a Group as handled by the Groups API looks like this: + +```json +{ + "displayName": "group", + "id": "f0d97060-da16-4b0d-9fa4-d1ec43afc5f1" +} +``` + +Our implementation currently supports two Attributes for a Group: + +| Attribute | Description | +| ----------- | --------------------------------------------------------------------------------------------------------------------------- | +| displayName | The groups name | +| id | An unique, stable readonly identifier for the group that stays the same for the whole lifetime of the Group, usually a UUID | + +### Reading groups + +#### `GET /groups` + +Returns a list of all groups + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/groups' -u user:password + +``` + +Response: + +```json +{ + "value": [ + { + "displayName": "group", + "id": "38580a2e-7018-42ed-aff6-b2af0b4e9790" + }, + { + "displayName": "Example Users", + "id": "7a20f238-8a22-4458-902d-47674c317e5f" + } + ] +} +``` + +#### `GET /groups?$expand=members` + +Returns a list of all groups including its members + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/groups?$expand=members' -u user:password + +``` + +Response: + +```json +{ + "value": [ + { + "displayName": "group", + "id": "38580a2e-7018-42ed-aff6-b2af0b4e9790", + "members": [ + { + "displayName": "user1", + "id": "2e7b7e23-6c42-4d34-81b0-2bed34e51983", + "mail": "user1@example.org", + "onPremisesSamAccountName": "user1" + }, + { + "displayName": "user2", + "id": "b45c9e35-0d95-4165-96bc-68bff4a316ed", + "mail": "user2@example.org", + "onPremisesSamAccountName": "user2" + } + ] + }, + { + "displayName": "Example Users", + "id": "7a20f238-8a22-4458-902d-47674c317e5f", + "members": [ + { + "displayName": "user3", + "id": "026fbfef-79ef-4f5d-887b-9eaf42777239", + "mail": "user3@example.org", + "onPremisesSamAccountName": "user3" + } + ] + } + ] +} +``` + +#### `GET /groups/{groupid}` + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f' -u user:password +``` + +Response: + +```json +{ + "displayName": "Example Users", + "id": "7a20f238-8a22-4458-902d-47674c317e5f" +} +``` + +#### `GET /groups/{groupid}?$expand=members` + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f?$expand=members' -u user:password +``` + +Response: + +```json +{ + "displayName": "Example Users", + "id": "7a20f238-8a22-4458-902d-47674c317e5f", + "members": [ + { + "displayName": "user3", + "id": "026fbfef-79ef-4f5d-887b-9eaf42777239", + "mail": "user3@example.org", + "onPremisesSamAccountName": "user3" + } + ] +} +``` + +### Getting Group Members + +#### `GET /groups/{groupid}/members` + +Returns a list of User objects that are members of a group. + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f/members' -u user:password + +``` + +Response: + +```json +[ + { + "displayName": "Test User", + "id": "c54b0588-7157-4521-bb52-c1c8ca84ea71", + "mail": "example@example.org", + "onPremisesSamAccountName": "example" + }, + { + "displayName": "Dennis Ritchie", + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "mail": "dennis@example.org", + "onPremisesSamAccountName": "dennis" + } +] +``` + +### Creating / Updating Groups + +#### `POST /groups` + +Use this to create a new group. + +##### Request Body + +Note the missing `"id"` Attribute. It will be generated by the server: + +```json +{ + "displayName": "Example Users" +} +``` + +##### Response + +When successful, the response will return the new group including the newly allocated `"id"`: + +```json +{ + "displayName": "Example Users", + "id": "7a20f238-8a22-4458-902d-47674c317e5f" +} +``` + +#### `DELETE /groups/{id}` + +Example: + +```bash +curl -k --request DELETE 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f' -u user:password +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) + +#### `PATCH /groups/\{id\}` + +Updating attributes of a single group is supposed to be done with a patch request. This is however currently not fully +implemented for our write-enabled backends. The PATCH request can however be used to add multiple members to a group at once. +See below. + +### Adding a single member to a group + +#### `POST /groups/{id}/members/$ref` + +The request body contains a single attribute "`@odata.id`" referencing the new member of the group by URI. Example: + +```bash +curl -k --header "Content-Type: application/json" \ + --request POST --data \ + '{ "@odata.id": "https://localhost:9200/graph/v1.0/users/4c510ada-c86b-4815-8820-42cdf82c3d51" }' \ + 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f/members/$ref' -u user:password + +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) + +### Adding multiple members in a single request + +#### `PATCH /groups/\{id\}` + +The request body contains the attribute `members@odata.bind` holding a list of URI references for the new members. +Example: + +```json +{ + "members@odata.bind": [ + "https://localhost:9200/graph/v1.0/users/4c510ada-c86b-4815-8820-42cdf82c3d51", + "https://localhost:9200/graph/v1.0/users/c54b0588-7157-4521-bb52-c1c8ca84ea71" + ] +} +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) + +### Removing a member + +#### `DELETE /groups/{groupid}/members/{id}/$ref` + +Example + +```bash +curl -k --request DELETE \ + 'https://localhost:9200/graph/v1.0/groups/7a20f238-8a22-4458-902d-47674c317e5f/members/4c510ada-c86b-4815-8820-42cdf82c3d51/$ref' \ + -u user:password +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/index.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/index.md new file mode 100644 index 00000000..07e6adf1 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/index.md @@ -0,0 +1,66 @@ +--- +title: LibreGraph +sidebar_position: 1 +--- + +The LibreGraph API is a REST Api which is inspired by the [Microsoft Graph API](https://developer.microsoft.com/en-us/graph). It tries to stay compliant with the Microsoft Graph API and aims to be the Next Generation Api in OpenCloud where we want to support most of the features of the platform. +The [API specification](https://github.com/opencloud-eu/libre-graph-api) is available in the OpenApi 3 standard and there are generated client and server [SDKs](https://github.com/opencloud-eu/libre-graph-api#clients) available. You can browse the API with the [Swagger UI](https://docs.opencloud.eu/swagger/libre-graph-api/). + +## Calling the LibreGraph API + +```sh +{HTTP method} https://cloud.opencloud.test/graph/{version}/{resource}?{query-parameters} +``` + +The request component consists of: + +| Component | Description | +| -------------------- | ----------------------------------------------------------------------- | +| `{HTTP method}` | The HTTP method which is used in the request. | +| `{version}` | The version of the LibreGraph API used by the client. | +| `{resource}` | The LibreGraph Resource which the client is referencing in the request. | +| `{query-parameters}` | Optional parameters for the request to customize the response. | + +### HTTP methods + +| Method | Description | +| ------ | ----------------------------- | +| GET | Read data from a resource. | +| POST | Create a new resource. | +| PATCH | Update an existing resource. | +| PUT | Replace an existing resource. | +| DELETE | Delete an existing resource. | + +The methods `GET` and `DELETE` need no request body. The methods `POST`, `PATCH` and `PUT` require a request body, normally in JSON format to provide the needed values. + +### Version + +OpenCloud currently provides the version `v1.0`. + +### Resource + +A resource could be an entity or a complex type and is usually defined by properties. Entities are always recognizable by an `Id` property. The URL contains the resource which you are interacting with e.g. `/me/drives` or `/groups/{group-id}`. + +Each resource could possibly require different permissions. Usually you need permissions on a higher level for creating or updating an existing resource than for reading. + +### Query parameters + +Query parameters can be OData system query options, or other strings that a method accepts to customize its response. + +You can use optional OData system query options to include more or fewer properties than the default response, filter the response for items that match a custom query, or provide additional parameters for a method. + +For example, adding the following filter parameter restricts the drives returned to only those with the driveType property of `project`. + +```shell +GET https://cloud.opencloud.test/graph/v1.0/drives?$filter=driveType eq 'project' +``` + +For more information about OData query options please check the [API specification](https://github.com/opencloud-eu/libre-graph-api) and the provided examples. + +### Authorization + +For development purposes the examples in the developer documentation use Basic Auth. It is disabled by default and should only be enabled by setting `PROXY_ENABLE_BASIC_AUTH` in [the proxy](/docs/dev/server/services/proxy/environment-variables) for development or test instances. + +To authenticate with a Bearer token or OpenID Connect access token replace the `-u user:password` Basic Auth option of curl with a `-H 'Authorization: Bearer '` header. A `` can be obtained by copying it from a request in the browser, although it will time out within minutes. To automatically refresh the OpenID Connect access token an ssh-agent like solution like [oidc-agent](https://github.com/indigo-dc/oidc-agent) should be used. The graph endpoints that support a preconfigured token can be found in the [API specification](https://github.com/opencloud-eu/libre-graph-api) + +## Resources diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/permissions.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/permissions.md new file mode 100644 index 00000000..74127dff --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/permissions.md @@ -0,0 +1,170 @@ +--- +title: Permissions +sidebar_position: 50 +--- + +## Permissions API + +The Permissions API is implementing a subset of the functionality of the +[MS Graph Permission resource](https://learn.microsoft.com/en-us/graph/api/resources/permission?view=graph-rest-1.0). + +### Example Permissions + +The JSON representation of a Drive, as handled by the Spaces API, looks like this: + +```json +{ + "@libre.graph.permissions.roles.allowedValues": [ + { + "id": "b1e2218d-eef8-4d4c-b82d-0f1a1b48f3b5", + "description": "Allows reading the shared file or folder", + "displayName": "Viewer", + "@libre.graph.weight": 1 + }, + { + "id": "fb6c3e19-e378-47e5-b277-9732f9de6e21", + "description": "Allows reading and writing the shared file or folder", + "displayName": "Editor", + "@libre.graph.weight": 2 + }, + { + "id": "312c0871-5ef7-4b3a-85b6-0e4074c64049", + "description": "Allows managing a space", + "displayName": "Manager", + "@libre.graph.weight": 3 + }, + { + "id": "4916f47e-66d5-49bb-9ac9-748ad00334b", + "description": "Allows creating new files", + "displayName": "File Drop", + "@libre.graph.weight": 4 + } + ], + "@libre.graph.permissions.actions.allowedValues": [ + "libre.graph/driveItem/basic/read", + "libre.graph/driveItem/permissions/read", + "libre.graph/driveItem/upload/create", + "libre.graph/driveItem/standard/allTasks", + "libre.graph/driveItem/upload/create" + ], + "value": [ + { + "id": "67445fde-a647-4dd4-b015-fc5dafd2821d", + "link": { + "type": "view", + "webUrl": "https://cloud.example.org/s/fhGBMIkKFEHWysj" + } + }, + { + "id": "34646ab6-be32-43c9-89e6-987e0c237e9b", + "roles": ["b1e2218d-eef8-4d4c-b82d-0f1a1b48f3b5"], + "grantedToV2": [ + { + "user": { + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "displayName": "Dennis Ritchie" + } + } + ] + }, + { + "id": "81d5bad3-3eff-410a-a2ea-eda2d14d4474", + "roles": ["b1e2218d-eef8-4d4c-b82d-0f1a1b48f3b5"], + "grantedToV2": [ + { + "user": { + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "displayName": "Dennis Ritchie" + } + } + ] + }, + { + "id": "b470677e-a7f5-4304-8ef5-f5056a21fff1", + "roles": ["b1e2218d-eef8-4d4c-b82d-0f1a1b48f3b5"], + "grantedToV2": [ + { + "user": { + "id": "f7fbf8c8-139b-4376-b307-cf0a8c2d0d9c", + "displayName": "Alan Turing" + } + } + ] + }, + { + "id": "453b02be-4ec2-4e7d-b576-09fc153de812", + "roles": ["fb6c3e19-e378-47e5-b277-9732f9de6e21"], + "grantedToV2": [ + { + "user": { + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "displayName": "Dennis Ritchie" + } + } + ], + "expirationDateTime": "2018-07-15T14:00:00.000Z" + }, + { + "id": "86765c0d-3905-444a-9b07-76201f8cf7df", + "roles": ["312c0871-5ef7-4b3a-85b6-0e4074c64049"], + "grantedToV2": [ + { + "group": { + "id": "167cbee2-0518-455a-bfb2-031fe0621e5d", + "displayName": "Programmers" + } + } + ] + }, + { + "id": "c42b5cbd-2d65-42cf-b0b6-fb6d2b762256", + "grantedToV2": [ + { + "user": { + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "displayName": "Dennis Ritchie" + } + } + ], + "@libre.graph.permissions.actions": [ + "libre.graph/driveItem/basic/read", + "libre.graph/driveItem/path/update" + ] + } + ] +} +``` + +## Creating Share Invitation / Link + +### Create a link share `POST /drives/{drive-id}/items/{item-id}/createLink` + +[CreateLink](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/CreateLink) + +### Create a user/group share `POST /drives/{drive-id}/items/{item-id}/invite` + +[Invite](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/Invite) + +## Reading Permissions + +### List the effective sharing permissions on a driveitem `GET /drives/{drive-id}/items/{item-id}/permissions` + +[ListPermissions](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/ListPermissions) + +### List Get sharing permission for a file or folder `GET /drives/{drive-id}/items/{item-id}/permissions/{perm-id}` + +[GetPermission](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/GetPermission) + +## Updating Permissions + +### Updating sharing permission `POST /drives/{drive-id}/items/{item-id}/permissions/{perm-id}` + +[UpdatePermission](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/UpdatePermission) + +### Set password of permission `POST /drives/{drive-id}/items/{item-id}/permissions/{perm-id}/setPassword` + +[SetPermissionPassword](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/SetPermissionPassword) + +### Deleting permission `DELETE /drives/{drive-id}/items/{item-id}/permissions/{perm-id}` + +[DeletePermission](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/DeletePermission) diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/role.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/role.md new file mode 100644 index 00000000..a06781a5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/role.md @@ -0,0 +1,33 @@ +--- +title: Role +sidebar_position: 60 +--- + +## Role API + +The Roles API is implementing a subset of the functionality of the +[MS Graph Role Management](https://learn.microsoft.com/en-us/graph/api/resources/rolemanagement?view=graph-rest-1.0). + +## Role Management + +### List roleDefinitions `GET /v1beta1/roleManagement/permissions/roleDefinitions` + +[ListPermissionRoleDefinitions](https://docs.opencloud.eu/swagger/libre-graph-api/#/roleManagement/ListPermissionRoleDefinitions) + +### Get unifiedRoleDefinition `GET /drives/{drive-id}/items/{item-id}/permissions/{perm-id}` + +[GetPermissionRoleDefinition](https://docs.opencloud.eu/swagger/libre-graph-api/#/roleManagement/GetPermissionRoleDefinition) + +## Role Assignment + +### Get appRoleAssignments of a user `GET /v1.0/users/{user-id}/appRoleAssignments` + +[ListAppRoleAssignments](https://docs.opencloud.eu/swagger/libre-graph-api/#/user.appRoleAssignment/user.ListAppRoleAssignments) + +### Grant an appRoleAssignment to a user `POST /v1.0/users/{user-id}/appRoleAssignments` + +[CreateAppRoleAssignments](https://docs.opencloud.eu/swagger/libre-graph-api/#/user.appRoleAssignment/user.CreateAppRoleAssignments) + +### Delete the appRoleAssignment from a user `DELETE /v1.0/users/{user-id}/appRoleAssignments/{appRoleAssignment-id}` + +[DeleteAppRoleAssignments](https://docs.opencloud.eu/swagger/libre-graph-api/#/user.appRoleAssignment/user.DeleteAppRoleAssignments) diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/spaces.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/spaces.md new file mode 100644 index 00000000..526507a1 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/spaces.md @@ -0,0 +1,491 @@ +--- +title: Spaces +sidebar_position: 20 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +## Spaces API + +The Spaces API is implementing a subset of the functionality of the +[MS Graph Drives resource](https://learn.microsoft.com/en-us/graph/api/resources/drive?view=graph-rest-1.0). + +### Example Space + +The JSON representation of a Drive, as handled by the Spaces API, looks like this: + +```json +{ + "driveAlias": "project/mars", + "driveType": "project", + "id": "storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925", + "lastModifiedDateTime": "2023-01-24T21:19:26.417055+01:00", + "name": "Mars", + "owner": { + "user": { + "displayName": "", + "id": "89ad5ad2-5fdb-4877-b8c9-601a9670b925" + } + }, + "quota": { + "remaining": 999853685, + "state": "normal", + "total": 1000000000, + "used": 146315 + }, + "root": { + "eTag": "\"910af0061161c42d8d1224df6c4a2527\"", + "id": "storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925", + "permissions": [ + { + "grantedToIdentities": [ + { + "user": { + "displayName": "Admin", + "id": "some-admin-user-id-0000-000000000000" + } + } + ], + "roles": ["manager"] + } + ], + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925" + }, + "special": [ + { + "eTag": "\"f97829324f63ce778095334cfeb0097b\"", + "file": { + "mimeType": "image/jpeg" + }, + "id": "storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925!40171bea-3263-47a8-80ef-0ca20c37f45a", + "lastModifiedDateTime": "2022-02-15T17:11:50.000000496+01:00", + "name": "Mars_iStock-MR1805_20161221.jpeg", + "size": 146250, + "specialFolder": { + "name": "image" + }, + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925%2189ad5ad2-5fdb-4877-b8c9-601a9670b925/.space/Mars_iStock-MR1805_20161221.jpeg" + }, + { + "eTag": "\"ff38b31d8f109a4fbb98ab34499a3379\"", + "file": { + "mimeType": "text/markdown" + }, + "id": "storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925!e2167612-7578-46e2-8ed7-971481037bc1", + "lastModifiedDateTime": "2023-01-24T21:10:23.661841+01:00", + "name": "readme.md", + "size": 65, + "specialFolder": { + "name": "readme" + }, + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925%2189ad5ad2-5fdb-4877-b8c9-601a9670b925/.space/readme.md" + } + ], + "webUrl": "https://localhost:9200/f/storage-users-1$89ad5ad2-5fdb-4877-b8c9-601a9670b925" +} +``` + +## Creating Spaces + +### Create a single space `POST /drives` + +[Create Drive](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives/CreateDrive) + +### Create a space item (Enable sync) `POST /drives/\{drive-id\}/root/children` + +[Create Drive Item](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/CreateDriveItem) + +## Reading Spaces + +```shell +GET https://cloud.opencloud.test/graph/{version}/{me/}drives/?{query-parameters} +``` + +| Component | Description | +| -------------------- | ---------------------------------------------------------------------------------------------------------------------- | +| \{version\} | The version of the LibreGraph API used by the client. | +| \{/me\} | The `me` component of the part is optional. If used, you only see spaces where the acting user is a regular member of. | +| \{query-parameters\} | Optional parameters for the request to customize the response. | + +### List all spaces `GET /drives` + +Returns a list of all available spaces, even ones where the acting user is not a regular member of. You need elevated permissions to do list all spaces. If you don't have the elevated permissions, the result is the same like `GET /me/drives`. + +:::info[Multiple Administration Personas] + +The openCloud spaces concept draws a strict line between users which can work with the content of a space and others who have the permission to manage the space. A user which is able to manage quota and space metadata does not necessarily need to be able to access the content of a space. + +**Space Admin**\ +There is a global user role "Space Admin" which grants users some global permissions to manage space quota and some space metadata. This Role enables the user also to disable, restore and delete spaces. He cannot manage space members. + +**Space Manager**\ +The "Space Manager" is a user which is a regular member of a space because he has been invited. In addition to being part of a space the user can also manage the memberships of the space. + +::: + +### List My Spaces `GET /me/drives` + +[List My Drives](https://docs.opencloud.eu/swagger/libre-graph-api/#/me.drives/ListMyDrives) + +## Modifying Spaces + +Modify the properties of a space. You need elevated permissions to execute this request. + +### Set the space quota to 5GB `PATCH /drives/\{drive-id\}` + +To limit the quota of a space you need to set the `quota.total` value. The API response will give back all actual quota properties. + +```json +{ + "quota": { + "remaining": 5368709120, + "state": "normal", + "total": 5368709120, + "used": 0 + } +} +``` + +| Attribute | Description | +| --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| remaining | The remaining disk space in `bytes`. If the quota is not limited, this will show the total available disk space. | +| state | The state of the space in regards to quota usage. This can be used for visual indicators. It can be `normal`(\<75%), `nearing`(between 75% and 89%), `critical`(between 90% and 99%) and `exceeded`(100%). | +| total | The space id. The value needs to be a space ID. | +| used | The used disk space in bytes. | + + + + +```shell +curl -L -k -X PATCH 'https://localhost:9200/graph/v1.0/drives/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff' \ +-H 'Content-Type: application/json' \ +--data-raw '{ + "quota": { + "total": 5368709120 + } +}' +``` + + + + +```json title="Response" {17} +{ + "description": "Marketing team resources", + "driveAlias": "project/marketing", + "driveType": "project", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "lastModifiedDateTime": "2023-01-18T17:13:48.385204589+01:00", + "name": "Marketing", + "owner": { + "user": { + "displayName": "", + "id": "535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + } + }, + "quota": { + "remaining": 5368709120, + "state": "normal", + "total": 5368709120, + "used": 0 + }, + "root": { + "eTag": "\"f91e56554fd9305db81a93778c0fae96\"", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "permissions": [ + { + "grantedToIdentities": [ + { + "user": { + "displayName": "Admin", + "id": "some-admin-user-id-0000-000000000000" + } + } + ], + "roles": ["manager"] + } + ], + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + }, + "webUrl": "https://localhost:9200/f/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" +} +``` + + + + +### Change the space name, subtitle and alias `PATCH /drives/\{drive-id\}` + +You can change multiple space properties in one request as long as you submit a valid JSON body. Please be aware that some properties need different permissions. + + + +```shell +curl -L -k -X PATCH 'https://localhost:9200/graph/v1.0/drives/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff' \ +-H 'Content-Type: application/json' \ +--data-raw '{ + "name": "Mars", + "description": "Mission to mars", + "driveAlias": "project/mission-to-mars" +}' +``` + + + + +```json title="Response" {2,3,7} +{ + "description": "Mission to mars", + "driveAlias": "project/mission-to-mars", + "driveType": "project", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "lastModifiedDateTime": "2023-01-19T14:17:36.094283+01:00", + "name": "Mars", + "owner": { + "user": { + "displayName": "", + "id": "535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + } + }, + "quota": { + "remaining": 15, + "state": "normal", + "total": 15, + "used": 0 + }, + "root": { + "eTag": "\"f5fee4fdfeedd6f98956500779eee15e\"", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "permissions": [ + { + "grantedToIdentities": [ + { + "user": { + "displayName": "Admin", + "id": "some-admin-user-id-0000-000000000000" + } + } + ], + "roles": ["manager"] + } + ], + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + }, + "webUrl": "https://localhost:9200/f/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" +} +``` + + + + +## Disabling / Deleting Spaces + +### Disable a space `DELETE /drives/\{drive-id\}` + +This operation will make the space content unavailable for all space members. No data will be deleted. + + + + +```shell +curl -L -k -X DELETE 'https://localhost:9200/graph/v1.0/drives/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff/' +``` + + + + + +This response has no body value. + +A disabled space will appear in listings with a `root.deleted.state=trashed` property. The space description and the space image will not be readable anymore. + +```json title="Response" {18,19,20} +{ + "description": "Marketing team resources", + "driveAlias": "project/marketing", + "driveType": "project", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "lastModifiedDateTime": "2023-01-19T14:17:36.094283+01:00", + "name": "Marketing", + "owner": { + "user": { + "displayName": "", + "id": "535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + } + }, + "quota": { + "total": 15 + }, + "root": { + "deleted": { + "state": "trashed" + }, + "eTag": "\"f5fee4fdfeedd6f98956500779eee15e\"", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "permissions": [ + { + "grantedToIdentities": [ + { + "user": { + "displayName": "Admin", + "id": "some-admin-user-id-0000-000000000000" + } + } + ], + "roles": ["manager"] + } + ], + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + }, + "webUrl": "https://localhost:9200/f/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" +} +``` + + + + +### Restore a space `PATCH /drives/\{drive-id\}` + +This operation will make the space content available again to all members. No content will be changed. + +To restore a space, the Header `Restore: T` needs to be set. + + + +```shell +curl -L -X PATCH 'https://localhost:9200/graph/v1.0/drives/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff/' \ +-H 'Restore: T' \ +-H 'Content-Type: text/plain' \ +--data-raw '{}' +``` + +:::info[Body value] + +This request needs an empty body (--data-raw '{}') to fulfil the standard libregraph specification even when the body is not needed. + +::: + + + + +```json +{ + "description": "Marketing team resources", + "driveAlias": "project/marketing", + "driveType": "project", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "lastModifiedDateTime": "2023-01-19T14:17:36.094283+01:00", + "name": "Marketing", + "owner": { + "user": { + "displayName": "", + "id": "535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + } + }, + "quota": { + "remaining": 15, + "state": "normal", + "total": 15, + "used": 0 + }, + "root": { + "eTag": "\"f5fee4fdfeedd6f98956500779eee15e\"", + "id": "storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff", + "permissions": [ + { + "grantedToIdentities": [ + { + "user": { + "displayName": "Admin", + "id": "some-admin-user-id-0000-000000000000" + } + } + ], + "roles": ["manager"] + } + ], + "webDavUrl": "https://localhost:9200/dav/spaces/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" + }, + "webUrl": "https://localhost:9200/f/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff" +} +``` + + + + +### Permanently delete a space `DELETE /drives/\{drive-id\}` + +This operation will delete a space and all its data permanently. This is restricted to spaces which are already disabled. + +To delete a space, the Header `Purge: T` needs to be set. + + + + +```shell title="Request" {2} +curl -L -X DELETE 'https://localhost:9200/graph/v1.0/drives/storage-users-1$535aa42d-a3c7-4329-9eba-5ef48fcaa3ff' \ +-H 'Purge: T' +``` + +:::warning[Data will be deleted] + +This request will delete a space and all its content permanently. This operation cannot be reverted. + +::: + + + + +This response has no body value. + + + + +The space to be deleted was not disabled before. + +```json +{ + "error": { + "code": "invalidRequest", + "innererror": { + "date": "2023-01-24T19:57:19Z", + "request-id": "f62af40f-bc18-475e-acd7-e9008d6bd326" + }, + "message": "error: bad request: can't purge enabled space" + } +} +``` + + + + +## Sharing Space + +### Add member to space `POST /drives/\{drive-id\}/root/invite` + +[Invite](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.permissions/Invite) + +### Sharing space as a link `POST /drives/\{drive-id\}/root/createLink` + +[CreateLinkSpaceRoot](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/CreateLinkSpaceRoot) + +## Reading Space Permissions + +### Listing permissions of a space `GET /drives/\{drive-id\}/root/permissions` + +[ListPermissionsSpaceRoot](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/ListPermissionsSpaceRoot) + +## Modifying / Deleting Space Permissions + +### Update permissions of a drive `PATCH /drives/\{drive-id\}/root/permissions/\{perm-id\}` + +[UpdatePermissionSpaceRoot](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/UpdatePermissionSpaceRoot) + +### Set password of a link share `POST /drives/\{drive-id\}/root/permissions/\{perm-id\}/setPassword` + +[SetPermissionPasswordSpaceRoot](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/SetPermissionPasswordSpaceRoot) + +### Removing acess to a space `DELETE /drives/\{drive-id\}/root/permissions/\{perm-id\}` + +[DeletePermissionSpaceRoot](https://docs.opencloud.eu/swagger/libre-graph-api/#/drives.root/DeletePermissionSpaceRoot) diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/graph/users.md b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/users.md new file mode 100644 index 00000000..dffab4ef --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/graph/users.md @@ -0,0 +1,264 @@ +--- +title: Users +sidebar_position: 30 +--- + +## Users API + +The Users API is implementing a subset of the functionality of the +[MS Graph User resource](https://docs.microsoft.com/en-us/graph/api/resources/user?view=graph-rest-1.0) +The JSON representation of a User handled by the Users API looks like this: + +```json +{ + "displayName": "Dennis Ritchie", + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "mail": "dennis@example.org", + "onPremisesSamAccountName": "dennis" +} +``` + +Our implementation currently supports only a limited set of Attributes of Users: + +| Attribute | Description | +| ------------------------ | ------------------------------------------------------------------------------------------------------------------------- | +| displayName | The full name of the user, usually a combination of given name and last name | +| mail | The user's email address | +| onPremisesSamAccountName | The loginname/account name of the user | +| id | An unique, stable readonly identifier for the user that stays the same for the whole lifetime of the User, usually a UUID | +| passwordProfile | Contains the password of the users. This is only present when updating or creating users. It is never returned by the API | + +### Reading users + +#### `GET /me` + +Returns the user object of the currently signed-in user + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/me' -u user:password +``` + +Response: + +```json +{ + "displayName": "Dennis Ritchie", + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "mail": "dennis@example.org", + "onPremisesSamAccountName": "dennis" +} +``` + +#### `GET /users` + +Returns a list of all users + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/users' -u user:password + +``` + +Response: + +```json +{ + "value": [ + { + "displayName": "Dennis Ritchie", + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "mail": "dennis@example.org", + "onPremisesSamAccountName": "dennis" + }, + { + "displayName": "Lynn Conway", + "id": "058bff95-6708-4fe5-91e4-9ea3d377588b", + "mail": "lynn@example.org", + "onPremisesSamAccountName": "lynn" + } + ] +} +``` + +#### `GET /users?$expand=memberOf` + +Returns a list of all users + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/users?$expand=memberOf' -u user:password + +``` + +Response: + +```json +{ + "value": [ + { + "displayName": "Dennis Ritchie", + "id": "4c510ada-c86b-4815-8820-42cdf82c3d51", + "mail": "dennis@example.org", + "onPremisesSamAccountName": "dennis", + "memberOf": [ + { + "displayName": "users", + "id": "509a9dcd-bb37-4f4f-a01a-19dca27d9cfa" + }, + { + "displayName": "basic-haters", + "id": "6040aa17-9c64-4fef-9bd0-77234d71bad0" + }, + { + "displayName": "bible-readers", + "id": "dd58e5ec-842e-498b-8800-61f2ec6f911f" + }, + { + "displayName": "programmers", + "id": "262982c1-2362-4afa-bfdf-8cbfef64a06e" + } + ] + }, + { + "displayName": "Lynn Conway", + "id": "058bff95-6708-4fe5-91e4-9ea3d377588b", + "mail": "lynn@example.org", + "onPremisesSamAccountName": "lynn", + "memberOf": [ + { + "displayName": "users", + "id": "509a9dcd-bb37-4f4f-a01a-19dca27d9cfa" + } + ] + } + ] +} +``` + +#### `GET /users/{userid or accountname}` + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/users/058bff95-6708-4fe5-91e4-9ea3d377588b' -u user:password +``` + +Response: + +```json +{ + "displayName": "Lynn Conway", + "id": "058bff95-6708-4fe5-91e4-9ea3d377588b", + "mail": "lynn@example.org", + "onPremisesSamAccountName": "lynn" +} +``` + +#### `GET /users/{userid or accountname}?$expand=memberOf` + +Example: + +```bash +curl -k 'https://localhost:9200/graph/v1.0/users/058bff95-6708-4fe5-91e4-9ea3d377588b?$expand=memberOf' -u user:password +``` + +Response: + +```json +{ + "displayName": "Lynn Conway", + "id": "058bff95-6708-4fe5-91e4-9ea3d377588b", + "mail": "lynn@example.org", + "onPremisesSamAccountName": "lynn", + "memberOf": [ + { + "displayName": "users", + "id": "509a9dcd-bb37-4f4f-a01a-19dca27d9cfa" + } + ] +} +``` + +### Creating / Updating Users + +#### `POST /users` + +Use this to create a new user. + +##### Request Body + +Note the missing `"id"` Attribute. It will be generated by the server: + +```json +{ + "displayName": "Example User", + "mail": "example@example.org", + "onPremisesSamAccountName": "example", + "passwordProfile": { + "password": "ThePassword" + } +} +``` + +##### Response + +When successful, the response will return the new user, without the password, but including the newly allocated `"id"`: + +```json +{ + "displayName": "Example User", + "id": "c067b139-c91c-4e47-8be6-669156a0587b", + "mail": "example@example.org", + "onPremisesSamAccountName": "example" +} +``` + +#### `DELETE /users/{id}` + +Example: + +```bash +curl -k --request DELETE 'https://localhost:9200/graph/v1.0/users/c067b139-c91c-4e47-8be6-669156a0587b' -u user:password +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) + +#### `PATCH /users/{id}` + +Updating attributes of a single user can be done with a patch request. The Request Body contains the new values of the attributes +to be updated. E.g. to update the `displayName` Attribute: + +```bash + curl -k --header "Content-Type: application/json" \ + --request PATCH --data '{"displayName": "Test User" }' \ + 'https://localhost:9200/graph/v1.0/users/c54b0588-7157-4521-bb52-c1c8ca84ea71' -u user:password +``` + +Similar to creating a user via `POST`, the `PATCH` request will return the user object containing the new attribute values. + +### Change password + +#### `POST /me/changePassword` + +Users can change their own password by sending a POST request to `/me/changePassword` + +##### Request Body + +```json +{ + "currentPassword": "current", + "newPassword": "new" +} +``` + +When successful the API returns no response body and the HTTP status code 204 (No Content) + +```bash + curl -i -k --header "Content-Type: application/json" \ + --request POST --data '{"currentPassword": "current", "newPassword": "new" }' \ + 'https://localhost:9200/graph/v1.0/me/changePassword' -u user:current +``` diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/index.md b/versioned_docs/version-4.0.0/dev/server/apis/http/index.md new file mode 100644 index 00000000..a24d8ac1 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/index.md @@ -0,0 +1,8 @@ +--- +title: HTTP +sidebar_position: 1 +--- + +The [Hypertext Transfer Protocol (HTTP)](https://www.rfc-editor.org/rfc/rfc2616) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. HTTP is the foundation of data communication for the World Wide Web, where hypertext documents include hyperlinks to other resources that the user can easily access, for example by a mouse click or by tapping the screen in a web browser. + +Development of HTTP was initiated by Tim Berners-Lee at CERN in 1989 and summarized in a simple document describing the behavior of a client and a server using the first HTTP protocol version that was named 0.9. That first version of HTTP protocol soon evolved into a more elaborated version that was the first draft toward a far future version 1.0 diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/tus_upload.md b/versioned_docs/version-4.0.0/dev/server/apis/http/tus_upload.md new file mode 100644 index 00000000..55f6bbd0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/tus_upload.md @@ -0,0 +1,252 @@ +--- +title: Resumable Upload +sidebar_position: 21 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +OpenCloud supports the tus resumable-upload protocol, which is a robust, modular, and open protocol designed to resume large file uploads reliably over HTTP. +In situations where file uploads might be interrupted due to network issues, browser crashes, or other unforeseen interruptions, +tus ensures that uploads can be resumed from the point of failure without losing data. +This documentation shows some basic examples, refer [tus official site](https://tus.io/protocols/resumable-upload) for more details. + +## Supported tus Features + +The backend announces certain tus features to clients. WebDAV responses come with tus HTTP headers for the official tus features, and additional, OpenCloud specific features are announced via the capabilities endpoint (e.g. `https://localhost:9200/ocs/v1.php/cloud/capabilities?format=json`). + +The following snippet shows the relevant part of the server capabilities of OpenCloud that concerns the tus upload: + +```json +{ + "ocs": { + "data": { + "capabilities": { + "files": { + "tus_support": { + "version": "1.0.0", + "resumable": "1.0.0", + "extension": "creation,creation-with-upload", + "max_chunk_size": 10000000, + "http_method_override": "" + } + } + } + } + } +} +``` + +| Parameter | Environment Variable | Default Value | Description | +| -------------- | ------------------------------ | ------------- | ------------------------------------------------------------------- | +| max_chunk_size | FRONTEND_UPLOAD_MAX_CHUNK_SIZE | 10000000 | Announces the max chunk sizes in bytes for uploads via the clients. | + +## Upload in Chunks + +### Create an Upload URL + +The client must send a POST request against a known upload creation URL to request a new upload resource. +The filename has to be provided in base64-encoded format. + +Example: + +```bash +# base64 encoded filename 'tustest.txt' is 'dHVzdGVzdC50eHQ=' +echo -n 'tustest.txt' | base64 +``` + + + +```bash +curl -ks -XPOST https://cloud.opencloud.test/remote.php/dav/spaces/8d72036d-14a5-490f-889e-414064156402$196ac304-7b88-44ce-a4db-c4becef0d2e0 \ +-H "Authorization: Bearer eyJhbGciOiJQUzI..."\ +-H "Tus-Resumable: 1.0.0" \ +-H "Upload-Length: 10" \ +-H "Upload-Metadata: filename dHVzdGVzdC50eHQ=" +``` + + + +```bash +< HTTP/1.1 201 Created +< Access-Control-Allow-Headers: Tus-Resumable, Upload-Length, Upload-Metadata, If-Match +< Access-Control-Allow-Origin: * +< Access-Control-Expose-Headers: Tus-Resumable, Upload-Offset, Location +< Content-Length: 0 +< Content-Security-Policy: default-src 'none'; +< Date: Mon, 16 Oct 2023 08:49:39 GMT +< Location: https://cloud.opencloud.test/data/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJyZXZhIiwiZXhwIjoxNjk3NTMyNTc5LCJpYXQiOjE2OTc0NDYxNzksInRhcmdldCI6Imh0dHA6Ly9sb2NhbGhvc3Q6OTE1OC9kYXRhL3R1cy8zYTU3ZWZlMS04MzE0LTQ4MGEtOWY5Ny04N2Q1YzBjYTJhMTgifQ.FbrlY7mdOfsbFgMrP8OtcHlCEq72a2ZVnPD2iBo9MfM +< Tus-Extension: creation,creation-with-upload,checksum,expiration +< Tus-Resumable: 1.0.0 +< Vary: Origin +< X-Content-Type-Options: nosniff +< X-Download-Options: noopen +< X-Frame-Options: SAMEORIGIN +< X-Permitted-Cross-Domain-Policies: none +< X-Request-Id: xxxxxxxxxxxxxxxxxxxxxx +< X-Robots-Tag: none +< X-Xss-Protection: 1; mode=block +< +* Connection #0 to host localhost left intact +``` + + + +The server will return a temporary upload URL in the location header of the response: + +```bash +< Location: https://cloud.opencloud.test/data/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJyZXZhIiwiZXhwIjoxNjk3NTMyNTc5LCJpYXQiOjE2OTc0NDYxNzksInRhcmdldCI6Imh0dHA6Ly9sb2NhbGhvc3Q6OTE1OC9kYXRhL3R1cy8zYTU3ZWZlMS04MzE0LTQ4MGEtOWY5Ny04N2Q1YzBjYTJhMTgifQ.FbrlY7mdOfsbFgMrP8OtcHlCEq72a2ZVnPD2iBo9MfM +``` + +### Upload the First Chunk + +Once a temporary upload URL has been created, a client can send a PATCH request to upload a file. The file content should be sent in the body of the request: + + + +```shell +curl -ks -XPATCH https://temporary-upload-url \ +-H "Authorization: Bearer eyJhbGciOiJQUzI..." \ +-H "Tus-Resumable: 1.0.0" \ +-H "Upload-Offset: 0" \ +-H "Content-Type: application/offset+octet-stream" -d "01234" +``` + + + + +```bash +< HTTP/1.1 204 No Content +< Date: Tue, 17 Oct 2023 04:10:52 GMT +< Oc-Fileid: 8d72036d-14a5-490f-889e-414064156402$73bb5450-816b-4cae-90aa-1f96adc95bd4!84e319e4-de1d-4dd8-bbd0-e51d933cdbcd +< Tus-Resumable: 1.0.0 +< Upload-Expires: 1697602157 +< Upload-Offset: 5 +< Vary: Origin +< X-Content-Type-Options: nosniff +< X-Request-Id: xxxxxxxxxxxxxxxxxxxxxx +< +* Connection #0 to host localhost left intact +``` + + + +### Upload Further Chunks + +After the first chunk is uploaded, the second chunk can be uploaded by pointing `Upload-Offset` to exact position that was returned in the first response. +Upload process will not be marked as complete until the total uploaded content size matches the `Upload-Length` specified during the creation of the temporary URL. + + + +```shell +curl -ks -XPATCH https://temporary-upload-url \ +-H "Authorization: Bearer eyJhbGciOiJQUzI..." \ +-H "Tus-Resumable: 1.0.0" \ +-H "Upload-Offset: 5" \ +-H "Content-Type: application/offset+octet-stream" -d "56789" +``` + + + +```bash +< HTTP/1.1 204 No Content +< Date: Tue, 17 Oct 2023 04:11:00 GMT +< Oc-Fileid: 8d72036d-14a5-490f-889e-414064156402$73bb5450-816b-4cae-90aa-1f96adc95bd4!84e319e4-de1d-4dd8-bbd0-e51d933cdbcd +< Tus-Resumable: 1.0.0 +< Upload-Expires: 1697602157 +< Upload-Offset: 10 +< Vary: Origin +< X-Content-Type-Options: nosniff +< X-Request-Id: xxxxxxxxxxxxxxxxxxxxxx +< +* Connection #0 to host localhost left intact +``` + + + +:::warning Important Warning +`Upload-Offset` header indicates the byte position in the target file where the server should start writing the upload content. +It ensures data integrity and order during the upload process. +::: + +## Creation with Upload + + + +```shell +curl -ks -XPOST https://cloud.opencloud.test/remote.php/dav/spaces/\{space-id\} \ +-H "Authorization: Bearer eyJhbGciOiJQUzI..." \ +-H "Tus-Resumable: 1.0.0" \ +-H "Upload-Length: 14" \ +-H "Content-Type: application/offset+octet-stream" \ +-H "Upload-Metadata: filename dGVzdC50eHQ=" \ +-H "Tus-Extension: creation-with-upload" \ +-d "upload content" +``` + + + +```shell +< HTTP/1.1 201 Created +< Access-Control-Allow-Headers: Tus-Resumable, Upload-Length, Upload-Metadata, If-Match +< Access-Control-Allow-Origin: * +< Access-Control-Expose-Headers: Tus-Resumable, Upload-Offset, Location +< Content-Length: 0 +< Content-Security-Policy: default-src 'none'; +< Content-Type: text/plain +< Date: Mon, 16 Oct 2023 04:18:25 GMT +< Etag: "372c96743f68bc40e789124d30567371" +< Last-Modified: Mon, 16 Oct 2023 04:18:25 +0000 +< Location: https://cloud.opencloud.test/data/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJyZXZhIiwiZXhwIjoxNjk3NTE2MzA1LCJpYXQiOjE2OTc0Mjk5MDUsInRhcmdldCI6Imh0dHA6Ly9sb2NhbGhvc3Q6OTE1OC9kYXRhL3R1cy82NjlhODBlZi1hN2VjLTQwYTAtOGNmOS05MTgwNTVhYzlkZjAifQ.yq-ofJYnJ9FLML7Z_jki1FJQ7Ulbt9O_cmLe6V411A4 +< Oc-Etag: "372c96743f68bc40e789124d30567371" +< Oc-Fileid: 44d3e1e0-6c01-4b94-9145-9d0068239fcd$446bdad4-4b27-41f1-afce-0881f202a214!d7c292a6-c395-4e92-bf07-2c1663aec8dd +< Oc-Perm: RDNVWZP +< Tus-Extension: creation,creation-with-upload,checksum,expiration +< Tus-Resumable: 1.0.0 +< Upload-Expires: 1697516305 +< Upload-Offset: 14 +< Vary: Origin +< X-Content-Type-Options: nosniff +< X-Download-Options: noopen +< X-Frame-Options: SAMEORIGIN +* TLSv1.2 (IN), TLS header, Supplemental data (23): +{ [5 bytes data] +< X-Permitted-Cross-Domain-Policies: none +< X-Request-Id: xxxxxxxxxxxxxxxxxxxxxx +< X-Robots-Tag: none +< X-Xss-Protection: 1; mode=block +< +* Connection #0 to host localhost left intact +``` + + + +:::warning Important Warning +The `Upload-Length` header of the request has to contain the exact size of the upload content in byte. +::: + +## Supported Upload-Metadata + +Upload-metadata key-value pairs aren't specified in the general tus docs. The following ones are supported in the OpenCloud ecosystem: + +| Parameter (key) | Example (value, MUST be Base64 encoded) | Description | +| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------- | +| `name` OR `filename` (mandatory) | example.pdf | Filename | +| `mtime` (recommended) | 1701708712 | Modification time (Unix time format) | +| `checksum` (recommended) | SHA1 a330de5886e5a92d78fb3f8d59fe469857759e72 | Checksum, computed from the client | +| `type` OR `filetype` | application/pdf | MIME Type, sent by the web UI | +| `relativePath` | undefined | File path relative to the folder that is being uploaded, including the filename. Sent by the web UI | +| `spaceId` | 8748cddf-66b7-4b85-91a7-e6d08d8e1639$a9778d63-21e7-4d92-9b47-1b81144b9993 | Sent by the web UI | +| `spaceName` | Personal | Sent by the web UI | +| `driveAlias` | personal/admin | Sent by the web UI | +| `driveType` | personal | Sent by the web UI | +| `currentFolder` | / | Sent by the web UI | +| `currentFolderId` | 8748cddf-66b7-4b85-91a7-e6d08d8e1639$a9778d63-21e7-4d92-9b47-1b81144b9993!a9778d63-21e7-4d92-9b47-1b81144b9993 | Sent by the web UI | +| `uppyId` | uppy-example/pdf-1e-application/pdf-238300 | Sent by the web UI | +| `relativeFolder` | | File path relative to the folder that is being uploaded, without filename. Sent by the web UI. | +| `tusEndpoint` | `https://cloud.opencloud.test/remote.php/dav/spaces/8748cddf-66b7-4b85-91a7-e6d08d8e1639$a9778d63-21e7-4d92-9b47-1b81144b9993` | Sent by the web UI | +| `uploadId` | 71d5f878-a96c-4d7b-9627-658d782c93d7 | Sent by the web UI | +| `topLevelFolderId` | undefined | Sent by the web UI | +| `routeName` | files-spaces-generic | Sent by the web UI | +| `routeDriveAliasAndItem` | cGVyc29uYWwvYWRtaW4= | Sent by the web UI | +| `routeShareId` | | Share ID when uploading into a received folder share. Sent by the web UI | diff --git a/versioned_docs/version-4.0.0/dev/server/apis/http/webdav/index.md b/versioned_docs/version-4.0.0/dev/server/apis/http/webdav/index.md new file mode 100644 index 00000000..002611e8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/http/webdav/index.md @@ -0,0 +1,558 @@ +--- +title: WebDAV +sidebar_position: 2 +--- + +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +**Web** **D**istributed **A**uthoring and **V**ersioning (WebDAV) consists of a set of methods, headers, and content-types extending HTTP/1.1 for the management of resources and -properties, creation and management of resource collections, URL namespace manipulation, and resource locking (collision avoidance). WebDAV is one of the central APIs that OpenCloud uses for handling file resources, metadata and locks. + +:::info RFC +**WebDAV RFCs** + +RFC 2518 was published in February 1999. [RFC 4918](https://datatracker.ietf.org/doc/html/rfc4918), published in June 2008 obsoletes RFC 2518 with minor revisions mostly due to interoperability experience. + +::: + +## Calling the WebDAV API + +### Request URI + +```sh +{HTTP method} https://cloud.opencloud.test/{webdav-base}/{resourceID}/{path} +``` + +The request URI consists of: + +| Component | Description | +| --------------- | ------------------------------------------------------------------------------------------------------ | +| `{HTTP method}` | The HTTP method which is used in the request. | +| `{webdav-base}` | The WebDAV base path component. Possible options are | +| | `dav/spaces/` This is the default and optimized endpoint for all WebDAV requests. | +| | `remote.php/dav/spaces/`\* | +| | `remote.php/webdav/`\* | +| | `webdav/`\* | +| | `dav/`\* | +| `{resourceID}` | This resourceID is used as the WebDAV root element. All children are accessed by their relative paths. | +| `{path}` | The relative path to the WebDAV root. In most of the cases, this is the space root. | + +\* these dav endpoints are implemented for legacy reasons and should not be used. Note: The legacy endpoints **do not take the resourceID as an argument.** + +### HTTP methods + +| Method | Description | +| --------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| PROPFIND | Retrieve properties as XML from a web resource. It is also overloaded to retrieve the collection structure (a.k.a. directory hierarchy) of a remote system. | +| PROPPATCH | Process instructions specified in the request body to set and/or remove properties defined on the resource identified by the request uri. | +| MKCOL | Create a WebDAV collection (folder) at the location specified by the request uri. | +| GET | Retrieve a WebDAV resource. | +| HEAD | Retrieve a WebDAV resource without reading the body. | +| PUT | A PUT performed on an existing resource replaces the GET response entity of the resource. | +| POST | Not part of the WebDAV rfc and has no effect on a WebDAV resource. However, this method is used in the TUS protocol for uploading resources. | +| PATCH | Not part of the WebDAV rfc and has no effect on a WebDAV resource. However, this method is used in the TUS protocol for uploading resources. | +| COPY | Creates a duplicate of the source resource identified by the Request-URI, in the destination resource identified by the URI in the Destination header. | +| MOVE | The MOVE operation on a non-collection resource is the logical equivalent of a copy (COPY), followed by consistency maintenance processing, followed by a delete of the source, where all three actions are performed in a single operation. | +| DELETE | Delete the resource identified by the Request-URI. | +| LOCK | A LOCK request to an existing resource will create a lock on the resource identified by the Request-URI, provided the resource is not already locked with a conflicting lock. | +| UNLOCK | The UNLOCK method removes the lock identified by the lock token in the Lock-Token request header. The Request-URI must identify a resource within the scope of the lock. | + +The methods `MKCOL`, `GET`, `HEAD`, `LOCK`, `COPY`, `MOVE`, `UNLOCK` and `DELETE` need no request body. + +The methods `PROPFIND`, `PROPPATCH`, `PUT` require a request body, normally in XML format to provide the needed values. + +:::tip Tooling +**WebDAV is not REST** + +The WebDAV protocol was created before the REST paradigm has become the de-facto standard for API design. WebDAV uses http methods which are not part of REST. Therefore all the tooling around API design and documentation is not usable (like OpenApi 3.0 / Swagger or others). +::: + +### Authentication + +For development purposes the examples in the developer documentation use Basic Auth. It is disabled by default and should only be enabled by setting `PROXY_ENABLE_BASIC_AUTH` in [the proxy](/docs/dev/server/services/proxy/environment-variables) for development or test instances. + +To authenticate with a Bearer token or OpenID Connect access token replace the `-u user:password` Basic Auth option of curl with a `-H 'Authorization: Bearer '` header. A `` can be obtained by copying it from a request in the browser, although it will time out within minutes. To automatically refresh the OpenID Connect access token an ssh-agent like solution like [oidc-agent](https://github.com/indigo-dc/oidc-agent) should be used. + +## Listing Properties + +This method is used to list the properties of a resource in xml. This method can also be used to retrieve the listing of a WebDAV collection which means the content of a remote directory. + + + + +```shell +curl -L -X PROPFIND 'https://localhost:9200/dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/' \ +-H 'Depth: 1' \ +-d ' + + + + + + + + + + + + + + + + + +' +``` + + + + +```shell +PROPFIND /dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/ HTTP/1.1 +Host: localhost:9200 +Origin: https://localhost +Access-Control-Request-Method: PROPFIND +Depth: 1 +Content-Type: application/xml +Authorization: Basic YWRtaW46YWRtaW4= +Content-Length: 436 + + + + + + + + + + + + + + + + + + + + +``` + + + + +The request consists of a request body and an optional `Depth` Header. + +:::tip PROPFIND usage +**Metadata and Directory listings** + +Clients can use the `PROPFIND` method to retrieve properties of resources (metadata) and to list the content of a directories. +::: + +### Response + + + + +#### Multi Status Response + +A Multi-Status response conveys information about multiple resources +in situations where multiple status codes might be appropriate. The +default Multi-Status response body is an application/xml +HTTP entity with a `multistatus` root element. Further elements +contain `200`, `300`, `400`, and `500` series status codes generated during +the method invocation. + +Although `207` is used as the overall response status code, the +recipient needs to consult the contents of the multistatus response +body for further information about the success or failure of the +method execution. The response MAY be used in success, partial +success and also in failure situations. + +The `multistatus` root element holds zero or more `response` elements +in any order, each with information about an individual resource. + +#### Body + +```xml + + + /dav/spaces/storage-users-1$some-admin-user-id-0000-000000000000/ + + + RDNVCKZP + 0 + storage-users-1$some-admin-user-id-0000-000000000000!some-admin-user-id-0000-000000000000 + storage-users-1$some-admin-user-id-0000-000000000000!some-admin-user-id-0000-000000000000 + admin + Admin + https://localhost:9200/f/storage-users-1$some-admin-user-id-0000-000000000000%21some-admin-user-id-0000-000000000000 + 10364682 + Mon, 04 Sep 2023 20:10:09 GMT + "c4d3610dfe4fac9b44e1175cfc44b12b" + + + + + HTTP/1.1 200 OK + + + + + + + + + HTTP/1.1 404 Not Found + + + + /dav/spaces/storage-users-1$some-admin-user-id-0000-000000000000/New%20file.txt + + + RDNVWZP + + SHA1:1c68ea370b40c06fcaf7f26c8b1dba9d9caf5dea MD5:2205e48de5f93c784733ffcca841d2b5 ADLER32:058801ab + + 0 + storage-users-1$some-admin-user-id-0000-000000000000!90cc3e73-0c6c-4346-9c4d-f529976d4990 + storage-users-1$some-admin-user-id-0000-000000000000!90cc3e73-0c6c-4346-9c4d-f529976d4990 + admin + Admin + + 0 + 1 + 3 + + https://localhost:9200/f/storage-users-1$some-admin-user-id-0000-000000000000%2190cc3e73-0c6c-4346-9c4d-f529976d4990 + 5 + 5 + Mon, 28 Aug 2023 20:45:03 GMT + "75115347c74701a3be9c635ddebbf5c4" + text/plain + + + HTTP/1.1 200 OK + + + + /dav/spaces/storage-users-1$some-admin-user-id-0000-000000000000/NewFolder/ + + + RDNVCKZP + 0 + storage-users-1$some-admin-user-id-0000-000000000000!5c73ecd9-d9f4-44f4-b685-ca4cb40aa6b7 + storage-users-1$some-admin-user-id-0000-000000000000!5c73ecd9-d9f4-44f4-b685-ca4cb40aa6b7 + admin + Admin + https://localhost:9200/f/storage-users-1$some-admin-user-id-0000-000000000000%215c73ecd9-d9f4-44f4-b685-ca4cb40aa6b7 + 0 + Mon, 28 Aug 2023 20:45:10 GMT + "e83367534cc595a45d706857fa5f03d8" + + + + + HTTP/1.1 200 OK + + + + + + + + + HTTP/1.1 404 Not Found + + + +``` + + + + +#### Body + +```xml + + + Sabre\DAV\Exception\BadRequest + Invalid Depth header value: 3 + +``` + +This can occur if the request is malformed e.g. due to an invalid xml request body or an invalid depth header value. + + + +#### Body + +```xml + + + Sabre\DAV\Exception\NotFound + Resource not found + +``` + + + + +### Request Body + +The `PROPFIND` Request can include an XML request body containing a list of namespaced property names. + +### Namespaces + +When building the body of your DAV request, you will request properties that are available under a specific namespace URI. It is usual to declare prefixes for those namespace in the `d:propfind` element of the body. + +Available namespaces: + +| URI | Prefix | +| ------------------------------------------- | ------ | +| DAV: | d | +| `http://sabredav.org/ns` | s | +| `http://owncloud.org/ns` | oc | +| `http://open-collaboration-services.org/ns` | ocs | +| `http://open-cloud-mesh.org/ns` | ocm | + +### Request Example with declared namespaces + +```xml + + + +``` + +### Supported WebDAV Properties + +| Property | Desription | Example | +| ----------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | +| `` | The latest modification time. | `Fri, 30 Dec 2022 14:22:43 GMT` | +| `` | The file's etag. | `"c3a1ee4a0c28edc15b9635c3bf798013"` | +| `` | The mime type of the file. | `image/jpeg` | +| `` | Specifies the nature of the resource. | `` for a folder | +| `` | The size if it is a file in bytes. | `5` bytes | +| `` | Describes the active locks on a resource. | | +| `` | The globally unique ID of the resource. | `storage-1$27475553-7fb7-4689-b4cf-bbb635daff79!27475553-7fb7-4689-b4cf-bbb635daff79` | +| `` | The globally unique ID of the resource. | `storage-1$27475553-7fb7-4689-b4cf-bbb635daff79!27475553-7fb7-4689-b4cf-bbb635daff79` | +| `` | Direct URL to download a file from. | Not implemented. | +| `` | Determines the actions a user can take on the resource. | The value is a string containing letters that clients can use to determine available actions. | +| | | `S`: Shared | +| | | `M`: Mounted | +| | | `D`: Deletable | +| | | `NV`: Updateable, Renameable, Moveable | +| | | `W`: Updateable (file) | +| | | `CK`: Creatable (folders only) | +| | | `Z`: Deniable | +| | | `P`: Trashbin Purgable | +| | | `X`: Securely Viewable | +| | | In the early stages this was indeed a list of permissions. Over time, more flags were added and the term permissions no longer really fits well. | +| `` | List of user specified tags. | `test` | +| `` | The favorite state. | `0` for not favourited, `1` for favourited | +| `` | The user id of the owner of a resource. Project spaces have no owner. | `dennis` | +| `` | The display name of the owner of a resource. Project spaces have no owner. | `Dennis Ritchie` | +| `` | List of share types. | `0` = User Share | +| | | `1` = Group Share | +| | | `2` = Public Link | +| `` | | ``
`SHA1:1c68ea370b40c06fcaf7f26c8b1dba9d9caf5dea MD5:2205e48de5f93c784733ffcca841d2b5 ADLER32:058801ab`
`
` | +| | | Due to a bug in the very early development of OpenCloud, this value is not an array, but a string separated by whitespaces. | +| `` | Similar to `getcontentlength` but it also works for folders. | `10` bytes | +| `` | The ID of the share if the resource is part of such. | `storage-1$27475553-7fb7-4689-b4cf-bbb635daff79!27475553-7fb7-4689-b4cf-bbb635daff79` | +| `` | The root path of the shared resource if the resource is part of such. | `/shared-folder` | +| `` | The ID of the shared resource if the resource is part of such. | `storage-1$27475553-7fb7-4689-b4cf-bbb635daff79!27475553-7fb7-4689-b4cf-bbb635daff79` | +| `` | The type of the resource if it's a public link. | `folder` | +| `` | The share permissions of the resource if it's a public link. | `1` | +| `` | The expiration date of the public link. | `Tue, 14 May 2024 12:44:29 GMT` | +| `` | The date the public link was created. | `Tue, 14 May 2024 12:44:29 GMT` | +| `` | The username of the user who created the public link. | `admin` | +| `` | The original name of the resource before it was deleted. | `some-file.txt` | +| `` | The original location of the resource before it was deleted. | `some-file.txt` | +| `` | The date the resource was deleted. | `Tue, 14 May 2024 12:44:29 GMT` | +| `` | Audio meta data if the resource contains such. | `MetallicaMetallicaEnter Sandman` | +| `` | Location meta data if the resource contains such. | `51.504106-0.074575` | + +### Request Headers + +A client executing a `PROPFIND` request MUST submit a Depth Header value. In practice, support for infinite-depth requests MAY be disabled, due to the performance and security concerns associated with this behavior. Servers SHOULD treat a +request without a Depth header as if a `Depth: infinity` header was included. Infinite depth requests are disabled by default in opencloud. + +| Name | Value | +| ----- | ------------------------------------------------------------------------------------- | +| Depth | `0` = Only return the desired resource. | +| | `1` = Return the desired resource and all resources one level below in the hierarchy. | +| | `infinity` = Return all resources below the root. | + +:::warning Use the Depth header with caution +**Depth: infinity** + +Using the `Depth: infinity` header value can cause heavy load on the server, depending on the size of the file tree. + +The request can run into a timeout and the server performance could be affected for other users. +::: + +## Create a Directory + +Clients create directories (WebDAV collections) by executing a `MKCOL` request at the location specified by the request url. + + + +```shell +curl -L -X MKCOL 'https://localhost:9200/dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/NewFolder/' \ +-H 'Authorization: Basic YWRtaW46YWRtaW4=' +``` + + +```shell +MKCOL /dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/NewFolder/ HTTP/1.1 +Host: localhost:9200 +Authorization: Basic YWRtaW46YWRtaW4= +``` + + +### Response + + + +This indicates that the Resource has been created successfully. + +### Body + +The response has no body. + + + +### Body + +```xml + + + Sabre\DAV\Exception\Forbidden + + +``` + + + + +### Body + +```xml + + + Sabre\DAV\Exception\MethodNotAllowed + The resource you tried to create already exists + +``` + + + + +## Upload File + +To upload files to the remote server, clients can use the `PUT` method to create or fully replace the content of the remote file. + +### Request Headers + +| Name | Usage | +| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `X-OC-Mtime` | Send the last modified
time of the file to the server in unixtime format. The server applies this mtime to the resource rather than the actual time. | +| `OC-Checksum` | Provide the checksum of the
file content to the server.
This is used to prevent corrupted data transfers. | +| `If-Match` | The If-Match request-header field is used with a method to make it
conditional. A client that has one or more entities previously
obtained from the resource can verify that one of those entities is
current by including a list of their associated entity tags in the
If-Match header field. | + + + + +```shell +curl -L -X PUT 'https://localhost:9200/dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/test.txt' \ +-H 'X-OC-Mtime: 1692369418' \ +-H 'OC-Checksum: SHA1:40bd001563085fc35165329ea1ff5c5ecbdbbeef' \ +-H 'If-Match: "4436aef907f41f1ac7dfd1ac3d0d455f"' \ +-H 'Content-Type: text/plain' \ +-H 'Authorization: Basic YWRtaW46YWRtaW4=' \ +-d '123' +``` + + + + +```shell +PUT /dav/spaces/storage-users-1%24some-admin-user-id-0000-000000000000/test.txt HTTP/1.1 +Host: localhost:9200 +X-OC-Mtime: 1692369418 +OC-Checksum: SHA1:40bd001563085fc35165329ea1ff5c5ecbdbbeef +If-Match: "4436aef907f41f1ac7dfd1ac3d0d455f" +Content-Type: text/plain +Authorization: Basic YWRtaW46YWRtaW4= +Content-Length: 3 + +123 +``` + + + + +### Response + + + +This indicates that the Resource has been created successfully. + +#### Body + +The response has no body. + +#### Headers + +```yaml +Oc-Etag: '4436aef907f41f1ac7dfd1ac3d0d455f' +Oc-Fileid: storage-users-1$some-admin-user-id-0000-000000000000!07452b22-0ba9-4539-96e1-3511aff7fd2f +Last-Modified: Fri, 18 Aug 2023 14:36:58 +0000 +X-Oc-Mtime: accepted +``` + + + +This indicates that the Resource has been updated successfully. + +#### Body + +The response has no body. + +#### Headers + +```yaml +Oc-Etag: '4436aef907f41f1ac7dfd1ac3d0d455f' +Oc-Fileid: storage-users-1$some-admin-user-id-0000-000000000000!07452b22-0ba9-4539-96e1-3511aff7fd2f +Last-Modified: Fri, 18 Aug 2023 14:36:58 +0000 +X-Oc-Mtime: accepted +``` + + + +This indicates that the checksum, which was sent by the client, does not match the computed one after all bytes have been received by the server. + +#### Body + +```xml + + + Sabre\DAV\Exception\BadRequest + The computed checksum does not match the one received from the client. + +``` + + + + +The user cannot create files in that remote location. + + + +The remote target space cannot be found. + + + +This error can occur when the request cannot be executed due to a missing precondition. One example is a PUT into a non-existing remote folder. It can also happen when the client sends the wrong etag in the `If-Match` header. + + diff --git a/versioned_docs/version-4.0.0/dev/server/apis/index.md b/versioned_docs/version-4.0.0/dev/server/apis/index.md new file mode 100644 index 00000000..a3e8a3a6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/apis/index.md @@ -0,0 +1,41 @@ +--- +title: APIs +sidebar_position: 1 +--- + +OpenCloud provides a large set of different **application programming interfaces (APIs)**. OpenCloud is built by microservices. That means many calls to "functions" in the code are remote calls. + +Basically we have two different API "universes": [HTTP](/docs/dev/server/apis/http) and [gRPC](/docs/dev/server/apis/grpc_apis). + +| HTTP | gRPC | +| -------------------------------- | -------------------------------- | +| ![HTTP Logo](/img/http-logo.png) | ![gRPC Logo](/img/grpc-logo.png) | + +For inter-service-communication we are using mostly gRPC calls because it has some advantages. In the future, clients may decide to use gRPC directly to make use of these advantages. + +![OpenCloud APIs Architecture](/img/oc-apis.drawio.svg) + +## [HTTP](/docs/dev/server/apis/http) + +HTTP APIs are mostly used for client < > server communication. Modern applications are embracing a [RESTful](https://en.wikipedia.org/wiki/Representational_state_transfer) software architecture style. REST APIs are using the HTTP protocol to transfer data between clients and servers. All our clients talk to the Server using HTTP APIs. This has legacy reasons and is well-supported across many platforms and technologies. OpenCloud uses an HTTP API gateway (proxy service) to route client requests to the correct service. + +### OpenAPI + +It is best practise to define APIs and their behavior by a spec. We are using the OpenAPI standard for all new APIs. The [OpenAPI Specification](https://swagger.io/specification/), previously known as the Swagger Specification, is a specification for a machine-readable interface definition language for describing, producing, consuming and visualizing RESTful web services. Previously part of the Swagger framework, it became a separate project in 2016, overseen by the OpenAPI Initiative, an open-source collaboration project of the Linux Foundation. Swagger and some other tools can generate code, documentation and test cases from interface files. + +### RFC + +Some APIs have become a de facto standard and are additionally covered by an [RFC](https://en.wikipedia.org/wiki/Request_for_Comments). + +## [gRPC](/docs/dev/server/apis/grpc_apis) + +In gRPC, a client application can directly call methods on a server application on a different machine as if it was a local object. This makes it easier to create distributed applications based on microservices. In gRPC we can define a service and specify the methods that can be called remotely. A gRPC client has a stub that provides the same methods and types as the server. +OpenCloud uses a gRPC API Gateway (gateway service) to route the requests to the correct service. + +### Protobuf + +gRPC APIs are typically defined by [Protocol buffers](https://developers.google.com/protocol-buffers/docs/overview). The different client and server stubs are created from `*.proto` files by code generation tools. + +## Versioning + +There are different standards for API versioning: Through URL, through request parameter, through custom header and through content negotiation. OpenCloud uses the versioning by URL concept although this creates a big code footprint. The versioning follows [SemVer](https://semver.org). We update the major version number when breaking changes are needed. Clients can decide which major version they use through the request URL. The specific implementation is documented on each API. diff --git a/versioned_docs/version-4.0.0/dev/server/configuration/config-system.md b/versioned_docs/version-4.0.0/dev/server/configuration/config-system.md new file mode 100644 index 00000000..35a1db03 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/configuration/config-system.md @@ -0,0 +1,131 @@ +--- +title: Configuration System +sidebar_position: 2 +slug: /dev/server/configuration/config-system +--- + +The Opencloud configuration system is designed for cloud‑native deployments and follows the 12‑Factor App principles. It provides a predictable override pattern, clear configuration locations, and a consistent approach across all services. + +- Cloud‑native: configuration is externalized from code and deployable via files, ConfigMaps/Secrets, or environment variables. +- 12‑Factor friendly: environment variables are first‑class citizens; immutable images with runtime configuration injected at deploy time. +- Composable: a global base config can be refined by per‑service files and finally overridden by environment variables. + +## Defaults + +The Opencloud services come with sensible default settings for most configuration options. These defaults are configured within each service and are listed in the service documentation for each individual service. + +:::tip +Default values for all configuration options are built into each service. You only need to provide values for settings that differ from the defaults. +::: + +### Configuration locations + +- Containers (default): `/etc/opencloud` + - Mount this directory into containers (Docker, Kubernetes) via ConfigMaps/Secrets or volumes. +- Binary releases and local installs: `$HOME/.opencloud/config/` + - Useful when running downloaded binaries on developer laptops or bare hosts without container mounts. +- The location for the configuration files can be changed by setting the environment variable `OC_CONFIG_PATH` to point to a different directory. +- Typical files inside either location: + - `opencloud.yaml` — global defaults shared by all services + - `.yaml` — overrides specific to a service (e.g. `activitylog.yaml`, `proxy.yaml`) + +### Override pattern (precedence) + +From lowest to highest precedence: + +1. `opencloud.yaml` (global defaults) +2. `.yaml` (service‑specific overrides) +3. Environment variables (highest precedence) + +Environment variables always win over file values. If a key is not set at a higher level, it falls back to the next level down. + +### Config via YAML files + +- YAML is used for both the global file and per‑service files. +- Keep keys lowercase with hyphens or underscores, matching service documentation. +- Secrets should be provided via environment variables or secret mounts rather than committed files. +- Simple bash substitution is supported. E.g. `https://${COLLABORA_DOMAIN|collabora.opencloud.test}/` will use the value of `COLLABORA_DOMAIN` env var or default to `collabora.opencloud.test` if not set. + +#### Bash substitution syntax + +| **Expression** | **Meaning** | +| ------------------ | -------------------------------------------------------------------- | +| `${var}` | Value of var (same as `$var`) | +| `${var-$DEFAULT}` | If var not set, evaluate expression as $DEFAULT | +| `${var:-$DEFAULT}` | If var not set or is empty, evaluate expression as $DEFAULT | +| `${var=$DEFAULT}` | If var not set, evaluate expression as $DEFAULT | +| `${var:=$DEFAULT}` | If var not set or is empty, evaluate expression as $DEFAULT | +| `${var+$OTHER}` | If var set, evaluate expression as $OTHER, otherwise as empty string | +| `${var:+$OTHER}` | If var set, evaluate expression as $OTHER, otherwise as empty string | +| `$$var` | Escape expressions. Result will be `$var`. | + +#### Example: `opencloud.yaml` + +```yaml +# /etc/opencloud/opencloud.yaml +# Global OpenCloud configuration defaults +token_manager: + jwt_secret: 'x8Kz$3vQw9!Rb7#NfU2^BgT%Lp1@Hm0' +machine_auth_api_key: 'X7gH2k9Vb4q!S6dP' +system_user_api_key: 'mS9#cR4pZx7%aL1t' +transfer_secret: 'Tq6!vB2^nY8@wF5z' +url_signing_secret: 'U9p$R0e!K3#sH7cQ' +system_user_id: d3b1f5a2-7c9d-4e2f-a1b2-3c4d5e6f7a8b +admin_user_id: a1f2e3d4-5b6c-7d8e-9f01-23456789abcd +## Service-specific configurations, same as in .yaml files +graph: + application: + id: a72387e1-fb22-49c9-9c94-12ff0abf9b38 + events: + tls_insecure: true + spaces: + insecure: true +``` + +#### Example: `proxy.yaml` + +```yaml +# /etc/opencloud/proxy.yaml +role_assignment: + driver: oidc + oidc_role_mapper: + role_claim: opencloudRoles + role_mapping: + - role_name: admin + claim_value: myAdminRole + - role_name: spaceadmin + claim_value: mySpaceAdminRole + - role_name: user + claim_value: myUserRole + - role_name: guest + claim_value: myGuestRole +``` + +### Environment variables + +- Global scope: variables prefixed with `OC_` apply to more than one service (shared/global settings). +- Service scope: variables prefixed with `_` apply only to that specific service (e.g. `ACTIVITYLOG_`, `PROXY_`, `FRONTEND_`). +- When both are present for the same setting, the service‑scoped variable wins for that service. +- Booleans: `true`/`false` (case‑insensitive). +- Numbers: plain integers/floats. +- Lists: comma‑separated values unless otherwise specified by the service. + +Examples: + +```bash +# Raise log level globally for all services +export OC_LOG_LEVEL=debug + +# Override only the Proxy service log level +export PROXY_LOG_LEVEL=info + +# Make public shares not require a password globally +export OC_SHARING_PUBLIC_SHARE_MUST_HAVE_PASSWORD=false +``` + +Environment variables take precedence over both `opencloud.yaml` and `.yaml`. See the list of [global variables](./global-environment-variables) + +### More information + +- [Global environment variable reference](./global-environment-variables) +- Individual service pages for service‑specific options and examples (e.g. [Activity Log](/docs/dev/server/services/activitylog), [Proxy](/docs/dev/server/services/proxy), [Frontend](/docs/dev/server/services/frontend)). diff --git a/versioned_docs/version-4.0.0/dev/server/configuration/global-envvars.mdx b/versioned_docs/version-4.0.0/dev/server/configuration/global-envvars.mdx new file mode 100644 index 00000000..49a8b915 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/configuration/global-envvars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: global-envvars +slug: global-environment-variables +title: Global Environment Variables +--- + +import Envvars from '@site/static/env-vars/global_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/configuration/global/_category_.json b/versioned_docs/version-4.0.0/dev/server/configuration/global/_category_.json new file mode 100644 index 00000000..771114aa --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/configuration/global/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Global Cnfiguration" +} \ No newline at end of file diff --git a/versioned_docs/version-4.0.0/dev/server/configuration/index.md b/versioned_docs/version-4.0.0/dev/server/configuration/index.md new file mode 100644 index 00000000..a1ba46fd --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/configuration/index.md @@ -0,0 +1,4 @@ +--- +title: Configuration +sidebar_position: 1 +--- diff --git a/versioned_docs/version-4.0.0/dev/server/index.md b/versioned_docs/version-4.0.0/dev/server/index.md new file mode 100644 index 00000000..51bfd4d4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/index.md @@ -0,0 +1,8 @@ +--- +title: 'Architecture' +sidebar_position: 1 +--- + +Our current Architecture Diagrams can be found here. + +You’ll find the Libre Graph API documentation by clicking this link. diff --git a/versioned_docs/version-4.0.0/dev/server/services/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/_category_.json new file mode 100644 index 00000000..e2cbad40 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Services", + "position": 2 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/activitylog/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/activitylog/_category_.json new file mode 100644 index 00000000..40429492 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/activitylog/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Activitylog", + "position": 1 +} \ No newline at end of file diff --git a/versioned_docs/version-4.0.0/dev/server/services/activitylog/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/activitylog/env-vars.mdx new file mode 100644 index 00000000..cb5cb917 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/activitylog/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: activitylog-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/activitylog_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/activitylog/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/activitylog/example-config.mdx new file mode 100644 index 00000000..928c3162 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/activitylog/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: activitylog-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/activitylog.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/activitylog/index.md b/versioned_docs/version-4.0.0/dev/server/services/activitylog/index.md new file mode 100644 index 00000000..89324fd8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/activitylog/index.md @@ -0,0 +1,11 @@ +--- +title: Activity Log +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/activitylog/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/activitylog/info.mdx new file mode 100644 index 00000000..9738359b --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/activitylog/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: activitylog-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/activitylog_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/antivirus/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/antivirus/_category_.json new file mode 100644 index 00000000..f68f0744 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/antivirus/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Antivirus", + "position": 2 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/antivirus/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/antivirus/env-vars.mdx new file mode 100644 index 00000000..1471ab0d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/antivirus/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: antivirus-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/antivirus_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/antivirus/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/antivirus/example-config.mdx new file mode 100644 index 00000000..6e5afa38 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/antivirus/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: antivirus-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/antivirus.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/antivirus/index.md b/versioned_docs/version-4.0.0/dev/server/services/antivirus/index.md new file mode 100644 index 00000000..dd69e27c --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/antivirus/index.md @@ -0,0 +1,11 @@ +--- +title: Antivirus +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/antivirus/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/antivirus/info.mdx new file mode 100644 index 00000000..e5024553 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/antivirus/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: antivirus-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/antivirus_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-provider/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/app-provider/_category_.json new file mode 100644 index 00000000..07e4ec98 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-provider/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "App-provider", + "position": 3 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-provider/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/app-provider/env-vars.mdx new file mode 100644 index 00000000..d1ae45ea --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-provider/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: app-provider-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/app-provider_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-provider/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/app-provider/example-config.mdx new file mode 100644 index 00000000..aff534a2 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-provider/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: app-provider-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/app-provider.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-provider/index.md b/versioned_docs/version-4.0.0/dev/server/services/app-provider/index.md new file mode 100644 index 00000000..fe468186 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-provider/index.md @@ -0,0 +1,11 @@ +--- +title: App Provider +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-registry/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/app-registry/_category_.json new file mode 100644 index 00000000..3b0316a9 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-registry/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "App-registry", + "position": 4 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-registry/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/app-registry/env-vars.mdx new file mode 100644 index 00000000..74ef6ce3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-registry/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: app-registry-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/app-registry_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-registry/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/app-registry/example-config.mdx new file mode 100644 index 00000000..48cdfbfa --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-registry/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: app-registry-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/app-registry.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-registry/index.md b/versioned_docs/version-4.0.0/dev/server/services/app-registry/index.md new file mode 100644 index 00000000..c846f9ad --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-registry/index.md @@ -0,0 +1,11 @@ +--- +title: App Registry +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/app-registry/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/app-registry/info.mdx new file mode 100644 index 00000000..93b790dc --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/app-registry/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: app-registry-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/app-registry_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/audit/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/audit/_category_.json new file mode 100644 index 00000000..7af484e6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/audit/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Audit", + "position": 5 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/audit/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/audit/env-vars.mdx new file mode 100644 index 00000000..1d4f3b8b --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/audit/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: audit-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/audit_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/audit/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/audit/example-config.mdx new file mode 100644 index 00000000..cfd4aaa5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/audit/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: audit-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/audit.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/audit/index.md b/versioned_docs/version-4.0.0/dev/server/services/audit/index.md new file mode 100644 index 00000000..6e9b4c63 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/audit/index.md @@ -0,0 +1,11 @@ +--- +title: Audit +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/audit/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/audit/info.mdx new file mode 100644 index 00000000..8fb28de3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/audit/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: audit-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/audit_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-app/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/auth-app/_category_.json new file mode 100644 index 00000000..da45d67c --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-app/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Auth-app", + "position": 6 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-app/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-app/env-vars.mdx new file mode 100644 index 00000000..934542b2 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-app/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: auth-app-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/auth-app_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-app/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-app/example-config.mdx new file mode 100644 index 00000000..9514f2a9 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-app/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: auth-app-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/auth-app.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-app/index.md b/versioned_docs/version-4.0.0/dev/server/services/auth-app/index.md new file mode 100644 index 00000000..5d96b066 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-app/index.md @@ -0,0 +1,11 @@ +--- +title: Auth App +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-app/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-app/info.mdx new file mode 100644 index 00000000..c31b1f75 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-app/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: auth-app-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/auth-app_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-basic/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/_category_.json new file mode 100644 index 00000000..4bf1eb16 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Auth-basic", + "position": 7 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-basic/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/env-vars.mdx new file mode 100644 index 00000000..426ed2a5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: auth-basic-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/auth-basic_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-basic/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/example-config.mdx new file mode 100644 index 00000000..672ad0d5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: auth-basic-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/auth-basic.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-basic/index.md b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/index.md new file mode 100644 index 00000000..3ce7b3a6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/index.md @@ -0,0 +1,11 @@ +--- +title: Auth Basic +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-basic/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/info.mdx new file mode 100644 index 00000000..06d4d4d0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-basic/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: auth-basic-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/auth-basic_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/_category_.json new file mode 100644 index 00000000..f50be5ee --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Auth-bearer", + "position": 8 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/env-vars.mdx new file mode 100644 index 00000000..7059c38a --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: auth-bearer-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/auth-bearer_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/example-config.mdx new file mode 100644 index 00000000..ef2381ce --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: auth-bearer-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/auth-bearer.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/index.md b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/index.md new file mode 100644 index 00000000..de569f92 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/index.md @@ -0,0 +1,11 @@ +--- +title: Auth Bearer +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/info.mdx new file mode 100644 index 00000000..a7ec2f35 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-bearer/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: auth-bearer-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/auth-bearer_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-machine/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/_category_.json new file mode 100644 index 00000000..d7cf7e29 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Auth-machine", + "position": 9 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-machine/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/env-vars.mdx new file mode 100644 index 00000000..00f4b287 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: auth-machine-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/auth-machine_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-machine/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/example-config.mdx new file mode 100644 index 00000000..90d7b0a5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: auth-machine-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/auth-machine.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-machine/index.md b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/index.md new file mode 100644 index 00000000..cca11376 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/index.md @@ -0,0 +1,11 @@ +--- +title: Auth Machine +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-machine/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/info.mdx new file mode 100644 index 00000000..a2ee68ac --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-machine/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: auth-machine-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/auth-machine_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-service/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/auth-service/_category_.json new file mode 100644 index 00000000..371db847 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-service/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Auth-service", + "position": 10 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-service/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-service/env-vars.mdx new file mode 100644 index 00000000..c53a60af --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-service/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: auth-service-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/auth-service_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-service/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-service/example-config.mdx new file mode 100644 index 00000000..3358c950 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-service/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: auth-service-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/auth-service.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-service/index.md b/versioned_docs/version-4.0.0/dev/server/services/auth-service/index.md new file mode 100644 index 00000000..00ddbf67 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-service/index.md @@ -0,0 +1,11 @@ +--- +title: Auth Service +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/auth-service/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/auth-service/info.mdx new file mode 100644 index 00000000..3a686289 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/auth-service/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: auth-service-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/auth-service_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/clientlog/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/clientlog/_category_.json new file mode 100644 index 00000000..5c624596 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/clientlog/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Clientlog", + "position": 11 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/clientlog/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/clientlog/env-vars.mdx new file mode 100644 index 00000000..9b432f93 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/clientlog/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: clientlog-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/clientlog_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/clientlog/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/clientlog/example-config.mdx new file mode 100644 index 00000000..94bc0cbd --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/clientlog/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: clientlog-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/clientlog.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/clientlog/index.md b/versioned_docs/version-4.0.0/dev/server/services/clientlog/index.md new file mode 100644 index 00000000..6f86e332 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/clientlog/index.md @@ -0,0 +1,11 @@ +--- +title: Client Log +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/clientlog/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/clientlog/info.mdx new file mode 100644 index 00000000..9f43ea1e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/clientlog/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: clientlog-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/clientlog_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/collaboration/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/collaboration/_category_.json new file mode 100644 index 00000000..697a2897 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/collaboration/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Collaboration", + "position": 12 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/collaboration/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/collaboration/env-vars.mdx new file mode 100644 index 00000000..f0455f7e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/collaboration/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: collaboration-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/collaboration_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/collaboration/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/collaboration/example-config.mdx new file mode 100644 index 00000000..b806eca0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/collaboration/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: collaboration-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/collaboration.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/collaboration/index.md b/versioned_docs/version-4.0.0/dev/server/services/collaboration/index.md new file mode 100644 index 00000000..ee056037 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/collaboration/index.md @@ -0,0 +1,11 @@ +--- +title: Collaboration +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/collaboration/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/collaboration/info.mdx new file mode 100644 index 00000000..7a8632fe --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/collaboration/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: collaboration-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/collaboration_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/eventhistory/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/_category_.json new file mode 100644 index 00000000..359221c6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Eventhistory", + "position": 13 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/eventhistory/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/env-vars.mdx new file mode 100644 index 00000000..de6a0cea --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: eventhistory-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/eventhistory_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/eventhistory/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/example-config.mdx new file mode 100644 index 00000000..1009d749 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: eventhistory-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/eventhistory.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/eventhistory/index.md b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/index.md new file mode 100644 index 00000000..64882174 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/index.md @@ -0,0 +1,11 @@ +--- +title: Event History +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/eventhistory/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/info.mdx new file mode 100644 index 00000000..d8958d97 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/eventhistory/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: eventhistory-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/eventhistory_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/frontend/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/frontend/_category_.json new file mode 100644 index 00000000..c2c4c2a8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/frontend/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Frontend", + "position": 14 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/frontend/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/frontend/env-vars.mdx new file mode 100644 index 00000000..dcf0dc19 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/frontend/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: frontend-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/frontend_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/frontend/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/frontend/example-config.mdx new file mode 100644 index 00000000..aed353b6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/frontend/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: frontend-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/frontend.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/frontend/index.md b/versioned_docs/version-4.0.0/dev/server/services/frontend/index.md new file mode 100644 index 00000000..bd743216 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/frontend/index.md @@ -0,0 +1,11 @@ +--- +title: Frontend +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/frontend/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/frontend/info.mdx new file mode 100644 index 00000000..7ce73c61 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/frontend/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: frontend-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/frontend_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/gateway/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/gateway/_category_.json new file mode 100644 index 00000000..933994dd --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/gateway/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Gateway", + "position": 15 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/gateway/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/gateway/env-vars.mdx new file mode 100644 index 00000000..8eb79052 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/gateway/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: gateway-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/gateway_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/gateway/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/gateway/example-config.mdx new file mode 100644 index 00000000..091c2b88 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/gateway/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: gateway-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/gateway.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/gateway/index.md b/versioned_docs/version-4.0.0/dev/server/services/gateway/index.md new file mode 100644 index 00000000..fa6e391f --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/gateway/index.md @@ -0,0 +1,11 @@ +--- +title: Gateway +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/gateway/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/gateway/info.mdx new file mode 100644 index 00000000..62d2a007 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/gateway/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: gateway-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/gateway_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/graph/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/graph/_category_.json new file mode 100644 index 00000000..2ba522f7 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/graph/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Graph", + "position": 16 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/graph/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/graph/env-vars.mdx new file mode 100644 index 00000000..1ac75655 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/graph/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: graph-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/graph_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/graph/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/graph/example-config.mdx new file mode 100644 index 00000000..c2cbc701 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/graph/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: graph-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/graph.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/graph/index.md b/versioned_docs/version-4.0.0/dev/server/services/graph/index.md new file mode 100644 index 00000000..efb5ffd0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/graph/index.md @@ -0,0 +1,11 @@ +--- +title: Graph +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/graph/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/graph/info.mdx new file mode 100644 index 00000000..f5906511 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/graph/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: graph-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/graph_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/groups/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/groups/_category_.json new file mode 100644 index 00000000..59e8a231 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/groups/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Groups", + "position": 17 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/groups/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/groups/env-vars.mdx new file mode 100644 index 00000000..080d42bb --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/groups/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: groups-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/groups_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/groups/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/groups/example-config.mdx new file mode 100644 index 00000000..d00c9096 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/groups/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: groups-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/groups.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/groups/index.md b/versioned_docs/version-4.0.0/dev/server/services/groups/index.md new file mode 100644 index 00000000..1ada2023 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/groups/index.md @@ -0,0 +1,11 @@ +--- +title: Groups +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idm/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/idm/_category_.json new file mode 100644 index 00000000..c61bf1cf --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idm/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Idm", + "position": 18 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/idm/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/idm/env-vars.mdx new file mode 100644 index 00000000..0274587f --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idm/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: idm-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/idm_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idm/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/idm/example-config.mdx new file mode 100644 index 00000000..491c181c --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idm/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: idm-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/idm.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/idm/index.md b/versioned_docs/version-4.0.0/dev/server/services/idm/index.md new file mode 100644 index 00000000..1b07da98 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idm/index.md @@ -0,0 +1,11 @@ +--- +title: IDM +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idm/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/idm/info.mdx new file mode 100644 index 00000000..e37e3d7c --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idm/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: idm-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/idm_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idp/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/idp/_category_.json new file mode 100644 index 00000000..077892de --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idp/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Idp", + "position": 19 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/idp/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/idp/env-vars.mdx new file mode 100644 index 00000000..80b770ab --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idp/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: idp-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/idp_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idp/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/idp/example-config.mdx new file mode 100644 index 00000000..490811ce --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idp/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: idp-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/idp.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/idp/index.md b/versioned_docs/version-4.0.0/dev/server/services/idp/index.md new file mode 100644 index 00000000..d1a34d94 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idp/index.md @@ -0,0 +1,11 @@ +--- +title: IDP +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/idp/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/idp/info.mdx new file mode 100644 index 00000000..9f0afc8e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/idp/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: idp-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/idp_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/invitations/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/invitations/_category_.json new file mode 100644 index 00000000..c4fca62f --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/invitations/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Invitations", + "position": 20 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/invitations/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/invitations/env-vars.mdx new file mode 100644 index 00000000..35c7dffe --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/invitations/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: invitations-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/invitations_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/invitations/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/invitations/example-config.mdx new file mode 100644 index 00000000..dfc60496 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/invitations/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: invitations-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/invitations.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/invitations/index.md b/versioned_docs/version-4.0.0/dev/server/services/invitations/index.md new file mode 100644 index 00000000..45cca32b --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/invitations/index.md @@ -0,0 +1,11 @@ +--- +title: Invitations +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/invitations/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/invitations/info.mdx new file mode 100644 index 00000000..88651051 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/invitations/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: invitations-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/invitations_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/nats/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/nats/_category_.json new file mode 100644 index 00000000..9360d681 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/nats/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Nats", + "position": 21 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/nats/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/nats/env-vars.mdx new file mode 100644 index 00000000..f8a87932 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/nats/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: nats-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/nats_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/nats/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/nats/example-config.mdx new file mode 100644 index 00000000..a88f51eb --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/nats/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: nats-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/nats.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/nats/index.md b/versioned_docs/version-4.0.0/dev/server/services/nats/index.md new file mode 100644 index 00000000..daca4f53 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/nats/index.md @@ -0,0 +1,11 @@ +--- +title: NATS +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/nats/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/nats/info.mdx new file mode 100644 index 00000000..d5b8f35a --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/nats/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: nats-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/nats_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/notifications/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/notifications/_category_.json new file mode 100644 index 00000000..6083f789 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/notifications/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Notifications", + "position": 22 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/notifications/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/notifications/env-vars.mdx new file mode 100644 index 00000000..5e46c427 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/notifications/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: notifications-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/notifications_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/notifications/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/notifications/example-config.mdx new file mode 100644 index 00000000..e0f3bc24 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/notifications/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: notifications-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/notifications.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/notifications/index.md b/versioned_docs/version-4.0.0/dev/server/services/notifications/index.md new file mode 100644 index 00000000..744c2d85 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/notifications/index.md @@ -0,0 +1,11 @@ +--- +title: Notifications +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/notifications/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/notifications/info.mdx new file mode 100644 index 00000000..2537deca --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/notifications/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: notifications-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/notifications_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocdav/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/ocdav/_category_.json new file mode 100644 index 00000000..710981f8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocdav/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Ocdav", + "position": 23 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocdav/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocdav/env-vars.mdx new file mode 100644 index 00000000..fc8c600d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocdav/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: ocdav-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/ocdav_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocdav/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocdav/example-config.mdx new file mode 100644 index 00000000..36ee34ab --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocdav/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: ocdav-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/ocdav.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocdav/index.md b/versioned_docs/version-4.0.0/dev/server/services/ocdav/index.md new file mode 100644 index 00000000..a1ee12f8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocdav/index.md @@ -0,0 +1,11 @@ +--- +title: ocDAV +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocdav/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocdav/info.mdx new file mode 100644 index 00000000..f6e80376 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocdav/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: ocdav-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/ocdav_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/ocm/_category_.json new file mode 100644 index 00000000..0b3e0e62 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Ocm", + "position": 24 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/create-share-flow.md b/versioned_docs/version-4.0.0/dev/server/services/ocm/create-share-flow.md new file mode 100644 index 00000000..edf31fe3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/create-share-flow.md @@ -0,0 +1,60 @@ +--- +title: Create Share Flow +sidebar_position: 2 +--- + +Ths diagram illustrates the flow of creating a share from Instance A to Instance B using the OCM (Open Cloud Mesh) protocol. + +```mermaid +sequenceDiagram +box Instance A +participant osp as ocmsharesprovider +participant gwa as Gateway A +participant httpa as ocs +end +actor usera as User A +box Instance B +participant httpb as ocmd +participant gwb as Gateway B +participant ocmc as OCMCore +end + + Note over usera: A shares a resource with B + usera->>+httpa: CreateShare + httpa->>+gwa: GetInfoByDomain + Note left of gwa: GetInfoByDomain (ocmproviderauthorizer) + gwa-->>-httpa: return + + httpa->>+gwa: GetAcceptedUser + Note left of gwa: GetAcceptedUser (ocminvitemanager) + gwa-->>-httpa: return + + httpa->>+gwa: CreateOCMShare + gwa->>+osp: CreateOCMShare + osp->>+gwa: Stat + gwa-->>-osp: return + + Note left of osp: store share in repo + + osp->>+httpb: POST /shares + httpb->>+gwb: IsProviderAllowed + Note right of gwb: IsProviderAllowed (ocmproviderauthorizer) + gwb-->>-httpb: return + + httpb->>+gwb: GetUser + Note right of gwb: GetUser (userprovider) + gwb-->>-httpb: return + + httpb->>+gwb: CreateOCMCoreShare + gwb->>+ocmc: CreateOCMCoreShare + Note right of ocmc: StoreReceivedShare + ocmc-->>-gwb: return + gwb-->>-httpb: return + httpb-->>-osp: return + osp-->>-gwa: return + gwa-->>-httpa: return + httpa->>+gwa: Stat + Note left of gwa: Stat (storageprovider) + gwa-->>-httpa: return + httpa-->>-usera: return +``` diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocm/env-vars.mdx new file mode 100644 index 00000000..79ee0724 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 3 +id: ocm-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/ocm_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocm/example-config.mdx new file mode 100644 index 00000000..fdc32c35 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 4 +id: ocm-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/ocm.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/index.md b/versioned_docs/version-4.0.0/dev/server/services/ocm/index.md new file mode 100644 index 00000000..69a961b4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/index.md @@ -0,0 +1,11 @@ +--- +title: OCM +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocm/info.mdx new file mode 100644 index 00000000..bfcd5878 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: ocm-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/ocm_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocm/invitation-flow.md b/versioned_docs/version-4.0.0/dev/server/services/ocm/invitation-flow.md new file mode 100644 index 00000000..2f88c833 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocm/invitation-flow.md @@ -0,0 +1,50 @@ +--- +title: Invitation Flow +sidebar_position: 2 +--- + +This diagram illustrates the flow of creating and accepting an invitation token between two instances (A and B) in a federated environment. + +```mermaid +sequenceDiagram +box Instance A +participant ima as InviteManager A +participant gwa as Gateway A +participant httpa as HTTP Api A (ocm, sm) +end +actor usera as User A +actor userb as User B +box Instance B +participant httpb as HTTP Api B (ocm, sm) +participant gwb as Gateway B +participant imb as InviteManager B +end + + Note over usera: A creates invitation token + usera->>+httpa: POST /generate-invite (sciencemesh) + httpa->>+gwa: GenerateInviteToken + gwa->>+ima: GenerateInviteToken + Note left of ima: store token in repo + ima-->>-gwa: return token + gwa-->>-httpa: return token + httpa-->>-usera: return token + + Note over usera,userb: A passes token to B + + Note over userb: B accepts invitation + userb->>+httpb: POST /accept-invite (sciencemesh) + httpb->>+gwb: ForwardInvite + gwb->>+imb: ForwardInvite + imb->>+httpa: POST /invite-accepted (ocm) + httpa->>+gwa: AcceptInvite + gwa->>+ima: AcceptInvite + Note left of ima: get token from repo + Note left of ima: add remote user + ima-->>-gwa: return + gwa-->>-httpa: return remote user + httpa->>-imb: return remote user + Note right of imb: add remote user + imb-->>-gwb: return + gwb-->>-httpb: return + httpb-->>-userb: return +``` diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocs/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/ocs/_category_.json new file mode 100644 index 00000000..c31abfc7 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocs/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Ocs", + "position": 25 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocs/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocs/env-vars.mdx new file mode 100644 index 00000000..09fe1cc0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocs/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: ocs-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/ocs_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocs/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocs/example-config.mdx new file mode 100644 index 00000000..c8d7db68 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocs/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: ocs-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/ocs.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocs/index.md b/versioned_docs/version-4.0.0/dev/server/services/ocs/index.md new file mode 100644 index 00000000..4991a7ea --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocs/index.md @@ -0,0 +1,11 @@ +--- +title: OCS +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/ocs/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/ocs/info.mdx new file mode 100644 index 00000000..0b0166a6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/ocs/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: ocs-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/ocs_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/policies/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/policies/_category_.json new file mode 100644 index 00000000..eaa51025 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/policies/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Policies", + "position": 26 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/policies/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/policies/env-vars.mdx new file mode 100644 index 00000000..2529bbd3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/policies/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: policies-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/policies_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/policies/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/policies/example-config.mdx new file mode 100644 index 00000000..347484e4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/policies/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: policies-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/policies.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/policies/index.md b/versioned_docs/version-4.0.0/dev/server/services/policies/index.md new file mode 100644 index 00000000..ad713ed6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/policies/index.md @@ -0,0 +1,11 @@ +--- +title: Policies +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/policies/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/policies/info.mdx new file mode 100644 index 00000000..81386cf9 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/policies/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: policies-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/policies_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/postprocessing/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/_category_.json new file mode 100644 index 00000000..d5ef775d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Postprocessing", + "position": 27 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/postprocessing/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/env-vars.mdx new file mode 100644 index 00000000..87312b65 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: postprocessing-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/postprocessing_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/postprocessing/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/example-config.mdx new file mode 100644 index 00000000..34fdcf94 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: postprocessing-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/postprocessing.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/postprocessing/index.md b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/index.md new file mode 100644 index 00000000..a3cd03ad --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/index.md @@ -0,0 +1,11 @@ +--- +title: Postprocessing +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/postprocessing/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/info.mdx new file mode 100644 index 00000000..8bdff293 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/postprocessing/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: postprocessing-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/postprocessing_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/proxy/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/proxy/_category_.json new file mode 100644 index 00000000..962d7127 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/proxy/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Proxy", + "position": 28 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/proxy/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/proxy/env-vars.mdx new file mode 100644 index 00000000..b1d71390 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/proxy/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: proxy-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/proxy_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/proxy/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/proxy/example-config.mdx new file mode 100644 index 00000000..4707a393 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/proxy/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: proxy-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/proxy.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/proxy/index.md b/versioned_docs/version-4.0.0/dev/server/services/proxy/index.md new file mode 100644 index 00000000..8c1268fb --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/proxy/index.md @@ -0,0 +1,11 @@ +--- +title: Proxy +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/proxy/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/proxy/info.mdx new file mode 100644 index 00000000..a098172b --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/proxy/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: proxy-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/proxy_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/search/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/search/_category_.json new file mode 100644 index 00000000..a24d93a5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/search/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Search", + "position": 29 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/search/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/search/env-vars.mdx new file mode 100644 index 00000000..724afe87 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/search/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: search-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/search_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/search/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/search/example-config.mdx new file mode 100644 index 00000000..127e16f7 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/search/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: search-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/search.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/search/index.md b/versioned_docs/version-4.0.0/dev/server/services/search/index.md new file mode 100644 index 00000000..2c0d5fff --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/search/index.md @@ -0,0 +1,11 @@ +--- +title: Search +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/search/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/search/info.mdx new file mode 100644 index 00000000..20193938 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/search/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: search-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/search_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/settings/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/settings/_category_.json new file mode 100644 index 00000000..28b92e25 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/settings/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Settings", + "position": 30 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/settings/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/settings/env-vars.mdx new file mode 100644 index 00000000..6b83ee67 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/settings/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: settings-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/settings_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/settings/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/settings/example-config.mdx new file mode 100644 index 00000000..7314d207 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/settings/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: settings-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/settings.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/settings/index.md b/versioned_docs/version-4.0.0/dev/server/services/settings/index.md new file mode 100644 index 00000000..f436875a --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/settings/index.md @@ -0,0 +1,11 @@ +--- +title: Settings +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/settings/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/settings/info.mdx new file mode 100644 index 00000000..1fa8cd5e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/settings/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: settings-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/settings_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/sharing/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/sharing/_category_.json new file mode 100644 index 00000000..f2c612a4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sharing/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Sharing", + "position": 31 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/sharing/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/sharing/env-vars.mdx new file mode 100644 index 00000000..730ade5d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sharing/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: sharing-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/sharing_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/sharing/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/sharing/example-config.mdx new file mode 100644 index 00000000..4a328ca0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sharing/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: sharing-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/sharing.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/sharing/index.md b/versioned_docs/version-4.0.0/dev/server/services/sharing/index.md new file mode 100644 index 00000000..745cd63e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sharing/index.md @@ -0,0 +1,11 @@ +--- +title: Sharing +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/sse/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/sse/_category_.json new file mode 100644 index 00000000..cd9dceba --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sse/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Sse", + "position": 32 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/sse/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/sse/env-vars.mdx new file mode 100644 index 00000000..9b412c5d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sse/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: sse-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/sse_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/sse/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/sse/example-config.mdx new file mode 100644 index 00000000..b41fa1ce --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sse/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: sse-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/sse.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/sse/index.md b/versioned_docs/version-4.0.0/dev/server/services/sse/index.md new file mode 100644 index 00000000..3fb18a30 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sse/index.md @@ -0,0 +1,11 @@ +--- +title: SSE +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/sse/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/sse/info.mdx new file mode 100644 index 00000000..0430d4a3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/sse/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: sse-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/sse_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/_category_.json new file mode 100644 index 00000000..79ffd1e2 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Storage-publiclink", + "position": 33 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/env-vars.mdx new file mode 100644 index 00000000..e9f13716 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: storage-publiclink-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/storage-publiclink_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/example-config.mdx new file mode 100644 index 00000000..6354ab4e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: storage-publiclink-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/storage-publiclink.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/index.md b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/index.md new file mode 100644 index 00000000..90f2f3c8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-publiclink/index.md @@ -0,0 +1,11 @@ +--- +title: Storage Publiclink +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-shares/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/_category_.json new file mode 100644 index 00000000..a2a7ff96 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Storage-shares", + "position": 34 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-shares/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/env-vars.mdx new file mode 100644 index 00000000..8df19dac --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: storage-shares-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/storage-shares_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-shares/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/example-config.mdx new file mode 100644 index 00000000..170a0ba3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: storage-shares-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/storage-shares.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-shares/index.md b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/index.md new file mode 100644 index 00000000..ada484cc --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-shares/index.md @@ -0,0 +1,11 @@ +--- +title: Storage Shares +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-system/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/storage-system/_category_.json new file mode 100644 index 00000000..087e60ae --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-system/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Storage-system", + "position": 35 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-system/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-system/env-vars.mdx new file mode 100644 index 00000000..495e2d4e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-system/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: storage-system-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/storage-system_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-system/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-system/example-config.mdx new file mode 100644 index 00000000..7ada709e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-system/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: storage-system-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/storage-system.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-system/index.md b/versioned_docs/version-4.0.0/dev/server/services/storage-system/index.md new file mode 100644 index 00000000..3cc542db --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-system/index.md @@ -0,0 +1,11 @@ +--- +title: Storage System +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-system/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-system/info.mdx new file mode 100644 index 00000000..5e949854 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-system/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: storage-system-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/storage-system_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-users/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/storage-users/_category_.json new file mode 100644 index 00000000..b5afad37 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-users/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Storage-users", + "position": 36 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-users/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-users/env-vars.mdx new file mode 100644 index 00000000..d66c02b5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-users/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: storage-users-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/storage-users_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-users/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-users/example-config.mdx new file mode 100644 index 00000000..f3df6761 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-users/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: storage-users-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/storage-users.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-users/index.md b/versioned_docs/version-4.0.0/dev/server/services/storage-users/index.md new file mode 100644 index 00000000..6e172494 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-users/index.md @@ -0,0 +1,11 @@ +--- +title: Storage Users +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/storage-users/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/storage-users/info.mdx new file mode 100644 index 00000000..bca49000 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/storage-users/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: storage-users-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/storage-users_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/thumbnails/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/_category_.json new file mode 100644 index 00000000..123d2454 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Thumbnails", + "position": 37 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/thumbnails/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/env-vars.mdx new file mode 100644 index 00000000..1bff9973 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: thumbnails-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/thumbnails_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/thumbnails/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/example-config.mdx new file mode 100644 index 00000000..070ab9df --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: thumbnails-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/thumbnails.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/thumbnails/index.md b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/index.md new file mode 100644 index 00000000..8ac870fc --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/index.md @@ -0,0 +1,11 @@ +--- +title: Thumbnails +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/thumbnails/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/info.mdx new file mode 100644 index 00000000..99628d99 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/thumbnails/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: thumbnails-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/thumbnails_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/userlog/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/userlog/_category_.json new file mode 100644 index 00000000..ff7efe7d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/userlog/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Userlog", + "position": 38 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/userlog/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/userlog/env-vars.mdx new file mode 100644 index 00000000..604aae97 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/userlog/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: userlog-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/userlog_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/userlog/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/userlog/example-config.mdx new file mode 100644 index 00000000..429f1fa0 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/userlog/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: userlog-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/userlog.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/userlog/index.md b/versioned_docs/version-4.0.0/dev/server/services/userlog/index.md new file mode 100644 index 00000000..6af876bd --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/userlog/index.md @@ -0,0 +1,11 @@ +--- +title: User Log +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/userlog/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/userlog/info.mdx new file mode 100644 index 00000000..6f2811e8 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/userlog/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: userlog-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/userlog_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/users/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/users/_category_.json new file mode 100644 index 00000000..d4a77d51 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/users/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Users", + "position": 39 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/users/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/users/env-vars.mdx new file mode 100644 index 00000000..d73767df --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/users/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: users-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/users_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/users/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/users/example-config.mdx new file mode 100644 index 00000000..bfd00043 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/users/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: users-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/users.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/users/index.md b/versioned_docs/version-4.0.0/dev/server/services/users/index.md new file mode 100644 index 00000000..8c4a8493 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/users/index.md @@ -0,0 +1,11 @@ +--- +title: Users +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/web/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/web/_category_.json new file mode 100644 index 00000000..cdadc119 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/web/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Web", + "position": 40 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/web/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/web/env-vars.mdx new file mode 100644 index 00000000..8521d73e --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/web/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: web-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/web_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/web/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/web/example-config.mdx new file mode 100644 index 00000000..cd449845 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/web/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: web-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/web.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/web/index.md b/versioned_docs/version-4.0.0/dev/server/services/web/index.md new file mode 100644 index 00000000..3c313df4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/web/index.md @@ -0,0 +1,11 @@ +--- +title: Web +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/web/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/web/info.mdx new file mode 100644 index 00000000..d68b85be --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/web/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: web-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/web_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webdav/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/webdav/_category_.json new file mode 100644 index 00000000..01a700a5 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webdav/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Webdav", + "position": 41 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/webdav/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/webdav/env-vars.mdx new file mode 100644 index 00000000..f4c51743 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webdav/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: webdav-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/webdav_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webdav/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/webdav/example-config.mdx new file mode 100644 index 00000000..dc7bf1b4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webdav/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: webdav-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/webdav.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/webdav/index.md b/versioned_docs/version-4.0.0/dev/server/services/webdav/index.md new file mode 100644 index 00000000..eb466b72 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webdav/index.md @@ -0,0 +1,11 @@ +--- +title: WebDAV +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webdav/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/webdav/info.mdx new file mode 100644 index 00000000..cc8780d4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webdav/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: webdav-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/webdav_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webfinger/_category_.json b/versioned_docs/version-4.0.0/dev/server/services/webfinger/_category_.json new file mode 100644 index 00000000..b0e2debb --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webfinger/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Webfinger", + "position": 42 +} diff --git a/versioned_docs/version-4.0.0/dev/server/services/webfinger/env-vars.mdx b/versioned_docs/version-4.0.0/dev/server/services/webfinger/env-vars.mdx new file mode 100644 index 00000000..ad3161b4 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webfinger/env-vars.mdx @@ -0,0 +1,12 @@ +--- +sidebar_position: 2 +id: webfinger-envvars +slug: environment-variables +title: Environment Variables +--- + +import Envvars from '@site/static/env-vars/webfinger_configvars.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webfinger/example-config.mdx b/versioned_docs/version-4.0.0/dev/server/services/webfinger/example-config.mdx new file mode 100644 index 00000000..8875c30f --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webfinger/example-config.mdx @@ -0,0 +1,11 @@ +--- +sidebar_position: 3 +id: webfinger-example +slug: yaml-config +title: Yaml Config +--- + +import yamlContent from '!!raw-loader!@site/static/env-vars/webfinger.yaml'; +import CodeBlock from '@theme/CodeBlock'; + +{yamlContent} diff --git a/versioned_docs/version-4.0.0/dev/server/services/webfinger/index.md b/versioned_docs/version-4.0.0/dev/server/services/webfinger/index.md new file mode 100644 index 00000000..fcb603d3 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webfinger/index.md @@ -0,0 +1,11 @@ +--- +title: Webfinger +sidebar_position: 1 +--- + +import DocCardList from '@theme/DocCardList'; +import ServiceOverview from '@site/static/partials/service-overview.md'; + + + + diff --git a/versioned_docs/version-4.0.0/dev/server/services/webfinger/info.mdx b/versioned_docs/version-4.0.0/dev/server/services/webfinger/info.mdx new file mode 100644 index 00000000..1594bf0c --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/server/services/webfinger/info.mdx @@ -0,0 +1,10 @@ +--- +sidebar_position: 1 +id: webfinger-info +slug: information +title: General Information +--- + +import Info from '@site/static/env-vars/webfinger_readme.md'; + + diff --git a/versioned_docs/version-4.0.0/dev/web/_category_.json b/versioned_docs/version-4.0.0/dev/web/_category_.json new file mode 100644 index 00000000..8eb4ff33 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Web", + "position": 3 +} diff --git a/versioned_docs/version-4.0.0/dev/web/design-system.md b/versioned_docs/version-4.0.0/dev/web/design-system.md new file mode 100644 index 00000000..fcc0445f --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/design-system.md @@ -0,0 +1,6 @@ +--- +title: Design System +sidebar_position: 6 +--- + +The design system documentation can be found here. diff --git a/versioned_docs/version-4.0.0/dev/web/development/_category_.json b/versioned_docs/version-4.0.0/dev/web/development/_category_.json new file mode 100644 index 00000000..1e3764f7 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/development/_category_.json @@ -0,0 +1,9 @@ +{ + "label": "Development", + "position": 2, + "link": { + "type": "generated-index", + "description": "\uD83D\uDC69\u200D\uD83D\uDCBB Development", + "slug": "dev/web/development" + } +} diff --git a/versioned_docs/version-4.0.0/dev/web/development/conventions.md b/versioned_docs/version-4.0.0/dev/web/development/conventions.md new file mode 100644 index 00000000..454c5bf6 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/development/conventions.md @@ -0,0 +1,57 @@ +--- +title: 'Conventions' +sidebar_position: 3 +id: conventions +--- + +This is a collection of tips and conventions to follow when working on the [OpenCloud Web frontend](https://github.com/opencloud-eu/web). +Since it is a living document, please open a PR if you find something missing. + +## Contributing to OpenCloud Web + +Everyone is invited to contribute. Simply fork the [codebase](https://github.com/opencloud-eu/web/), +check the [issues](https://github.com/opencloud-eu/web/issues?q=is%3Aopen%20is%3Aissue%20label%3AType%3AGood-First-Issue) +for a suitable one and open a pull request! + +### Formal checks + +To make sure your pull request can be efficiently reviewed and won't need a lot of changes down the road, please run all formal checks (linter, formatter, type checks and unit tests) via `pnpm check:all` locally. Our [CI](https://ci.opencloud.eu/repos/6) will run on +pull requests and report back any problems after that. For a further introduction on how we handle testing, please head to +the [testing docs](/docs/dev/web/testing/running-tests). + +## Code Conventions + +### Early Returns + +We're trying to stick with early returns in our code to make it more performant and simpler to reason about it. + +### Translations + +Use `$gettext` (or a variation of it) inside HTML tags (instead of a `` or similar) in order to translate strings. + +### TypeScript + +We're using TypeScript which allows us to catch bugs at transpile time. Clean types make sure our IDEs can support us in reasoning about our ever-growing, complex codebase. + +### Composition API and script setup + +We prefer using Vue's Composition API in combination with [script setup](https://vuejs.org/api/sfc-script-setup) over the traditional options API. This integrates nicely with TypeScript and allows us to use composables and reactive APIs more effectively. + +That being said, due to the fact that we are still in the process of migrating our codebase, you might find some files using the options API or even composition API without script setup. We are working on this and will eventually migrate all files. + +### Composables + +We make heavy use of composables to encapsulate reusable logic. This allows us to share code between components and keep our components clean and focused on their specific tasks. + +### Split large components + +If a component is getting too big, consider splitting it into smaller components. This will make it easier to read and maintain. A good rule of thumb is to keep components under 300 lines of code. + +### Services + +We try to avoid services when possible and rather use composables instead. If writing a service is necessary, it should be instantiated once via the `web-runtime` package and then made available via a `useYourService` composable. + +### Dependencies + +To keep the bundle size small and reduce the risk of introducing security problems for our users, we try to limit +the amount of dependencies in our code base and keep them as up-to-date as possible. diff --git a/versioned_docs/version-4.0.0/dev/web/development/repo-structure.md b/versioned_docs/version-4.0.0/dev/web/development/repo-structure.md new file mode 100644 index 00000000..37abb764 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/development/repo-structure.md @@ -0,0 +1,124 @@ +--- +title: 'Repo structure and (published) packages' +sidebar_position: 2 +id: repo-structure +--- + +## Repository Structure + +From a developer's perspective, the most important parts of the [OpenCloud Web repo](https://github.com/opencloud-eu/web) are the following files and folders: + +### dev Folder and docker-compose.yml File + +The `/dev` folder contains all the configuration files that are needed in the `docker-compose.yml` file. This docker compose stack +contains all the backend and testing related infrastructure that is needed for an out-of-the-box usable localhost development setup, +as described in the [tooling section](/docs/dev/web/development/tooling). + +### packages Folder + +We're using the [OpenCloud Web repo](https://github.com/opencloud-eu/web) as a mono repo. It contains a variety of packages. Some of them get +published to [npmjs.com](https://npmjs.com), others define the core packages, apps and extensions that are the foundation of +the `OpenCloud Web` release artifact. + +Having these packages side by side within the `/packages` folder of the repo is possible because of a `pnpm` feature called `Workspaces`. You can learn more about that by visiting the [pnpm docs](https://pnpm.io/workspaces). + +### tests Folder + +We're using [Playwright](https://playwright.dev) for UI testing. The UI tests are located in `/tests/e2e`. You can read more about testing in our [testing docs](/docs/dev/web/testing/running-tests). + +### package.json File + +This is probably no surprise: the root level `package.json` file defines the project information, build scripts, dependencies and some more details. +Each package in `/packages` can and most likely will contain another `package.json` which does the same for the respective package. + +### vite.config.ts + +We're working with [Vite](https://vitejs.dev) as a local development server and build tool. `vite.config.ts` is the main configuration file for that. +You can read more about the usage in our [tooling section](/docs/dev/web/development/tooling). + +## Packages + +Each package in the `/packages` folder can - not exclusively, but most commonly - consist of + +- source code (`/src`), +- unit tests (`/tests`), +- translations (`/l10n`) and +- a `package.json` file for package specific details and dependencies. + +### Code Style and Build Config + +Some of our packages in `/packages` are pure helper packages which ensure a common code style and build configuration for all our +internal (mono repo) and external packages. We encourage you to make use of the very same packages. This helps the community +understand code more easily, even when coming from different developers or vendors in the OpenCloud Web ecosystem. + +Namely those packages are + +- `/packages/eslint-config` +- `/packages/extension-sdk` +- `/packages/prettier-config` +- `/packages/tsconfig` + +### OpenCloud Design System + +The OpenCloud Design System (`/packages/design-system`) is a collection of components, design tokens and styles which ensure a +unique and consistent look and feel and branding throughout the OpenCloud Web ecosystem. We hope that you use it, too, so that your +very own apps and extensions will blend in with all the others. Documentation and code examples can be found in +the [design system documentation](https://docs.opencloud.eu/design-system/). + +The OpenCloud Design System is a standalone project that gets published on npmjs.com as [@opencloud-eu/design-system](https://www.npmjs.com/package/@opencloud-eu/design-system). Since it's bundled with OpenCloud Web, you should not bundle it with your app or extension. However, you can add it as a dev dependency for better IDE support. + +### web-client + +The client package (`/packages/web-client`) serves as an abstraction layer for the various OpenCloud APIs, like +[LibreGraph](https://docs.opencloud.eu/apis/http/graph/), [WebDAV](https://docs.opencloud.eu/server/next/developer_manual/webdav_api/) and +[OCS](https://docs.opencloud.eu/server/next/developer_manual/core/apis/ocs-capabilities.html). The package provides TypeScript +interfaces for various entities (like files, folders, shares and spaces) and makes sure that raw API responses are properly +transformed so that you can deal with more useful objects. The web-client package gets published +on npmjs.com as [@opencloud-eu/web-client](https://www.npmjs.com/package/@opencloud-eu/web-client). + +Dedicated documentation for the `web-client` package is not available, yet, since our extension system is still work in progress. However, the package's [README.md](https://github.com/opencloud-eu/web/blob/main/packages/web-client/README.md) gives you a few examples on how to use it. + +### web-pkg + +The web-pkg package (`/packages/web-pkg`) is a collection of opinionated components, composables, types and other helpers that aim +at making your app and extension developer experience as easy and seamless as possible. The web-pkg package gets published on +npmjs.com as [@opencloud-eu/web-pkg](https://www.npmjs.com/package/@opencloud-eu/web-pkg). + +Dedicated documentation for the `web-pkg` package is not available, yet, since our extension system is still work in progress. + +### web-runtime + +At the very heart of OpenCloud Web, the `web-runtime` is responsible for dependency injection, app bootstrapping, configuration, +authentication, data preloading and much more. +It is very likely that you will never get in touch with it as most of the developer-facing features are exposed via `web-pkg`. If you +have more questions about this package, please write an issue in our [issue tracker](https://github.com/opencloud-eu/web/issues). + +### Standalone Core Apps + +The repo also includes some standalone apps which are bundled with the default OpenCloud Web release artifact. + +- `web-app-activities` +- `web-app-admin-settings` +- `web-app-app-store` +- `web-app-files` +- `web-app-ocm` +- `web-app-search` +- `web-app-webfinger` + +### Viewer and Editor Apps + +Apps which fall into the categories `viewer` or `editor` can be opened from the context of a file or folder. This mostly happens from +within the `files` app. We currently bundle the following apps with the default OpenCloud Web release artifact: + +- `web-app-epub-reader` a simple reader for `.epub` files +- `web-app-external` an iframe integration of all the apps coming from the app provider + (e.g. Collabora Online, OnlyOffice and others) +- `web-app-pdf-viewer` a viewer for `.pdf` files, which relies on native PDF rendering support from the browser +- `web-app-preview` a viewer for various media files (audio / video / image formats) +- `web-app-text-editor` a simple editor for `.txt`, `.md` and other plain text files + +If you're interested in writing your own viewer or editor app for certain file types, please have a look at the [extension system docs](/docs/dev/web/extension-system). + +### Testing + +Basic setup and helpers for unit testing lives in `web-test-helpers`. This package gets published on npmjs.com as [@opencloud-eu/web-test-helpers](https://www.npmjs.com/package/@opencloud-eu/web-test-helpers) to ensure its functionality can be used anywhere inside the OpenCloud Web ecosystem. diff --git a/versioned_docs/version-4.0.0/dev/web/development/tooling.md b/versioned_docs/version-4.0.0/dev/web/development/tooling.md new file mode 100644 index 00000000..ad449285 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/development/tooling.md @@ -0,0 +1,59 @@ +--- +title: 'Tooling' +sidebar_position: 1 +id: tooling +--- + +## Packaging + +Web is using [pnpm](https://pnpm.io/) as package manager and [vite](https://vitejs.dev/) as build tool. The latter is built on top of [rollup](https://rollupjs.org/) and brings some additional features such as instant hot-reloading. + +## Development Setup + +### Prerequisites + +Please make sure you have the following tools installed on your system: + +- docker +- docker-compose (if not already included in your docker installation) +- node +- pnpm (we recommend the installation via `corepack` which is included in newer node versions) + +:::note +If you’re not using Docker Desktop, you might have to modify your `/etc/hosts` and add `127.0.0.1 host.docker.internal` to make `host.docker.internal` links work. +::: + +:::note +This setup currently doesn't work on Windows out of the box. + +
+ Workaround + + One of our contributors has opened a PR to a dependency that prevents us from successfully bundling the frontend. + Feel free to check out [their changes](https://github.com/egoist/rollup-plugin-postcss/pull/384) and build them locally if you absolutely want to work on Windows. +
+::: + +### Installing Dependencies + +After cloning the source code, install the dependencies via `pnpm install`. + +### Starting the Server + +You can start the OpenCloud server by running `docker-compose up opencloud -d`. If you want to run the full stack, you can run `docker-compose up -d` instead. This will also start the wopi service and an instance of Collabora. + +### Building and Accessing Web + +After starting the docker containers, you can build Web by running `pnpm build:w`. This command compiles the project and includes support for hot-reloading, allowing you to see changes as you make them. However, note that the rebuild process may take some time. + +For a faster development experience, consider enabling instant hot-reloading. Details on how to set this up are provided below. + +Now you can access Web via [https://host.docker.internal:9200](https://host.docker.internal:9200). + +### Using Instant Hot-Reload via Vite + +To work with instant hot-reloading, you can also build Web by running `pnpm vite`. The port to access Web is slightly different then: [https://host.docker.internal:9201](https://host.docker.internal:9201). Also note that the initial page load may take a bit longer than usual. This is normal and to be expected. + +:::note +Make sure that you ran `pnpm build` once before starting the server with `pnpm vite`. Also, you need to accept the self-signed certificate in your browser for [https://host.docker.internal:9200](https://host.docker.internal:9200) _and_ [https://host.docker.internal:9201](https://host.docker.internal:9201). +::: diff --git a/versioned_docs/version-4.0.0/dev/web/embed-mode.md b/versioned_docs/version-4.0.0/dev/web/embed-mode.md new file mode 100644 index 00000000..ad0b3283 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/embed-mode.md @@ -0,0 +1,149 @@ +--- +title: 'Embed Mode' +sidebar_position: 4 +--- + +The OpenCloud Web can be consumed by another application in a stripped down version called "Embed mode". This mode is supposed to be used in the context of selecting or sharing resources. + +## Getting started + +To integrate OpenCloud Web into your application, add an iframe element pointing to your OpenCloud Web deployed instance with additional query parameter `embed=true`. + +```html + +``` + +## Communication + +To establish seamless cross-origin communication between the embedded instance and the parent application, our approach involves emitting events using the `postMessage` method. These events can be conveniently captured by utilizing the standard `window.addEventListener('message', listener)` pattern. + +### Target origin + +By default, the `postMessage` method does not specify the `targetOrigin` parameter. However, it is recommended best practice to explicitly pass in the URI of the iframe origin (not the parent application). To enhance security, you can specify this value by modifying the config option `options.embed.messagesOrigin`. + +### Events + +To maintain uniformity and ease of handling, each event encapsulates the same structure within its payload: `{ name: string, data: any }`. + +| Name | Data | Description | +| ------------------------------- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | +| **opencloud-embed:select** | `Resource[]` | Gets emitted when user selects resources or location via the select action | +| **opencloud-embed:share-links** | `Array<{ url: string, password?: string }>` | Gets emitted when user shares resources via the "Share links" action. Includes passwords when applicable. | +| **opencloud-embed:share** | `string[]` | **(Deprecated)** Gets emitted when user shares resources. Use `opencloud-embed:share-links` for password support. | +| **opencloud-embed:cancel** | `null` | Gets emitted when user attempts to close the embedded instance via "Cancel" action | + +### Example + +```html + + + +``` + +## Location picker + +By default, the Embed mode allows users to select resources. In certain cases (e.g. uploading a file), this needs to be changed to allow selecting a location. This can be achieved by running the embed mode with additional parameter `embed-target=location`. With this parameter, resource selection is disabled and the selected resources array always includes the current folder as the only item. +In special scenarios you also want the user to set a file name, this can be achieved by adding the `embed-choose-file-name=true` parameter, or if you also want to set a default file name, you can use `embed-choose-file-name-suggestion=my file.text`. + +### Example + +```html + + + +``` + +## File picker + +The File Picker mode in OpenCloud Web is designed for embedding an interface that allows users to pick a single file. +This mode can be configured to restrict the file types that users can select. To enable the File Picker mode, you need +to include the embed-target=file query parameter in the iframe URL. Furthermore, you can specify allowed file types +using the embed-file-types parameter. The file types can be specified using file extensions, MIME types, or a +combination of both. If the embed-file-types parameter is not provided, all file types will be selectable by default. + +### Example + +```html + + + +``` + +## Delegate authentication + +If you already have a valid `access_token` that can be used to call the API from within the Embed mode and do not want to force the user to authenticate again, you can delegate the authentication. Delegating authentication will disable internal login form in OpenCloud Web and will instead use events to obtain the token and update it. + +### Configuration + +To allow authentication delegation, you need to set the config option `options.embed.delegateAuthentication` to `true`. This can be achieved via query parameter `embed-delegate-authentication=true`. Because we are using the `postMessage` method to communicate across different origins, it is best practice to verify that the event originated from a known origin and not from some malicious site. We highly recommend to allow this check in production environments. You can enable it by setting the config option `options.embed.delegateAuthenticationOrigin` via query parameter `embed-delegate-authentication-origin=my-origin`. The value of this parameter will be compared against the `MessageEvent.origin` value and if they do not match, the token will be rejected. + +### Events + +#### Opening Embed mode + +As already mentioned, we're using the `postMessage` method to allow communication between the Embed mode and the parent application. When the Embed mode is opened for the first time, the user gets redirected to the `/web-oidc-callback` page where a message with payload `{ name: 'opencloud-embed:request-token', data: undefined }` is sent to request the `access_token` from the parent application. The parent application should set an event listener before opening the Embed mode and once received, it should send a message with payload `{ name: 'opencloud-embed:update-token', data: { access_token: '' } }`. Once the Embed mode receives this message, it will save the token in the application state and will automatically authenticate the user. + +:::note +When passing the token in the message payload, use only the token itself without `Bearer` string as that will be added automatically in the Embed mode. +::: + +:::note +To save unnecessary duplication of messages with only different names, the name in the message payload above is exactly the same for both the initial authentication and subsequent token updates after renewal. +::: + +#### Updating the token + +When authentication is delegated, the automatic renewal of the token inside of OpenCloud Web is disabled. In order to update the token, a listener is created which awaits a message with payload `{ name: 'opencloud-embed:update-token', data: { access_token: '' } }`. The token will then be replaced inside of the Embed mode automatically. diff --git a/versioned_docs/version-4.0.0/dev/web/extension-system/_category_.json b/versioned_docs/version-4.0.0/dev/web/extension-system/_category_.json new file mode 100644 index 00000000..3a3a12d9 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/extension-system/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Extension System", + "position": 5 +} diff --git a/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/_category_.json b/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/_category_.json new file mode 100644 index 00000000..29c8e97d --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Extension Types", + "position": 2 +} diff --git a/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/action-extensions.md b/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/action-extensions.md new file mode 100644 index 00000000..82325885 --- /dev/null +++ b/versioned_docs/version-4.0.0/dev/web/extension-system/extension-types/action-extensions.md @@ -0,0 +1,90 @@ +--- +title: 'Action extensions' +sidebar_position: 1 +id: action-extensions +--- + +## Action extension type + +Actions are one of the possible extension types. Registered actions get rendered in various places across the UI, depending on their scope and targets. + +### Configuration + +This is what the `ActionExtension` interface looks like: + +```typescript +interface ActionExtension { + id: string; + type: 'action'; + extensionPointIds?: string[]; + action: Action; // Please check the Action section below +} +``` + +For `id`, `type`, and `extensionPointIds`, please see [extension base section](/docs/dev/web/extension-system#extension-base-configuration) in the top level docs. + +#### Action + +The most important configuration options are: + +- `icon` - The icon to be displayed, can be picked from [Remix Icon](https://remixicon.com/) +- `name` - The name of the action (not displayed in the UI) +- `label` - The text to be displayed +- `route` - The string/route to navigate to. The nav item will be a `` tag. +- `href` - The URL to navigate to. The nav item will be a ``tag. +- `handler` - The action to perform upon click. The nav item will be a `