Mercurial > genshi > mirror
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("/") |