Warning: mysql_connect(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/zurmoorg/public_html/z-header.php on line 8

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/zurmoorg/public_html/z-header.php on line 8

ReadPermissionsOptimizationUtil Class Reference

Static Public Member Functions

static rebuild ($overwriteExistingTables=true, $forcePhp=false, $messageStreamer=null)
static ownedSecurableItemCreated (OwnedSecurableItem $ownedSecurableItem)
static ownedSecurableItemOwnerChanged (OwnedSecurableItem $ownedSecurableItem, User $oldUser=null)
static securableItemBeingDeleted (SecurableItem $securableItem)
static securableItemGivenPermissionsForUser (SecurableItem $securableItem, User $user)
static securableItemGivenPermissionsForGroup (SecurableItem $securableItem, Group $group)
static securableItemLostPermissionsForUser (SecurableItem $securableItem, User $user)
static securableItemLostPermissionsForGroup (SecurableItem $securableItem, Group $group)
static userBeingDeleted ($user)
static userAddedToGroup (Group $group, User $user)
static userRemovedFromGroup (Group $group, User $user)
static groupAddedToGroup (Group $group)
static groupBeingRemovedFromGroup (Group $group)
static groupBeingDeleted ($group)
static roleParentSet (Role $role)
static roleParentBeingRemoved (Role $role)
static roleBeingDeleted (Role $role)
static userAddedToRole (User $user)
static userBeingRemovedFromRole (User $user, Role $role)
static getAllUpstreamGroupsRecursively (Group $group, &$groupMungeIds)
static getUserRoleIdAndGroupIds (User $user)
static getMungeIdsByUser (User $user)
static recreateTable ($mungeTableName)
static getMungeTableName ($modelClassName)

Static Protected Member Functions

static rebuildViaSlowWay ($modelClassName)
static processNestedGroupWhereParentHasReadPermissionOnSecurableItem ($mungeTableName, $securableItemId, Group $group)
static getRoleMungeCount (SecurableItem $securableItem, Role $role)
static getSubRoleMungeCount (SecurableItem $securableItem, Role $role)
static getImmediateRoleMungeCount (SecurableItem $securableItem, Role $role)
static getGroupMungeCount (SecurableItem $securableItem, Group $group)
static groupAddedOrRemovedFromGroup ($isAdd, Group $group)
static getAllUsersInGroupAndChildGroupsRecursively (Group $group)
static getAllParentGroups (Group $group)
static roleParentSetOrRemoved ($isSet, Role $role)
static getAllUsersInRolesChildRolesRecursively (Role $role)
static getMungeTableSchemaByName ($tableName)
static incrementCount ($mungeTableName, $securableItemId, $item)
static setCount ($mungeTableName, $securableItemId, $item, $count)
static decrementCount ($mungeTableName, $securableItemId, $item)
static decrementCountForAllSecurableItems ($mungeTableName, $item)
static bulkIncrementCount ($mungeTableName, $securableItemIds, $item)
static bulkDecrementCount ($mungeTableName, $securableItemIds, $item)
static incrementParentRolesCounts ($mungeTableName, $securableItemId, Role $role)
static decrementParentRolesCounts ($mungeTableName, $securableItemId, Role $role)
static decrementParentRolesCountsForAllSecurableItems ($mungeTableName, Role $role)
static bulkIncrementParentRolesCounts ($mungeTableName, $securableItemIds, Role $role)
static bulkDecrementParentRolesCounts ($mungeTableName, $securableItemIds, Role $role)
static garbageCollect ($mungeTableName)
static getMungeType ($item)
static getMainTableName ($modelClassName)

Detailed Description

Definition at line 37 of file ReadPermissionsOptimizationUtil.php.


Member Function Documentation

static rebuild ( overwriteExistingTables = true,
forcePhp = false,
messageStreamer = null 
) [static]

At some point if performance is a problem with rebuilding activity models, then the stored procedure needs to be refactored to somehow support more joins dynamically.

See also:
https://www.pivotaltracker.com/story/show/38804909
Parameters:
boolean $overwriteExistingTables
boolean $forcePhp

Definition at line 46 of file ReadPermissionsOptimizationUtil.php.

static ownedSecurableItemOwnerChanged ( OwnedSecurableItem ownedSecurableItem,
User oldUser = null 
) [static]
Parameters:
OwnedSecurableItem $ownedSecurableItem
User $oldUser

Definition at line 275 of file ReadPermissionsOptimizationUtil.php.

static securableItemGivenPermissionsForUser ( SecurableItem securableItem,
User user 
) [static]
Parameters:
SecurableItem $securableItem
User $user

Definition at line 309 of file ReadPermissionsOptimizationUtil.php.

static securableItemGivenPermissionsForGroup ( SecurableItem securableItem,
Group group 
) [static]
Parameters:
SecurableItem $securableItem
Group $group

Definition at line 326 of file ReadPermissionsOptimizationUtil.php.

static securableItemLostPermissionsForUser ( SecurableItem securableItem,
User user 
) [static]
Parameters:
SecurableItem $securableItem
User $user

Definition at line 350 of file ReadPermissionsOptimizationUtil.php.

static securableItemLostPermissionsForGroup ( SecurableItem securableItem,
Group group 
) [static]
Parameters:
SecurableItem $securableItem
Group $group

Definition at line 368 of file ReadPermissionsOptimizationUtil.php.

static userBeingDeleted ( user  )  [static]
Parameters:
$user 

Definition at line 391 of file ReadPermissionsOptimizationUtil.php.

static userAddedToGroup ( Group group,
User user 
) [static]
Parameters:
Group $group
User $user

Definition at line 413 of file ReadPermissionsOptimizationUtil.php.

static userRemovedFromGroup ( Group group,
User user 
) [static]
Parameters:
Group $group
User $user

Definition at line 436 of file ReadPermissionsOptimizationUtil.php.

static groupAddedToGroup ( Group group  )  [static]
Parameters:
Group $group

Definition at line 459 of file ReadPermissionsOptimizationUtil.php.

static groupBeingRemovedFromGroup ( Group group  )  [static]
Parameters:
Group $group

Definition at line 467 of file ReadPermissionsOptimizationUtil.php.

static groupBeingDeleted ( group  )  [static]
Parameters:
$group 

Definition at line 475 of file ReadPermissionsOptimizationUtil.php.

static roleParentSet ( Role role  )  [static]
Parameters:
Role $role

Definition at line 589 of file ReadPermissionsOptimizationUtil.php.

static roleParentBeingRemoved ( Role role  )  [static]
Parameters:
Role $role

Definition at line 598 of file ReadPermissionsOptimizationUtil.php.

static roleBeingDeleted ( Role role  )  [static]
Parameters:
Role $role

Definition at line 607 of file ReadPermissionsOptimizationUtil.php.

static userAddedToRole ( User user  )  [static]
Parameters:
User $user

Definition at line 768 of file ReadPermissionsOptimizationUtil.php.

static userBeingRemovedFromRole ( User user,
Role role 
) [static]
Parameters:
User $user
Role $role

Definition at line 806 of file ReadPermissionsOptimizationUtil.php.

static getAllUpstreamGroupsRecursively ( Group group,
&$  groupMungeIds 
) [static]
Parameters:
Group $group
array $groupMungeIds

Definition at line 842 of file ReadPermissionsOptimizationUtil.php.

static getUserRoleIdAndGroupIds ( User user  )  [static]
Parameters:
User $user
Returns:
array

Definition at line 863 of file ReadPermissionsOptimizationUtil.php.

static getMungeIdsByUser ( User user  )  [static]
Parameters:
User $user
Returns:
array

Definition at line 885 of file ReadPermissionsOptimizationUtil.php.

static recreateTable ( mungeTableName  )  [static]

Public for testing only. Need to manually create test model tables that would not be picked up normally.

Definition at line 909 of file ReadPermissionsOptimizationUtil.php.

static getMungeTableName ( modelClassName  )  [static]
Parameters:
$modelClassName 
Returns:
string

Definition at line 1127 of file ReadPermissionsOptimizationUtil.php.


The documentation for this class was generated from the following file:
 All Data Structures Functions Variables
Generated on Thu Jan 17 07:10:27 2019

Warning: mysql_connect(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/zurmoorg/public_html/z-footer.php on line 8

Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/zurmoorg/public_html/z-footer.php on line 8