PHP Class Kronolith_Resource_Base, horde

Copyright 2009-2015 Horde LLC (http://www.horde.org/) See the enclosed file COPYING for license information (GPL). If you did not receive this file, see http://www.horde.org/licenses/gpl.
Author: Michael J Rubinsky ([email protected])
Show file Open project: horde/horde Class Usage Examples

Protected Properties

Property Type Description
$_id integer Resource's internal id
$_lock boolean | integer Cache the lock of this resource. If not locked, is false.
$_params array Contains: - name: Display name of resource. - calendar: The calendar associated with this resource. - description: Resource description. - email: An email address for the resource. (Currently not used) - members: Member resources, if this is a group. - response_type: A RESPONSETYPE_* constant
$_share Horde_Share_Object

Public Methods

Method Description
__construct ( array $params = [] ) : Kronolith_Resource_Base Const'r
addEvent ( Kronolith_Event $event ) Adds $event to this resource's calendar - thus blocking the time for any other event.
get ( string $property ) : mixed Implemented to stand in as a share object.
getDriver ( ) : Kronolith_Driver_Resource_ Get a storage driver instance for the resource.
getFreeBusy ( integer $startstamp = null, integer $endstamp = null, boolean $asObject = false, boolean $json = false ) : mixed Obtain the freebusy information for this resource. Takes into account if this is a group of resources or not. (Returns the cumulative FB info for all the resources in the group.
getId ( ) : string Obtain the resource's internal identifier.
getPermission ( )
getResponse ( Kronolith_Event $event ) : integer Check availability and return an appropriate Kronolith response code.
getResponseType ( ) : integer Get ResponseType for this resource.
hasPermission ( string $user, integer $permission = Horde_Perms::READ, $restrict = null ) : boolean Return permission for the specified user for this Resource.
isFree ( Kronolith_Event $event ) : boolean Determine if event is free for specified time
lock ( ) : boolean Locks the resource.
removeEvent ( Kronolith_Event $event ) Remove this event from resource's calendar
save ( ) : Kronolith_Resource_Base Save resource to storage.
set ( string $property, mixed $value ) : void Allow setting of properties
setPermission ( $perm )
share ( )
toJson ( ) : array Return this resource's parameters in a hash.
unlock ( ) Remove a previous lock.

Method Details

__construct() public method

Const'r
public __construct ( array $params = [] ) : Kronolith_Resource_Base
$params array
return Kronolith_Resource_Base

addEvent() abstract public method

Adds $event to this resource's calendar - thus blocking the time for any other event.
abstract public addEvent ( Kronolith_Event $event )
$event Kronolith_Event The event to add to this resource's calendar, thus blocking it's availability.

get() public method

Implemented to stand in as a share object.
public get ( string $property ) : mixed
$property string The property to get
return mixed The value of $property

getDriver() public method

Get a storage driver instance for the resource.
public getDriver ( ) : Kronolith_Driver_Resource_
return Kronolith_Driver_Resource_

getFreeBusy() abstract public method

Obtain the freebusy information for this resource. Takes into account if this is a group of resources or not. (Returns the cumulative FB info for all the resources in the group.
abstract public getFreeBusy ( integer $startstamp = null, integer $endstamp = null, boolean $asObject = false, boolean $json = false ) : mixed
$startstamp integer The starting timestamp of the fb interval.
$endstamp integer The ending timestamp of the fb interval.
$asObject boolean Return the fb info as an object?
$json boolean Return the fb info as JSON?
return mixed string|Horde_Icalendar_Vfreebusy The Freebusy object or the iCalendar text.

getId() public method

Obtain the resource's internal identifier.
public getId ( ) : string
return string The id.

getPermission() public method

public getPermission ( )

getResponse() public method

Check availability and return an appropriate Kronolith response code.
public getResponse ( Kronolith_Event $event ) : integer
$event Kronolith_Event The event to check on
return integer Kronolith::RESPONSE* constant

getResponseType() abstract public method

Get ResponseType for this resource.
abstract public getResponseType ( ) : integer
return integer The response type for this resource. A Kronolith_Resource::RESPONSE_TYPE_* constant.

hasPermission() public method

Return permission for the specified user for this Resource.
public hasPermission ( string $user, integer $permission = Horde_Perms::READ, $restrict = null ) : boolean
$user string The user to check for.
$permission integer The permission to check.
$restrict
return boolean

isFree() abstract public method

Determine if event is free for specified time
abstract public isFree ( Kronolith_Event $event ) : boolean
$event Kronolith_Event The event we want to check the resource's availability for.
return boolean True if the resource is free, false if not.

lock() public method

Locks the resource.
public lock ( ) : boolean
return boolean True if lock succeeded, otherwise false.

removeEvent() abstract public method

Remove this event from resource's calendar
abstract public removeEvent ( Kronolith_Event $event )
$event Kronolith_Event The event to remove from the resource's calendar.

save() public method

Save resource to storage.
public save ( ) : Kronolith_Resource_Base
return Kronolith_Resource_Base

set() public method

Allow setting of properties
public set ( string $property, mixed $value ) : void
$property string The property to set
$value mixed The value to set to
return void

setPermission() public method

public setPermission ( $perm )

share() public method

public share ( )

toJson() public method

Return this resource's parameters in a hash.
public toJson ( ) : array
return array A hash suitable for JSON encoding.

unlock() public method

Remove a previous lock.
public unlock ( )

Property Details

$_id protected property

Resource's internal id
protected int $_id
return integer

$_lock protected property

Cache the lock of this resource. If not locked, is false.
protected bool|int $_lock
return boolean | integer

$_params protected property

Contains: - name: Display name of resource. - calendar: The calendar associated with this resource. - description: Resource description. - email: An email address for the resource. (Currently not used) - members: Member resources, if this is a group. - response_type: A RESPONSETYPE_* constant
protected array $_params
return array

$_share protected property

protected Horde_Share_Object $_share
return Horde_Share_Object