U
    4h                     @   s.   d d Z dd Zdd ZdddZd	d
 ZdS )c                 C   s   d| j r| j jnd d| S )z$Generate upload path for brand logoszbrands/logos/Z	no_agency/)agencynameinstancefilename r   ./var/www/html/Focus/src/apps/agencies/utils.pybrand_logo_upload_path   s    r	   c                 C   s   d| j r| j jnd d| S )z)Generate upload path for advertiser logoszadvertisers/logos/Zno_brandr   )brandr   r   r   r   r   advertiser_logo_upload_path	   s    r   c                 C   s   d| j r| j nd d| S )z%Generate upload path for agency logoszagencies/logos/Zno_namer   )r   r   r   r   r   agency_logo_upload_path   s    r   Nc                 C   s   ddl m} |j }| r,| js,|j| d}| |jddd |jddd |jddd |jddd |jdd	 d
}|S )z.
    Get comprehensive agency statistics.
        )Agency)ownerTF)	is_active
is_deleted)is_verifiedr   )is_featuredr   )r   )Ztotal_agenciesZactive_agenciesZinactive_agenciesZverified_agenciesZfeatured_agenciesZdeleted_agencies)apps.agencies.modelsr   objectsallis_superuserfiltercount)userr   querysetstatsr   r   r   get_agency_stats   s    

	r   c                 C   s   i }zFddl m} |jj| d |d< |jj| dddd |d< W n   d|d< g |d< Y nX z&dd	lm} |jj| d |d
< W n   d|d
< Y nX |S )z>
    Get additional context data for agency detail views.
    r   )Brand)r   Zbrands_countr   N
   brands)	CampaignsZcampaigns_count)r   r   r   r   r   order_byZapps.campaigns.modelsr!   )r   contextr   r!   r   r   r   get_agency_context_data(   s    $r$   )N)r	   r   r   r   r$   r   r   r   r   <module>   s   
