
    &g                         d dl mZ d dlmZmZ d dlmZm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 eed
               Zeed               Zeed               Zy# e$ r	 d dlmZ Y Gw xY w)    )staff_member_required)HttpResponseHttpResponseRedirect)get_object_or_404render)messages)csrf_exempt   )BookmarkForm)Bookmark)is_xhrc                    | j                   dk(  rt        | j                  | j                        }|j	                         r|j                         }t        |       s`t        j                  | d       | j                  j                  d      r$t        | j                  j                  d            S t        d      S t        | d||j                  d      S t        | j                  	      }t        | d
|dd      S )z
    This view serves and validates a bookmark form.
    If requested via ajax it also returns the drop bookmark form to replace the
    add bookmark form.
    POST)userdatazBookmark addednextAddedz*admin_tools/menu/remove_bookmark_form.html)bookmarkurlcontext)r   admin_tools/menu/form.htmlzAdd Bookmarkformtitle)methodr   r   r   is_validsaver   r   successgetr   r   r   r   )requestr   r   s      O/var/www/html/djangosite/lib/python3.12/site-packages/admin_tools/menu/views.pyadd_bookmarkr#      s     ~~GLLA==?yy{H'?  *:;<<##F+/0@0@0HII#G,,<%-hllC  .$7     c                    t        t        |      }| j                  dk(  rt        | j                  | j
                  |      }|j                         r|j                          t        |       sUt        j                  | d       | j
                  j                  d      r$t        | j
                  j                  d            S t        d      S t        | j                  |      }t        | d|d	d
      S )N)idr   )r   r   instancezBookmark updatedr   Saved)r   r'   r   zEdit Bookmarkr   r   )r   r   r   r   r   r   r   r   r   r   r   r    r   r   r   )r!   r&   r   r   s       r"   edit_bookmarkr)   /   s     !b1H~~GLL8
 ==?IIK'?  *<=<<##F+/0@0@0HII((A$8 r$   c                    t        t        || j                        }| j                  dk(  r|j	                          t        |       s`t        j                  | d       | j                  j                  d      r$t        | j                  j                  d            S t        d      S t        | d| j                  j                  d      dd	      S t        | d
|dd	      S )z
    This view deletes a bookmark.
    If requested via ajax it also returns the add bookmark form to replace the
    drop bookmark form.
    )r&   r   r   zBookmark removedr   Deletedz'admin_tools/menu/add_bookmark_form.htmlz	**title**)r   r   r   z$admin_tools/menu/delete_confirm.htmlzDelete Bookmark)r   r   )r   r   r   r   deleter   r   r   r   r    r   r   r   )r!   r&   r   s      r"   remove_bookmarkr-   G   s     !bw||DH~~gW&89||'+GLL,<,<V,DEE	**5||''/$
 	
 .%0AB r$   N)%django.contrib.admin.views.decoratorsr   django.httpr   r   django.shortcutsr   r   django.contribr   django.views.decorators.csrfr	   ImportErrordjango.contrib.csrf.middlewareformsr   modelsr   admin_tools.utilsr   r#   r)   r-    r$   r"   <module>r9      s    G : 6 #;8    $   :   ,   C  ;:;s   A A,+A,