U
    Vc                  '   @   s$  d Z dZdZdZdZdZdZdZdZd	Z	d
Z
dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZd Z d!Z!eeed"eee eeeege!eeed#eee ee	eege!eeed$eee eeeeeee
eeeeeeege!g igigiZ"e"d%fd&d'Z#e"d%fd(d)Z$e"fd*d+Z%d,S )-   __SYS_PRIVATE_ROLE_CAT____OWNER_PRIVATE_ROLE_CAT__ __SUPER_ADMIN_PRIVATE_ROLE_CAT____ROLE_OWNER____ROLE_SUPER_ADMIN____ROLE_ADMIN__!__PERMISSION_TRANSFER_OWNERSHIP____PERMISSION_DELETE_INSTITUTE____PERMISSION_EDIT_INSTITUTE____PERMISSION_READ_INSTITUTE__)__PERMISSION_MODIFY_OWNER_PRIVATE_ROLES__'__PERMISSION_MODIFY_SUPER_ADMIN_ROLES__!__PERMISSION_READ_COLLABORATORS____PERMISSION_WRITE_APIKEY____PERMISSION_READ_APIKEY__!__PERMISSION_WRITE_QUESTIONBANK__ __PERMISSION_READ_QUESTIONBANK____PERMISSION_WRITE_QUESTION____PERMISSION_READ_QUESTION____PERMISSION_WRITE_TAG____PERMISSION_READ_TAG__"__PERMISSION_WRITE_EXAM_TEMPLATE__!__PERMISSION_READ_EXAM_TEMPLATE____PERMISSION_WRITE_EXAM____PERMISSION_READ_EXAM____PERMISSION_WRITE_EXAM_PAGE____PERMISSION_READ_EXAM_PAGE__%__PERMISSION_READ_INSTITUTE_BILLING__keynamecategoryZdedicated_permissionschildrenZOwnerZAdminZWriteFc                 C   sZ   | D ]P}|t  |krd}||t kr.|r. dS |t D ]}t|g|||r6  dS q6qdS )NTF)_key__dedicated_permissions_
_children_role_permission_check)ZtargetRolesZtargetPermission	role_tree
role_found
targetRolerole r*   7/var/www/wikiazma_server/collaborators/defined_roles.pyr%   O   s    r%   c                 C   sJ   |t  | krd}|r|t S |t D ] }t| ||}|d kr$|  S q$d S )NT)r"   
_category_r$   role_cat_finder)r(   r&   r'   r)   catr*   r*   r+   r-   ^   s    r-   c                 C   sD   g }| D ]6}|t  |kr$|| q|t D ]}t|g| q,q|S )N)r"   appendr$   roles_permission_finder)Zmy_rolesr&   dataZmy_roler)   r*   r*   r+   r0   k   s    r0   N)&Z__VERSION__r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r"   _name_r,   r#   r$   Z	ROLE_TREEr%   r-   r0   r*   r*   r*   r+   <module>   s         
      
       