def post(self): form = RegistrationForm(self.request.arguments) if form.validate(): user = self.db2.query(User).filter_by( username=form.username.data ).all() if user: form.username.errors.append( _('This username is occupied') ) else: salt = md5(str(random.random())).hexdigest()[:12] hsh = encrypt_password(salt, form.password.data) enc_password = "******" % (salt, hsh) newuser = User( username = form.username.data, password = enc_password ) self.db2.add(newuser) self.db2.commit() # Create profile profile = UserProfile(newuser, email = form.email.data) # Add to default group from settings import cf if cf.has_option('registration', 'user_default_group_id'): try: DGID = int(cf.get('registration', 'user_default_group_id')) G = self.db2.query(Group).get(DGID) newuser.groups = [G] self.db2.commit() except: pass self.db2.add(profile) self.db2.commit() # send_message self.send_message( newuser ) # send_mail() self.save_session(newuser.id) return self.redirect( self.reverse_url('account:index') ) # Have a error self.render( 'account/register.html', form = form )
def post(self): form = ResetPasswordApplyForm(self) if form.validate(): profile = self.db2.query(UserProfile).filter( UserProfile.email == form.email.data ).first() if profile: # check exist request exist = self.db2.query(UserResetpass).filter_by( user_id = profile.user.id ).all() exist = [ x for x in exist if not x.completed ] if exist: RQ = exist[0] else: RQ = UserResetpass( profile.user ) self.db2.add( RQ ) self.db2.commit() # send email from settings import cf if cf.has_option('site', 'home'): SITE_HOME = cf.get('site', 'home').rstrip('/') else: SITE_HOME = 'http://127.0.0.1' url = self.reverse_url('reset_password_complete') url = SITE_HOME + url + '?key=%s' % RQ.key ret = send_email(form.email.data, self.trans(_('[ LuoYun Cloud ] Reset Password')), self.EMAIL_TEMPLATE % { 'URL': url } ) if ret: return self.render( 'account/reset_password_apply_successed.html', APPLY = RQ ) else: return self.write( self.trans(_('Send Email Failed !')) ) else: form.email.errors.append( self.trans(_("No such email address: %s")) % form.email.data ) d = { 'title': self.trans(_('Reset Password')), 'form': form } self.render( 'account/reset_password_apply.html', **d )
def post(self): form = RegistrationForm(self) if form.validate(): user = self.db2.query(User).filter_by( username=form.username.data ).all() if user: form.username.errors.append( self.trans(_('This username is occupied')) ) else: enc_password = enc_login_passwd(form.password.data) newuser = User( username = form.username.data, password = enc_password ) self.db2.add(newuser) self.db2.commit() # Create profile profile = UserProfile(newuser, email = form.email.data) root_passwd = enc_shadow_passwd(form.password.data) profile.set_secret('root_shadow_passwd', root_passwd) # Add to default group from settings import cf if cf.has_option('registration', 'user_default_group_id'): try: DGID = int(cf.get('registration', 'user_default_group_id')) G = self.db2.query(Group).get(DGID) newuser.groups = [G] self.db2.commit() except: pass self.db2.add(profile) self.db2.commit() # send_message self.send_message( newuser ) # send_mail() self.save_session(newuser.id) return self.redirect( self.reverse_url('account:index') ) # Have a error self.render( 'account/register.html', form = form )
from smtplib import SMTP from email.MIMEText import MIMEText from email.Header import Header from email.Utils import parseaddr, formataddr admin_name = 'Admin' smtp_server = None smtp_port = 25 email_from = None email_username = None email_pass = None from settings import cf if cf.has_option('email', 'smtp_server'): smtp_server = cf.get('email', 'smtp_server') if cf.has_option('email', 'smtp_port'): smtp_port = int( cf.get('email', 'smtp_port') ) if cf.has_option('email', 'name'): admin_name = cf.get('email', 'name') if cf.has_option('email', 'from'): email_from = cf.get('email', 'from') if cf.has_option('email', 'username'): email_username = cf.get('email', 'username') if cf.has_option('email', 'password'):
import time, logging from smtplib import SMTP from email.MIMEText import MIMEText from email.Header import Header from email.Utils import parseaddr, formataddr admin_name = 'Admin' smtp_server = None smtp_port = 25 email_from = None email_username = None email_pass = None from settings import cf if cf.has_option('email', 'smtp_server'): smtp_server = cf.get('email', 'smtp_server') if cf.has_option('email', 'smtp_port'): smtp_port = int(cf.get('email', 'smtp_port')) if cf.has_option('email', 'name'): admin_name = cf.get('email', 'name') if cf.has_option('email', 'from'): email_from = cf.get('email', 'from') if cf.has_option('email', 'username'): email_username = cf.get('email', 'username') if cf.has_option('email', 'password'):
# ADMIN display ADMIN_USER_LIST_PAGE_SIZE = 50 # Email Setting MAIL_SENDER = "LuoYunCloud Administrator" # Sender name MAIL_HOST = None # SMTP server MAIL_PORT = 25 # SMTP port MAIL_FROM = None # From email address MAIL_USER = None # login username MAIL_PASS = None # login password from settings import cf if cf.has_option("email", "smtp_server"): MAIL_SERVER = cf.get("email", "smtp_server") if cf.has_option("email", "smtp_port"): MAIL_PORT = int(cf.get("email", "smtp_port")) if cf.has_option("email", "name"): MAIL_SENDER = cf.get("email", "name") if cf.has_option("email", "from"): MAIL_FROM = cf.get("email", "from") if cf.has_option("email", "username"): MAIL_USER = cf.get("email", "username") if cf.has_option("email", "password"):