Hallöchen Gemeinde,
bin langsam am verzweifeln. Mache jetzt seid vier Tagen an dieser Loginbox rum.
Hier der Code, ist bis auf das COA hier aus dem Forum von Steffen
temp.LOGIN = COA
temp.LOGIN {
stdWrap.required = 1
stdWrap.wrap = <div class="bg"><div class="ro"><div class="lo"><div class="ru"><div class="lu"><div class="inhalt"> | </div></div></div></div></div></div>
#Wenn eine Anmeldung erfolgt ist, wird der folgende Part angezeigt.
[usergroup = *]
1 = TEXT
1.data = TSFE : id
1.wrap (
<form action="index.php?id=|" method="post" class="login_form">
Angemeldet als: <!--###USERNAME###-->
<input type="submit" value="Abmelden">
<input type="hidden" name="logintype" value="logout" >
</form>
)
#Ansonsten wird der [else] Zweig angezeigt
[else]
1 = TEXT
1.data = TSFE : id
1.wrap (
<form action="index.php?id=106" method="post" class="login_form">
Benutzer:
<input name="user" type="text" id="user" title="Benutzername" onfocus="if(this.value==this.defaultValue) this.value=''" value="" size="10" class="inputfields">
Passwort:
<input name="pass" type="password" id="pass" title="Passwort" onfocus="if(this.value==this.defaultValue) this.value=''" value="" size="10" class="inputfields">
<input type="submit" value="Anmelden">
<input type="hidden" name="redirect_url" value="index.php?id= | " />
<input type="hidden" name="logintype" value="login" >
<input type="hidden" name="pid" value="103" >
<p><a href="index.php?id=106&no_cache=1&tx_newloginbox_pi1[forgot]=1">Passwort vergessen?</a></p>
<p><a href="index.php?id=102&tx_srfeuserregister_pi1[pointer]=&tx_srfeuserregister_pi1[mode]=&tx_srfeuserregister_pi1[sword]=&tx_srfeuserregister_pi1[sort]=&tx_srfeuserregister_pi1[cmd]=create">Neu registrieren</a></p>
</form>
)
}
Aber irgendwie will das alle nicht. Ich kann mich einfach nicht anmelden.
Habs jetzt in einem Ext-Template, hatte es auch schon im Haupttemplate - nichts, es will nicht.
😢 😢 Hat mir jemand einen Tip
Vielen Dank schonmal
Hallöchen, also ich hab jetzt schon ein bischen mehr herausgefunden, aber so ganz bin ich noch nicht dahinter gestiegen.
Wenn ich das COA weglasse, und nur das hier benutze, kann ich mich zwar nicht anmelden, aber wenn ich mich dann über die ID 106 (auf der Seite liegt mein Anmeldeformular)anmelde, dann erscheint auch der abmelde-button.
# Loginbox auf allen Seiten
[usergroup = *]
# Logout
1 = TEXT
1.data = TSFE : id
1.wrap (
<div id="logoutbox" >
<form action="index.php?id= | " method="post" style="margin-top:0pt; margin-bottom:0pt">
<input type="hidden" name="logintype" value="logout" />
<input type="submit" name="submit" title="Abmelden" value="Abmelden" />
</form>
</div>
)
[else]
1 = TEXT
1.data = TSFE : id
1.wrap (
<div id="loginbox" >
<form action="index.php?id=106" method="post" style="margin-top:0pt; margin-bottom:0pt">
<input name="user" type="text" id="user" title="Benutzername" onfocus="if (this.value==this.defaultValue) this.value=''" value="" />
<input name="pass" type="password" id="pass" title="Passwort" onfocus="if (this.value==this.defaultValue) this.value=''" value="" />
<input name="submit" type="submit" class="button" title="Anmelden" value="Anmelden"/>
<input type="hidden" name="redirect_url" value="index.php?id= | " />
<input type="hidden" name="logintype" value="login" />
<input type="hidden" name="pid" value="103" />
</form>
</div>
)
Also wird erkannt, dass ich mich anmelde. Aber warum funktioniert denn dann die Anmeldung nicht?
Hat mir jemand einen Tip?
Und dann ist die Frage, was mach ich mit meinem COA. Da tut sich nämlich dann gar nichts. Hängt das mit dem schönen Satz keine Conditions innerhalb geschweifter Klammern zusammen? Wie würdet ihr dass lösen.
Hoffe jemand schmeißt mir bischen Hirn rüber, damit ich das hier endlich mal gelöst bekomme.
Gruß
Daniel
dein COA ist IMO falsch, schau in die TSref wies richtig geht...
temp.test = COA
temp.test {
10 = TEXT
20 = TEXT
..
}
georg
So, hab mir mein COA nochmal zu Gemütet geführt.
Einen Fehler hab ich leider keinen erkennen können. Wenn ich den Logout auf 10 nehme und den Login auf 20 wird, wie soll es auch anders sein, beides gleichzeitig angezeigt.
Habe auch versucht, den Logout-Passus rauszunehmen und nur den Login drinne zu lassen. Klappt aber leider auch nicht.
Aber um das COA geht es mir eigentlich nur Sekundär. Primär wurmt mich, dass der Login nicht funktioniert, egal ob mit oder ohne COA.
Liegt es vielleicht daran, dass ich das ganze als ext-Template laufen habe und nicht im Main-Template stehen habe? Ich meine, eingebunden habe ich es ja richtig mit
marks.LOGIN < temp.LOGIN
Mal nochmal nach oben schieb.
Bin jetzt in der letzten Zeit nochmal die Threats hier im Forum durchgegangen und hab den geposteten Code nochmal mit meinem verglichen.
Geschafft hab ich es leider immer noch nicht. 😢
Vielleicht erbarmt sich ja einer meiner.
Ich glaube ich komme dem ganzen ein wenig weiter auf die Spur.
Ich verwende ja die newloginbox mit md5. Hab mir nocmal den Quelltext angeschaut.
Der challenge wert wird ja nicht mitgegeben. Vielleicht liegt es ja daran, dass das login nicht funktioniert. Hat einer vielleicht dazu eine idee?
Gruß
Daniel
Hallo Daniel,
ich stand vor dem selben Problem und konnte es mit Hilfe des folgenden Threads lösen:
#41526
Im folgenden mein Schrittweises vorgehen:
1. Ich benutze automaketemplate, weshalb ich alle Quelldateien im Ordner fileadmin abgespeichert habe. Dort kopiere ich auch die Datei md5.js (zu finden im Ordner typo3) hinein.
2. Das benötigte JavaScript in mein Template einfügen
<script type="text/javascript">
/*<![CDATA[*/
<!--
function superchallenge_pass(form) {
var pass = form.pass.value;
if (pass) {
var enc_pass = MD5(pass);
var str = form.user.value+":"+enc_pass+":"+form.challenge.value;
form.pass.value = MD5(str);
return true;
} else {
return false;
}
}
// -->
/*]]>*/
</script>
<script language="JavaScript" type="text/javascript" src="md5.js"></script>
3. Damit diese händisch eingefügten JavaScripts nicht mit den automatisch generierten auf der Login-Seite kollidieren, kommentiere ich diese vorsichtshalber in der Datei class.tx_kbmd5fepw_newloginbox.php (typo3conf\ext\kb_md5fepw\pi1) aus.
//$GLOBALS['TSFE']->JSCode .= $js;
//$GLOBALS['TSFE']->additionalHeaderData['tx_kbmd5fepw_newloginbox'] = '<script language="JavaScript" type="text/javascript" src="typo3/md5.js"></script>';
4. Jetzt muss noch die Funktion zum Austausch des Challenge-Platzhalters eingefügt werden. Dies geschieht in der Datei ext_localconf.php (typo3conf\ext\kb_md5fepw). Dort einfach am Ende folgende Funktion einfügen:
if (TYPO3_MODE == 'FE') {
$TYPO3_CONF_VARS['FE']['XCLASS']['tslib/class.tslib_content.php'] = t3lib_extMgm::extPath($_EXTKEY).'class.ux_tslib_content.php';
require_once(t3lib_extMgm::extPath('kb_md5fepw').'class.tx_kbmd5fepw_procout.php');
$TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['contentPostProc-output'][] = 'tx_kbmd5fepw_procout->contentPostProc_output';
}
5. Schliesslich noch das bewährte TS mit dem zusätzlichen hidden-field und Challenge-Platzhalter
[usergroup = *]
temp.login = TEXT
temp.login.dataWrap (
<form action="{getIndpEnv:TYPO3_REQUEST_URL}" method="post">
<p>Sie sind angemeldet als Ilahn
<input class="logout" type="submit" value="Logout" />
<input type="hidden" name="logintype" value="logout" />
</p>
</form>
)
[else]
temp.login = TEXT
temp.login.data = TSFE : id
temp.login.dataWrap (
<form action="index.php?id=100" method="post" onsubmit="superchallenge_pass(this); return true;">
<input type="text" name="user" value="" />
<input type="password" name="pass" value="" />
<input type="submit" name="submit" value="Anmelden" />
<input type="hidden" name="logintype" value="login" />
<input type="hidden" name="pid" value="99" />
<input type="hidden" name="redirect_url" value="{getIndpEnv:TYPO3_REQUEST_URL}" />
<input type="hidden" name="challenge" value="###KB_MD5FEPW_CHALLENGE###" />
</form>
)
[global]
Das sollte es dann tun 😉 Viel Erfolg!
Hey, cool, danke für die Hilfe. Werde ich mal durchackern.
Habe es jetzt auf die schnelle anders gelöst, da ich nicht die Ext auseinander nehmen wollte.
temp.LOGIN = COA
temp.LOGIN {
stdWrap.required = 1
stdWrap.wrap = <div class="bg"><div class="ro"><div class="lo"><div class="ru"><div class="lu"><div class="inhalt"> | </div></div></div></div></div></div>
10 < plugin.tx_newloginbox_pi1
10 {
templateFile = fileadmin/template/kt-org/ext/login.htm
pid = 103
show_forgot_password = 0
}
}
So klappt das auch ganz gut. Und ich habe keine Probleme bei einem Upgrade.
Hoffe ich mal 😃
Aber trotzdem THX
Hallo d.walter
wenn ich deinen ersten Post anschaue,
fällt mir auf das du zwar ein "[else]" verwendest, aber ich kann das dazugehörige "if" davor nicht finden. Fehlt das absichtlich. Ansonsten ist der Code nicht schlecht.
Gruß
-KHL-
Tachen KHL,
also den Code findest du hier zu hauf im Forum - ich bin nicht der Urheber!!!
Aber soweit ich den Code verstehe, benötigst du das if nicht.
Gruß
Daniel