class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix='/%s' % package_name, template_folder=os.path.join( os.path.dirname(__file__), 'templates')) menu = { 'main': [package_name, u'영화 v2'], 'sub': [['basic', u'파일처리'], ['log', u'로그']], 'category': 'fileprocess', 'sub2': { 'basic': [ ['setting', u'설정'], ['list', '처리결과'], ], } } plugin_info = { 'version': '0.2.0.0', 'name': package_name, 'category_name': 'fileprocess', 'icon': '', 'developer': u'soju6jan', 'description': u'파일처리 - 영화 v2', 'home': 'https://github.com/soju6jan/%s' % package_name, 'more': '', } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'basic'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix='/%s' % package_name, template_folder=os.path.join( os.path.dirname(__file__), 'templates')) menu = { 'main': [package_name, u'봇 다운로드 - AV'], 'sub': [['receive', u'수신'], ['broadcast', u'방송'], ['log', u'로그']], 'category': 'torrent', 'sub2': { 'receive': [['setting', u'설정'], ['list', u'수신 목록']], 'broadcast': [['setting', u'설정'], ['list', u'방송 목록']] } } plugin_info = { 'version': '0.2.0.0', 'name': 'bot_downloader_av', 'category_name': 'torrent', 'developer': 'soju6jan', 'description': u'AV 토렌트 수신 & 방송 처리', 'home': 'https://github.com/soju6jan/bot_downloader_av', 'more': '', } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'torrent'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix='/%s' % package_name, template_folder=os.path.join( os.path.dirname(__file__), 'templates')) menu = { 'main': [package_name, u'만화 다운로드'], 'sub': [['manatoki', u'마나토끼'], ['newtoki', u'뉴토끼'], ['log', u'로그']], 'category': 'service', 'sub2': { 'manatoki': [['setting', u'설정'], ['request', u'요청'], ['queue', u'큐'], ['list', u'목록']], 'newtoki': [['setting', u'설정'], ['request', u'요청'], ['queue', u'큐'], ['list', u'목록']], } } plugin_info = { 'version': '0.2.0.0', 'name': 'downloader_comic', 'category_name': 'service', 'icon': '', 'developer': 'soju6jan', 'description': u'만화 다운로드', 'home': 'https://github.com/soju6jan/download_comic', 'more': '', } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'manatoki'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix=f"/{package_name}", template_folder=os.path.join( os.path.dirname(__file__), 'templates'), static_folder=os.path.join(os.path.dirname(__file__), 'static')) menu = { 'category': 'system', 'main': [package_name, '모듈'], 'sub': [['base', u'모듈 설정'], ['log', '로그']], 'sub2': { 'base': [ ['setting', '설정'], ['total', '모듈 목록'], ], } } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'base'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix=f"/{package_name}", template_folder=os.path.join( os.path.dirname(__file__), 'templates'), static_folder=os.path.join(os.path.dirname(__file__), 'static')) plugin_info = { 'version': '0.2.0.0', 'name': package_name, 'category': 'beta', 'icon': '', 'developer': u'soju6jan', 'description': u'국내TV 파일처리 v2', 'home': f'https://github.com/soju6jan/{package_name}', 'more': '', } menu = { 'main': [package_name, u'국내TV v2'], 'sub': [['basic', u'다운로드 파일처리'], ['yaml', u'설정파일을 사용하는 다운로드 파일처리'], ['simple', u'메타 미사용 다운로드 파일처리'], ['analysis', u'방송중 폴더 분석 & 종영 처리'], ['finish', u'종영 폴더 분석'], ['manual', u'매뉴얼'], ['log', u'로그']], 'category': plugin_info['category'], 'sub2': { 'basic': [['setting', u'설정'], ['status', u'처리 상태']], 'yaml': [['setting', u'설정'], ['status', u'처리 상태']], 'simple': [['setting', u'설정'], ['status', u'처리 상태']], 'analysis': [['setting', u'설정'], ['status', u'분석']], 'manual': [['README.md', u'다운로드 파일처리'], ['manual/analysis.md', u'방송중 폴더'], ['manual/finish.md', u'종영 폴더']] } } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'basic'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix='/%s' % package_name, template_folder=os.path.join( os.path.dirname(__file__), 'templates'), static_folder=os.path.join(os.path.dirname(__file__), 'static')) menu = { 'main': [package_name, u'AV v2'], 'sub': [['jav_censored', u'JavCensored'], ['jav_censored_tool', 'JavCensored Tool'], ['log', u'로그']], 'category': 'fileprocess', 'sub2': { 'jav_censored': [ ['setting', u'설정'], ['list', '처리결과'], ], 'jav_censored_tool': [ ['cd3', u'cd3 변경'], ['purge', u'중복제거'], #['play', u'play'], ], } } plugin_info = { 'version': '0.2.0.0', 'name': package_name, 'category_name': 'fileprocess', 'icon': '', 'developer': u'soju6jan', 'description': u'파일처리 - AV v2', 'home': 'https://github.com/soju6jan/%s' % package_name, 'more': '', } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'jav_censored'
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = Blueprint(package_name, package_name, url_prefix='/%s' % package_name, template_folder=os.path.join( os.path.dirname(__file__), 'templates')) menu = { 'main': [package_name, u'구글 드라이브 공유'], 'sub': [['base', u'기본'], ['user', u'유저공유'], ['log', u'로그']], 'category': 'service', 'sub2': { 'base': [ ['setting', u'기본 설정'], #['list', '목록'] ], #'av_sub' : [ # ['setting', '설정'], ['list', '목록'], ['detail', '세부정보'], ['transfer', '전송'], ['plex', 'PLEX에서 찾기'] #], 'user': [ ['setting', u'설정'], ['upload', u'업로드'], ['list', u'작업현황'] #['download_list', '다운로드 목록'], ] }, } plugin_info = { 'version': '0.2.0.0', 'name': 'gd_share_client', 'category_name': 'service', 'developer': 'soju6jan', 'description': u'구글 드라이브 공유 클라이언트', 'home': 'https://github.com/soju6jan/gd_share_client', 'more': '', 'policy_level': 3, } ModelSetting = get_model_setting(package_name, logger) logic = None module_list = None home_module = 'user' SERVER_URL = app.config['DEFINE']['MAIN_SERVER_URL'] plugin_small = None
class P(object): package_name = __name__.split('.')[0] logger = get_logger(package_name) blueprint = menu = None plugin_info = { 'version': '0.2.0.0', 'type': 'library', 'name': package_name, 'category_name': 'library', 'developer': u'soju6jan', 'description': u'메타데이터를 얻기 위한 개별 사이트 크롤링 라이브러리', 'home': 'https://github.com/soju6jan/%s' % package_name, 'more': '', } ModelSetting = get_model_setting(package_name, logger) @staticmethod def plugin_load(): P.logger.debug('%s plugin_load' % P.package_name) @staticmethod def plugin_unload(): P.logger.debug('%s plugin_unload' % P.package_name)
import os from datetime import datetime # third-party # sjva 공용 from framework import db, app, path_data # 패키지 # 로그 from .plugin import logger, package_name ######################################################### app.config['SQLALCHEMY_BINDS'][package_name] = 'sqlite:///%s' % (os.path.join( path_data, 'db', '%s.db' % package_name)) from plugin import get_model_setting ModelSetting = get_model_setting(package_name, logger) class ModelRcloneJob(db.Model): __tablename__ = '%s_job' % package_name __table_args__ = {'mysql_collate': 'utf8_general_ci'} __bind_key__ = package_name id = db.Column(db.Integer, primary_key=True) job_type = db.Column(db.Integer) name = db.Column(db.String) command = db.Column(db.String) remote = db.Column(db.String) remote_path = db.Column(db.String) local_path = db.Column(db.String) option_user = db.Column(db.String)