Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten Ansicht
  #1  
Alt 25.01.08, 15:08
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 52
Beiträge: 109
Gelöst - Login <> Logout je nach Status auf jeder Seite

Moin,

zur Zeit beschäftigt mich mit
New front end login box (newloginbox 3.0.1)
Frontend User Registration (sr_feuser_register 2.5.8)
Die Funktionen Neu Registrieren, Anmelden und Abmelden laufen einwandfrei im Test! Die Anmeldung und Neuregistrierung liegen jeweils auf einer im Menü versteckten Seite.

Mein Wunsch ist es nun, daß auf JEDER Seite meines Internetauftritts nun im Menü je nach Anmeldestatus mal
"anmelden / neu registrieren" und mal
"logout" stehen.
Hierfür habe ich mit Hilfestellung folgendes TS, was funktional korrekt ist:
Typoscript-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
[usergroup = *] # User bereits angemeldet
temp.newlogin = COA_INT
temp.newlogin {
10 = TEXT
10.typolink.parameter = 100
10.typolink.returnLast = url
10.wrap = <div class="tx-newloginbox-pi1"><form action="|" target="_top" method="post">
20 = TEXT
20.data = TSFE:fe_user|user|username
20.wrap = online: | &nbsp;
30 = TEXT
30.value =<input class="button" type="submit" name="submit" value="Logout" />
40 = TEXT
40.value =<input type="hidden" name="logintype" value="logout" />
50 = TEXT
50.value =<input type="hidden" name="pid" value="2" />
60 = TEXT
60.value =</form></div>
}
[else] # User noch nicht angemeldet
temp.newlogin = COA_INT
temp.newlogin {
10 = TEXT
10.typolink.parameter = 60 #Anmeldung
10.wrap = |
20 = TEXT
20.value = &nbsp;/&nbsp;
30 = TEXT
30.typolink.parameter = 70 #Registrierung
30.wrap = |
}
[GLOBAL]

r.10 = TEMPLATE
r.10.template = FILE
r.10 {
marks.b1421 < temp.newlogin
marks.b1422 < temp.langmenu
}

Nun ja, klappen tuts ja, wenn ich bei jedem Wechsel auf eine andere Seite meines Auftritts jedesmal ein F5-Seitenrefresh schicke. Sonst passiert es eben, daß obwohl jemand angemeldet ist, nur "anmelden / neu registrieren" angezeigt werden, oder wenn niemand angemeldet ist, das "logout" erscheint. F5 ist nicht der Weisheit letzter Schluß. Es ist auch nicht sinnvoll, anstelle mit dem Cache zu arbeiten jetzt jede Seite auf nicht-gecached zu stellen.

Ich könnte ja sagen, ich stünde auf meiner Leitung, aber dort wo keine Ahnung ist, existiert auch keine Leitung.

Würde mich über Hilfestellung freuen. Mensch

PS: Suche seit mehreren Tagen nach einer Lösung und finde nicht das passende
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.

Geändert von mensch (08.02.08 um 10:25 Uhr).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Sponsored Links
  #2  
Alt 26.01.08, 09:01
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 52
Beiträge: 109
Problem eingegrenzt

Moin,

ich stand kurz davor zu sagen, Typo3 ist doch nix für Dich. Auf der Suche nach Lösungen habe ich immer mehr gelernt und die Varianten auf meiner Site, die ich, um das Problem zu lösen, umgesetzt habe gaben Denkanstösse.

Nun ja, mein Problem ist nämlich

NICHT Typo3
sondern
mein Lieblinsbrowser OPERA.

Nachdem ich gar nichts Passendes zu meinem Problem im Typo3-Bereich erhielt, fing ich an, die Ursache anderswo zu suchen. Also bin ich hingegangen und habe die gesamte Anmeldeprozedere auch mal mit IE und FF durchgespielt und siehe da, da habe ich nicht diese Probleme.

Tut mir leid wegen diesem Thread und LG Mensch
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #3  
Alt 27.01.08, 08:12
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 52
Beiträge: 109
Dummie-Anleitung: sr_feuser_register + newloginbox

Moin,

wenn ich in Foren immer nur nehme und keinen eigenen Beitrag leiste (weil ich einfach noch nicht so weit bin) so fühle ich mich unwohl - nachfolgend eine Anleitung für Dummies wie mich. Sollte dies unnötig sein, so bitte ich den Moderator dies zu löschen.

Die ersten Schritte Konfigurationsschritte hin zu einer lauffähigen Umgebung

Zielbeschreibung
Auf allen Seiten der Bin1Tarif-Internetpräsenz soll auf der Menüleiste je nach Status folgendes erscheinen:
Status „nicht angemeldet“: anmelden / neue Mitgliedschaft
Status „angemeldet“ abmelden

anmelden
Link auf eine separate Seite mit dem „New front end login box“ Plugin

neue Mitgliedschaft
Link auf eine separate Seite mit dem „Frontend User Registration“ Plugin
Beide Seiten werden als im Menü versteckt deklariert.

abmelden
Ein Click hierauf soll - ohne auf eine Seite mit dem mit „New front end login box“ Plugin zu verlinken - den User direkt abmelden bzw. die Session beenden.

Sobald der User angemeldet ist, soll im Menü ein Link „Kontrollzentrum“ erscheinen, dem die Seite „Einstellungen ändern“ zugeordnet ist.

Extensions
Ich habe rigoros (ohne also nach dem warum zu fragen) in nachfolgender Reihenfolge die Extensions installiert, die in der „Frontend User Registration“-Dokumentation erwähnt werden oder die sich aus Extensionabhängigkeiten ergeben haben:
  • New front end login box (newloginbox 3.1.0)
  • FE BE Library (fh_library 0.0.17)
  • Library for Extensions (lib 0.0.20)
  • Static Methods for Extensions (div 0.0.9)
  • Static Info Tables (static_info_tables 2.0.3)
  • Static Info Tables (de) (static_info_tables_de 2.0.1)
  • Frontend User Registration (sr_feuser_register 2.5.8)
  • kb_md5fepw: Diese werde ich, um die Password’s verschlüsselt nachzuhalten, erst später installieren.
1. SysOrdner als Datenbereich
Unterhalb der Root-Seite lege ich nun eine neue Seite mit dem Typ „SysOrdner“ an. In dieser sollen später meine Bin1Tarif- Benutzergruppen und User für das FrontEnd abgelegt werden. Im Anschluß die Seiten-ID bitte merken.

2. Benutzergruppen erstellen
Auf dem zuvor angelegten SysOrdner erzeuge ich per „Neu“ und über „Website Benutzergruppe“ eine neue Benutzergruppe. Diese Benutzergruppe soll später nach der Neuregistrierung dem User automatisch zugeordnet werden. Der Name der Benutzergruppe ist x-beliebig und folgt keiner Vorgabe. Auch hier bitte die Gruppen-ID merken.

3. SysOrdner als allgemeine Datensatzsammlung zuordnen
Da ab der Bin1Tarif-Root-Seite auf Mitgliederdaten zugegriffen werden soll, weise ich die SysOrdner-Seite als „Allgemeine Datensatzsammlung“ der Root-Seite zu.

4. Root-Template Include static
In die „Template“ Ansicht wechseln
Click auf Root-Seite
Auswahl-Link: „Click here to edit whole template record“ (unten nach dem Formular)
Im Bereich „Include static (from extensions)“
„FE User Registration CSS-styled“ zuweisen

5. Root-Template Constants
Hier erfolgt die Bekanntgabe, wo was liegt.
In die „Template“ Ansicht wechseln
Click auf Root-Seite
Auswahlbox: Constant Editor (rechts oben)

In den nachfolgenden Bereichen das Häkchen setzen und anschließend Update:
User group(s) after confirmation
User group(s) after acceptation
Front end user records PID

Im zweiten Schritt nun Werte eintragen und wieder Update:
User group(s) after confirmation: ID der Benutzergruppe
User group(s) after acceptation: ID der Benutzergruppe
Front end user records PID: ID des SysOrdners

6. „anmelden“
Unterhalb der Root-Seite eine neue Seite mit Namen „anmelden“ als „im Menü versteckt“ erstellen. „Besseres Anmeldefenster“ als neues Inhaltselement der Seite zuordnen. Mehr braucht man im ersten Schritt nicht – Seiten-ID merken.

7. „neu registrieren“
Unterhalb der Root-Seite eine neue Seite mit Namen „neu registrieren“ als „im Menü versteckt“ erstellen. Als neues Inhaltselement ein „Allgemeines Plugin“ der Seite zuordnen. Bei Erweiterung „Front End Benutzer Registrierung“ auswählen. Bei Plugin-Optionen „Anlegen“ auswählen – Seiten-ID merken.

8. „Kontrollzentrum“ und „Einstellungen ändern“
Hierfür lege ich eine Seite „Kontrollzentrum“ an und ordne dieser eine zweite mit „Einstellungen ändern“ zu. Beide Seite erhalten als „Allgemeine Optionen (Fortsetzung)“ das Objekt „Bei jedem Login anzeigen“.

Auf der Seite „Einstellungen ändern“ wird als neues Inhaltselement ein „Allgemeines Plugin“ zugeordnet. Bei Erweiterung „Front End Benutzer Registrierung“ auswählen. Bei Plugin-Optionen „Bearbeiten“ auswählen.

9. Root-Template mit TS ergänzen
Zuletzt wird das Root-Template um eine Weiche erweitert, die die eingangs beschriebene Anforderung umsetzt:
Status „nicht angemeldet“: anmelden / neue Mitgliedschaft
Status „angemeldet“ abmelden

Typoscript-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
[usergroup = *]  
  # User bereits angemeldet: eigenes LogOUT
temp.newlogin = COA_INT
temp.newlogin {
10 = TEXT
10.typolink.parameter = 1
10.typolink.returnLast = url
10.wrap = <div class="tx-newloginbox-pi1"><form action="|" target="_top" method="post">
20 = TEXT
20.data = TSFE:fe_user|user|username
20.wrap = online: | &nbsp;
30 = TEXT
30.value =<input class="button" type="submit" name="submit" value="Logout" />
40 = TEXT
40.value =<input type="hidden" name="logintype" value="logout" />
50 = TEXT
50.value =<input type="hidden" name="pid" value="2" />
60 = TEXT
60.value =</form></div>
}
r.10.marks.b1421 < temp.newlogin
[else]
temp.newlogin = COA_INT
temp.newlogin {
10 = TEXT
10.typolink.parameter = 20
10.wrap = |
20 = TEXT
20.value = &nbsp;/&nbsp;
30 = TEXT
30.typolink.parameter = 21
30.wrap = |
}
  #.........
[GLOBAL]

zum Verständnis:
„10.typolink.parameter = 1“ bedeutet, daß wenn sich der User abmeldet, er automatisch auf die Seite mit der ID 1 weitergeleitet werden soll.
„10.typolink.parameter = 20“ und „30.typolink.parameter = 21“ sind die IDs der „anmelden“ und „neu registrieren“ Seiten.
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #4  
Alt 03.02.08, 09:04
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 52
Beiträge: 109
weitere Konfigurationsschritte

Weitere Konfigurationsschritte

Hier könnte man umständlich in der Dokumentation empfohlene Schritte einhalten, um die Sprachdateien zu erweitern und per TypoScript anzupassen. Für mich ist der einfachste Weg jedoch die erforderliche Datei pi1/locallang.xml manuell zu erweitern und anzupassen und im Anschluss zu sichern.

Einige Inhalte – wie beispielsweise gender – findet man in der pi1/locallang.xml nicht. Hier reicht es aus, die entsprechenden Bereiche aus locallang_db.xml zu kopieren und in der pi1/locallang.xml einzufügen.

Das passende Template pi1/tx_srfeuserregister_pi1_css_tmpl.html, daß das Aussehen und die Reihenfolge der Felder bestimmt sollte kopiert und umgenannt werden. Im Constants-Bereich des Templates (hier Roottemplate) wird per
plugin.tx_srfeuserregister_pi1.file.templateFile = fileadmin/bin1tarif/name_der_template_kopie.html
der Extension das zu verwendende neue Template mitgeteilt.

Bin1Tarif nutzt eine einzige CSS-Datei, in der ganz bewußt alle Styles aufeinander abgestimmt sind. Hierfür habe ich eine Kopie der temporären CSS-Datei, die von Typo3 für die Extension erzeugt wird, gezogen – da ich nicht weiß, wie ich sonst die Styles hätte heraus bekommen können (über einen Tipp hierüber wäre ich froh). Die temporäre CSS-Datei liegt im typo3temp-Verzeichnis.

„Bitte verwende keine eigene CSS-Datei“ wird mit
plugin.tx_srfeuserregister_pi1._CSS_DEFAULT_STYLE >
im Template definiert.

Die Reihenfolge der nachfolgenden Schritte ist abhängig von der Konfiguration. Bei diesem Beispiel soll der User seine Registrierung über einen Link in einer eMail bestätigen. Der Administrator erhält eine Benachrichtigung zugeschickt.

Sobald der User bestätigt, soll er eine nette Willkommen-eMail erhalten. Der Administrator braucht über diesen Schritt nicht informiert zu werden.

Um die für die Individualität der Internetpräsenz notwendigen Inhalte anzupassen, sind Änderungen an dem Template als auch an den Sprachlabel-Variablen erforderlich. Nachfolgend führe ich die Template-Bereiche auf, die für die Zielsetzung von Relevanz sind. Um die richtigen Sprachlabel-Variablen finden zu können, muß man sich die Template-Marker anschauen:
LABEL_V_DEAR ist eine Sprachlabel-Variable namens v_dear, die in der locallang.xml zu finden ist. Denn der Marker beginnt mit LABEL_... Alles andere, was kein LABEL_... vorangestellt hat, kann eine Template-Constant sein.

Vorweg die Constants:
Bei den Constants sollte man sich auf jeden Fall in der Onlinedokumentation informieren, welche Konstanten mit welchen Defaultwerten initialisiert sind. Nachfolgend die für die Zielsetzung notwendigen Einstellungen.

In die „Template“ Ansicht wechseln
Click auf Root-Seite (bzw. auf die Seite, auf der das Template liegt)
Auswahlbox: Info/Modify (rechts oben – wenn nicht schon aktiv)
Click auf Constant
Typoscript-Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
# Template, welches genutzt werden soll
plugin.tx_srfeuserregister_pi1.file.templateFile = fileadmin/bin1tarif/name_der_template_kopie.html

# Administrator bestimmen
plugin.tx_srfeuserregister_pi1.email = [email]Bin1Tarif@Bin1Tarif.de[/email]
# Administrator bei Bestätigung der Registrierung informieren
plugin.tx_srfeuserregister_pi1.enableAdminNotifyConfirmation = 1
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnAdminAccept = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnAdminRefuse = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnApprove = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnDelete = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnRefuse = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnRegister = 0
plugin.tx_srfeuserregister_pi1.enableAdminNotifyOnUpdate = 0

# Berechtigungsgruppen
plugin.tx_srfeuserregister_pi1.userGroupAfterConfirmation = 1
plugin.tx_srfeuserregister_pi1.userGroupAfterAcceptation = 1

# Referenzen auf ...
plugin.tx_srfeuserregister_pi1.pid = 43
plugin.tx_srfeuserregister_pi1.editPID = 22
plugin.tx_srfeuserregister_pi1.loginPID = 20
plugin.tx_srfeuserregister_pi1.confirmPID = 21
plugin.tx_srfeuserregister_pi1.registerPID = 21

# Allgemeine Einstellungen
plugin.tx_srfeuserregister_pi1.usernameAtLeast = 3
plugin.tx_srfeuserregister_pi1.usernameAtMost = 20
plugin.tx_srfeuserregister_pi1.passwordAtMost = 20
plugin.tx_srfeuserregister_pi1.maxImages = 0
plugin.tx_srfeuserregister_pi1.siteName = [url=http://www.Bin1Tarif.de]Bin1Tarif

# Aussehen
plugin.tx_srfeuserregister_pi1.formFields = username, password, gender, title, first_name, last_name, date_of_birth, email, address, city, zone, language, static_info_country, zip, www, comments
plugin.tx_srfeuserregister_pi1.requiredFields = city,static_info_country,username,password,first_name,last_name,email
plugin.tx_srfeuserregister_pi1.salutation = formal

Zum Verständnis die Beispiel-ID’s nochmal in der Übersicht:
SysOrdner-ID: 43
Seiten-ID: 20 (anmelden)
Seiten-ID: 21 (registrieren)
Seiten-ID: 22 (Kontrollzentrum - Einstellungen)

Die Template-Bereiche

1. Formular Neuregistrierung
Template-Bereich: <!-- ###TEMPLATE_CREATE### begin -->
Bitte folgendes vergegenwärtigen: In der Auflistung plugin.tx_srfeuserregister_pi1.formFields teilt man dem Plugin mit, daß man bestimmte Felder grundsätzlich irgendwo nutzen möchte. Was jedoch wo genutzt werden soll, wird über den jeweiligen Teilbereich des Templates gesteuert. Es reicht dann aus, nicht benötigte Formularfelder zu löschen. Zu beachten sind jedoch die Mußfelder!

2. Onlinehinweis korrekte Anmeldung
Sobald der Button für die Neuregistrierung betätigt ist, erscheint anstelle des Registrierungsformulars eine Meldung.
Template-Bereich: <!-- ###TEMPLATE_SETFIXED_CREATE### begin -->

3. Erste eMail an User
Template-Bereich: <!-- ###EMAIL_TEMPLATE_SETFIXED_CREATE### begin -->

4. Benachrichtigungs-eMail an Administrator
Template-Bereich: <!-- ###EMAIL_TEMPLATE_SETFIXED_CREATE_ADMIN### begin -->

5. Bestätigungslink wird seitens des User aktiviert
Template-Bereich: <!-- ###TEMPLATE_SETFIXED_OK### begin -->

6. Willkommens-eMail an User
Template-Bereich: <!-- ###EMAIL_TEMPLATE_SETFIXED_APPROVE_HTML### begin -->

Viel Glück Mensch
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are An


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
nach FE Login leere Seite? heregoesthesun mm_forum 14 05.06.08 17:11
Login auf jeder Seite einfügen CMSJackson TYPO3 4.x FE-User 2 09.05.08 12:36
Nach BE-Login auf andere Seite lobby TYPO3 4.x Backend 0 25.01.08 07:37
Nach Login auf bestimmte Seite npuens TYPO3 4.x Fragen und Probleme 2 20.04.07 13:44
Benutzername bei FE Login soll auf jeder Seite erscheinen renegade TYPO3 3.x Fragen und Probleme 6 08.01.06 23:36


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 Uhr.


Powered by vBulletin® Version 3.6.8 Patch Level 2 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0
Template-Modifikationen durch TMS