Ejemplo n.º 1
0
 def generate_avatar(self):
     avatar = Identicon()
     filenames = avatar.generate(text=self.username)
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
     db.session.commit()
Ejemplo n.º 2
0
    def test_identicon(self):
        current_app.config['AVATARS_SAVE_PATH'] = basedir

        avatar = Identicon()
        filenames = avatar.generate(text='grey')
        self.assertEqual(filenames[0], 'grey_s.png')
        self.assertEqual(filenames[1], 'grey_m.png')
        self.assertEqual(filenames[2], 'grey_l.png')

        self.assertTrue(
            os.path.exists(
                os.path.join(current_app.config['AVATARS_SAVE_PATH'],
                             filenames[0])))
        self.assertTrue(
            os.path.exists(
                os.path.join(current_app.config['AVATARS_SAVE_PATH'],
                             filenames[1])))
        self.assertTrue(
            os.path.exists(
                os.path.join(current_app.config['AVATARS_SAVE_PATH'],
                             filenames[2])))

        # comment out these two lines to check the generated image, then delete them manually.
        for filename in filenames:
            os.remove(os.path.join(basedir, filename))
Ejemplo n.º 3
0
 def generate_avatar(self):
     avatar = Identicon()
     filenames = avatar.generate(text=uuid.uuid4().hex)
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
     db.session.commit()
Ejemplo n.º 4
0
def register():
    results = {}

    username = request.form.get('username')
    password = request.form.get('password')
    nickname = request.form.get('nickname')
    email = request.form.get('email')
    code = check_register_form(username, password, nickname, email)

    avatar = Identicon()
    filenames = avatar.generate(text=username)

    msg = Msg[code]

    if code == 0:
        user = User(
            username=username,
            nickname=nickname,
            email=email,
            avatar=filenames[1],
        )
        user.set_password(password)
        db.session.add(user)
        db.session.commit()

    results['code'] = code
    results['msg'] = msg

    return json.dumps(results)
Ejemplo n.º 5
0
 def generate_avatar(self):
     avatar = Identicon()  # 首先实例化处理头像的扩展包
     filenames = avatar.generate(
         text=self.username)  # 先使用 generate()方法获取生成九宫格头像的对象,text参数生成随机文本
     self.avatar_s = filenames[0]  # 然后将生成的3个不同大小文件名分别赋值给User模型的3个字段
     self.avatar_m = filenames[1]  # [0,1,2]分别代表3种不同尺寸
     self.avatar_l = filenames[2]
     db.session.commit()
Ejemplo n.º 6
0
 def generate_avatar(self):
     avatar = Identicon()
     filenames = avatar.generate(
         text=''.join(random.sample('zyxwvutsrqponmlkjihgfedcba', 10)))
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
     db.session.commit()
Ejemplo n.º 7
0
 def generate_avatar(self):
     avatar = Identicon()
     filenames = avatar.generate(text=self.gravatar_hash())
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
     db.session.add(self)
     return True
Ejemplo n.º 8
0
 def generate_avatar(self):
     if self.from_admin:
         self.avatar = "admin.jpg"
     else:
         avatar = Identicon()
         filenames = avatar.generate(text=self.name)
         self.avatar = filenames[1]
         db.session.commit()
Ejemplo n.º 9
0
def index():
    avatar = Identicon()
    random_text = uuid.uuid4().hex
    filenames = avatar.generate(text=random_text)
    url_s = url_for('get_avatar', filename=filenames[0])
    url_m = url_for('get_avatar', filename=filenames[1])
    url_l = url_for('get_avatar', filename=filenames[2])
    return render_template('index.html', url_s=url_s, url_m=url_m, url_l=url_l)
def register():
    if current_user.is_authenticated:
        return redirect(url_for('homepage.index'))

    form = RegisterForm()

    if form.validate_on_submit():
        name = form.name.data
        phone = str(form.phone.data)
        email = form.email.data
        password = form.password.data
        role = form.role.data
        organization = form.organization.data

        check_email = User_auth.query.filter_by(email=email).first()
        if check_email:
            flash('该邮箱已被注册,请尝试直接登录', 'warning')
            return render_template('auth/register.html', form=form)

        check_phone = User_auth.query.filter_by(phone=phone).first()
        if check_phone:
            flash('该号码已被注册,请尝试直接登录', 'warning')
            return render_template('auth/register.html', form=form)

        if role != 0 and organization is None:
            flash('校名/机构名不能为空!', 'warning')
            return render_template('auth/register.html', form=form)

        seed = getNewSeed()
        avatar = Identicon()
        filenames = avatar.generate(text=random_avatar())[2]

        user_auth = User_auth(seed=seed,
                              phone=phone,
                              email=email,
                              role=role,
                              image=filenames)
        user_auth.set_password(password)
        db.session.add(user_auth)

        if role == "1":  #Student
            user = Student(seed=seed, name=name)
            db.session.add(user)
        elif role == "2":  #School
            user = School(seed=seed, name=name, organization=organization)
            db.session.add(user)
        elif role == "3":  #Institution
            user = Institution(seed=seed, name=name, organization=organization)
            db.session.add(user)

        db.session.commit()

        message = '注册成功,你的Seed为:' + seed + ',请妥善保管'
        flash(message, 'info')
        return redirect(url_for('auth.login'))

    return render_template('auth/register.html', form=form)
Ejemplo n.º 11
0
 def generate_avatar(self):
     avatar_path = os.path.join(current_app.config['ALBUMY_UPLOAD_PATH'],
                                'avatars')
     if not os.path.exists(avatar_path):
         os.mkdir(avatar_path)
     avatar = Identicon()
     filenames = avatar.generate(text=self.username)
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
     db.session.commit()
Ejemplo n.º 12
0
def generate_avatar(username):
    """
    Generate avatars by default
    :param username: user name to generate file name of which avatar will be
    stored
    :type:
    :return:

    """
    avatar = Identicon()
    return avatar.generate(text=username)
Ejemplo n.º 13
0
 def generate_avatar(self):
     avatar = Identicon()
     filenames = avatar.generate(self.name)
     self.avatar_s = filenames[0]
     self.avatar_m = filenames[1]
     self.avatar_l = filenames[2]
Ejemplo n.º 14
0
 def generate_avatar(self):
     icon = Identicon()
     files = icon.generate(self.username)
     self.avatar = '/accounts/avatar/' + files[2]
     db.session.commit()
Ejemplo n.º 15
0
 def gravatar(self, text="default"):
     avatar = Identicon()
     filename = avatar.generate(text=text)
     img_url = send_from_directory(current_app.config['AVATARS_SAVE_PATH'], filename)
     self.avatar_url = img_url
Ejemplo n.º 16
0
	def generate_avatars(self):
		avatar = Identicon()
		filenames = avatar.generate(text=self.username)
		self.avatar_s, self.avatar_m, self.avatar_l = filenames
		db.session.commit()