1: <?php
2: /**
3: * Utility class for dealing with Kronolith_Resource objects
4: *
5: * Copyright 2009-2012 Horde LLC (http://www.horde.org/)
6: *
7: * See the enclosed file COPYING for license information (GPL). If you
8: * did not receive this file, see http://www.horde.org/licenses/gpl.
9: *
10: * @author Michael J. Rubinsky <mrubinsk@horde.org>
11: *
12: * @package Kronolith
13: */
14: class Kronolith_Resource
15: {
16: /* ResponseType constants */
17: const RESPONSETYPE_NONE = 0;
18: const RESPONSETYPE_AUTO = 1;
19: const RESPONSETYPE_ALWAYS_ACCEPT = 2;
20: const RESPONSETYPE_ALWAYS_DECLINE = 3;
21: const RESPONSETYPE_MANUAL = 4;
22:
23: /* Resource Type constants */
24: const TYPE_SINGLE = 'Single';
25: const TYPE_GROUP = 'Group';
26:
27: /**
28: * Adds a new resource to storage
29: *
30: * @param Kronolith_Resource $resource
31: *
32: * @return unknown_type
33: */
34: static public function addResource($resource)
35: {
36: // Create a new calendar id.
37: $calendar = uniqid(mt_rand());
38: $resource->set('calendar', $calendar);
39: $driver = Kronolith::getDriver('Resource');
40:
41: return $driver->save($resource);
42: }
43:
44: }
45: