summaryrefslogtreecommitdiff
path: root/service/pixelated
diff options
context:
space:
mode:
authorZara Gebru <zgebru@thoughtworks.com>2016-12-02 15:25:23 +0100
committerZara Gebru <zgebru@thoughtworks.com>2016-12-02 15:25:23 +0100
commitb14833fbb56bcd5bff0750c16fd9214009b955be (patch)
treea1ec621dd5f76d756ac59b72a763a34a2c189387 /service/pixelated
parent688a8b42e8ab7c6d4529b6dda66f40eead07ad02 (diff)
[refactor] move app dir into public dir
Diffstat (limited to 'service/pixelated')
-rw-r--r--service/pixelated/application.py14
-rw-r--r--service/pixelated/resources/inbox_resource.py2
-rw-r--r--service/pixelated/resources/login_resource.py4
-rw-r--r--service/pixelated/resources/root_resource.py17
4 files changed, 19 insertions, 18 deletions
diff --git a/service/pixelated/application.py b/service/pixelated/application.py
index 9f33cb82..0c2383dd 100644
--- a/service/pixelated/application.py
+++ b/service/pixelated/application.py
@@ -88,12 +88,22 @@ def _create_service_factory(args):
return ServicesFactory(UserAgentMode(is_single_user=False))
+def get_templates_folder():
+ return os.path.join(os.path.dirname(os.path.abspath(__file__)), "assets")
+
+
+def get_static_folder():
+ # TODO: make sure sandbox keeps working
+ # TODO: make sure this works for packaging
+ return os.path.abspath(os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "..", "web-ui", "public"))
+
+
def initialize():
log.info('Starting the Pixelated user agent')
args = arguments.parse_user_agent_args()
logger.init(debug=args.debug)
services_factory = _create_service_factory(args)
- resource = RootResource(services_factory)
+ resource = RootResource(services_factory, templates_folder=get_templates_folder(), static_folder=get_static_folder())
def start():
start_async = _start_mode(args, resource, services_factory)
@@ -154,7 +164,7 @@ def _setup_multi_user(args, root_resource, services_factory):
def set_up_protected_resources(root_resource, provider, services_factory, banner=None, authenticator=None):
session_checker = SessionChecker(services_factory)
- anonymous_resource = RootResource(services_factory, public=True)
+ anonymous_resource = RootResource(services_factory, templates_folder=get_templates_folder(), static_folder=get_static_folder(), public=True)
realm = PixelatedRealm(root_resource, anonymous_resource)
_portal = portal.Portal(realm, [session_checker, AllowAnonymousAccess()])
diff --git a/service/pixelated/resources/inbox_resource.py b/service/pixelated/resources/inbox_resource.py
index 426de5cc..d9ba86a5 100644
--- a/service/pixelated/resources/inbox_resource.py
+++ b/service/pixelated/resources/inbox_resource.py
@@ -46,7 +46,7 @@ class InboxResource(BaseResource):
def _get_not_quite_the_templates_folder(self):
path = os.path.dirname(os.path.abspath(pixelated.__file__))
- return os.path.join(path, '..', '..', 'web-ui', 'app')
+ return os.path.join(path, '..', '..', 'web-ui', 'public')
def _get_templates_folder(self):
path = os.path.dirname(os.path.abspath(pixelated.__file__))
diff --git a/service/pixelated/resources/login_resource.py b/service/pixelated/resources/login_resource.py
index 7d61ddce..6300efdb 100644
--- a/service/pixelated/resources/login_resource.py
+++ b/service/pixelated/resources/login_resource.py
@@ -51,11 +51,11 @@ def _get_public_folder():
def _get_static_folder():
- static_folder = os.path.abspath(os.path.join(os.path.abspath(__file__), "..", "..", "..", "web-ui", "app"))
+ static_folder = os.path.abspath(os.path.join(os.path.abspath(__file__), "..", "..", "..", "web-ui", "public"))
# this is a workaround for packaging
if not os.path.exists(static_folder):
static_folder = os.path.abspath(
- os.path.join(os.path.abspath(__file__), "..", "..", "..", "..", "web-ui", "app"))
+ os.path.join(os.path.abspath(__file__), "..", "..", "..", "..", "web-ui", "public"))
if not os.path.exists(static_folder):
static_folder = os.path.join('/', 'usr', 'share', 'pixelated-user-agent')
return static_folder
diff --git a/service/pixelated/resources/root_resource.py b/service/pixelated/resources/root_resource.py
index 1d32935b..375f27f6 100644
--- a/service/pixelated/resources/root_resource.py
+++ b/service/pixelated/resources/root_resource.py
@@ -44,13 +44,13 @@ logger = Logger()
class RootResource(BaseResource):
- def __init__(self, services_factory, public=False):
+ def __init__(self, services_factory, templates_folder, static_folder, public=False):
BaseResource.__init__(self, services_factory)
self._public = public
self._assets_folder = self._get_assets_folder()
self._startup_assets_folder = self._get_startup_folder()
- self._static_folder = self._get_static_folder()
- self._html_template = open(os.path.join(self._static_folder, 'index.html')).read()
+ self._static_folder = static_folder
+ self._html_template = open(os.path.join(templates_folder, 'index.html')).read()
self._services_factory = services_factory
with open(os.path.join(self._startup_assets_folder, 'Interstitial.html')) as f:
self.interstitial = f.read()
@@ -61,6 +61,7 @@ class RootResource(BaseResource):
def _startup_mode(self):
self.putChildProtected('assets', File(self._assets_folder))
self.putChildPublic('startup-assets', File(self._startup_assets_folder))
+ self.putChildPublic('static', File(self._static_folder))
self._mode = MODE_STARTUP
logger.debug('Root in STARTUP mode. %s' % self)
@@ -128,13 +129,3 @@ class RootResource(BaseResource):
def _get_startup_folder(self):
path = os.path.dirname(os.path.abspath(__file__))
return os.path.join(path, '..', 'assets')
-
- def _get_static_folder(self):
- static_folder = os.path.abspath(os.path.join(os.path.abspath(__file__), "..", "..", "..", "web-ui", "app"))
- # this is a workaround for packaging
- if not os.path.exists(static_folder):
- static_folder = os.path.abspath(
- os.path.join(os.path.abspath(__file__), "..", "..", "..", "..", "web-ui", "app"))
- if not os.path.exists(static_folder):
- static_folder = os.path.join('/', 'usr', 'share', 'pixelated-user-agent')
- return static_folder