Give minified own FileHandler

This commit is contained in:
Ruud
2013-09-10 23:21:31 +02:00
parent 31b3c2ef64
commit 0634c79f74
2 changed files with 12 additions and 4 deletions
+11 -3
View File
@@ -6,6 +6,7 @@ from couchpotato.core.plugins.base import Plugin
from couchpotato.environment import Env from couchpotato.environment import Env
from minify.cssmin import cssmin from minify.cssmin import cssmin
from minify.jsmin import jsmin from minify.jsmin import jsmin
from tornado.web import StaticFileHandler
import os import os
import re import re
import traceback import traceback
@@ -90,6 +91,13 @@ class ClientScript(Plugin):
def minify(self): def minify(self):
# Create cache dir
cache = Env.get('cache_dir')
parent_dir = os.path.join(cache, 'minified')
self.makeDir(parent_dir)
Env.get('app').add_handlers(".*$", [(Env.get('web_base') + 'minified/(.*)', StaticFileHandler, {'path': parent_dir})])
for file_type in ['style', 'script']: for file_type in ['style', 'script']:
ext = 'js' if file_type is 'script' else 'css' ext = 'js' if file_type is 'script' else 'css'
positions = self.paths.get(file_type, {}) positions = self.paths.get(file_type, {})
@@ -100,8 +108,8 @@ class ClientScript(Plugin):
def _minify(self, file_type, files, position, out): def _minify(self, file_type, files, position, out):
cache = Env.get('cache_dir') cache = Env.get('cache_dir')
out_name = 'minified_' + out out_name = out
out = os.path.join(cache, out_name) out = os.path.join(cache, 'minified', out_name)
raw = [] raw = []
for file_path in files: for file_path in files:
@@ -131,7 +139,7 @@ class ClientScript(Plugin):
if not self.minified[file_type].get(position): if not self.minified[file_type].get(position):
self.minified[file_type][position] = [] self.minified[file_type][position] = []
minified_url = 'api/%s/file.cache/%s?%s' % (Env.setting('api_key'), out_name, tryInt(os.path.getmtime(out))) minified_url = 'minified/%s?%s' % (out_name, tryInt(os.path.getmtime(out)))
self.minified[file_type][position].append(minified_url) self.minified[file_type][position].append(minified_url)
def getStyles(self, *args, **kwargs): def getStyles(self, *args, **kwargs):
+1 -1
View File
@@ -71,7 +71,7 @@ class FileManager(Plugin):
db = get_session() db = get_session()
for root, dirs, walk_files in os.walk(Env.get('cache_dir')): for root, dirs, walk_files in os.walk(Env.get('cache_dir')):
for filename in walk_files: for filename in walk_files:
if root == python_cache or 'minified' in filename or 'version' in filename or 'temp_updater' in root: continue if root == python_cache or 'minified' in root or 'version' in filename or 'temp_updater' in root: continue
file_path = os.path.join(root, filename) file_path = os.path.join(root, filename)
f = db.query(File).filter(File.path == toUnicode(file_path)).first() f = db.query(File).filter(File.path == toUnicode(file_path)).first()
if not f: if not f: