def role_post(): """Function which adds new role into database. :rtype: JSON :request args: `{"role_name":"test"}` :return: - If there is already role with this name: ``{'error': 'role already exists'}`` - If request data is invalid: ``{'status': False, 'error': [list of errors]}`` - If all ok: ``{'added_role': 'role_name', 'added_role_id': 'role_id'}`` :statuscode 400: If role with this name exists or request is invalid :statuscode 200: If no errors """ data = request.get_json() valid = validator.role_post(data) if valid['status']: if db.get_role_id(data['role_name']): return jsonify(error='role already exists'), 400 db.insert_role(data['role_name']) added_role_id = db.get_role_id(data['role_name']) response = jsonify(added_role=data['role_name'], added_role_id=added_role_id[0]) session['access_control'] = permission_control.reload_dct() else: response = Response(json.dumps(valid), mimetype='application/json'), 400 return response
def role_post(): """Function which adds new role into database. :return: If there is already role with this name: {'error': 'role already exists'}, 400 If request data is invalid: {'status': False, 'error': [list of errors]}, 400 If all ok: {'added_role': 'role_name', 'added_role_id': 'role_id'} """ data = request.get_json() valid = validator.role_post(data) if valid['status']: if db.get_role_id(data['role_name']): return jsonify(error='role already exists'), 400 db.insert_role(data['role_name']) added_role_id = db.get_role_id(data['role_name']) response = jsonify(added_role=data['role_name'], added_role_id=added_role_id[0]) session['access_control'] = permission_control.reload_dct() else: response = Response(json.dumps(valid), mimetype='application/json'), 400 return response
def facebook_register(first_name, last_name, nickname, email, provider, uid): """This function registres user through facebook. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ user = get_user_by_oauth_id(uid) is_registered = True if not user: user = get_user_by_email(email) is_registered = True if not user: is_registered = False password = random_password(10) salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.facebook_insert(first_name, last_name, nickname, email, salted_pass, provider, uid) if register_user_id: util.add_users_role(register_user_id, role_id[0]) user = get_user_by_oauth_id(uid) message = generate_email( 'registration', _CONFIG['email.from_address'], email, (first_name, last_name, email, password, request.url_root)) send_email(_CONFIG['email.server_name'], _CONFIG['email.user_name'], _CONFIG['email.server_password'], _CONFIG['email.from_address'], email, message) else: util.add_oauth_to_user(user.uid, provider, uid) return user, is_registered
def role_put(): """Function which edits role name by it id. :rtype: JSON :request args: `{role_name: "new_name", role_id: 5}` :return: - If there is already resource with this name: ``{'error': 'this name already exists'}`` - If request data is invalid: ``{'status': False, 'error': [list of errors]}`` - If all ok: ``{'status': 'success', 'edited': 'resource_name'}`` :statuscode 400: if role with this name exists or request is invalid :statuscode 200: if no errors """ data = request.get_json() valid = validator.role_put(data) if valid['status']: if db.get_role_id(data['role_name']): return jsonify(error='this name already exists'), 400 db.edit_role(data['role_name'], data['role_id']) response = jsonify(status='success', edited=data['role_name']) session['access_control'] = permission_control.reload_dct() else: response = Response(json.dumps(valid), mimetype='application/json'), 400 return response
def facebook_register(first_name, last_name, email, provider, uid): """This function registres user through facebook. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ user = get_user_by_oauth_id(uid) if not user: user = get_user_by_email(email) if not user: password = random_password(10) salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.facebook_insert(first_name, last_name, email, salted_pass, provider, uid) if register_user_id: util.add_users_role(register_user_id, role_id[0]) user = get_user_by_oauth_id(uid) send_email(_CONFIG['email.user_name'], _CONFIG['email.app_password'], first_name, last_name, email, password) else: util.add_oauth_to_user(user.uid, provider, uid) return user
def register(first_name, last_name, email, password): """This function registrates user. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.insert_user(first_name, last_name, email, salted_pass) if register_user_id: util.add_users_role(register_user_id, role_id[0]) send_email(_CONFIG['email.user_name'], _CONFIG['email.app_password'], first_name, last_name, email, password) return get_user_by_id(register_user_id)
def register(first_name, last_name, nickname, email, password): """This function registrates user. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.insert_user(first_name, last_name, nickname, email, salted_pass) if register_user_id: util.add_users_role(register_user_id, role_id[0]) message = generate_email( 'registration', _CONFIG['email.from_address'], email, (first_name, last_name, email, password, request.url_root)) send_email(_CONFIG['email.server_name'], _CONFIG['email.user_name'], _CONFIG['email.server_password'], _CONFIG['email.from_address'], email, message) return get_user_by_id(register_user_id)
def register(first_name, last_name, nickname, email, password): """This function registrates user. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.insert_user(first_name, last_name, nickname, email, salted_pass) if register_user_id: util.add_users_role(register_user_id, role_id[0]) message = generate_email('registration', _CONFIG['email.from_address'], email, (first_name, last_name, email, password, request.url_root)) send_email(_CONFIG['email.server_name'], _CONFIG['email.user_name'], _CONFIG['email.server_password'], _CONFIG['email.from_address'], email, message) return get_user_by_id(register_user_id)
def role_put(): """Function which edits role name. :return: If there is already resource with this name: {'error': 'this name already exists'}, 400 If request data is invalid: {'status': False, 'error': [list of errors]}, 400 If all ok: {'status': 'success', 'edited': 'resource_name'} """ data = request.get_json() valid = validator.role_put(data) if valid['status']: if db.get_role_id(data['role_name']): return jsonify(error='this name already exists'), 400 db.edit_role(data['role_name'], data['role_id']) response = jsonify(status='success', edited=data['role_name']) session['access_control'] = permission_control.reload_dct() else: response = Response(json.dumps(valid), mimetype='application/json'), 400 return response
def facebook_register(first_name, last_name, nickname, email, provider, uid): """This function registres user through facebook. It will insert user's data via insert_user function from util. :returns True if transaction finished successfully. """ user = get_user_by_oauth_id(uid) is_registered = True if not user: user = get_user_by_email(email) is_registered = True if not user: is_registered = False password = random_password(10) salted_pass = hash_pass(password) role_id = util.get_role_id('user') register_user_id = util.facebook_insert(first_name, last_name, nickname, email, salted_pass, provider, uid) if register_user_id: util.add_users_role(register_user_id, role_id[0]) user = get_user_by_oauth_id(uid) message = generate_email('registration', _CONFIG['email.from_address'], email, (first_name, last_name, email, password, request.url_root)) send_email(_CONFIG['email.server_name'], _CONFIG['email.user_name'], _CONFIG['email.server_password'], _CONFIG['email.from_address'], email, message) else: util.add_oauth_to_user(user.uid, provider, uid) return user, is_registered