~azzar1/unity/add-show-desktop-key

« back to all changes in this revision

Viewing changes to ivle/fileservice_lib/__init__.py

  • Committer: William Grant
  • Date: 2009-04-07 03:48:23 UTC
  • mfrom: (1165.1.46 submissions)
  • Revision ID: grantw@unimelb.edu.au-20090407034823-snd6wa5p6otzq073
Allow students to submit projects from personal or group repositories.

Show diffs side-by-side

added added

removed removed

Lines of Context:
80
80
 
81
81
import urllib
82
82
 
 
83
import cjson
 
84
 
83
85
import ivle.fileservice_lib.action
84
86
import ivle.fileservice_lib.listing
85
87
 
102
104
    fields = req.get_fieldstorage()
103
105
    if req.method == 'POST':
104
106
        act = fields.getfirst('action')
105
 
    
 
107
 
 
108
    out = None
 
109
 
106
110
    if act is not None:
107
111
        try:
108
 
            ivle.fileservice_lib.action.handle_action(req, act, fields)
 
112
            out = ivle.fileservice_lib.action.handle_action(req, act, fields)
109
113
        except action.ActionError, message:
110
114
            req.headers_out['X-IVLE-Action-Error'] = urllib.quote(str(message))
111
115
 
112
 
    return_type = fields.getfirst('return')
113
 
    ivle.fileservice_lib.listing.handle_return(req, return_type == "contents")
 
116
    if out:
 
117
        req.content_type = 'application/json'
 
118
        req.write(cjson.encode(out))
 
119
    else:
 
120
        return_type = fields.getfirst('return')
 
121
        ivle.fileservice_lib.listing.handle_return(req,
 
122
                                                   return_type == "contents")