[DLE 9.x] Выбор группы при регистрации
Хак позволяет посетителю, при регистрации, самому выбрать группу в которой он окажется после регистрации.
К примеру...Вы кто?
-частное лицо
-компания
Установка:
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}
Комментариев 0