svn commit: r1863853 [4/4] - in /ofbiz/ofbiz-framework/branches/release17.12/themes: bluelight/webapp/bluelight/ common/template/includes/ common/webapp/common/js/jquery/ common/webapp/common/js/jquery/plugins/fancybox/ common/webapp/common/js/jquery/p...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1863853 [4/4] - in /ofbiz/ofbiz-framework/branches/release17.12/themes: bluelight/webapp/bluelight/ common/template/includes/ common/webapp/common/js/jquery/ common/webapp/common/js/jquery/plugins/fancybox/ common/webapp/common/js/jquery/p...

adityasharma
Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/jquery-3.4.1.min.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/jquery-3.4.1.min.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/jquery-3.4.1.min.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css Sat Jul 27 12:30:49 2019
@@ -0,0 +1,158 @@
+/**
+ * Featherlight – ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+
+html.with-featherlight {
+ /* disable global scrolling when featherlights are visible */
+ overflow: hidden;
+}
+
+.featherlight {
+ display: none;
+
+ /* dimensions: spanning the background from edge to edge */
+ position:fixed;
+ top: 0; right: 0; bottom: 0; left: 0;
+ z-index: 2147483647; /* z-index needs to be >= elements on the site. */
+
+ /* position: centering content */
+ text-align: center;
+
+ /* insures that the ::before pseudo element doesn't force wrap with fixed width content; */
+ white-space: nowrap;
+
+ /* styling */
+ cursor: pointer;
+ background: #333;
+ /* IE8 "hack" for nested featherlights */
+ background: rgba(0, 0, 0, 0);
+}
+
+/* support for nested featherlights. Does not work in IE8 (use JS to fix) */
+.featherlight:last-of-type {
+ background: rgba(0, 0, 0, 0.8);
+}
+
+.featherlight:before {
+ /* position: trick to center content vertically */
+ content: '';
+ display: inline-block;
+ height: 100%;
+ vertical-align: middle;
+}
+
+.featherlight .featherlight-content {
+ /* make content container for positioned elements (close button) */
+ position: relative;
+
+ /* position: centering vertical and horizontal */
+ text-align: left;
+ vertical-align: middle;
+ display: inline-block;
+
+ /* dimensions: cut off images */
+ overflow: auto;
+ padding: 25px 25px 0;
+ border-bottom: 25px solid transparent;
+
+ /* dimensions: handling large content */
+ margin-left: 5%;
+ margin-right: 5%;
+ max-height: 95%;
+
+ /* styling */
+ background: #fff;
+ cursor: auto;
+
+ /* reset white-space wrapping */
+ white-space: normal;
+}
+
+/* contains the content */
+.featherlight .featherlight-inner {
+ /* make sure its visible */
+ display: block;
+}
+
+/* don't show these though */
+.featherlight script.featherlight-inner,
+.featherlight link.featherlight-inner,
+.featherlight style.featherlight-inner {
+ display: none;
+}
+
+.featherlight .featherlight-close-icon {
+ /* position: centering vertical and horizontal */
+ position: absolute;
+ z-index: 9999;
+ top: 0;
+ right: 0;
+
+ /* dimensions: 25px x 25px */
+ line-height: 25px;
+ width: 25px;
+
+ /* styling */
+ cursor: pointer;
+ text-align: center;
+ font-family: Arial, sans-serif;
+ background: #fff; /* Set the background in case it overlaps the content */
+ background: rgba(255, 255, 255, 0.3);
+ color: #000;
+ border: none;
+ padding: 0;
+}
+
+/* See http://stackoverflow.com/questions/16077341/how-to-reset-all-default-styles-of-the-html5-button-element */
+.featherlight .featherlight-close-icon::-moz-focus-inner {
+ border: 0;
+ padding: 0;
+}
+
+.featherlight .featherlight-image {
+ /* styling */
+ width: 100%;
+}
+
+
+.featherlight-iframe .featherlight-content {
+ /* removed the border for image croping since iframe is edge to edge */
+ border-bottom: 0;
+ padding: 0;
+ -webkit-overflow-scrolling: touch;
+}
+
+.featherlight iframe {
+ /* styling */
+ border: none;
+}
+
+.featherlight * { /* See https://github.com/noelboss/featherlight/issues/42 */
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+/* handling phones and small screens */
+@media only screen and (max-width: 1024px) {
+ .featherlight .featherlight-content {
+ /* dimensions: maximize lightbox with for small screens */
+ margin-left: 0;
+ margin-right: 0;
+ max-height: 98%;
+
+ padding: 10px 10px 0;
+ border-bottom: 10px solid transparent;
+ }
+}
+
+/* hide non featherlight items when printing */
+@media print {
+ html.with-featherlight > * > :not(.featherlight) {
+ display: none;
+ }
+}

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js Sat Jul 27 12:30:49 2019
@@ -0,0 +1,641 @@
+/**
+ * Featherlight - ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+(function($) {
+ "use strict";
+
+ if('undefined' === typeof $) {
+ if('console' in window){ window.console.info('Too much lightness, Featherlight needs jQuery.'); }
+ return;
+ }
+ if($.fn.jquery.match(/-ajax/)) {
+ if('console' in window){ window.console.info('Featherlight needs regular jQuery, not the slim version.'); }
+ return;
+ }
+ /* Featherlight is exported as $.featherlight.
+   It is a function used to open a featherlight lightbox.
+
+   [tech]
+   Featherlight uses prototype inheritance.
+   Each opened lightbox will have a corresponding object.
+   That object may have some attributes that override the
+   prototype's.
+   Extensions created with Featherlight.extend will have their
+   own prototype that inherits from Featherlight's prototype,
+   thus attributes can be overriden either at the object level,
+   or at the extension level.
+   To create callbacks that chain themselves instead of overriding,
+   use chainCallbacks.
+   For those familiar with CoffeeScript, this correspond to
+   Featherlight being a class and the Gallery being a class
+   extending Featherlight.
+   The chainCallbacks is used since we don't have access to
+   CoffeeScript's `super`.
+ */
+
+ function Featherlight($content, config) {
+ if(this instanceof Featherlight) {  /* called with new */
+ this.id = Featherlight.id++;
+ this.setup($content, config);
+ this.chainCallbacks(Featherlight._callbackChain);
+ } else {
+ var fl = new Featherlight($content, config);
+ fl.open();
+ return fl;
+ }
+ }
+
+ var opened = [],
+ pruneOpened = function(remove) {
+ opened = $.grep(opened, function(fl) {
+ return fl !== remove && fl.$instance.closest('body').length > 0;
+ } );
+ return opened;
+ };
+
+ // Removes keys of `set` from `obj` and returns the removed key/values.
+ function slice(obj, set) {
+ var r = {};
+ for (var key in obj) {
+ if (key in set) {
+ r[key] = obj[key];
+ delete obj[key];
+ }
+ }
+ return r;
+ }
+
+ // NOTE: List of available [iframe attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe).
+ var iFrameAttributeSet = {
+ allow: 1, allowfullscreen: 1, frameborder: 1, height: 1, longdesc: 1, marginheight: 1, marginwidth: 1,
+ mozallowfullscreen: 1, name: 1, referrerpolicy: 1, sandbox: 1, scrolling: 1, src: 1, srcdoc: 1, style: 1,
+ webkitallowfullscreen: 1, width: 1
+ };
+
+ // Converts camelCased attributes to dasherized versions for given prefix:
+ //   parseAttrs({hello: 1, hellFrozeOver: 2}, 'hell') => {froze-over: 2}
+ function parseAttrs(obj, prefix) {
+ var attrs = {},
+ regex = new RegExp('^' + prefix + '([A-Z])(.*)');
+ for (var key in obj) {
+ var match = key.match(regex);
+ if (match) {
+ var dasherized = (match[1] + match[2].replace(/([A-Z])/g, '-$1')).toLowerCase();
+ attrs[dasherized] = obj[key];
+ }
+ }
+ return attrs;
+ }
+
+ /* document wide key handler */
+ var eventMap = { keyup: 'onKeyUp', resize: 'onResize' };
+
+ var globalEventHandler = function(event) {
+ $.each(Featherlight.opened().reverse(), function() {
+ if (!event.isDefaultPrevented()) {
+ if (false === this[eventMap[event.type]](event)) {
+ event.preventDefault(); event.stopPropagation(); return false;
+  }
+ }
+ });
+ };
+
+ var toggleGlobalEvents = function(set) {
+ if(set !== Featherlight._globalHandlerInstalled) {
+ Featherlight._globalHandlerInstalled = set;
+ var events = $.map(eventMap, function(_, name) { return name+'.'+Featherlight.prototype.namespace; } ).join(' ');
+ $(window)[set ? 'on' : 'off'](events, globalEventHandler);
+ }
+ };
+
+ Featherlight.prototype = {
+ constructor: Featherlight,
+ /*** defaults ***/
+ /* extend featherlight with defaults and methods */
+ namespace:      'featherlight',        /* Name of the events and css class prefix */
+ targetAttr:     'data-featherlight',   /* Attribute of the triggered element that contains the selector to the lightbox content */
+ variant:        null,                  /* Class that will be added to change look of the lightbox */
+ resetCss:       false,                 /* Reset all css */
+ background:     null,                  /* Custom DOM for the background, wrapper and the closebutton */
+ openTrigger:    'click',               /* Event that triggers the lightbox */
+ closeTrigger:   'click',               /* Event that triggers the closing of the lightbox */
+ filter:         null,                  /* Selector to filter events. Think $(...).on('click', filter, eventHandler) */
+ root:           'body',                /* Where to append featherlights */
+ openSpeed:      250,                   /* Duration of opening animation */
+ closeSpeed:     250,                   /* Duration of closing animation */
+ closeOnClick:   'background',          /* Close lightbox on click ('background', 'anywhere' or false) */
+ closeOnEsc:     true,                  /* Close lightbox when pressing esc */
+ closeIcon:      '✕',            /* Close icon */
+ loading:        '',                    /* Content to show while initial content is loading */
+ persist:        false,                 /* If set, the content will persist and will be shown again when opened again. 'shared' is a special value when binding multiple elements for them to share the same content */
+ otherClose:     null,                  /* Selector for alternate close buttons (e.g. "a.close") */
+ beforeOpen:     $.noop,                /* Called before open. can return false to prevent opening of lightbox. Gets event as parameter, this contains all data */
+ beforeContent:  $.noop,                /* Called when content is loaded. Gets event as parameter, this contains all data */
+ beforeClose:    $.noop,                /* Called before close. can return false to prevent opening of lightbox. Gets event as parameter, this contains all data */
+ afterOpen:      $.noop,                /* Called after open. Gets event as parameter, this contains all data */
+ afterContent:   $.noop,                /* Called after content is ready and has been set. Gets event as parameter, this contains all data */
+ afterClose:     $.noop,                /* Called after close. Gets event as parameter, this contains all data */
+ onKeyUp:        $.noop,                /* Called on key up for the frontmost featherlight */
+ onResize:       $.noop,                /* Called after new content and when a window is resized */
+ type:           null,                  /* Specify type of lightbox. If unset, it will check for the targetAttrs value. */
+ contentFilters: ['jquery', 'image', 'html', 'ajax', 'iframe', 'text'], /* List of content filters to use to determine the content */
+
+ /*** methods ***/
+ /* setup iterates over a single instance of featherlight and prepares the background and binds the events */
+ setup: function(target, config){
+ /* all arguments are optional */
+ if (typeof target === 'object' && target instanceof $ === false && !config) {
+ config = target;
+ target = undefined;
+ }
+
+ var self = $.extend(this, config, {target: target}),
+ css = !self.resetCss ? self.namespace : self.namespace+'-reset', /* by adding -reset to the classname, we reset all the default css */
+ $background = $(self.background || [
+ '<div class="'+css+'-loading '+css+'">',
+ '<div class="'+css+'-content">',
+ '<button class="'+css+'-close-icon '+ self.namespace + '-close" aria-label="Close">',
+ self.closeIcon,
+ '</button>',
+ '<div class="'+self.namespace+'-inner">' + self.loading + '</div>',
+ '</div>',
+ '</div>'].join('')),
+ closeButtonSelector = '.'+self.namespace+'-close' + (self.otherClose ? ',' + self.otherClose : '');
+
+ self.$instance = $background.clone().addClass(self.variant); /* clone DOM for the background, wrapper and the close button */
+
+ /* close when click on background/anywhere/null or closebox */
+ self.$instance.on(self.closeTrigger+'.'+self.namespace, function(event) {
+ if(event.isDefaultPrevented()) {
+ return;
+ }
+ var $target = $(event.target);
+ if( ('background' === self.closeOnClick  && $target.is('.'+self.namespace))
+ || 'anywhere' === self.closeOnClick
+ || $target.closest(closeButtonSelector).length ){
+ self.close(event);
+ event.preventDefault();
+ }
+ });
+
+ return this;
+ },
+
+ /* this method prepares the content and converts it into a jQuery object or a promise */
+ getContent: function(){
+ if(this.persist !== false && this.$content) {
+ return this.$content;
+ }
+ var self = this,
+ filters = this.constructor.contentFilters,
+ readTargetAttr = function(name){ return self.$currentTarget && self.$currentTarget.attr(name); },
+ targetValue = readTargetAttr(self.targetAttr),
+ data = self.target || targetValue || '';
+
+ /* Find which filter applies */
+ var filter = filters[self.type]; /* check explicit type like {type: 'image'} */
+
+ /* check explicit type like data-featherlight="image" */
+ if(!filter && data in filters) {
+ filter = filters[data];
+ data = self.target && targetValue;
+ }
+ data = data || readTargetAttr('href') || '';
+
+ /* check explicity type & content like {image: 'photo.jpg'} */
+ if(!filter) {
+ for(var filterName in filters) {
+ if(self[filterName]) {
+ filter = filters[filterName];
+ data = self[filterName];
+ }
+ }
+ }
+
+ /* otherwise it's implicit, run checks */
+ if(!filter) {
+ var target = data;
+ data = null;
+ $.each(self.contentFilters, function() {
+ filter = filters[this];
+ if(filter.test)  {
+ data = filter.test(target);
+ }
+ if(!data && filter.regex && target.match && target.match(filter.regex)) {
+ data = target;
+ }
+ return !data;
+ });
+ if(!data) {
+ if('console' in window){ window.console.error('Featherlight: no content filter found ' + (target ? ' for "' + target + '"' : ' (no target specified)')); }
+ return false;
+ }
+ }
+ /* Process it */
+ return filter.process.call(self, data);
+ },
+
+ /* sets the content of $instance to $content */
+ setContent: function($content){
+      this.$instance.removeClass(this.namespace+'-loading');
+
+      /* we need a special class for the iframe */
+      this.$instance.toggleClass(this.namespace+'-iframe', $content.is('iframe'));
+
+      /* replace content by appending to existing one before it is removed
+         this insures that featherlight-inner remain at the same relative
+         position to any other items added to featherlight-content */
+      this.$instance.find('.'+this.namespace+'-inner')
+        .not($content)                /* excluded new content, important if persisted */
+        .slice(1).remove().end()      /* In the unexpected event where there are many inner elements, remove all but the first one */
+        .replaceWith($.contains(this.$instance[0], $content[0]) ? '' : $content);
+
+      this.$content = $content.addClass(this.namespace+'-inner');
+
+      return this;
+ },
+
+ /* opens the lightbox. "this" contains $instance with the lightbox, and with the config.
+ Returns a promise that is resolved after is successfully opened. */
+ open: function(event){
+ var self = this;
+ self.$instance.hide().appendTo(self.root);
+ if((!event || !event.isDefaultPrevented())
+ && self.beforeOpen(event) !== false) {
+
+ if(event){
+ event.preventDefault();
+ }
+ var $content = self.getContent();
+
+ if($content) {
+ opened.push(self);
+
+ toggleGlobalEvents(true);
+
+ self.$instance.fadeIn(self.openSpeed);
+ self.beforeContent(event);
+
+ /* Set content and show */
+ return $.when($content)
+ .always(function($content){
+ self.setContent($content);
+ self.afterContent(event);
+ })
+ .then(self.$instance.promise())
+ /* Call afterOpen after fadeIn is done */
+ .done(function(){ self.afterOpen(event); });
+ }
+ }
+ self.$instance.detach();
+ return $.Deferred().reject().promise();
+ },
+
+ /* closes the lightbox. "this" contains $instance with the lightbox, and with the config
+ returns a promise, resolved after the lightbox is successfully closed. */
+ close: function(event){
+ var self = this,
+ deferred = $.Deferred();
+
+ if(self.beforeClose(event) === false) {
+ deferred.reject();
+ } else {
+
+ if (0 === pruneOpened(self).length) {
+ toggleGlobalEvents(false);
+ }
+
+ self.$instance.fadeOut(self.closeSpeed,function(){
+ self.$instance.detach();
+ self.afterClose(event);
+ deferred.resolve();
+ });
+ }
+ return deferred.promise();
+ },
+
+ /* resizes the content so it fits in visible area and keeps the same aspect ratio.
+ Does nothing if either the width or the height is not specified.
+ Called automatically on window resize.
+ Override if you want different behavior. */
+ resize: function(w, h) {
+ if (w && h) {
+ /* Reset apparent image size first so container grows */
+ this.$content.css('width', '').css('height', '');
+ /* Calculate the worst ratio so that dimensions fit */
+ /* Note: -1 to avoid rounding errors */
+ var ratio = Math.max(
+ w  / (this.$content.parent().width()-1),
+ h / (this.$content.parent().height()-1));
+ /* Resize content */
+ if (ratio > 1) {
+ ratio = h / Math.floor(h / ratio); /* Round ratio down so height calc works */
+ this.$content.css('width', '' + w / ratio + 'px').css('height', '' + h / ratio + 'px');
+ }
+ }
+ },
+
+ /* Utility function to chain callbacks
+   [Warning: guru-level]
+   Used be extensions that want to let users specify callbacks but
+   also need themselves to use the callbacks.
+   The argument 'chain' has callback names as keys and function(super, event)
+   as values. That function is meant to call `super` at some point.
+ */
+ chainCallbacks: function(chain) {
+ for (var name in chain) {
+ this[name] = $.proxy(chain[name], this, $.proxy(this[name], this));
+ }
+ }
+ };
+
+ $.extend(Featherlight, {
+ id: 0,                                    /* Used to id single featherlight instances */
+ autoBind:       '[data-featherlight]',    /* Will automatically bind elements matching this selector. Clear or set before onReady */
+ defaults:       Featherlight.prototype,   /* You can access and override all defaults using $.featherlight.defaults, which is just a synonym for $.featherlight.prototype */
+ /* Contains the logic to determine content */
+ contentFilters: {
+ jquery: {
+ regex: /^[#.]\w/,         /* Anything that starts with a class name or identifiers */
+ test: function(elem)    { return elem instanceof $ && elem; },
+ process: function(elem) { return this.persist !== false ? $(elem) : $(elem).clone(true); }
+ },
+ image: {
+ regex: /\.(png|jpg|jpeg|gif|tiff?|bmp|svg)(\?\S*)?$/i,
+ process: function(url)  {
+ var self = this,
+ deferred = $.Deferred(),
+ img = new Image(),
+ $img = $('<img src="'+url+'" alt="" class="'+self.namespace+'-image" />');
+ img.onload  = function() {
+ /* Store naturalWidth & height for IE8 */
+ $img.naturalWidth = img.width; $img.naturalHeight = img.height;
+ deferred.resolve( $img );
+ };
+ img.onerror = function() { deferred.reject($img); };
+ img.src = url;
+ return deferred.promise();
+ }
+ },
+ html: {
+ regex: /^\s*<[\w!][^<]*>/, /* Anything that starts with some kind of valid tag */
+ process: function(html) { return $(html); }
+ },
+ ajax: {
+ regex: /./,            /* At this point, any content is assumed to be an URL */
+ process: function(url)  {
+ var self = this,
+ deferred = $.Deferred();
+ /* we are using load so one can specify a target with: url.html #targetelement */
+ var $container = $('<div></div>').load(url, function(response, status){
+ if ( status !== "error" ) {
+ deferred.resolve($container.contents());
+ }
+ deferred.fail();
+ });
+ return deferred.promise();
+ }
+ },
+ iframe: {
+ process: function(url) {
+ var deferred = new $.Deferred();
+ var $content = $('<iframe/>');
+ var css = parseAttrs(this, 'iframe');
+ var attrs = slice(css, iFrameAttributeSet);
+ $content.hide()
+ .attr('src', url)
+ .attr(attrs)
+ .css(css)
+ .on('load', function() { deferred.resolve($content.show()); })
+ // We can't move an <iframe> and avoid reloading it,
+ // so let's put it in place ourselves right now:
+ .appendTo(this.$instance.find('.' + this.namespace + '-content'));
+ return deferred.promise();
+ }
+ },
+ text: {
+ process: function(text) { return $('<div>', {text: text}); }
+ }
+ },
+
+ functionAttributes: ['beforeOpen', 'afterOpen', 'beforeContent', 'afterContent', 'beforeClose', 'afterClose'],
+
+ /*** class methods ***/
+ /* read element's attributes starting with data-featherlight- */
+ readElementConfig: function(element, namespace) {
+ var Klass = this,
+ regexp = new RegExp('^data-' + namespace + '-(.*)'),
+ config = {};
+ if (element && element.attributes) {
+ $.each(element.attributes, function(){
+ var match = this.name.match(regexp);
+ if (match) {
+ var val = this.value,
+ name = $.camelCase(match[1]);
+ if ($.inArray(name, Klass.functionAttributes) >= 0) {  /* jshint -W054 */
+ val = new Function(val);                           /* jshint +W054 */
+ } else {
+ try { val = JSON.parse(val); }
+ catch(e) {}
+ }
+ config[name] = val;
+ }
+ });
+ }
+ return config;
+ },
+
+ /* Used to create a Featherlight extension
+   [Warning: guru-level]
+   Creates the extension's prototype that in turn
+   inherits Featherlight's prototype.
+   Could be used to extend an extension too...
+   This is pretty high level wizardy, it comes pretty much straight
+   from CoffeeScript and won't teach you anything about Featherlight
+   as it's not really specific to this library.
+   My suggestion: move along and keep your sanity.
+ */
+ extend: function(child, defaults) {
+ /* Setup class hierarchy, adapted from CoffeeScript */
+ var Ctor = function(){ this.constructor = child; };
+ Ctor.prototype = this.prototype;
+ child.prototype = new Ctor();
+ child.__super__ = this.prototype;
+ /* Copy class methods & attributes */
+ $.extend(child, this, defaults);
+ child.defaults = child.prototype;
+ return child;
+ },
+
+ attach: function($source, $content, config) {
+ var Klass = this;
+ if (typeof $content === 'object' && $content instanceof $ === false && !config) {
+ config = $content;
+ $content = undefined;
+ }
+ /* make a copy */
+ config = $.extend({}, config);
+
+ /* Only for openTrigger, filter & namespace... */
+ var namespace = config.namespace || Klass.defaults.namespace,
+ tempConfig = $.extend({}, Klass.defaults, Klass.readElementConfig($source[0], namespace), config),
+ sharedPersist;
+ var handler = function(event) {
+ var $target = $(event.currentTarget);
+ /* ... since we might as well compute the config on the actual target */
+ var elemConfig = $.extend(
+ {$source: $source, $currentTarget: $target},
+ Klass.readElementConfig($source[0], tempConfig.namespace),
+ Klass.readElementConfig(event.currentTarget, tempConfig.namespace),
+ config);
+ var fl = sharedPersist || $target.data('featherlight-persisted') || new Klass($content, elemConfig);
+ if(fl.persist === 'shared') {
+ sharedPersist = fl;
+ } else if(fl.persist !== false) {
+ $target.data('featherlight-persisted', fl);
+ }
+ if (elemConfig.$currentTarget.blur) {
+ elemConfig.$currentTarget.blur(); // Otherwise 'enter' key might trigger the dialog again
+ }
+ fl.open(event);
+ };
+
+ $source.on(tempConfig.openTrigger+'.'+tempConfig.namespace, tempConfig.filter, handler);
+
+ return {filter: tempConfig.filter, handler: handler};
+ },
+
+ current: function() {
+ var all = this.opened();
+ return all[all.length - 1] || null;
+ },
+
+ opened: function() {
+ var klass = this;
+ pruneOpened();
+ return $.grep(opened, function(fl) { return fl instanceof klass; } );
+ },
+
+ close: function(event) {
+ var cur = this.current();
+ if(cur) { return cur.close(event); }
+ },
+
+ /* Does the auto binding on startup.
+   Meant only to be used by Featherlight and its extensions
+ */
+ _onReady: function() {
+ var Klass = this;
+ if(Klass.autoBind){
+ var $autobound = $(Klass.autoBind);
+ /* Bind existing elements */
+ $autobound.each(function(){
+ Klass.attach($(this));
+ });
+ /* If a click propagates to the document level, then we have an item that was added later on */
+ $(document).on('click', Klass.autoBind, function(evt) {
+ if (evt.isDefaultPrevented()) {
+ return;
+ }
+ var $cur = $(evt.currentTarget);
+ var len = $autobound.length;
+ $autobound = $autobound.add($cur);
+ if(len === $autobound.length) {
+ return; /* already bound */
+ }
+ /* Bind featherlight */
+ var data = Klass.attach($cur);
+ /* Dispatch event directly */
+ if (!data.filter || $(evt.target).parentsUntil($cur, data.filter).length > 0) {
+ data.handler(evt);
+ }
+ });
+ }
+ },
+
+ /* Featherlight uses the onKeyUp callback to intercept the escape key.
+   Private to Featherlight.
+ */
+ _callbackChain: {
+ onKeyUp: function(_super, event){
+ if(27 === event.keyCode) {
+ if (this.closeOnEsc) {
+ $.featherlight.close(event);
+ }
+ return false;
+ } else {
+ return _super(event);
+ }
+ },
+
+ beforeOpen: function(_super, event) {
+ // Used to disable scrolling
+ $(document.documentElement).addClass('with-featherlight');
+
+ // Remember focus:
+ this._previouslyActive = document.activeElement;
+
+ // Disable tabbing:
+ // See http://stackoverflow.com/questions/1599660/which-html-elements-can-receive-focus
+ this._$previouslyTabbable = $("a, input, select, textarea, iframe, button, iframe, [contentEditable=true]")
+ .not('[tabindex]')
+ .not(this.$instance.find('button'));
+
+ this._$previouslyWithTabIndex = $('[tabindex]').not('[tabindex="-1"]');
+ this._previousWithTabIndices = this._$previouslyWithTabIndex.map(function(_i, elem) {
+ return $(elem).attr('tabindex');
+ });
+
+ this._$previouslyWithTabIndex.add(this._$previouslyTabbable).attr('tabindex', -1);
+
+ if (document.activeElement.blur) {
+ document.activeElement.blur();
+ }
+ return _super(event);
+ },
+
+ afterClose: function(_super, event) {
+ var r = _super(event);
+ // Restore focus
+ var self = this;
+ this._$previouslyTabbable.removeAttr('tabindex');
+ this._$previouslyWithTabIndex.each(function(i, elem) {
+ $(elem).attr('tabindex', self._previousWithTabIndices[i]);
+ });
+ this._previouslyActive.focus();
+ // Restore scroll
+ if(Featherlight.opened().length === 0) {
+ $(document.documentElement).removeClass('with-featherlight');
+ }
+ return r;
+ },
+
+ onResize: function(_super, event){
+ this.resize(this.$content.naturalWidth, this.$content.naturalHeight);
+ return _super(event);
+ },
+
+ afterContent: function(_super, event){
+ var r = _super(event);
+ this.$instance.find('[autofocus]:not([disabled])').focus();
+ this.onResize(event);
+ return r;
+ }
+ }
+ });
+
+ $.featherlight = Featherlight;
+
+ /* bind jQuery elements to trigger featherlight */
+ $.fn.featherlight = function($content, config) {
+ Featherlight.attach(this, $content, config);
+ return this;
+ };
+
+ /* bind featherlight on ready if config autoBind is set */
+ $(document).ready(function(){ Featherlight._onReady(); });
+}(jQuery));

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css Sat Jul 27 12:30:49 2019
@@ -0,0 +1,8 @@
+/**
+ * Featherlight - ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+html.with-featherlight{overflow:hidden}.featherlight{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;text-align:center;white-space:nowrap;cursor:pointer;background:#333;background:rgba(0,0,0,0)}.featherlight:last-of-type{background:rgba(0,0,0,.8)}.featherlight:before{content:'';display:inline-block;height:100%;vertical-align:middle}.featherlight .featherlight-content{position:relative;text-align:left;vertical-align:middle;display:inline-block;overflow:auto;padding:25px 25px 0;border-bottom:25px solid transparent;margin-left:5%;margin-right:5%;max-height:95%;background:#fff;cursor:auto;white-space:normal}.featherlight .featherlight-inner{display:block}.featherlight link.featherlight-inner,.featherlight script.featherlight-inner,.featherlight style.featherlight-inner{display:none}.featherlight .featherlight-close-icon{position:absolute;z-index:9999;top:0;right:0;line-height:25px;width:25px;cursor:pointer;text-align:center;font-family:Arial,sans-serif;backg
 round:#fff;background:rgba(255,255,255,.3);color:#000;border:0;padding:0}.featherlight .featherlight-close-icon::-moz-focus-inner{border:0;padding:0}.featherlight .featherlight-image{width:100%}.featherlight-iframe .featherlight-content{border-bottom:0;padding:0;-webkit-overflow-scrolling:touch}.featherlight iframe{border:0}.featherlight *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}@media only screen and (max-width:1024px){.featherlight .featherlight-content{margin-left:0;margin-right:0;max-height:98%;padding:10px 10px 0;border-bottom:10px solid transparent}}@media print{html.with-featherlight>*>:not(.featherlight){display:none}}
\ No newline at end of file

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js Sat Jul 27 12:30:49 2019
@@ -0,0 +1,8 @@
+/**
+ * Featherlight - ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+!function(a){"use strict";function b(a,c){if(!(this instanceof b)){var d=new b(a,c);return d.open(),d}this.id=b.id++,this.setup(a,c),this.chainCallbacks(b._callbackChain)}function c(a,b){var c={};for(var d in a)d in b&&(c[d]=a[d],delete a[d]);return c}function d(a,b){var c={},d=new RegExp("^"+b+"([A-Z])(.*)");for(var e in a){var f=e.match(d);if(f){var g=(f[1]+f[2].replace(/([A-Z])/g,"-$1")).toLowerCase();c[g]=a[e]}}return c}if("undefined"==typeof a)return void("console"in window&&window.console.info("Too much lightness, Featherlight needs jQuery."));if(a.fn.jquery.match(/-ajax/))return void("console"in window&&window.console.info("Featherlight needs regular jQuery, not the slim version."));var e=[],f=function(b){return e=a.grep(e,function(a){return a!==b&&a.$instance.closest("body").length>0})},g={allow:1,allowfullscreen:1,frameborder:1,height:1,longdesc:1,marginheight:1,marginwidth:1,mozallowfullscreen:1,name:1,referrerpolicy:1,sandbox:1,scrolling:1,src:1,srcdoc:1,style:1,webkitall
 owfullscreen:1,width:1},h={keyup:"onKeyUp",resize:"onResize"},i=function(c){a.each(b.opened().reverse(),function(){return c.isDefaultPrevented()||!1!==this[h[c.type]](c)?void 0:(c.preventDefault(),c.stopPropagation(),!1)})},j=function(c){if(c!==b._globalHandlerInstalled){b._globalHandlerInstalled=c;var d=a.map(h,function(a,c){return c+"."+b.prototype.namespace}).join(" ");a(window)[c?"on":"off"](d,i)}};b.prototype={constructor:b,namespace:"featherlight",targetAttr:"data-featherlight",variant:null,resetCss:!1,background:null,openTrigger:"click",closeTrigger:"click",filter:null,root:"body",openSpeed:250,closeSpeed:250,closeOnClick:"background",closeOnEsc:!0,closeIcon:"&#10005;",loading:"",persist:!1,otherClose:null,beforeOpen:a.noop,beforeContent:a.noop,beforeClose:a.noop,afterOpen:a.noop,afterContent:a.noop,afterClose:a.noop,onKeyUp:a.noop,onResize:a.noop,type:null,contentFilters:["jquery","image","html","ajax","iframe","text"],setup:function(b,c){"object"!=typeof b||b instanceof a!=
 !1||c||(c=b,b=void 0);var d=a.extend(this,c,{target:b}),e=d.resetCss?d.namespace+"-reset":d.namespace,f=a(d.background||['<div class="'+e+"-loading "+e+'">','<div class="'+e+'-content">','<button class="'+e+"-close-icon "+d.namespace+'-close" aria-label="Close">',d.closeIcon,"</button>",'<div class="'+d.namespace+'-inner">'+d.loading+"</div>","</div>","</div>"].join("")),g="."+d.namespace+"-close"+(d.otherClose?","+d.otherClose:"");return d.$instance=f.clone().addClass(d.variant),d.$instance.on(d.closeTrigger+"."+d.namespace,function(b){if(!b.isDefaultPrevented()){var c=a(b.target);("background"===d.closeOnClick&&c.is("."+d.namespace)||"anywhere"===d.closeOnClick||c.closest(g).length)&&(d.close(b),b.preventDefault())}}),this},getContent:function(){if(this.persist!==!1&&this.$content)return this.$content;var b=this,c=this.constructor.contentFilters,d=function(a){return b.$currentTarget&&b.$currentTarget.attr(a)},e=d(b.targetAttr),f=b.target||e||"",g=c[b.type];if(!g&&f in c&&(g=c[f],f
 =b.target&&e),f=f||d("href")||"",!g)for(var h in c)b[h]&&(g=c[h],f=b[h]);if(!g){var i=f;if(f=null,a.each(b.contentFilters,function(){return g=c[this],g.test&&(f=g.test(i)),!f&&g.regex&&i.match&&i.match(g.regex)&&(f=i),!f}),!f)return"console"in window&&window.console.error("Featherlight: no content filter found "+(i?' for "'+i+'"':" (no target specified)")),!1}return g.process.call(b,f)},setContent:function(b){return this.$instance.removeClass(this.namespace+"-loading"),this.$instance.toggleClass(this.namespace+"-iframe",b.is("iframe")),this.$instance.find("."+this.namespace+"-inner").not(b).slice(1).remove().end().replaceWith(a.contains(this.$instance[0],b[0])?"":b),this.$content=b.addClass(this.namespace+"-inner"),this},open:function(b){var c=this;if(c.$instance.hide().appendTo(c.root),!(b&&b.isDefaultPrevented()||c.beforeOpen(b)===!1)){b&&b.preventDefault();var d=c.getContent();if(d)return e.push(c),j(!0),c.$instance.fadeIn(c.openSpeed),c.beforeContent(b),a.when(d).always(function
 (a){c.setContent(a),c.afterContent(b)}).then(c.$instance.promise()).done(function(){c.afterOpen(b)})}return c.$instance.detach(),a.Deferred().reject().promise()},close:function(b){var c=this,d=a.Deferred();return c.beforeClose(b)===!1?d.reject():(0===f(c).length&&j(!1),c.$instance.fadeOut(c.closeSpeed,function(){c.$instance.detach(),c.afterClose(b),d.resolve()})),d.promise()},resize:function(a,b){if(a&&b){this.$content.css("width","").css("height","");var c=Math.max(a/(this.$content.parent().width()-1),b/(this.$content.parent().height()-1));c>1&&(c=b/Math.floor(b/c),this.$content.css("width",""+a/c+"px").css("height",""+b/c+"px"))}},chainCallbacks:function(b){for(var c in b)this[c]=a.proxy(b[c],this,a.proxy(this[c],this))}},a.extend(b,{id:0,autoBind:"[data-featherlight]",defaults:b.prototype,contentFilters:{jquery:{regex:/^[#.]\w/,test:function(b){return b instanceof a&&b},process:function(b){return this.persist!==!1?a(b):a(b).clone(!0)}},image:{regex:/\.(png|jpg|jpeg|gif|tiff?|bmp|
 svg)(\?\S*)?$/i,process:function(b){var c=this,d=a.Deferred(),e=new Image,f=a('<img src="'+b+'" alt="" class="'+c.namespace+'-image" />');return e.onload=function(){f.naturalWidth=e.width,f.naturalHeight=e.height,d.resolve(f)},e.onerror=function(){d.reject(f)},e.src=b,d.promise()}},html:{regex:/^\s*<[\w!][^<]*>/,process:function(b){return a(b)}},ajax:{regex:/./,process:function(b){var c=a.Deferred(),d=a("<div></div>").load(b,function(a,b){"error"!==b&&c.resolve(d.contents()),c.fail()});return c.promise()}},iframe:{process:function(b){var e=new a.Deferred,f=a("<iframe/>"),h=d(this,"iframe"),i=c(h,g);return f.hide().attr("src",b).attr(i).css(h).on("load",function(){e.resolve(f.show())}).appendTo(this.$instance.find("."+this.namespace+"-content")),e.promise()}},text:{process:function(b){return a("<div>",{text:b})}}},functionAttributes:["beforeOpen","afterOpen","beforeContent","afterContent","beforeClose","afterClose"],readElementConfig:function(b,c){var d=this,e=new RegExp("^data-"+c+"
 -(.*)"),f={};return b&&b.attributes&&a.each(b.attributes,function(){var b=this.name.match(e);if(b){var c=this.value,g=a.camelCase(b[1]);if(a.inArray(g,d.functionAttributes)>=0)c=new Function(c);else try{c=JSON.parse(c)}catch(h){}f[g]=c}}),f},extend:function(b,c){var d=function(){this.constructor=b};return d.prototype=this.prototype,b.prototype=new d,b.__super__=this.prototype,a.extend(b,this,c),b.defaults=b.prototype,b},attach:function(b,c,d){var e=this;"object"!=typeof c||c instanceof a!=!1||d||(d=c,c=void 0),d=a.extend({},d);var f,g=d.namespace||e.defaults.namespace,h=a.extend({},e.defaults,e.readElementConfig(b[0],g),d),i=function(g){var i=a(g.currentTarget),j=a.extend({$source:b,$currentTarget:i},e.readElementConfig(b[0],h.namespace),e.readElementConfig(g.currentTarget,h.namespace),d),k=f||i.data("featherlight-persisted")||new e(c,j);"shared"===k.persist?f=k:k.persist!==!1&&i.data("featherlight-persisted",k),j.$currentTarget.blur&&j.$currentTarget.blur(),k.open(g)};return b.on(h
 .openTrigger+"."+h.namespace,h.filter,i),{filter:h.filter,handler:i}},current:function(){var a=this.opened();return a[a.length-1]||null},opened:function(){var b=this;return f(),a.grep(e,function(a){return a instanceof b})},close:function(a){var b=this.current();return b?b.close(a):void 0},_onReady:function(){var b=this;if(b.autoBind){var c=a(b.autoBind);c.each(function(){b.attach(a(this))}),a(document).on("click",b.autoBind,function(d){if(!d.isDefaultPrevented()){var e=a(d.currentTarget),f=c.length;if(c=c.add(e),f!==c.length){var g=b.attach(e);(!g.filter||a(d.target).parentsUntil(e,g.filter).length>0)&&g.handler(d)}}})}},_callbackChain:{onKeyUp:function(b,c){return 27===c.keyCode?(this.closeOnEsc&&a.featherlight.close(c),!1):b(c)},beforeOpen:function(b,c){return a(document.documentElement).addClass("with-featherlight"),this._previouslyActive=document.activeElement,this._$previouslyTabbable=a("a, input, select, textarea, iframe, button, iframe, [contentEditable=true]").not("[tabindex
 ]").not(this.$instance.find("button")),this._$previouslyWithTabIndex=a("[tabindex]").not('[tabindex="-1"]'),this._previousWithTabIndices=this._$previouslyWithTabIndex.map(function(b,c){return a(c).attr("tabindex")}),this._$previouslyWithTabIndex.add(this._$previouslyTabbable).attr("tabindex",-1),document.activeElement.blur&&document.activeElement.blur(),b(c)},afterClose:function(c,d){var e=c(d),f=this;return this._$previouslyTabbable.removeAttr("tabindex"),this._$previouslyWithTabIndex.each(function(b,c){a(c).attr("tabindex",f._previousWithTabIndices[b])}),this._previouslyActive.focus(),0===b.opened().length&&a(document.documentElement).removeClass("with-featherlight"),e},onResize:function(a,b){return this.resize(this.$content.naturalWidth,this.$content.naturalHeight),a(b)},afterContent:function(a,b){var c=a(b);return this.$instance.find("[autofocus]:not([disabled])").focus(),this.onResize(b),c}}}),a.featherlight=b,a.fn.featherlight=function(a,c){return b.attach(this,a,c),this},a(do
 cument).ready(function(){b._onReady()})}(jQuery);
\ No newline at end of file

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css Sat Jul 27 12:30:49 2019
@@ -0,0 +1,122 @@
+/**
+ * Featherlight Gallery – an extension for the ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+
+.featherlight-next,
+.featherlight-previous {
+ display: block;
+ position: absolute;
+ top: 25px;
+ right: 25px;
+ bottom: 0;
+ left: 80%;
+ cursor: pointer;
+ /* preventing text selection */
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+ /* IE9 hack, otherwise navigation doesn't appear */
+ background: rgba(0,0,0,0);
+}
+
+.featherlight-previous {
+ left: 25px;
+ right: 80%;
+}
+
+.featherlight-next:hover,
+.featherlight-previous:hover {
+ background: rgba(255,255,255,0.25);
+}
+
+
+.featherlight-next span,
+.featherlight-previous span {
+ display: none;
+ position: absolute;
+
+ top: 50%;
+ left: 5%;
+ width: 82%;
+
+ /* center horizontally */
+ text-align: center;
+
+ font-size: 80px;
+ line-height: 80px;
+
+ /* center vertically */
+ margin-top: -40px;
+
+ text-shadow: 0px 0px 5px #fff;
+ color: #fff;
+ font-style: normal;
+ font-weight: normal;
+}
+.featherlight-next span {
+ right: 5%;
+ left: auto;
+}
+
+
+.featherlight-next:hover span,
+.featherlight-previous:hover span {
+ display: inline-block;
+}
+
+.featherlight-swipe-aware .featherlight-next,
+.featherlight-swipe-aware .featherlight-previous {
+ display: none;
+}
+
+/* Hide navigation while loading */
+.featherlight-loading .featherlight-previous, .featherlight-loading .featherlight-next {
+ display:none;
+}
+
+/* Hide navigation in case of single image */
+.featherlight-first-slide.featherlight-last-slide .featherlight-previous,
+.featherlight-first-slide.featherlight-last-slide .featherlight-next {
+ display:none;
+}
+
+
+/* Always display arrows on touch devices */
+@media only screen and (max-device-width: 1024px){
+ .featherlight-next:hover,
+ .featherlight-previous:hover {
+ background: none;
+ }
+ .featherlight-next span,
+ .featherlight-previous span {
+ display: block;
+ }
+}
+
+/* handling phones and small screens */
+@media only screen and (max-width: 1024px) {
+ .featherlight-next,
+ .featherlight-previous {
+ top: 10px;
+ right: 10px;
+ left: 85%;
+ }
+
+ .featherlight-previous {
+ left: 10px;
+ right: 85%;
+ }
+
+ .featherlight-next span,
+ .featherlight-previous span {
+ margin-top: -30px;
+ font-size: 40px;
+ }
+}

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js Sat Jul 27 12:30:49 2019
@@ -0,0 +1,169 @@
+/**
+ * Featherlight Gallery – an extension for the ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+(function($) {
+ "use strict";
+
+ var warn = function(m) {
+ if(window.console && window.console.warn) {
+ window.console.warn('FeatherlightGallery: ' + m);
+ }
+ };
+
+ if('undefined' === typeof $) {
+ return warn('Too much lightness, Featherlight needs jQuery.');
+ } else if(!$.featherlight) {
+ return warn('Load the featherlight plugin before the gallery plugin');
+ }
+
+ var isTouchAware = ('ontouchstart' in window) || window.DocumentTouch && document instanceof DocumentTouch,
+ jQueryConstructor = $.event && $.event.special.swipeleft && $,
+ hammerConstructor = window.Hammer && function($el){
+ var mc = new window.Hammer.Manager($el[0]);
+ mc.add(new window.Hammer.Swipe());
+ return mc;
+ },
+ swipeAwareConstructor = isTouchAware && (jQueryConstructor || hammerConstructor);
+ if(isTouchAware && !swipeAwareConstructor) {
+ warn('No compatible swipe library detected; one must be included before featherlightGallery for swipe motions to navigate the galleries.');
+ }
+
+ var callbackChain = {
+ afterClose: function(_super, event) {
+ var self = this;
+ self.$instance.off('next.'+self.namespace+' previous.'+self.namespace);
+ if (self._swiper) {
+ self._swiper
+ .off('swipeleft', self._swipeleft) /* See http://stackoverflow.com/questions/17367198/hammer-js-cant-remove-event-listener */
+ .off('swiperight', self._swiperight);
+ self._swiper = null;
+ }
+ return _super(event);
+ },
+ beforeOpen: function(_super, event){
+ var self = this;
+
+ self.$instance.on('next.'+self.namespace+' previous.'+self.namespace, function(event){
+ var offset = event.type === 'next' ? +1 : -1;
+ self.navigateTo(self.currentNavigation() + offset);
+ });
+
+ if (swipeAwareConstructor) {
+ self._swiper = swipeAwareConstructor(self.$instance)
+ .on('swipeleft', self._swipeleft = function()  { self.$instance.trigger('next'); })
+ .on('swiperight', self._swiperight = function() { self.$instance.trigger('previous'); });
+
+ self.$instance
+ .addClass(this.namespace+'-swipe-aware', swipeAwareConstructor);
+ }
+
+ self.$instance.find('.'+self.namespace+'-content')
+ .append(self.createNavigation('previous'))
+ .append(self.createNavigation('next'));
+
+ return _super(event);
+ },
+ beforeContent: function(_super, event) {
+ var index = this.currentNavigation();
+ var len = this.slides().length;
+ this.$instance
+ .toggleClass(this.namespace+'-first-slide', index === 0)
+ .toggleClass(this.namespace+'-last-slide', index === len - 1);
+ return _super(event);
+ },
+ onKeyUp: function(_super, event){
+ var dir = {
+ 37: 'previous', /* Left arrow */
+ 39: 'next' /* Rigth arrow */
+ }[event.keyCode];
+ if(dir) {
+ this.$instance.trigger(dir);
+ return false;
+ } else {
+ return _super(event);
+ }
+ }
+ };
+
+ function FeatherlightGallery($source, config) {
+ if(this instanceof FeatherlightGallery) {  /* called with new */
+ $.featherlight.apply(this, arguments);
+ this.chainCallbacks(callbackChain);
+ } else {
+ var flg = new FeatherlightGallery($.extend({$source: $source, $currentTarget: $source.first()}, config));
+ flg.open();
+ return flg;
+ }
+ }
+
+ $.featherlight.extend(FeatherlightGallery, {
+ autoBind: '[data-featherlight-gallery]'
+ });
+
+ $.extend(FeatherlightGallery.prototype, {
+ /** Additional settings for Gallery **/
+ previousIcon: '&#9664;',     /* Code that is used as previous icon */
+ nextIcon: '&#9654;',         /* Code that is used as next icon */
+ galleryFadeIn: 100,          /* fadeIn speed when image is loaded */
+ galleryFadeOut: 300,         /* fadeOut speed before image is loaded */
+
+ slides: function() {
+ if (this.filter) {
+ return this.$source.find(this.filter);
+ }
+ return this.$source;
+ },
+
+ images: function() {
+ warn('images is deprecated, please use slides instead');
+ return this.slides();
+ },
+
+ currentNavigation: function() {
+ return this.slides().index(this.$currentTarget);
+ },
+
+ navigateTo: function(index) {
+ var self = this,
+ source = self.slides(),
+ len = source.length,
+ $inner = self.$instance.find('.' + self.namespace + '-inner');
+ index = ((index % len) + len) % len; /* pin index to [0, len[ */
+
+ self.$currentTarget = source.eq(index);
+ self.beforeContent();
+ return $.when(
+ self.getContent(),
+ $inner.fadeTo(self.galleryFadeOut,0.2)
+ ).always(function($newContent) {
+ self.setContent($newContent);
+ self.afterContent();
+ $newContent.fadeTo(self.galleryFadeIn,1);
+ });
+ },
+
+ createNavigation: function(target) {
+ var self = this;
+ return $('<span title="'+target+'" class="'+this.namespace+'-'+target+'"><span>'+this[target+'Icon']+'</span></span>').click(function(evt){
+ $(this).trigger(target+'.'+self.namespace);
+ evt.preventDefault();
+ });
+ }
+ });
+
+ $.featherlightGallery = FeatherlightGallery;
+
+ /* extend jQuery with selector featherlight method $(elm).featherlight(config, elm); */
+ $.fn.featherlightGallery = function(config) {
+ FeatherlightGallery.attach(this, config);
+ return this;
+ };
+
+ /* bind featherlight on ready if config autoBind is set */
+ $(document).ready(function(){ FeatherlightGallery._onReady(); });
+
+}(jQuery));

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css Sat Jul 27 12:30:49 2019
@@ -0,0 +1,8 @@
+/**
+ * Featherlight Gallery – an extension for the ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/
+.featherlight-next,.featherlight-previous{display:block;position:absolute;top:25px;right:25px;bottom:0;left:80%;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background:rgba(0,0,0,0)}.featherlight-previous{left:25px;right:80%}.featherlight-next:hover,.featherlight-previous:hover{background:rgba(255,255,255,.25)}.featherlight-next span,.featherlight-previous span{display:none;position:absolute;top:50%;left:5%;width:82%;text-align:center;font-size:80px;line-height:80px;margin-top:-40px;text-shadow:0 0 5px #fff;color:#fff;font-style:normal;font-weight:400}.featherlight-next span{right:5%;left:auto}.featherlight-next:hover span,.featherlight-previous:hover span{display:inline-block}.featherlight-first-slide.featherlight-last-slide .featherlight-next,.featherlight-first-slide.featherlight-last-slide .featherlight-previous,.featherlight-loading .featherlight-next,.featherlight-loading
 .featherlight-previous,.featherlight-swipe-aware .featherlight-next,.featherlight-swipe-aware .featherlight-previous{display:none}@media only screen and (max-device-width:1024px){.featherlight-next:hover,.featherlight-previous:hover{background:0 0}.featherlight-next span,.featherlight-previous span{display:block}}@media only screen and (max-width:1024px){.featherlight-next,.featherlight-previous{top:10px;right:10px;left:85%}.featherlight-previous{left:10px;right:85%}.featherlight-next span,.featherlight-previous span{margin-top:-30px;font-size:40px}}
\ No newline at end of file

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.css
------------------------------------------------------------------------------
    svn:mime-type = text/css

Added: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js?rev=1863853&view=auto
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js (added)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js Sat Jul 27 12:30:49 2019
@@ -0,0 +1,7 @@
+/**
+ * Featherlight Gallery – an extension for the ultra slim jQuery lightbox
+ * Version 1.7.13 - http://noelboss.github.io/featherlight/
+ *
+ * Copyright 2018, Noël Raoul Bossart (http://www.noelboss.com)
+ * MIT Licensed.
+**/!function(a){"use strict";function b(c,d){if(!(this instanceof b)){var e=new b(a.extend({$source:c,$currentTarget:c.first()},d));return e.open(),e}a.featherlight.apply(this,arguments),this.chainCallbacks(h)}var c=function(a){window.console&&window.console.warn&&window.console.warn("FeatherlightGallery: "+a)};if("undefined"==typeof a)return c("Too much lightness, Featherlight needs jQuery.");if(!a.featherlight)return c("Load the featherlight plugin before the gallery plugin");var d="ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch,e=a.event&&a.event.special.swipeleft&&a,f=window.Hammer&&function(a){var b=new window.Hammer.Manager(a[0]);return b.add(new window.Hammer.Swipe),b},g=d&&(e||f);d&&!g&&c("No compatible swipe library detected; one must be included before featherlightGallery for swipe motions to navigate the galleries.");var h={afterClose:function(a,b){var c=this;return c.$instance.off("next."+c.namespace+" previous."+c.namespace),c._swiper&&(
 c._swiper.off("swipeleft",c._swipeleft).off("swiperight",c._swiperight),c._swiper=null),a(b)},beforeOpen:function(a,b){var c=this;return c.$instance.on("next."+c.namespace+" previous."+c.namespace,function(a){var b="next"===a.type?1:-1;c.navigateTo(c.currentNavigation()+b)}),g&&(c._swiper=g(c.$instance).on("swipeleft",c._swipeleft=function(){c.$instance.trigger("next")}).on("swiperight",c._swiperight=function(){c.$instance.trigger("previous")}),c.$instance.addClass(this.namespace+"-swipe-aware",g)),c.$instance.find("."+c.namespace+"-content").append(c.createNavigation("previous")).append(c.createNavigation("next")),a(b)},beforeContent:function(a,b){var c=this.currentNavigation(),d=this.slides().length;return this.$instance.toggleClass(this.namespace+"-first-slide",0===c).toggleClass(this.namespace+"-last-slide",c===d-1),a(b)},onKeyUp:function(a,b){var c={37:"previous",39:"next"}[b.keyCode];return c?(this.$instance.trigger(c),!1):a(b)}};a.featherlight.extend(b,{autoBind:"[data-feathe
 rlight-gallery]"}),a.extend(b.prototype,{previousIcon:"&#9664;",nextIcon:"&#9654;",galleryFadeIn:100,galleryFadeOut:300,slides:function(){return this.filter?this.$source.find(this.filter):this.$source},images:function(){return c("images is deprecated, please use slides instead"),this.slides()},currentNavigation:function(){return this.slides().index(this.$currentTarget)},navigateTo:function(b){var c=this,d=c.slides(),e=d.length,f=c.$instance.find("."+c.namespace+"-inner");return b=(b%e+e)%e,c.$currentTarget=d.eq(b),c.beforeContent(),a.when(c.getContent(),f.fadeTo(c.galleryFadeOut,.2)).always(function(a){c.setContent(a),c.afterContent(),a.fadeTo(c.galleryFadeIn,1)})},createNavigation:function(b){var c=this;return a('<span title="'+b+'" class="'+this.namespace+"-"+b+'"><span>'+this[b+"Icon"]+"</span></span>").click(function(d){a(this).trigger(b+"."+c.namespace),d.preventDefault()})}}),a.featherlightGallery=b,a.fn.featherlightGallery=function(a){return b.attach(this,a),this},a(document)
 .ready(function(){b._onReady()})}(jQuery);
\ No newline at end of file

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/ofbiz-framework/branches/release17.12/themes/common/webapp/common/js/jquery/plugins/featherlight/featherlight.gallery-1.7.13.min.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/CommonScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/CommonScreens.xml?rev=1863853&r1=1863852&r2=1863853&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/CommonScreens.xml (original)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/CommonScreens.xml Sat Jul 27 12:30:49 2019
@@ -349,6 +349,8 @@ under the License.
                         <set field="defaultOrganizationPartyId" from-field="userPreferences.ORGANIZATION_PARTY" global="true"/>
 
                         <set field="messagesTemplateLocation" from-field="layoutSettings.VT_MSG_TMPLT_LOC" default-value="component://common-theme/template/includes/Messages.ftl"/>
+                        <set field="layoutSettings.styleSheets[]" value="/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.css" global="true"/>
+                        <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/plugins/featherlight/featherlight-1.7.13.min.js" global="true"/>
                     </actions>
                     <widgets>
                         <section>
@@ -438,7 +440,7 @@ under the License.
                 <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/plugins/validate/jquery.validate.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/plugins/browser-plugin/jquery.browser-0.1.0.min.js" global="true"/>
                 <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/jquery-migrate-3.0.0.min.js" global="true" />
-                <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/jquery-3.2.1.min.js" global="true"/>
+                <set field="layoutSettings.javaScripts[+0]" value="/common/js/jquery/jquery-3.4.1.min.js" global="true"/>
                     <!-- jQuery CSSs -->
                 <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/plugins/asmselect/jquery.asmselect-1.0.4a-beta.css" global="true"/>
                 <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/ui/jquery-ui-1.12.1.min.css" global="true" />

Modified: ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/Theme.xml
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/Theme.xml?rev=1863853&r1=1863852&r2=1863853&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/Theme.xml (original)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/common/widget/Theme.xml Sat Jul 27 12:30:49 2019
@@ -57,7 +57,7 @@ under the License.
         <property name="VT_NAV_TMPLT_LOC" value="component://flatgrey/template/AppBar.ftl"/>
         <property name="VT_MSG_TMPLT_LOC" value="component://common-theme/template/includes/Messages.ftl"/>
         <!--javascript libs-->
-        <property name="VT_HDR_JAVASCRIPT['add']" value="/common/js/jquery/jquery-3.2.1.min.js"/>
+        <property name="VT_HDR_JAVASCRIPT['add']" value="/common/js/jquery/jquery-3.4.1.min.js"/>
         <property name="VT_HDR_JAVASCRIPT['add']" value="/common/js/jquery/jquery-migrate-3.0.0.min.js"/>
         <property name="VT_HDR_JAVASCRIPT['add']" value="/common/js/jquery/plugins/browser-plugin/jquery.browser-0.1.0.min.js"/>
         <property name="VT_HDR_JAVASCRIPT['add']" value="/common/js/jquery/ui/jquery-ui-1.12.1.min.js"/>

Modified: ofbiz/ofbiz-framework/branches/release17.12/themes/flatgrey/webapp/flatgrey/style.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/flatgrey/webapp/flatgrey/style.css?rev=1863853&r1=1863852&r2=1863853&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/flatgrey/webapp/flatgrey/style.css (original)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/flatgrey/webapp/flatgrey/style.css Sat Jul 27 12:30:49 2019
@@ -2252,3 +2252,7 @@ html > /**/ body .jstree-default a {
     white-space: normal;
     height: auto;
 }
+/* The custom CSS to show mouse pointer on links using featherlight plugin  */
+a[data-featherlight] {
+    cursor: pointer;
+}

Modified: ofbiz/ofbiz-framework/branches/release17.12/themes/rainbowstone/webapp/rainbowstone/style.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/rainbowstone/webapp/rainbowstone/style.css?rev=1863853&r1=1863852&r2=1863853&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/rainbowstone/webapp/rainbowstone/style.css (original)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/rainbowstone/webapp/rainbowstone/style.css Sat Jul 27 12:30:49 2019
@@ -1905,3 +1905,8 @@ html > /**/ body .jstree-default a {
 }
 
 /*end addon modification generic-portlet*/
+
+/* The custom CSS to show mouse pointer on links using featherlight plugin  */
+a[data-featherlight] {
+    cursor: pointer;
+}
\ No newline at end of file

Modified: ofbiz/ofbiz-framework/branches/release17.12/themes/tomahawk/webapp/tomahawk/css/style.css
URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/branches/release17.12/themes/tomahawk/webapp/tomahawk/css/style.css?rev=1863853&r1=1863852&r2=1863853&view=diff
==============================================================================
--- ofbiz/ofbiz-framework/branches/release17.12/themes/tomahawk/webapp/tomahawk/css/style.css (original)
+++ ofbiz/ofbiz-framework/branches/release17.12/themes/tomahawk/webapp/tomahawk/css/style.css Sat Jul 27 12:30:49 2019
@@ -4517,3 +4517,7 @@ html > /**/ body .jstree-default a {
     white-space: normal;
     height: auto;
 }
+/* The custom CSS to show mouse pointer on links using featherlight plugin  */
+a[data-featherlight] {
+    cursor: pointer;
+}
\ No newline at end of file