Zum Inhalt springen

"Benutzername: <user>" sprengt den Rahmen

Erstellt am 30. April 2008 · 2 Antworten · letzte Antwort am 4. Mai 2008

Tags: Frontend-Benutzer, Frage

ChristianKnorr ·

typo3 - 4.1.6
Extension: Front End User Admin - feuser_admin - 1.0.2

Hallo zusammen,
Das Grundgerüst für meine zukünftige Homepage mit Typo3 steht, wenn auch mit einigen Fehlern.
Einer davon ist, dass wenn man im FE eingeloggt ist, die Meldung "Benutzername: christianknorr" die <table> des Templates auseinander reißt.
Ich habe etwas gefunden, weiß aber nicht wie ich es verändern kann, da es nur eine Ausgabe ist.
Hier...

BE -> Template -> Startseite -> Template Analyser -> styles.content (default)

...ist es dieser Bereich...

[loginUser = *]
styles.content.loginform { 
  dataArray > 
  dataArray {
    10.label = Username: <!-- ### USERNAME ### --> 
    20 > 
    30.type = logintype=hidden 
    30.value = logout 
    40.type = submit=submit 
    40.value = Logout 
  } 
}

...der so aussehen sollte (Auszug)...

    10.label = Username:<br><!-- ### USERNAME ### -->

Wie bekomme ich den Zeilenwechsel dazwischen?

Danke schonmal, Chris....

ChristianKnorr ·

Leider werde ich nicht fündig, auch nicht in den php-Dateien.
Hat denn keiner einen Gedankenanstoß?

Könnte ich vielleicht einen <div> oder anderen Container drum wrappen und den Zeilenwechsel erzwingen?
Der Quellcode aus dem Browser sieht so aus (ohne Leerstelle zwischen nb und sp):

Benutzername:&nb sp;christianknorr

das Ganze in einer <table>.

Ideen?

Unbekannter Benutzer ·

Wenns denn so nicht klappen will, dann mach es selbst neu...

In dein Designtemplate an die Stelle wo der Name und das Label erscheinen soll einen Marker zum Beispiel ###USER###

Dann in deinem Hauptemplate im Bereich Setup darauf verweisen und nach temp kopieren:

page.10.marks.USER < temp.USER

temp.User dann so beschreiben:

[loginUser = *]
temp {
	USER = TEXT
	USER {
		data = TSFE:fe_user|user|username
		noTrimWrap = |<b>Angemeldet als:</b> ||
	}
}
[else]
temp {
	USER = TEXT
	USER {
		value = nicht eingeloggt
		wrap = <b>|</b>
	}
}

[global]

Du kannst das natürlich auch direkt in marks schreiben. Wenn aber nicht, dann muss temp.User über page.10.marks stehen.
Zur Erklärung:
Ist fast dasselbe wie deine Condition, nur das noch eine else-Bedingung drinn steht. Die bewirkt, das wenn man nicht eingeloggt ist, dort steht: nicht eingeloggt. Kannst du auch weg lassen.
bei noTrimWrap steht nach dem <b>...</b> eine Leerschritt, der einen Zeilenumbruch erzwingen würde, wenn nicht genug Platz ist. Einzige Ausnahme, wenn du im CSS für die Class der Tabellenzelle ein nowrap:nowrap; stehen hast. Dann können da Leerzeichen drinn sein wie sie wollen, es würde nie umbrechen...
Also auch das mal kontrollieren.