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)); }
} 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; }
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"); } } }