1: <?php
2: /**
3: * This interface represents a user from the user database.
4: *
5: * PHP version 5
6: *
7: * @category Kolab
8: * @package Kolab_FreeBusy
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_FreeBusy
12: */
13:
14: /**
15: * This interface represents a user from the user database.
16: *
17: * Copyright 2010 Kolab Systems AG
18: *
19: * See the enclosed file COPYING for license information (LGPL). If you did not
20: * receive this file, see
21: * http://www.horde.org/licenses/lgpl21.
22: *
23: * @category Kolab
24: * @package Kolab_FreeBusy
25: * @author Gunnar Wrobel <wrobel@pardus.de>
26: * @license http://www.horde.org/licenses/lgpl21 LGPL 2.1
27: * @link http://pear.horde.org/index.php?package=Kolab_FreeBusy
28: */
29: interface Horde_Kolab_FreeBusy_UserDb_User
30: {
31: /**
32: * Return the primary id of the user accessing the system.
33: *
34: * @return string The primary id.
35: */
36: public function getPrimaryId();
37:
38: /**
39: * Return the mail address of the resource owner.
40: *
41: * @return string The mail address.
42: */
43: public function getMail();
44:
45: /**
46: * Return the primary domain of the user accessing the system.
47: *
48: * @return string The primary domain.
49: */
50: public function getDomain();
51:
52: /**
53: * Return the name of the resource owner.
54: *
55: * @return string The name of the owner.
56: */
57: public function getName();
58:
59: /**
60: * Return how many days into the past the free/busy data should be
61: * calculated for this owner.
62: *
63: * @return int The number of days.
64: */
65: public function getFreeBusyPast();
66:
67: /**
68: * Return how many days into the future the free/busy data should be
69: * calculated for this owner.
70: *
71: * @return int The number of days.
72: */
73: public function getFreeBusyFuture();
74: }
75: