annotate examples/turbogears/markuptest/controllers.py @ 110:64ff134868c4 trunk

update the example TurboGears app and include an example of using TurboGears wigets
author mgood
date Fri, 28 Jul 2006 18:57:55 +0000
parents 49364e784c47
children
rev   line source
4
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
1 import logging
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
2
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
3 import cherrypy
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
4
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
5 import turbogears
110
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
6 from turbogears import controllers, expose, validate, redirect, widgets
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
7 from turbogears import identity
4
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
8
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
9 from markuptest import json
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
10
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
11 log = logging.getLogger("markuptest.controllers")
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
12
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
13 class Root(controllers.RootController):
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
14 @expose(template="markuptest.templates.welcome")
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
15 def index(self):
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
16 import time
49364e784c47 Added first stab of an implementation of the !TurboGears [http://www.turbogears.org/docs/plugins/template.html plugin API for template engines], and also a !TurboGears-based example using this plugin. Both written by Matt Good.
cmlenz
parents:
diff changeset
17 log.debug("Happy TurboGears Controller Responding For Duty")
110
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
18 return dict(now=time.ctime(),
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
19 widget=widgets.TextArea(name="widget_test",
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
20 default="This is a test of using "
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
21 "TurboGears widgets with "
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
22 "Markup",
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
23 rows=5, cols=40))
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
24
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
25
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
26 @expose(template="markuptest.templates.login")
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
27 def login(self, forward_url=None, previous_url=None, *args, **kw):
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
28
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
29 if not identity.current.anonymous \
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
30 and identity.was_login_attempted() \
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
31 and not identity.get_identity_errors():
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
32 raise redirect(forward_url)
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
33
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
34 forward_url=None
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
35 previous_url= cherrypy.request.path
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
36
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
37 if identity.was_login_attempted():
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
38 msg=_("The credentials you supplied were not correct or "
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
39 "did not grant access to this resource.")
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
40 elif identity.get_identity_errors():
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
41 msg=_("You must provide your credentials before accessing "
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
42 "this resource.")
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
43 else:
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
44 msg=_("Please log in.")
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
45 forward_url= cherrypy.request.headers.get("Referer", "/")
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
46 cherrypy.response.status=403
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
47 return dict(message=msg, previous_url=previous_url, logging_in=True,
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
48 original_parameters=cherrypy.request.params,
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
49 forward_url=forward_url)
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
50
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
51 @expose()
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
52 def logout(self):
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
53 identity.current.logout()
64ff134868c4 update the example TurboGears app and include an example of using TurboGears wigets
mgood
parents: 4
diff changeset
54 raise redirect("/")
Copyright (C) 2012-2017 Edgewall Software