B
    `                 @   s   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 eddd	g\ZZed
dZed
dZG dd de	jZG dd de	jZG dd de	jZG dd de	jZG dd de	jZG dd de	jZG dd de	jZdS )    )	shortcuts)messages)render_to_string)reverse)generic)get_classes	get_modelzdashboard.shipping.formsWeightBandFormWeightBasedFormZshippingWeightBased
WeightBandc               @   s   e Zd ZeZdZdZdS )WeightBasedListViewz/oscar/dashboard/shipping/weight_based_list.htmlmethodsN)__name__
__module____qualname__r   modeltemplate_namecontext_object_name r   r   R/home/dcms/DCMS/lib/python3.7/site-packages/oscar/apps/dashboard/shipping/views.pyr      s   r   c               @   s    e Zd ZeZeZdZdd ZdS )WeightBasedCreateViewz/oscar/dashboard/shipping/weight_based_form.htmlc             C   s6   t dd| ji}tj| j|dd tdd| jjidS )Nz5oscar/dashboard/shipping/messages/method_created.htmlmethodzsafe noicon)
extra_tagsz dashboard:shipping-method-detailpk)kwargs)r   objectr   successrequestr   r   )selfmsgr   r   r   get_success_url   s    z%WeightBasedCreateView.get_success_urlN)	r   r   r   r   r   r
   
form_classr   r!   r   r   r   r   r      s   r   c                   sH   e Zd ZeZeZdZ fddZ fddZ	 fddZ
dd	 Z  ZS )
WeightBasedDetailViewz1oscar/dashboard/shipping/weight_based_detail.htmlc                s(   t jt|d d| _t j|f||S )Nr   )r   )r   get_object_or_404r   r   superdispatch)r   r   argsr   )	__class__r   r   r&   (   s    zWeightBasedDetailView.dispatchc                s   t  jf |}| j|d< |S )Nr   )r%   get_form_kwargsr   )r   r   )r(   r   r   r)   .   s    
z%WeightBasedDetailView.get_form_kwargsc                s   t  jf |}| j|d< |S )Nr   )r%   get_context_datar   )r   r   ctx)r(   r   r   r*   3   s    
z&WeightBasedDetailView.get_context_datac             C   s6   t dd| ji}tj| j|dd tdd| jjidS )Nz3oscar/dashboard/shipping/messages/band_created.htmlbandzsafe noicon)r   z dashboard:shipping-method-detailr   )r   )r   r   r   r   r   r   r   r   )r   r    r   r   r   r!   8   s    z%WeightBasedDetailView.get_success_url)r   r   r   r   r   r	   r"   r   r&   r)   r*   r!   __classcell__r   r   )r(   r   r#   #   s   r#   c               @   s$   e Zd ZeZeZdZdZdd Z	dS )WeightBasedUpdateViewz/oscar/dashboard/shipping/weight_based_form.htmlr   c             C   s6   t dd| ji}tj| j|dd tdd| jjidS )Nz5oscar/dashboard/shipping/messages/method_updated.htmlr   zsafe noicon)r   z dashboard:shipping-method-detailr   )r   )r   r   r   r   r   r   r   )r   r    r   r   r   r!   G   s    z%WeightBasedUpdateView.get_success_urlN)
r   r   r   r   r   r
   r"   r   r   r!   r   r   r   r   r.   A   s
   r.   c                   sH   e Zd ZeZeZdZdZ fddZ	dd Z
 fddZd	d
 Z  ZS )WeightBandUpdateViewz.oscar/dashboard/shipping/weight_band_form.htmlr,   c                s(   t jt|d d| _t j|f||S )N	method_pk)r   )r   r$   r   r   r%   r&   )r   r   r'   r   )r(   r   r   r&   V   s    zWeightBandUpdateView.dispatchc             C   s   | j j S )N)r   bandsall)r   r   r   r   get_queryset\   s    z!WeightBandUpdateView.get_querysetc                s   t  jf |}| j|d< |S )Nr   )r%   r)   r   )r   r   )r(   r   r   r)   _   s    
z$WeightBandUpdateView.get_form_kwargsc             C   s6   t dd| ji}tj| j|dd tdd| jjidS )Nz3oscar/dashboard/shipping/messages/band_updated.htmlr,   zsafe noicon)r   z dashboard:shipping-method-detailr   )r   )r   r   r   r   r   r   r   r   )r   r    r   r   r   r!   d   s    z$WeightBandUpdateView.get_success_url)r   r   r   r   r   r	   r"   r   r   r&   r3   r)   r!   r-   r   r   )r(   r   r/   P   s   r/   c                   s8   e Zd ZeZdZdZ fddZdd Zdd Z	  Z
S )	WeightBandDeleteViewz0oscar/dashboard/shipping/weight_band_delete.htmlr,   c                s(   t jt|d d| _t j|f||S )Nr0   )r   )r   r$   r   r   r%   r&   )r   r   r'   r   )r(   r   r   r&   r   s    zWeightBandDeleteView.dispatchc             C   s   | j j S )N)r   r1   r2   )r   r   r   r   r3   x   s    z!WeightBandDeleteView.get_querysetc             C   s6   t dd| ji}tj| j|dd tdd| jjidS )Nz3oscar/dashboard/shipping/messages/band_deleted.htmlr,   zsafe noicon)r   z dashboard:shipping-method-detailr   )r   )r   r   r   r   r   r   r   r   )r   r    r   r   r   r!   {   s    z$WeightBandDeleteView.get_success_url)r   r   r   r   r   r   r   r&   r3   r!   r-   r   r   )r(   r   r4   m   s   r4   c               @   s    e Zd ZeZdZdZdd ZdS )WeightBasedDeleteViewz1oscar/dashboard/shipping/weight_based_delete.htmlr   c             C   s*   t dd| ji}tj| j|dd tdS )Nz5oscar/dashboard/shipping/messages/method_deleted.htmlr   zsafe noicon)r   zdashboard:shipping-method-list)r   r   r   r   r   r   )r   r    r   r   r   r!      s
    z%WeightBasedDeleteView.get_success_urlN)r   r   r   r   r   r   r   r!   r   r   r   r   r5      s   r5   N)Zdjangor   Zdjango.contribr   Zdjango.template.loaderr   Zdjango.urlsr   Zdjango.viewsr   Zoscar.core.loadingr   r   r	   r
   r   r   ZListViewr   Z
CreateViewr   r#   Z
UpdateViewr.   r/   Z
DeleteViewr4   r5   r   r   r   r   <module>   s    

