
    si                        d 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dlmZ ddlmZ dd	lmZmZ dd
lmZmZ ddlmZmZ ddlmZ  eed       e ed      d       G d de                    Z G d de      Zy)z0
This page handles the cbv methods for faq page
    )messages)HttpResponse)method_decorator)gettext_lazy)TagsForm)Tags)DynamicTagsCreateFormView)FAQCategoryFormFAQForm)FAQFAQCategory)login_requiredpermission_required)HorillaFormViewdispatch)namehelpdesk_addfaqcategoryc                   N     e Zd ZdZeZeZ ed      Z	 fdZ
dedef fdZ xZS )FaqCategoryCreateFormViewz8
    form view for create and update faq categories
    zFAQ category Createc                     t        |   di |}| j                  j                  j                  rt        d      | j                  _        |S )NzFAQ category Update )superget_context_dataforminstancepk_
form_classverbose_name)selfkwargscontext	__class__s      4/var/www/python-projects/worksol/helpdesk/cbv/faq.pyr   z*FaqCategoryCreateFormView.get_context_data   s?    '*4V499  +,-B+CDOO(    r   returnc                 0   |j                         rw|j                  j                  rt        d      }nt        d      }|j	                          t        j                  | j                  t        |             | j                  d      S t        | )  |      S )Nz&The FAQ category updated successfully.z&The FAQ Category created successfully.#<script>location.reload();</script>)is_validr   r   r   saver   successrequestr   r   
form_valid)r    r   messager#   s      r$   r-   z$FaqCategoryCreateFormView.form_valid%   sr    ==?}}DEDEIIKT\\1W:6$$%JKKw!$''r%   )__name__
__module____qualname____doc__r
   r   r   modelr   new_display_titler   r   r-   __classcell__r#   s   @r$   r   r      s=     !JE/0
( 
(< 
( 
(r%   r   c                   X     e Zd ZdZeZeZ ed      Z	de
fgZ fdZdedef fdZ xZS )FaqCreateFormViewz.
    form view for create and update faqs
    z
FAQ Createtagsc                 *   t        |   di |}| j                  j                  d      }|| j                  j
                  d   _        | j                  j                  j                  rt        d      | j                  _        | j                  |d<   |S )Ncat_idcategoryz
FAQ Updater   r   )r   r   r!   getr   fieldsinitialr   r   r   r   r   )r    r!   r"   r<   r#   s       r$   r   z"FaqCreateFormView.get_context_dataP   ss    '*4V4;;??8,/7		$,99  +,\?DOO())r%   r   r&   c                 V   |j                         r|j                  j                  r*t        j                  | j
                  t        d             n)t        j                  | j
                  t        d             |j                          | j                  d      S t        | )  |      S )NzThe FAQ updated successfully.zThe FAQ created successfully.r(   )r)   r   r   r   r+   r,   r   r*   r   r   r-   )r    r   r#   s     r$   r-   zFaqCreateFormView.form_validY   sx    ==?}}  q1P/QR  q1P/QRIIK$$%JKKw!$''r%   )r/   r0   r1   r2   r   r3   r   r   r   r4   r	   dynamic_create_fieldsr   r   r-   r5   r6   s   @r$   r8   r8   F   sJ     EJ,$&?@A	(w 	(< 	( 	(r%   r8   N)r2   django.contribr   django.httpr   django.utils.decoratorsr   django.utils.translationr   r   
base.formsr   base.modelsr   helpdesk.cbv.tagsr	   helpdesk.formsr
   r   helpdesk.modelsr   r   horilla_views.cbv_methodsr   r   horilla_views.generic.cbv.viewsr   r   r8   r   r%   r$   <module>rM      ss    $ $ 4 6   7 3 , I ; .z2%&?@zR( ( S 3(b( (r%   