示例#1
0
def salon(github_username, override_username=None):
    if override_username:
        github_username = override_username.lower()

    to_review_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) != github_username)
            .join(ReviewState)
            .filter(db.func.lower(ReviewState.user) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    to_review = collections.defaultdict(list)
    for pull_request in to_review_query:
        state = pull_request.current_states()[github_username]
        to_review[state].append(pull_request)

    my_pulls_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    my_pulls = _categorize_by_states(my_pulls_query)

    return render_template(
        "home.html",
        github_username=github_username,
        my_pulls=my_pulls,
        to_review=to_review,
    )
示例#2
0
文件: views.py 项目: umbrae/harold
def salon():
    github_username = internal_to_github(g.username).lower()

    to_review_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) != github_username)
            .join(ReviewState)
            .filter(db.func.lower(ReviewState.user) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    to_review = collections.defaultdict(list)
    for pull_request in to_review_query:
        state = pull_request.current_states()[github_username]
        to_review[state].append(pull_request)

    my_pulls_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    my_pulls = _categorize_by_states(my_pulls_query)

    return render_template(
        "home.html",
        github_username=github_username,
        internal_username=g.username,
        my_pulls=my_pulls,
        to_review=to_review,
    )
示例#3
0
文件: views.py 项目: alienth/harold
def salon():
    github_username = internal_to_github(g.username).lower()

    to_review_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) != github_username)
            .join(ReviewState)
            .filter(db.func.lower(ReviewState.user) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    to_review = collections.defaultdict(list)
    for pull_request in to_review_query:
        state = pull_request.current_states()[github_username]
        to_review[state].append(pull_request)

    my_pulls_query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .filter(db.func.lower(PullRequest.author) == github_username)
            .order_by(db.desc(PullRequest.created))
    )
    my_pulls = collections.defaultdict(list)
    for pull_request in my_pulls_query:
        states = pull_request.current_states().values()

        # no states at all is a completely separate issue
        if not states:
            my_pulls["eyeglasses"].append(pull_request)
            continue

        # now, take away the "haven't looked yet" people and see what's up
        states = [state for state in states if state != "unreviewed"]
        if not states:
            verdict = "unreviewed"
        elif all(state == "fish" for state in states):
            verdict = "fish"
        elif any(state == "nail_care" for state in states):
            verdict = "nail_care"
        else:
            verdict = "haircut"
        my_pulls[verdict].append(pull_request)

    return render_template(
        "home.html",
        github_username=github_username,
        internal_username=g.username,
        my_pulls=my_pulls,
        to_review=to_review,
    )
示例#4
0
文件: views.py 项目: umbrae/harold
def overview():
    query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .order_by(db.desc(PullRequest.created))
    )
    pull_requests = _categorize_by_states(query)

    return render_template(
        "overview.html",
        pull_requests=pull_requests,
    )
示例#5
0
def overview(github_username):
    query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .order_by(db.desc(PullRequest.created))
    )
    pull_requests = _categorize_by_states(query)

    return render_template(
        "overview.html",
        pull_requests=pull_requests,
        github_username=github_username,
    )
示例#6
0
文件: views.py 项目: tomsoir/harold
def overview():
    query = (PullRequest.query.options(db.subqueryload(
        PullRequest.states)).filter(PullRequest.state == "open").order_by(
            db.desc(PullRequest.created)))

    pull_requests = collections.defaultdict(list)
    for pull_request in query:
        stage = pull_request.review_stage()
        pull_requests[stage].append(pull_request)

    return render_template(
        "overview.html",
        pull_requests=pull_requests,
    )
示例#7
0
文件: views.py 项目: spladug/harold
def overview():
    query = (
        PullRequest.query
            .options(db.subqueryload(PullRequest.states))
            .filter(PullRequest.state == "open")
            .order_by(db.desc(PullRequest.created))
    )

    pull_requests = collections.defaultdict(list)
    for pull_request in query:
        stage = pull_request.review_stage()
        pull_requests[stage].append(pull_request)

    return render_template(
        "overview.html",
        pull_requests=pull_requests,
    )