Hallo,
ich habe eine Web-Seite an der ich die Standard Login-Box von Typo3 Version 4.0.2 mittels des folgenden TS Scripts:
a.) auf einen Marker ###LOGIN### gelegt habe, und
b.) entsprechend meiner Anforderungen formatiere
page.10.marks.LOGIN < tt_content.login.20
page.10.marks.LOGIN {
layout = <tr><td class="csc-form-labelcell" align="center">###LABEL###</td></tr><tr><td class="csc-form-fieldcell" align="center">###FIELD###</td></tr>
dataArray {
10.type = *user = input, 10, 30
20.type = *pass = password, 10, 30
}
stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" width="130" valign="top" align="center" class="csc-loginform"> | </table>
hiddenFields.pid.value = 34
}
Die beiden Zuweisung in Zeile 5 und 6 definieren wie gewünscht die Größe des Eingabefeldes, aber folgender Effekt tritt ein:
Nach erfolgreichen Login bleiben beide Felder im Gegensatz zu vorher erhalten. Zusätzlich muß ich jetzt zum Ausloggen username + password wieder eingeben.
Wie erhalte ich die normale Logout Funktion wieder?
Besten Dank für Eure Hilfe,
Ulf
Also, mühsam kommt man langsam weiter. Nachdem ich das TS-Skript wie folgt geändert habe:
[usergroup = *]
page.10.marks.LOGIN < tt_content.login.20
page.10.marks.LOGIN {
stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" width=130 valign=bottom align=center class="csc-loginform">|</table>
layout = <tr><td class="csc-form-labelcell" align=center>###LABEL###</td></tr><tr><td class="csc-form-fieldcell" align=center>###FIELD###</td></tr>
dataArray {
10.type = *user= hidden
20.type = *pass= hidden
}
hiddenFields.pid.value = 34
}
[else]
page.10.marks.LOGIN < tt_content.login.20
page.10.marks.LOGIN {
stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" width=130 valign=bottom align=center class="csc-loginform">|</table>
layout = <tr><td class="csc-form-labelcell" align=center>###LABEL###</td></tr><tr><td class="csc-form-fieldcell" align=center>###FIELD###</td></tr>
dataArray {
10.type = *user=input, 12, 30
20.type = *pass=password, 12, 30
}
hiddenFields.pid.value = 34
}
verschwinden nach dem Einloggen Die Username: und Password: Felder. Nur fehlt mir jetzt, bzw. immer noch die Anzeige "username: name".
Hat da jemand vielleicht einen Tipp?
Gruss,
Ulf
[loginUser = *]
temp {
USER = TEXT
USER {
data = TSFE:fe_user|user|username
noTrimWrap = |Angemeldet als: ||
}
}
[global]
Hallo SLAng,
besten Dank für die Antwort, aber leider ändert sich nichts.
Das Script sieht jetzt wie folgt aus:
[usergroup = *]
page.10.marks.LOGIN < tt_content.login.20
page.10.marks.LOGIN {
stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" width=130 valign=bottom align=center class="csc-loginform">|</table>
layout = <tr><td class="csc-form-labelcell" align=center>###LABEL###</td></tr><tr><td class="csc-form-fieldcell" align=center>###FIELD###</td></tr>
dataArray {
10.type = *user= hidden
20.type = *pass= hidden
}
hiddenFields.pid.value = 34
}
[else]
page.10.marks.LOGIN < tt_content.login.20
page.10.marks.LOGIN {
stdWrap.wrap = <table border="0" cellspacing="1" cellpadding="1" width=130 valign=bottom align=center class="csc-loginform">|</table>
layout = <tr><td class="csc-form-labelcell" align=center>###LABEL###</td></tr><tr><td class="csc-form-fieldcell" align=center>###FIELD###</td></tr>
dataArray {
10.type = *user=input, 12, 30
20.type = *pass=password, 12, 30
}
hiddenFields.pid.value = 34
}
[loginUser = *]
temp {
USER = TEXT
USER {
data = TSFE:fe_user|user|username
noTrimWrap = |Angemeldet als: ||
}
}
[global]
Oder habe ich etwas missverstanden? Nach dem erfolgreichen einloggen sehe ich nur den Kogout Button. Was ich gerne hätte wäre die Anzeige: "logged in as: username"
Danke, Ulf
Ja habe ich schon verstanden... Ich kenne aber deinen Wissenstand in Sachen TS nicht, daher habe ich es kurz gehalten...
temp... ist das temp-Objekt... USER die Bezeichnung, die eigentlich auf den Marker kopiert werden soll.... ich kann sooo schlecht erklären... 8-)
Also du musst in deiner HTML-Vorlage einen Marker ###USER### erstellen, an der Stelle wo nachher die Meldung "Eingelogt als xy" erscheinen soll...
Den sprichst du dann an mittels:
page.10.marks.USER
und kopierst dann temp.USER darauf...
Also zusammen:
[loginUser = *]
temp {
USER = TEXT
USER {
data = TSFE:fe_user|user|username
noTrimWrap = |Angemeldet als: ||
}
}
[global]
page.10.marks.USER < temp.USER
Du kannst es auch mit nem ELSE erweitern:
[loginUser = *]
temp {
USER = TEXT
USER {
data = TSFE:fe_user|user|username
noTrimWrap = |Angemeldet als: ||
}
}
[else]
temp {
USER = TEXT
USER {
value = Sie sind nicht eingeloggt
wrap = |
}
}
[global]
Wenn dein PAGE-Objekt nicht page sondern zum Beispiel Seite heißt, dann musst du das dementsprechend anpassen.
Hallo SLAng,
jetzt haben wir es. Aber ich muß trotzdem nochmal nachfragen (meine TYPO3 Kenttnisse sind doch eher begrenzt). Warum kann ich mein Originalskript nicht entsprechend erweiteren (und wenn wie?) um das gewünschte Ergebnis zu erzielen. Wenn ich die Original Login-Box verwende, funktioniert ja alles so wie ich will (incl. Anzeige Username).
Mit:
page.10.marks.LOGIN < tt_content.login.20
mach ich doch nichts anderes als das Original zu übernehmen und anschließend entsprechend meine Wünschen anzupassen.
Dank und Gruß,
Ulf
Ich denke schon dass man das erweitern kann...
Ganz ehrlich würde ich mir an deiner Stelle aber generell die Zeit dafür sparen, denn es gibt gute Extensions die dich nach dem Login auch noch nach deinen Wünschen weiterleiten und ausgeben was du willst...
Also warum baust du dir da alles von Hand zusammen und verwendest auch noch Tabellen dafür? Warum testest du nicht mal felogin an?
Ich denke damit kannst du dir ne Menge Zeit sparen und es läuft anschließend optimal.