public function test()
 {
     $this->initContext();
     $this->assertEquals(false, RestoUtil::UUIDv5('toto', 'toto'));
     $this->assertEquals('tototototiti', RestoUtil::superImplode('toto', array('toto', 'titi', null)));
     $this->assertEquals('http://localhost/titi/toto/tata.format?huhu=tty.json', RestoUtil::updateUrlFormat('http://localhost/titi/toto/tata?huhu=tty.json', 'format'));
     $this->assertEquals('http://localhost/tata.format?huhu=tty.json', RestoUtil::updateUrlFormat('http://localhost/tata.json?huhu=tty.json', 'format'));
     $this->assertEquals('1977-01-01T00:00:00Z', RestoUtil::toISO8601('1977'));
     $this->assertEquals('1977-02-01T00:00:00Z', RestoUtil::toISO8601('1977-02'));
     $this->assertEquals('1977-02-10T00:00:00Z', RestoUtil::toISO8601('1977-02-10'));
     $this->assertEquals('1977-02-10T12:11:30Z', RestoUtil::toISO8601('1977-02-10T12:11:30Z'));
     $this->assertEquals(array('toto', 'titi', 'tata', 'tet', ' tifi ', 'cdd'), RestoUtil::splitString('toto"titi"tata tet" tifi "cdd'));
     $this->assertEquals(false, RestoUtil::isUrl(null));
     $this->assertEquals(false, RestoUtil::isUrl('tokijhfomqzcdna'));
     $this->assertEquals(true, RestoUtil::isUrl('http://tititit.com/foiherfoh'));
     $this->assertEquals(null, RestoUtil::sanitize(null));
     $this->assertEquals(array('tototot', 'tydsnc'), RestoUtil::sanitize(array('tototot', 'tydsnc')));
     $this->assertEquals('ogfdrhefvdjsncosd', RestoUtil::sanitize('ogfdrhefvdjsncosd'));
     $this->assertEquals('', RestoUtil::kvpsToQueryString('ogfdrhefvdjsncosd'));
     $this->assertEquals('?&toto=ttiti&frfr=trtr', RestoUtil::kvpsToQueryString(array('toto' => 'ttiti', 'frfr' => 'trtr')));
     $this->assertEquals('?&toto=ttiti&frfr=trtr&arr[]=titi&arr[]=toto', RestoUtil::kvpsToQueryString(array('toto' => 'ttiti', 'frfr' => 'trtr', 'arr' => array('toto', 'titi'))));
     $this->assertEquals(array('totot_tiiti_titi' => ''), RestoUtil::queryStringToKvps('totot tiiti titi'));
 }
Esempio n. 2
0
 /**
  * Set ATOM feed links element for FeatureCollection
  * 
  * @param array $properties
  */
 private function setCollectionLinks($properties)
 {
     if (is_array($properties['links'])) {
         for ($i = 0, $l = count($properties['links']); $i < $l; $i++) {
             $this->startElement('link');
             $this->writeAttributes(array('rel' => $properties['links'][$i]['rel'], 'title' => $properties['links'][$i]['title']));
             if ($properties['links'][$i]['type'] === 'application/opensearchdescription+xml') {
                 $this->writeAttributes(array('type' => $properties['links'][$i]['type'], 'href' => $properties['links'][$i]['href']));
             } else {
                 $this->writeAttributes(array('type' => RestoUtil::$contentTypes['atom'], 'href' => RestoUtil::updateUrlFormat($properties['links'][$i]['href'], 'atom')));
             }
             $this->endElement();
             // link
         }
     }
 }
 /**
  * Get ATOM subtitle - construct from $this->description['properties']['title']
  * 
  * @return string
  */
 private function getATOMSubtitle()
 {
     $subtitle = '';
     if (isset($this->description['properties']['totalResults']) && $this->description['properties']['totalResults'] !== -1) {
         $subtitle = $this->context->dictionary->translate($this->description['properties']['totalResults'] === 1 ? '_oneResult' : '_multipleResult', $this->description['properties']['totalResults']);
     }
     $previous = isset($this->description['properties']['links']['previous']) ? '<a href="' . RestoUtil::updateUrlFormat($this->description['properties']['links']['previous'], 'atom') . '">' . $this->context->dictionary->translate('_previousPage') . '</a>&nbsp;' : '';
     $next = isset($this->description['properties']['links']['next']) ? '&nbsp;<a href="' . RestoUtil::updateUrlFormat($this->description['properties']['links']['next'], 'atom') . '">' . $this->context->dictionary->translate('_nextPage') . '</a>' : '';
     $subtitle .= isset($this->description['properties']['startIndex']) ? '&nbsp;|&nbsp;' . $previous . $this->context->dictionary->translate('_pagination', $this->description['properties']['startIndex'], $this->description['properties']['startIndex'] + 1) . $next : '';
     return $subtitle;
 }