def post(request_obj): json_data = request_obj.get_json() if 'username' in json_data and 'email' in json_data and 'password' in json_data: data = { 'username': json_data['username'], 'email': json_data['email'], 'password': json_data['password'] } else: raise APIException( 'User username, email and password must be provided', status_code=400) if UsersController.search(data['email']): raise APIException('Email already taken', status_code=400) user = UsersController.new(**data) return jsonify({'data': user}), 201, { 'Location': url_for('handle_user', user_id=user['id'], external=True) }
def authorize_user_token(request): users = UsersController() sessions = SessionsController() session_cookie = COOKIE_MANAGER.get_authorization_token_decoded( request) if session_cookie: session = sessions.get(session_cookie) if session: diff = abs( float(session.get('timestamp')) - float(datetime.datetime.now().timestamp())) if diff > 28800: remove = sessions.remove(session_cookie) return False return True return False
def test_adding_user_failure(): input = MockedInput("user=ewelina&[email protected]") views_storage = ViewsRegister() mock_db = Database() env = { "wsgi.input": input, "REQUEST_METHOD": "POST", "QUERY_STRING": "", "PATH_INFO": "/users", } ctx = Context(env, views_storage, mock_db) previous_users_count = len(mock_db.users) UsersController(ctx).create() assert len(mock_db.users) == previous_users_count
import jwt from controllers.users_controller import UsersController from controllers.sessions_controller import SessionsController from utils import HASH from config import JWT_SIGN_KEY from logic.user import User from utils import COOKIE_MANAGER from logic.authorization import Authorization users_blueprint = Blueprint("user", __name__) users_db = UsersController() sessions_db = SessionsController() @users_blueprint.route("/", methods=["GET"]) def echo(): return ("User module") @users_blueprint.route("/login", methods=["POST"]) @cross_origin() def login(): username = request.json.get('username') password = request.json.get('password') is_correct = Authorization.check_password(username, HASH.hash(password)) if is_correct:
import redis from controllers.users_controller import UsersController from controllers.message_controllers import MessageController import os import atexit import sys import time clear = lambda: os.system('clear') clear() r = redis.StrictRedis('localhost', 6379, charset="utf-8", decode_responses=True) UsersController(r) MessageController(r) UsersController.create_user('denis') UsersController.add_to_admins('denis') login = None try: print('hello user, type your name') login = input() UsersController.user_logs_in(login) UsersController.add_online(login) if UsersController.check_admin(login): print('HI ADMIN') print('1)show log') print('2)show statistics')
def get_entities(): return jsonify({'data': UsersController.index()})
def delete(user_id: int): return jsonify({'data': UsersController.destroy(user_id)})
def put(user_id, request_obj): json_data = request_obj.get_json() data = {'username': json_data['username'], 'email': json_data['email']} return jsonify({'data': UsersController.update(user_id, **data)})
def get(user_id: int): user = UsersController.show(user_id) if not user: raise APIException('User not found') return jsonify({'data': user})
def controllers(self): print('Loading Controllers') self.UsersController = UsersController(self) self.ChannelsController = ChannelsController(self) self.PostsController = PostsController(self) self.SystemsController = SystemsController(self)
def check_password(username, password): users = UsersController() return users.is_password_correct(username, password)
import redis from controllers.users_controller import UsersController from controllers.message_controllers import MessageController import random random.seed(20) r = redis.StrictRedis('localhost', 6379, charset="utf-8", decode_responses=True) UsersController(r) MessageController(r) users = [] for i in range(20): username = '******'+str(i) UsersController.create_user(username) users.append(username) for iters in range(1000): user1 = users[random.randint(0, 19)] user2 = users[random.randint(0, 19)] MessageController.push_messages(user1, user2, 'text')