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
from turbogears import controllers, expose, identity
import sqlalchemy
from fas.model import People
from fas.model import Groups
from fas.model import Log
@ -12,31 +14,37 @@ class JsonRequest(controllers.Controller):
"""Create a JsonRequest Controller."""
@identity.require(turbogears.identity.not_anonymous())
@expose("json")
@expose("json", allow_json=True)
def index(self):
"""Return a help message"""
return dict(help='This is a JSON interface.')
@identity.require(turbogears.identity.not_anonymous())
@expose("json")
@expose("json", allow_json=True)
def person_by_id(self, id):
try:
person = People.by_id(id)
person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships')
}
return dict(success=True, person=person)
except InvalidRequestError:
return dict(success=False)
@identity.require(turbogears.identity.not_anonymous())
@expose("json")
@expose("json", allow_json=True)
def person_by_username(self, username):
try:
person = People.by_username(username)
person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships')
}
return dict(success=True, person=person)
except InvalidRequestError:
return dict(success=False)
@identity.require(turbogears.identity.not_anonymous())
@expose("json")
@expose("json", allow_json=True)
def group_by_id(self, id):
try:
group = Groups.by_id(id)
@ -45,7 +53,7 @@ class JsonRequest(controllers.Controller):
return dict(success=False)
@identity.require(turbogears.identity.not_anonymous())
@expose("json")
@expose("json", allow_json=True)
def group_by_name(self, groupname):
try:
group = Groups.by_name(groupname)
@ -53,3 +61,13 @@ class JsonRequest(controllers.Controller):
except InvalidRequestError:
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
else:
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)
person.jsonProps = {
'People': ('approved_memberships', 'unapproved_memberships')