Overview

Packages

  • Perms

Classes

  • Horde_Perms
  • Horde_Perms_Base
  • Horde_Perms_Datatree
  • Horde_Perms_Exception
  • Horde_Perms_Null
  • Horde_Perms_Permission
  • Horde_Perms_Permission_Datatree
  • Horde_Perms_Permission_Kolab
  • Horde_Perms_Permission_Kolab_Acl
  • Horde_Perms_Permission_Kolab_Acl_Anonymous
  • Horde_Perms_Permission_Kolab_Acl_Anyone
  • Horde_Perms_Permission_Kolab_Acl_Creator
  • Horde_Perms_Permission_Kolab_Acl_Group
  • Horde_Perms_Permission_Kolab_Acl_User
  • Horde_Perms_Permission_Kolab_AclIterator
  • Horde_Perms_Permission_Kolab_Element
  • Horde_Perms_Permission_Kolab_Element_Creator
  • Horde_Perms_Permission_Kolab_Element_Default
  • Horde_Perms_Permission_Kolab_Element_Group
  • Horde_Perms_Permission_Kolab_Element_Guest
  • Horde_Perms_Permission_Kolab_Element_User
  • Horde_Perms_Permission_Kolab_ElementIterator
  • Horde_Perms_Permission_Sql
  • Horde_Perms_Sql
  • Horde_Perms_Translation

Interfaces

  • Horde_Perms_Permission_Kolab_Storage
  • Overview
  • Package
  • Class
  • Tree
 1: <?php
 2: /**
 3:  * Maps a single Horde group permission element to a Kolab_Storage ACL.
 4:  *
 5:  * PHP version 5
 6:  *
 7:  * @category Horde
 8:  * @package  Perms
 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=Perms
12:  */
13: 
14: /**
15:  * Maps a single Horde group permission element to a Kolab_Storage ACL.
16:  *
17:  * Copyright 2006-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 Horde
23:  * @package  Perms
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=Perms
27:  */
28: class Horde_Perms_Permission_Kolab_Element_Group
29: extends Horde_Perms_Permission_Kolab_Element
30: {
31:     /**
32:      * The Horde group id.
33:      *
34:      * @var string
35:      */
36:     private $_horde_id;
37: 
38:     /**
39:      * The Kolab group id.
40:      *
41:      * @var string
42:      */
43:     private $_kolab_id;
44: 
45:     /**
46:      * Constructor.
47:      *
48:      * @param integer $permission       The folder permission as provided by
49:      *                                  Horde.
50:      * @param string $id                The group id.
51:      * @param Horde_Group_Base $groups  The horde group handler.
52:      */
53:     public function __construct($permission, $id, Horde_Group_Base $groups)
54:     {
55:         $this->_horde_id = $id;
56:         $this->_kolab_id = 'group:' . $groups->getName($id);
57:         parent::__construct($permission);
58:     }
59: 
60:     /**
61:      * Get the Kolab_Storage ACL id for this permission.
62:      *
63:      * @return string The ACL string.
64:      */
65:     public function getId()
66:     {
67:         return $this->_kolab_id;
68:     }
69: 
70:     /**
71:      * Unset the element in the provided permission array.
72:      *
73:      * @param array &$current The current permission array.
74:      *
75:      * @return NULL
76:      */
77:     public function unsetInCurrent(&$current)
78:     {
79:         unset($current['groups'][$this->_horde_id]);
80:     }
81: }
82: 
API documentation generated by ApiGen