diff options
author | Christopher Allan Webber <cwebber@dustycloud.org> | 2013-05-14 14:24:27 -0500 |
---|---|---|
committer | Christopher Allan Webber <cwebber@dustycloud.org> | 2013-05-14 14:24:27 -0500 |
commit | f7a5c7c78c6dcf3dcb3b81efbedc9a333df49fb7 (patch) | |
tree | 7e491dac697f975fbeb9e69c53bd454d7ac108d3 /mediagoblin/tests/testplugins/modify_context/__init__.py | |
parent | 725404236ef66884e53e0ef83264524768cefb9c (diff) | |
download | mediagoblin-f7a5c7c78c6dcf3dcb3b81efbedc9a333df49fb7.tar.lz mediagoblin-f7a5c7c78c6dcf3dcb3b81efbedc9a333df49fb7.tar.xz mediagoblin-f7a5c7c78c6dcf3dcb3b81efbedc9a333df49fb7.zip |
Fully working context hooks, both template/view and global level, with tests
Needs documentation though... that's coming next :)
This commit sponsored by Luca Tius. Thanks Luca!
Diffstat (limited to 'mediagoblin/tests/testplugins/modify_context/__init__.py')
-rw-r--r-- | mediagoblin/tests/testplugins/modify_context/__init__.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/mediagoblin/tests/testplugins/modify_context/__init__.py b/mediagoblin/tests/testplugins/modify_context/__init__.py new file mode 100644 index 00000000..6ddcd652 --- /dev/null +++ b/mediagoblin/tests/testplugins/modify_context/__init__.py @@ -0,0 +1,49 @@ +# GNU MediaGoblin -- federated, autonomous media hosting +# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from mediagoblin.tools import pluginapi +import pkg_resources + + +def append_to_specific_context(context): + context['specific_page_append'] = 'in yer specificpage' + return context + +def append_to_global_context(context): + context['global_append'] = 'globally appended!' + return context + + +def setup_plugin(): + routes = [ + ('modify_context.specific_page', + '/modify_context/specific/', + 'mediagoblin.tests.testplugins.modify_context.views:specific'), + ('modify_context.general_page', + '/modify_context/', + 'mediagoblin.tests.testplugins.modify_context.views:general')] + + pluginapi.register_routes(routes) + pluginapi.register_template_path( + pkg_resources.resource_filename( + 'mediagoblin.tests.testplugins.modify_context', 'templates')) + + +hooks = { + 'setup': setup_plugin, + ('modify_context.specific_page', + 'contextplugin/specific.html'): append_to_specific_context, + 'template_global_context': append_to_global_context} |