Add more methods in json_request.py, remove unused code in user.py.

This commit is contained in:
Ricky Zhou (周家杰) 2008-03-14 23:58:04 -04:00
parent 70c9727cdb
commit d57b144398
2 changed files with 23 additions and 10 deletions

View file

@ -1,6 +1,8 @@
import turbogears import turbogears
from turbogears import controllers, expose, identity from turbogears import controllers, expose, identity
import sqlalchemy
from fas.model import People from fas.model import People
from fas.model import Groups from fas.model import Groups
from fas.model import Log from fas.model import Log
@ -12,31 +14,37 @@ class JsonRequest(controllers.Controller):
"""Create a JsonRequest Controller.""" """Create a JsonRequest Controller."""
@identity.require(turbogears.identity.not_anonymous()) @identity.require(turbogears.identity.not_anonymous())
@expose("json") @expose("json", allow_json=True)
def index(self): def index(self):
"""Return a help message""" """Return a help message"""
return dict(help='This is a JSON interface.') return dict(help='This is a JSON interface.')
@identity.require(turbogears.identity.not_anonymous()) @identity.require(turbogears.identity.not_anonymous())
@expose("json") @expose("json", allow_json=True)
def person_by_id(self, id): def person_by_id(self, id):
try: try:
person = People.by_id(id) person = People.by_id(id)
person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships')
}
return dict(success=True, person=person) return dict(success=True, person=person)
except InvalidRequestError: except InvalidRequestError:
return dict(success=False) return dict(success=False)
@identity.require(turbogears.identity.not_anonymous()) @identity.require(turbogears.identity.not_anonymous())
@expose("json") @expose("json", allow_json=True)
def person_by_username(self, username): def person_by_username(self, username):
try: try:
person = People.by_username(username) person = People.by_username(username)
person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships')
}
return dict(success=True, person=person) return dict(success=True, person=person)
except InvalidRequestError: except InvalidRequestError:
return dict(success=False) return dict(success=False)
@identity.require(turbogears.identity.not_anonymous()) @identity.require(turbogears.identity.not_anonymous())
@expose("json") @expose("json", allow_json=True)
def group_by_id(self, id): def group_by_id(self, id):
try: try:
group = Groups.by_id(id) group = Groups.by_id(id)
@ -45,7 +53,7 @@ class JsonRequest(controllers.Controller):
return dict(success=False) return dict(success=False)
@identity.require(turbogears.identity.not_anonymous()) @identity.require(turbogears.identity.not_anonymous())
@expose("json") @expose("json", allow_json=True)
def group_by_name(self, groupname): def group_by_name(self, groupname):
try: try:
group = Groups.by_name(groupname) group = Groups.by_name(groupname)
@ -53,3 +61,13 @@ class JsonRequest(controllers.Controller):
except InvalidRequestError: except InvalidRequestError:
return dict(success=False) return dict(success=False)
@identity.require(turbogears.identity.not_anonymous())
@expose("json", allow_json=True)
def user_id(self):
people = {}
peoplesql = sqlalchemy.select([People.c.id, People.c.username])
persons = peoplesql.execute()
for person in persons:
people[person[0]] = person[1]
return dict(people=people)

View file

@ -212,11 +212,6 @@ class User(controllers.Controller):
#personal = True #personal = True
else: else:
admin = False admin = False
groups = []
# Possibly extract this info in view (person.roles[n].group gives the group)
for group in person.roles:
groups.append(Groups.by_name(group.group.name))
cla = None
cla = CLADone(person) cla = CLADone(person)
person.jsonProps = { person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships') 'People': ('approved_memberships', 'unapproved_memberships')