def setUp(self):
     self.app = app
     self.client = self.app.test_client
     self.app.testing = True
     self.Sir3n = User('*****@*****.**', 'Kali2017', 'Dhulkifli',
                       'Hussein')
     self.Johndoe = User('*****@*****.**', 'Kali2017', 'John', 'Doe')
Ejemplo n.º 2
0
def seed_data():

    Lucy_Wilson_key = Teacher(name="Lucy Wilson").put()
    Chuck_Rosenthal_key = Teacher(name="Chuck Rosenthal").put()
    Paul_A_Harris_key = Teacher(name="Paul A. Harris").put()
    Michael_Berg_key = Teacher(name="Michael Berg").put()
    Alissa_Crans_key = Teacher(name="Alissa Crans").put()
    Blake_Mellor_key = Teacher(name="Blake Mellor").put()
    David_Moffet_key = Teacher(name="David Moffet").put()
    Eric_Strauss_key = Teacher(name="Eric Strauss").put()
    John_Dorsey_key = Teacher(name="John Dorsey").put()
    Jennifer_Abe_key = Teacher(name="Jennifer Abe").put()
    Nadia_Y_Kim_key = Teacher(name="Nadia Y. Kim").put()
    Alicia_Partnoy_key = Teacher(name="Alicia Partnoy").put()

    English_key = Course(name = "English", teachers = [Lucy_Wilson_key, Chuck_Rosenthal_key, Paul_A_Harris_key]).put()
    Math_key = Course(name = "Math", teachers = [Michael_Berg_key, Alissa_Crans_key, Blake_Mellor_key]).put()
    Science_key = Course(name = "Science", teachers = [David_Moffet_key, Eric_Strauss_key, John_Dorsey_key]).put()
    Social_Studies_key = Course(name = "SocialStudies", teachers = [Jennifer_Abe_key, Nadia_Y_Kim_key, Alicia_Partnoy_key]).put()

    User_One_key = User(name="User One Name", username="******", email="*****@*****.**").put()
    User_Two_key = User(name="User Two Name", username="******", email="*****@*****.**").put()
    User_Three_key = User(name="User Three Name", username="******", email="*****@*****.**").put()

    Enrollment(user=User_One_key, course=Math_key).put()
    Enrollment(user=User_One_key, course=Science_key).put()
    Enrollment(user=User_Two_key, course=Social_Studies_key).put()
    Enrollment(user=User_Two_key, course=Science_key).put()
    Enrollment(user=User_Three_key, course=English_key).put()
    Enrollment(user=User_Three_key, course=Science_key).put()
Ejemplo n.º 3
0
def register_page():
    form = RegisterForm()
    if form.validate_on_submit():
        session = create_session()
        user = User().fill(email=form.email.data,
                           name=form.name.data,
                           surname=form.surname.data,
                           patronymic=form.patronymic.data,
                           city=form.city.data,
                           birthday=form.birthday.data,
                           email_notifications=form.email_notifications.data)
        user.set_password(form.password.data)
        if request.args.get('user_id', 0):
            user.vk_id = int(request.args.get('user_id'))
            user.integration_with_VK = True
        session.add(user)
        session.commit()
        if user.integration_with_VK:
            link = 'https://vk.com/' + request.args.get('screen_name')
            msg = Message(subject='Привязка ВКонтакте - MatBoy',
                          recipients=[user.email],
                          sender=config.MAIL_DEFAULT_SENDER,
                          html=render_template(
                              'mails/email/vk_notifications.html',
                              link=link,
                              user_id=user.id))
            thr_email = Thread(target=send_message, args=[msg])
            thr_email.start()
            flash('Для активации бота следуйте интрукциям на почте', 'success')
        return redirect("/login")
    return render_template("register.html", form=form)
Ejemplo n.º 4
0
    def save_to_firebase(self):
        validation = self.validate()
        if validation:
            print("validation success")
            email = self.lineEdit_Login.text()
            password = self.lineEdit_Senha.text()
            name = self.lineEdit_nome.text()
            cpf = self.lineEdit_CPF.text()

            #Remove dots and dashes from CPF
            from re import sub as re_sub
            cpf = re_sub('[.-]', '', cpf)

            user = User(email, name, cpf, LevelOfAccess.COMMON_USER)

            auth.create_user_with_email_and_password(email, password)
            db.child('users').push(user.to_dict())

            msg = QtWidgets.QMessageBox()
            msg.setIcon(QtWidgets.QMessageBox.NoIcon)
            msg.setText("Sucesso")
            msg.setInformativeText("Cadastrado com sucesso!")
            msg.setWindowTitle("Sucesso")
            msg.exec_()

            global loggedUser

            if self.mainWindow:
                if loggedUser != None and loggedUser.level == LevelOfAccess.ADMIN:
                    self.mainWindow.stackedWidget.setCurrentIndex(4)
                else:
                    self.mainWindow.stackedWidget.setCurrentIndex(0)
        else:
            print("validation error")
Ejemplo n.º 5
0
def createUser(login_session):
    newUser = User(name=login_session['username'], email=login_session[
                   'email'], picture=login_session['picture'])
    session.add(newUser)
    session.commit()
    user = session.query(User).filter_by(email=login_session['email']).one()
    return user.id
Ejemplo n.º 6
0
 def recur():
     snm = "TEST" + str(randint(10000, 99999999))
     go = True if User.query.filter_by(name=snm
                                       ).first() is None else False
     if not go:
         return recur()
     db.session.add(User(snm, snm, role))
Ejemplo n.º 7
0
 def summaryFavorite(self):
     self.user = User(self.body['context']['System']['user']['userId'])
     msg = []
     for code in self.user.data['symbol']:
         print(code)
         msg += self.stockSummary(code, no_news=True)[1]
     msg += ['자세한 뉴스 내용을 알고싶으시면 종목이름 뉴스 알려줘 라고 말씀해주세요.']
     return 'SpeechList', msg, True, None
Ejemplo n.º 8
0
 def currentFavorite(self):
     self.user = User(self.body['context']['System']['user']['userId'])
     if len(self.user.data['symbol']) == 0:
         return 'SimpleSpeech', '현재 관심종목이 없어요.', False, None
     cfs = ', '.join(
         [code_to_name[symbol] for symbol in self.user.data['symbol']])
     print(self.user.data)
     return 'SimpleSpeech', '현재 관심종목은 {}에요'.format(cfs), False, None
Ejemplo n.º 9
0
def add_user():
    name = request.args.get('name')
    email = request.args.get('email')
    u = User(username=name, email=email)
    db.session.add(u)
    db.session.commit()
    userstr = str(u)
    return '%s - %s' % (u.username, u.email)
Ejemplo n.º 10
0
 def addme(self, queue_name, first_name, last_name, username, user_id,
           date):
     queue_id = Queue.find_by_name(self.conn, queue_name)
     if queue_id:
         User(first_name, last_name, username, user_id).insert(self.conn)
         UserQueue(user_id, queue_id, date).insert(self.conn)
     else:
         BOT.send_message(self.chat_id,
                          'There is no queue named "{}"'.format(queue_name))
Ejemplo n.º 11
0
    def map_user(self, discord_member_id, discord_member_name, steem_account):
        new_user = User()
        new_user.discord_member_name = discord_member_name
        new_user.discord_member_id = discord_member_id
        new_user.steem_account = steem_account
        new_user.verification_status = VS_PENDING

        self.sa_session.add(new_user)
        self.sa_session.commit()
Ejemplo n.º 12
0
 def loadlist(self, data):
     self.active_users = []
     json_dict = json.loads(data)
     for k in json_dict["data"]:
         user = User(k['username'], k['ip'])
         self.active_users.append(user)
     self.controller.client.active_users = self.active_users
     gui_dict = {"name": "active_users", "data": self.active_users}
     self.queue.put(gui_dict)
     print(gui_dict)
Ejemplo n.º 13
0
 def setUp(self):
     app.secret_key = '\xfd{H\xe5<\x95\xf9\xe3\x96.5\xd1\x01O<!\xd5\xa2\xa0\x9fR"\xa1\xa8'
     self.recipe = Recipe()
     self.user = User()
     self.upVote = UpVote()
     self.movie_data = {'id':'5XXXXX', 'title':'Movie one', 'details':'this movie is very funny', 'link':'  https://www.youtube.com/embed/VIDEOID', 'created_by':'Moses','votes':0, 'status':False}
     self.user_data = {'id':'5XXXXX','name':'Moses','email':'*****@*****.**','username':'******','password':'******', 'confirm':'12345'}
     self.user_data2 = {'id':'5XXXXX','name':'Moses','email':'*****@*****.**','username':'******','password':'******', 'confirm':'12345'}
     self.user_data3 = {'id':'5XXXXX','name':'Moses','email':'*****@*****.**','username':'******','password':'******', 'confirm':'12345'}
     self.upvote_data = {'id':'1XXXXX', 'movie_id':'5XXXXX','voted_by':'Mosebadus'}
 def test_login_user_with_wrong_password(self):
     self.Sir3n = User('*****@*****.**', 'Kali2017', 'Dhulkifli',
                       'Hussein')
     login = self.app.test_client().post('/login',
                                         data={
                                             "email": '*****@*****.**',
                                             "password": '******'
                                         },
                                         follow_redirects=True)
     assert b'Password does not match. Please try again' in login.data
Ejemplo n.º 15
0
def register(message):
    chat_id = message.chat.id
    text = message.text
    if not (len(text) < 15):
        msg = bot.send_message(chat_id, 'incorrect login')
        bot.register_next_step_handler(msg, register)
        return
    user = User(chat_id, text, 0, 0)
    user.get_id(chat_id, text)
    msg = bot.send_message(chat_id, 'Вперед!')
    main_menu(msg)
Ejemplo n.º 16
0
def main_menu(message):
    global user
    chat_id = message.chat.id
    text = message.text
    user = User(chat_id, text, 0, 0)
    keyboard = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True)
    button_play = types.KeyboardButton(text="Играть")
    button_file = types.KeyboardButton(text="Материалы")
    button_stat = types.KeyboardButton(text="Статистика")
    keyboard.add(button_play, button_file, button_stat)
    msg = bot.send_message(message.chat.id, 'Добро пожаловать', reply_markup=keyboard)
 def test_user_is_taken_to_recipe_page_after_login(self):
     self.Kali = User('*****@*****.**', 'Kali2017', 'Dhulkifli', 'Hussein')
     login = self.app.test_client().post(
         '/login',
         data={
             "email": '*****@*****.**',
             "password": '******'
         },
         follow_redirects=True,
     )
     assert b'myrecipes' in login.data
Ejemplo n.º 18
0
def setup_user():
    import yaml
    from data import signage_db, User

    with open("./web.yml", 'r') as ymlfile:
        cfg = yaml.load(ymlfile)
        username, password = cfg['upload_user'].split(':')
        user = User(username=username)
        user.hash_password(password)
        signage_db.session.add(user)
        signage_db.session.commit()
        print("added access user")
Ejemplo n.º 19
0
 def post(self):
     args = self.parser.parse_args()
     session = create_session()
     user = User(
         nickname=args['nickname'],
         name=args['name'],
         surname=args['surname'],
         age=args['age'],
         email=args['email']
     )
     session.add(user)
     session.commit()
     return jsonify({'success': 'OK'})
Ejemplo n.º 20
0
 def getUsers(self, uids):
     client = self._bollowRedis()
     pipe = client.pipeline()
     for uid in uids:
         key = self.__getKey(uid)
         name = pipe.hget(key, UserStore.FIELD_NAME)
     names = pipe.execute()
     rlist = []
     for i in range(len(uids)):
         uid = uids[i]
         name = names[i]
         user = User(uid, name)
         rlist.append(user)
     return rlist
Ejemplo n.º 21
0
def populate_user(n, db=True):
    user_list = list()
    with mysql_connector() as m:
        m.cursor.execute("DELETE FROM USER;")
        for i in range(n):
            user_name = fake.name()
            user_age = myPRNG.randint(15, 35)
            execution_string = "INSERT INTO USER VALUES (" + str(i) + ", '" + user_name + "', " \
                               + str(user_age) + ");"
            user = User(i, user_name, user_age)
            user_list.append(user)
            if db:
                m.cursor.execute(execution_string)
        return user_list
Ejemplo n.º 22
0
def sign_up():
    """Gives user ability to sign-up
    stores their information in userdata dictionery
    which will be used during login"""
    form = RegistrationForm(request.form)
    if request.method == 'POST' and form.validate():
        # email is used here to as a unique value for every user object
        email = form.email.data  # actual email used as object name
        email = User(form.email.data, form.password.data, form.first_name.data,
                     form.last_name.data)
        session['email'] = email.user_id
        flash('You are now registered and can login', 'success')
        return redirect(url_for('login'))
    return render_template('Sign-up.html', form=form)
Ejemplo n.º 23
0
def webhook_handler():
    if flask.request.method == "POST":

        # Retrieve the message in JSON and then transform it to Telegram object
        update = telegram.Update.de_json(flask.request.get_json(force=True),
                                         bot)

        if update.message:
            # Regular message
            text = update.message.text
            user_id = update.message.from_user.id
            chat_id = update.message.chat_id
            username = update.message.from_user.username
            message_id = None
        elif update.callback_query:
            # Callback query
            text = update.callback_query.data
            user_id = update.callback_query.from_user.id
            chat_id = update.callback_query.message.chat_id
            username = update.callback_query.from_user.username
            message_id = update.callback_query.message.message_id
        else:
            logging.error("Received unknown update!")
            return constants.RESPONSE_OK

        # User must have username
        if not username:
            bot.sendMessage(chat_id, constants.ERROR_NO_USERNAME)
            return constants.RESPONSE_OK

        # Retrieve/Create user
        user = User.get_by_id(user_id)
        if not user:
            # New user
            logging.info("User %s not found! Creating new user...", user_id)
            user = User(id=user_id, chat_id=chat_id, username=username)
            user.put()
        else:
            # Existing user
            user.last_activity_date = datetime.now()
            if username != user.username:
                logging.debug("User %s has changed username from %s to %s",
                              user_id, user.username, username)
                user.username = username
            user.put()

        commands.handle_input(user, text, message_id)

        return constants.RESPONSE_OK
Ejemplo n.º 24
0
def register_page():
    form = RegisterForm()
    if form.validate_on_submit():
        session = create_session()
        user = User().fill(email=form.email.data,
                           name=form.name.data,
                           surname=form.surname.data,
                           patronymic=form.patronymic.data,
                           city=form.city.data,
                           birthday=form.birthday.data,)
        user.set_password(form.password.data)
        session.add(user)
        session.commit()
        return redirect("/login")
    return render_template("register.html", form=form)
Ejemplo n.º 25
0
 def removeFavorite(self):
     self.user = User(self.body['context']['System']['user']['userId'])
     try:
         symbol = self.body['request']['intent']['slots']['symbol']['value']
         symbol_code = name_to_code[symbol]
     except (KeyError, TypeError) as e:
         symbol = None if 'symbol' not in locals() else symbol
         return self.no_symbol(symbol,
                               sessionAttributes={'name': 'addFavorite'})
     self.user.data = self.user.data.loc[
         self.user.data['symbol'] != symbol_code, :].dropna()
     self.user.save_data()
     return 'SimpleSpeech', symbol + '를 관심종목에서 제거하였어요. 계속 제거를 원하시면 종목 이름을 말씀해 주세요.', False, {
         'name': 'removeFavorite'
     }
Ejemplo n.º 26
0
def register(username, password):
    session = db_session.create_session()
    user = session.query(User).filter(User.username == username).first()
    if user:
        raise LocalApi.DuplicateError(
            f'User with this username already exists: "{username}"',
            duptype='username')

    if len(password) < 5:
        raise LocalApi.PasswordError('This password is too simple')

    user = User(username=username)
    user.set_password(password)
    session.add(user)
    session.commit()
Ejemplo n.º 27
0
def register(username, password, first_name, last_name, email):
    """
    Register a new user with given details, then log them in.

        Parameters:
            username (str): username of new user
            password (str): password of new user
            first_name (str): first name of new user
            last_name (str): last name of new user
            email (str): email address of new user

        Returns:
            None

        Exceptions:
            InputError when any of:
                username longer than 20 characters or empty or not unique
                password shorter than 6 characters
                first_name or last_name longer than 30 characters, or not
                                        alphabetic or empty
                email empty or not unique
    """
    if not len(username) or len(username) > MAX_USERNAME:
        raise InputError("Username length invalid")

    if len(password) < 6:
        raise InputError("Password too short")

    if not len(first_name) or len(first_name) > 30 or not first_name.isalpha():
        raise InputError("First name invalid")

    if not len(last_name) or len(last_name) > 30 or not last_name.isalpha():
        raise InputError("Last name invalid")

    if not email:
        raise InputError("Email is required")

    if data.users.get(username):
        raise InputError("Username already in use")

    for u in data.users:
        if data.users[u].email == email:
            raise InputError("Email already in use")

    hash_pwd = sha256(password.encode()).hexdigest()
    new_user = User(username, hash_pwd, email, first_name, last_name)
    data.users[username] = new_user
    log_in(username, password)
Ejemplo n.º 28
0
def get_user_public_info(user_id=None, username=None):
    if username is None and user_id is None:
        raise LocalApi.InvalidCall('no one from username and user_id set')
    session = db_session.create_session()
    user: User
    if user_id is not None:
        user = session.query(User).get(user_id)
    else:
        user = session.query(User).filter(User.username == username).first()
    if user is None:
        raise LocalApi.NotFoundError
    return User(id=user.id,
                username=user.username,
                fullname=user.fullname,
                about=user.about,
                background_image_url=user.background_image_url)
Ejemplo n.º 29
0
 def post(self):
     args = UsersResource.reg_pars.parse_args()
     session = create_session()
     abort_if_email_exist(session, args['email'])
     user = User().fill(
         email=args['email'],
         name=args['name'],
         surname=args['surname'],
         patronymic=args['patronymic'],
         city=args['city'],
         birthday=args['birthday'],
     )
     user.set_password(args['password'])
     session.add(user)
     session.commit()
     return jsonify({"success": "ok"})
Ejemplo n.º 30
0
def registration():
    form = RegisterForm()
    if form.validate_on_submit():
        session = create_session()
        user = User(
            name=form.name.data,
            surname=form.surname.data,
            email=form.email.data,
            age=form.age.data,
            nickname=form.nickname.data,
        )
        user.set_password(form.password.data)
        session.add(user)
        session.commit()
        return redirect('/login')
    return render_template('registration.html',
                           title='Registration',
                           form=form)