U
    „nÜe–  ã                   @   s,   d dl T d dlZG dd„ dejjjjƒZdS )é    )Ú*Nc                   @   s   e Zd Zedd„ ƒZdS )ÚCmfStatc              	   C   sD  |j  d¡s(|j  d¡s(|j  d¡s(d S |j  d¡r>|js>d S |j  d¡rf|j d¡sf|j d¡sfd S |j  d¡rxd}n|jr„d}nd}tjj }d }|j  d¡r¦|j}t ¡ }|j |_	|j  d¡rÌ|j
j}n|j}|jsèt |¡tjk	rþt d|› d¡ d S ||_||_|j|_||_||_d	|_t ¡  | ¡  W 5 Q R X d S )
NzCmfDocument:zCmfTask:zCmfComment:ZcommentZcreateÚupdatezinvalid project_id "z+": it is not a CmfProject obj_id, skipping;F)ÚidÚ
startswithZis_newZ	parent_idÚgZcurrent_userZcur_workflow_version_idZmodelsr   Zobj_idÚparentZis_nullZcmfutilZget_model_by_idZ
CmfProjectÚdebugÚ
project_idÚactionÚ	person_idÚ
history_idZ
aggregatedZdisable_aclZsave)ÚclsÚobjr   r   r   Ústatr
   © r   ú&./modules/analytics/models/cmf_stat.pyÚdo_calc_statistics   sF    $
ÿ
ÿ

zCmfStat.do_calc_statisticsN)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r   r   r   r   r      s   r   )Zcmf.includeZ!modules.analytics.fields.cmf_statÚmodulesZ	analyticsZfieldsZcmf_statr   r   r   r   r   Ú<module>   s   