예제 #1
0
        break;
}
$search_error = $login_error = '';
if ($usr_id) {
    /* deal with custom tags */
    if (!empty($_POST['c_tag'])) {
        q('INSERT INTO ' . $DBHOST_TBL_PREFIX . 'custom_tags (name, user_id) VALUES(' . strnull(addslashes($_POST['c_tag'])) . ', ' . $usr_id . ')');
    } else {
        if (!empty($_GET['deltag'])) {
            q('DELETE FROM ' . $DBHOST_TBL_PREFIX . 'custom_tags WHERE id=' . (int) $_GET['deltag']);
        } else {
            $nada = 1;
        }
    }
    if (!isset($nada) && db_affected()) {
        ctag_rebuild_cache($usr_id);
    }
} else {
    if (!empty($_POST['usr_email']) || !empty($_POST['usr_login'])) {
        /* user searching logic */
        $item = !empty($_POST['usr_email']) ? $_POST['usr_email'] : $_POST['usr_login'];
        $field = !empty($_POST['usr_email']) ? 'email' : ($FUD_OPT_2 & 128 ? 'alias' : 'login');
        if (strpos($item, '*') !== false) {
            $like = 1;
            $item = str_replace('*', '%', $item);
            $item_s = str_replace('\\', '\\\\', $item);
            if ($FUD_OPT_2 & 128) {
                $item_s = htmlspecialchars($item_s);
            }
        } else {
            $like = 0;
예제 #2
0
draw_stat('Rebuilding ip filter cache');
ip_cache_rebuild();
draw_stat('Done: Rebuilding ip filter cache');
draw_stat('Rebuilding login filter cache');
login_cache_rebuild();
draw_stat('Done: Rebuilding login filter cache');
draw_stat('Rebuilding email filter cache');
email_cache_rebuild();
draw_stat('Done: Rebuilding email filter cache');
draw_stat('Rebuilding extension filter cache');
ext_cache_rebuild();
draw_stat('Done: Rebuilding extension filter cache');
draw_stat('Rebuilding custom tags for users');
$c = q('SELECT distinct(user_id) FROM ' . $tbl . 'custom_tags');
while ($r = db_rowarr($c)) {
    ctag_rebuild_cache($r[0]);
}
unset($c);
draw_stat('Done Rebuilding custom tags for users');
draw_stat('Validating group resources');
delete_zero($tbl . 'group_resources', 'SELECT gr.id FROM ' . $tbl . 'group_resources gr LEFT JOIN ' . $tbl . 'forum f ON f.id=gr.resource_id LEFT JOIN ' . $tbl . 'groups g ON g.id=gr.group_id WHERE f.id IS NULL OR g.id IS NULL');
draw_stat('Done: Validating group resources');
draw_stat('Validating group validity');
# technically a group cannot exist without being assigned to at least 1 resource
# so when we encounter such as group, we do our patriotic duty and remove it.
delete_zero($tbl . 'groups', 'SELECT g.id FROM ' . $tbl . 'groups g LEFT JOIN ' . $tbl . 'group_resources gr ON g.id=gr.group_id WHERE g.id > 2 AND gr.id IS NULL');
delete_zero($tbl . 'groups', 'SELECT g.id FROM ' . $tbl . 'groups g LEFT JOIN ' . $tbl . 'forum f ON g.forum_id=f.id WHERE g.forum_id > 0 AND g.id > 2 AND f.id IS NULL');
draw_stat('Done: Validating group validity');
draw_stat('Validating group members');
delete_zero($tbl . 'group_members', 'SELECT gm.id FROM ' . $tbl . 'group_members gm LEFT JOIN ' . $tbl . 'users u ON u.id=gm.user_id LEFT JOIN ' . $tbl . 'groups g ON g.id=gm.group_id WHERE (u.id IS NULL AND gm.user_id NOT IN(0, 2147483647)) OR g.id IS NULL');
draw_stat('Done: Validating group members');