diff --git a/frappe/app.py b/frappe/app.py index de0b221d38..5c0a75210c 100644 --- a/frappe/app.py +++ b/frappe/app.py @@ -6,9 +6,9 @@ import json from werkzeug.wrappers import Request, Response from werkzeug.local import LocalManager -from werkzeug.wsgi import SharedDataMiddleware from werkzeug.exceptions import HTTPException, NotFound from werkzeug.contrib.profiler import ProfilerMiddleware +from werkzeug.wsgi import SharedDataMiddleware import mimetypes import frappe @@ -18,6 +18,7 @@ import frappe.api import frappe.utils.response import frappe.website.render from frappe.utils import get_site_name +from frappe.middlewares import StaticDataMiddleware local_manager = LocalManager([frappe.local]) @@ -98,9 +99,8 @@ def serve(port=8000, profile=False, site=None, sites_path='.'): '/assets': os.path.join(sites_path, 'assets'), }) - if site: - application = SharedDataMiddleware(application, { - '/files': os.path.join(sites_path, site, 'public', 'files') + application = StaticDataMiddleware(application, { + '/files': os.path.abspath(sites_path) }) run_simple('0.0.0.0', int(port), application, use_reloader=True, diff --git a/frappe/core/page/desktop/desktop.css b/frappe/core/page/desktop/desktop.css index 09e723c416..cdbdcb8b2a 100644 --- a/frappe/core/page/desktop/desktop.css +++ b/frappe/core/page/desktop/desktop.css @@ -14,7 +14,7 @@ color: white; padding-top: 5px; text-align: center; - text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); + text-shadow: 1px 1px 3px rgba(0, 0, 0, 1), 1px 1px 5px rgba(0, 0, 0, 0.3); } @media (max-width: 768px) { @@ -66,4 +66,14 @@ color: white; display: inline-block; min-width: 15px; +} + +#page-desktop { + position: absolute; + min-width: 100%; + min-height: 100%; + overflow: auto; + padding-top: 14px; + padding-bottom: 50px; + margin-bottom: -50px; } \ No newline at end of file diff --git a/frappe/middlewares.py b/frappe/middlewares.py new file mode 100644 index 0000000000..6d5d61cb0e --- /dev/null +++ b/frappe/middlewares.py @@ -0,0 +1,26 @@ +# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors +# MIT License. See license.txt + +from __future__ import unicode_literals + +import frappe +import os + +from werkzeug.wsgi import SharedDataMiddleware +from frappe.utils import get_site_name, get_site_path, get_site_base_path, get_path, cstr + +class StaticDataMiddleware(SharedDataMiddleware): + def __call__(self, environ, start_response): + self.environ = environ + return super(StaticDataMiddleware, self).__call__(environ, start_response) + + def get_directory_loader(self, directory): + def loader(path): + site = get_site_name(self.environ.get('HTTP_HOST')) + path = os.path.join(directory, site, 'public', 'files', cstr(path)) + if os.path.isfile(path): + return os.path.basename(path), self._opener(path) + else: + return None, None + + return loader diff --git a/frappe/public/css/desk.css b/frappe/public/css/desk.css index 425af25f41..118da57ca2 100644 --- a/frappe/public/css/desk.css +++ b/frappe/public/css/desk.css @@ -1,4 +1,10 @@ -body { +html { + min-height: 100%; + position: relative; +} + +body { + height: 100%; margin: 0px; padding-top: 36px; padding-bottom: 50px; diff --git a/frappe/public/images/ui/background-4-1.jpg b/frappe/public/images/ui/background-4-1.jpg deleted file mode 100644 index b72640f63c..0000000000 Binary files a/frappe/public/images/ui/background-4-1.jpg and /dev/null differ diff --git a/frappe/public/images/ui/random-polygons.jpg b/frappe/public/images/ui/random-polygons.jpg new file mode 100755 index 0000000000..146382fe81 Binary files /dev/null and b/frappe/public/images/ui/random-polygons.jpg differ diff --git a/frappe/public/js/frappe/misc/user.js b/frappe/public/js/frappe/misc/user.js index b3c14281eb..88e261dffd 100644 --- a/frappe/public/js/frappe/misc/user.js +++ b/frappe/public/js/frappe/misc/user.js @@ -31,11 +31,8 @@ frappe.avatar = function(user, large, title) { } frappe.ui.set_user_background = function(src) { - if(!src) src = "assets/frappe/images/ui/background-4-1.jpg"; + if(!src) src = "assets/frappe/images/ui/random-polygons.jpg"; frappe.dom.set_style(repl('#page-desktop { \ - position: fixed;\ - left: 0px; min-width: 100%; height: 100%; overflow: auto;\ - padding-top: 14px; \ background: url("%(src)s") center center fixed; \ }', {src:src})) } diff --git a/frappe/templates/pages/desk.html b/frappe/templates/pages/desk.html index 1b390a9850..bfc8b0d74c 100644 --- a/frappe/templates/pages/desk.html +++ b/frappe/templates/pages/desk.html @@ -6,6 +6,9 @@ + {% for include in include_css -%} + + {%- endfor -%}