• Автор:

    Flesha
  • Добавлено:

    апр 12, 2013
  • Комментариев:

    1
  • Просмотров:

    2 786

Хак Выбор группы при регистрации

Хак Выбор группы при регистрации

Хак позволяет посетителю, при регистрации, самому выбрать группу в которой он окажется после регистрации.

К примеру...Вы кто?
-частное лицо
-компания

Установка:

1. Открываем /engine/modules/register.php и ищем:
    $tpl->set( '[registration]', "" );


Вставляем выше:
    $group_select = '';
$allow_group = array(3,4); // Группы доступные при регистрации
foreach ( $allow_group as $id ) {
$group = $user_group[$id];
$group_select .= '<option value="' . $group['id'] . "\">" . $group['group_name'] . "</option>\n";
}
$tpl->set( '{group}', "<select name=\"group\">".$group_select."</select>" );


Ищем далее (будет найдено 2 вхождения):
    rawurlencode( base64_encode( $name . "||" . $email . "||" . md5( $password1 ) . "||" . md5( md5( $name . $email . DBHOST . DBNAME . $config['key'] ) )


Вставляем далее:
    . "||" . (int)$_POST['group']


Ищем далее:
    $db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $config['reg_group'] . "', '', '', '', '', '" . $_IP . "')" );


Меняем на:
    $allow_group = array(3,4); // Группы доступные при регистрации
$user_arr[4] = intval($user_arr[4]);
if(!in_array($user_arr[4], $allow_group)) $user_arr[4] = 4; // Группа по умолчанию
$db->query( "INSERT INTO " . USERPREFIX . "_users (name, password, email, reg_date, lastdate, user_group, info, signature, favorites, xfields, logged_ip) VALUES ('$name', '$regpassword', '$email', '$add_time', '$add_time', '" . $user_arr[4] . "', '', '', '', '', '" . $_IP . "')" );


2. В шаблон /templates/[имя шаблона]/registration.tpl в нужное место вставляем тег:
{group}


Готово!

Важно! Способ будет работать только для новых пользователей.

Версия DLE: 9.0-9.7
Автор: ПафНутиЙ
Сайт автора: pafnuty.name
Источник: dle-faq.ru dle
Вернуться

Комментарии:


  1. Mir Lam™ → 21 января 2017 20:31
    Всем привет!! Вобщем все сделал как положено все работает но после того как нажимаю отправить выдает ID not valid! как это исправить (DLE 11.2)
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.