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

« back to all changes in this revision

Viewing changes to ivle/dispatch/request.py

Port the forum app to the new framework. With it also comes new cookie
infrastructure.

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
import ivle.util
37
37
import ivle.conf
38
38
import ivle.database
 
39
from ivle.webapp.base.plugins import CookiePlugin
39
40
 
40
41
class Request:
41
42
    """An IVLE request object. This is presented to the IVLE apps as a way of
269
270
    def logout(self):
270
271
        """Log out the current user by destroying the session state.
271
272
        Then redirect to the top-level IVLE page."""
272
 
        # List of cookies that IVLE uses (to be removed at logout)
273
 
        ivle_cookies = ["ivleforumcookie", "clipboard"]
274
 
        
275
273
        if hasattr(self, 'session'):
276
274
            self.session.invalidate()
277
275
            self.session.delete()
278
276
            # Invalidates all IVLE cookies
279
277
            all_cookies = mod_python.Cookie.get_cookies(self)
280
 
            for cookie in all_cookies:
281
 
                if cookie in ivle_cookies:
282
 
                    self.add_cookie(mod_python.Cookie.Cookie(cookie,'',expires=1,path='/'))
 
278
 
 
279
            # Create cookies for plugins that might request them.
 
280
            for plugin in self.plugin_index[CookiePlugin]:
 
281
                for cookie in plugin.cookies:
 
282
                    self.add_cookie(mod_python.Cookie.Cookie(cookie, '',
 
283
                                                    expires=1, path='/'))
283
284
        self.throw_redirect(ivle.util.make_path('')) 
284
285
 
285
286