Guide - 7.10 Migration of JavaScript Files

Table of Contents

Product Version

7.10

Product To Version

7.10
Status

final

1 Introduction

The ISFilebundle uses an external component (YUICompressor) to compact and simplify the JavaScript and CSS code. This component does not support current JavaScript features. As result the compact process does not finish and fail. The currently used JQuery 3.3.1 cannot be compacted with ISFilebundle.

2 Changes

A new component (Google Closure compiler, https://developers.google.com/closure/compiler/) is now being supported to process and compact the JavaScript files for ISFilebundle. This now supports recent versions of the JavaScript/ECMAScript versions. The Google Closure compiler can be activated using the configuration property intershop.template.isfilebundle.jsprocessor. It supports the following values:

KeyValueUsed ProcessorIs Default
intershop.template.isfilebundle.jsprocessoryuiYUICompressor (old "deprecated" version)(tick)
closureGoogle Closure Compiler

If the property is not set or contains an invalid value, the fallback yui is used.

Attention

The Google Closure compiler surrounds all processed script parts with "use strict". As result the JavaScript execution in the browser checks (for instance) for valid definition of variables and reports errors if the variable definitions are missing.

This affected the following two files of the a_responsive component set (you need to update these files in your project code which bases on a_responsive):

  • app_sf_responsive/staticfiles/cartridge/static/default/js/captcha.js
  • app_sf_responsive/staticfiles/cartridge/static/default/js/dialog.js

Disclaimer

The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.

Customer Support
Knowledge Base
Product Resources
Support Tickets