function addDomain($domain)
{
    if (!isSiteAdmin()) {
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Permission denied')));
        return;
    }
    if (!$domain) {
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'This field is required')));
        return;
    }
    $domain = strtolower($domain);
    if (!validDomain($domain)) {
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Invalid domain')));
        return;
    }
    if (domainExists($domain)) {
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Domain already exists')));
        return;
    }
    $user = $_SESSION['user'];
    if ($domain == $user['domain']) {
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Can not delete your own domain')));
        return;
    }
    $add = array('domain' => $domain);
    beginTransaction();
    $domain_id = db_insert('virtual_domains', $add, 'domain_id');
    if (!$domain_id) {
        cancelTransaction();
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Unknown error')));
        return;
    }
    $transport = array('subdomain' => 'autoreply', 'domain_id' => $domain_id, 'destination' => 'autoreply:', 'active' => 't');
    $transport_id = db_insert('transport_maps', $transport, 'transport_id');
    if (!$transport_id) {
        cancelTransaction();
        print json_encode(array('success' => FALSE, 'errors' => array('domain' => 'Unknown error')));
        return;
    }
    endTransaction();
    print json_encode(array('success' => true));
}
Exemple #2
0
            } elseif (count($teams_data) > $max_teams_per_set) {
                generate_team_set($team_id, get_random_array($teams_data, $max_teams_per_set));
            } else {
                generate_team_set($team_id, $teams_data);
            }
        }
        $result = $GLOBALS['db']->query("SELECT team_set_id, team_id FROM team_sets_teams");
        $team_sets = array();
        while ($row = $GLOBALS['db']->fetchByAssoc($result)) {
            $team_sets[$row['team_set_id']][] = $row['team_id'];
        }
        DataTool::$team_sets_array = $team_sets;
    }
    echo "DONE\n";
}
endTransaction();
if (!empty($GLOBALS['queryFP'])) {
    fclose($GLOBALS['queryFP']);
}
echo "Total Time: " . microtime_diff($_SESSION['startTime'], microtime()) . "\n";
echo "Core Records Inserted: " . $_SESSION['processedRecords'] . "\n";
echo "Total Records Inserted: " . $_SESSION['allProcessedRecords'] . "\n";
// BEGIN Activity Stream populating
if (!empty($_SESSION['as_populate'])) {
    $activityStreamOptions = array('activities_per_module_record' => !empty($_SESSION['as_number']) ? $_SESSION['as_number'] : 10, 'insertion_buffer_size' => !empty($_SESSION['as_buffer']) ? $_SESSION['as_buffer'] : 1000, 'last_n_records' => !empty($_SESSION['as_last_rec']) ? $_SESSION['as_last_rec'] : 0);
    if (!empty($GLOBALS['beanList']['Activities'])) {
        echo "\nPopulating Activity Stream\n";
        $timer = microtime(1);
        require_once 'Tidbit/Generator/ActivityGenerator.php';
        $tga = new TidbitActivityGenerator();
        $tga->userCount = $GLOBALS['modules']['Users'];
function modifyUser($userId, $description, $local, $active)
{
    if (!$active) {
        $active = 'f';
    } else {
        $active = 't';
    }
    if (!$userId) {
        return FALSE;
    } else {
        if (!isSiteAdmin() && isSiteAdmin($userId)) {
            return FALSE;
        }
    }
    $userObj = loadUser($userId);
    if (!$userObj) {
        return FALSE;
    }
    $adminDomains = getAdminDomains();
    $domain = $userObj['domain'];
    if (!in_array($domain, $adminDomains)) {
        return FALSE;
    }
    $oldActive = userIsActive($userId);
    $updates = array('description' => $description, 'active' => $active);
    $conditions = array('user_id' => $userId);
    $activeChanged = FALSE;
    if ($oldActive && $active == 'f') {
        $activeChanged = TRUE;
    } else {
        if (!$oldActive && $active == 't') {
            $activeChanged = TRUE;
        }
    }
    $aliasUpdates = array('active' => $active);
    $username = $userObj['user'];
    $aliasConditions = array('username' => $username, 'domain_id' => $userObj['domain_id']);
    $email = $username . '@' . $domain;
    beginTransaction();
    db_update('virtual_users', $updates, $conditions);
    if ($activeChanged) {
        db_update('virtual_aliases', $aliasUpdates, $aliasConditions);
    }
    setUserLocal($local, $email);
    endTransaction();
}
    if ($dumpmode) {
        $body = file_get_contents($pagefile);
    }
    $pagename = $DBInfo->keyToPagename($file);
    $idx++;
    $tmp = "('" . _escape_string($type, $pagename) . "',";
    if ($dumpmode) {
        $tmp .= "'" . _escape_string($type, $body) . "',";
    }
    $tmp .= $mtime . ")";
    $buffer[] = $tmp;
    if ($idx > 50) {
        dump('INSERT INTO ' . $tablename . ' (' . $vals . ') VALUES ' . implode(",\n", $buffer) . ";\n");
        $idx = 0;
        $buffer = array();
    }
    if ($j % 10000 == 0) {
        endTransaction($type);
        beginTransaction($type);
    }
}
if (sizeof($buffer) > 0) {
    dump('INSERT INTO ' . $tablename . ' (' . $vals . ') VALUES ' . implode(",\n", $buffer) . ";\n");
}
endTransaction($type);
fclose($fp);
closedir($handle);
echo "\t", 'titleindex_init.sql generated', "\n";
$params['timer']->Check('done');
echo $params['timer']->Write();
// vim:et:sts=4:sw=4:
function removeForward($aliasId)
{
    if (!$aliasId) {
        return FALSE;
    }
    $email = getAliasEmail($aliasId);
    if (!$email) {
        return FALSE;
    }
    if ($email != $_SESSION['user']['email']) {
        $adminDomains = getAdminDomains();
        $emailParts = split('@', $email);
        $domain = $emailParts[1];
        if (!in_array($domain, $adminDomains)) {
            return FALSE;
        }
    }
    $conditions = array('alias_id' => $aliasId);
    beginTransaction();
    $ret = db_delete('virtual_aliases', $conditions);
    setUserLocalIfNecessary($email);
    endTransaction();
    return $ret;
}
Exemple #6
0
function empty_single_db($db_name)
{
    $db = mysql_select_db($db_name);
    if (!$db) {
        echo PMBP_addOutput(sprintf(PMBP_EX_NO_AVAILABLE, $db_name), "red");
    } else {
        $res = mysql_list_tables($db_name);
        $tables_and_views = PMBP_list_tables_and_view();
        startTransaction();
        foreach ($tables_and_views['views'] as $view) {
            mysql_query("drop view `" . $view['Name'] . "`");
            echo mysql_error();
        }
        foreach ($tables_and_views['tables'] as $table) {
            mysql_query("drop table `" . $table['Name'] . "`");
            echo mysql_error();
        }
        endTransaction();
        $error = mysql_error();
        if ($error) {
            echo $error;
        } else {
            echo PMBP_addOutput(B_EMPTIED, "green");
        }
    }
}