
    B
d                     x    d dl m Z  d dlmZmZmZ d dlmZ d dl  G d dej                  j                        Z
y)    )copy)datetimetimezone	timedelta)
monthrange)*c                   8    e Zd ZdZdZdZdZdZdZdZ	e
d        Zy	)
CmfWikiWikiwikiSECu   Wiki компанииzCmfMenuTree:Classi  Tc                 B   g }t         j                  j                  g dg ddg      }|D ]o  }t        j	                  |j
                        }t               }|j                   |_        |j                   |_        |j                   |_	        |j
                  |_        |j                  j                  |_
        |j                  j                  xs d|_        |j                   |_        |j                  j                  |_        d|_        |j                   |_        d|_        d|_        |j&                  |_        t)        |d	|j                   j+                               |_        |j.                  |_        t)        |d
d       |_        |j3                  |       r |S )N)tree_parent_idz==zCmfWiki:Class)ordernotree_node_is_branchr   	parent_idlogic_prefixui_view_formr   )filterfieldsorderbyi@B companyTFr   r   )models
CmfProjectlistcmfutilget_model_by_name
class_nameCmfUiMenuNodeidnode_idcoder   valuer   namer   	ui_moduleui_name
allow_move	is_publiccmf_owner_idgetattrlowervfperm_effective_acl_idr   append)cls	node_listobj_listvmodelnodes         !./modules/wiki/models/cmf_wiki.pymenu_class_node_listzCmfWiki.menu_class_node_list   sT   	$$))1ZtK *   	#A--all;E ?DddVDLDG66(DIllDO'('<'<'B'BD$99??5gDL66(DI"#"2"2"8"8D 'DN99DL"DO"DN !Da1D1D1FGDG)*)@)@D& '>4 @DT"-	#.     N)__name__
__module____qualname__r&   r%   code_prefixverbose_namemenu_tree_parent_idmenu_tree_ordernomenu_tree_node_is_branchclassmethodr6    r7   r5   r
   r
      s:    GIK*L-# r7   r
   N)r   r   r   r   calendarr   cmf.includecmfr   	CmfEntityr
   rA   r7   r5   <module>rF      s*     2 2  'cjj"" 'r7   