Example #1
0
}
if (!isset($rex->info['Collection']['keywords_field'])) {
    $keywords = '';
} elseif (strpos($rex->info['Collection']['keywords_field'], ',') !== false) {
    $op = '';
    foreach (preg_split('/, ?/', $rex->info['Collection']['keywords_field']) as $f) {
        $keywords .= $op . $parameters['data'][$f];
        $op = ', ';
    }
} else {
    $keywords = $parameters['data'][$rex->info['Collection']['keywords_field']];
}
$data = array('title' => $parameters['data'][$rex->title], 'url' => site_prefix() . '/index/' . sprintf($rex->info['Collection']['sitesearch_url'], $parameters['key']), 'description' => $description, 'keywords' => $keywords, 'body' => $parameters['data'][$rex->info['Collection']['body_field']], 'access' => $access, 'status' => $status, 'team' => $team, 'ctype' => $parameters['collection'], 'mtime' => (string) $mtime, 'domain' => $default_domain);
if ($parameters['collection'] == 'sitellite_filesystem') {
    loader_import('sitesearch.Extractor');
    $function = extractor_get_function('inc/data/' . $parameters['key']);
    if (!$function) {
        $data['body'] = $data['description'];
    } else {
        $new = $function('inc/data/' . $parameters['key']);
        if (!$new) {
            $data['body'] = $data['description'];
        } else {
            $data['body'] = $new;
        }
    }
}
loader_import('sitesearch.SiteSearch');
$search = new SiteSearch();
$search->addDocument($data);
Example #2
0
                $op = ', ';
            }
        } else {
            $keywords = $item->{$rex->info['Collection']['keywords_field']};
        }
        $data = array('title' => $item->{$rex->title}, 'url' => site_prefix() . '/index/' . sprintf($rex->info['Collection']['sitesearch_url'], $item->{$rex->key}), 'description' => $description, 'keywords' => $keywords, 'body' => $item->{$rex->body}, 'access' => $item->sitellite_access, 'status' => $item->sitellite_status, 'team' => $item->sitellite_team, 'ctype' => $collection, 'mtime' => (string) $mtime, 'domain' => $default_domain);
        if ($collection == 'sitellite_filesystem') {
            $new = extractor_run('inc/data/' . $item->{$rex->key});
            if (!$new) {
                $data['body'] = $data['description'];
            } else {
                $data['body'] = $new;
            }
        }
        $counts[$collection]++;
        $res = $search->addDocument($data);
        if (!$res) {
            echo 'Error adding document: ' . $search->error . NEWLINE;
            echo 'Document: ' . $data['ctype'] . '/' . $item->{$rex->key} . NEWLINE;
            echo 'Document URL: ' . $data['url'] . NEWLINE;
            return;
        }
    }
}
$folders = ini_parse('inc/app/sitesearch/conf/folders.ini.php');
if (count($folders) > 0) {
    loader_import('saf.File.Directory');
    foreach ($folders as $name => $info) {
        switch ($info['type']) {
            case 'site':
                // 1. wget the site