| @@ -8,9 +8,9 @@ | ||
| 8 | 8 | * |
| 9 | 9 | * @category UserAccessManager |
| 10 | 10 | * @package UserAccessManager |
| 11 | 11 | * @author Alexander Schneider <alexanderschneider85@googlemail.com> |
| 12 | -* @copyright 2008-2010 Alexander Schneider | |
| 12 | +* @copyright 2008-2013 Alexander Schneider | |
| 13 | 13 | * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License, version 2 |
| 14 | 14 | * @version SVN: $Id$ |
| 15 | 15 | * @link http://wordpress.org/extend/plugins/user-access-manager/ |
| 16 | 16 | */ |
| @@ -18,148 +18,93 @@ | ||
| 18 | 18 | if (!function_exists('walkPath')) { |
| 19 | 19 | /** |
| 20 | 20 | * Retruns the html code for the recursive access. |
| 21 | 21 | * |
| 22 | - * @param mixed $object The object. | |
| 23 | - * @param string $type The type of the object. | |
| 22 | + * @param mixed $oObject The object. | |
| 23 | + * @param string $sObjectType The type of the object. | |
| 24 | 24 | * |
| 25 | 25 | * @return string |
| 26 | 26 | */ |
| 27 | - function walkPath($object, $type) | |
| 27 | + function walkPath($oObject, $sObjectType) | |
| 28 | 28 | { |
| 29 | - $out = ''; | |
| 29 | + $sOut = $oObject->name; | |
| 30 | 30 | |
| 31 | - if (is_object($object)) { | |
| 32 | - if ($type == 'post') { | |
| 33 | - $post = get_post($object->ID); | |
| 34 | - $out = $post->post_title; | |
| 35 | - } elseif ($type == 'category') { | |
| 36 | - $category = get_category($object->cat_id); | |
| 37 | - $out = $category->name; | |
| 38 | - } | |
| 31 | + if (isset($oObject->recursiveMember[$sObjectType])) { | |
| 32 | + $sOut .= '<ul>'; | |
| 39 | 33 | |
| 40 | - | |
| 41 | - if (isset($object->recursiveMember['byPost'])) { | |
| 42 | - $out .= '<ul>'; | |
| 43 | - foreach ($object->recursiveMember['byPost'] as $post) { | |
| 44 | - $out .= '<li>'; | |
| 45 | - $out .= walkPath($post, 'post'); | |
| 46 | - $out .= '</li>'; | |
| 47 | - } | |
| 48 | - $out .= '</ul>'; | |
| 34 | + foreach ($oObject->recursiveMember[$sObjectType] as $oRecursiveObject) { | |
| 35 | + $sOut .= '<li>'; | |
| 36 | + $sOut .= walkPath($oRecursiveObject, $sObjectType); | |
| 37 | + $sOut .= '</li>'; | |
| 49 | 38 | } |
| 50 | 39 | |
| 51 | - if (isset($object->recursiveMember['byCategory'])) { | |
| 52 | - $out .= '<ul>'; | |
| 53 | - foreach ($object->recursiveMember['byCategory'] as $category) { | |
| 54 | - $out .= '<li>'; | |
| 55 | - $out .= walkPath($category, 'category'); | |
| 56 | - $out .= '</li>'; | |
| 57 | - } | |
| 58 | - $out .= '</ul>'; | |
| 59 | - } | |
| 60 | - } else { | |
| 61 | - if ($type == 'post') { | |
| 62 | - $post = get_post($object); | |
| 63 | - $out = $post->post_title; | |
| 64 | - } elseif ($type == 'category') { | |
| 65 | - $category = get_category($object); | |
| 66 | - $out = $category->name; | |
| 67 | - } | |
| 40 | + $sOut .= '</ul>'; | |
| 68 | 41 | } |
| 69 | 42 | |
| 70 | - return $out; | |
| 43 | + return $sOut; | |
| 71 | 44 | } |
| 72 | 45 | } |
| 73 | 46 | ?> |
| 74 | 47 | <div class="tooltip"> |
| 75 | 48 | <ul class="uam_group_info"> |
| 76 | -<?php | |
| 77 | -if (isset($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byCategory'])) { | |
| 78 | - ?> | |
| 79 | - <li class="uam_group_info_head"> | |
| 80 | - <?php echo TXT_GROUP_MEMBERSHIP_BY_CATEGORIES; ?>: | |
| 81 | - <ul> | |
| 82 | - <?php | |
| 83 | - foreach ($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byCategory'] as $category) { | |
| 84 | - ?> | |
| 85 | - <li class="recusiveTree"><?php echo walkPath($category, 'category'); ?></li> | |
| 86 | - <?php | |
| 87 | - } | |
| 88 | - ?> | |
| 89 | - </ul> | |
| 90 | - </li> | |
| 91 | - <?php | |
| 92 | -} | |
| 93 | -?> | |
| 94 | -<?php | |
| 95 | -if (isset($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byPost'])) { | |
| 96 | - ?> | |
| 97 | - <li class="uam_group_info_head"> | |
| 98 | - <?php echo TXT_GROUP_MEMBERSHIP_BY_POSTS; ?>: | |
| 99 | - <ul> | |
| 100 | - <?php | |
| 101 | - foreach ($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byPost'] as $post) { | |
| 102 | - ?> | |
| 103 | - <li class="recusiveTree"><?php echo walkPath($post, 'post'); ?></li> | |
| 104 | - <?php | |
| 105 | - } | |
| 106 | - ?> | |
| 107 | - </ul> | |
| 108 | - </li> | |
| 109 | - <?php | |
| 110 | -} | |
| 111 | -?> | |
| 112 | -<?php | |
| 113 | -if (isset($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byRole'])) { | |
| 114 | - ?> | |
| 115 | - <li class="uam_group_info_head"> | |
| 116 | - <?php echo TXT_GROUP_MEMBERSHIP_BY_ROLE; ?>: | |
| 117 | - <ul> | |
| 118 | - <?php | |
| 119 | - foreach ($userGroupsForObject[$uamUserGroup->getId()]->setRecursive[$objectId]['byRole'] as $role) { | |
| 120 | - ?> | |
| 121 | - <li><?php echo $role; ?></li> | |
| 122 | - <?php | |
| 49 | +<?php | |
| 50 | +global $oUserAccessManager; | |
| 51 | + | |
| 52 | +foreach ($oUserAccessManager->getAccessHandler()->getAllObjectTypes() as $sCurObjectType) { | |
| 53 | + if (isset($aUserGroups[$oUamUserGroup->getId()])) { | |
| 54 | + $aRecursiveMembership = $aUserGroups[$oUamUserGroup->getId()]->getRecursiveMembershipForObjectType($sObjectType, $iObjectId, $sCurObjectType); | |
| 55 | + | |
| 56 | + if (count($aRecursiveMembership) > 0) { | |
| 57 | + ?> | |
| 58 | + <li class="uam_group_info_head"> | |
| 59 | + <?php echo constant('TXT_UAM_GROUP_MEMBERSHIP_BY_'.strtoupper($sCurObjectType)); ?>: | |
| 60 | + <ul> | |
| 61 | + <?php | |
| 62 | + foreach ($aRecursiveMembership as $oObject) { | |
| 63 | + ?> | |
| 64 | + <li class="recusiveTree"><?php echo walkPath($oObject, $sCurObjectType); ?></li> | |
| 65 | + <?php | |
| 66 | + } | |
| 67 | + ?> | |
| 68 | + </ul> | |
| 69 | + </li> | |
| 70 | + <?php | |
| 71 | + } | |
| 123 | 72 | } |
| 124 | - ?> | |
| 125 | - </ul> | |
| 126 | - </li> | |
| 127 | - <?php | |
| 128 | 73 | } |
| 129 | 74 | ?> |
| 130 | - <li class="uam_group_info_head"><?php echo TXT_GROUP_INFO; ?>: | |
| 75 | + <li class="uam_group_info_head"><?php echo TXT_UAM_GROUP_INFO; ?>: | |
| 131 | 76 | <ul> |
| 132 | - <li><?php echo TXT_READ_ACCESS; ?>: | |
| 77 | + <li><?php echo TXT_UAM_READ_ACCESS; ?>: | |
| 133 | 78 | <?php |
| 134 | -if ($uamUserGroup->getReadAccess() == "all") { | |
| 135 | - echo TXT_ALL; | |
| 136 | -} elseif ($uamUserGroup->getReadAccess() == "group") { | |
| 137 | - echo TXT_ONLY_GROUP_USERS; | |
| 79 | +if ($oUamUserGroup->getReadAccess() == "all") { | |
| 80 | + echo TXT_UAM_ALL; | |
| 81 | +} elseif ($oUamUserGroup->getReadAccess() == "group") { | |
| 82 | + echo TXT_UAM_ONLY_GROUP_USERS; | |
| 138 | 83 | } |
| 139 | 84 | ?> |
| 140 | 85 | </li> |
| 141 | - <li><?php echo TXT_WRITE_ACCESS; ?>: | |
| 86 | + <li><?php echo TXT_UAM_WRITE_ACCESS; ?>: | |
| 142 | 87 | <?php |
| 143 | -if ($uamUserGroup->getWriteAccess() == "all") { | |
| 144 | - echo TXT_ALL; | |
| 145 | -} elseif ($uamUserGroup->getWriteAccess() == "group") { | |
| 146 | - echo TXT_ONLY_GROUP_USERS; | |
| 88 | +if ($oUamUserGroup->getWriteAccess() == "all") { | |
| 89 | + echo TXT_UAM_ALL; | |
| 90 | +} elseif ($oUamUserGroup->getWriteAccess() == "group") { | |
| 91 | + echo TXT_UAM_ONLY_GROUP_USERS; | |
| 147 | 92 | } |
| 148 | 93 | ?> |
| 149 | 94 | </li> |
| 150 | 95 | <li> |
| 151 | - <?php echo TXT_GROUP_ROLE; ?>: <?php | |
| 152 | -if ($uamUserGroup->getRoles()) { | |
| 153 | - $out = ''; | |
| 96 | + <?php echo TXT_UAM_GROUP_ROLE; ?>: <?php | |
| 97 | +if ($oUamUserGroup->getObjectsFromType('role')) { | |
| 98 | + $sOut = ''; | |
| 154 | 99 | |
| 155 | - foreach ($uamUserGroup->getRoles() as $role) { | |
| 156 | - $out .= trim($role['role_name']).', '; | |
| 100 | + foreach ($oUamUserGroup->getObjectsFromType('role') as $sKey => $sRole) { | |
| 101 | + $sOut .= trim($sKey).', '; | |
| 157 | 102 | } |
| 158 | 103 | |
| 159 | - echo rtrim($out, ', '); | |
| 104 | + echo rtrim($sOut, ', '); | |
| 160 | 105 | } else { |
| 161 | - echo TXT_NONE; | |
| 106 | + echo TXT_UAM_NONE; | |
| 162 | 107 | } |
| 163 | 108 | ?> |
| 164 | 109 | </li> |
| 165 | 110 | </ul> |