ó
Žâ0_c           @   sc   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z m Z	 d e j
 f d     YZ d S(   i˙˙˙˙(   t   forms(   t   settings(   t   FlatPage(   t   ugettextt   ugettext_lazyt   FlatpageFormc           B   sp   e  Z e j d  e d  d d d d d e d  d i e d	  d
 6 Z d d d     YZ d   Z d   Z RS(   t   labelt   URLt
   max_lengthid   t   regexs   ^[-\w/\.~]+$t	   help_textsK   Example: '/about/contact/'. Make sure to have leading and trailing slashes.t   error_messagess\   This value must contain only letters, numbers, dots, underscores, dashes, slashes or tildes.t   invalidt   Metac           B   s   e  Z e Z d  Z RS(   t   __all__(   t   __name__t
   __module__R   t   modelt   fields(    (    (    s@   /tmp/pip-unpacked-wheel-BAJOf3/django/contrib/flatpages/forms.pyR      s   c         C   s   |  j  d } | j d  s: t j t d  d d  n  t j r t j r[ d t j k sj d t j k r | j	 d  r t j t d  d d  n  | S(	   Nt   urlt   /s   URL is missing a leading slash.t   codet   missing_leading_slashs)   django.middleware.common.CommonMiddlewares    URL is missing a trailing slash.t   missing_trailing_slash(
   t   cleaned_datat
   startswithR    t   ValidationErrorR   R   t   APPEND_SLASHt
   MIDDLEWAREt   MIDDLEWARE_CLASSESt   endswith(   t   selfR   (    (    s@   /tmp/pip-unpacked-wheel-BAJOf3/django/contrib/flatpages/forms.pyt	   clean_url   s    	c      	   C   sď   |  j  j d  } |  j  j d  } t j j d |  } |  j j r` | j d |  j j  } n  | rÜ | j d |  j   rÜ x[ | D]P } | j d |  j   r t	 j
 t d  d d d i | d 6| d	 6 q q Wn  t t |   j   S(
   NR   t   sitest   pkt	   sites__ins:   Flatpage with url %(url)s already exists for site %(site)sR   t   duplicate_urlt   paramst   site(   R   t   getR   t   objectst   filtert   instanceR"   t   excludet   existsR    R   t   _t   superR   t   clean(   R   R   R!   t   same_urlR&   (    (    s@   /tmp/pip-unpacked-wheel-BAJOf3/django/contrib/flatpages/forms.pyR/   *   s    !(    (	   R   R   R    t
   RegexFieldR-   R   R   R    R/   (    (    (    s@   /tmp/pip-unpacked-wheel-BAJOf3/django/contrib/flatpages/forms.pyR      s   		N(   t   djangoR    t   django.confR   t   django.contrib.flatpages.modelsR   t   django.utils.translationR   R   R-   t	   ModelFormR   (    (    (    s@   /tmp/pip-unpacked-wheel-BAJOf3/django/contrib/flatpages/forms.pyt   <module>   s   