o ‡%ŠdŸ ã@stddlmZddlmZddlmZddlZddlZddlZddlZddlZddl Z ddl m Z Gdd„deƒZ dS) é)Ú SQLAlchemy)Útexté)Úk2objN)Úsessioncs¤eZdZdZeƒZdZdZej   ej   e j ¡d¡ZdZe d¡ZdZdZd Zd Z‡fd d „Zed d „ƒZedd„ƒZedd„ƒZedd„ƒZdd„Zdd„Z‡ZS)Úk2z2.5.1.27zhttp://127.0.0.1:5000/zhttp://127.0.0.1:8001/z venv/ScriptsFz Europe/KievzJH&INH987gFDHdsagh&8dwbjdw8ckwÚenÚcstƒ ¡dS)N)ÚsuperÚ__init__)Úself©Ú __class__©ú$/home/yana/k2root/k2root/k2/k2cfg.pyr sz k2.__init__cCsBtddƒ� }t |¡}Wdƒn1swY|d|_dS)Nú+languages/babel_translation_directories.ymlÚrÚbabel_translation_directories)ÚopenÚyamlÚ safe_loadr)ÚclsÚfÚdatarrrÚ"load_babel_translation_directoriess  ÿz%k2.load_babel_translation_directoriescCsdtvrtdS|jS)NÚlang)rÚdefault_language)rrrrÚ get_locale#sz k2.get_localecCszt |j›d�¡}|jdkr|j|_d|ji}nd|_ddi}tddƒ�}t ||¡WdƒdS1s6wYdS)Nz api/languageséÈrÚ languagesrÚw) ÚrequestsÚgetÚdomainÚ status_coderrrrÚdump)rÚresponserrrrrÚ$search_babel_translation_directories,s   "ÿz'k2.search_babel_translation_directoriescCsDtddƒ�}tj|tjd�}Wdƒn1swY||_dS)Nzcomponents/menu.ymlr©ÚLoader)rrÚloadÚ FullLoaderÚmenu)rrÚ yaml_datarrrÚget_menu_elenents8s ÿ zk2.get_menu_elenentscCs@tddƒ�}tj|tjd�}Wdƒ|S1swY|S)Nz db/db.ymlrr()rrr*r+)r rÚ db_configrrrÚ init_db_uriBs  ÿþzk2.init_db_uric Csp| ¡}d|d›d|d›d|d›d|d›d |d ›� }||jd <d }d d|›�i|jd<|j |¡dS)Nzmysql+Údriverz://Úuserú:Úpasswordú@Úhostú/ÚdbnameÚSQLALCHEMY_DATABASE_URIz../db/database.dbÚdb2z sqlite:///ÚSQLALCHEMY_BINDS)r0ÚconfigÚdbÚinit_app)r Úappr/Údb_uriÚdb_pathrrrÚinit_dbHs 6 z k2.init_db)Ú__name__Ú __module__Ú __qualname__Úversionrr=r#Ú update_domainÚosÚpathÚjoinÚdirnameÚsysÚprefixÚ venv_bin_pathÚjson_sort_keysÚpytzÚtimezoneÚ secret_keyrÚcurrent_languagerr Ú classmethodrrr'r.r0rBÚ __classcell__rrr rr s.       r) Úflask_sqlalchemyrÚ sqlalchemyrrrrHr!rPrLÚflaskrrrrrrÚs