Вы не зашли.
Страницы 1
Добрый вечер.
Скажите сложно ли сделать кнопку проверки доступности логина при регистрации?
Чтобы при нажатии на кнопку, в базе проверялось есть ли такой ник и если есть, то регистрация бы отклонялась.
Не в сети
Оно уже давно дописано:
http://trac.assembla.com/ngcms/changeset/1145
Изменено infinity237 (2013-10-23 20:49:05)
Не в сети
Если на JQ, то например так:
$('input').filter('[name="login"]').after('<input type="button" id="check_login" value="CheckLogin" />');
Не в сети
А вот что то типа такой ссылки можно сделать?
<button class="bbcodes" type="button"><span>Проверить</span></button>
А если эту строку то куда её нужно поставить? в auth_basic.php ?
$('input').filter('[name="login"]').after('<input type="button" id="check_login" value="CheckLogin" />');
Вот код registration.tpl
<form name="register" action="{form_action}" method="post">
<input type="hidden" name="type" value="doregister" />
<div class="whiteform" align="center"></div>
<div class="formhead">
<div class="dleft"><div class="dright">
<h2 class="dtitle">
Регистрация нового пользователя
</h2>
</div></div>
</div>
<div class="formmain">
<div class="dbg"><div class="dbtm"><div class="dleft"><div class="dright">
<div class="dlbtm"><div class="drbtm">
<div class="dpad">
<table class="tableform">
<tr>
<td colspan="2">
<b>Здравствуйте, уважаемый посетитель нашего сайта!</b><br />
Регистрация на нашем сайте позволит Вам быть его полноценным участником.
Вы сможете добавлять новости на сайт, оставлять свои комментарии, просматривать скрытый текст и многое другое.
<br />В случае возникновения проблем с регистрацией, обратитесь к <a href="/plugin/feedback/?id=1">администратору</a> сайта.
</td>
</tr></table>
<table class="tableform">
{entries}
[captcha]
<tr>
<td>
<td class="label">
Проверочный код: <font color=red>*</font>
</td>
<td>
<div><img src="{admin_url}/captcha.php"></div>
<div><input type="text" name="vcode" style="width:80px" class="f_input1" /></div>
</td>
</td>
</tr>
[/captcha]
</table>
<div class="fieldsubmit">
<button class="bbcodes" type="submit"><span>Отправить</span></button>
</div>
</div></div></div></div></div></div></div></div>
Код registration.entries.tpl
<tr>
<td>
<td class="label">
{title}: <font color=red>*</font>
</td>
<td class="fi">{input}</td>
</td>
</tr>
Изменено dampel (2013-10-23 22:18:50)
Не в сети
0. Если хотите использовать данную фичу, то нужно использовать twig в registration.tpl, как это сделано в default шаблоне.
Не в сети
infinity237, я так понимаю что вот этот скрипт отвечающий за проверку логина. Вставил его в шаблон и если имя недоступно рамка вокруг поля становиться красной.
<script type="text/javascript">
$(document).ready(function(){
$("#reg_login").change(function() {
$.post('/engine/rpc.php', { json : 1, methodName : 'core.registration.checkParams', rndval: new Date().getTime(), params : json_encode({ 'login' : $('#reg_login').val() }) }, function(data) {
// Try to decode incoming data
try {
resTX = eval('('+data+')');
} catch (err) { alert('Error parsing JSON output. Result: '+linkTX.response); }
if (!resTX['status']) {
alert('Error ['+resTX['errorCode']+']: '+resTX['errorText']);
} else {
if ((resTX['data']['login']>0)&&(resTX['data']['login'] < 100)) {
$("#reg_login").css("border-color", "red");
} else {
$("#reg_login").css("border-color", "#cfdde6");
}
}
}).error(function() {
alert('HTTP error during request', 'ERROR');
});
});
});
</script>
infinity237, не подскажите где эта строка должна располагаться и какое сообщение должно появится если логин занят?
$('input').filter('[name="login"]').after('<input type="button" id="check_login" value="CheckLogin" />');
Хотелось бы чтобы при нажатии кнопки появлялось сообщение что логин занят, а не просто красная рамка вокруг поля
Изменено dampel (2013-10-24 01:56:08)
Не в сети
<script type="text/javascript">
$(document).ready(function(){
$('input').filter('[name="login"]').after('<input type="button" id="check_login" value="CheckMe" />');
$( "#check_login" ).click(function() {
if ($('#reg_login').val() == '') {
$("div#reg_login_result").html("");
return;
}
$.post('/engine/rpc.php', { json : 1, methodName : 'core.registration.checkParams', rndval: new Date().getTime(), params : json_encode({ 'login' : $('#reg_login').val() }) }, function(data) {
// Try to decode incoming data
try {
resTX = eval('('+data+')');
} catch (err) { alert('Error parsing JSON output. Result: '+linkTX.response); }
if (!resTX['status']) {
alert('Error ['+resTX['errorCode']+']: '+resTX['errorText']);
} else {
if ((resTX['data']['login']>0)&&(resTX['data']['login'] < 100)) {
$("div#reg_login_result").html("<span style='color:#b54d4b;'>Введенный логин уже существует или содержит неразрешенные символы!</span>");
} else {
$("div#reg_login_result").html("<span style='color:#94c37a;'>Введенный вами логин свободен и может быть использован при регистрации.</span>");
}
}
}).error(function() {
alert('HTTP error during request', 'ERROR');
});
});
});
</script>
<div id="reg_login_result"></div>
Не в сети
Страницы 1