mirror of
https://github.com/TrentSPalmer/hugo_themes_report.git
synced 2024-10-31 22:08:46 -07:00
77 lines
2.2 KiB
Python
77 lines
2.2 KiB
Python
from rank_hugo_themes import (
|
|
engine, Hugothemes,
|
|
Hugothemes_from_gitlab, sessionmaker
|
|
)
|
|
from sqlalchemy import asc, func
|
|
|
|
|
|
def get_theme_count():
|
|
session = sessionmaker(bind=engine)()
|
|
theme_count = session.query(Hugothemes).count()
|
|
return theme_count
|
|
|
|
|
|
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
|
|
|
|
|
|
def get_newest_update_time():
|
|
session = sessionmaker(bind=engine)()
|
|
newest_commit_time = session.query(
|
|
Hugothemes.commit_date_in_seconds
|
|
).order_by(Hugothemes.commit_date_in_seconds.desc()).first()
|
|
return newest_commit_time
|
|
|
|
|
|
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_themes_orderedby_cname():
|
|
session = sessionmaker(bind=engine)()
|
|
return session.query(
|
|
Hugothemes).order_by(asc(func.lower(Hugothemes.cname))).all()
|
|
|
|
|
|
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_themes():
|
|
session = sessionmaker(bind=engine)()
|
|
return session.query(Hugothemes).all()
|
|
|
|
|
|
def get_themes_from_gitlab_table():
|
|
session = sessionmaker(bind=engine)()
|
|
return session.query(Hugothemes_from_gitlab).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_gitlab_themes():
|
|
session = sessionmaker(bind=engine)()
|
|
return session.query(Hugothemes).filter(
|
|
Hugothemes.url.contains("gitlab")).order_by(
|
|
Hugothemes.commit_date_in_seconds).all()
|