class User(BaseDocument): name = db.StringField(verbose_name=u'name', max_length=100) email = db.EmailField(verbose_name=u'email', max_length=100, required=True, unique=True) pw_hash = db.StringField(verbose_name=u'Password Hash', max_length=100, required=True) is_superuser = db.BooleanField(verbose_name=u'Is Superuser', default=False) meta = {'indexes': ['email']} def __unicode__(self): return self.name def __init__(self, *args, **kwargs): password = kwargs.pop('password', None) super(User, self).__init__(*args, **kwargs) if password: self.set_password(password) def set_password(self, password): self.pw_hash = generate_password_hash( password, method=current_app.config['PROJECT_PASSWORD_HASH_METHOD']) def check_password(self, password): return check_password_hash(self.pw_hash, password)
class User(db.Document): user_id = db.IntField(unique=True) first_name = db.StringField(max_length=20) last_name = db.StringField(max_length=20) email = db.EmailField(max_length=30, unique=True) birthday = db.DateField() gender = db.StringField() address = db.StringField() suburb = db.StringField() postcode = db.IntField(length=4) description = db.StringField(max_length = 200) password = db.StringField(max_length=20) available = db.BooleanField(default=True) token = db.StringField() contacts = db.ListField(Contact) # profile_pic = def set_password(self, password): self.password = generate_password_hash(password) def get_password(self, password): return check_password_hash(self.password, password) def assign_token(self, id): secret = 'YUWA' token = str(jwt.encode({'id': id}, secret, algorithm='HS256')) self.token = token db.Users.update( {"_id": id}, {$set: {"token": token}} ) return token def invalidate_token(self, token): self.token = ""
class User(db.Document): username = db.StringField(db_field="u", required=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True) firstname = db.StringField(db_field="fn", max_length=50) lastname = db.StringField(db_field="ln", max_length=50) created = db.IntField(db_field="c", default=now())
class User(db.Document): username = db.StringField(db_field="u", required=True, unique=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True, unique=True) first_name = db.StringField(db_field="fn", max_length=50) last_name = db.StringField(db_field="ln", max_length=50) created = db.IntField(db_field="c", default=now()) bio = db.StringField(db_field="b", max_length=160) email_confirmed = db.BooleanField(db_field="ecf", default=False) change_configuration = db.DictField(db_field="cc") profile_image = db.StringField(db_field="i", default=None) # Make username and email all lowercase # This method is called before object is written to the database @classmethod # Do any manipulations you need to do within pre_save def pre_save(cls, sender, document, **kwargs): document.username = document.username.lower() document.email = document.email.lower() def profile_imgsrc(self, size): # return os.path.join(IMAGE_URL, "user", "%s.%s.%s.png" % (self.id, # self.profile_image, size)) return os.path.join( IMAGE_URL, "user", "{0}.{1}.{2}.png".format(self.id, self.profile_image, size)) # Add indexes meta = { "indexes": ["username", "email", "-created"] # -created means sort order reversed to get most recent members }
class User(db.Document): username = db.StringField(db_field="u", required=True, unique=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True, unique=True) first_name = db.StringField(db_field="fn", max_length=50) last_name = db.StringField(db_field="ln", max_length=50) created = db.IntField(db_field="c", default=now()) bio = db.StringField(db_field="b", max_length=160) email_confirmed = db.BooleanField(db_field="ecf", default=False) change_configuration = db.DictField(db_field="cc") profile_image = db.StringField(db_field="i", default=None) @classmethod def pre_save(cls, sender, document, **kwargs): document.username = document.username.lower() document.email = document.email.lower() def profile_imgsrc(self, size): if self.profile_image: if AWS_BUCKET: return os.path.join(AWS_CONTENT_URL, AWS_BUCKET, 'user', '%s.%s.%s.png' % (self.id, self.profile_image, size)) else: return url_for('static', filename=os.path.join(STATIC_IMAGE_URL, 'user', '%s.%s.%s.png' % (self.id, self.profile_image, size))) else: return url_for('static', filename=os.path.join(STATIC_IMAGE_URL, 'user', 'no-profile.%s.png' % (size))) meta = { 'indexes': ['username', 'email', '-created'] }
class User(db.Document): #create object for Mongo username=db.StringField(db_field="u", required = True, unique = True) #dbfield name in Mongo: single letter to save space password=db.StringField(db_field="p", required = True) email=db.EmailField(db_field="e", required = True, unique = True) first_name=db.StringField(db_field="fn", max_length=50) last_name=db.StringField(db_field="ln", max_length=50) created=db.IntField(db_field="c", default=now()) bio=db.StringField(db_field="b", max_length=200) email_confirmed=db.BooleanField(db_field="ec", default=False) change_configuration=db.DictField(db_field="cc") profile_image = db.StringField(db_field="i", default=None) @classmethod #for pre_save def pre_save(cls, sender, document, **kwargs): #always called before database save document.username = document.username.lower() document.email = document.email.lower() def profile_imgsrc(self, size): if self.profile_image: if AWS_BUCKET: return os.path.join(AWS_CONTENT_URL, AWS_BUCKET, 'user', '%s.%s.%s.png' % (self.id, self.profile_image, size)) else: return url_for('static', filename=os.path.join(STATIC_IMAGE_URL, 'user', '%s.%s.%s.png' % (self.id, self.profile_image, size))) else: return url_for('static', filename=os.path.join(STATIC_IMAGE_URL, 'user', 'no-profile.%s.png' % (size))) meta = { 'indexes': ['username', 'email', '-created'] #create indices to sort the data }
class User(db.Document): username = db.StringField(db_field="u", required=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True, unique=True) created = db.IntField(db_field="c", default=now()) userIntId = db.IntField(db_field="rI", default=now()) meta = {'indexes': ['username', 'email', '-created']}
class User(db.Document): email = db.EmailField(required=True, unique=True) alias = db.StringField(required=True, unique=True) password = db.StringField(min_length=8, required=True) emailVerified = db.BooleanField(default=False) lastLogin = db.DateTimeField() allowTracking = db.BooleanField(default=False) isMod = db.BooleanField(default=False)
class User(db.Document): username = db.StringField(db_field="u", required=True, unique=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True, unique=True) first_name = db.StringField(db_field="fn", max_length=50) last_name = db.StringField(db_field="ln", max_length=50) created = db.IntField(db_field="c", default=now()) bio = db.StringField(db_field="b", max_length=160) meta = {'indexes': ['username', 'email', '-created']}
class Company(db.Document): company_id = db.IntField( unique=True ) fc_id = db.IntField() company_name = db.StringField( max_lenght=50 ) email = db.EmailField( max_lenght=30, unique=True ) password = db.StringField() def set_password(self, password): self.password = generate_password_hash(password) def get_password(self, password): return check_password_hash(self.password, password)
class User(BaseDocument): username = db.StringField(verbose_name=u'login', max_length=30, required=True, unique=True) name = db.StringField(verbose_name=u'nome', max_length=100) email = db.EmailField(verbose_name=u'e-mail', max_length=100, required=True, unique=True) pw_hash = db.StringField(verbose_name=u'senha', max_length=100, required=True) is_active = db.BooleanField(verbose_name=u'ativo', default=True, required=True) is_superuser = db.BooleanField(verbose_name=u'super usuário', default=False, required=True) last_login = db.DateTimeField(verbose_name=u'último login', required=False) meta = {'indexes': ['username', 'email']} def __unicode__(self): return self.username def __init__(self, *args, **kwargs): password = kwargs.pop('password', None) super(User, self).__init__(*args, **kwargs) if password: self.set_password(password) def set_password(self, password): self.pw_hash = generate_password_hash( password, method=current_app.config['PROJECT_PASSWORD_HASH_METHOD']) def check_password(self, password): return check_password_hash(self.pw_hash, password) def refresh_last_login(self): self.last_login = datetime.now() self.save()
class User(db.Document): username = db.StringField(db_field='u', unique=True) password = db.StringField(db_field='pwd') email = db.EmailField(db_field='em', required=True, unique=True) first_name = db.StringField(db_field="fn", max_length=50, default=None) last_name = db.StringField(db_field="ln", max_length=50, default=None) created = db.IntField(db_field='c', default=now()) email_confirmed = db.BooleanField(db_field="ecf", default=False) change_configuration = db.DictField(db_field="cc") profile_image = db.StringField(db_field="i", default=None) facebook_link = db.StringField(db_field="fb") tel = db.StringField(db_field="tl") provider = db.StringField(db_field="pv", default='local') @classmethod def pre_save(cls, sender, document, **kwargs): #don't understand if document.username: document.username = document.username.lower() document.email = document.email.lower() def user_imgsrc(self, size): if self.profile_image: if AWS_BUCKET: return os.path.join( AWS_CONTENT_URL, AWS_BUCKET, 'user', '%s.%s.%s.png' % (self.id, self.profile_image, size)) else: return url_for( 'static', filename=os.path.join( STATIC_IMAGE_URL, 'user', '%s.%s.%s.jpg' % (self.id, self.profile_image, size))).replace( "%5C", "/") else: return url_for('static', filename=os.path.join( 'assets', 'default_image', 'default-profile.png')).replace('%5C', '/') #Class method to add Notification delete old one def add_notification(self, name, data): Notification.objects.filter(name=name, user_id=self.id).delete() n = Notification(name=name, payload_json=json.dumps(data), user_id=self.id) n.save() return n meta = {'indexes': ['username', 'email', '-created']}
class User(db.Document): username = db.StringField(db_field='u', required=True, unique=True) password = db.StringField(db_field='p', required=True) email = db.EmailField(db_field='e', required=True, unique=True) first_name = db.StringField(db_field='fn', max_length=50) last_name = db.StringField(db_field='ln', max_length=50) created = db.IntField(db_field='c', default=now()) bio = db.StringField(db_field='b', max_length=160) @classmethod def pre_save(cls, sender, document, **kwargs): document.username = document.username.lower() document.email = document.email.lower() meta = {'indexes': ['username', 'email', '-created']}
class User(db.Document): username = db.StringField(db_field='u', required=True) password = db.StringField(db_field='p', required=True) email = db.EmailField(db_field='e', required=True) first_name = db.StringField(db_field='fn', max_length=20) last_name = db.StringField(db_field='ln', max_length=20) created = db.IntField(db_field='cr', default=now()) bio = db.StringField(db_field='b', max_length=160) # @classmethod # decorator used to save the credentials in lowercase # def pre_save(cls, sender, document, **kwargs): # document.username = document.username.lower() # email.username = email.username.lower() # signals.pre_save.connect(User.pre_save, sender = User)
class User(db.Document): username = db.StringField(db_field="u", required=True, unique=True) password = db.StringField(db_field="p", required=True) email = db.EmailField(db_field="e", required=True, unique=True) first_name = db.StringField(db_field="fn", max_length=50) last_name = db.StringField(db_field="ln", max_length=50) created = db.IntField(db_field="c", default=now()) bio = db.StringField(db_field="b", max_length=160) email_confirmed = db.BooleanField(db_field="ecf", default=False) change_configuration = db.DictField(db_field="cc") @classmethod def pre_save(cls, sender, document, **kwargs): document.username = document.username.lower() document.email = document.email.lower() meta = {'indexes': ['username', 'email', '-created']}
class User(db.Document): username = db.StringField(db_field=DBFields.username.value, required=True, unique=True) password = db.StringField(db_field=DBFields.password.value, required=True) email = db.EmailField(db_field=DBFields.email.value, required=True, unique=True) first_name = db.StringField(db_field=DBFields.first_name.value, max_length=75) last_name = db.StringField(db_field=DBFields.last_name.value, max_length=50) created = db.IntField(db_field=DBFields.created.value, default=TimeUtils.now()) bio = db.StringField(db_field=DBFields.bio.value, max_length=50) meta = {'indexes': ['username', 'email', '-created']}
class Banned(db.Document): '''stores emails of people who are not allowed to make accounts''' email = db.EmailField(required=True) reason = db.StringField(max_length=1000)
class User(BaseDocument): control = db.EmbeddedDocumentField(Control, verbose_name=u'control', required=False) username = db.StringField(verbose_name=u'login', max_length=30, required=True, unique=True) name = db.StringField(verbose_name=u'nome', max_length=100) institution = db.StringField(verbose_name=u'institution', required=True, max_length=100) email = db.EmailField(verbose_name=u'e-mail', max_length=100, required=True, unique=True) pw_hash = db.StringField(verbose_name=u'senha', max_length=100, required=True) is_active = db.BooleanField(verbose_name=u'ativo', default=True, required=True) is_superuser = db.BooleanField(verbose_name=u'super usuário', default=False, required=True) last_login = db.DateTimeField(verbose_name=u'último login', required=False) meta = {'indexes': ['username', 'email', 'control', 'is_superuser']} def __unicode__(self): return self.username def __init__(self, *args, **kwargs): password = kwargs.pop('password', None) super(User, self).__init__(*args, **kwargs) if password: self.set_password(password) def set_password(self, password): self.pw_hash = generate_password_hash( password, method=current_app.config['PROJECT_PASSWORD_HASH_METHOD']) def add_project(self, project_name): self.control.projects.append(project_name) self.save() def remove_project(self, project_name): if project_name in self.control.projects: self.control.projects.remove(project_name) self.save() def check_password(self, password): return check_password_hash(self.pw_hash, password) def refresh_last_login(self): self.last_login = datetime.now() self.save() def change_active(self, is_active): self.is_active = is_active self.save() def change_superuser(self, is_superuser): self.is_superuser = is_superuser self.save() def add_control(self): self.control = Control(projects=[]) self.save()