/**
  * Responds to the Identify verb.
  *
  * Appends the Identify element for the repository to the response.
  */
 public function identify()
 {
     if ($this->error) {
         return;
     }
     /* according to the schema, this order of elements is required for the
        response to validate */
     $elements = array('repositoryName' => get_option('oaipmh_repository_name'), 'baseURL' => OAI_PMH_BASE_URL, 'protocolVersion' => self::OAI_PMH_PROTOCOL_VERSION, 'adminEmail' => get_option('administrator_email'), 'earliestDatestamp' => OaiPmhRepository_Date::unixToUtc(0), 'deletedRecord' => 'no', 'granularity' => self::OAI_GRANULARITY_STRING);
     $identify = $this->createElementWithChildren($this->document->documentElement, 'Identify', $elements);
     // Publish support for compression, if appropriate
     // This defers to compression set in Omeka's paths.php
     if (extension_loaded('zlib') && ini_get('zlib.output_compression')) {
         $gzip = $this->document->createElement('compression', 'gzip');
         $deflate = $this->document->createElement('compression', 'deflate');
         $identify->appendChild($gzip);
         $identify->appendChild($deflate);
     }
     $description = $this->document->createElement('description');
     $identify->appendChild($description);
     OaiPmhRepository_OaiIdentifier::describeIdentifier($description);
     $toolkitDescription = $this->document->createElement('description');
     $identify->appendChild($toolkitDescription);
     $this->describeToolkit($toolkitDescription);
 }
Exemplo n.º 2
0
 /**
  * Helper to get the earlieast datestamp of the repository.
  *
  * @return string OAI-PMH date stamp.
  */
 private function _getEarliestDatestamp()
 {
     $earliestItem = get_record('Item', array('public' => 1, 'sort_field' => 'added', 'sort_dir' => 'a'));
     return $earliestItem ? OaiPmhRepository_Date::dbToUtc($earliestItem->added) : OaiPmhRepository_Date::unixToUtc(0);
 }