
    >Tf                         d dl mZ d dlZd dlmZ dZ G d dej                  Z	 G d dej                  Z
 G d	 d
ej                  Z G d dej                  ZdS )    )gettext_lazyN)columns)ContactsColumnMixinTenantColumnTenantGroupColumnTenancyColumnsMixinc                   ,     e Zd ZdZdZ fdZd Z xZS )r   z)
    Include the tenant description.
    ak  
    {% if record.tenant %}
        <a href="{{ record.tenant.get_absolute_url }}" title="{{ record.tenant.description }}">{{ record.tenant }}</a>
    {% elif record.vrf.tenant %}
        <a href="{{ record.vrf.tenant.get_absolute_url }}" title="{{ record.vrf.tenant.description }}">{{ record.vrf.tenant }}</a>*
    {% else %}
        &mdash;
    {% endif %}
    c                 H     t                      j        |d| j        i| d S )Ntemplate_code)super__init__r   )selfargskwargs	__class__s      ;/var/www/html/netbox-4.1.3/netbox/tenancy/tables/columns.pyr   zTenantColumn.__init__   s-    DKt'9KFKKKKK    c                 (    |rt          |          nd S Nstrr   values     r   r   zTenantColumn.value       ",s5zzz,r   )__name__
__module____qualname____doc__r   r   r   __classcell__r   s   @r   r   r      s]         ML L L L L- - - - - - -r   r   c                   L     e Zd ZdZdZ ej        d          f fd	Zd Z xZ	S )r   z/
    Include the tenant group description.
    a  
    {% if record.tenant and record.tenant.group %}
        <a href="{{ record.tenant.group.get_absolute_url }}" title="{{ record.tenant.group.description }}">{{ record.tenant.group }}</a>
    {% elif record.vrf.tenant and record.vrf.tenant.group %}
        <a href="{{ record.vrf.tenant.group.get_absolute_url }}" title="{{ record.vrf.tenant.group.description }}">{{ record.vrf.tenant.group }}</a>*
    {% else %}
        &mdash;
    {% endif %}
    tenant__groupc                 v    d|vrt          d          |d<    t                      j        || j        |d| d S )Nverbose_nameTenant Group)r   accessor)_r   r   r   )r   r&   r   r   r   s       r   r   zTenantGroupColumn.__init__1   sM    ''%&~%6%6F>"tt'9H^^W]^^^^^r   c                 (    |rt          |          nd S r   r   r   s     r   r   zTenantGroupColumn.value7   r   r   )
r   r   r   r   r   tablesAr   r   r   r    s   @r   r   r   #   st         M !) 9 9 _ _ _ _ _ _- - - - - - -r   r   c                   b    e Zd Z e ed                    Z e ed                    ZdS )r   r%   )r$   TenantN)r   r   r   r   r'   tenant_groupr   tenant r   r   r   r   ;   sU        $$Q~&&  L \Qx[[  FFFr   r   c                   H    e Zd Z ej         ed          dd           ZdS )r   ContactsTc                     | j         j        S r   )contactname)objs    r   <lambda>zContactsColumnMixin.<lambda>H   s    ck. r   )r$   linkify_item	transformN)r   r   r   r   ManyToManyColumnr'   contactsr/   r   r   r   r   D   s;        'w'Qz]]..  HHHr   r   )django.utils.translationr   r'   django_tables2r)   netbox.tablesr   __all__TemplateColumnr   r   Tabler   r   r/   r   r   <module>rA      s    6 6 6 6 6 6     ! ! ! ! ! !- - - - -6( - - -*- - - - -- - - -0    &,       &,     r   