require_once $SERVER_ROOT . '/classes/SpecUploadDwca.php';
$uspid = array_key_exists("uspid", $_REQUEST) ? $_REQUEST["uspid"] : 0;
$importIdent = true;
$importImage = true;
//Sanitation
if (!$uspid || !preg_match('/^[0-9,]+$/', $uspid)) {
    exit('ERROR: illegal upload profile identifier ');
}
$duManager = new SpecUploadDwca();
$duManager->setVerboseMode(2, 'batchDwcaUpload');
$duManager->setIncludeIdentificationHistory($importIdent);
$duManager->setIncludeImages($importImage);
$uspidArr = explode(',', $uspid);
foreach ($uspidArr as $uploadId) {
    //Initiate parameters
    $duManager->setUspid($uploadId);
    $duManager->readUploadParameters();
    $duManager->setSourceDatabaseType('batchDwcaUpload');
    if ($duManager->getTitle() == '') {
        exit('ERROR: unable to set upload profile data (uspid: ' . $uploadId . ')');
    }
    if ($duManager->getCollInfo('managementtype') != 'Snapshot') {
        exit('ERROR: automatic updates only allowed for Snapshot collections');
    }
    $duManager->loadFieldMap(true);
    $ulPath = $duManager->uploadFile();
    if (!$ulPath) {
        exit('ERROR uploading file: ' . $duManager->getErrorStr());
    }
    if (!$duManager->analyzeUpload()) {
        exit('ERROR analyzing upload file: ' . $duManager->getErrorStr());
示例#2
0
    $duManager->setSearchLimit($recLimit);
} elseif ($uploadType == $FILEUPLOAD) {
    $duManager = new SpecUploadFile();
    $duManager->setUploadFileName($ulPath);
} elseif ($uploadType == $SKELETAL) {
    $duManager = new SpecUploadFile();
    $duManager->setUploadFileName($ulPath);
    $matchCatNum = true;
} elseif ($uploadType == $DWCAUPLOAD) {
    $duManager = new SpecUploadDwca();
    $duManager->setBaseFolderName($ulPath);
    $duManager->setIncludeIdentificationHistory($importIdent);
    $duManager->setIncludeImages($importImage);
}
$duManager->setCollId($collid);
$duManager->setUspid($uspid);
$duManager->setUploadType($uploadType);
$duManager->setMatchCatalogNumber($matchCatNum);
$duManager->setMatchOtherCatalogNumbers($matchOtherCatNum);
if ($action == 'Automap Fields') {
    $autoMap = true;
}
$statusStr = '';
$isEditor = 0;
if ($IS_ADMIN || array_key_exists("CollAdmin", $USER_RIGHTS) && in_array($collid, $USER_RIGHTS["CollAdmin"])) {
    $isEditor = 1;
}
if ($isEditor) {
    if ($action == "Save Primary Key") {
        $statusStr = $duManager->savePrimaryKey($dbpk);
    }