Exemplo n.º 1
0
 function getURL()
 {
     if (!$this->getSlug() && $this->getID()) {
         return \Idno\Core\site()->config()->url . 'entry/' . $this->getID() . '/' . $this->getPrettyURLTitle();
     } else {
         return parent::getURL();
     }
 }
Exemplo n.º 2
0
 function getURL()
 {
     if (!$this->getSlug() && $this->getID()) {
         return \Idno\Core\site()->config()->url . 'rsvp/' . $this->getID() . '/';
     } else {
         return parent::getURL();
     }
 }
Exemplo n.º 3
0
 function getURL()
 {
     if ($this->getID()) {
         return \Idno\Core\site()->config()->url . 'slides/' . $this->getID();
         // . '/' . $this->getPrettyURLTitle();
     } else {
         return parent::getURL();
     }
 }
Exemplo n.º 4
0
 function getURL()
 {
     // If we have a URL override, use it
     if (!empty($this->url)) {
         return $this->url;
     }
     if (!empty($this->canonical)) {
         return $this->canonical;
     }
     if (!$this->getSlug() && $this->getID()) {
         return \Idno\Core\Idno::site()->config()->url . 'event/' . $this->getID() . '/' . $this->getPrettyURLTitle();
     } else {
         return parent::getURL();
     }
 }
Exemplo n.º 5
0
 /**
  * Converts Idno entities into ActivityStreams objects
  *
  * @param \Idno\Common\Entity $entity
  * @return array
  */
 function entityToActivityStreamsObject(\Idno\Common\Entity $entity)
 {
     $object = array();
     $owner = $entity->getOwnerID();
     if (!empty($owner) && $owner != $entity->getUUID()) {
         $object['author'] = $this->entityToActivityStreamsObject($entity->getOwner());
     }
     $object['displayName'] = $entity->getTitle();
     $object['id'] = $entity->getUUID();
     $object['objectType'] = $entity->getActivityStreamsObjectType();
     $object['published'] = date('Y-m-d\\TH:i:sP', $entity->created);
     $object['updated'] = date('Y-m-d\\TH:i:sP', $entity->updated);
     $object['url'] = $entity->getURL();
     return $object;
 }
Exemplo n.º 6
0
    /**
     * When we get a webmention where the source is a feed, make
     * sure we handle it gracefully.
     */
    function testAddWebmentions_RemoteFeed()
    {
        $entity = new Entity();
        $entity->setOwner($this->user());
        $entity->title = "This post will be the webmention target";
        $entity->publish();
        $this->toDelete[] = $entity;
        $target = $entity->getURL();
        $source = 'http://example.com/';
        $sourceContent = <<<EOD
<!DOCTYPE html>
<html>
<body>
  <div class="h-entry">
    <a class="p-author h-card" href="https://example.com/">Jane Example</a>
    <span class="p-name e-content">This is just nonsense</span>
    <a class="u-url" href="http://example.com/2015/this-is-just-nonsense">permalink</a>
  </div>
  <div class="h-entry">
    <a class="u-in-reply-to" href="{$target}">in reply to</a>
    <a class="p-author h-card" href="https://example.com/">Jane Example</a>
    <span class="p-name e-content">This is a reply</span>
    <a class="u-url" href="http://example.com/2015/this-is-a-reply">permalink</a>
  </div>
  <div class="h-entry">
    <a class="p-author h-card" href="https://example.com/">Jane Example</a>
    <span class="p-name e-content">This is probably really serious</span>
    <a class="u-url" href="http://example.com/2015/this-is-probably-really-serious">permalink</a>
  </div>
</body>
</html>
EOD;
        $sourceResp = ['response' => 200, 'content' => $sourceContent];
        $sourceMf2 = (new \Mf2\Parser($sourceContent, $source))->parse();
        $entity->addWebmentions($source, $target, $sourceResp, $sourceMf2);
        $this->assertEmpty($entity->getAllAnnotations());
    }