def get_themes_as_dicts_of_sortable_columns():
    session = sessionmaker(bind=engine)()
    return [{
        'name': x.cname,
        'date': x.commit_date[0:10],
        'stars': str(x.stargazers_count),
        'min_ver': '' if x.min_ver is None else x.min_ver,
        'license': x.theme_license,
    } for x in session.query(Hugothemes).all()]
def get_gitlab_themes():
    session = sessionmaker(bind=engine)()
    return session.query(Hugothemes).filter(
        Hugothemes.url.contains("gitlab")).order_by(
            Hugothemes.commit_date_in_seconds).all()
def get_themes_from_gitlab_table_by_date():
    session = sessionmaker(bind=engine)()
    return session.query(Hugothemes_from_gitlab).order_by(
        Hugothemes_from_gitlab.commit_date_in_seconds).all()
def get_theme_count():
    session = sessionmaker(bind=engine)()
    theme_count = session.query(Hugothemes).count()
    return theme_count
def get_themes_from_gitlab_table():
    session = sessionmaker(bind=engine)()
    return session.query(Hugothemes_from_gitlab).all()
def get_themes():
    session = sessionmaker(bind=engine)()
    return session.query(Hugothemes).all()
def get_themes_orderedby_cname():
    session = sessionmaker(bind=engine)()
    result = session.query(Hugothemes).all()
    result.sort(key=cmp_to_key(lambda a, b: cname_compare(a, b)))
    return result
def get_newest_update_time_from_gitlab():
    session = sessionmaker(bind=engine)()
    newest_commit_time = session.query(
        Hugothemes_from_gitlab.commit_date_in_seconds).order_by(
            Hugothemes_from_gitlab.commit_date_in_seconds.desc()).first()
    return newest_commit_time
def get_theme_count_from_gitlab():
    session = sessionmaker(bind=engine)()
    theme_count_from_gitlab = session.query(Hugothemes_from_gitlab).count()
    return theme_count_from_gitlab