Knowledgebase:Benutzerverwaltung

From Cloudrexx Development Wiki
Jump to: navigation, search

Dieser Artikel bezieht sich auf die Version 2.0 oder neuer von Contrexx®.

Contents

Kurzbeschreibung

Die Benutzerverwaltung gehört zum Grundsystem von Contrexx und kann zum Anlegen von Benutzerkontos für den Backend- und Frontend Bereich verwendet werden. Folgende Eigenschaften stehen dabei zur Verfügung:

  • Zugriffsschutz von Inhalten
  • Anlegen und Erweitern von Benutzerprofilen
  • Benutzerregistrierung
  • Übersicht aller Benutzerkontos mit Avatar Bildern, usw.

Verfügbarkeit

  • Enthalten in sämtlichen Contrexx Editions ab Version 2.0

Berechtigungen

In der Contrexx Benutzerverwaltung kann man Frontend- und Backendberechtigungen definieren. Berechtigungen auf der Website selber sind die Frontendberechtigungen und jene im Backend / Administrationskonsole sind die Backendberechtigungen. Die Berechtigungen werden nicht an User, sondern an an Gruppen vergeben. Demzufolge errichtet man zuerst die Gruppe und fügt dieser die gewünschten User bei.

Backend Berechtigungen vergeben

Um neue Berechtigungen vergeben zu können, richtet man zuerst eine Backendgruppe ein.

Einer Gruppe gibt man einen Namen & Beschreibung und fügt - wenn vorhanden - die gewünschten User bei. Unter der Registerkarte "Berechtigungen" kann man die gewünschten Rechte auswählen. Als erstes kann man die Berechtigungen vom Contentmanager auswählen. Hierbei gibt es drei Möglichkeiten:

Berechtigungen1.jpg

Standart sind alle Seiten offen (keine Auswahlmöglichkeit - Schloss offen, Nr.1 auf dem Bild), sprich jeder der in den ContenManager kommt, kann diese bearbeiten.

Will man die Seite geschützt machen, klickt man aufs Schloss und nach dem bestätigen wird das Schloss als geschlossen dargestellt und eine Auswahlmöglichkeit erscheint. Das Schloss selber hat die Bedeutung, dass die Seite geschützt und nur für gewisse Gruppen editierbar ist. Dies sagt aber nichts darüber aus, ob die gewälte Gruppe Zugriff hat oder nicht. Ist das Häkchen nicht ausgewählt (Nr.2 auf dem Bild), heisst dies, dass die gewählte Gruppe KEINE Rechte hat, die Seite zu bearbeiten. Will man der Gruppe die Rechte geben, aktiviert man das Häkchen (Nr. 3 auf dem Bild).

Das Beispiel auf dem Bild sagt also aus, dass die gewählte Gruppe die Seiten im roten Kreis Nr.2 NICHT bearbeiten darf, die Nr. 3 und Nr. 1 dürfen aber bearbeitet werden. Die Seiten aus Nr. 1 dürfen alle bearbeiten, welche Zugriff ins Backend haben.

Inhaltsseiten

  • Der Platzhalter [[ACCESS_JAVASCRIPT_FUNCTIONS]] muss auf jeder zur Benutzerverwaltung korrespondierende Seite vorhanden sein. In der index.html Datei wird der Platzhalter nicht benötigt.

Mein Profil

Ab Version 3.0 SP 2 gibt es einen neuen Block für die Social Login Funktionalität:

	<!-- BEGIN access_user_networks -->
	<li>
		<a href="index.php?section=access&cmd=settings_networks">Verbundene Netzwerke</a></li>
	<!-- END access_user_networks -->

Login

Logout (virtuell)

URI: index.php?section=logout

Diese Seite ist physikalisch nicht vorhanden. Der Aufruf dieser Adresse kann aber dazu verwendet werden, um sich abzumelden. Nach dem Aufruf der Logout-Seite wird man automatisch wieder zur Login-Seite weiter geleitet. Wenn dies nicht gewünscht ist, kann mit dem URL-Modifikator redirect eine beliebige andere Seite angegeben werden, welche anschliessend angezeigt werden soll. Die angegebene URI muss dabei URI-Encoded sein. Z.B.

index.php?section=logout&redirect=index.php%3Fsection%3Daccess


Registrierungsformular

Verfügbare Platzhalter

Platzhalter Beschreibung
Benutzerkonto Eigenschaften Eigenschaften des Benutzerkontos, wie Benutzername, Kennwort, E-Mail Adresse, usw.
Benutzerprofil Eigenschaften Eigenschaften des Benutzerprofiles, wie Vorname, Nachname, Benutzerbild, usw.
[[ACCESS_USER_STORE_BUTTON]] Schaltfläche zum Speichern der Eingaben


Beispiel:

Inhaltsseite: index.php?section=access&cmd=signup


<p>Hier haben Sie die Möglichkeit sich für dieses Portal zu registrieren und ein Benutzerkonto zu eröffnen.</p>

<!-- BEGIN access_signup_form -->

<div class="message_error">[[ACCESS_SIGNUP_MESSAGE]]</div>

<form action="index.php?section=access&cmd=signup" method="post" enctype="multipart/form-data">

<!-- BEGIN access_user_username -->

<p><label>[[ACCESS_USER_USERNAME_DESC]]</label>[[ACCESS_USER_USERNAME]]<br /> Bitte wählen Sie einen Benutzernamen<br />  </p>

<!-- END access_user_username -->


<!-- BEGIN access_user_password -->

<p><label>[[ACCESS_USER_PASSWORD_DESC]]</label>[[ACCESS_USER_PASSWORD]]<br /> Bitte gewünschtes Passwort eingeben (min. 6 Zeichen)<br />  </p>

<!-- END access_user_password -->


<!-- BEGIN access_user_password_confirmed -->

<p><label>[[ACCESS_USER_PASSWORD_CONFIRMED_DESC]]</label> [[ACCESS_USER_PASSWORD_CONFIRMED]]<br /> Zur Ihrer Sicherheit wiederholen Sie bitte Ihr Passwort<br />  </p>

<!-- END access_user_password_confirmed -->


<!-- BEGIN access_user_email -->

<p><label>[[ACCESS_USER_EMAIL_DESC]]</label>[[ACCESS_USER_EMAIL]]<br /> Ihre E-Mail Adresse (Sie müssen eine gültige E-Mail Adresse angeben, um Ihren Account zu aktivieren)<br />  </p>

<!-- END access_user_email -->


<p><label>[[ACCESS_USER_FRONTEND_LANGUAGE_DESC]]</label>[[ACCESS_USER_FRONTEND_LANGUAGE]]<br />  </p> <p>[[ACCESS_SIGNUP_BUTTON]]</p>

<br />

<br />

<p><b>Hinweis:</b> Weitere Daten können im Benutzerprofil hinzugefügt werden.</p>


</form>

<!-- END access_signup_form -->


<!-- BEGIN access_signup_store_success -->

<div class="message_ok">[[ACCESS_SIGNUP_MESSAGE]]</div>

<!-- END access_signup_store_success -->


<!-- BEGIN access_signup_store_error -->

<div class="message_error">[[ACCESS_SIGNUP_MESSAGE]]</div>

<!-- END access_signup_store_error -->


<!-- BEGIN access_signup_confirm_success -->

<div class="message_ok">[[ACCESS_SIGNUP_MESSAGE]]</div>

<!-- END access_signup_confirm_success -->


<!-- BEGIN access_signup_confirm_error -->

<div class="message_error">[[ACCESS_SIGNUP_MESSAGE]]</div>

<!-- END access_signup_confirm_error -->


[[ACCESS_JAVASCRIPT_FUNCTIONS]]


Inhaltsseite: index.php?section=access&cmd=signup


Verschiedene Registrierungsformulare definieren

Diese Funktion steht in der aktuellen Version noch nicht zur Verfügung

Im Backend unter Administration > Benutzerverwaltung > Einstellungen > Registrationsformulare können verschiedene Registrationsformulare definiert werden. Jedem Formular kann eine primäre Benutzergruppe und mehrere sekundäre zugewiesen werden, die jedem mit dem Formular erstellten Benutzer zugewiesen werden.

Im HTML-Template des Formulars wird dann das Formular folgendermassen verknüpft:

<input type="hidden" name="access_form_id" value="FORM-ID">

wobei FORM-ID mit der entsprechenden ID aus dem Backend zu ersetzen ist. Wird der Input im Template nicht gesetzt, wird das Standardformular zugewiesen, falls im Backend definiert.

Profil Seite bearbeiten/anzeigen

Benutzerliste

Integration im Layout

Siehe Platzhalterverzeichnis

Darstellung der Benutzerkonto Eigenschaften

Benutzername

Platzhalter

[[ACCESS_USER_USERNAME]]

Blockkonstrukt

<!-- BEGIN access_user_username -->

[[ACCESS_USER_USERNAME_DESC]]

[[ACCESS_USER_USERNAME_NAME]]

[[ACCESS_USER_USERNAME_VALUE]]

<!-- END access_user_username -->

Beispiel

<!-- BEGIN access_user_username -->

<input type="text" name="[[ACCESS_USER_USERNAME_NAME]]" id="[[ACCESS_USER_USERNAME_ID]]" value="[[ACCESS_USER_USERNAME_VALUE]]" />

<label for="[[ACCESS_USER_USERNAME_ID]]">[[ACCESS_USER_USERNAME_DESC]]</label>

<!-- END access_user_username -->

Kennwort

Platzhalter

[[ACCESS_USER_PASSWORD]]

Blockkonstrukt

<!-- BEGIN access_user_password -->

[[ACCESS_USER_PASSWORD_DESC]]

[[ACCESS_USER_PASSWORD_NAME]]

[[ACCESS_USER_PASSWORD_VALUE]]

<!-- END access_user_password -->


Kennwort bestätigen

Platzhalter

[[ACCESS_USER_PASSWORD_CONFIRMED]]

Blockkonstrukt

<!-- BEGIN access_user_password_confirmed -->

[[ACCESS_USER_PASSWORD_CONFIRMED_DESC]]

[[ACCESS_USER_PASSWORD_CONFIRMED_NAME]]

[[ACCESS_USER_PASSWORD_CONFIRMED_VALUE]]

<!-- END access_user_password_confirmed -->

E-Mail Adresse

Platzhalter

[[ACCESS_USER_EMAIL]]

Blockkonstrukt

<!-- BEGIN access_user_email -->

[[ACCESS_USER_EMAIL_DESC]]

[[ACCESS_USER_EMAIL_NAME]]

[[ACCESS_USER_EMAIL_VALUE]]

<!-- END access_user_email -->


Sprache der Bedienoberfläche

Platzhalter

[[ACCESS_USER_LANGUAGE]]

Blockkonstrukt

<!-- BEGIN access_user_language -->

<select name="[[ACCESS_USER_LANGUAGE_NAME]]">

<!-- BEGIN access_user_language_children -->

<option value="[[ACCESS_USER_LANGUAGE_CHILD_VALUE]]" [[ACCESS_USER_LANGUAGE_CHILD_SELECTED]]>

[[ACCESS_USER_LANGUAGE_CHILD_DESC]]

</option>

<!-- END access_user_language_children -->

</select>

<!-- END access_user_language -->

E-Mail Datenschutz

Platzhalter

[[ACCESS_USER_EMAIL_PRIVACY]]

Blockkonstrukt

Profil Datenschutz

Platzhalter

[[ACCESS_USER_PROFILE_PRIVACY]]

Blockkonstrukt

Registrierungsdatum

Platzhalter

[[ACCESS_USER_REGDATE]]

Darstellung der Benutzerprofil Eigenschaften

Es gibt zwei Arten, wie eine Eigenschaft dargestellt werden kann. Entweder als allein stehender Platzhalter oder in einem Blockkonstrukt.


WICHTIG: Es werden nur Eigenschaften angezeigt, welche ausgefüllt sind. D.h. wenn ein Benutzer z.B. keinen Vornamen angegeben hat, wird bei dessen Profile der entsprechende Platzhalter oder Blockkonstrukt nicht angezeigt.


Platzhalter

Jede Eigenschaft kann mit dem folgenden Platzhalterschema dargestellt werden:

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID]]

ATTRIBUTE-ID ist hier mit der entsprechenden ID der Eigenschaft zu ersetzen.

Auf diese Art wird die Eigenschaft inkl. HMTL-Quelltext ausgegeben.


Beispiel für die Eigenschaft Vorname:

<input type="text" name="access_profile_attribute_firstname" value="Vorname des ausgewählten Benutzers" />

Blockkonstrukt

Damit die Darstellung einer Eigenschaft frei definiert werden kann, besteht die Möglichkeit, eine Eigenschaft als Blockkonstrukt darzustellen.

Ein Blockkonstrukt für eine Eigenschaft beginnt und endet immer mit den folgenden zwei HTML Kommentaren:

<!-- BEGIN access_profile_attribute_attribute-id -->
<!-- END access_profile_attribute_attribute-id -->

Wobei attribute-id mit der entsprechenden ID der Eigenschaft zu ersetzen ist.

Jede Eigenschaft bietet Grundsätzlich einmal die folgenden Platzhalter:

Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC Beschreibung der Eigenschaft Vorname, Nachname, Adresse, Telefon
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME HTML Name:

access_profile_attribute_[attribute-id][history-id]

access_profile_attribute_[firstname][0]

access_profile_attribute_[lastname][0]

ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_ID ID der Eigenschaft: attribute-id firstname

lastname

ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_HISTORY_ID Verlaufs-ID der Eigenschaft: history-id 0

1

  • Die Bedeutung der history-id wird bei der Eigenschaft Verlauf erläutert.


Nachfolgend werden die Blockkonstrukte für die einzelnen Eigenschaftstypen erläutert:


Textfeld, E-Mail Adresse, Auswahlmenüoption, Rahmen


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]

<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE Inhalt der Eigenschaft Hans, Muster, Evergreen Terrace, 0041 123 456 78 90

Datum


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DAY]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MONTH]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_YEAR]]

<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE Inhalt der Eigenschaft 08.06.2015
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DAY Tag des Datums (TT) 08
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MONTH Monat des Datums (MM) 06
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_YEAR Jahr des Datums (YYYY) 2015

Web Adresse (URL)


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]

<!-- BEGIN access_profile_attribute_attribute-id_link -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE]]
[[TXT_ACCESS_URL_OPEN_RISK_MSG]]
[[TXT_ACCESS_CONFIRM_OPEN_URL]]
[[TXT_ACCESS_VISIT_WEBSITE]]

<!-- END access_profile_attribute_attribute-id_link -->
<!-- BEGIN access_profile_attribute_attribute-id_no_link -->

[[TXT_ACCESS_NO_SPECIFIED]]

<!-- END access_profile_attribute_attribute-id_no_link -->


<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE URL Adresse http://www.example.com
Block: access_profile_attribute_attribute-id_link

(wird nur Angezeigt, sofern eine Adresse definiert ist)

Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE URL Adresse http://www.example.com
TXT_ACCESS_URL_OPEN_RISK_MSG Sprachabhängiger Text Wenn Ihnen die Adresse %s unbekannt ist, kann es ein Sicherheitsrisiko sein diese Seite zu besuchen!
TXT_ACCESS_CONFIRM_OPEN_URL Sprachabhängiger Text Möchten Sie diese Seite trotzdem besuchen?
TXT_ACCESS_VISIT_WEBSITE Sprachabhängiger Text Webseite besuchen
Block: access_profile_attribute_attribute-id_no_link

(wird nur Angezeigt, sofern keine Adresse definiert ist)

Platzhalter Beschreibung Beispiel(e)
TXT_ACCESS_NO_SPECIFIED Sprachabhängiger Text Keine angegeben!

Bild


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_UPLOAD_NAME]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_SRC]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_THUMBNAIL_SRC]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_FILE_SIZE]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_WIDTH]]
[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_HEIGHT]]

<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE Bildname 1_avatar.jpg
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_UPLOAD_NAME HTML Name des Upload Feldes access_profile_attribute_images[picture][0]
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_SRC Bildquelle (Absoluter Pfad ohne Domain) /images/access/profile/1_avatar.jpg
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_THUMBNAIL_SRC Bildquelle (Absoluter Pfad ohne Domain) des Thumbnails/Vorschaubildes /images/access/profile/1_avatar.jpg.thumb
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_FILE_SIZE Maximal erlaubte Dateigrösse in KB 30 KB
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_WIDTH Maximal erlaubte Bildbreite (ohne Pixelangabe) 160
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_MAX_HEIGHT Maximal erlaubte Bildhöhe (ohne Pixelangabe) 160


Auswahlkästchen


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

<input type="hidden" name="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]" />

<input type="checkbox" name="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]" id="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_ID]]" [[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHECKED]] value="1" /> <label for="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_ID]]">[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]</label>

<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHECKED Auswahlstatus checked="checked"
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_VALUE Auswahlstatus 1

Auswahlmenü


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

<select name="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]">

<!-- BEGIN access_profile_attribute_attribute-id_children -->

<option value="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHILD_VALUE]]"

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHILD_SELECTED]]>



[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHILD_DESC]]

</option>

<!-- END access_profile_attribute_attribute-id_children -->

</select>

<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_OPTIONS Auswahloptionen Unbekannt, Männlich, Weiblich

Gruppe


Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]:


<select name="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]">

WICHTIG: Dieser Template Block muss zwingend vorhanden sein, ansonsten werden die Frame-Template-Blöcke (siehe weiter unten: access_profile_attribute_attribute-id_frame_frame-id / access_profile_attribute_attribute-id_frames) nicht ausgegeben!
<!-- BEGIN access_profile_attribute_attribute-id_children -->

<option value="[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_VALUE]]">

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_DESC]]

</option>

<!-- END access_profile_attribute_attribute-id_children -->

</select>


entweder:
<!-- BEGIN access_profile_attribute_attribute-id_frame_frame-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_NAME]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_HISTORY_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_CLASS]]

entweder:
<!-- BEGIN access_profile_attribute_attribute-id_frame_frame-id_child_child-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_CHILD_CHILD-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_CHILD_CHILD-ID]]

<!-- END access_profile_attribute_attribute-id_frame_frame-id_child_child-id -->
oder:
<!-- BEGIN access_profile_attribute_attribute-id_frame_frame-id_children -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_CHILD_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_FRAME-ID_CHILD]]

<!-- END access_profile_attribute_attribute-id_frame_frame-id_children -->


<!-- END access_profile_attribute_attribute-id_frame_frame-id -->


oder:
<!-- BEGIN access_profile_attribute_attribute-id_frames -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_NAME]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_HISTORY_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_CLASS]]

<!-- BEGIN access_profile_attribute_attribute-id_frame_children -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_CHILD_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAME_CHILD]]

<!-- END access_profile_attribute_attribute-id_frame_children -->
<!-- END access_profile_attribute_attribute-id_frames -->


<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Ablauf:

access_profile_attribute_attribute-id_frame_frame-id

access_profile_attribute_attribute-id_frame_frame-id_child_child-id

access_profile_attribute_attribute-id_frame_frame-id_child_list

access_profile_attribute_attribute-id_frame_list


Block: access_profile_attribute_attribute-id
Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_FRAMES Rahmen Postadresse, Rechungsadresse


Beispiel

Nachfolgend ein Beispiel für eine Gruppe mit der ID 6:


<!-- BEGIN access_profile_attribute_6 -->

<select name="[[ACCESS_PROFILE_ATTRIBUTE_6_NAME]]" onchange="for (i = 0; i <document.getElementsByName('profile_addresses').length; i++) {document.getElementsByName('profile_addresses')[i].style.display = document.getElementsByName('profile_addresses')[i].id == this.value ?  : 'none';}">

<!-- BEGIN access_profile_attribute_6_children -->

<option value="[[ACCESS_PROFILE_ATTRIBUTE_6_CHILD_VALUE]]">[[ACCESS_PROFILE_ATTRIBUTE_6_CHILD_DESC]]</option>

<!-- END access_profile_attribute_6_children -->

</select>

<!-- BEGIN access_profile_attribute_6_frames -->

<div name="profile_addresses" id="[[ACCESS_PROFILE_ATTRIBUTE_6_FRAME_VALUE]]" style="display:none;">

[[ACCESS_PROFILE_ATTRIBUTE_6_FRAME_DESC]]

<!-- BEGIN access_profile_attribute_6_frame_children -->

[[ACCESS_PROFILE_ATTRIBUTE_6_FRAME_CHILD_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_6_FRAME_CHILD]]

<!-- END access_profile_attribute_6_frame_children -->

</div>

<!-- END access_profile_attribute_6_frames -->
<!-- END access_profile_attribute_6 -->

Verlauf


history-id ...

Konstrukt

<!-- BEGIN access_profile_attribute_attribute-id -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_NAME]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_HISTORY_ID]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CLASS]]

entweder:
<!-- BEGIN access_profile_attribute_attribute-id_history_list -->
entweder:
<!-- BEGIN access_profile_attribute_child-id -->

[[ACCESS_PROFILE_ATTRIBUTE_CHILD-ID_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_CHILD-ID]]

<!-- END access_profile_attribute_child-id -->


oder:
<!-- BEGIN access_profile_attribute_attribute-id_children -->

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHILD_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE_ATTRIBUTE-ID_CHILD]]

<!-- END access_profile_attribute_attribute-id_children -->
<!-- END access_profile_attribute_attribute-id_history_list -->
oder:
<!-- BEGIN access_profile_attribute_attribute-id_history_history-id -->

Darstellung gleich wie im Block <!-- END access_profile_attribute_attribute-id_history_list -->.

<!-- END access_profile_attribute_attribute-id_history_history-id -->


<!-- END access_profile_attribute_attribute-id -->

Erläuterung

Magic Block

Für die Darstellung der Eigenschaften gibt es zusätzlich noch den speziellen Block access_profile_attribute_list. Dabei werden alle Eigenschaften, die nicht bereits entweder als Platzhalter oder Blockkonstrukt angegeben wurden, in diesem Block ausgegeben.

Konstrukt

<!-- BEGIN access_profile_attribute_list -->

[[ACCESS_PROFILE_ATTRIBUTE_DESC]]

[[ACCESS_PROFILE_ATTRIBUTE]]

<!-- END access_profile_attribute_list -->

Erläuterung

Platzhalter Beschreibung Beispiel(e)
ACCESS_PROFILE_ATTRIBUTE_DESC Beschreibung der Eigenschaft Vorname
ACCESS_PROFILE_ATTRIBUTE Inhalt der Eigenschaft Hans

<input type="text" name="access_profile_attribute_attribute-id" value="Hans" />

FAQ

Wieso wird das (Profil-)Foto nicht gespeichert?

Häufige Ursache dafür liegt daran, dass die Formular Daten falsch übermittelt werden. Die Formulardaten müssen als multipart/form-data kodiert übertragen werden. Dazu muss dem Attribute enctype des Tags form der Wert multipart/form-data zugewiesen werden.

Beispiel:

<form action="index.php?section=access&amp;cmd=settings" method="post" enctype="multipart/form-data"> ... </form>

Wann werden welche Mails verschickt?

Wenn sich der Benutzer selbst aktivieren kann, wird das Mail "Registrationsbestätigung" an den User geschickt. Falls jemand das Benutzerkonto aktiveren muss, wird das Mail "Neue Benutzerregistrierung" an die entsprechende Person geschickt.