def register(): if request.method == 'POST': new_user = request.form.to_dict() #incomplete data errors = {} new_user['username'] = new_user['username'].strip().lower() if len(new_user['username']) == 0: errors['username'] = '******'t be blank' if len(new_user['password']) == 0: errors['password'] = '******' #user already registered if db.users.find_one({'username':new_user['username']}): errors['username'] = '******' % new_user['username'] if len(errors) > 0: return render_template('register.html', new_user=new_user, errors=errors) db.users.save(new_user) user = UserMixin() user.username = new_user['username'] user.id = new_user['_id'].__str__() login_user(user) return redirect(request.args.get("next") or url_for("index")) elif request.method == 'GET': return render_template('register.html', new_user= {'username':'', 'password':'', 'email':''})
def get_user(user_id=None, username=None): global _users_data if not _users_data: _users_data = {} with open(os.path.join(const.DATA_DIR, "users.csv")) as f: user_dict = util.csv_to_array_of_dicts(f) for user in user_dict: new_user = UserMixin() new_user.id = user["id"] new_user.username = user["name"] new_user.password = user["password"] _users_data[new_user.get_id()] = new_user if user_id is None: for user in _users_data.values(): if user.username == username: return user if user_id in _users_data: return _users_data[user_id] else: return False
def login(): if request.method == 'POST': user = request.form.to_dict() #incomplete data #incomplete data errors = {} user['username'] = user['username'].strip().lower() if len(user['username']) == 0: errors['username'] = '******'t be blank' if len(user['password']) == 0: errors['password'] = '******' user_found = db.users.find_one({'username':user['username'], 'password':user['password']}) #username or password incorrect if not user_found: errors['not_valid'] = 'username or password is not valid' return render_template('login.html', user = user, errors = errors) user = UserMixin() user.username = user_found['username'] user.id = user_found['_id'].__str__() login_user(user) g.user = user return redirect(request.args.get("next") or url_for("index")) return render_template('login.html', user= {'username':'', 'password':''})
def login(): if request.method == 'POST': user = request.form.to_dict() #incomplete data #incomplete data errors = {} user['username'] = user['username'].strip().lower() if len(user['username']) == 0: errors['username'] = '******'t be blank' if len(user['password']) == 0: errors['password'] = '******' user_found = db.users.find_one({ 'username': user['username'], 'password': user['password'] }) #username or password incorrect if not user_found: errors['not_valid'] = 'username or password is not valid' return render_template('login.html', user=user, errors=errors) user = UserMixin() user.username = user_found['username'] user.id = user_found['_id'].__str__() login_user(user) g.user = user return redirect(request.args.get("next") or url_for("index")) return render_template('login.html', user={'username': '', 'password': ''})
def load_user(userid): #get the user 3 user_found = db.users.find_one({'_id': ObjectId(userid)}) user = UserMixin() user.username = user_found['username'] user.id = user_found['_id'].__str__() g.user = user return user
def save_session(self, user: UserMixin, key: str): """ Register new user session at session repository. Args: user (UserMixin) : User session instance to be registered. key (str): Key used to identify the new user session. """ self.users[key] = user self.users_id_dict[user.id] = self.users[user.username()]
def load_user(editor_id): # looks for extra info in session, and updates the user object with that. # If session isn't loaded/valid, should return None if (not session.get('editor')) or (not session.get('api_token')): return None editor = session['editor'] token = session['api_token'] user = UserMixin() user.id = editor_id user.editor_id = editor_id user.username = editor['username'] user.is_admin = editor['is_admin'] user.token = token return user
def load_user(editor_id: str) -> UserMixin: # looks for extra info in session, and updates the user object with that. # If session isn't loaded/valid, should return None if (not session.get("editor")) or (not session.get("api_token")): return None editor = session["editor"] token = session["api_token"] user = UserMixin() user.id = editor_id user.editor_id = editor_id user.username = editor["username"] user.is_admin = editor["is_admin"] user.token = token return user
def register(): if request.method == 'POST': new_user = request.form.to_dict() #incomplete data errors = {} new_user['username'] = new_user['username'].strip().lower() if len(new_user['username']) == 0: errors['username'] = '******'t be blank' if len(new_user['password']) == 0: errors['password'] = '******' #user already registered if db.users.find_one({'username': new_user['username']}): errors[ 'username'] = '******' % new_user[ 'username'] if len(errors) > 0: return render_template('register.html', new_user=new_user, errors=errors) db.users.save(new_user) user = UserMixin() user.username = new_user['username'] user.id = new_user['_id'].__str__() login_user(user) return redirect(request.args.get("next") or url_for("index")) elif request.method == 'GET': return render_template('register.html', new_user={ 'username': '', 'password': '', 'email': '' })