def _to_python(self, value, state): user = User.by_username(pylons.tmpl_context.db)[value] if user: raise formencode.Invalid( 'The username you selected already exists.', value, state) return value
def _dologin(self): session['user'] = list(User.by_username(self.db)[self.form_result['username']])[0] session.save() flash('Login successful') if 'redirect_to' in session: redir_url = session['redirect_to'] del session['redirect_to'] session.save() redirect(redir_url) else: redirect(url('home'))
def validate_python(self, field_dict, state): users = User.by_username(pylons.tmpl_context.db)[field_dict['username']] users = list(users) if not users: raise formencode.Invalid( 'Invalid username.', field_dict, state) user = users[0] if not user.check_password(field_dict['password']): raise formencode.Invalid( 'Wrong password.', field_dict, state)
def _doedit_user(self, id): user = User.load(self.db, id) user.username = self.form_result.get('username') user.email = self.form_result.get('email') user.role = self.form_result.get('role') if self.form_result.get('password'): user.password = self.form_result.get('password') user.store(self.db) flash('User successfully edited.') redirect(url(controller='admin', action='edit_user', id=id))
def setup_app(command, conf, vars): """Place any commands to setup troppotardi here""" config = load_environment(conf.global_conf, conf.local_conf) print "Syncing the couchdb database..." db = Database(config['couchdb_uri']) ViewDefinition.sync_many(db, [ Image.pending_by_time, Image.by_day, Image.deleted_by_time, User.by_time, User.by_username, Email.by_time, ]) if not list(User.by_username(db)): print "Creating first user - username and password \"admin\"" admin = User() admin.username = "******" admin.password = "******" admin.email = "*****@*****.**" admin.role = "Admin" admin.store(db, revised_by=False) print "Done."
def _doadduser(self): user = User() user.username = c.username = request.params.getone('username') user.email = request.params.getone('email') user.role = request.params.getone('role') c.password = generate_password() user.password = c.password # Sends the email send_email(render('/emails/registration.mako'), 'Welcome to troppotardi', [user.email]) user.store(self.db) flash('User added successfully, an email has been sent with the password.') redirect(url(controller='admin', action='adduser'))
def delete_user(self, id): User.load(self.db, id).delete(self.db) flash('User deleted.') redirect(url(controller='admin', action='users'))
def edit_user(self, id): c.user = User.load(self.db, id) c.roles = User.roles return render('/admin/edit_user.mako')
def users(self): c.users = User.by_username(self.db, descending=True) return render('/admin/users.mako')