
    h                     Z    d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d Z
 G d d      Zy	)
    )apps)ContentType)Site)ObjectDoesNotExist)get_related_objectc                     t        | t              rid| v re| j                  dd      \  }}	 t        j                  j                  |      }t        |j                   d|j                   t        |            S y # t        t        f$ r Y y w xY w)N-   )id.)modelpk)
isinstancestrsplitr   objectsgetdict	app_labelr   intr   	TypeError)valuetype_idobj_idcontent_types       W/home/dcms/DCMS/lib/python3.12/site-packages/djangocms_frontend/contrib/link/helpers.pyget_object_for_valuer   	   s    %#,++c1-	&..22g2>L%//0,2D2D1EFv;   #I. 		s   AA; ;BBc                       e Zd ZdefdZy)GetLinkMixinreturnc                    d| j                   v r| j                   d   rt        j                  d      rot        | j                   d      }|syddlm} |j                  j                  |      j                  d      j                         }|sy|j                         xs dS ddlm}  || j                   j                  d	i       t        j                  j                         j                         xs dS )
Nurl_grouperdjangocms_url_manager r   )Url)r"   r   )get_linklink)configr   is_installedr   djangocms_url_manager.modelsr%   r   filterorder_bylastget_absolute_urldjangocms_link.helpersr&   r   r   get_currentr   )selfr"   r%   urldjangocms_link_get_links        r   r&   zGetLinkMixin.get_link   s    DKK'DKK,F4K\K\]tKu,T[[-HK8++$$$=FFtLQQSC'')/R/N&t{{vr'BDLLD\D\D^DaDabhfhh    N)__name__
__module____qualname__r   r&    r4   r   r   r      s    i# ir4   r   N)django.appsr   "django.contrib.contenttypes.modelsr   django.contrib.sites.modelsr   django.core.exceptionsr   djangocms_frontend.helpersr   r   r   r8   r4   r   <module>r>      s%     : , 5 9i ir4   