Example #1
0
    trigger_error('SERVICE_UNAVAILABLE');
}
$content = request_var('content', '');
$forum_ids = request_var('f', array(0));
$topic_id = request_var('t', 0);
$include_subforums = request_var('sub', false);
$cat = request_var('cat', false);
$syndication_method = request_var('format', '');
$number_items = request_var('items', (int) $config['syndication_items']);
$global = $content != 'topic_posts' ? request_var('global', false) : false;
$folder = request_var('folder', '');
$http_auth = isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW']) ? true : false;
// do we have a guest and HTTP AUTH present?
if (($http_auth || $content == 'pm') && $user->data['user_id'] == ANONYMOUS) {
    if ($http_auth) {
        phpbb_login();
    } else {
        http_auth();
    }
}
// do not exceed the limit
$number_items > $config['syndication_items'] || $number_items < 0 ? $number_items = (int) $config['syndication_items'] : '';
$syndication_method = parse_format($syndication_method);
switch ($content) {
    case 'pm':
        if (!$config['allow_privmsg'] || !$auth->acl_get('u_readpm')) {
            $user->add_lang('ucp');
            trigger_error('PM_DISABLED');
        }
        switch ($folder) {
            case PRIVMSGS_INBOX:
Example #2
0
function phpbb_register(&$registration_details)
{
    global $settings, $db, $phpbb_db;
    $settings = get_settings();
    if (!($phpbb_db = phpbb_connect())) {
        return;
    }
    $additional_groups = get_additional_groups($settings['group_id']);
    // Find unique username in phpBB
    $username = $registration_details['username'];
    $i = '';
    while ($phpbb_db->get_var($sql = "SELECT user_id FROM {$settings['db']}users WHERE username = '******'")) {
        $i++;
    }
    $username = $db->escape($username . $i);
    $password = md5($registration_details['password']);
    $user_id = $db->get_var($sql = "SELECT user_phpbb FROM " . table_users . " WHERE user_id = '{$registration_details['id']}'");
    $user_type = 0;
    $group_colour = $db->escape($phpbb_db->get_var($sql = "SELECT group_colour FROM {$settings['db']}groups WHERE group_id = '{$settings['group_id']}'"));
    $bb_config = get_phpbb_settings();
    if (!$user_id) {
        $user_id = $phpbb_db->get_var($sql = "SELECT MAX(user_id) FROM {$settings['db']}users");
        $user_id++;
        $phpbb_db->query($sql = "INSERT INTO {$settings['db']}users\n\t\t\t\t\t\t\t(user_id,\n\t\t\t\t\t\t\tuser_type,\n\t\t\t\t\t\t\tgroup_id,\n\t\t\t\t\t\t\tuser_ip,\n\t\t\t\t\t\t\tuser_regdate,\n\t\t\t\t\t\t\tusername,\n\t\t\t\t\t\t\tusername_clean,\n\t\t\t\t\t\t\tuser_password,\n\t\t\t\t\t\t\tuser_email,\n\t\t\t\t\t\t\tuser_email_hash,\n\t\t\t\t\t\t\tuser_timezone,\n\t\t\t\t\t\t\tuser_style,\n\t\t\t\t\t\t\tuser_lang,\n\t\t\t\t\t\t\tuser_dateformat,\n\t\t\t\t\t\t\tuser_colour\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\tVALUES\n\t\t\t\t\t\t\t('{$user_id}',\n\t\t\t\t\t\t\t'{$user_type}',\n\t\t\t\t\t\t\t'{$settings['group_id']}',\n\t\t\t\t\t\t\t'{$_SERVER[REMOTE_ADDR]}',\n\t\t\t\t\t\t\tUNIX_TIMESTAMP(NOW()),\n\t\t\t\t\t\t\t'{$username}',\n\t\t\t\t\t\t\t'" . strtolower($username) . "',\n\t\t\t\t\t\t\t'{$password}',\n\t\t\t\t\t\t\t'{$registration_details['email']}',\n\t\t\t\t\t\t\t'" . crc32(strtolower($registration_details['email'])) . strlen($registration_details['email']) . "',\n\t\t\t\t\t\t\t'{$bb_config['board_timezone']}',\n\t\t\t\t\t\t\t'{$bb_config['default_style']}',\n\t\t\t\t\t\t\t'{$bb_config['default_lang']}',\n\t\t\t\t\t\t\t'{$bb_config['default_dateformat']}',\n\t\t\t\t\t\t\t'{$group_colour}')\n\t\t\t\t\t");
        $phpbb_db->query("UPDATE {$settings['db']}config SET config_value = '{$username}' WHERE config_name = 'newest_username'");
        $phpbb_db->query("UPDATE {$settings['db']}config SET config_value = '{$user_id}' WHERE config_name = 'newest_user_id'");
        $phpbb_db->query("UPDATE {$settings['db']}config SET config_value = config_value + 1 WHERE config_name = 'num_users'");
        $phpbb_db->query("UPDATE {$settings['db']}config SET config_value = '{$group_colour}' WHERE config_name = 'newest_user_colour'");
        $db->query("UPDATE " . table_users . " SET user_phpbb='{$user_id}' WHERE user_id='{$registration_details['id']}'");
    } else {
        if ($registration_details['password']) {
            $setpass = "******";
        }
        $phpbb_db->query($sql = "UPDATE {$settings['db']}users SET\n\t\t\t\t\t\tuser_type = '{$user_type}',\n\t\t\t\t\t\tgroup_id = '{$settings['group_id']}',\n\t\t\t\t\t\t{$setpass}\n\t\t\t\t\t\tuser_email = '{$registration_details['email']}',\n\t\t\t\t\t\tuser_email_hash = '" . crc32(strtolower($registration_details[email])) . strlen($registration_details[email]) . "',\n\t\t\t\t\t\tuser_colour = '{$group_colour}'\n\t\t\t\t\t\tWHERE user_id = '{$user_id}'");
    }
    phpbb_update_groups($user_id, $additional_groups);
    // Login after registration
    global $username, $password, $persistent;
    $persistent = 0;
    phpbb_login();
}