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

« back to all changes in this revision

Viewing changes to ivle/util.py

  • Committer: William Grant
  • Date: 2009-01-13 01:36:15 UTC
  • Revision ID: svn-v3-trunk0:2b9c9e99-6f39-0410-b283-7f802c844ae2:trunk:1123
Merge setup-refactor branch. This completely breaks existing installations;
every path (both filesystem and Python) has changed. Do not upgrade without
knowing what you are doing.

Show diffs side-by-side

added added

removed removed

Lines of Context:
177
177
            except ValueError:
178
178
                return "File"
179
179
 
180
 
def get_terms_of_service():
 
180
def send_terms_of_service(req):
181
181
    """
182
182
    Sends the Terms of Service document to the req object.
183
183
    This consults conf to find out where the TOS is located on disk, and sends
185
185
    how to create a real one.
186
186
    """
187
187
    try:
188
 
        return open(ivle.conf.tos_path).read()
 
188
        req.sendfile(ivle.conf.tos_path)
189
189
    except IOError:
190
 
        return """<h1>Terms of Service</h1>
 
190
        req.write(
 
191
"""<h1>Terms of Service</h1>
191
192
<p><b>*** SAMPLE ONLY ***</b></p>
192
193
<p>This is the text of the IVLE Terms of Service.</p>
193
194
<p>The administrator should create a license file with an appropriate
205
206
just be the contents of a body element (IVLE will wrap it accordingly).</p>
206
207
<p>This will automatically be used as the license text instead of this
207
208
placeholder text.</p>
208
 
"""
 
209
""")
209
210
 
210
211
def parse_iso8601(str):
211
212
    """Parses ISO8601 string into a datetime object."""
291
292
    elif count < expect:
292
293
        # Incomplete
293
294
        return count
294
 
 
295
 
def object_to_dict(attrnames, obj):
296
 
    """
297
 
    Convert an object into a dictionary. This takes a shallow copy of the
298
 
    object.
299
 
    attrnames: Set (or iterable) of names of attributes to be copied into the
300
 
        dictionary. (We don't auto-lookup, because this function needs to be
301
 
        used on magical objects).
302
 
    """
303
 
    return dict((k, getattr(obj, k))
304
 
        for k in attrnames if not k.startswith('_'))