コード例 #1
0
 def __init__(self):
     self.nn = newznab.NewzNab()
     self.score = scoreresults.ScoreResults()
     self.sql = sqldb.SQL()
     self.predb = predb.PreDB()
     self.snatcher = snatcher.Snatcher()
     self.update = updatestatus.Status()
コード例 #2
0
    def movie_list():
        movies = sqldb.SQL().get_user_movies()

        if movies == []:
            return None
        elif not movies:
            html = 'Error retrieving list of user\'s movies. Check logs for more information'
            return html

        movie_list = ul(id='movie_list')
        with movie_list:
            for data in movies:
                poster_path = core.URL_BASE + u'/static/images/posters/{}.jpg'.format(
                    data['imdbid'])
                with li(cls='movie', imdbid=data['imdbid']):
                    with div():
                        status = data['status']
                        if status == 'Wanted':
                            span(u'Wanted', cls='status wanted')
                            span('1', cls='status_sort hidden')
                        elif status == 'Found':
                            span(u'Found', cls='status found')
                            span('2', cls='status_sort hidden')
                        elif status == 'Snatched':
                            span(u'Snatched', cls='status snatched')
                            span('3', cls='status_sort hidden')
                        elif status in ['Finished', 'Disabled']:
                            span(u'Finished', cls='status finished')
                            span('4', cls='status_sort hidden')
                        else:
                            span(u'Status Unknown', cls='status wanted')

                        img(src=poster_path,
                            alt=u'Poster for {}'.format(data['imdbid']))

                        with span(cls='movie_info'):
                            span(data['title'],
                                 cls='title',
                                 title=data['title'])
                            span(data['year'], cls='year')
                            with span(cls='score'):
                                if data['score'] == 'N/A':
                                    for nostar in range(5):
                                        i(cls='fa fa-star-o')
                                else:
                                    score = int(data['score'][0])
                                    count = 0
                                    for star in range(score / 2):
                                        count += 1
                                        i(cls='fa fa-star')
                                    if score % 2 == 1:
                                        count += 1
                                        i(cls='fa fa-star-half-o')
                                    for nostar in range(5 - count):
                                        i(cls='fa fa-star-o')
                            if data['rated']:
                                span(data['rated'], cls='rated')

        return unicode(movie_list)
コード例 #3
0
 def __init__(self):
     self.tmdb = movieinfo.TMDB()
     self.plugins = plugins.Plugins()
     self.sql = sqldb.SQL()
     self.ajax = ajax.Ajax()
     self.snatcher = snatcher.Snatcher()
     self.update = library.Status()
     self.metadata = library.Metadata()
コード例 #4
0
ファイル: searcher.py プロジェクト: Joecastra/Watcher3
 def __init__(self):
     self.nn = newznab.NewzNab()
     self.score = searchresults.Score()
     self.sql = sqldb.SQL()
     self.predb = predb.PreDB()
     self.snatcher = snatcher.Snatcher()
     self.torrent = torrent.Torrent()
     self.update = library.Status()
コード例 #5
0
 def __init__(self):
     self.omdb = Omdb()
     self.config = config.Config()
     self.predb = predb.PreDB()
     self.searcher = searcher.Searcher()
     self.sql = sqldb.SQL()
     self.poster = poster.Poster()
     self.snatcher = snatcher.Snatcher()
     self.update = updatestatus.Status()
コード例 #6
0
 def __init__(self):
     self.itunes = ITunes()
     self.config = config.Config()
     self.library = library.ImportDirectory()
     self.predb = predb.PreDB()
     self.plugins = plugins.Plugins()
     self.searcher = searcher.Searcher()
     self.score = scoreresults.ScoreResults()
     self.sql = sqldb.SQL()
     self.musicinfo = musicinfo.ITunes()
     self.snatcher = snatcher.Snatcher()
     self.update = updatestatus.Status()
コード例 #7
0
ファイル: ajax.py プロジェクト: albertrdixon/watcher
 def __init__(self):
     self.tmdb = TMDB()
     self.config = config.Config()
     self.library = library.ImportDirectory()
     self.predb = predb.PreDB()
     self.plugins = plugins.Plugins()
     self.searcher = searcher.Searcher()
     self.score = scoreresults.ScoreResults()
     self.sql = sqldb.SQL()
     self.poster = poster.Poster()
     self.snatcher = snatcher.Snatcher()
     self.update = updatestatus.Status()
コード例 #8
0
ファイル: ajax.py プロジェクト: Joecastra/Watcher3
 def __init__(self):
     self.tmdb = TMDB()
     self.config = config.Config()
     self.metadata = library.Metadata()
     self.predb = predb.PreDB()
     self.plugins = plugins.Plugins()
     self.searcher = searcher.Searcher()
     self.score = searchresults.Score()
     self.sql = sqldb.SQL()
     self.library = library
     self.poster = poster.Poster()
     self.snatcher = snatcher.Snatcher()
     self.update = library.Status()
コード例 #9
0
ファイル: status.py プロジェクト: kaboomwarrior/watcher
    def movie_list():
        movies = sqldb.SQL().get_user_movies()

        if movies == []:
            return None
        elif not movies:
            html = 'Error retrieving list of user\'s movies. Check logs for more information'
            return html

        doc = dominate.document(title='Watcher')
        with doc:
            for data in movies:
                title_year = u'{} {}'.format(data['title'], data['year'])
                poster_path = core.URL_BASE + '/static/images/posters/{}.jpg'.format(
                    data['imdbid'])
                with li(cls='movie', imdbid=data['imdbid']):
                    with div():
                        status = data['status']
                        if status == 'Wanted':
                            span('Wanted', cls='status wanted')
                        elif status == 'Found':
                            span('Found', cls='status found')
                        elif status == 'Snatched':
                            span('Snatched', cls='status snatched')
                        elif status == 'Downloading':
                            span('Downloading', cls='status downloading')
                        elif status == 'Finished':
                            span('Finished', cls='status finished')
                        else:
                            span('Status Unknown', cls='status wanted')

                        img(src=poster_path,
                            alt='Poster for {}'.format(data['imdbid']))

                        span(title_year, cls='title_year')

        return doc.render()
コード例 #10
0
 def __init__(self):
     self.sql = sqldb.SQL()
     self.ajax = ajax.Ajax()
     self.rss = 'https://itunes.apple.com/WebObjects/MZStore.woa/wpa/MRSS/newreleases/sf=143441/limit=100/explicit=true/rss.xml'
     return
コード例 #11
0
ファイル: snatcher.py プロジェクト: jcjmcclean/Watcher3
 def __init__(self):
     self.plugins = plugins.Plugins()
     self.sql = sqldb.SQL()
     self.update = updatestatus.Status()
     return
コード例 #12
0
ファイル: watcher.py プロジェクト: piratesam/watcher
    else:
        core.SERVER_ADDRESS = str(core.CONFIG['Server']['serverhost'])
    if passed_args.port:
        core.SERVER_PORT = passed_args.port
    else:
        core.SERVER_PORT = int(core.CONFIG['Server']['serverport'])

    # update cherrypy config based on passed args
    cherrypy.config.update({
        'engine.autoreload.on': False,
        'server.socket_host': core.SERVER_ADDRESS,
        'server.socket_port': core.SERVER_PORT
    })

    # set up db on first launch
    sql = sqldb.SQL()
    if not os.path.isfile('watcher.sqlite'):
        logging.info('SQL DB not found. Creating.')
        sql = sqldb.SQL()
        sql.create_database()
    else:
        logging.info('SQL DB found.')
        print 'Database found.'
    del sql

    root = App()
    root.add_movie = add_movie.AddMovie()
    root.status = status.Status()
    root.settings = settings.Settings()
    root.restart = restart.Restart()
    root.shutdown = shutdown.Shutdown()
コード例 #13
0
ファイル: watcher.py プロジェクト: scambra/Watcher3
    if passed_args.conf:
        core.CONF_FILE = passed_args.conf
    else:
        core.CONF_FILE = os.path.join(core.PROG_PATH, core.CONF_FILE)
    if passed_args.log:
        core.LOG_DIR = passed_args.log
    if passed_args.plugins:
        core.PLUGIN_DIR = passed_args.plugins
    if passed_args.posters:
        core.POSTER_DIR = passed_args.posters
    else:
        core.POSTER_DIR = os.path.join(core.USERDATA, 'posters')
        
    # set up db connection
    from core import sqldb
    core.sql = sqldb.SQL()
    core.sql.update_database()

    # set up config file on first launch
    from core import config
    if not os.path.isfile(core.CONF_FILE):
        print('\033[33m## Config file not found. Creating new basic config {}. Please review settings. \033[0m'.format(core.CONF_FILE))
        config.new_config()
    else:
        print('Config file found, merging any new options.')
        config.merge_new_options()
    config.load()

    # Set up logging
    from core import log
    log.start(core.LOG_DIR, passed_args.stdout or False)
コード例 #14
0
 def __init__(self):
     self.sql = sqldb.SQL()
     self.ajax = ajax.Ajax()
     self.poster = poster.Poster()
     return
コード例 #15
0
ファイル: library.py プロジェクト: rikbarker/watcher
 def __init__(self):
     self.tmdb = TMDB()
     self.sql = sqldb.SQL()
     return
コード例 #16
0
ファイル: scoreresults.py プロジェクト: rikbarker/watcher
 def __init__(self):
     self.sql = sqldb.SQL()
     return
コード例 #17
0
 def __init__(self):
     self.sql = sqldb.SQL()
     self.ajax = ajax.Ajax()
     return
コード例 #18
0
 def __init__(self):
     self.plugins = plugins.Plugins()
     self.sql = sqldb.SQL()
     self.snatcher = snatcher.Snatcher()
     self.update = updatestatus.Status()
コード例 #19
0
ファイル: torrent.py プロジェクト: jcjmcclean/Watcher3
 def __init__(self):
     self.feed_type = 'torrent'
     self.sql = sqldb.SQL()
     return
コード例 #20
0
 def __init__(self):
     self.sql = sqldb.SQL()
     self.library = library.ImportDirectory()
     self.score = scoreresults.ScoreResults()
コード例 #21
0
 def __init__(self):
     self.sql = sqldb.SQL()
     self.score = searchresults.Score()
コード例 #22
0
ファイル: popularmovies.py プロジェクト: Technifocal/watcher
 def __init__(self):
     self.config = config.Config()
     self.tmdb = TMDB()
     self.sql = sqldb.SQL()
     self.ajax = ajax.Ajax()
     return