Ñò
[³vLc           @   sC  d  d k  l Z l Z d  d k l Z d  d k l Z d  d k l Z d  d k	 l
 Z
 d  d k l Z d  d k l Z l Z d  d k l Z d  d	 k l Z d  d
 k l Z d  d k l Z d  d k l Z d  d k l Z d  d k l Z l Z d  d k l  Z  d  d k! l" Z" d „  Z# d „  Z$ d „  Z% d „  Z& d „  Z' d S(   iÿÿÿÿ(   t   get_object_or_404t   render_to_response(   t   ugettext(   t	   ungettext(   t   RequestContext(   t   PermissionDenied(   t   get_stats_headings(   t   nice_percentaget   add_percentages(   t   stats_descriptions(   t
   pagelayout(   t   gentopstats_language(   t   Language(   t
   Submission(   t   tr_lang(   t   get_matching_permissionst   check_permission(   t   admin_permissions(   t   get_profilec         C   s   |  d  S(   Ni   (    (   t   query(    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   limit)   s    c         C   s;   y t  i i d |  ƒ i ƒ  SWn t  i j
 o d SXd  S(   Nt   translation_projectt    (   R   t   objectst   filtert   latestt   DoesNotExist(   R   (    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   get_last_action,   s    c         C   sÒ   |  i  } |  i } t |  i ƒ  ƒ } h | i d 6| d 6| i d 6| i d 6| d 6t |  ƒ d 6t d 6t	 d h | d	 d
 6ƒ d 6} | i
 d d ƒ } | o t d d | | ƒ | d <n | i t | ƒ ƒ | S(   Nt   codet   hreft   titlet   descriptiont   datat   lastactivityt	   isprojects   %(percentage)d%% completet   translatedpercentaget
   percentaget   tooltipt   errorsi    s   Error reading %d files   Error reading %d filest   errortooltip(   t   projectt   pootle_pathR   t   getquickstatsR   t   fullnameR   R   t   Truet   _t   getR   t   updateR	   (   R   R(   R   t   projectstatst   infoR&   (    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   make_project_item2   s$    		


c   
   	   C   sR  t  t d | ƒ} t t |  i ƒ | i ƒ |  _ t d |  ƒ p
 t ‚ n | i	 i
 d ƒ } t | ƒ } d „  | i ƒ  Dƒ } | i ƒ  } t | d d t | d d ƒ ƒ } t | ƒ } h h | i d 6t | i ƒ d	 6t d
 d | h | d 6| d 6ƒ d 6d 6d | i d 6| d 6t ƒ  d 6| d 6t i ƒ  d 6}	 t d |	 d t |  ƒ ƒS(   NR   t   viewt   project__fullnamec         s   s   x |  ] } t  | ƒ Vq Wd  S(   N(   R2   (   t   .0t   translate_project(    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pys	   <genexpr>P   s   	 t   translatedsourcewordsg      Y@t   totalsourcewordsi   t   names.   %(projects)d project, %(average)d%% translateds/   %(projects)d projects, %(average)d%% translatedt   projectst   averaget   statst   languages   %s/t	   feed_patht   statsheadingst   topstatst   instancetitles   language/language_index.htmlt   context_instance(   R    R   R   R   t   usert	   directoryt   permissionsR   R   t   translationproject_sett   order_byt   lent   iteratorR*   R   t   maxR   R   R   R+   R   R   R
   t	   get_titleR   R   (
   t   requestt   language_codeR=   R:   t   projectcountt   itemst   totalsR;   R@   t   templatevars(    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   language_indexG   s.    
%

c         C   s‘   t  t d | ƒ} t t |  i ƒ | i ƒ |  _ t d |  ƒ p t t	 d ƒ ƒ ‚ n h | d 6| i d 6d | i
 d 6} t |  | i d | ƒ S(	   NR   t   administrates3   You do not have rights to administer this language.R=   RD   s   %s/R>   s   language/language_admin.html(   R    R   R   R   RC   RD   RE   R   R   R-   R   R   (   RL   RM   R=   t   template_vars(    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   language_adminf   s    
N((   t   django.shortcutsR    R   t   django.utils.translationR   R-   R   t   django.templateR   t   django.core.exceptionsR   t   pootle_app.views.language.viewR   t   pootle_misc.utilR   R   t#   pootle_app.views.language.item_dictR	   t   pootle_app.viewsR
   t   pootle_app.views.top_statsR   t   pootle_language.modelsR   t   pootle_statistics.modelsR   t   pootle.i18n.gettextR   t   pootle_app.models.permissionsR   R   t"   pootle_app.views.admin.permissionsR   t   pootle_profile.modelsR   R   R   R2   RR   RU   (    (    (    s3   /var/www/Pootle/local_apps/pootle_language/views.pyt   <module>   s(   				