diff options
| author | spiderr <spiderr@bitweaver.org> | 2025-05-14 21:20:10 -0400 |
|---|---|---|
| committer | spiderr <spiderr@bitweaver.org> | 2025-05-14 21:20:10 -0400 |
| commit | bc41e3d3d376bd4513965a8bdba4453f84da0d87 (patch) | |
| tree | 9375f3821f260d45b2f313e8c944fec37d04b5df /includes/classes | |
| parent | 887ba9e1d94a75fc2ff07c7a97ab2d2ccc15d212 (diff) | |
| download | liberty-bc41e3d3d376bd4513965a8bdba4453f84da0d87.tar.gz liberty-bc41e3d3d376bd4513965a8bdba4453f84da0d87.tar.bz2 liberty-bc41e3d3d376bd4513965a8bdba4453f84da0d87.zip | |
Remove ROLE_MODEL code
Diffstat (limited to 'includes/classes')
| -rw-r--r-- | includes/classes/LibertyContent.php | 138 |
1 files changed, 37 insertions, 101 deletions
diff --git a/includes/classes/LibertyContent.php b/includes/classes/LibertyContent.php index c56e6cc..77221d3 100644 --- a/includes/classes/LibertyContent.php +++ b/includes/classes/LibertyContent.php @@ -1231,17 +1231,10 @@ class LibertyContent extends LibertyBase implements BitCacheable { */ function getContentPermissionsSql( $pPermName, &$pSelectSql, &$pJoinSql, &$pWhereSql, &$pBindVars ) { global $gBitUser; - if ( defined('ROLE_MODEL') ) { - $pJoinSql .= " - LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_roles_map` urm ON (urm.`role_id`=lcperm.`role_id`) "; - $pWhereSql .= " OR (lcperm.perm_name=? AND (urm.user_id=? OR urm.user_id=?)) "; - } else { - $pJoinSql .= " - LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_groups_map` ugm ON (ugm.`group_id`=lcperm.`group_id`) "; - $pWhereSql .= " OR (lcperm.perm_name=? AND (ugm.user_id=? OR ugm.user_id=?)) "; - } + $pJoinSql .= " + LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) + LEFT OUTER JOIN `".BIT_DB_PREFIX."users_groups_map` ugm ON (ugm.`group_id`=lcperm.`group_id`) "; + $pWhereSql .= " OR (lcperm.perm_name=? AND (ugm.user_id=? OR ugm.user_id=?)) "; $pBindVars[] = $pPermName; $pBindVars[] = $gBitUser->mUserId; $pBindVars[] = ANONYMOUS_USER_ID; @@ -1260,17 +1253,10 @@ class LibertyContent extends LibertyBase implements BitCacheable { */ public static function getContentListPermissionsSql( $pPermName, &$pSelectSql, &$pJoinSql, &$pWhereSql, &$pBindVars ) { global $gBitUser; - if ( defined('ROLE_MODEL') ) { - $pJoinSql .= " - LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_roles_map` urm ON (urm.`role_id`=lcperm.`role_id`) "; - $pWhereSql .= " AND ( lcperm.perm_name IS NULL OR ( lcperm.perm_name=? AND urm.user_id=? AND ( (lcperm.is_revoked !=? OR lcperm.is_revoked IS NULL) OR lc.`user_id`=? ) ) )"; - } else { - $pJoinSql .= " - LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_groups_map` ugsm ON (ugsm.`group_id`=lcperm.`group_id`) "; - $pWhereSql .= " AND ( lcperm.perm_name IS NULL OR ( lcperm.perm_name=? AND ugsm.user_id=? AND ( (lcperm.is_revoked !=? OR lcperm.is_revoked IS NULL) OR lc.`user_id`=? ) ) )"; - } + $pJoinSql .= " + LEFT OUTER JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcperm ON (lc.`content_id`=lcperm.`content_id`) + LEFT OUTER JOIN `".BIT_DB_PREFIX."users_groups_map` ugsm ON (ugsm.`group_id`=lcperm.`group_id`) "; + $pWhereSql .= " AND ( lcperm.perm_name IS NULL OR ( lcperm.perm_name=? AND ugsm.user_id=? AND ( (lcperm.is_revoked !=? OR lcperm.is_revoked IS NULL) OR lc.`user_id`=? ) ) )"; $pBindVars[] = $pPermName; $pBindVars[] = $gBitUser->mUserId; $pBindVars[] = "y"; @@ -1344,23 +1330,13 @@ class LibertyContent extends LibertyBase implements BitCacheable { global $gBitUser; $ret = FALSE; if( $this->isValid() ) { - if ( defined('ROLE_MODEL') ) { - $query = " - SELECT lcperm.`perm_name`, lcperm.`is_revoked`, ur.`role_id`, ur.`role_name`, up.`perm_desc` - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm - INNER JOIN `".BIT_DB_PREFIX."users_roles` ur ON( lcperm.`role_id`=ur.`role_id` ) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) - WHERE lcperm.`content_id` = ?"; - $team = 'role_id'; - } else { - $query = " - SELECT lcperm.`perm_name`, lcperm.`is_revoked`, ug.`group_id`, ug.`group_name`, up.`perm_desc` - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm - INNER JOIN `".BIT_DB_PREFIX."users_groups` ug ON( lcperm.`group_id`=ug.`group_id` ) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) - WHERE lcperm.`content_id` = ?"; - $team = 'group_id'; - } + $query = " + SELECT lcperm.`perm_name`, lcperm.`is_revoked`, ug.`group_id`, ug.`group_name`, up.`perm_desc` + FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm + INNER JOIN `".BIT_DB_PREFIX."users_groups` ug ON( lcperm.`group_id`=ug.`group_id` ) + LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) + WHERE lcperm.`content_id` = ?"; + $team = 'group_id'; $perms = $this->mDb->getAll( $query, array( $this->mContentId )); foreach( $perms as $perm ) { $ret[$perm[$team]][$perm['perm_name']] = $perm; @@ -1377,23 +1353,13 @@ class LibertyContent extends LibertyBase implements BitCacheable { public static function getContentWithPermissionsList() { global $gBitSystem; $ret = array(); - if ( defined('ROLE_MODEL') ) { - $query = " - SELECT lcperm.`perm_name`, lc.`title`, lc.`content_id`, lc.`content_type_guid`, lcperm.`is_revoked`, ur.`role_id`, ur.`role_name`, up.`perm_desc` - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm - INNER JOIN `".BIT_DB_PREFIX."users_roles` ur ON( lcperm.`role_id`=ur.`role_id` ) - INNER JOIN `".BIT_DB_PREFIX."liberty_content` lc ON( lcperm.`content_id`=lc.`content_id` ) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) - ORDER BY ".$gBitSystem->mDb->convertSortmode( 'content_type_guid_asc' ).", ".$gBitSystem->mDb->convertSortmode( 'title_asc' ); - } else { - $query = " - SELECT lcperm.`perm_name`, lc.`title`, lc.`content_id`, lc.`content_type_guid`, lcperm.`is_revoked`, ug.`group_id`, ug.`group_name`, up.`perm_desc` - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm - INNER JOIN `".BIT_DB_PREFIX."users_groups` ug ON( lcperm.`group_id`=ug.`group_id` ) - INNER JOIN `".BIT_DB_PREFIX."liberty_content` lc ON( lcperm.`content_id`=lc.`content_id` ) - LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) - ORDER BY ".$gBitSystem->mDb->convertSortmode( 'content_type_guid_asc' ).", ".$gBitSystem->mDb->convertSortmode( 'title_asc' ); - } + $query = " + SELECT lcperm.`perm_name`, lc.`title`, lc.`content_id`, lc.`content_type_guid`, lcperm.`is_revoked`, ug.`group_id`, ug.`group_name`, up.`perm_desc` + FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcperm + INNER JOIN `".BIT_DB_PREFIX."users_groups` ug ON( lcperm.`group_id`=ug.`group_id` ) + INNER JOIN `".BIT_DB_PREFIX."liberty_content` lc ON( lcperm.`content_id`=lc.`content_id` ) + LEFT OUTER JOIN `".BIT_DB_PREFIX."users_permissions` up ON( up.`perm_name`=lcperm.`perm_name` ) + ORDER BY ".$gBitSystem->mDb->convertSortmode( 'content_type_guid_asc' ).", ".$gBitSystem->mDb->convertSortmode( 'title_asc' ); $perms = $gBitSystem->mDb->getAll( $query ); foreach( $perms as $perm ) { $ret[$perm['content_type_guid']][$perm['content_id']][] = $perm; @@ -1662,39 +1628,21 @@ class LibertyContent extends LibertyBase implements BitCacheable { if( !is_numeric( $this->mContentId ) ) $this->mContentId = 0; if( !isset( $this->mUserContentPerms )) { // get the default permissions for specified user - if ( defined('ROLE_MODEL') ) { - $query = " - SELECT urp.`perm_name` as `hash_key`, 1 as `role_perm`, urp.`perm_name`, urp.`perm_value`, urp.`role_id` - FROM `".BIT_DB_PREFIX."users_roles_map` urm - LEFT JOIN `".BIT_DB_PREFIX."users_role_permissions` urp ON(urm.`role_id`=urp.`role_id`) - LEFT JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcp ON(lcp.`role_id`=urm.`role_id` AND lcp.`content_id`=? AND urp.`perm_name`=lcp.`perm_name`) - WHERE (urm.`user_id`=? OR urm.`user_id`=?) AND lcp.`perm_name` IS NULL"; - } else { - $query = " - SELECT ugp.`perm_name` as `hash_key`, 1 as `group_perm`, ugp.`perm_name`, ugp.`perm_value`, ugp.`group_id` - FROM `".BIT_DB_PREFIX."users_groups_map` ugm - LEFT JOIN `".BIT_DB_PREFIX."users_group_permissions` ugp ON(ugm.`group_id`=ugp.`group_id`) - LEFT JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcp ON(lcp.`group_id`=ugm.`group_id` AND lcp.`content_id`=? AND ugp.`perm_name`=lcp.`perm_name`) - WHERE (ugm.`user_id`=? OR ugm.`user_id`=?) AND lcp.`perm_name` IS NULL"; - } + $query = " + SELECT ugp.`perm_name` as `hash_key`, 1 as `group_perm`, ugp.`perm_name`, ugp.`perm_value`, ugp.`group_id` + FROM `".BIT_DB_PREFIX."users_groups_map` ugm + LEFT JOIN `".BIT_DB_PREFIX."users_group_permissions` ugp ON(ugm.`group_id`=ugp.`group_id`) + LEFT JOIN `".BIT_DB_PREFIX."liberty_content_permissions` lcp ON(lcp.`group_id`=ugm.`group_id` AND lcp.`content_id`=? AND ugp.`perm_name`=lcp.`perm_name`) + WHERE (ugm.`user_id`=? OR ugm.`user_id`=?) AND lcp.`perm_name` IS NULL"; if( !$defaultPerms = $this->mDb->getAssoc( $query, array( $this->mContentId, $userId, ANONYMOUS_USER_ID ) ) ) { $defaultPerms = array(); } - if ( defined('ROLE_MODEL') ) { - $query = " - SELECT lcp.`perm_name` AS `hash_key`, lcp.* - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcp - INNER JOIN `".BIT_DB_PREFIX."users_roles_map` urm ON(lcp.role_id=urm.role_id) - LEFT JOIN `".BIT_DB_PREFIX."users_role_permissions` urp ON(urm.role_id=urp.role_id AND urp.role_id!=lcp.role_id AND urp.perm_name=lcp.perm_name) - WHERE lcp.content_id=? AND (urm.user_id=? OR urm.user_id=?) AND lcp.is_revoked IS NULL"; - } else { - $query = " - SELECT lcp.`perm_name` AS `hash_key`, lcp.* - FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcp - INNER JOIN `".BIT_DB_PREFIX."users_groups_map` ugm ON(lcp.group_id=ugm.group_id) - LEFT JOIN `".BIT_DB_PREFIX."users_group_permissions` ugp ON(ugm.group_id=ugp.group_id AND ugp.group_id!=lcp.group_id AND ugp.perm_name=lcp.perm_name) - WHERE lcp.content_id=? AND (ugm.user_id=? OR ugm.user_id=?) AND lcp.is_revoked IS NULL"; - } + $query = " + SELECT lcp.`perm_name` AS `hash_key`, lcp.* + FROM `".BIT_DB_PREFIX."liberty_content_permissions` lcp + INNER JOIN `".BIT_DB_PREFIX."users_groups_map` ugm ON(lcp.group_id=ugm.group_id) + LEFT JOIN `".BIT_DB_PREFIX."users_group_permissions` ugp ON(ugm.group_id=ugp.group_id AND ugp.group_id!=lcp.group_id AND ugp.perm_name=lcp.perm_name) + WHERE lcp.content_id=? AND (ugm.user_id=? OR ugm.user_id=?) AND lcp.is_revoked IS NULL"; if( !$nonDefaultPerms = $this->mDb->getAssoc( $query, array( $this->mContentId, $userId, ANONYMOUS_USER_ID ) ) ) { $nonDefaultPerms = array(); } @@ -1725,11 +1673,7 @@ class LibertyContent extends LibertyBase implements BitCacheable { 'perm_name' => $pPermName, 'content_id' => $pContentId, ); - if ( defined('ROLE_MODEL') ) { - $storeHash['role_id'] = $pTeamId; - } else { - $storeHash['group_id'] = $pTeamId; - } + $storeHash['group_id'] = $pTeamId; // check to see if this is an exclusion if( $pIsRevoked ) { $storeHash['is_revoked'] = 'y'; @@ -1749,11 +1693,7 @@ class LibertyContent extends LibertyBase implements BitCacheable { function removePermission( $pTeamId, $pPermName, $pContentId=NULL ) { $pContentId = $pContentId == NULL?$this->mContentId:$pContentId; if( @BitBase::verifyId( $pTeamId ) && !empty( $pPermName ) && @BitBase::verifyId( $pContentId ) ) { - if ( defined('ROLE_MODEL') ) { - $team = 'role_id'; - } else { - $team = 'group_id'; - } + $team = 'group_id'; $query = " DELETE FROM `".BIT_DB_PREFIX."liberty_content_permissions` WHERE `$team` = ? and `content_id` = ? and `perm_name` = ?"; @@ -1773,11 +1713,7 @@ class LibertyContent extends LibertyBase implements BitCacheable { */ function isExcludedPermission( $pTeamId, $pPermName ) { if( @BitBase::verifyId( $pTeamId ) && !empty( $pPermName )) { - if ( defined('ROLE_MODEL') ) { - $query = "SELECT `perm_name` FROM `".BIT_DB_PREFIX."users_role_permissions` WHERE `role_id` = ? AND `perm_name` = ?"; - } else { - $query = "SELECT `perm_name` FROM `".BIT_DB_PREFIX."users_group_permissions` WHERE `group_id` = ? AND `perm_name` = ?"; - } + $query = "SELECT `perm_name` FROM `".BIT_DB_PREFIX."users_group_permissions` WHERE `group_id` = ? AND `perm_name` = ?"; return( $this->mDb->getOne( $query, array( $pTeamId, $pPermName )) == $pPermName ); } } |
