Konfiguration

Daten im Frontend editieren - Konfiguration

Hinweis: Diese Feature sind Teil der Visforms Subscription und in der freien Visforms Version nicht enthalten.

Die Visforms Subscription f├╝gt Ihrer Visforms Installation zus├Ątzliche Men├╝eintrags-Typen hinzu, die Sie verwenden m├╝ssen, wenn Sie Benutzern Ihrer Webseite erlauben wollen, Daten im Frontend zu bearbeiten.

Mithilfe des Men├╝eintrags vom Typ Visforms » Formulardaten mit Edit Link, k├Ânnen Sie alle ├ťbertragungen f├╝r ein bestimmtes Formular anzeigen.
Sie k├Ânnen mit diesem Men├╝eintrag die ├ťbertragungen f├╝r alle Benutzer mit entsprechender Berechtigung auch zur Bearbeitung freigeben.

Mithilfe des Men├╝eintrags vom Typ Visforms » “Meine ├ťbertragungen” alle ├ťbertragungen eines bestimmten Benutzers f├╝r alle Formulare angezeigt.

Um die Unterschiede zwischen diesen beiden Ans├Ątzen zu verstehen ist auch folgender Beitrag interessant: Formulardaten im Frontend.

Um das “Daten im Frontend editieren” aufsetzen zu k├Ânnen, m├╝ssen Sie unbedingt die Joomla Benutzerrechte Verwaltung (ACL = Access Control List) verstanden haben und korrekt einsetzen. Denn ├╝ber diese Rechte wird gesteuert, wer welche Daten wie bearbeiten darf.

Der folgende Beitrag erl├Ąutert die wichtigsten Aspekte der Joomla Benutzerrechte Verwaltung. Diese sind wichtig im Hinblick auf die Konfiguration des “Daten im Frontend editieren”, sowie die konkreten Optionen die Visforms Ihnen bietet.

Die Ausf├╝hrungen gelten sowohl f├╝r

  • das Aufsetzen einer Sicht Formulardaten mit Edit Link, als auch f├╝r
  • das Aufsetzen einer Sicht Meine ├ťbertragungen.

Weiterhin erl├Ąutert dieser Beitrag, wie Sie die Sicht Formulardaten mit Edit Link aufsetzen.
Folgende Schritt-f├╝r-Schritt-Anleitung gibt ein konkretes Beispiel f├╝r die Konfiguration einer Sicht Formulardaten mit Edit Link: Beispiel.

Wie Sie die Sicht Meine ├ťbertragungen konkret aufsetzen, wird in der Dokumentation in folgendem Abschnitt erl├Ąutert: ├ťbertragungen des Benutzers.

Grundlegendes zu Joomla Zugriffsrechten

Dieser Artikel startet mit einer grunds├Ątzlichen Erl├Ąuterung zur Verwendung des ACL (Access Control List) in Joomla. Denn es ist wirklich notwendig, dass Sie verstanden haben, wie ACL in Joomla funktioniert, bevor Sie versuchen mit Visforms Rechte f├╝r das Editieren von Daten im Frontend zu vergeben. Mehr dazu in: Access Control List Tutorial.

Zugriffsrechte in Joomla unterst├╝tzen den Mechanismus der hierarchischen Vererbung von Einstellungen. Es gibt zwei unterschiedliche Linien, entlang derer die Zugriffsrechte vererbt werden.

Linie entlang der Benutzergruppen

Die eine Vererbungslinie arbeitet entlang der Benutzergruppen.
Ein Beispiel f├╝r diese Line ist Registered -> Author -> Editor -> Publisher.
Hierbei erbt jede Benutzergruppe die Rechte von der Benutzergruppe, die Links von ihr steht.

Linie entlang der Konfigurations-Einstellungen

In Visforms arbeitet die zweite Vererbungslinie entlang der Linie von Konfigurations-Einstellungen.
Ein Beispiel f├╝r diese Line ist Komponenten-Einstellungen -> Formulareinstellungen -> Feldeinstellungen.
Hierbei erben die Feldeinstellungen von den Formulareinstellungen, und diese wiederum von den Visforms-Einstellungen.

Zugriffsrechte mit maximal wenig Aufwand erstellen

Die Vererbung von Rechten erm├Âglicht es, Zugriffsrechte mit maximal wenig Aufwand zu erstellen. Setzen Sie einfach die Option f├╝r das am weitesten links stehende Level. Beispielsweise reicht es aus, die Option “Eigene Daten Editieren” f├╝r die Benutzergruppe “Registered” auf der Ebene der Komponente Visforms auf “Erlaubt” zu setzen. Damit allein k├Ânnen nun alle registrieren Benutzer, Autoren, Editoren und Publisher die Daten, die sie selbst ├╝bermittelt haben, in allen Formularen editieren.

In Joomla k├Ânnen Sie auf jeder Ebene die ererbten Zugriffsrechte explizit manuell auf “erlaubt” oder “verweigert” setzen. Hierdurch kann man sehr individuelle Zugriffsrechte f├╝r jeden Bereich erreichen. Diese Kombination macht das Joomla ACL zu einem so m├Ąchtigen und vielseitigen Werkzeug.

Zus├Ątzliche Zugriffsrechte

Joomla kommt mit vordefinierten Aktionen f├╝r die Zugriffsrechte festgelegt werden k├Ânnen. Damit Sie noch mehr individuelle Kontrolle dar├╝ber haben, wer in Visforms was tun darf, haben wir einige zus├Ątzliche Zugriffsrechte definiert.

Zus├Ątzliche Zugriffsrechte f├╝r Administration

  • CSS editieren,
  • Daten l├Âschen,
  • Formulardaten in Administration exportieren (CSV),
  • “Erstellt von Benutzer” f├╝r Visforms Daten ├Ąndern,
  • SQL Statements erstellen.

Zus├Ątzliche Zugriffsrechte f├╝r Frontend

  • Formulardaten im Frontend exportieren (CSV),
  • PDF-Datei im Frontend erzeugen,
  • PDF-Datei von eigenen Daten im Frontend erzeugen,
  • Daten Status bearbeiten,
  • Daten Status eigener Datens├Ątze bearbeiten,
  • Daten direkt im Frontend bearbeiten,
  • Eigene Daten im Frontend editieren.

Zus├Ątzliche Visforms ACL Aktionen

CSV Anhang Optionen

Eine f├╝r Visforms wichtige Eigenschaft der Joomla ACL ist die folgende. Alle Aktionen, die f├╝r eine Komponente zus├Ątzlich zum Standard definiert wurden, erben f├╝r alle Benutzergruppen au├čer den Super-Administratoren per Default das Zugriffsrecht “verweigert”. Deshalb ist es f├╝r alle Benutzergruppen au├čer dem Super-Administrator notwendig, Visforms-spezifische Aktionen explizit zu erlauben. Sie m├╝ssen das explizit tun, wenn Sie wollen, dass eine Benutzergruppe diese Aktion durchf├╝hren darf. Eine Visforms-spezifische Aktion w├Ąre etwa das Editieren von Daten im Frontend.

Wie wir bereits gelernt haben, kann dies einfach geschehen. Sie m├╝ssen nur auf den Vererbungslinien die h├Âchste Benutzergruppe ausw├Ąhlen, der Sie das Recht geben wollen. Die h├Âchste Benutzergruppe ist immer die am weitesten links stehende Benutzergruppe.

Erlauben Sie nun dieser Gruppe das “Editieren von Daten”, auf

  • der Ebene der Komponente Visforms oder
  • auf der Ebene eines einzelnen Formulars.

Wo werden die Zugangsregeln gesetzt?

Ebene der Komponente Visforms

Auf der Ebene der Komponente Visforms werden die Regeln in der Administration gesetzt ├╝ber

  • den “Optionen”-Button in der Visforms Hauptansicht, also der Listen-├ťbersicht der Formulare oder
  • die Joomla Konfiguration ├╝ber System » Konfiguration » Visforms.

Ebene Formular

Zugriffsrechte f├╝r spezifische Formulare werden in der Formularkonfiguration unter dem Reiter “Formularberechtigungen” gesetzt.

Ebene Feld

Zugriffsrechte f├╝r spezifische Felder werden in der Feldkonfiguration unter dem Reiter “Feldberechtigungen” gesetzt.

Es ist mit Visforms m├Âglich, die Rechte ‘Daten im Frontend editieren’ und ‘Eigene Daten im Frontend editieren’ bis hinunter bis auf Feldebene zu erlauben oder zu verweigern. Trotzdem kann ein Benutzer Daten nur dann editieren, wenn er auch auf Formularebene die Berechtigung zum Editieren hat. Abweichende Regeln auf Feldebene machen Sinn, wenn einer berechtigten Benutzergruppe verboten werden soll, die Daten ausgew├Ąhlter Felder zu editieren.

Die Werte “Neue Einstellung” und “Errechnete Einstellung”

Es gibt f├╝r jede Aktion und jede Benutzergruppe einen Wert “Neue Einstellung” und einen Wert “Errechnete Einstellung”. In der Listbox f├╝r die “Neue Einstellung” k├Ânnen Sie zwischen “Vererbt”, “Erlaubt” und “Verweigert” w├Ąhlen. Entsprechend dieser Auswahl berechnet Joomla die Berechtigung f├╝r eine gew├Ąhlte Benutzergruppe und eine gew├Ąhlte Aktion entlang der Vererbungslinien. Das Ergebnis der Berechnung wird angezeigt in dem Feld “Errechneten Einstellungen”. Obwohl die “Errechneten Einstellungen” im Gro├čen und Ganzen hilfreich sind, k├Ânnen Sie doch irref├╝hrend sein. Wenn eine Berechtigung nicht wie erwartet arbeitet, m├╝ssen Sie deshalb alle Werte f├╝r “Neue Einstellung” aller ├╝bergeordneten Benutzergruppen einzeln ├╝berpr├╝fen.

Visforms ACL Aktionen f├╝r das Editieren von Daten im Frontend

  • Daten Editieren:
    Erlaubt einem Benutzer aus der entsprechenden Benutzergruppe alle Daten zu editieren.
    Diese Berechtigung sollte Administratoren vorbehalten bleiben.
  • Eigene Daten Editieren:
    Erlaubt einem Benutzer aus der entsprechenden Benutzergruppe die Daten zu bearbeiten, die er selbst mit dem Formular ├╝bermittelt hat.

Option “Eigene Daten Editieren”

Nur Daten, die von einem angemeldeten Benutzer ├╝bertragen wurden, k├Ânnen mit der Option “Eigene Daten Editieren” bearbeitet werden. Visforms speichert die ID eines angemeldeten Benutzers zusammen mit den ├╝bermittelten Formulardaten. Diese Benutzer ID wird sp├Ąter verwendet, um zu entscheiden, welche Datens├Ątze ein Benutzer bearbeiten darf und welche nicht.

Benutzer k├Ânnen mehreren Benutzergruppen angeh├Âren

Mit Joomla k├Ânnen Sie einen Benutzer gleich mehreren unterschiedlichen Benutzergruppen zuordnen. Das macht Sinn etwa bei der Gruppe “Registriert” und der Gruppe “Manager”. Welche Rechte ein Benutzer, der mehreren Benutzergruppen angeh├Ârt, tats├Ąchlich hat, kann auf den ersten Blick unter Umst├Ąnden verwirrend sein. Nichtsdestotrotz ist dies ein wichtiges Feature, das h├Ąufig verwendet wird.

“Verweigert” gewinnt ├╝ber “Erlaubt”

Sie m├╝ssen bei der Kl├Ąrung der widersprechenden Einstellungen aus den jeweiligen Gruppen nur beachten, dass “Verweigert” ├╝ber “Erlaubt” gewinnt. Angenommen Sie haben f├╝r eine Benutzergruppe das Recht explizit auf “Verweigert” gesetzt. In diesem Fall kann ein Benutzer diese Aktion auch dann nicht ausf├╝hren, wenn er einer zweiten Benutzergruppe angeh├Ârt, f├╝r die die Aktion “Erlaubt” ist. Dies trifft sogar dann zu, wenn das “Verweigert” von einem viel h├Âheren Level geerbt wurde.

Wo ist der “Daten Editieren” Button

Sie m├╝ssen einen Men├╝eintrag vom Typ Visform -> Datensicht mit Edit Link anlegen, wenn Sie das Bearbeiten von Daten im Frontend erm├Âglichen wollen. Sie m├╝ssen die Sichtbarkeit von Daten im Frontend entsprechend der Beschreibung im folgenden Dokumentations-Abschnitt festlegen, um die Datensicht mit den gew├╝nschten Daten zu f├╝llen: Daten speichern und nutzen.

Hinweis: Der einzige Unterschied zu den in diesem Abschnitt beschriebenen Einstellungen ist der Folgende. Bei der Anzeige von Daten ├╝ber den Men├╝eintrag vom Typ Visform -> Datensicht mit Edit Link ist es nicht n├Âtig, den Formular-Parameter "Frontend Datenansicht erlauben" auf "ja" zu setzen. Im Falle des 'Daten im Frontend editieren' wird dies durch das Anlegen des Men├╝eintrags freigeschaltet.

Sie k├Ânnen die Zugriffsebene f├╝r die Datensicht und f├╝r den Men├╝eintrag setzen. Damit k├Ânnen Sie die Sichtbarkeit des Men├╝eintrags und der Daten auf bestimmte Benutzergruppen zu begrenzen. Sinn macht etwa die Begrenzung auf nur angemeldete Benutzer. Die Zugriffsebene f├╝r die Datensicht konfigurieren Sie in der Formularkonfiguration.

F├╝r einen Men├╝eintrag vom Typ “Visforms Formulardaten” sind alle Jooma Standard Men├╝-Parameter vorhanden. Zus├Ątzlich zu den Standard Men├╝-Parametern finden Sie einen weiteren Parameter “Nur editierbare Datens├Ątze anzeigen” im Men├╝ im Reiter “Optionen f├╝r die Formulardatenanzeige”. Mithilfe dieses Parameters k├Ânnen Sie eine Liste erstellen, die immer nur die Datens├Ątze anzeigt, die der angemeldete Benutzer auch wirklich bearbeiten darf.

Wird eine Datentabelle ├╝ber diesen Men├╝eintragtyp angezeigt, so f├╝gt Visforms automatisch eine Link-Spalte ein, wenn ein Benutzer berechtigt ist die Formulardaten zu editieren. F├╝r jeden Datensatz, den der Benutzer tats├Ąchlich aufgrund seiner Rechte bearbeiten darf, findet sich in dieser Spalte ein Link in Form eines Link-Icons. Visforms f├╝gt auch in der zu diesem Men├╝eintragstyp geh├Ârigen Detailansicht einen Edit-Button ein, wenn der Benutzer diesen Datensatz editieren darf.

Hinweis: Durch geschickte Wahl der ACL Einstellungen, der Formular-Optionen und der Men├╝-Optionen k├Ânnen f├╝r Benutzer, die nur "Eigene Daten Editieren" d├╝rfen, ma├čgeschneiderte Datenlisten erzeugt werden. Diese Datenlisten zeigen immer nur die Datens├Ątze des angemeldeten Benutzers an.

Nehmen Sie hierzu die folgenden Einstellungen vor:

  • Setzen Sie nur die Formular-Option “Eigene Daten Editieren” f├╝r “Registrierte Benutzer” auf “Erlaubt”.
  • Legen Sie einen Men├╝eintrag in einem Benutzermen├╝ an, das nur f├╝r registrierte Benutzer sichtbar ist.
  • Setzen Sie die Zugriffsebenen f├╝r das Men├╝ auf “Registriert”.
  • Aktivieren Sie die Option “Nur editierbare Datens├Ątze anzeigen” im Men├╝.

Welche Daten k├Ânnen bearbeitet werden?

Wenn ein Benutzer das Recht hat einen Datensatz zu editieren und auf den “Editieren-Link” klickt, bekommt er das Formular in einer einfachen Formularansicht angezeigt und die Daten werden als Defaultwerte im Formular gesetzt. Es werden alle ver├Âffentlichten Formularfelder angezeigt.

Hinweis: Felder vom Typ "versteckt" k├Ânnen im Frontend nicht bearbeitet werden, da diese eben versteckt sind und daher im Formular unsichtbar sind.

Abgesehen von dieser Ausnahme, k├Ânnen alle anderen Benutzereingaben in ├ťbereinstimmung mit den gemachten Einstellungen und Validierungs-Optionen ge├Ąndert werden. Es gelten die Einstellungen in der Formular-Konfiguration und in der Feld-Konfiguration.

Felder, die ein Benutzer nicht bearbeiten darf, werden in der Editieren-Sicht des Formulars angezeigt, sind aber nicht editierbar.

Unterhalb des Formulars werden zwei Buttons angezeigt. Einer um die Änderungen zu speichern und einer, um den Vorgang abzubrechen und zur vorherigen Seite zurückzukehren.