o
    {,h                     @   sD   d dl mZ d dlmZ dddZdddZddd	Zdd
dZdS )   )engines)TemplateDoesNotExistNc                 C   s`   g }t |}|D ]!}z|| W   S  ty) } z|| W Y d}~qd}~ww t| |d)zt
    Load and return a template for the given name.

    Raise TemplateDoesNotExist if no such template exists.
    Nchain)_engine_listget_templater   append)template_nameusingr   r   enginee r   L/var/www/html/rh/venv/lib/python3.10/site-packages/django/template/loader.pyr      s   r   c                 C   s   t | trtd|  g }t|}| D ](}|D ]#}z
||W     S  ty: } z|| W Y d}~qd}~ww q| rGtd| |dtd)z
    Load and return a template for one of the given names.

    Try names in order and return the first template found.

    Raise TemplateDoesNotExist if no such template exists.
    zselect_template() takes an iterable of template names but got a string: %r. Use get_template() if you want to load a single template by name.Nz, r   zNo template names provided)
isinstancestr	TypeErrorr   r   r   r   join)template_name_listr
   r   r   r	   r   r   r   r   r   select_template   s(   
r   c                 C   s4   t | ttfrt| |d}nt| |d}|||S )z
    Load a template and render it with a context. Return a string.

    template_name may be a string or a list of strings.
    r
   )r   listtupler   r   render)r	   contextrequestr
   templater   r   r   render_to_string4   s   r   c                 C   s   | d u rt  S t |  gS N)r   allr   r   r   r   r   A   s   r   r   )NNN) r   
exceptionsr   r   r   r   r   r   r   r   r   <module>   s    


