def unauthorized_access(e): name = 'Mario' if session.get('user_id'): name = get_user_name(session.get('user_id')) return load_template('errors/403.html', title='403 - Unauthorized access', name=name)
def show_profile(): """Renders a page to show a user's profile""" user_id = session.get('user_id') user_type = session.get('user_type') labels = user_model.show_profile(user_id=user_id, user_type=user_type) return load_template('user/show-profile.html', labels=labels)
def home(): """Renders the home page.""" if session.get('user_id'): home_url = '{user_type}.index'.format( user_type=session.get('user_type')) return redirect(url_for(home_url)) return load_template('user/home.html', title='Home')
def show_nr(): request_id = None col_names = [ 'id', 'accept status', 'specified', 'information', 'viewer id', 'notif obj id', 'contributor id' ] user_id = session.get('user_id') if request.method == 'POST' and request.form.get( 'search'): # Filtering request request_id = request.form.get('request_id') if request.method == 'POST' and request.form.get( 'save'): # Confirming selections accepted_ids = [] rejected_ids = [] for key, value in request.form.items(): if value == 'accept': accepted_ids.append(key) if value == 'reject': rejected_ids.append(key) contributor_model.respond_nr(user_id, accepted_ids, rejected_ids) table = contributor_model.show_nr(request_id, user_id) return load_template('contributor/new-requests.html', title='New Requests', table=table, col_names=col_names)
def show_events(): col_names = [ 'full name', 'id', 'description', 'location', 'city', 'time', 'entertainer', 'notification object id' ] table = contributor_model.show_events() return load_template('contributor/show-events.html', title='Show Events', table=table, col_names=col_names)
def upload_nc(): if request.method == 'POST': params = dict() for key, val in request.form: params[key] = val user_id = session.get('user_id') contributor_model.upload_nc(params) return load_template('contributor/upload-nc.html', title='Upload New Content')
def show_contributors(): """Renders the page to show contributors in order of highest years of experience""" col_names = [ 'id', 'full name', 'age', 'years of experience', 'specialization', 'portfolio link' ] table = user_model.order_contributor() return load_template('user/show-contributors.html', title='Show Contributors', table=table, col_names=col_names)
def contributor_search(): """Renders the page to search for contributors""" col_names = [ 'id', 'full name', 'age', 'years of experience', 'portfolio link', 'specialization' ] name = None if request.method == 'POST': if request.form['name'] != '': name = request.form['name'].replace("'", '') table = user_model.contributor_search(name) return load_template('user/contributor-search.html', title='Search Contributor', table=table, col_names=col_names)
def search_oc(): """Renders the page to search for original content""" col_names = ['id', 'category type', 'type', 'link', 'rating', \ 'contributor id'] type = '' category = '' if request.method == 'POST': if request.form['type'] != '': type = request.form['type'].replace("'", '') if request.form['category'] != '': category = request.form['category'].replace("'", '') table = user_model.search_oc(type=type, category=category) return load_template('user/search-oc.html', title='Search Original Content', table=table, col_names=col_names)
def show_oc(): """Renders a page to show original content""" col_names = [ 'content id', 'category type', 'subcategory', 'year', 'rating', 'full name', 'email', 'birthday', 'age', 'years of experience', 'portfolio link' ] id = None if request.method == 'POST': if request.form['id'] != '': id = request.form['id'].replace("'", '') table = user_model.show_original_content(id=id) return load_template('user/show-oc.html', title='Show Original Content', table=table, col_names=col_names)
def edit_profile(): """Renders a page to edit a user's profile""" user_id = session.get('user_id') user_type = session.get('user_type') if request.method == 'POST': user_keys = ('email', 'first name', 'middle name', 'last name', 'password', 'birthday') other_data = dict() user_data = dict() for key in request.form.keys(): if key in user_keys and request.form[key] != '': user_data[key] = request.form[key].replace("'", '') elif (not key in user_keys) and request.form[key] != '': other_data[key] = request.form[key].replace("'", '') if len(other_data) > 0 or len(user_data) > 0: user_model.edit_profile(user_id, user_type, user_data, other_data) labels = user_model.show_profile(user_id, user_type) return load_template('user/edit-profile.html', labels=labels)
def register(): """Register a new user. Validates that the email is not already registered.""" if request.method == 'POST': params = dict() for key in request.form: params[key] = request.form[key].replace("'", '') user_id = user_model.register(**params) error = None if not user_id: error = 'Invalid data.' elif user_id == -1: error = 'Email already registered.' if not error: session.clear() session['user_id'] = user_id session['user_type'] = request.form['type'] return redirect(url_for('user.home')) flash(error) return load_template('user/register.html', title='Register')
def login(): """Log in a registered user by adding the user_id to the session.""" if request.method == 'POST': email = request.form['email'].replace("'", '') password = request.form['password'].replace("'", '') user_id = user_model.login(email, password) error = None if not user_id: error = 'User does not exist.' elif user_id == -1: error = 'This account has been deactivated' if not error: # Store the user_id in a new session and go to index session.clear() session['user_id'] = user_id session['user_type'] = user_model.get_user_type(user_id) return redirect(url_for('user.home')) print('ERROR', error) flash(error) return load_template('user/login.html', title='Login')
def index(): """Renders the home page.""" return load_template('user/home.html', title='Home')
def deactivate(): user_id = session.get('user_id') user_model.deactivate_profile(user_id) session.clear() return load_template('user/deactivated.html')
def page_not_found(e): return load_template('errors/404.html', title='404 - Page not found')
def send_msg(): return load_template('contributor/send-msg.html', title='Send Message')
def index(): return load_template('coming-soon.html', title='Home')
def show_notif(): return load_template('contributor/show-notifications.html', title='Show Notifications')
def index(): return load_template('contributor/index.html', title='Home')
def internal_server_error(e): return load_template('errors/500.html', title='500 - Internal server error')
def rec_msg(): return load_template('contributor/rec-msg.html', title='Recieve Message')