
oTc        
   @   sB  d  d l  Z  d  d l Z d  d l m Z m Z m Z m Z m Z m Z m	 Z	 m
 Z
 m Z m Z m Z m Z m Z d  d l m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z m Z e  j d  Z d   Z d   Z  e j! r d Z" n d Z" e d	 d
 e#  Z$ e d	 d e#  Z% e d	 d e&  Z' e d	 d e#  Z( e d	 d d e  Z) e d	 d d e Z* e d	 d d e Z+ e d	 d  Z, e d	 d  Z- e d	 d d d d  a. e d	 d e&  a/ e d	 d d e# Z0 e d	 d e&  a1 e d	 d d  Z2 e d	 d e#  Z3 e d	 d e#  Z4 e d	 d d   Z5 e d	 d! e&  Z6 e d	 d" e#  Z7 e d	 d# e#  Z8 e d	 d$ e#  Z9 e d	 d% e#  Z: e d	 d& e#  Z; e d	 d' e#  Z< e d	 d( e&  Z= e d	 d) e&  Z> e d	 d* e&  Z? e d	 d+ e&  Z@ e d	 d, d- d e ZA e d	 d. d- d e ZB e d	 d/ d- d e ZC e d	 d0 e&  ZD e d	 d1 e#  ZE e d	 d2 e#  ZF e d	 d3 e&  ZG e d	 d4 e&  ZH e d	 d5 e&  ZI e d	 d6 d7 d8 d9  ZJ e d: d;  ZK e d: d<  ZL e d: d= e&  ZM e d: d> e#  ZN e d: d? d@ dA dB dC d ZO e d: dE dF  ZP e d	 dG e&  ZQ e d	 dH dI  ZR e d	 dJ  ZS e d	 dK e#  ZT e d	 dL e&  ZU e d	 dM d  ZV e d	 dN d  ZW e d	 dO e&  ZX e d	 dP e&  ZY e d	 dQ e&  ZZ e d	 dR e&  Z[ e d	 dS e&  Z\ e d	 dT  Z] e d	 dU d  Z^ e d	 dV d  Z_ e d	 dW e&  Z` e d	 dX e&  Za e d	 dY e&  Zb e d	 dZ e&  Zc e d	 d[ e&  Zd e d	 d\  Ze e d	 d] e&  Zf e d	 d^ e#  Zg e d	 d_  Zh e d	 d` e&  Zi e d	 da e&  Zj e d	 db e&  Zk e d	 dc d  Zl e d	 dd d d d  Zm e d	 de e&  Zn e d	 df e&  Zo e d	 dg e#  Zp e d	 dh e" di dj  Zq e d	 dk e#  Zr e d	 dl  Zs e d	 dm e#  Zt e d	 dn e#  Zu e d	 do e&  Zv e d	 dp e&  Zw e d	 dq e&  Zx e d	 dr e&  Zy e d	 ds dt du dv g  Zz e d	 dw  Z{ e d	 dx e&  Z| e d	 dy  Z} e d	 dz d  Z~ e d	 d{ d-  Z e d	 d| d}  Z e d	 d~ e&  Z e d	 d  Z e d	 d d d e& Z e d	 d e&  Z e d	 d d g  Z e d	 d e&  Z e d	 d  Z e d	 d d g  Z e d d;  Z e d d  Z e d d e#  Z e d d;  Z e d d  Z e d	 d d  Z e d	 d d- d e Z e d	 d e d e& d e Z e d	 d  Z e d	 d e d e& d e# d e Z e d	 d d e# Z e d	 d e  Z e d	 d d d e& d e Z e d	 d e d e Z e d	 d d e& Z e d	 d e d d  Z e d	 d d  Z e d	 d d- d e& Z e d	 d d d d  Z e d	 d e&  Z e d	 d e#  Z e d	 d e&  Z e d	 d e  Z e j! r.
e d	 d e  Z n e d	 d e  Z e j! r^
e d	 d e  Z n e d	 d e	  Z e d	 d;  Z e d	 d<  Z e d	 d d  Z e d	 d d  Z e d	 d d  Z e d	 d d@ dB d  Z e d	 d  Z e d	 d e  Z e d	 d  Z e d	 d d-  Z e d	 d  Z e d	 d  Z e d	 d e&  Z e d	 d  Z e d	 d d  Z e d d e&  Z e d	 d d d e Z e d d d d  d  Z e d d d  Z e d d d d d  Z e d d e&  Z e d	 d d d e& Z e d	 d d d e& Z e d	 d d e& Z e d	 d e&  Z e d	 d d  Z e d	 d d  Z e d	 d e#  Z e d	 d e&  Z e d	 d e&  Z e d	 d d d d  Z e d	 d d d e& Z e d	 d e    Z e d	 d e    Z e d	 d e&  Z e d	 d e#  Z e d	 d  Z e d	 d d d  Z e d	 d e&  Z e d	 d e&  Z e d	 d e&  Z e d d  Z e d d  Z e d d e j  Z e d d e j! oe j  Z e d d e j  Z e d d e  Z e d	 d  Z e d	 d  Z e d	 d e&  Z e d	 d d  Z e d	 d e#  Z e d	 d e#  Z e d	 d e#  Z e d	 d e#  Z e d	 d e#  Z e d	 d e&  Z e d	 d d-  Z e d	 d d d d@  Z e d	 d d d  Z e d	 d d d d  Z e d	 d e&  Z e d	 d e#  Z e d	 d e&  Z d   Z d   Z d S(   iN(   t   DEF_HOSTt   DEF_PORT_WIN_SSLt   DEF_PORT_WINt   DEF_STDINTFt   DEF_DOWNLOAD_DIRt   DEF_NZBBACK_DIRt   DEF_PORT_UNIX_SSLt   NORMAL_PRIORITYt   DEF_SCANRATEt   DEF_PORT_UNIXt   DEF_COMPLETE_DIRt   DEF_ADMIN_DIRt   NOTIFY_KEYS(   t
   OptionBoolt   OptionNumbert   OptionPasswordt	   OptionDirt	   OptionStrt
   OptionListt   no_nonsenset   validate_octalt   validate_safedirt   validate_dir_existst   create_api_keyt   validate_notemptys   [^@ ]+@[^.@ ]+\.[^.@ ]c         C   s   t    s t   s t   ry t |  t  r3 |  } n	 |  g } x: | D]/ } | o[ t j |  sC t d  | d  f SqC Wn  d  |  f S(   Ns   %s is not a valid email address(	   t   email_endjobt
   email_fullt	   email_rsst
   isinstancet   listt   RE_VALt   matcht   Tt   None(   t   valuet   valuest   addr(    (    s   /var/www/SABnzbd/sabnzbd/cfg.pyt   validate_email%   s    		c         C   sE   |  d k r7 t    s' t   s' t   r7 t d  d  f Sd  |  f Sd  S(   Nt    s   Server address required(   R   R   R   R    R!   (   R"   (    (    s   /var/www/SABnzbd/sabnzbd/cfg.pyt   validate_server2   s    'i   i   t   misct   quick_checkt   fail_on_crct
   send_groupt	   sfv_checkt   email_servert
   validationt   email_tot
   email_fromt   email_accountt	   email_pwdR   i    i   R   t	   email_dirt   createR   t   check_new_reli   t   auto_browsert   replace_illegalt
   pre_scriptR!   t   start_pausedt   enable_unrart   enable_unzipt   enable_recursivet   enable_filejoint   enable_tsjoint   enable_par_cleanupt   never_repairt   ignore_unrar_datest   overwrite_filest   flat_unpackt
   par_optionR&   t   nicet   ionicet   ignore_wrong_unrart   par2_multicoret   allow_64bit_toolst   allow_streamingt	   pre_checkt   fail_hopelesst   req_completion_rategY@id   i   t   newzbint   usernamet   passwordt	   bookmarkst
   unbookmarkt   bookmark_ratei<   t   minvali   t   maxvali   t   urls   www.newzbin2.est   rating_enablet   rating_hosts   api.oznzb.comt   rating_api_keyt   rating_feedbackt   rating_filter_enablet   rating_filter_abort_audiot   rating_filter_abort_videot   rating_filter_abort_encryptedt%   rating_filter_abort_encrypted_confirmt   rating_filter_abort_spamt    rating_filter_abort_spam_confirmt   rating_filter_abort_downvotedt   rating_filter_abort_keywordst   rating_filter_pause_audiot   rating_filter_pause_videot   rating_filter_pause_encryptedt%   rating_filter_pause_encrypted_confirmt   rating_filter_pause_spamt    rating_filter_pause_spam_confirmt   rating_filter_pause_downvotedt   rating_filter_pause_keywordst   top_onlyt   auto_disconnectt   queue_completet   queue_complete_perst   replace_spacest   replace_dotst   no_dupest   ignore_samplest   create_group_folderst	   auto_sortt   folder_renamet   folder_max_lengthi   i  t   pause_on_pwrart   prio_sort_listt   enable_metat   safe_postproct   empty_postproct   pause_on_post_processingt   ampmt   rss_filenamest   rss_odd_titless   nzbindex.nl/s   nzbindex.com/s   nzbclub.com/t
   schedlinest   enable_tv_sortingt   tv_sort_stringt   tv_sort_countriest   tv_categoriest   movie_rename_limitt   100Mt   enable_movie_sortingt   movie_sort_stringt   movie_sort_extras   -cd%1t   stript   movie_extra_foldert   movie_categoriest   moviest   enable_date_sortingt   date_sort_stringt   date_categoriest   tvt	   nzbmatrixt   apikeyt   del_bookmarkt   nzbxxxt   config_lockt   permissionst   download_dirt   download_freet   complete_dirt   apply_umaskt
   script_dirt   nzb_backup_dirt	   cache_dirt   cachet	   admin_dirt   dirscan_dirt   dirscan_speedi  t
   size_limitt   0t   password_filet	   fsys_typet   wait_for_dfoldert   warn_empty_nzbt   sanitize_safet   hostt   portt
   https_portt   login_realmt   SABnzbdt   bandwidth_limitt   refresh_ratet   rss_ratet   cache_limitt   web_dirt   web_dir2t	   web_colort
   web_color2t   cleanup_listt   warned_old_queuet   unwanted_extensionst   action_on_unwanted_extensionst   loggingt   enable_cherrypy_loggingt   log_dirt   logst	   log_levelt   max_log_sizet   5242880t   log_backupsi   i   t   log_newt
   https_certs   server.certt	   https_keys
   server.keyt   https_chaint   enable_httpst   languaget   ent   ssl_typet   v23t   unpack_checkt   no_penaltiest   randomize_server_ipt   ipv6_serverst   debug_delayt   addt   api_keyt   nzb_keyt   disable_api_keyt   api_warningst   local_ranget   max_art_triesi   t   max_art_optt
   use_picklet   no_ipv6t   growlt   growl_servert   growl_passwordt   growl_enablet   ntfosd_enablet   ncenter_enablet   notify_classest
   quota_sizet	   quota_dayt   quota_resumet   quota_periodt   mt   osx_menut	   osx_speedt
   keep_awaket   win_menut	   uniconfigt   allow_incomplete_nzbt   nomedia_markert   wait_ext_drivet   history_limiti2   t   show_sysloadt   web_watchdogt   warn_dupl_jobst   new_nzb_on_failurec         C   s   t  j |   t j |   t j |   t j |   t j |  t j |  t j |  t j |   t	 j |  t
 j |   d  S(   N(   R3   t   set_rootR   R   R   R   R   R   R   R   R   (   t   homet   lcldata(    (    s   /var/www/SABnzbd/sabnzbd/cfg.pyt   set_root_folders)  s    c           C   s=   t  j t j    t j t j    t j t j    d  S(   N(   R   R   R   t   get_pathR   R   (    (    (    s   /var/www/SABnzbd/sabnzbd/cfg.pyt   set_root_folders25  s    i  i  (   t   ret   sabnzbdt   sabnzbd.constantsR    R   R   R   R   R   R   R   R   R	   R
   R   R   t   sabnzbd.configR   R   R   R   R   R   R   R   R   R   R   R   t   compileR   R%   R'   t   WIN32t   DEF_FOLDER_MAXt   TrueR)   R*   t   FalseR+   R,   R-   R/   R0   R1   R2   R   R   R3   R   t   version_checkt   autobrowserR7   R8   R9   R:   R;   R<   R=   R>   R?   R@   RA   RB   RC   RD   RE   RF   RG   RH   RI   RJ   RK   RL   RM   t   newzbin_usernamet   newzbin_passwordt   newzbin_bookmarkst   newzbin_unbookmarkRS   t   newzbin_urlRW   RX   RY   RZ   R[   R\   R]   R^   R_   R`   Ra   Rb   Rc   Rd   Re   Rf   Rg   Rh   Ri   Rj   Rk   Rl   t   autodisconnectRn   Ro   Rp   Rq   Rr   Rs   Rt   Ru   Rv   Rw   Rx   Ry   Rz   R{   R|   R}   R~   R   R   t	   schedulesR   R   R   R   R   R   R   R   t   movie_extra_foldersR   R   R   R   t   matrix_usernamet   matrix_apikeyt   matrix_del_bookmarkt   xxx_usernamet
   xxx_apikeyt
   configlockt   umaskR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   t
   cherryhostt
   cherryportR   RO   RP   R   R   R   R   R   R   R   R   R   R   R   R   R   t   log_webR   R   t   log_sizeR   R   R   R   R   R   R   R   R   R   R   R   R   R   R   t   disable_keyR   R   R   R   R   R   R   R   t	   DARWIN_MLR   t   DARWINR   R   R   R   R   R   R   R   R   R   R   R   R   t   marker_fileR   R   R   R   R   R   R   R   (    (    (    s   /var/www/SABnzbd/sabnzbd/cfg.pyt   <module>   s  XR							 	