Beispiel #1
0
        def __init__(self):
            root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
            handlers = [
                # GET
                (r"/shows", ShowListHandler),
                (r"/episodes/([^/]*)", EpisodeHandler),
                (r"/started", StartedEpisodesHandler),
                (r"/added", AddedEpisodesHandler),
                (r"/next", NextEpisodesHandler),
                (r"/refresh", RefreshHandler),

                # PUT
                (r"/update", UpdateStateHandler),

                # STATIC
                (r"/content/(.*)", tornado.web.StaticFileHandler,
                 {"path": configurator.get()['settings']['search_path']}),
                (r"/(.*)", tornado.web.StaticFileHandler, {"path": root, "default_filename": "app/index.html"}),
            ]

            settings = {
                'debug': True,
                'template_path': os.path.join(os.path.dirname(__file__), 'templates'),
            }
            tornado.web.Application.__init__(self, handlers, **settings)
Beispiel #2
0
def episode_request():
    return (Episode.select(Episode,
                           Season.season_number,
                           Show.name.alias('show_name'),
                           Show.id.alias('show_id'),
                           fn.REPLACE(fn.REPLACE(Episode.path, configurator.get()['settings']['search_path'], ''),
                                      '\\', '/').alias('url'))
            .join(Season)
            .join(Show)
            .dicts())
Beispiel #3
0
    def update_model():

        db_ = list()
        for episode in Episode.select():
            db_.append(episode.path)

        searchpath = configurator.get()['settings']['search_path']

        finder = FileFinder([searchpath], db_, ("mkv", "avi", "mp4"))
        for episode_info in finder.find():
            ModelManager.merge_episode(episode_info)