def query_issues_filter_by(**filters): # Only show public issues to non-admins if not is_admin(): filters['public'] = True clauses = [getattr(Issue, key) == value for (key, value) in filters.items()] return query_issues_filter(clauses)
def view_issue(issue_id): """ Get all details of an issue """ conditions = {'id': issue_id} if not is_admin(): conditions['public'] = True (issue,last_read) = issues_read_query(**conditions).first() return jsonify(create_issue_read_dict(issue, last_read))
def list_all_issues(): """ Get a list containing all issues """ conditions = {} # Only show public issues to non-admins if not is_admin(): conditions['public'] = True result = issues_read_query(**conditions).all() return jsonify([create_issue_read_dict(issue, last_read) for (issue,last_read) in result])
def list_comments(issue_id): """ Get a list containing all comments of an issue """ conditions = {'id': issue_id} if not is_admin(): conditions['public'] = True issue = Issue.query.filter_by(**conditions).first_or_404() comments = issue.comments.all() return jsonify([comment.to_dict() for comment in comments])
def uncompleted_issues(): conditions = {'completed': None} # Only show public issues to non-admins if not is_admin(): conditions['public'] = True return Issue.query.filter_by(**conditions).all()
def uncompleted_issues(): conditions = {'completed': None} # Only show public issues to non-admins if not is_admin(): conditions['public'] = True return query_issues_filter_by(**conditions).all()
def list_archive(): """ Get a list containing all completed issues """ conditions = [Issue.completed != None] if not is_admin(): conditions.append(Issue.public == True) result = query_issues_filter(conditions).all() return jsonify([create_issue_read_dict(issue, last_read) for (issue,last_read) in result])
def page_attributes(): attributes = [] if is_logged_in(): attributes.append(u'user-logged-in') else: attributes.append(u'user-not-logged-in') if is_admin(): attributes.append(u'user-is-admin') else: attributes.append(u'user-is-not-admin') return attributes
def change_password(user_id=None): form = ChangePasswordForm() if user_id is not None and not is_admin(): return 'You are not authorised', 403 if user_id is None: user_id = current_user.get_id() user = User.query.filter_by(id=user_id).first_or_404() if form.validate_on_submit(): if current_user.check_password(form.current_password.data): user.set_password(form.new_password.data) db.session.commit() return redirect(url_for('view_frontend')) else: form.current_password.errors.append('Wrong password') return render_template('user_change_password.html', form=form, user=current_user.to_dict() if is_logged_in() else None, user_id=user_id)
def change_password(user_id=None): form = ChangePasswordForm() if user_id is not None and not is_admin(): return 'You are not authorised', 403 if user_id is None: user_id = current_user.get_id() user = User.query.filter_by(id=user_id).first_or_404() if form.validate_on_submit(): if current_user.check_password(form.current_password.data): user.set_password(form.new_password.data) db.session.commit() return redirect(url_for('view_frontend')) else: form.current_password.errors.append('Wrong password') return render_template( 'user_change_password.html', form=form, user=current_user.to_dict() if is_logged_in() else None, user_id=user_id)