mirror of
https://github.com/samuelclay/NewsBlur.git
synced 2025-08-31 21:41:33 +00:00
59 lines
2 KiB
Python
59 lines
2 KiB
Python
![]() |
from django.core.management.base import NoArgsCommand
|
||
|
from optparse import make_option
|
||
|
|
||
|
from django.conf import settings
|
||
|
|
||
|
class Command(NoArgsCommand):
|
||
|
option_list = NoArgsCommand.option_list + (
|
||
|
make_option('--force', action='store_true', default=False, help='Force update of all files, even if the source files are older than the current compressed file.'),
|
||
|
)
|
||
|
help = 'Updates and compresses CSS and JavsScript on-demand, without restarting Django'
|
||
|
args = ''
|
||
|
|
||
|
def handle_noargs(self, **options):
|
||
|
|
||
|
force = options.get('force', False)
|
||
|
verbosity = int(options.get('verbosity', 1))
|
||
|
|
||
|
from compress.utils import needs_update, filter_css, filter_js
|
||
|
|
||
|
for name, css in settings.COMPRESS_CSS.items():
|
||
|
u, version = needs_update(css['output_filename'],
|
||
|
css['source_filenames'])
|
||
|
|
||
|
if (force or u) or verbosity >= 2:
|
||
|
msg = 'CSS Group \'%s\'' % name
|
||
|
print msg
|
||
|
print len(msg) * '-'
|
||
|
print "Version: %s" % version
|
||
|
|
||
|
if force or u:
|
||
|
filter_css(css, verbosity)
|
||
|
|
||
|
if (force or u) or verbosity >= 2:
|
||
|
print
|
||
|
|
||
|
for name, js in settings.COMPRESS_JS.items():
|
||
|
u, version = needs_update(js['output_filename'],
|
||
|
js['source_filenames'])
|
||
|
|
||
|
if (force or u) or verbosity >= 2:
|
||
|
msg = 'JavaScript Group \'%s\'' % name
|
||
|
print msg
|
||
|
print len(msg) * '-'
|
||
|
print "Version: %s" % version
|
||
|
|
||
|
if force or u:
|
||
|
filter_js(js, verbosity)
|
||
|
|
||
|
if (force or u) or verbosity >= 2:
|
||
|
print
|
||
|
|
||
|
# Backwards compatibility for Django r9110
|
||
|
if not [opt for opt in Command.option_list if opt.dest=='verbosity']:
|
||
|
Command.option_list += (
|
||
|
make_option('--verbosity', '-v', action="store", dest="verbosity",
|
||
|
default='1', type='choice', choices=['0', '1', '2'],
|
||
|
help="Verbosity level; 0=minimal output, 1=normal output, 2=all output"),
|
||
|
)
|