• Kirk Webb's avatar
    Add method to list all leases a user or project has access to. · b162d8de
    Kirk Webb authored
    Also adjust some of the existing lease enumeration functions to take
    a lease type selector argument.  Here is the comment above the
    new GetAllowedLeases() method:
     Return a list of leases for which a user OR entire project has access.
     Permissions are determined as follows:
     * The owner of a lease always has full (RW) access
     * Users in a project with group_root or above trust always have full (RW)
       access to leases associated with that project.
     * Explicitly granted per-user and per-project permissions are extracted
       from the lease_permissions tables.
     * upid - User OR Project object to lookup lease access for.
     * type - Optional lease type selector.  Restrict results to this type
              of lease.
     Returns: Array of lease objects the given principal (user or project) has
              access to.  To each of these lease objects, an "allow_modify"
              boolean is set, accessible via $leaseobj->allow_modify().
Lease.pm.in 43.1 KB