Beiträge: 76
Themen: 10
Registriert seit: 23.12.2006
MyBB-Version: 2.1.1
14.07.2008, 13:24
(Dieser Beitrag wurde zuletzt bearbeitet: 14.07.2008, 13:24 von rikku.)
Ja ich habe die Sufu benutzt aber leider nichts passendes gefunden
Also zu meiner Frage: Wie bekomme ich es hin das bei der Einverständniserklärung der "Ich stimme zu" button erst nach einer gewissen zeit zB. nach 10 sek zum klicken freigegeben wird? Also das man erst nach 10 sekunden draufklicken kann ^^
bitte um hilfe
Beiträge: 2.288
Themen: 141
Registriert seit: 17.11.2005
14.07.2008, 13:46
(Dieser Beitrag wurde zuletzt bearbeitet: 14.07.2008, 13:49 von ows.)
Im Template "Mitglieder-Templates --> member_register_agreement"
PHP-Code:
<div align="center">
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" />
</div>
ersezen durch:
PHP-Code:
<div align="center">
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" id="Send" />
<script type="text/javascript">
<!--
var Sekunden = 10;
var Buttonbeschriftung = "Ich stimme zu";
document.getElementById('Send').disabled = true;
for(i=1; i<=Sekunden; i++)
{
window.setTimeout("ButtonAktualisieren(" + i + ")", i*1000);
}
window.setTimeout("ButtonFreigeben()", Sekunden*1000);
function ButtonAktualisieren(VergangeneSekunden)
{
if(VergangeneSekunden==Sekunden)
{
document.getElementById('Send').value = Buttonbeschriftung;
}
else
{
Restsekunden = Sekunden-VergangeneSekunden;
document.getElementById('Send').value = Buttonbeschriftung +
" (Bitte den Text lesen und noch " + Restsekunden + " Sekunden warten)";
}
}
function ButtonFreigeben()
{
document.getElementById('Send').disabled = false;
}
//-->
</script>
</div>
Funktioniert aber nur, wenn der User JavaScript aktiviert hat. Die Zeit und die Button-Beschriftung können im Code geändert werden.
The User, Formerly Known As "En-Gedi"
Beiträge: 76
Themen: 10
Registriert seit: 23.12.2006
MyBB-Version: 2.1.1
Vielen Dank für die schnelle Hilfe
noch ne frage: wenn die keinen Javascript aktiv haben, können sie sich dann trotzdem registrieren bzw auf den button klicken?
Beiträge: 2.288
Themen: 141
Registriert seit: 17.11.2005
Ja, lediglich der Countdown wird dann nicht angezeigt.
The User, Formerly Known As "En-Gedi"
Beiträge: 63
Themen: 8
Registriert seit: 09.07.2008
Hallo
Das ist ja mal ein tolles Ding
. á la WoltLab BB.
Find ich gut - dank die en-gedi.
MfG; E.B.
Beiträge: 760
Themen: 106
Registriert seit: 23.08.2007
MyBB-Version: 1.6
Danke dir ebenfalls En-gedi, ziemlich coole Sache.
Template umgeschrieben und für gut befunden.
L.G.
Walter
Beiträge: 230
Themen: 38
Registriert seit: 18.08.2008
18.08.2008, 20:19
(Dieser Beitrag wurde zuletzt bearbeitet: 18.08.2008, 20:22 von Yang0504.)
(14.07.2008, 13:46)en-gedi schrieb: Im Template "Mitglieder-Templates --> member_register_agreement"
PHP-Code:
<div align="center">
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" />
</div>
ersezen durch:
PHP-Code:
<div align="center">
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" id="Send" />
<script type="text/javascript">
<!--
var Sekunden = 10;
var Buttonbeschriftung = "Ich stimme zu";
document.getElementById('Send').disabled = true;
for(i=1; i<=Sekunden; i++)
{
window.setTimeout("ButtonAktualisieren(" + i + ")", i*1000);
}
window.setTimeout("ButtonFreigeben()", Sekunden*1000);
function ButtonAktualisieren(VergangeneSekunden)
{
if(VergangeneSekunden==Sekunden)
{
document.getElementById('Send').value = Buttonbeschriftung;
}
else
{
Restsekunden = Sekunden-VergangeneSekunden;
document.getElementById('Send').value = Buttonbeschriftung +
" (Bitte den Text lesen und noch " + Restsekunden + " Sekunden warten)";
}
}
function ButtonFreigeben()
{
document.getElementById('Send').disabled = false;
}
//-->
</script>
</div>
Funktioniert aber nur, wenn der User JavaScript aktiviert hat. Die Zeit und die Button-Beschriftung können im Code geändert werden.
Also das ist mein 1. externe Forum und möchte gerne wissen wo ich das Fett makierte finde?
... Fehler sind die wahre Perfektion.
Beiträge: 2.288
Themen: 141
Registriert seit: 17.11.2005
Admin-CP --> Templates & Style --> Templates --> Dein Template-Set --> Mitglieder Templates --> member_register_agreement
Der Code hat sich allerdings für die Version 1.4.x leicht geändert. Falls dazu Hilfe benötigt wird ... kurzer Post genügt
The User, Formerly Known As "En-Gedi"
Beiträge: 24
Themen: 8
Registriert seit: 03.08.2008
19.08.2008, 15:36
(Dieser Beitrag wurde zuletzt bearbeitet: 19.08.2008, 15:36 von windowsfreak.)
jo, ich bräuchte Hilfe dabei , wie ich das bei 1.4.X machen kann .. hoffe auf antwort
Beiträge: 2.288
Themen: 141
Registriert seit: 17.11.2005
Ersetze in dem genannten Template
PHP-Code:
<div align="center">
<input type="hidden" name="step" value="agreement" />
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" />
</div>
durch
PHP-Code:
<div align="center">
<input type="hidden" name="step" value="agreement" />
<input type="hidden" name="action" value="register" />
<input type="submit" class="button" name="agree" value="{$lang->i_agree}" id="Send" />
<script type="text/javascript">
<!--
var Sekunden = 30;
var Buttonbeschriftung = "Ich stimme zu";
document.getElementById('Send').disabled = true;
for(i=1; i<=Sekunden; i++)
{
window.setTimeout("ButtonAktualisieren(" + i + ")", i*1000);
}
window.setTimeout("ButtonFreigeben()", Sekunden*1000);
function ButtonAktualisieren(VergangeneSekunden)
{
if(VergangeneSekunden==Sekunden)
{
document.getElementById('Send').value = Buttonbeschriftung;
}
else
{
Restsekunden = Sekunden-VergangeneSekunden;
document.getElementById('Send').value = Buttonbeschriftung +
" (Bitte den Text lesen und noch " + Restsekunden + " Sekunden warten)";
}
}
function ButtonFreigeben()
{
document.getElementById('Send').disabled = false;
}
//-->
</script>
</div>
Die Zeit (in Sekunden), die "heruntergezählt" werden soll, kann dabei in der Zeile
eingestellt werden.
The User, Formerly Known As "En-Gedi"