Exemple #1
0
    def pre_save(self, obj, data):
        if obj.id is None:
            password = data.get('password')
            retypepassword = data.get('retypepassword')
            if password is None or retypepassword is None:
                raise UserCanon.UserCanonExc(u"Не заполнены пароли.")
            if password != retypepassword:
                raise UserCanon.UserCanonExc(u"Пароли не совпадают!")
            obj.password = password

        roles = data.get('roles')

        login = data.get('login')
        email = data.get('email')

        if login is None or email is None:
            raise UserCanon.UserCanonExc(
                u"Не заполнены логин или почтовый ящик.")

        if not roles:
            raise UserCanon.UserCanonExc(
                u"Не выбраны роли для пользователя.")
        obj._roles = [x['name'] for x in roles]

        if not UserService.check_duplicate(login, email, id):
            raise UserCanon.UserCanonExc(
                u"В системе уже есть запись с именем '%s'" % login)
        return obj
Exemple #2
0
    def post(self):
        if request.json is None:
            abort(400, message=u"Пустые параметры")
        from services.userservice import UserService
        login = request.json.get('login')
        email = request.json.get('email')
        password = request.json.get('password')
        retypepassword = request.json.get('retypepassword')
        if login is None or email is None or password is None or \
                        retypepassword is None:
            abort(400, message=u"Недостаточно данных")
        if password != retypepassword:
            abort(400, message=u"Пароли не совпадают")

        if not UserService.check_duplicate(login, email):
            abort(400, message=u"Дупликат")

        user = UserService.registration(login, email, password)

        db.session.add(user)
        db.session.commit()

        return jsonify({
            'token': user.generate_auth_token().decode('ascii')
        })
Exemple #3
0
def create_superuser():
    from services.userservice import UserService
    with app.app_context():
        if UserService.check_duplicate('admin'):
            user = UserService.registration(
                'admin', '*****@*****.**', 'admin', is_superuser=True,
                first_name='Админов', last_name='Админ', role=['admin'])
            db.session.add(user)
            db.session.commit()
        else:
            debug(u'Error - has admin.')
            raise Exception(u"Has admin.")