Example #1
0
 def pack(self, package):
     if (
         "output" not in package
         or "type" not in package
         or not package["output"]
         or not package["type"]
         or len(package["paths"]) == 0
     ):
         return ""
     if package["type"] == "css":
         compressor = CSSCompressor(self.verbose)
         signal = css_compressed
     else:
         compressor = JSCompressor(self.verbose)
         signal = js_compressed
     if settings.COMPRESS_AUTO or self.force:
         need_update, version = self.versioning.need_update(package["output"], package["paths"])
         if need_update or self.force:
             output_filename = self.versioning.output_filename(
                 package["output"], self.versioning.version(package["paths"])
             )
             self.versioning.cleanup(package["output"])
             if self.verbose or self.force:
                 print "Version: %s" % version
                 print "Saving: %s" % make_relative_path(output_filename)
             paths = self.compile(package["paths"])
             content = compressor.compress(paths)
             if not self.save_file(output_filename, content):
                 return ""
             signal.send(sender=self, package=package, version=version)
     else:
         filename_base, filename = os.path.split(package["output"])
         version = self.versioning.version_from_file(filename_base, filename)
     return self.versioning.output_filename(package["output"], version)
Example #2
0
 def construct_asset_path(self, asset_path, css_path):
     if os.path.isabs(asset_path):
         return asset_path
     public_path = self.absolute_path(asset_path, css_path)
     return make_relative_path(public_path)
Example #3
0
 def individual_url(self, filename):
     return urlparse.urljoin(settings.COMPRESS_URL, make_relative_path(filename))
Example #4
0
 def construct_asset_path(self, asset_path, css_path):
     if os.path.isabs(asset_path):
         return asset_path
     public_path = self.absolute_path(asset_path, css_path)
     return make_relative_path(public_path)