class ElectoralRoll(db.Model):
    '''
		Contains Master Details
	'''

    __tablename__ = 'ElectoralRoll'

    voterId = db.Column(db.Integer, nullable=False, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    branch = db.Column(db.String(100), nullable=False)
    year = db.Column(db.Integer, nullable=False)
    email = db.Column(db.String(256), nullable=False, unique=True)
    contact = db.Column(db.String(10), nullable=False, unique=True)

    def __repr__(self):
        return 'ElectoralRoll: < ' + self.voterId + ':' + self.name + ':' + self.branch + ':' + self.year + ':' + self.email + ':' + self.contact + '>'

    def __init__(self, voterId, name, branch, year, email, contact):
        self.voterId = voterId
        self.name = name
        self.branch = branch
        self.year = year
        self.email = email
        self.contact = contact

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
Beispiel #2
0
class Coordinator(db.Model):

	__tablename__ = 'Coordinator'

	userId = db.Column(db.String(10), db.ForeignKey('User.pecfestId'), primary_key=True)
	password = db.Column(db.String(10), nullable=False)
	level = db.Column(db.String(10), nullable=False)

	def __str__(self):
		return "[" + self.userId + "] " + self.level
Beispiel #3
0
class Participant(db.Model):

    __tablename__ = 'Participant'

    pecfestId = db.Column(db.String(10), primary_key=True)
    firstName = db.Column(db.String(256), nullable=False)
    lastName = db.Column(db.String(256), nullable=False)
    collegeName = db.Column(db.String(256), nullable=False)
    emailId = db.Column(db.String(100), nullable=False)
    mobileNumber = db.Column(db.String(10), nullable=False)
    gender = db.Column(db.String(10), nullable=False)
    accomodation = db.Column(db.String(10), nullable=False)
    verified = db.Column(db.Integer, nullable=False)
    smsCounter = db.Column(db.Integer, default=0)
    password = db.Column(db.String(300), nullable=False)

    def __repr__(self):
        return 'User: <' + self.pecfestId + ':' + self.password + '>'

    def set_password(self, password):
        self.password = generate_password_hash(password)

    def check_password(self, password):
        return check_password_hash(self.password, password)

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
Beispiel #4
0
class SentSMS(db.Model):

    __tablename__ = 'sent_sms'

    id = db.Column(db.Integer, primary_key=True)
    smsId = db.Column(db.String(255), nullable=False)
    mobile = db.Column(db.String(10), nullable=False)
    smsType = db.Column(db.Integer, nullable=False)

    # 1 for pending, 2 for delivered, 3 for rejected
    status = db.Column(db.Integer, nullable=False)
class Notifications(db.Model):
    __tablename__ = 'Notifications'

    notificationId = db.Column(db.String(10), primary_key=True)
    notificationTitle = db.Column(db.String(100), nullable=False)
    notificationDetails = db.Column(db.String(4096), nullable=True)
    eventId = db.Column(db.Integer,
                        db.ForeignKey('Event.eventId'),
                        nullable=False)
    notificationType = db.Column(db.String(10), nullable=False)

    notif_rel = relationship('Event')
Beispiel #6
0
class OTPs(db.Model):

    __tablename__ = 'OTPs'

    mobile = db.Column(db.String(10), primary_key=True)
    otp = db.Column(db.String(6), nullable=False)

    def __repr__(self):
        return 'ID: <' + self.mobile + ':' + self.otp + '>'

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
Beispiel #7
0
class Elections(db.Model):
    '''
		Contains Details of all elections
	'''

    __tablename__ = "Elections"

    electionId = db.Column(db.Integer,
                           nullable=False,
                           primary_key=True,
                           autoincrement=True)
    electionName = db.Column(db.String(1000), nullable=False)
    description = db.Column(db.Text, nullable=True)
    startTime = db.Column(db.DateTime, nullable=False)
    endTime = db.Column(db.DateTime, nullable=False)
    hostId = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return 'Electons: < ' + self.hostId + ':' + self.electionId + ':' + self.electionName + ':' + self.description + ':' + self.startTime + ':' + self.endTime + '>'

    def __init__(self, hostId, electionId, electionName, description,
                 startTime, endTime):
        self.electionId = electionId
        self.electionName = electionName
        self.description = description
        self.startTime = startTime
        self.endTime = endTime
        self.hostId = hostId

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
Beispiel #8
0
class User(db.Model):
    '''
		Contain details of a user.
	'''

    __tablename__ = 'User'

    pecfestId = db.Column(db.String(10), primary_key=True)
    name = db.Column(db.String(256), nullable=False)
    college = db.Column(db.String(256), nullable=False)
    email = db.Column(db.String(100), nullable=False)
    mobile = db.Column(db.String(10), nullable=False)
    gender = db.Column(db.String(10), nullable=False)
    accomodation = db.Column(db.String(255), nullable=False)
    verified = db.Column(db.Integer, nullable=False)
    smsCounter = db.Column(db.Integer, default=0)

    def __repr__(self):
        return 'User: <' + self.pecfestId + ':' + self.name + '>'

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
class EventRegistration(db.Model):

    __tablename__ = 'Registration'

    id = db.Column(db.Integer, primary_key=True)
    eventId = db.Column(db.Integer,
                        db.ForeignKey('Event.eventId'),
                        nullable=False)
    memberId = db.Column(db.String(10),
                         db.ForeignKey('User.pecfestId'),
                         nullable=False)
    leaderId = db.Column(db.String(10),
                         db.ForeignKey('User.pecfestId'),
                         nullable=False)

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
Beispiel #10
0
class Candidate(db.Model):
    '''
		Info about candidates
	'''
    __tablename__ = "Candidate"

    voterId = db.Column(db.Integer,
                        db.ForeignKey('ElectoralRoll.voterId'),
                        nullable=False)
    electionId = db.Column(db.Integer,
                           db.ForeignKey('Elections.electionId'),
                           nullable=False)
    name = db.Column(db.String(100), nullable=False)
    manifesto = db.Column(db.Text, nullable=True)
    uId = db.Column(db.Integer, primary_key=True, autoincrement=True)

    def __repr__(self):
        return 'Candidate: < ' + str(self.electionId) + ':' + str(
            self.uId) + ':' + str(
                self.voterId) + ':' + self.name + ':' + self.manifesto + '>'

    def __init__(self, electionId, voterId, name, manifesto):
        self.voterId = voterId
        self.name = name
        self.manifesto = manifesto
        self.electionId = electionId

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }

    def get_uId(self):
        return self.uId

    def get_voterId(self):
        return self.voterId

    def get_name(self):
        return self.name

    def get_manifesto(self):
        return self.manifesto
Beispiel #11
0
class Session(db.Model):

    __tablename__ = 'Session'

    sessionKey = db.Column(db.String(10), primary_key=True)
    userId = db.Column(db.String(10), nullable=False)
Beispiel #12
0
class Event(db.Model):

    __tablename__ = 'Event'

    eventId = db.Column(db.Integer, primary_key=True, nullable=False)
    name = db.Column(db.String(100), unique=True, nullable=False)
    coordinators = db.Column(db.String(4096))
    location = db.Column(db.String(200))
    day = db.Column(db.Integer)
    time = db.Column(db.String(50))
    prize = db.Column(db.String(256))
    minSize = db.Column(db.Integer, default=0)
    maxSize = db.Column(db.Integer, default=0)

    eventType = db.Column(db.Integer, nullable=False)
    category = db.Column(db.Integer, default=0)
    clubId = db.Column(db.String(10), default=0)
    details = db.Column(db.String(4096))
    shortDescription = db.Column(db.String(300))

    imageUrl = db.Column(db.String(255), default='')
    rulesList = db.Column(db.String(4096))

    pdfUrl = db.Column(db.String(255), nullable=False)

    def __repr__(self):
        return 'Event: <' + self.eventName + '>'

    def as_dict(self):
        return {
            c.name: getattr(self, c.name)
            for c in self.__tablename__.columns
        }
class Notifications(db.Model):
    __tablename__ = 'Notifications'

    token = db.Column(db.String(50), primary_key=True)