Example #1
0
    def get(self, key):
        global keys

        controller = OptionsController.get(key)

        if controller:
            return flask.jsonify(**{key: controller.val})
        else:
            return abort(404, message='Unknown key \'%s\'' % key)
Example #2
0
def api_admin_option_get(key):
    """
    Fetch an option
    """
    global KEYS

    controller = OptionsController.get(key)
    if controller:
        return controller.val
    return Exception("Unknown key \'%s\'" % key)
Example #3
0
def api_admin_scheduler_last_ran():
    rtn = {}
    val = OptionsController.get("scheduler_last_ran")
    if not val:
        return None
    try:
        dt = dateutil.parser.parse(val.val["date"])
        rtn["last_ran"] = TimeMagic().ago_dt(dt)
    except:
        pass

    after = datetime.now() - timedelta(seconds=12)
    rtn["active_crawlers"] = len(
        db.session.query(Crawler).filter(Crawler.heartbeat >= after).all())
    return rtn
Example #4
0
def admin_metadata():
    if request.method == 'POST':
        from findex_gui.bin.utils import log_msg
        from findex_gui.controllers.meta.controller import MetaController
        try:
            MetaController.load_new_db()
        except Exception as ex:
            log_msg(str(ex), category="meta_import", level=3)

        return redirect(request.url)

    meta_movies_count = db.session.execute(
        "SELECT COUNT(*) FROM meta_movies;").fetchone()
    if meta_movies_count:
        meta_movies_count = meta_movies_count[0]

    meta_version = OptionsController.get("meta")
    if meta_version:
        meta_version = meta_version.val

    return themes.render("main/metadata",
                         theme="_admin",
                         meta_movies_count=meta_movies_count,
                         meta_version=meta_version)