Prolly obvious, but I can't see it... can you?

-- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/web2py?hl=en.

# coding: utf8

from datetime import datetime, date, time
now = datetime.utcnow()
today = date.today()

db = SQLDB('sqlite://2hand.db')


########### 2hand DB
db.define_table('users',
        SQLField('first_name', 'string', length=20),
        SQLField('last_name', 'string', length=20),
        SQLField('username', 'string', length=20),
        SQLField('password', 'password'),
        SQLField('status', 'string', requires=IS_IN_SET(['Admin','SuperAdmin'])),
        SQLField('created', 'datetime', default=now, readable=False, writable=False))

db.define_table('customer',
        SQLField('first_name', 'string', length=50),
        SQLField('last_name', 'string', length=50),
        SQLField('address', 'string', length=50),
        SQLField('postal_code', 'string', length=15),
        SQLField('city', 'string', length=25),
        SQLField('email', 'string', length=50),
        SQLField('phone_no', 'string', length=50),
        SQLField('note', 'text'),
        SQLField('email_date', 'datetime'),
        SQLField('created', 'datetime', default=now, readable=False, writable=False))

db.define_table('taable',
        SQLField('price', 'integer', length=11),
        SQLField('note', 'text'))
        
db.define_table('customer_table',
        SQLField('customer_id', db.customer),
        SQLField('taable_id', db.taable),
        SQLField('taable_price', db.taable),
        SQLField('total_price', 'double', length=11),
        SQLField('rent_start','date'),
        SQLField('rent_end','date'),
        SQLField('discount_start','date'),
        SQLField('discount_end','date'),
        SQLField('discount', 'string', length=10),
        SQLField('discount_rate', 'string', length=10),
        SQLField('description','text'))

db.define_table('transaction',
        SQLField('customer_id', db.customer),
        SQLField('receipt_no', 'integer', length=11),
        SQLField('price', 'double', length=11),
        SQLField('description', 'text'),
        SQLField('taable_id', db.taable),
        SQLField('overall', 'double', length=11),
        SQLField('status', 'integer', length=3),
        SQLField('pay_method', 'string', length=15),
        SQLField('created', 'datetime', default=now, readable=False))
        
db.define_table('basket',
        SQLField('receipt_no', 'string', length=5),
        SQLField('customer_id', db.customer),
        SQLField('transaction_id', db.transaction),
        SQLField('price', 'double', length=11),
        SQLField('description', 'text'),
        SQLField('taable_id', db.taable),
        SQLField('discount','string', length=5),
        SQLField('status', 'string', length=5),
        SQLField('created', 'datetime', default=now, readable=False, writable=False))
        
db.define_table('feedback',
        SQLField('sender', db.customer),
        SQLField('customer_id', db.customer),
        SQLField('transaction_id', db.transaction),
        SQLField('price', 'double', length=11),
        SQLField('description', 'text'),
        SQLField('taable_id', db.taable),
        SQLField('discount','string', length=5),
        SQLField('status', 'string', length=5),
        SQLField('created', 'datetime', default=now, readable=False, writable=False))

############# Dependencies & constraints
db.users.first_name.requires = IS_NOT_EMPTY()
db.users.last_name.requires = IS_NOT_EMPTY()
db.users.username.requires = IS_NOT_EMPTY()
db.users.password.requires = IS_NOT_EMPTY()
db.users.status.requires = IS_NOT_EMPTY()

db.customer.first_name.requires = IS_NOT_EMPTY()
        
db.taable.price.requires = IS_NOT_EMPTY()
db.taable.note.requires = IS_NOT_EMPTY()
        
db.customer_table.customer_id.requires = IS_IN_DB(db,'customer.id')
db.customer_table.taable_id.requires = IS_IN_DB(db,'taable.id')
db.customer_table.taable_price.requires = IS_IN_DB(db,'taable.price')
db.customer_table.total_price.requires = IS_NOT_EMPTY()
db.customer_table.rent_start.requires = IS_NOT_EMPTY()
db.customer_table.rent_end.requires = IS_NOT_EMPTY()
db.customer_table.discount_rate.requires = IS_NOT_EMPTY()

db.transaction.customer_id.requires = IS_IN_DB(db,'customer.id')
db.transaction.taable_id.requires = IS_IN_DB(db,'taable.id')
db.transaction.receipt_no.requires = IS_NOT_EMPTY()
db.transaction.price.requires = IS_NOT_EMPTY()
db.transaction.overall.requires = IS_NOT_EMPTY()
db.transaction.status.requires = IS_NOT_EMPTY()
db.transaction.pay_method.requires = IS_NOT_EMPTY()

db.basket.customer_id.requires = IS_IN_DB(db,'customer.id')
db.basket.transaction_id.requires = IS_IN_DB(db,'transaction.id')
db.basket.taable_id.requires = IS_IN_DB(db,'taable.id')
db.basket.receipt_no.requires = IS_NOT_EMPTY()
db.basket.price.requires = IS_NOT_EMPTY()        
db.basket.discount.requires = IS_NOT_EMPTY()
db.basket.status.requires = IS_NOT_EMPTY()


#######################################
# Authentication System
#######################################
from gluon.tools import Mail, Auth

mail = Mail()
mail.settings.server='smtp.gmail.com:587'
mail.settings.sender= '[email protected]'
mail.settings.login='[email protected]:browerandrei'

class MyAuth(Auth):
    def __init__(self, environment, T, db = None):
        "Initialise parent class & make any necessary modifications"
        Auth.__init__(self,environment,db)
        self.messages.logged_in = T("Logged in")
        self.messages.email_sent = T("Email sent")
        self.messages.email_verified = T("Email verified")
        self.messages.logged_out = T("Logged out")
        self.messages.registration_successful = T("Registration successful")
        self.messages.invalid_email = T("Invalid email")
        self.messages.invalid_login = T("Invalid login")
        self.messages.verify_email_subject = T("Password verify")
        self.messages.username_sent = T("Your username was emailed to you.")
        self.messages.new_password_sent = T("A new password was emailed to you.")
        self.messages.password_changed = T("Password changed")
        self.messages.retrieve_username=str(T("Your username is:"))+": %(username)s"
        self.messages.retrieve_username_subject="Username retrieve"
        self.messages.retrieve_password=str(T("Your password is:"))+": %(password)s"
        self.messages.retrieve_password_subject = T("Password retrieve")
        self.messages.profile_updated = T("Profile updated")
        self.settings.table_user = db.users

auth = MyAuth(globals(), T, db)
auth.settings.mailer = mail
#auth.settings.registration_requires_verification = True
auth.define_tables()

Reply via email to