callAppMethod() public method

Call a private Horde application method.
public callAppMethod ( string $app, string $call, array $options = [] ) : mixed
$app string The application name.
$call string The method to call.
$options array Additional options: - args: (array) Additional parameters to pass to the method. - check_missing: (boolean) If true, throws an Exception if method does not exist. Otherwise, will return null. - noperms: (boolean) If true, don't check the perms.
return mixed Various.
Beispiel #1
0
 /**
  * Deletes a card
  *
  * @param mixed $addressBookId
  * @param string $cardUri
  * @return bool
  */
 public function deleteCard($addressBookId, $cardUri)
 {
     try {
         return $this->_registry->callAppMethod($this->_contacts(), 'davDeleteObject', array('args' => array($addressBookId, $cardUri)));
     } catch (Horde_Exception $e) {
         throw new DAV\Exception($e->getMessage(), $e->getCode(), $e);
     }
 }
Beispiel #2
0
 /**
  * Deletes an existing calendar object.
  *
  * @param mixed $calendarId
  * @param string $objectUri
  * @return void
  */
 public function deleteCalendarObject($calendarId, $objectUri)
 {
     try {
         return $this->_registry->callAppMethod($this->_interface($calendarId), 'davDeleteObject', array('args' => array($calendarId, $objectUri)));
     } catch (Horde_Exception $e) {
         throw new DAV\Exception($e->getMessage(), $e->getCode(), $e);
     }
 }
Beispiel #3
0
 /**
  * Finds out if the user has the specified rights to the given object,
  * specific to a certain application.
  *
  * @param string $permission  The permission to check.
  * @param array $opts         Additional options:
  * <pre>
  * 'app' - (string) The app to check.
  *         DEFAULT: The current pushed app.
  * 'opts' - (array) Additional options to pass to the app function.
  *          DEFAULT: None
  * </pre>
  *
  * @return mixed  The specified permissions.
  */
 public function hasAppPermission($permission, $opts = array())
 {
     $app = isset($opts['app']) ? $opts['app'] : $this->_registry->getApp();
     if ($this->_perms->exists($app . ':' . $permission)) {
         $perms = $this->_perms->getPermissions($app . ':' . $permission, $this->_registry->getAuth());
         if ($perms === false) {
             return false;
         }
         $args = array($permission, $perms, isset($opts['opts']) ? $opts['opts'] : array());
         try {
             return $this->_registry->callAppMethod($app, 'hasPermission', array('args' => $args));
         } catch (Horde_Exception $e) {
         }
     }
     return true;
 }