Exemplo n.º 1
0
function _xSync()
{
    $settings = unserialize(base64_decode($_REQUEST['sync']));
    // Sync blacklist
    if (isset($settings[NETWORK_SYNC_BLACKLIST]) && is_array($settings[NETWORK_SYNC_BLACKLIST])) {
        foreach ($settings[NETWORK_SYNC_BLACKLIST] as $bl_file => $file_contents) {
            file_write(DIR_BLACKLIST . '/' . $bl_file, $file_contents);
        }
    }
    // Sync categories
    if (isset($settings[NETWORK_SYNC_CATEGORIES])) {
        file_write(FILE_CATEGORIES, $settings[NETWORK_SYNC_CATEGORIES]);
    }
    // Sync countries
    if (isset($settings[NETWORK_SYNC_COUNTRIES])) {
        file_write(FILE_COUNTRIES, $settings[NETWORK_SYNC_COUNTRIES]);
    }
    // Sync groups
    if (isset($settings[NETWORK_SYNC_GROUPS])) {
        file_write(FILE_GROUPS, $settings[NETWORK_SYNC_GROUPS]);
    }
    // Sync network sites
    if (isset($settings[NETWORK_SYNC_NETWORK_SITES]) && is_array($settings[NETWORK_SYNC_NETWORK_SITES])) {
        require_once 'textdb.php';
        $db = new NetworkDB();
        foreach ($settings[NETWORK_SYNC_NETWORK_SITES] as $site) {
            if ($db->Exists($site['domain'])) {
                $db->Update($site['domain'], $site);
            } else {
                $db->Add($site);
            }
        }
        network_site_update_stored_values();
    }
    // Sync search engines
    if (isset($settings[NETWORK_SYNC_SEARCH_ENGINES])) {
        file_write(FILE_SEARCH_ENGINES, $settings[NETWORK_SYNC_SEARCH_ENGINES]);
    }
    // Sync skim schemes
    if (isset($settings[NETWORK_SYNC_SKIM_SCHEMES]) && is_array($settings[NETWORK_SYNC_SKIM_SCHEMES])) {
        foreach ($settings[NETWORK_SYNC_SKIM_SCHEMES] as $scheme => $ss_file) {
            file_write(DIR_SKIM_SCHEMES . '/' . $scheme, $ss_file['merged']);
            file_write(DIR_SKIM_SCHEMES_BASE . '/' . $scheme, $ss_file['base']);
            file_write(DIR_SKIM_SCHEMES_DYNAMIC . '/' . $scheme, $ss_file['dynamic']);
        }
    }
    // Sync trades
    if (isset($settings[NETWORK_SYNC_TRADES]) && is_array($settings[NETWORK_SYNC_TRADES])) {
        require_once 'dirdb.php';
        $db = new TradeDB();
        foreach ($settings[NETWORK_SYNC_TRADES] as $trade) {
            if ($db->Exists($trade['domain'])) {
                // Update existing
                $db->Update($trade['domain'], $trade);
            } else {
                // Create new, no confirmation
                $trade['flag_confirm'] = 0;
                trade_add($trade);
            }
        }
    }
    // Sync trade rules
    if (isset($settings[NETWORK_SYNC_TRADE_RULES])) {
        file_write(FILE_TRADE_RULES, $settings[NETWORK_SYNC_TRADE_RULES]);
    }
    network_success(true);
}
Exemplo n.º 2
0
function _xNetworkSitesBulkEdit()
{
    $v = Validator::Get();
    if ($_REQUEST['flag_update']['username']) {
        $v->Register($_REQUEST['username'], VT_NOT_EMPTY, 'The Username field is required');
    }
    if ($_REQUEST['flag_update']['password']) {
        $v->Register($_REQUEST['password'], VT_NOT_EMPTY, 'The Password field is required');
    }
    if (!$v->Validate()) {
        return JSON::Warning(array(JSON_KEY_MESSAGE => 'Network sites could not be updated; please fix the following items', JSON_KEY_WARNINGS => $v->GetErrors()));
    }
    if ($_REQUEST['flag_update']['category'] && string_is_empty($_REQUEST['category'])) {
        $_REQUEST['category'] = '-- NONE --';
    }
    if ($_REQUEST['flag_update']['owner'] && string_is_empty($_REQUEST['owner'])) {
        $_REQUEST['owner'] = '-- NONE --';
    }
    foreach ($_REQUEST['flag_update'] as $field => $update) {
        if (!$update) {
            unset($_REQUEST[$field]);
        }
    }
    require_once 'textdb.php';
    $db = new NetworkDB();
    foreach (explode(',', $_REQUEST['domain']) as $domain) {
        if (string_is_empty($domain)) {
            continue;
        }
        $db->Update($domain, $_REQUEST);
    }
    network_site_update_stored_values();
    JSON::Success(array(JSON_KEY_MESSAGE => 'The selected network sites have been updated', JSON_KEY_DIALOG => _xIncludeCapture('network-sites-bulk-edit.php', $_REQUEST)));
}