def settings(id): project = get_project(id, for_management=False) members = project.members.join(Membership).with_entities( User, Membership.allows_management).all() kwargs = { 'fqdn': current_app.config['SERVER_NAME'], 'protocol': ('https' if current_app.config['KOZMIC_USE_HTTPS_FOR_BADGES'] else 'http'), 'project_id': project.id, 'project_full_name': project.gh_full_name, } example_badge_href = ('http://{fqdn}/projects/{project_id}/' 'builds/latest/?ref=master'.format(**kwargs)) example_badge_src = ('{protocol}://{fqdn}/badges/{project_full_name}/' 'master'.format(**kwargs)) return render_template( 'projects/settings.html', project=project, members=members, is_current_user_a_manager=perms.manage_project(id).can(), can_current_user_delete_a_project=perms.delete_project(id).can(), example_badge_href=example_badge_href, example_badge_src=example_badge_src)
def delete_project(id): project = Project.query.get_or_404(id) perms.delete_project(id).test(http_exception=403) ok_to_commit = project.delete() if ok_to_commit: db.session.commit() flash('Project "{}" has been successfully ' 'deleted.'.format(project.gh_full_name), 'success') return redirect(url_for('.index')) else: db.session.rollback() flash('Something went wrong (probably there was a problem ' 'communicating with the GitHub API). Please try again later.', 'warning') return redirect(url_for('.settings', id=project.id))
def delete_project(id): project = Project.query.get_or_404(id) perms.delete_project(id).test(http_exception=403) ok_to_commit = project.delete() if ok_to_commit: db.session.commit() flash( 'Project "{}" has been successfully ' 'deleted.'.format(project.gh_full_name), 'success') return redirect(url_for('.index')) else: db.session.rollback() flash( 'Something went wrong (probably there was a problem ' 'communicating with the GitHub API). Please try again later.', 'warning') return redirect(url_for('.settings', id=project.id))