Commit | Line | Data |
---|---|---|
fc3dc255 | 1 | # GNU MediaGoblin -- federated, autonomous media hosting |
12a100e4 | 2 | # Copyright (C) 2011 MediaGoblin contributors. See AUTHORS. |
fc3dc255 WKG |
3 | # |
4 | # This program is free software: you can redistribute it and/or modify | |
5 | # it under the terms of the GNU Affero General Public License as published by | |
6 | # the Free Software Foundation, either version 3 of the License, or | |
7 | # (at your option) any later version. | |
8 | # | |
9 | # This program is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | # GNU Affero General Public License for more details. | |
13 | # | |
14 | # You should have received a copy of the GNU Affero General Public License | |
15 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
df9809c2 CAW |
16 | """ |
17 | In some places, we need to access the database, public_store, queue_store | |
18 | """ | |
19 | ||
b77eec65 CAW |
20 | import gettext |
21 | import pkg_resources | |
22 | ||
218b8124 | 23 | |
df9809c2 CAW |
24 | ############################# |
25 | # General mediagoblin globals | |
26 | ############################# | |
27 | ||
28 | # mongokit.Connection | |
29 | db_connection = None | |
30 | ||
31 | # mongokit.Connection | |
32 | database = None | |
33 | ||
0533f117 CAW |
34 | # beaker's cache manager |
35 | cache = None | |
36 | ||
df9809c2 CAW |
37 | # should be the same as the |
38 | public_store = None | |
39 | queue_store = None | |
40 | ||
49285baf E |
41 | # A WorkBenchManager |
42 | workbench_manager = None | |
43 | ||
b77eec65 CAW |
44 | # gettext |
45 | translations = gettext.find( | |
46 | 'mediagoblin', | |
47 | pkg_resources.resource_filename( | |
48 | 'mediagoblin', 'translations'), ['en']) | |
49 | ||
218b8124 CAW |
50 | # app and global config objects |
51 | app_config = None | |
52 | global_config = None | |
53 | ||
54 | # The actual app object | |
55 | app = None | |
56 | ||
df9809c2 CAW |
57 | |
58 | def setup_globals(**kwargs): | |
68bf5b19 CAW |
59 | """ |
60 | Sets up a bunch of globals in this module. | |
61 | ||
62 | Takes the globals to setup as keyword arguments. If globals are | |
63 | specified that aren't set as variables above, then throw an error. | |
64 | """ | |
6e7ce8d1 | 65 | from mediagoblin import mg_globals |
df9809c2 CAW |
66 | |
67 | for key, value in kwargs.iteritems(): | |
49285baf E |
68 | if not hasattr(mg_globals, key): |
69 | raise AssertionError("Global %s not known" % key) | |
df9809c2 | 70 | setattr(mg_globals, key, value) |