Exemplo n.º 1
0
 /**
  * Delete this entity
  * @todo complete this
  * @return bool
  */
 function delete()
 {
     $event = new \Idno\Core\Event(array('object' => $this));
     $event->setResponse(true);
     if (\Idno\Core\site()->triggerEvent('delete', array('object' => $this))) {
         if ($entries = \Idno\Entities\ActivityStreamPost::getByObjectUUID($this->getUUID())) {
             foreach ($entries as $entry) {
                 $entry->delete();
             }
         }
         if ($return = \Idno\Core\db()->deleteRecord($this->getID())) {
             $this->deleteData();
             return $return;
         }
     }
     return false;
 }
Exemplo n.º 2
0
 /**
  * Shortcut to trigger an event: supply the event name and
  * (optionally) an array of data, and get a variable back.
  *
  * @param string $eventName The name of the event to trigger
  * @param array $data Data to pass to the event
  * @param mixed $default Default response (if not forwarding)
  * @return mixed
  */
 function triggerEvent($eventName, $data = array(), $default = true)
 {
     $event = new Event($data);
     $event->setResponse($default);
     $event = $this->events()->dispatch($eventName, $event);
     if (!$event->forward()) {
         return $event->response();
     } else {
         header('Location: ' . $event->forward());
         exit;
     }
 }