예제 #1
0
class ContactUs(db.Model):
    __tablename__ = 'contactus'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    email = db.Column(db.String(100), nullable=False)
    phone = db.Column(db.String(100), nullable=False)
    message = db.Column(db.String(255), nullable=False)
예제 #2
0
class Children(db.Model):
    __tablename__ = 'children'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(255), nullable=False)
    age = db.Column(db.String(10), nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False)
    user = db.relationship('User',
                           backref='user_children',
                           foreign_keys=[user_id])
예제 #3
0
class Admin(db.Model):
    __tablename__ = 'admins'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    email = db.Column(db.String(100), nullable=False)
    role = db.Column(db.String(100), nullable=False)
    password = db.Column(db.String(100), nullable=False)
    thumbnail = db.Column(db.String(100),
                          nullable=False,
                          default="defaultimg.jpg")

    def __repr__(self):
        return f"User('{self.name}','{self.email}','{self.role}', '{self.thumbnail}')"
예제 #4
0
class Upload(db.Model):
    __tablename__ = 'uploads'
    id = db.Column(db.Integer, primary_key=True)
    cv = db.Column(db.String(255), nullable=True)
    death_cert = db.Column(db.String(255), nullable=True)
    insurance_doc = db.Column(db.String(255), nullable=True)
    driver_license = db.Column(db.String(255), nullable=True)
    national_id = db.Column(db.String(255), nullable=True)
    int_passport = db.Column(db.String(255), nullable=True)
    others = db.Column(db.String(255), nullable=True)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False)
    user = db.relationship('User',
                           backref='user_uploads',
                           foreign_keys=[user_id])
예제 #5
0
class Officer(db.Model):
    __tablename__ = 'officers'
    id = db.Column(db.Integer, primary_key=True)
    first_name = db.Column(db.String(100), nullable=False)
    last_name = db.Column(db.String(100), nullable=False)
    state_of_origin = db.Column(db.String(100), nullable=False)
    service_no = db.Column(db.String(100), nullable=False)
    rank = db.Column(db.String(100), nullable=False)
    dod = db.Column(db.String(100), nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'), nullable=False)
    user = db.relationship('User',
                           backref='user_officers',
                           foreign_keys=[user_id])
예제 #6
0
class User(db.Model, UserMixin):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    first_name = db.Column(db.String(100), nullable=False)
    last_name = db.Column(db.String(100), nullable=False)
    email = db.Column(db.String(100), nullable=False)
    phone = db.Column(db.String(100), unique=True, nullable=False)
    password = db.Column(db.String(255), nullable=False)
    address = db.Column(db.String(255), nullable=False)
    state_of_resident = db.Column(db.String(100), nullable=False)
    dob = db.Column(db.String(100), nullable=False)
    occupation = db.Column(db.String(100), nullable=False)
    interest = db.Column(db.String(100), nullable=False)
    thumbnail = db.Column(db.String(255),
                          nullable=False,
                          default="thubmnail.jpg")
    number_of_children = db.Column(db.String(100), nullable=False, default=0)
    signed_up_at = db.Column(db.DateTime(), default=datetime.utcnow)
    verified = db.Column(db.Boolean, unique=False, default=False)
    verified_at = db.Column(db.String(100),
                            nullable=False,
                            default="Not Verified")
    officer = db.relationship('Officer', backref='users', lazy=True)
    uploads = db.relationship('Upload', backref='users', lazy=True)
    children = db.relationship('Children', backref='users', lazy=True)

    def get_reset_token(self, expires_sec=1800):
        s = Serializer(current_app.config['SECRET_KEY'], expires_sec)
        return s.dumps({'user_id': self.id}).decode('utf-8')

    @staticmethod
    def verify_reset_token(token):
        s = Serializer(current_app.config['SECRET_KEY'])
        try:
            user_id = s.loads(token)['user_id']
        except:
            return None
        return User.query.get(user_id)

    def __repr__(self):
        return f"User('{self.first_name}','{self.last_name}','{self.phone}', '{self.thumbnail}')"