Exemplo n.º 1
0
def create():
    u1 = User(first_name="u1", last_name="u1")
    u2 = User(first_name="u2", last_name="u2")
    u3 = User(first_name="u3", last_name="u3")
    u1.save()
    u2.save()
    u3.save()

    b1 = Blog(title="blog1", author=u1)
    b2 = Blog(title="blog2", author=u1)
    b1.save()
    b2.save()

    b1.subscribers.add(u1, u2)
    b2.subscribers.add(u2)

    t1 = Topic(title="topic1", blog=b1, author=u1)
    t2 = Topic(title="topic2_content",
               blog=b1,
               author=u3,
               created="2017-01-01")
    t1.save()
    t2.save()

    t1.likes.add(u1, u2, u3)
Exemplo n.º 2
0
 def setUp(self):
     from db.session import Session, DBState
     from db.models import User, Item, DiscuzMember, DiscuzMemberCount
     from db.base import Model
     Model.metadata.drop_all(DBState.engine)
     Model.metadata.create_all(DBState.engine)
     s = Session()
     [
         s.add(i) for i in [
             User(id=1,
                  username='******',
                  jiecao=100000,
                  ppoint=1000,
                  title='',
                  email='*****@*****.**'),
             User(id=2,
                  username='******',
                  jiecao=100000,
                  ppoint=1000,
                  title='',
                  email='*****@*****.**'),
             DiscuzMember(uid=1, username='******'),
             DiscuzMember(uid=2, username='******'),
             DiscuzMemberCount(uid=1, jiecao=100000),
             DiscuzMemberCount(uid=2, jiecao=100000),
             Item(id=1, owner_id=1, sku='foo', status='backpack'),
             Item(id=2, owner_id=2, sku='bar', status='backpack'),
         ] if not options.freeplay
         or 'DiscuzMember' not in i.__class__.__name__
     ]
     s.commit()
Exemplo n.º 3
0
def create():
    """
    Создать пользователя first_name = u1, last_name = u1.
    Создать пользователя first_name = u2, last_name = u2.
    Создать пользователя first_name = u3, last_name = u3.
    Создать блог title = blog1, author = u1.
    Создать блог title = blog2, author = u1.
    Подписать пользователей u1 u2 на blog1, u2 на blog2.
    Создать топик title = topic1, blog = blog1, author = u1.
    Создать топик title = topic2_content, blog = blog1, author = u3, created = 2017-01-01.
    Лайкнуть topic1 пользователями u1, u2, u3.
    :return:
    """
    u1 = User(first_name="u1", last_name="u1")
    u1.save()
    u2 = User(first_name="u2", last_name="u2")
    u2.save()
    u3 = User(first_name="u3", last_name="u3")
    u3.save()
    blog1 = Blog(title="blog1", author=u1)
    blog1.save()
    blog2 = Blog(title="blog2", author=u1)
    blog2.save()
    blog1.subscribers.add(u1, u2)
    blog1.save()
    blog2.subscribers.add(u2)
    blog2.save()
    topic1 = Topic(title="topic1", blog=blog1, author=u1)
    topic1.save()
    topic2 = Topic(title="topic2_content", blog=blog1, author=u3, created=datetime(2017, 1, 1))
    topic2.save()
    topic1.likes.add(u1, u2, u3)
    topic1.save()
Exemplo n.º 4
0
def create():
    u1 = User(id=1, first_name='u1', last_name='u1')
    u2 = User(id=2, first_name='u2', last_name='u2')
    u3 = User(id=3, first_name='u3', last_name='u3')

    u1.save()
    u2.save()
    u3.save()

    blog1 = Blog(id=1, title='blog1', author=u1)
    blog2 = Blog(id=2, title='blog2', author=u1)

    blog1.save()
    blog2.save()

    blog1.subscribers.add(u1, u2)
    blog2.subscribers.add(u2)

    blog1.save()
    blog2.save()

    topic1 = Topic(id=1, title='topic1', blog=blog1, author=u1)
    topic2 = Topic(id=2,
                   title='topic2_content',
                   blog=blog1,
                   author=u3,
                   created=timezone.datetime(2017, 1, 1, tzinfo=pytz.UTC))

    topic1.save()
    topic2.save()

    topic1.likes.add(u1, u2, u3)

    topic1.save()
    topic2.save()
Exemplo n.º 5
0
def create():
    user1 = User(first_name='u1', last_name='u1')
    user1.save()
    user2 = User(first_name='u2', last_name='u2')
    user2.save()
    user3 = User(first_name='u3', last_name='u2')
    user3.save()

    blog1 = Blog(title='blog1', author=user1)
    blog1.save()
    blog2 = Blog(title='blog2', author=user2)
    blog2.save()

    blog1.subscribers.add(user1, user2)
    blog2.subscribers.add(user2)

    topic1 = Topic(title='topic1', blog=blog1, author=user1)
    topic1.save()
    topic2 = Topic(title='topic2_content',
                   blog=blog1,
                   author=user3,
                   created=datetime.date(2017, 1, 1))
    topic2.save()

    topic2.likes.add(user1, user2, user3)
Exemplo n.º 6
0
def create():
    u1 = User(first_name="u1", last_name='u1')
    u1.save()
    u2 = User(first_name="u2", last_name='u2')
    u2.save()
    u3 = User(first_name="u3", last_name='u3')
    u3.save()

    blog1 = Blog(title="blog1")
    blog1.author = u1
    blog1.save()
    blog2 = Blog(title="blog2")
    blog2.author = u1
    blog2.save()

    blog1.subscribers.add(u1, u2)
    blog1.save()
    blog2.subscribers.add(u2)
    blog2.save()

    topic1 = Topic(title="topic1")
    topic1.blog = blog1
    topic1.author = u1
    topic1.save()

    topic2_content = Topic(title="topic2_content", created="2017-01-01")
    topic2_content.blog = blog1
    topic2_content.author = u3
    topic2_content.save()

    topic1.likes.add(u1, u2, u3)
    topic1.save()
Exemplo n.º 7
0
    def update_users(self):
        user_ids = set()
        member_set = set(
            (i.id_ for i in select(p for p in User if p.is_member)))
        vk_members = self.vk_client.get_members(self.__group_id)
        members = []
        for member in vk_members:
            user_ids.add(member.uid)
            try:
                usr = User[member.uid]
                usr.first_name = member.first_name
                usr.last_name = member.last_name
                usr.photo_url = member.photo_url
                usr.is_member = True
            except pony.orm.core.ObjectNotFound:
                usr = User(id_=member.uid,
                           first_name=member.first_name,
                           last_name=member.last_name,
                           photo_url=member.photo_url,
                           is_member=True)
            if usr.id_ in member_set:
                member_set.remove(usr.id_)
            members.append(usr)
        for i in member_set:
            User[i].is_member = False
        print("members ok")

        with ThreadPoolExecutor(max_workers=30) as executor:
            friend_groups = list(
                executor.map(self.vk_client.get_friends,
                             [member.id_ for member in members]))
        print("friends ok")
        for idx, member in enumerate(members):
            friends_set = set((i.id_ for i in member.friends))
            for friend in friend_groups[idx]:
                usr = None
                user_ids.add(friend.uid)
                try:
                    usr = User[friend.uid]
                    usr.first_name = friend.first_name
                    usr.last_name = friend.last_name
                    usr.photo_url = friend.photo_url
                except pony.orm.core.ObjectNotFound:
                    usr = User(id_=friend.uid,
                               first_name=friend.first_name,
                               last_name=friend.last_name,
                               photo_url=friend.photo_url,
                               is_member=False)

                member.friends.add(usr)
                if usr.id_ in friends_set:
                    friends_set.remove(usr.id_)
            for i in friends_set:
                member.friends.remove(User[i])

        delete(p for p in User if p.id_ not in user_ids)
        print("ok")
Exemplo n.º 8
0
 def setUp(self):
     super().setUp()
     self.username = '******'
     self.password = '******'
     self.user = User(username=self.username, password=self.password)
     self.admin_username = '******'
     self.admin_password = '******'
     self.admin = User(username=self.admin_username,
                       password=self.admin_password,
                       is_admin=True)
     db.session.add(self.user)
     db.session.add(self.admin)
     db.session.commit()
Exemplo n.º 9
0
    def test_add_wrong_user(self):
        user = User(id=1, created_at='2')
        with self.assertRaises(Exception):
            self.session.add(user)
            self.session.commit()

        user = User(id=1,
                    name='test',
                    avatar='avatar',
                    active=True,
                    tokens='tok',
                    created_at=datetime.datetime.now())
        with self.assertRaises(Exception):
            self.session.add(user)
            self.session.commit()
Exemplo n.º 10
0
def save_user(file_stream, first_name, last_name, phone_number, card_number, login, password):
    img = face_recognition.load_image_file(file_stream)
    new_face_encodings = face_recognition.face_encodings(img)
    new_list = new_face_encodings[0].tolist()

    user_dict = {
        "first_name": first_name,
        "last_name": last_name,
        "phone_number": phone_number,
        "card_number": card_number,
        "login": login,
        "password": password
    }

    photo_dict = {
        "first_name": first_name,
        "last_name": last_name,
        "phone_number": phone_number,
        "img_encoding": new_list
    }

    user_body = user_dict
    ph_body = photo_dict
    try:
        user = User(**user_body).save()
        UserPhoto(**ph_body).save()
    except NotUniqueError:
        print("Login, phone number and card number must be unique!")
        return redirect(request.url)

    user_id = user.id

    return jsonify({'id': str(user_id)}), 200
Exemplo n.º 11
0
def personal_news(user, message):
    try:
        u = User.objects.get(u_id=user)
    except User.DoesNotExist:
        u = User(u_id=user)
        u.save()

    channel = user
    if u.categories is None:
        tangerine.speak(
            "You need to set up categories. Type 'add category CATEGORY'. Categories must be named in"
            "arxiv format.", channel)
        return

    cat_text = ""
    try:
        for i in u.categories.split(";")[:-1]:
            cat_text += "cat:" + i + " OR"
    except IndexError:
        cat_text = ""
    cat_text += "cat:" + u.categories.split(";")[-1]
    papers = get_arxiv_news(cat_text, u.filter_list)

    for i in papers.sort_values(by=['date'], ascending=False).iterrows():
        i = i[1]
        text = f"*{i.title}* ({i.date.strftime('%d.%m.%Y: %H:%M')})\n"
        text += f"*Author(s): {i.author} *\n\n"
        text += f">>>{i.summary}\n\n"
        text += f"*Link: {i.link} *"
        tangerine.speak(text, channel)
        sleep(0.1)
Exemplo n.º 12
0
def create_user(db: Session, user: UserCreate):
    user.password = get_password_hash(user.password)
    db_user = User(**user.dict())
    db.add(db_user)
    db.commit()
    db.refresh(db_user)
    return db_user
Exemplo n.º 13
0
async def init_users():
    """
    初始化用户信息
    :return:
    """

    user = await User.find_one(dict(login_name='admin'))
    if user:
        await user.delete()

    user = User()
    user.code = common_utils.get_increase_code(KEY_INCREASE_USER)
    user.name = '超级管理员'
    user.email = '*****@*****.**'  # 邮箱
    user.mobile = '15106139173'  # 手机
    user.superuser = True  # 是否为超管
    user.login_name = 'ycf'  # 用户名
    user.login_password = md5('123456')  # 密码
    user.status = STATUS_USER_ACTIVE  # 状态
    user.content = '超级管理员,无所不能'  # 备注
    user.permission_code_list = ALL_PERMISSION_TYPE_LIST

    oid = await user.save()
    if oid:
        print('Initialize user [', user.name, '] succeed!')
Exemplo n.º 14
0
def add_user(username, email, password):
    print('\tAdd user {}'.format(username))
    u = User(name=username, password=password, email=email)
    Session = sessionmaker(bind=ENGINE)
    session = Session()
    session.add(u)
    session.commit()
Exemplo n.º 15
0
    def on_post(self, req, resp, *args, **kwargs):
        super(ResourceRegisterUser, self).on_post(req, resp, *args, **kwargs)
        aux_user = User()

        try:
            aux_user.password = req.media["password"]
            aux_user.username = req.media["username"]
            aux_user.gps = req.media["gps"]
            
            email_validator = '^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$'

            try:
                phone = phonenumbers.parse(aux_user.username, None)
            except:
                raise falcon.HTTPBadRequest(description=messages.invalid_phone)

            if phonenumbers.is_valid_number(phone):
                aux_user.phone = str(phone.country_code) + str(phone.national_number)
                aux_user.username = str(phone.country_code) + str(phone.national_number)
            elif re.search(email_validator, aux_user.username):
                aux_user.email = aux_user.username
            else:
                raise falcon.HTTPBadRequest(description=messages.invalid_username)

            self.db_session.add(aux_user)

            try:
                self.db_session.commit()
            except IntegrityError:
                raise falcon.HTTPBadRequest(description=messages.user_exists)

        except KeyError:
            raise falcon.HTTPBadRequest(description=messages.parameters_invalid)

        resp.status = falcon.HTTP_200
Exemplo n.º 16
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    form = RegistrationForm()
    if form.validate_on_submit():
        phone = form.phone.data.replace(' ', '')
        c = Company.query.get(form.company.data)

        #  TODO TEMPORARILY DISABLED
        # if not c.check_token(form.token.data.strip()):
        #     flash("Neplatný registračný kód. Prosím kontaktujte vedenie Vašej firmy ohľadom poskytnutia platného kódu.",
        #           category='danger')
        #     return redirect(url_for('auth.register'))

        # noinspection PyArgumentList
        u = User(first_name=form.first_name.data,
                 surname=form.surname.data,
                 email=form.email.data,
                 phone=phone,
                 company=c,
                 email_subscription=form.email_subscription.data)
        u.set_password(form.password.data)
        u.set_urole(UserRole.BASIC)

        session.add(u)
        session.commit()
        flash("Registrácia prebehla úspešne!", category='info')
        return redirect(url_for('auth.login'))

    return render_template('register.html', title='Registrácia', form=form)
Exemplo n.º 17
0
def admin_register():
    try:
        code = request.form['code']
        code_verify = AdminCode.objects.get({'code': code})
        logger.info("code_verify: {}".format(code))
    except:
        return jsonify({
            "success": 0,
            "msg": "code is wrong"
        })
    try:
        username = request.form['username']
        new_admin = User(
            username = username,
            password = request.form['password'],
            email = request.form['email'],
            type = 'admin',
            code = request.form['code']
        )
        new_admin.save()
    except ValidationError as e:
        logger.warning(
            'Failed to create new user, Exception: {}'.format(e.message)
        )
        return jsonify({
            'success': 0,
            'msg': '{}:{}'.format(error_msg.ILLEGAL_ARGUMENT, ','.join(list(e.message.keys())))
        }),400
    logger.info('Created new admin: {}'.format(username))
    return jsonify({
        'success': 1
    })
Exemplo n.º 18
0
def api_register_user(*, email, name, passwd):
    if not name or not name.strip():
        raise APIValueError('name')
    if not email or not _RE_EMAIL.match(email):
        raise APIValueError('email')
    if not passwd or not _RE_SHA1.match(passwd):
        raise APIValueError('passwd')
    users = yield from User.findAll('email=?', [email])
    if len(users) > 0:
        raise APIError('register:failed', 'email', 'Email is already in use.')
    uid = next_id()
    sha1_passwd = '%s:%s' % (uid, passwd)
    user = User(id=uid,
                name=name.strip(),
                email=email,
                passwd=hashlib.sha1(sha1_passwd.encode('utf-8')).hexdigest(),
                image='http://www.gravatar.com/avatar/%s?d=mm&s=120' %
                hashlib.md5(email.encode('utf-8')).hexdigest())
    yield from user.save()
    # make session cookie:
    r = web.Response()
    r.set_cookie(COOKIE_NAME,
                 user2cookie(user, 86400),
                 max_age=86400,
                 httponly=True)
    user.passwd = '******'
    r.content_type = 'application/json'
    r.body = json.dumps(user, ensure_ascii=False).encode('utf-8')
    return r
Exemplo n.º 19
0
def create_user(email, password):
    """
    Verify email isn't already in use.
    """
    if not User.query.filter_by(email=email).first() is None:
        return False
    """
    Basically a do while loop, keeps reassigning new_id until it finds one that doesn't have a user associated with it.
    Will most likely only run once, but might as well be safe.
    """
    condition = True
    new_id = 0
    while condition:
        new_id = random.randint(1, 100000000)
        condition = (not User.query.filter_by(user_id=new_id).first() is None)
    """
    Create the SALT associated with the user, this value is required to verify the password upon login, and must be saved.
    """
    SALT = generate_salt()
    """
    This is the value that we need to save, never save the actual password!!
    """
    hash_val = hash_pass(password, SALT)
    """
    Actually saving the user to the db
    """
    user = User(user_id=new_id,
                password=hash_val,
                salt=SALT,
                email=email,
                permission=0)
    db.session.add(user)
    db.session.commit()
    return True
Exemplo n.º 20
0
def set_db_user(bot_instance, message):
    db_user = UserRepository.get_by_id(message.from_user.id)
    if not db_user:
        UserRepository.insert(User(message.from_user))
        message.db_user = UserRepository.get_by_id(message.from_user.id)
    else:
        message.db_user = db_user
Exemplo n.º 21
0
def register():
    birthday = date(int(request.form['birthday_year']),
                    int(request.form['birthday_month']),
                    int(request.form['birthday_day']))

    try:
        username = request.form['username']
        new_user = User(username=username,
                        last_name=request.form['last_name'],
                        first_name=request.form['first_name'],
                        full_name=request.form['last_name'] +
                        request.form['first_name'],
                        password=request.form['password'],
                        email=request.form['email'],
                        birthday=birthday,
                        type=request.form['type'])
        new_user.save()
    except ValidationError as e:
        logger.warning('Failed to create new user. Exception: {}'.format(
            e.message))
        return jsonify({
            'success':
            0,
            'msg':
            '{}: {}'.format(error_msg.ILLEGAL_ARGUMENT,
                            ','.join(list(e.message.keys())))
        }), 400

    logger.info('Created new user: {}'.format(username))
    return jsonify({'success': 1})
Exemplo n.º 22
0
def add_tweet(tweet):
    if user_exists(tweet.user.id_str):
        user = User[tweet.user.id_str]
    else:
        user = User(id=tweet.user.id_str,
                    created_at=tweet.user.created_at,
                    name=tweet.user.name,
                    screen_name=tweet.user.screen_name)
    entities = tweet.entities
    if hasattr(tweet, 'extended_tweet'):
        text = tweet.extended_tweet['full_text']
        entities = tweet.extended_tweet['entities']
    elif hasattr(tweet, 'full_text'):
        text = tweet.full_text
    else:
        text = tweet.text

    Tweet(id=tweet.id_str,
          created_at=tweet.created_at,
          text=text,
          truncated=tweet.truncated,
          in_reply_to_status_id=tweet.in_reply_to_status_id_str,
          in_reply_to_user_id=tweet.in_reply_to_user_id_str,
          in_reply_to_screen_name=tweet.in_reply_to_screen_name,
          entities=entities,
          user=user)
Exemplo n.º 23
0
    def on_post(self, req, resp, *args, **kwargs):
        super(ResourceRegisterUser, self).on_post(req, resp, *args, **kwargs)

        aux_user = User()

        try:
            try:
                aux_genere = GenereEnum(req.media["genere"].upper())
            except ValueError:
                raise falcon.HTTPBadRequest(
                    description=messages.genere_invalid)

            aux_user.username = req.media["username"]
            aux_user.password = req.media["password"]
            aux_user.email = req.media["email"]
            aux_user.name = req.media["name"]
            aux_user.surname = req.media["surname"]
            aux_user.zone = ""
            aux_user.genere = aux_genere

            self.db_session.add(aux_user)

            try:
                self.db_session.commit()
            except IntegrityError:
                raise falcon.HTTPBadRequest(description=messages.user_exists)

        except KeyError:
            raise falcon.HTTPBadRequest(
                description=messages.parameters_invalid)

        resp.status = falcon.HTTP_200
Exemplo n.º 24
0
 def create_user(self, data, **kwargs):
     username = data['username']
     password = data['password']
     email = data['email']
     user = User(username=username, email=email)
     user.set_password(password)
     return user
Exemplo n.º 25
0
def add_user_form():
    if request.method == 'POST':
        name = request.form.get('name')
        last_name = request.form.get('last_name')
        email = request.form.get('email')
        senha = request.form.get('senha')
        age = request.form.get('age')
        hobby = request.form.get('hobby')
        try:
            user = User(
                name=name,
                last_name=last_name,
                email=email,
                password_hash=senha,
                age=age,
                hobby=hobby
            )
            user.password = senha
            db.session.add(user)
            db.session.commit()
            return redirect(url_for('auth.login'))
        except Exception as e:
            return (str(e))

    return render_template('cadastro.html')
Exemplo n.º 26
0
    def post_body(self, email):
        if validate_email(email) is not True:
            raise_400("Invalid email {}".format(email))

        with open_db_session() as session:
            user = session.query(User).filter(User.email == email).first()
            if user is None:
                user = User(email=email)
                session.add(user)
                session.flush()

            code = session.query(AuthCode).filter(
                AuthCode.user_id == user.id).first()
            if code is None:
                valid_to = datetime.datetime.utcnow() + datetime.timedelta(
                    minutes=5)
                code = AuthCode(token=uuid.uuid4().hex,
                                user_id=user.id,
                                code=generate_auth_code(),
                                valid_to=valid_to)
                session.add(code)
                session.flush()

            result = {'code': code.code, 'token': code.token}
            session.commit()
        return result
Exemplo n.º 27
0
def get_enterprise_detail(user_id, html):
    user = User(user_id)
    user.follows_num = enterprise.get_friends(html)
    user.fans_num = enterprise.get_fans(html)
    user.wb_num = enterprise.get_status(html)
    user.description = enterprise.get_description(html).encode('gbk', 'ignore').decode('gbk')
    return user
Exemplo n.º 28
0
 def create_tables(self, users: dict):
     Base.metadata.bind = self.__engine
     Base.metadata.drop_all()
     Base.metadata.create_all()
     users = [User(id=user_id, name=name) for user_id, name in users.items()]
     self.session.add_all(users)
     self.session.commit()
Exemplo n.º 29
0
def create_user(email, name, password):
    db = DbManager()
    user = User()
    user.name = name
    user.email = email
    user.password = password
    return db.save(user)
Exemplo n.º 30
0
 def setUp(self):
     super().setUp()
     self.username = '******'
     self.password = '******'
     self.user = User(username=self.username, password=self.password)
     db.session.add(self.user)
     db.session.commit()