ó
ø¢TQc           @   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   si   e  Z e j d  e d ƒ d d d d d e d ƒ d e d	 ƒ ƒ 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_messages\   This value must contain only letters, numbers, dots, underscores, dashes, slashes or tildes.t   Metac           B   s   e  Z e Z RS(    (   t   __name__t
   __module__R   t   model(    (    (    s7   ../Django//lib/python/django/contrib/flatpages/forms.pyR      s   c         C   sx   |  j  d } | j d ƒ s4 t j t d ƒ ƒ ‚ n  t j rt d t j k rt | j d ƒ rt t j t d ƒ ƒ ‚ n  | S(   Nt   urlt   /s   URL is missing a leading slash.s)   django.middleware.common.CommonMiddlewares    URL is missing a trailing slash.(	   t   cleaned_datat
   startswithR    t   ValidationErrorR   R   t   APPEND_SLASHt   MIDDLEWARE_CLASSESt   endswith(   t   selfR   (    (    s7   ../Django//lib/python/django/contrib/flatpages/forms.pyt	   clean_url   s    	c         C   sí   |  j  j d d  ƒ } |  j  j d d  ƒ } t j j d | ƒ } |  j j rf | j d |  j j ƒ } n  | rÚ | j d | ƒ j	 ƒ  rÚ xS | D]H } | j d | ƒ j	 ƒ  r‹ t
 j t 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)st   site(   R   t   gett   NoneR   t   objectst   filtert   instanceR   t   excludet   existsR    R   t   _t   superR   t   clean(   R   R   R   t   same_urlR   (    (    s7   ../Django//lib/python/django/contrib/flatpages/forms.pyR'      s    %(    (	   R   R   R    t
   RegexFieldR%   R   R   R   R'   (    (    (    s7   ../Django//lib/python/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   (    (    (    s7   ../Django//lib/python/django/contrib/flatpages/forms.pyt   <module>   s   