î
â^Q\$  ã               @   s“   d  d l  Z  d  d l Z d  d l m Z y d  d l m Z m Z Wn( e k
 rl d  d l m Z m Z Yn Xd  d l	 m
 Z
 m Z d d „  Z d S)é    N)Ústaticfiles_storage)ÚreverseÚNoReverseMatch)ÚHttpResponseÚHttpResponseForbiddenc             C   s¶   |  j  j o |  j  j s" t d ƒ Si  } d
 } x; | D]3 } y t d | ƒ | | <Wq5 t k
 rg Yq5 Xq5 Wt j d t j	 t
 j d ƒ ƒ t j	 | ƒ f ƒ } t | j ƒ  d d	 ƒS)zF
    Dynamic javascript serve defining the grappelli lookup urls.
    z"Permission denied"ÚrelatedÚm2mÚautocompletezgrp_%s_lookupz¸
        var DJNesting = (typeof window.DJNesting != "undefined")
                       ? DJNesting : {};
        DJNesting.adminStaticPrefix = %s;
        DJNesting.LOOKUP_URLS = %s;zadmin/Úcontent_typezapplication/javascript)zrelatedr   zautocomplete)ÚuserZ	is_activeZis_staffr   r   r   ÚtextwrapÚdedentÚjsonÚdumpsr   Úurlr   Ústrip)ÚrequestZgrappelli_lookup_urlsZgrappelli_lookup_keysÚkÚserver_data_js© r   úE/var/www/dbchiro/venv/build/django-nested-admin/nested_admin/views.pyr      s    
	r   )r   r   Z"django.contrib.staticfiles.storager   Zdjango.urlsr   r   ÚImportErrorZdjango.core.urlresolversZdjango.httpr   r   r   r   r   r   r   Ú<module>   s   