1: <?php
2: /**
3: * The id part of the GUID of this object.
4: *
5: * PHP version 5
6: *
7: * @category Kolab
8: * @package Kolab_Server
9: * @author Gunnar Wrobel <wrobel@pardus.de>
10: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
11: * @link http://pear.horde.org/index.php?package=Kolab_Server
12: */
13:
14: /**
15: * The id part of the GUID of this object.
16: *
17: * Copyright 2008-2012 Horde LLC (http://www.horde.org/)
18: *
19: * See the enclosed file COPYING for license information (LGPL). If you
20: * did not receive this file, see http://www.horde.org/licenses/lgpl21.
21: *
22: * @category Kolab
23: * @package Kolab_Server
24: * @author Gunnar Wrobel <wrobel@pardus.de>
25: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
26: * @link http://pear.horde.org/index.php?package=Kolab_Server
27: */
28: class Horde_Kolab_Server_Object_Attribute_Id
29: extends Horde_Kolab_Server_Object_Attribute_External
30: {
31: /**
32: * Constructor
33: *
34: * @param Horde_Kolab_Server_Object $object The object this attribute
35: * belongs to.
36: * @param Horde_Kolab_Server_Composite $composite The link to the server.
37: */
38: public function __construct(
39: Horde_Kolab_Server_Object $object,
40: Horde_Kolab_Server_Composite $composite
41: ) {
42: parent::__construct($object, $composite, 'Id');
43: }
44:
45: /**
46: * Return the value of this attribute.
47: *
48: * @return array The value(s) of this attribute.
49: */
50: public function value()
51: {
52: $guid = $this->_object->getGuid();
53: $base = $this->_composite->server->getBaseUid();
54: return substr($guid, 0, strlen($guid) - strlen($base) - 1);
55: }
56: }