private function get_uris($params) { $fields = array(); if (in_array($params["dataset"], array("NMNH", "NHM"))) { $fields["institutionCode"] = "institutionCode_uri"; $fields["sex"] = "sex_uri"; $fields["typeStatus"] = "typeStatus_uri"; $fields["lifeStage"] = "lifeStage_uri"; $fields["collectionCode"] = "collectionCode_uri"; } require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); $spreadsheet_options = array("cache" => 1, "timeout" => 3600, "file_extension" => "xlsx", 'download_attempts' => 2, 'delay_in_minutes' => 2); $spreadsheet_options["expire_seconds"] = 0; // false => won't expire; 0 => expires now $uris = array(); if ($spreadsheet = @$params["uri_file"]) { if ($arr = $func->convert_spreadsheet($spreadsheet, 0, $spreadsheet_options)) { foreach ($fields as $key => $value) { $i = 0; foreach ($arr[$key] as $item) { $item = trim($item); if ($item) { $uris[$item] = $arr[$value][$i]; } $i++; } } } } return $uris; }
function export_lifedesk_to_eol($params) { require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); if ($this->text_path = $func->load_zip_contents($params["lifedesk"])) { self::update_eol_xml("LD_" . $params["name"]); } // remove temp dir $parts = pathinfo($this->text_path["eol_xml"]); recursive_rmdir($parts["dirname"]); debug("\n temporary directory removed: " . $parts["dirname"]); }
private function get_institution_uris() { require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); $arr = $func->convert_spreadsheet($this->institutions_xls, 0); $institutions = array(); $k = 0; foreach ($arr["Code"] as $code) { $institutions[$code] = $arr["URI"][$k]; $k++; } echo "\nInstitutions from spreadsheet [{$this->institutions_xls}]:" . count($institutions) . "\n"; return $institutions; }
private function get_uris() { require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); $spreadsheet_options = array("cache" => 1, "timeout" => 3600, "file_extension" => "xlsx", 'download_attempts' => 2, 'delay_in_minutes' => 2); // $spreadsheet_options["expire_seconds"] = 0; // false => won't expire; 0 => expires now $temp = $func->convert_spreadsheet($this->triple_uris_spreadsheet, 0, $spreadsheet_options); /* spreadsheet headers: Wikipedia triple - Measurement Type - Measurement Value1 - Measurement Value2 */ $uris = array(); $i = -1; foreach ($temp["Wikipedia triple"] as $triple) { $i++; if ($temp["Measurement Type"][$i] == "EXCLUDE") { continue; } $uris[$triple]["mtype"] = $temp["Measurement Type"][$i]; $uris[$triple]["v1"] = @$temp["Measurement Value1"][$i]; $uris[$triple]["v2"] = @$temp["Measurement Value2"][$i]; } return $uris; }
public function get_array_from_spreadsheet($options) { $records = array(); require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); if ($spreadsheet = @$options["spreadsheet_file"]) { if ($arr = $func->convert_spreadsheet($spreadsheet, 0, $options)) { $fields = array_keys($arr); $fields[] = "record_id"; $i = 0; foreach ($arr[$fields[0]] as $val) { $rec = array(); foreach ($fields as $field) { if ($field == "record_id") { $rec[$field] = $i + 1; } else { $rec[$field] = $arr[$field][$i]; } } if ($rec) { $records[] = $rec; } $i++; } } } return $records; }
private function access_spreadsheet($params, $sheet_no) { require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); if ($val = @$params["spreadsheet_options"]) { $spreadsheet_options = $val; } else { $spreadsheet_options = $this->spreadsheet_options; } if ($arr = $func->convert_spreadsheet($params['spreadsheet'], $sheet_no, $spreadsheet_options)) { return $arr; } }
$params[$desk]["remote"]["name"] = $desk; //Dropbox $params[$desk]["dropbox"]["lifedesk"] = ""; $params[$desk]["dropbox"]["bibtex_file"] = ""; $params[$desk]["dropbox"]["scratchpad_images"] = ""; $params[$desk]["dropbox"]["name"] = $desk; //local $params[$desk]["local"]["lifedesk"] = "http://localhost/cp/LD2Scratchpad/" . $desk . "/eol-partnership.xml.gz"; $params[$desk]["local"]["bibtex_file"] = ""; $params[$desk]["local"]["scratchpad_images"] = "http://localhost/cp/LD2Scratchpad/" . $desk . "/file_importer_image_xls.xls"; $params[$desk]["local"]["name"] = $desk; $params[$desk]["local"]["scratchpad_biblio"] = "http://localhost/cp/LD2Scratchpad/" . $desk . "/node_importer_biblio_xls.xls"; if ($desk == "africanamphibians") { $params[$desk]["local"]["scratchpad_taxonomy"] = "http://localhost/cp/LD2Scratchpad/" . $desk . "/taxonomy_importer_xls.xls"; } $func = new LifeDeskToScratchpadAPI(); $func->export_lifedesk_to_scratchpad($params[$desk]["local"]); } // */ /* start: Generate taxonomy of a LifeDesk // neotropicalfishes local $lifedesk = 'neotropicalfishes'; $lifedesk = 'echinoderms'; $params = array(); $params[$lifedesk]["local"]["lifedesk"] = "http://localhost/cp/LD2Scratchpad/" . $lifedesk . "/eol-partnership.xml.gz"; $params[$lifedesk]["local"]["name"] = $lifedesk; $parameters = $params[$lifedesk]["local"]; $func = new LifeDeskToScratchpadAPI(); $func->export_lifedesk_taxonomy($parameters); */
private function get_spreadsheet($spreadsheet) { require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); $final = array(); $habitats = array(); $spreadsheet_options = array("cache" => 0, "timeout" => 3600, "file_extension" => "xlsx", 'download_attempts' => 2, 'delay_in_minutes' => 1); //we don't want to cache spreadsheet if ($filename = Functions::save_remote_file_to_local($spreadsheet, $spreadsheet_options)) { if ($arr = $func->convert_spreadsheet($filename, 0, $spreadsheet_options)) { $i = 0; foreach ($arr['subsection'] as $subsection) { if ($subsection) { $final[$subsection]['section'] = $arr['section'][$i]; $final[$subsection]['habitats'][] = $arr['source text'][$i]; } $habitats[$arr['source text'][$i]] = $arr['term'][$i]; $i++; } } unlink($filename); } $final = array_filter($final); //remove null arrays $habitats = array_filter($habitats); //remove null arrays return array('subsections' => $final, 'habitats' => $habitats); }
function get_uris($params, $spreadsheet) { $fields = array(); if ($params["dataset"] == "GBIF") { $fields["sex"] = "sex_uri"; $fields["typeStatus"] = "typeStatus_uri"; if (@$params["country"] == "Sweden") { $fields["datasetKey"] = "Type Specimen Repository URI"; } else { $fields["institutionCode"] = "institutionCode_uri"; } //rule case if (@$params["uri_type"] == "citation") { $fields["datasetKey France"] = "BibliographicCitation"; //886 $fields["datasetKey UK"] = "BibliographicCitation"; //894 $fields["datasetKey Germany"] = "BibliographicCitation"; //872 $fields["datasetKey Brazil"] = "BibliographicCitation"; //892 $fields["datasetKey"] = "BibliographicCitation"; //from Netherlands (887), Sweden (893) spreadsheet } } else { $fields = $params["fields"]; } require_library('connectors/LifeDeskToScratchpadAPI'); $func = new LifeDeskToScratchpadAPI(); if ($val = @$params["spreadsheet_options"]) { $spreadsheet_options = $val; } else { $spreadsheet_options = $this->spreadsheet_options; } $uris = array(); if ($spreadsheet) { if ($arr = $func->convert_spreadsheet($spreadsheet, 0, $spreadsheet_options)) { foreach ($fields as $key => $value) { $i = 0; if (@$arr[$key]) { foreach ($arr[$key] as $item) { $item = trim($item); if ($item) { $temp = $arr[$value][$i]; $temp = trim(str_replace(array("\n"), "", $temp)); $uris[$item] = $temp; if (!Functions::is_utf8($temp)) { echo "\nnot utf8: [{$temp}]\n"; } } $i++; } } } } } return $uris; }