You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ofbiz.apache.org by Michael Brohl <mi...@ecomify.de> on 2017/12/18 16:57:47 UTC

Re: svn commit: r1818580 - in /ofbiz/ofbiz-framework/trunk: framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/ themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/ themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/1.4.1...

Jacques,

please check this commit, you have committed the Tomcat SSO stuff. The 
codebase cannot be compiled.

Thanks,

Michael


Am 18.12.17 um 15:48 schrieb jleroux@apache.org:
> Author: jleroux
> Date: Mon Dec 18 14:48:04 2017
> New Revision: 1818580
>
> URL: http://svn.apache.org/viewvc?rev=1818580&view=rev
> Log:
> Improved: Upgrade Jquery 1.11.0 to JQuery 3.2.1
> (OFBIZ-9978)
>
> Updates JGrowl  from 1.4.1 to 1.4.6
>
> Thanks: Aditya
>
> Added:
>      ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java   (with props)
>      ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java   (with props)
>      ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java   (with props)
>      ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css   (with props)
>      ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js   (with props)
>      ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css   (with props)
>      ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js   (with props)
> Removed:
>      ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/1.4.1/
> Modified:
>      ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml
>
> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java (added)
> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,35 @@
> +/*******************************************************************************
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License.  You may obtain a copy of the License at
> + *
> + * http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied.  See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> + *******************************************************************************/
> +package org.apache.ofbiz.catalina.container;
> +
> +import org.apache.catalina.CredentialHandler;
> +import org.apache.ofbiz.base.crypto.HashCrypt;
> +import org.apache.ofbiz.common.login.LoginServices;
> +
> +public class HashedCredentialHandler implements CredentialHandler {
> +    @Override
> +    public boolean matches(String inputCredentials, String storedCredentials) {
> +        return LoginServices.checkPassword(storedCredentials, true, inputCredentials);
> +    }
> +
> +    @Override
> +    public String mutate(String inputCredentials) {
> +        return HashCrypt.cryptUTF8(LoginServices.getHashType(), null, inputCredentials);
> +    }
> +}
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:mime-type = text/plain
>
> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java (added)
> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,65 @@
> +/*******************************************************************************
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License.  You may obtain a copy of the License at
> + *
> + * http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied.  See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> + *******************************************************************************/
> +package org.apache.ofbiz.catalina.container;
> +
> +import java.security.Principal;
> +import java.util.ArrayList;
> +import java.util.List;
> +
> +import org.apache.catalina.realm.GenericPrincipal;
> +import org.apache.catalina.realm.RealmBase;
> +import org.apache.ofbiz.base.util.Debug;
> +import org.apache.ofbiz.entity.Delegator;
> +import org.apache.ofbiz.entity.DelegatorFactory;
> +import org.apache.ofbiz.entity.GenericEntityException;
> +import org.apache.ofbiz.entity.GenericValue;
> +import org.apache.ofbiz.entity.util.EntityQuery;
> +
> +public class OFBizRealm extends RealmBase
> +{
> +    public static final String module = OFBizRealm.class.getName();
> +
> +    @Override
> +    protected String getName() {
> +        return "OFBizRealm";
> +    }
> +
> +    @Override
> +    protected String getPassword(String username) {
> +        Delegator delegator = DelegatorFactory.getDelegator(null);
> +        try {
> +            GenericValue userLogin = EntityQuery.use(delegator).from("UserLogin").where("userLoginId", username).queryOne();
> +            if (userLogin!=null){
> +                return userLogin.getString("currentPassword");
> +            }
> +        } catch (GenericEntityException e) {
> +            Debug.logError(e, module);
> +        }
> +        return null;
> +    }
> +
> +    @Override
> +    protected Principal getPrincipal(String username) {
> +        List<String> roles = new ArrayList<>();
> +        return new GenericPrincipal(username,
> +                getPassword(username),
> +                roles);
> +    }
> +
> +}
> \ No newline at end of file
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
> ------------------------------------------------------------------------------
>      svn:mime-type = text/plain
>
> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java (added)
> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,37 @@
> +/*******************************************************************************
> + * Licensed to the Apache Software Foundation (ASF) under one
> + * or more contributor license agreements.  See the NOTICE file
> + * distributed with this work for additional information
> + * regarding copyright ownership.  The ASF licenses this file
> + * to you under the Apache License, Version 2.0 (the
> + * "License"); you may not use this file except in compliance
> + * with the License.  You may obtain a copy of the License at
> + *
> + * http://www.apache.org/licenses/LICENSE-2.0
> + *
> + * Unless required by applicable law or agreed to in writing,
> + * software distributed under the License is distributed on an
> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> + * KIND, either express or implied.  See the License for the
> + * specific language governing permissions and limitations
> + * under the License.
> + *******************************************************************************/
> +package org.apache.ofbiz.catalina.container;
> +
> +import org.apache.catalina.CredentialHandler;
> +import org.apache.ofbiz.common.login.LoginServices;
> +
> +
> +public class SimpleCredentialHandler implements CredentialHandler {
> +    @Override
> +    public boolean matches(String inputCredentials, String storedCredentials) {
> +        return LoginServices.checkPassword(storedCredentials, false, inputCredentials);
> +    }
> +
> +    @Override
> +    public String mutate(String inputCredentials) {
> +        // when password.encrypt=false, password is stored as clear text in the database.
> +        // no need to encrypt this input password.
> +        return null;
> +    }
> +}
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
> ------------------------------------------------------------------------------
>      svn:mime-type = text/plain
>
> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css (added)
> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,100 @@
> +.jGrowl {
> +  z-index: 9999;
> +  color: #ffffff;
> +  font-size: 12px;
> +  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
> +  position: fixed;
> +}
> +.jGrowl.top-left {
> +  left: 0px;
> +  top: 0px;
> +}
> +.jGrowl.top-right {
> +  right: 0px;
> +  top: 0px;
> +}
> +.jGrowl.bottom-left {
> +  left: 0px;
> +  bottom: 0px;
> +}
> +.jGrowl.bottom-right {
> +  right: 0px;
> +  bottom: 0px;
> +}
> +.jGrowl.center {
> +  top: 0px;
> +  width: 50%;
> +  left: 25%;
> +}
> +.jGrowl.center .jGrowl-notification,
> +.jGrowl.center .jGrowl-closer {
> +  margin-left: auto;
> +  margin-right: auto;
> +}
> +.jGrowl-notification {
> +  background-color: #000000;
> +  opacity: 0.9;
> +  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
> +  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
> +  zoom: 1;
> +  width: 250px;
> +  padding: 10px;
> +  margin: 10px;
> +  text-align: left;
> +  display: none;
> +  border-radius: 5px;
> +  min-height: 40px;
> +}
> +.jGrowl-notification .ui-state-highlight,
> +.jGrowl-notification .ui-widget-content .ui-state-highlight,
> +.jGrowl-notification .ui-widget-header .ui-state-highlight {
> +  border: 1px solid #000;
> +  background: #000;
> +  color: #fff;
> +}
> +.jGrowl-notification .jGrowl-header {
> +  font-weight: bold;
> +  font-size: .85em;
> +}
> +.jGrowl-notification .jGrowl-close {
> +  background-color: transparent;
> +  color: inherit;
> +  border: none;
> +  z-index: 99;
> +  float: right;
> +  font-weight: bold;
> +  font-size: 1em;
> +  cursor: pointer;
> +}
> +.jGrowl-closer {
> +  background-color: #000000;
> +  opacity: 0.9;
> +  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
> +  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
> +  zoom: 1;
> +  width: 250px;
> +  padding: 10px;
> +  margin: 10px;
> +  text-align: left;
> +  display: none;
> +  border-radius: 5px;
> +  padding-top: 4px;
> +  padding-bottom: 4px;
> +  cursor: pointer;
> +  font-size: .9em;
> +  font-weight: bold;
> +  text-align: center;
> +}
> +.jGrowl-closer .ui-state-highlight,
> +.jGrowl-closer .ui-widget-content .ui-state-highlight,
> +.jGrowl-closer .ui-widget-header .ui-state-highlight {
> +  border: 1px solid #000;
> +  background: #000;
> +  color: #fff;
> +}
> +/** Hide jGrowl when printing **/
> +@media print {
> +  .jGrowl {
> +    display: none;
> +  }
> +}
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
> ------------------------------------------------------------------------------
>      svn:mime-type = text/css
>
> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js (added)
> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,399 @@
> +/**
> + * jGrowl 1.4.5
> + *
> + * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
> + * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
> + *
> + * Written by Stan Lemon <st...@gmail.com>
> + * Last updated: 2015.02.01
> + *
> + * jGrowl is a jQuery plugin implementing unobtrusive userland notifications.  These
> + * notifications function similarly to the Growl Framework available for
> + * Mac OS X (http://growl.info).
> + *
> + * To Do:
> + * - Move library settings to containers and allow them to be changed per container
> + *
> + * Changes in 1.4.5
> + * - Fixed arguement list for click callback, thanks @timotheeg
> + *
> + * Changes in 1.4.4
> + * - Revert word-break changes, thanks @curtisgibby
> + *
> + * Changes in 1.4.3
> + * - Fixed opactiy in LESS for older version of IE
> + *
> + * Changes in 1.4.2
> + * - Added word-break to less/css
> + *
> + * Changes in 1.4.1
> + * - Added appendTo option
> + * - jQuery compatibility updates
> + * - Add check for closing a notification before it opens
> + *
> + * Changes in 1.4.0
> + * - Removed IE6 support
> + * - Added LESS support
> + *
> + * Changes in 1.3.0
> + * - Added non-vendor border-radius to stylesheet
> + * - Added grunt for generating minified js and css
> + * - Added npm package info
> + * - Added bower package info
> + * - Updates for jshint
> + *
> + * Changes in 1.2.13
> + * - Fixed clearing interval when the container shuts down
> + *
> + * Changes in 1.2.12
> + * - Added compressed versions using UglifyJS and Sqwish
> + * - Improved README with configuration options explanation
> + * - Added a source map
> + *
> + * Changes in 1.2.11
> + * - Fix artifacts left behind by the shutdown method and text-cleanup
> + *
> + * Changes in 1.2.10
> + * - Fix beforeClose to be called in click event
> + *
> + * Changes in 1.2.9
> + * - Fixed BC break in jQuery 2.0 beta
> + *
> + * Changes in 1.2.8
> + * - Fixes for jQuery 1.9 and the MSIE6 check, note that with jQuery 2.0 support
> + *   jGrowl intends to drop support for IE6 altogether
> + *
> + * Changes in 1.2.6
> + * - Fixed js error when a notification is opening and closing at the same time
> + *
> + * Changes in 1.2.5
> + * - Changed wrapper jGrowl's options usage to "o" instead of $.jGrowl.defaults
> + * - Added themeState option to control 'highlight' or 'error' for jQuery UI
> + * - Ammended some CSS to provide default positioning for nested usage.
> + * - Changed some CSS to be prefixed with jGrowl- to prevent namespacing issues
> + * - Added two new options - openDuration and closeDuration to allow
> + *   better control of notification open and close speeds, respectively
> + *   Patch contributed by Jesse Vincet.
> + * - Added afterOpen callback.  Patch contributed by Russel Branca.
> + *
> + * Changes in 1.2.4
> + * - Fixed IE bug with the close-all button
> + * - Fixed IE bug with the filter CSS attribute (special thanks to gotwic)
> + * - Update IE opacity CSS
> + * - Changed font sizes to use "em", and only set the base style
> + *
> + * Changes in 1.2.3
> + * - The callbacks no longer use the container as context, instead they use the actual notification
> + * - The callbacks now receive the container as a parameter after the options parameter
> + * - beforeOpen and beforeClose now check the return value, if it's false - the notification does
> + *   not continue.  The open callback will also halt execution if it returns false.
> + * - Fixed bug where containers would get confused
> + * - Expanded the pause functionality to pause an entire container.
> + *
> + * Changes in 1.2.2
> + * - Notification can now be theme rolled for jQuery UI, special thanks to Jeff Chan!
> + *
> + * Changes in 1.2.1
> + * - Fixed instance where the interval would fire the close method multiple times.
> + * - Added CSS to hide from print media
> + * - Fixed issue with closer button when div { position: relative } is set
> + * - Fixed leaking issue with multiple containers.  Special thanks to Matthew Hanlon!
> + *
> + * Changes in 1.2.0
> + * - Added message pooling to limit the number of messages appearing at a given time.
> + * - Closing a notification is now bound to the notification object and triggered by the close button.
> + *
> + * Changes in 1.1.2
> + * - Added iPhone styled example
> + * - Fixed possible IE7 bug when determining if the ie6 class shoudl be applied.
> + * - Added template for the close button, so that it's content could be customized.
> + *
> + * Changes in 1.1.1
> + * - Fixed CSS styling bug for ie6 caused by a mispelling
> + * - Changes height restriction on default notifications to min-height
> + * - Added skinned examples using a variety of images
> + * - Added the ability to customize the content of the [close all] box
> + * - Added jTweet, an example of using jGrowl + Twitter
> + *
> + * Changes in 1.1.0
> + * - Multiple container and instances.
> + * - Standard $.jGrowl() now wraps $.fn.jGrowl() by first establishing a generic jGrowl container.
> + * - Instance methods of a jGrowl container can be called by $.fn.jGrowl(methodName)
> + * - Added glue preferenced, which allows notifications to be inserted before or after nodes in the container
> + * - Added new log callback which is called before anything is done for the notification
> + * - Corner's attribute are now applied on an individual notification basis.
> + *
> + * Changes in 1.0.4
> + * - Various CSS fixes so that jGrowl renders correctly in IE6.
> + *
> + * Changes in 1.0.3
> + * - Fixed bug with options persisting across notifications
> + * - Fixed theme application bug
> + * - Simplified some selectors and manipulations.
> + * - Added beforeOpen and beforeClose callbacks
> + * - Reorganized some lines of code to be more readable
> + * - Removed unnecessary this.defaults context
> + * - If corners plugin is present, it's now customizable.
> + * - Customizable open animation.
> + * - Customizable close animation.
> + * - Customizable animation easing.
> + * - Added customizable positioning (top-left, top-right, bottom-left, bottom-right, center)
> + *
> + * Changes in 1.0.2
> + * - All CSS styling is now external.
> + * - Added a theme parameter which specifies a secondary class for styling, such
> + *   that notifications can be customized in appearance on a per message basis.
> + * - Notification life span is now customizable on a per message basis.
> + * - Added the ability to disable the global closer, enabled by default.
> + * - Added callbacks for when a notification is opened or closed.
> + * - Added callback for the global closer.
> + * - Customizable animation speed.
> + * - jGrowl now set itself up and tears itself down.
> + *
> + * Changes in 1.0.1:
> + * - Removed dependency on metadata plugin in favor of .data()
> + * - Namespaced all events
> + */
> +(function($) {
> +	/** jGrowl Wrapper - Establish a base jGrowl Container for compatibility with older releases. **/
> +	$.jGrowl = function( m , o ) {
> +		// To maintain compatibility with older version that only supported one instance we'll create the base container.
> +		if ( $('#jGrowl').length === 0 )
> +			$('<div id="jGrowl"></div>').addClass( (o && o.position) ? o.position : $.jGrowl.defaults.position ).appendTo( (o && o.appendTo) ? o.appendTo : $.jGrowl.defaults.appendTo );
> +
> +		// Create a notification on the container.
> +		$('#jGrowl').jGrowl(m,o);
> +	};
> +
> +
> +	/** Raise jGrowl Notification on a jGrowl Container **/
> +	$.fn.jGrowl = function( m , o ) {
> +		// Short hand for passing in just an object to this method
> +		if ( o === undefined && $.isPlainObject(m) ) {
> +			o = m;
> +			m = o.message;
> +		}
> +
> +		if ( $.isFunction(this.each) ) {
> +			var args = arguments;
> +
> +			return this.each(function() {
> +				/** Create a jGrowl Instance on the Container if it does not exist **/
> +				if ( $(this).data('jGrowl.instance') === undefined ) {
> +					$(this).data('jGrowl.instance', $.extend( new $.fn.jGrowl(), { notifications: [], element: null, interval: null } ));
> +					$(this).data('jGrowl.instance').startup( this );
> +				}
> +
> +				/** Optionally call jGrowl instance methods, or just raise a normal notification **/
> +				if ( $.isFunction($(this).data('jGrowl.instance')[m]) ) {
> +					$(this).data('jGrowl.instance')[m].apply( $(this).data('jGrowl.instance') , $.makeArray(args).slice(1) );
> +				} else {
> +					$(this).data('jGrowl.instance').create( m , o );
> +				}
> +			});
> +		}
> +	};
> +
> +	$.extend( $.fn.jGrowl.prototype , {
> +
> +		/** Default JGrowl Settings **/
> +		defaults: {
> +			pool:				0,
> +			header:				'',
> +			group:				'',
> +			sticky:				false,
> +			position:			'top-right',
> +			appendTo:			'body',
> +			glue:				'after',
> +			theme:				'default',
> +			themeState:			'highlight',
> +			corners:			'10px',
> +			check:				250,
> +			life:				3000,
> +			closeDuration:		'normal',
> +			openDuration:		'normal',
> +			easing:				'swing',
> +			closer:				true,
> +			closeTemplate:		'&times;',
> +			closerTemplate:		'<div>[ close all ]</div>',
> +			log:				function() {},
> +			beforeOpen:			function() {},
> +			afterOpen:			function() {},
> +			open:				function() {},
> +			beforeClose:		function() {},
> +			close:				function() {},
> +			click:				function() {},
> +			animateOpen:		{
> +				opacity:		'show'
> +			},
> +			animateClose:		{
> +				opacity:		'hide'
> +			}
> +		},
> +
> +		notifications: [],
> +
> +		/** jGrowl Container Node **/
> +		element:				null,
> +
> +		/** Interval Function **/
> +		interval:				null,
> +
> +		/** Create a Notification **/
> +		create: function( message , options ) {
> +			var o = $.extend({}, this.defaults, options);
> +
> +			/* To keep backward compatibility with 1.24 and earlier, honor 'speed' if the user has set it */
> +			if (typeof o.speed !== 'undefined') {
> +				o.openDuration = o.speed;
> +				o.closeDuration = o.speed;
> +			}
> +
> +			this.notifications.push({ message: message , options: o });
> +
> +			o.log.apply( this.element , [this.element,message,o] );
> +		},
> +
> +		render: function( n ) {
> +			var self = this;
> +			var message = n.message;
> +			var o = n.options;
> +
> +			// Support for jQuery theme-states, if this is not used it displays a widget header
> +			o.themeState = (o.themeState === '') ? '' : 'ui-state-' + o.themeState;
> +
> +			var notification = $('<div/>')
> +				.addClass('jGrowl-notification alert ' + o.themeState + ' ui-corner-all' + ((o.group !== undefined && o.group !== '') ? ' ' + o.group : ''))
> +				.append($('<button/>').addClass('jGrowl-close').html(o.closeTemplate))
> +				.append($('<div/>').addClass('jGrowl-header').html(o.header))
> +				.append($('<div/>').addClass('jGrowl-message').html(message))
> +				.data("jGrowl", o).addClass(o.theme).children('.jGrowl-close').bind("click.jGrowl", function() {
> +					$(this).parent().trigger('jGrowl.beforeClose');
> +					return false;
> +				})
> +				.parent();
> +
> +
> +			/** Notification Actions **/
> +			$(notification).bind("mouseover.jGrowl", function() {
> +				$('.jGrowl-notification', self.element).data("jGrowl.pause", true);
> +			}).bind("mouseout.jGrowl", function() {
> +				$('.jGrowl-notification', self.element).data("jGrowl.pause", false);
> +			}).bind('jGrowl.beforeOpen', function() {
> +				if ( o.beforeOpen.apply( notification , [notification,message,o,self.element] ) !== false ) {
> +					$(this).trigger('jGrowl.open');
> +				}
> +			}).bind('jGrowl.open', function() {
> +				if ( o.open.apply( notification , [notification,message,o,self.element] ) !== false ) {
> +					if ( o.glue == 'after' ) {
> +						$('.jGrowl-notification:last', self.element).after(notification);
> +					} else {
> +						$('.jGrowl-notification:first', self.element).before(notification);
> +					}
> +
> +					$(this).animate(o.animateOpen, o.openDuration, o.easing, function() {
> +						// Fixes some anti-aliasing issues with IE filters.
> +						if ($.support.opacity === false)
> +							this.style.removeAttribute('filter');
> +
> +						if ( $(this).data("jGrowl") !== null && typeof $(this).data("jGrowl") !== 'undefined') // Happens when a notification is closing before it's open.
> +							$(this).data("jGrowl").created = new Date();
> +
> +						$(this).trigger('jGrowl.afterOpen');
> +					});
> +				}
> +			}).bind('jGrowl.afterOpen', function() {
> +				o.afterOpen.apply( notification , [notification,message,o,self.element] );
> +			}).bind('click', function() {
> +				o.click.apply( notification, [notification,message,o,self.element] );
> +			}).bind('jGrowl.beforeClose', function() {
> +				if ( o.beforeClose.apply( notification , [notification,message,o,self.element] ) !== false )
> +					$(this).trigger('jGrowl.close');
> +			}).bind('jGrowl.close', function() {
> +				// Pause the notification, lest during the course of animation another close event gets called.
> +				$(this).data('jGrowl.pause', true);
> +				$(this).animate(o.animateClose, o.closeDuration, o.easing, function() {
> +					if ( $.isFunction(o.close) ) {
> +						if ( o.close.apply( notification , [notification,message,o,self.element] ) !== false )
> +							$(this).remove();
> +					} else {
> +						$(this).remove();
> +					}
> +				});
> +			}).trigger('jGrowl.beforeOpen');
> +
> +			/** Optional Corners Plugin **/
> +			if ( o.corners !== '' && $.fn.corner !== undefined ) $(notification).corner( o.corners );
> +
> +			/** Add a Global Closer if more than one notification exists **/
> +			if ($('.jGrowl-notification:parent', self.element).length > 1 &&
> +				$('.jGrowl-closer', self.element).length === 0 && this.defaults.closer !== false ) {
> +				$(this.defaults.closerTemplate).addClass('jGrowl-closer ' + this.defaults.themeState + ' ui-corner-all').addClass(this.defaults.theme)
> +					.appendTo(self.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing)
> +					.bind("click.jGrowl", function() {
> +						$(this).siblings().trigger("jGrowl.beforeClose");
> +
> +						if ( $.isFunction( self.defaults.closer ) ) {
> +							self.defaults.closer.apply( $(this).parent()[0] , [$(this).parent()[0]] );
> +						}
> +					});
> +			}
> +		},
> +
> +		/** Update the jGrowl Container, removing old jGrowl notifications **/
> +		update: function() {
> +			$(this.element).find('.jGrowl-notification:parent').each( function() {
> +				if ($(this).data("jGrowl") !== undefined && $(this).data("jGrowl").created !== undefined &&
> +					($(this).data("jGrowl").created.getTime() + parseInt($(this).data("jGrowl").life, 10))  < (new Date()).getTime() &&
> +					$(this).data("jGrowl").sticky !== true &&
> +					($(this).data("jGrowl.pause") === undefined || $(this).data("jGrowl.pause") !== true) ) {
> +
> +					// Pause the notification, lest during the course of animation another close event gets called.
> +					$(this).trigger('jGrowl.beforeClose');
> +				}
> +			});
> +
> +			if (this.notifications.length > 0 &&
> +				(this.defaults.pool === 0 || $(this.element).find('.jGrowl-notification:parent').length < this.defaults.pool) )
> +				this.render( this.notifications.shift() );
> +
> +			if ($(this.element).find('.jGrowl-notification:parent').length < 2 ) {
> +				$(this.element).find('.jGrowl-closer').animate(this.defaults.animateClose, this.defaults.speed, this.defaults.easing, function() {
> +					$(this).remove();
> +				});
> +			}
> +		},
> +
> +		/** Setup the jGrowl Notification Container **/
> +		startup: function(e) {
> +			this.element = $(e).addClass('jGrowl').append('<div class="jGrowl-notification"></div>');
> +			this.interval = setInterval( function() {
> +				// some error in chage ^^
> +				var instance = $(e).data('jGrowl.instance');
> +				if (undefined !== instance) {
> +					instance.update();
> +				}
> +			}, parseInt(this.defaults.check, 10));
> +		},
> +
> +		/** Shutdown jGrowl, removing it and clearing the interval **/
> +		shutdown: function() {
> +			$(this.element).removeClass('jGrowl')
> +				.find('.jGrowl-notification').trigger('jGrowl.close')
> +				.parent().empty()
> +			;
> +
> +			clearInterval(this.interval);
> +		},
> +
> +		close: function() {
> +			$(this.element).find('.jGrowl-notification').each(function(){
> +				$(this).trigger('jGrowl.beforeClose');
> +			});
> +		}
> +	});
> +
> +	/** Reference the Defaults Object for compatibility with older versions of jGrowl **/
> +	$.jGrowl.defaults = $.fn.jGrowl.prototype.defaults;
> +
> +})(jQuery);
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
> ------------------------------------------------------------------------------
>      svn:mime-type = text/plain
>
> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css (added)
> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css Mon Dec 18 14:48:04 2017
> @@ -0,0 +1 @@
> +.jGrowl{z-index:9999;color:#fff;font-size:12px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;position:fixed}.jGrowl.top-left{left:0;top:0}.jGrowl.top-right{right:0;top:0}.jGrowl.bottom-left{left:0;bottom:0}.jGrowl.bottom-right{right:0;bottom:0}.jGrowl.center{top:0;width:50%;left:25%}.jGrowl.center .jGrowl-closer,.jGrowl.center .jGrowl-notification{margin-left:auto;margin-right:auto}.jGrowl-notification{background-color:#000;opacity:.9;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));zoom:1;width:250px;padding:10px;margin:10px;text-align:left;display:none;border-radius:5px;min-height:40px}.jGrowl-notification .ui-state-highlight,.jGrowl-notification .ui-widget-content .ui-state-highlight,.jGrowl-notification .ui-widget-header .ui-state-highlight{border:1px solid #000;background:#000;color:#fff}.jGrowl-notification .jGrowl-header{font-weight:700;font-size:.85em}.jGrowl-notification .jGrowl
>   -close{background-color:transparent;color:inherit;border:none;z-index:99;float:right;font-weight:700;font-size:1em;cursor:pointer}.jGrowl-closer{background-color:#000;opacity:.9;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));zoom:1;width:250px;padding:10px;margin:10px;display:none;border-radius:5px;padding-top:4px;padding-bottom:4px;cursor:pointer;font-size:.9em;font-weight:700;text-align:center}.jGrowl-closer .ui-state-highlight,.jGrowl-closer .ui-widget-content .ui-state-highlight,.jGrowl-closer .ui-widget-header .ui-state-highlight{border:1px solid #000;background:#000;color:#fff}@media print{.jGrowl{display:none}}
> \ No newline at end of file
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
> ------------------------------------------------------------------------------
>      svn:mime-type = text/css
>
> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js?rev=1818580&view=auto
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js (added)
> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js Mon Dec 18 14:48:04 2017
> @@ -0,0 +1,2 @@
> +!function(a){a.jGrowl=function(b,c){0===a("#jGrowl").length&&a('<div id="jGrowl"></div>').addClass(c&&c.position?c.position:a.jGrowl.defaults.position).appendTo(c&&c.appendTo?c.appendTo:a.jGrowl.defaults.appendTo),a("#jGrowl").jGrowl(b,c)},a.fn.jGrowl=function(b,c){if(void 0===c&&a.isPlainObject(b)&&(c=b,b=c.message),a.isFunction(this.each)){var d=arguments;return this.each(function(){void 0===a(this).data("jGrowl.instance")&&(a(this).data("jGrowl.instance",a.extend(new a.fn.jGrowl,{notifications:[],element:null,interval:null})),a(this).data("jGrowl.instance").startup(this)),a.isFunction(a(this).data("jGrowl.instance")[b])?a(this).data("jGrowl.instance")[b].apply(a(this).data("jGrowl.instance"),a.makeArray(d).slice(1)):a(this).data("jGrowl.instance").create(b,c)})}},a.extend(a.fn.jGrowl.prototype,{defaults:{pool:0,header:"",group:"",sticky:!1,position:"top-right",appendTo:"body",glue:"after",theme:"default",themeState:"highlight",corners:"10px",check:250,life:3e3,closeDuration:"norm
>   al",openDuration:"normal",easing:"swing",closer:!0,closeTemplate:"&times;",closerTemplate:"<div>[ close all ]</div>",log:function(){},beforeOpen:function(){},afterOpen:function(){},open:function(){},beforeClose:function(){},close:function(){},click:function(){},animateOpen:{opacity:"show"},animateClose:{opacity:"hide"}},notifications:[],element:null,interval:null,create:function(b,c){var d=a.extend({},this.defaults,c);"undefined"!=typeof d.speed&&(d.openDuration=d.speed,d.closeDuration=d.speed),this.notifications.push({message:b,options:d}),d.log.apply(this.element,[this.element,b,d])},render:function(b){var c=this,d=b.message,e=b.options;e.themeState=""===e.themeState?"":"ui-state-"+e.themeState;var f=a("<div/>").addClass("jGrowl-notification alert "+e.themeState+" ui-corner-all"+(void 0!==e.group&&""!==e.group?" "+e.group:"")).append(a("<button/>").addClass("jGrowl-close").html(e.closeTemplate)).append(a("<div/>").addClass("jGrowl-header").html(e.header)).append(a("<div/>").addCla
>   ss("jGrowl-message").html(d)).data("jGrowl",e).addClass(e.theme).children(".jGrowl-close").bind("click.jGrowl",function(){return a(this).parent().trigger("jGrowl.beforeClose"),!1}).parent();a(f).bind("mouseover.jGrowl",function(){a(".jGrowl-notification",c.element).data("jGrowl.pause",!0)}).bind("mouseout.jGrowl",function(){a(".jGrowl-notification",c.element).data("jGrowl.pause",!1)}).bind("jGrowl.beforeOpen",function(){e.beforeOpen.apply(f,[f,d,e,c.element])!==!1&&a(this).trigger("jGrowl.open")}).bind("jGrowl.open",function(){e.open.apply(f,[f,d,e,c.element])!==!1&&("after"==e.glue?a(".jGrowl-notification:last",c.element).after(f):a(".jGrowl-notification:first",c.element).before(f),a(this).animate(e.animateOpen,e.openDuration,e.easing,function(){a.support.opacity===!1&&this.style.removeAttribute("filter"),null!==a(this).data("jGrowl")&&"undefined"!=typeof a(this).data("jGrowl")&&(a(this).data("jGrowl").created=new Date),a(this).trigger("jGrowl.afterOpen")}))}).bind("jGrowl.afterOpe
>   n",function(){e.afterOpen.apply(f,[f,d,e,c.element])}).bind("click",function(){e.click.apply(f,[f,d,e,c.element])}).bind("jGrowl.beforeClose",function(){e.beforeClose.apply(f,[f,d,e,c.element])!==!1&&a(this).trigger("jGrowl.close")}).bind("jGrowl.close",function(){a(this).data("jGrowl.pause",!0),a(this).animate(e.animateClose,e.closeDuration,e.easing,function(){a.isFunction(e.close)?e.close.apply(f,[f,d,e,c.element])!==!1&&a(this).remove():a(this).remove()})}).trigger("jGrowl.beforeOpen"),""!==e.corners&&void 0!==a.fn.corner&&a(f).corner(e.corners),a(".jGrowl-notification:parent",c.element).length>1&&0===a(".jGrowl-closer",c.element).length&&this.defaults.closer!==!1&&a(this.defaults.closerTemplate).addClass("jGrowl-closer "+this.defaults.themeState+" ui-corner-all").addClass(this.defaults.theme).appendTo(c.element).animate(this.defaults.animateOpen,this.defaults.speed,this.defaults.easing).bind("click.jGrowl",function(){a(this).siblings().trigger("jGrowl.beforeClose"),a.isFunction(
>   c.defaults.closer)&&c.defaults.closer.apply(a(this).parent()[0],[a(this).parent()[0]])})},update:function(){a(this.element).find(".jGrowl-notification:parent").each(function(){void 0!==a(this).data("jGrowl")&&void 0!==a(this).data("jGrowl").created&&a(this).data("jGrowl").created.getTime()+parseInt(a(this).data("jGrowl").life,10)<(new Date).getTime()&&a(this).data("jGrowl").sticky!==!0&&(void 0===a(this).data("jGrowl.pause")||a(this).data("jGrowl.pause")!==!0)&&a(this).trigger("jGrowl.beforeClose")}),this.notifications.length>0&&(0===this.defaults.pool||a(this.element).find(".jGrowl-notification:parent").length<this.defaults.pool)&&this.render(this.notifications.shift()),a(this.element).find(".jGrowl-notification:parent").length<2&&a(this.element).find(".jGrowl-closer").animate(this.defaults.animateClose,this.defaults.speed,this.defaults.easing,function(){a(this).remove()})},startup:function(b){this.element=a(b).addClass("jGrowl").append('<div class="jGrowl-notification"></div>'),th
>   is.interval=setInterval(function(){var c=a(b).data("jGrowl.instance");void 0!==c&&c.update()},parseInt(this.defaults.check,10))},shutdown:function(){a(this.element).removeClass("jGrowl").find(".jGrowl-notification").trigger("jGrowl.close").parent().empty(),clearInterval(this.interval)},close:function(){a(this.element).find(".jGrowl-notification").each(function(){a(this).trigger("jGrowl.beforeClose")})}}),a.jGrowl.defaults=a.fn.jGrowl.prototype.defaults}(jQuery);
> +//# sourceMappingURL=jquery.jgrowl.map
> \ No newline at end of file
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
> ------------------------------------------------------------------------------
>      svn:eol-style = native
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
> ------------------------------------------------------------------------------
>      svn:keywords = Date Rev Author URL Id
>
> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
> ------------------------------------------------------------------------------
>      svn:mime-type = text/plain
>
> Modified: ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml
> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml?rev=1818580&r1=1818579&r2=1818580&view=diff
> ==============================================================================
> --- ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml (original)
> +++ ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml Mon Dec 18 14:48:04 2017
> @@ -128,8 +128,8 @@ under the License.
>                   <set field="layoutSettings.javaScripts[+0]" value="${groovy: org.apache.ofbiz.common.JsLanguageFilesMapping.dateTime.getFilePath(initialLocaleComplete)}" global="true" />
>                   <!-- Jgrowl -->
>                   <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/Readmore.js-master/readmore.js" global="true"/>
> -                <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/jquery-jgrowl/1.4.1/jquery.jgrowl.min.js" global="true"/>
> -                <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/plugins/jquery-jgrowl/1.4.1/jquery.jgrowl.min.css" global="true" />
> +                <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js" global="true"/>
> +                <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css" global="true" />
>                   <!-- Set default user locale from browser -->
>                   <set field="layoutSettings.javaScripts[+0]" value="/common/js/util/setUserLocale.js"/>
>                   <set field="layoutSettings.javaScripts[+0]" value="/images/moment-timezone-with-data.min.js" global="true"/>
>
>
>



Re: svn commit: r1818580 - in /ofbiz/ofbiz-framework/trunk: framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/ themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/ themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/1.4.1...

Posted by Jacques Le Roux <ja...@les7arts.com>.
Just fixed, sorry

Jacques


Le 18/12/2017 à 17:57, Michael Brohl a écrit :
> Jacques,
>
> please check this commit, you have committed the Tomcat SSO stuff. The codebase cannot be compiled.
>
> Thanks,
>
> Michael
>
>
> Am 18.12.17 um 15:48 schrieb jleroux@apache.org:
>> Author: jleroux
>> Date: Mon Dec 18 14:48:04 2017
>> New Revision: 1818580
>>
>> URL: http://svn.apache.org/viewvc?rev=1818580&view=rev
>> Log:
>> Improved: Upgrade Jquery 1.11.0 to JQuery 3.2.1
>> (OFBIZ-9978)
>>
>> Updates JGrowl  from 1.4.1 to 1.4.6
>>
>> Thanks: Aditya
>>
>> Added:
>> ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java (with props)
>> ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java (with props)
>> ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java (with props)
>> ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css (with props)
>> ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js (with props)
>> ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css (with props)
>> ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js (with props)
>> Removed:
>> ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/1.4.1/
>> Modified:
>> ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml
>>
>> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java (added)
>> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java Mon Dec 18 
>> 14:48:04 2017
>> @@ -0,0 +1,35 @@
>> +/*******************************************************************************
>> + * Licensed to the Apache Software Foundation (ASF) under one
>> + * or more contributor license agreements.  See the NOTICE file
>> + * distributed with this work for additional information
>> + * regarding copyright ownership.  The ASF licenses this file
>> + * to you under the Apache License, Version 2.0 (the
>> + * "License"); you may not use this file except in compliance
>> + * with the License.  You may obtain a copy of the License at
>> + *
>> + * http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + * Unless required by applicable law or agreed to in writing,
>> + * software distributed under the License is distributed on an
>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> + * KIND, either express or implied.  See the License for the
>> + * specific language governing permissions and limitations
>> + * under the License.
>> + *******************************************************************************/
>> +package org.apache.ofbiz.catalina.container;
>> +
>> +import org.apache.catalina.CredentialHandler;
>> +import org.apache.ofbiz.base.crypto.HashCrypt;
>> +import org.apache.ofbiz.common.login.LoginServices;
>> +
>> +public class HashedCredentialHandler implements CredentialHandler {
>> +    @Override
>> +    public boolean matches(String inputCredentials, String storedCredentials) {
>> +        return LoginServices.checkPassword(storedCredentials, true, inputCredentials);
>> +    }
>> +
>> +    @Override
>> +    public String mutate(String inputCredentials) {
>> +        return HashCrypt.cryptUTF8(LoginServices.getHashType(), null, inputCredentials);
>> +    }
>> +}
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/HashedCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/plain
>>
>> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java (added)
>> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java Mon Dec 18 14:48:04 2017
>> @@ -0,0 +1,65 @@
>> +/*******************************************************************************
>> + * Licensed to the Apache Software Foundation (ASF) under one
>> + * or more contributor license agreements.  See the NOTICE file
>> + * distributed with this work for additional information
>> + * regarding copyright ownership.  The ASF licenses this file
>> + * to you under the Apache License, Version 2.0 (the
>> + * "License"); you may not use this file except in compliance
>> + * with the License.  You may obtain a copy of the License at
>> + *
>> + * http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + * Unless required by applicable law or agreed to in writing,
>> + * software distributed under the License is distributed on an
>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> + * KIND, either express or implied.  See the License for the
>> + * specific language governing permissions and limitations
>> + * under the License.
>> + *******************************************************************************/
>> +package org.apache.ofbiz.catalina.container;
>> +
>> +import java.security.Principal;
>> +import java.util.ArrayList;
>> +import java.util.List;
>> +
>> +import org.apache.catalina.realm.GenericPrincipal;
>> +import org.apache.catalina.realm.RealmBase;
>> +import org.apache.ofbiz.base.util.Debug;
>> +import org.apache.ofbiz.entity.Delegator;
>> +import org.apache.ofbiz.entity.DelegatorFactory;
>> +import org.apache.ofbiz.entity.GenericEntityException;
>> +import org.apache.ofbiz.entity.GenericValue;
>> +import org.apache.ofbiz.entity.util.EntityQuery;
>> +
>> +public class OFBizRealm extends RealmBase
>> +{
>> +    public static final String module = OFBizRealm.class.getName();
>> +
>> +    @Override
>> +    protected String getName() {
>> +        return "OFBizRealm";
>> +    }
>> +
>> +    @Override
>> +    protected String getPassword(String username) {
>> +        Delegator delegator = DelegatorFactory.getDelegator(null);
>> +        try {
>> +            GenericValue userLogin = EntityQuery.use(delegator).from("UserLogin").where("userLoginId", username).queryOne();
>> +            if (userLogin!=null){
>> +                return userLogin.getString("currentPassword");
>> +            }
>> +        } catch (GenericEntityException e) {
>> +            Debug.logError(e, module);
>> +        }
>> +        return null;
>> +    }
>> +
>> +    @Override
>> +    protected Principal getPrincipal(String username) {
>> +        List<String> roles = new ArrayList<>();
>> +        return new GenericPrincipal(username,
>> +                getPassword(username),
>> +                roles);
>> +    }
>> +
>> +}
>> \ No newline at end of file
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/OFBizRealm.java
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/plain
>>
>> Added: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java (added)
>> +++ ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java Mon Dec 18 
>> 14:48:04 2017
>> @@ -0,0 +1,37 @@
>> +/*******************************************************************************
>> + * Licensed to the Apache Software Foundation (ASF) under one
>> + * or more contributor license agreements.  See the NOTICE file
>> + * distributed with this work for additional information
>> + * regarding copyright ownership.  The ASF licenses this file
>> + * to you under the Apache License, Version 2.0 (the
>> + * "License"); you may not use this file except in compliance
>> + * with the License.  You may obtain a copy of the License at
>> + *
>> + * http://www.apache.org/licenses/LICENSE-2.0
>> + *
>> + * Unless required by applicable law or agreed to in writing,
>> + * software distributed under the License is distributed on an
>> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
>> + * KIND, either express or implied.  See the License for the
>> + * specific language governing permissions and limitations
>> + * under the License.
>> + *******************************************************************************/
>> +package org.apache.ofbiz.catalina.container;
>> +
>> +import org.apache.catalina.CredentialHandler;
>> +import org.apache.ofbiz.common.login.LoginServices;
>> +
>> +
>> +public class SimpleCredentialHandler implements CredentialHandler {
>> +    @Override
>> +    public boolean matches(String inputCredentials, String storedCredentials) {
>> +        return LoginServices.checkPassword(storedCredentials, false, inputCredentials);
>> +    }
>> +
>> +    @Override
>> +    public String mutate(String inputCredentials) {
>> +        // when password.encrypt=false, password is stored as clear text in the database.
>> +        // no need to encrypt this input password.
>> +        return null;
>> +    }
>> +}
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/framework/catalina/src/main/java/org/apache/ofbiz/catalina/container/SimpleCredentialHandler.java
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/plain
>>
>> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css (added)
>> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css Mon Dec 18 14:48:04 2017
>> @@ -0,0 +1,100 @@
>> +.jGrowl {
>> +  z-index: 9999;
>> +  color: #ffffff;
>> +  font-size: 12px;
>> +  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
>> +  position: fixed;
>> +}
>> +.jGrowl.top-left {
>> +  left: 0px;
>> +  top: 0px;
>> +}
>> +.jGrowl.top-right {
>> +  right: 0px;
>> +  top: 0px;
>> +}
>> +.jGrowl.bottom-left {
>> +  left: 0px;
>> +  bottom: 0px;
>> +}
>> +.jGrowl.bottom-right {
>> +  right: 0px;
>> +  bottom: 0px;
>> +}
>> +.jGrowl.center {
>> +  top: 0px;
>> +  width: 50%;
>> +  left: 25%;
>> +}
>> +.jGrowl.center .jGrowl-notification,
>> +.jGrowl.center .jGrowl-closer {
>> +  margin-left: auto;
>> +  margin-right: auto;
>> +}
>> +.jGrowl-notification {
>> +  background-color: #000000;
>> +  opacity: 0.9;
>> +  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
>> +  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
>> +  zoom: 1;
>> +  width: 250px;
>> +  padding: 10px;
>> +  margin: 10px;
>> +  text-align: left;
>> +  display: none;
>> +  border-radius: 5px;
>> +  min-height: 40px;
>> +}
>> +.jGrowl-notification .ui-state-highlight,
>> +.jGrowl-notification .ui-widget-content .ui-state-highlight,
>> +.jGrowl-notification .ui-widget-header .ui-state-highlight {
>> +  border: 1px solid #000;
>> +  background: #000;
>> +  color: #fff;
>> +}
>> +.jGrowl-notification .jGrowl-header {
>> +  font-weight: bold;
>> +  font-size: .85em;
>> +}
>> +.jGrowl-notification .jGrowl-close {
>> +  background-color: transparent;
>> +  color: inherit;
>> +  border: none;
>> +  z-index: 99;
>> +  float: right;
>> +  font-weight: bold;
>> +  font-size: 1em;
>> +  cursor: pointer;
>> +}
>> +.jGrowl-closer {
>> +  background-color: #000000;
>> +  opacity: 0.9;
>> +  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
>> +  -ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));
>> +  zoom: 1;
>> +  width: 250px;
>> +  padding: 10px;
>> +  margin: 10px;
>> +  text-align: left;
>> +  display: none;
>> +  border-radius: 5px;
>> +  padding-top: 4px;
>> +  padding-bottom: 4px;
>> +  cursor: pointer;
>> +  font-size: .9em;
>> +  font-weight: bold;
>> +  text-align: center;
>> +}
>> +.jGrowl-closer .ui-state-highlight,
>> +.jGrowl-closer .ui-widget-content .ui-state-highlight,
>> +.jGrowl-closer .ui-widget-header .ui-state-highlight {
>> +  border: 1px solid #000;
>> +  background: #000;
>> +  color: #fff;
>> +}
>> +/** Hide jGrowl when printing **/
>> +@media print {
>> +  .jGrowl {
>> +    display: none;
>> +  }
>> +}
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.css
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/css
>>
>> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js (added)
>> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js Mon Dec 18 14:48:04 2017
>> @@ -0,0 +1,399 @@
>> +/**
>> + * jGrowl 1.4.5
>> + *
>> + * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
>> + * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
>> + *
>> + * Written by Stan Lemon <st...@gmail.com>
>> + * Last updated: 2015.02.01
>> + *
>> + * jGrowl is a jQuery plugin implementing unobtrusive userland notifications.  These
>> + * notifications function similarly to the Growl Framework available for
>> + * Mac OS X (http://growl.info).
>> + *
>> + * To Do:
>> + * - Move library settings to containers and allow them to be changed per container
>> + *
>> + * Changes in 1.4.5
>> + * - Fixed arguement list for click callback, thanks @timotheeg
>> + *
>> + * Changes in 1.4.4
>> + * - Revert word-break changes, thanks @curtisgibby
>> + *
>> + * Changes in 1.4.3
>> + * - Fixed opactiy in LESS for older version of IE
>> + *
>> + * Changes in 1.4.2
>> + * - Added word-break to less/css
>> + *
>> + * Changes in 1.4.1
>> + * - Added appendTo option
>> + * - jQuery compatibility updates
>> + * - Add check for closing a notification before it opens
>> + *
>> + * Changes in 1.4.0
>> + * - Removed IE6 support
>> + * - Added LESS support
>> + *
>> + * Changes in 1.3.0
>> + * - Added non-vendor border-radius to stylesheet
>> + * - Added grunt for generating minified js and css
>> + * - Added npm package info
>> + * - Added bower package info
>> + * - Updates for jshint
>> + *
>> + * Changes in 1.2.13
>> + * - Fixed clearing interval when the container shuts down
>> + *
>> + * Changes in 1.2.12
>> + * - Added compressed versions using UglifyJS and Sqwish
>> + * - Improved README with configuration options explanation
>> + * - Added a source map
>> + *
>> + * Changes in 1.2.11
>> + * - Fix artifacts left behind by the shutdown method and text-cleanup
>> + *
>> + * Changes in 1.2.10
>> + * - Fix beforeClose to be called in click event
>> + *
>> + * Changes in 1.2.9
>> + * - Fixed BC break in jQuery 2.0 beta
>> + *
>> + * Changes in 1.2.8
>> + * - Fixes for jQuery 1.9 and the MSIE6 check, note that with jQuery 2.0 support
>> + *   jGrowl intends to drop support for IE6 altogether
>> + *
>> + * Changes in 1.2.6
>> + * - Fixed js error when a notification is opening and closing at the same time
>> + *
>> + * Changes in 1.2.5
>> + * - Changed wrapper jGrowl's options usage to "o" instead of $.jGrowl.defaults
>> + * - Added themeState option to control 'highlight' or 'error' for jQuery UI
>> + * - Ammended some CSS to provide default positioning for nested usage.
>> + * - Changed some CSS to be prefixed with jGrowl- to prevent namespacing issues
>> + * - Added two new options - openDuration and closeDuration to allow
>> + *   better control of notification open and close speeds, respectively
>> + *   Patch contributed by Jesse Vincet.
>> + * - Added afterOpen callback.  Patch contributed by Russel Branca.
>> + *
>> + * Changes in 1.2.4
>> + * - Fixed IE bug with the close-all button
>> + * - Fixed IE bug with the filter CSS attribute (special thanks to gotwic)
>> + * - Update IE opacity CSS
>> + * - Changed font sizes to use "em", and only set the base style
>> + *
>> + * Changes in 1.2.3
>> + * - The callbacks no longer use the container as context, instead they use the actual notification
>> + * - The callbacks now receive the container as a parameter after the options parameter
>> + * - beforeOpen and beforeClose now check the return value, if it's false - the notification does
>> + *   not continue.  The open callback will also halt execution if it returns false.
>> + * - Fixed bug where containers would get confused
>> + * - Expanded the pause functionality to pause an entire container.
>> + *
>> + * Changes in 1.2.2
>> + * - Notification can now be theme rolled for jQuery UI, special thanks to Jeff Chan!
>> + *
>> + * Changes in 1.2.1
>> + * - Fixed instance where the interval would fire the close method multiple times.
>> + * - Added CSS to hide from print media
>> + * - Fixed issue with closer button when div { position: relative } is set
>> + * - Fixed leaking issue with multiple containers.  Special thanks to Matthew Hanlon!
>> + *
>> + * Changes in 1.2.0
>> + * - Added message pooling to limit the number of messages appearing at a given time.
>> + * - Closing a notification is now bound to the notification object and triggered by the close button.
>> + *
>> + * Changes in 1.1.2
>> + * - Added iPhone styled example
>> + * - Fixed possible IE7 bug when determining if the ie6 class shoudl be applied.
>> + * - Added template for the close button, so that it's content could be customized.
>> + *
>> + * Changes in 1.1.1
>> + * - Fixed CSS styling bug for ie6 caused by a mispelling
>> + * - Changes height restriction on default notifications to min-height
>> + * - Added skinned examples using a variety of images
>> + * - Added the ability to customize the content of the [close all] box
>> + * - Added jTweet, an example of using jGrowl + Twitter
>> + *
>> + * Changes in 1.1.0
>> + * - Multiple container and instances.
>> + * - Standard $.jGrowl() now wraps $.fn.jGrowl() by first establishing a generic jGrowl container.
>> + * - Instance methods of a jGrowl container can be called by $.fn.jGrowl(methodName)
>> + * - Added glue preferenced, which allows notifications to be inserted before or after nodes in the container
>> + * - Added new log callback which is called before anything is done for the notification
>> + * - Corner's attribute are now applied on an individual notification basis.
>> + *
>> + * Changes in 1.0.4
>> + * - Various CSS fixes so that jGrowl renders correctly in IE6.
>> + *
>> + * Changes in 1.0.3
>> + * - Fixed bug with options persisting across notifications
>> + * - Fixed theme application bug
>> + * - Simplified some selectors and manipulations.
>> + * - Added beforeOpen and beforeClose callbacks
>> + * - Reorganized some lines of code to be more readable
>> + * - Removed unnecessary this.defaults context
>> + * - If corners plugin is present, it's now customizable.
>> + * - Customizable open animation.
>> + * - Customizable close animation.
>> + * - Customizable animation easing.
>> + * - Added customizable positioning (top-left, top-right, bottom-left, bottom-right, center)
>> + *
>> + * Changes in 1.0.2
>> + * - All CSS styling is now external.
>> + * - Added a theme parameter which specifies a secondary class for styling, such
>> + *   that notifications can be customized in appearance on a per message basis.
>> + * - Notification life span is now customizable on a per message basis.
>> + * - Added the ability to disable the global closer, enabled by default.
>> + * - Added callbacks for when a notification is opened or closed.
>> + * - Added callback for the global closer.
>> + * - Customizable animation speed.
>> + * - jGrowl now set itself up and tears itself down.
>> + *
>> + * Changes in 1.0.1:
>> + * - Removed dependency on metadata plugin in favor of .data()
>> + * - Namespaced all events
>> + */
>> +(function($) {
>> +    /** jGrowl Wrapper - Establish a base jGrowl Container for compatibility with older releases. **/
>> +    $.jGrowl = function( m , o ) {
>> +        // To maintain compatibility with older version that only supported one instance we'll create the base container.
>> +        if ( $('#jGrowl').length === 0 )
>> +            $('<div id="jGrowl"></div>').addClass( (o && o.position) ? o.position : $.jGrowl.defaults.position ).appendTo( (o && o.appendTo) ? 
>> o.appendTo : $.jGrowl.defaults.appendTo );
>> +
>> +        // Create a notification on the container.
>> +        $('#jGrowl').jGrowl(m,o);
>> +    };
>> +
>> +
>> +    /** Raise jGrowl Notification on a jGrowl Container **/
>> +    $.fn.jGrowl = function( m , o ) {
>> +        // Short hand for passing in just an object to this method
>> +        if ( o === undefined && $.isPlainObject(m) ) {
>> +            o = m;
>> +            m = o.message;
>> +        }
>> +
>> +        if ( $.isFunction(this.each) ) {
>> +            var args = arguments;
>> +
>> +            return this.each(function() {
>> +                /** Create a jGrowl Instance on the Container if it does not exist **/
>> +                if ( $(this).data('jGrowl.instance') === undefined ) {
>> +                    $(this).data('jGrowl.instance', $.extend( new $.fn.jGrowl(), { notifications: [], element: null, interval: null } ));
>> +                    $(this).data('jGrowl.instance').startup( this );
>> +                }
>> +
>> +                /** Optionally call jGrowl instance methods, or just raise a normal notification **/
>> +                if ( $.isFunction($(this).data('jGrowl.instance')[m]) ) {
>> +                    $(this).data('jGrowl.instance')[m].apply( $(this).data('jGrowl.instance') , $.makeArray(args).slice(1) );
>> +                } else {
>> +                    $(this).data('jGrowl.instance').create( m , o );
>> +                }
>> +            });
>> +        }
>> +    };
>> +
>> +    $.extend( $.fn.jGrowl.prototype , {
>> +
>> +        /** Default JGrowl Settings **/
>> +        defaults: {
>> +            pool:                0,
>> +            header:                '',
>> +            group:                '',
>> +            sticky:                false,
>> +            position:            'top-right',
>> +            appendTo:            'body',
>> +            glue:                'after',
>> +            theme:                'default',
>> +            themeState:            'highlight',
>> +            corners:            '10px',
>> +            check:                250,
>> +            life:                3000,
>> +            closeDuration:        'normal',
>> +            openDuration:        'normal',
>> +            easing:                'swing',
>> +            closer:                true,
>> +            closeTemplate:        '&times;',
>> +            closerTemplate:        '<div>[ close all ]</div>',
>> +            log:                function() {},
>> +            beforeOpen:            function() {},
>> +            afterOpen:            function() {},
>> +            open:                function() {},
>> +            beforeClose:        function() {},
>> +            close:                function() {},
>> +            click:                function() {},
>> +            animateOpen:        {
>> +                opacity:        'show'
>> +            },
>> +            animateClose:        {
>> +                opacity:        'hide'
>> +            }
>> +        },
>> +
>> +        notifications: [],
>> +
>> +        /** jGrowl Container Node **/
>> +        element:                null,
>> +
>> +        /** Interval Function **/
>> +        interval:                null,
>> +
>> +        /** Create a Notification **/
>> +        create: function( message , options ) {
>> +            var o = $.extend({}, this.defaults, options);
>> +
>> +            /* To keep backward compatibility with 1.24 and earlier, honor 'speed' if the user has set it */
>> +            if (typeof o.speed !== 'undefined') {
>> +                o.openDuration = o.speed;
>> +                o.closeDuration = o.speed;
>> +            }
>> +
>> +            this.notifications.push({ message: message , options: o });
>> +
>> +            o.log.apply( this.element , [this.element,message,o] );
>> +        },
>> +
>> +        render: function( n ) {
>> +            var self = this;
>> +            var message = n.message;
>> +            var o = n.options;
>> +
>> +            // Support for jQuery theme-states, if this is not used it displays a widget header
>> +            o.themeState = (o.themeState === '') ? '' : 'ui-state-' + o.themeState;
>> +
>> +            var notification = $('<div/>')
>> +                .addClass('jGrowl-notification alert ' + o.themeState + ' ui-corner-all' + ((o.group !== undefined && o.group !== '') ? ' ' + 
>> o.group : ''))
>> + .append($('<button/>').addClass('jGrowl-close').html(o.closeTemplate))
>> + .append($('<div/>').addClass('jGrowl-header').html(o.header))
>> + .append($('<div/>').addClass('jGrowl-message').html(message))
>> +                .data("jGrowl", o).addClass(o.theme).children('.jGrowl-close').bind("click.jGrowl", function() {
>> + $(this).parent().trigger('jGrowl.beforeClose');
>> +                    return false;
>> +                })
>> +                .parent();
>> +
>> +
>> +            /** Notification Actions **/
>> +            $(notification).bind("mouseover.jGrowl", function() {
>> +                $('.jGrowl-notification', self.element).data("jGrowl.pause", true);
>> +            }).bind("mouseout.jGrowl", function() {
>> +                $('.jGrowl-notification', self.element).data("jGrowl.pause", false);
>> +            }).bind('jGrowl.beforeOpen', function() {
>> +                if ( o.beforeOpen.apply( notification , [notification,message,o,self.element] ) !== false ) {
>> +                    $(this).trigger('jGrowl.open');
>> +                }
>> +            }).bind('jGrowl.open', function() {
>> +                if ( o.open.apply( notification , [notification,message,o,self.element] ) !== false ) {
>> +                    if ( o.glue == 'after' ) {
>> +                        $('.jGrowl-notification:last', self.element).after(notification);
>> +                    } else {
>> +                        $('.jGrowl-notification:first', self.element).before(notification);
>> +                    }
>> +
>> +                    $(this).animate(o.animateOpen, o.openDuration, o.easing, function() {
>> +                        // Fixes some anti-aliasing issues with IE filters.
>> +                        if ($.support.opacity === false)
>> + this.style.removeAttribute('filter');
>> +
>> +                        if ( $(this).data("jGrowl") !== null && typeof $(this).data("jGrowl") !== 'undefined') // Happens when a notification is 
>> closing before it's open.
>> +                            $(this).data("jGrowl").created = new Date();
>> +
>> +                        $(this).trigger('jGrowl.afterOpen');
>> +                    });
>> +                }
>> +            }).bind('jGrowl.afterOpen', function() {
>> +                o.afterOpen.apply( notification , [notification,message,o,self.element] );
>> +            }).bind('click', function() {
>> +                o.click.apply( notification, [notification,message,o,self.element] );
>> +            }).bind('jGrowl.beforeClose', function() {
>> +                if ( o.beforeClose.apply( notification , [notification,message,o,self.element] ) !== false )
>> +                    $(this).trigger('jGrowl.close');
>> +            }).bind('jGrowl.close', function() {
>> +                // Pause the notification, lest during the course of animation another close event gets called.
>> +                $(this).data('jGrowl.pause', true);
>> +                $(this).animate(o.animateClose, o.closeDuration, o.easing, function() {
>> +                    if ( $.isFunction(o.close) ) {
>> +                        if ( o.close.apply( notification , [notification,message,o,self.element] ) !== false )
>> +                            $(this).remove();
>> +                    } else {
>> +                        $(this).remove();
>> +                    }
>> +                });
>> +            }).trigger('jGrowl.beforeOpen');
>> +
>> +            /** Optional Corners Plugin **/
>> +            if ( o.corners !== '' && $.fn.corner !== undefined ) $(notification).corner( o.corners );
>> +
>> +            /** Add a Global Closer if more than one notification exists **/
>> +            if ($('.jGrowl-notification:parent', self.element).length > 1 &&
>> +                $('.jGrowl-closer', self.element).length === 0 && this.defaults.closer !== false ) {
>> + $(this.defaults.closerTemplate).addClass('jGrowl-closer ' + this.defaults.themeState + ' ui-corner-all').addClass(this.defaults.theme)
>> + .appendTo(self.element).animate(this.defaults.animateOpen, this.defaults.speed, this.defaults.easing)
>> +                    .bind("click.jGrowl", function() {
>> + $(this).siblings().trigger("jGrowl.beforeClose");
>> +
>> +                        if ( $.isFunction( self.defaults.closer ) ) {
>> +                            self.defaults.closer.apply( $(this).parent()[0] , [$(this).parent()[0]] );
>> +                        }
>> +                    });
>> +            }
>> +        },
>> +
>> +        /** Update the jGrowl Container, removing old jGrowl notifications **/
>> +        update: function() {
>> + $(this.element).find('.jGrowl-notification:parent').each( function() {
>> +                if ($(this).data("jGrowl") !== undefined && $(this).data("jGrowl").created !== undefined &&
>> +                    ($(this).data("jGrowl").created.getTime() + parseInt($(this).data("jGrowl").life, 10))  < (new Date()).getTime() &&
>> +                    $(this).data("jGrowl").sticky !== true &&
>> +                    ($(this).data("jGrowl.pause") === undefined || $(this).data("jGrowl.pause") !== true) ) {
>> +
>> +                    // Pause the notification, lest during the course of animation another close event gets called.
>> +                    $(this).trigger('jGrowl.beforeClose');
>> +                }
>> +            });
>> +
>> +            if (this.notifications.length > 0 &&
>> +                (this.defaults.pool === 0 || $(this.element).find('.jGrowl-notification:parent').length < this.defaults.pool) )
>> +                this.render( this.notifications.shift() );
>> +
>> +            if ($(this.element).find('.jGrowl-notification:parent').length < 2 ) {
>> + $(this.element).find('.jGrowl-closer').animate(this.defaults.animateClose, this.defaults.speed, this.defaults.easing, function() {
>> +                    $(this).remove();
>> +                });
>> +            }
>> +        },
>> +
>> +        /** Setup the jGrowl Notification Container **/
>> +        startup: function(e) {
>> +            this.element = $(e).addClass('jGrowl').append('<div class="jGrowl-notification"></div>');
>> +            this.interval = setInterval( function() {
>> +                // some error in chage ^^
>> +                var instance = $(e).data('jGrowl.instance');
>> +                if (undefined !== instance) {
>> +                    instance.update();
>> +                }
>> +            }, parseInt(this.defaults.check, 10));
>> +        },
>> +
>> +        /** Shutdown jGrowl, removing it and clearing the interval **/
>> +        shutdown: function() {
>> +            $(this.element).removeClass('jGrowl')
>> + .find('.jGrowl-notification').trigger('jGrowl.close')
>> +                .parent().empty()
>> +            ;
>> +
>> +            clearInterval(this.interval);
>> +        },
>> +
>> +        close: function() {
>> + $(this.element).find('.jGrowl-notification').each(function(){
>> +                $(this).trigger('jGrowl.beforeClose');
>> +            });
>> +        }
>> +    });
>> +
>> +    /** Reference the Defaults Object for compatibility with older versions of jGrowl **/
>> +    $.jGrowl.defaults = $.fn.jGrowl.prototype.defaults;
>> +
>> +})(jQuery);
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.js
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/plain
>>
>> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css (added)
>> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css Mon Dec 18 14:48:04 2017
>> @@ -0,0 +1 @@
>> +.jGrowl{z-index:9999;color:#fff;font-size:12px;font-family:"Helvetica 
>> Neue",Helvetica,Arial,sans-serif;position:fixed}.jGrowl.top-left{left:0;top:0}.jGrowl.top-right{right:0;top:0}.jGrowl.bottom-left{left:0;bottom:0}.jGrowl.bottom-right{right:0;bottom:0}.jGrowl.center{top:0;width:50%;left:25%}.jGrowl.center 
>> .jGrowl-closer,.jGrowl.center 
>> .jGrowl-notification{margin-left:auto;margin-right:auto}.jGrowl-notification{background-color:#000;opacity:.9;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));zoom:1;width:250px;padding:10px;margin:10px;text-align:left;display:none;border-radius:5px;min-height:40px}.jGrowl-notification 
>> .ui-state-highlight,.jGrowl-notification .ui-widget-content .ui-state-highlight,.jGrowl-notification .ui-widget-header 
>> .ui-state-highlight{border:1px solid #000;background:#000;color:#fff}.jGrowl-notification 
>> .jGrowl-header{font-weight:700;font-size:.85em}.jGrowl-notification .jGrowl
>> -close{background-color:transparent;color:inherit;border:none;z-index:99;float:right;font-weight:700;font-size:1em;cursor:pointer}.jGrowl-closer{background-color:#000;opacity:.9;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=(0.9*100));zoom:1;width:250px;padding:10px;margin:10px;display:none;border-radius:5px;padding-top:4px;padding-bottom:4px;cursor:pointer;font-size:.9em;font-weight:700;text-align:center}.jGrowl-closer 
>> .ui-state-highlight,.jGrowl-closer .ui-widget-content .ui-state-highlight,.jGrowl-closer .ui-widget-header .ui-state-highlight{border:1px solid 
>> #000;background:#000;color:#fff}@media print{.jGrowl{display:none}}
>> \ No newline at end of file
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/css
>>
>> Added: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
>> URL: 
>> http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js?rev=1818580&view=auto
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js (added)
>> +++ ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js Mon Dec 18 14:48:04 2017
>> @@ -0,0 +1,2 @@
>> +!function(a){a.jGrowl=function(b,c){0===a("#jGrowl").length&&a('<div 
>> id="jGrowl"></div>').addClass(c&&c.position?c.position:a.jGrowl.defaults.position).appendTo(c&&c.appendTo?c.appendTo:a.jGrowl.defaults.appendTo),a("#jGrowl").jGrowl(b,c)},a.fn.jGrowl=function(b,c){if(void 
>> 0===c&&a.isPlainObject(b)&&(c=b,b=c.message),a.isFunction(this.each)){var d=arguments;return this.each(function(){void 
>> 0===a(this).data("jGrowl.instance")&&(a(this).data("jGrowl.instance",a.extend(new 
>> a.fn.jGrowl,{notifications:[],element:null,interval:null})),a(this).data("jGrowl.instance").startup(this)),a.isFunction(a(this).data("jGrowl.instance")[b])?a(this).data("jGrowl.instance")[b].apply(a(this).data("jGrowl.instance"),a.makeArray(d).slice(1)):a(this).data("jGrowl.instance").create(b,c)})}},a.extend(a.fn.jGrowl.prototype,{defaults:{pool:0,header:"",group:"",sticky:!1,position:"top-right",appendTo:"body",glue:"after",theme:"default",themeState:"highlight",corners:"10px",check:250,life:3e3,closeDuration:"norm 
>>
>> al",openDuration:"normal",easing:"swing",closer:!0,closeTemplate:"&times;",closerTemplate:"<div>[ close all 
>> ]</div>",log:function(){},beforeOpen:function(){},afterOpen:function(){},open:function(){},beforeClose:function(){},close:function(){},click:function(){},animateOpen:{opacity:"show"},animateClose:{opacity:"hide"}},notifications:[],element:null,interval:null,create:function(b,c){var 
>> d=a.extend({},this.defaults,c);"undefined"!=typeof 
>> d.speed&&(d.openDuration=d.speed,d.closeDuration=d.speed),this.notifications.push({message:b,options:d}),d.log.apply(this.element,[this.element,b,d])},render:function(b){var 
>> c=this,d=b.message,e=b.options;e.themeState=""===e.themeState?"":"ui-state-"+e.themeState;var f=a("<div/>").addClass("jGrowl-notification alert 
>> "+e.themeState+" ui-corner-all"+(void 0!==e.group&&""!==e.group?" 
>> "+e.group:"")).append(a("<button/>").addClass("jGrowl-close").html(e.closeTemplate)).append(a("<div/>").addClass("jGrowl-header").html(e.header)).append(a("<div/>").addCla
>> ss("jGrowl-message").html(d)).data("jGrowl",e).addClass(e.theme).children(".jGrowl-close").bind("click.jGrowl",function(){return 
>> a(this).parent().trigger("jGrowl.beforeClose"),!1}).parent();a(f).bind("mouseover.jGrowl",function(){a(".jGrowl-notification",c.element).data("jGrowl.pause",!0)}).bind("mouseout.jGrowl",function(){a(".jGrowl-notification",c.element).data("jGrowl.pause",!1)}).bind("jGrowl.beforeOpen",function(){e.beforeOpen.apply(f,[f,d,e,c.element])!==!1&&a(this).trigger("jGrowl.open")}).bind("jGrowl.open",function(){e.open.apply(f,[f,d,e,c.element])!==!1&&("after"==e.glue?a(".jGrowl-notification:last",c.element).after(f):a(".jGrowl-notification:first",c.element).before(f),a(this).animate(e.animateOpen,e.openDuration,e.easing,function(){a.support.opacity===!1&&this.style.removeAttribute("filter"),null!==a(this).data("jGrowl")&&"undefined"!=typeof 
>> a(this).data("jGrowl")&&(a(this).data("jGrowl").created=new Date),a(this).trigger("jGrowl.afterOpen")}))}).bind("jGrowl.afterOpe
>> n",function(){e.afterOpen.apply(f,[f,d,e,c.element])}).bind("click",function(){e.click.apply(f,[f,d,e,c.element])}).bind("jGrowl.beforeClose",function(){e.beforeClose.apply(f,[f,d,e,c.element])!==!1&&a(this).trigger("jGrowl.close")}).bind("jGrowl.close",function(){a(this).data("jGrowl.pause",!0),a(this).animate(e.animateClose,e.closeDuration,e.easing,function(){a.isFunction(e.close)?e.close.apply(f,[f,d,e,c.element])!==!1&&a(this).remove():a(this).remove()})}).trigger("jGrowl.beforeOpen"),""!==e.corners&&void 
>> 0!==a.fn.corner&&a(f).corner(e.corners),a(".jGrowl-notification:parent",c.element).length>1&&0===a(".jGrowl-closer",c.element).length&&this.defaults.closer!==!1&&a(this.defaults.closerTemplate).addClass("jGrowl-closer 
>> "+this.defaults.themeState+" 
>> ui-corner-all").addClass(this.defaults.theme).appendTo(c.element).animate(this.defaults.animateOpen,this.defaults.speed,this.defaults.easing).bind("click.jGrowl",function(){a(this).siblings().trigger("jGrowl.beforeClose"),a.isFunction(
>> c.defaults.closer)&&c.defaults.closer.apply(a(this).parent()[0],[a(this).parent()[0]])})},update:function(){a(this.element).find(".jGrowl-notification:parent").each(function(){void 
>> 0!==a(this).data("jGrowl")&&void 
>> 0!==a(this).data("jGrowl").created&&a(this).data("jGrowl").created.getTime()+parseInt(a(this).data("jGrowl").life,10)<(new 
>> Date).getTime()&&a(this).data("jGrowl").sticky!==!0&&(void 
>> 0===a(this).data("jGrowl.pause")||a(this).data("jGrowl.pause")!==!0)&&a(this).trigger("jGrowl.beforeClose")}),this.notifications.length>0&&(0===this.defaults.pool||a(this.element).find(".jGrowl-notification:parent").length<this.defaults.pool)&&this.render(this.notifications.shift()),a(this.element).find(".jGrowl-notification:parent").length<2&&a(this.element).find(".jGrowl-closer").animate(this.defaults.animateClose,this.defaults.speed,this.defaults.easing,function(){a(this).remove()})},startup:function(b){this.element=a(b).addClass("jGrowl").append('<div 
>> class="jGrowl-notification"></div>'),th
>>   is.interval=setInterval(function(){var c=a(b).data("jGrowl.instance");void 
>> 0!==c&&c.update()},parseInt(this.defaults.check,10))},shutdown:function(){a(this.element).removeClass("jGrowl").find(".jGrowl-notification").trigger("jGrowl.close").parent().empty(),clearInterval(this.interval)},close:function(){a(this.element).find(".jGrowl-notification").each(function(){a(this).trigger("jGrowl.beforeClose")})}}),a.jGrowl.defaults=a.fn.jGrowl.prototype.defaults}(jQuery);
>> +//# sourceMappingURL=jquery.jgrowl.map
>> \ No newline at end of file
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
>> ------------------------------------------------------------------------------
>>      svn:eol-style = native
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
>> ------------------------------------------------------------------------------
>>      svn:keywords = Date Rev Author URL Id
>>
>> Propchange: ofbiz/ofbiz-framework/trunk/themes/common/webapp/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js
>> ------------------------------------------------------------------------------
>>      svn:mime-type = text/plain
>>
>> Modified: ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml
>> URL: http://svn.apache.org/viewvc/ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml?rev=1818580&r1=1818579&r2=1818580&view=diff
>> ==============================================================================
>> --- ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml (original)
>> +++ ofbiz/ofbiz-framework/trunk/themes/common/widget/CommonScreens.xml Mon Dec 18 14:48:04 2017
>> @@ -128,8 +128,8 @@ under the License.
>>                   <set field="layoutSettings.javaScripts[+0]" value="${groovy: 
>> org.apache.ofbiz.common.JsLanguageFilesMapping.dateTime.getFilePath(initialLocaleComplete)}" global="true" />
>>                   <!-- Jgrowl -->
>>                   <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/Readmore.js-master/readmore.js" global="true"/>
>> -                <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/jquery-jgrowl/1.4.1/jquery.jgrowl.min.js" global="true"/>
>> -                <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/plugins/jquery-jgrowl/1.4.1/jquery.jgrowl.min.css" 
>> global="true" />
>> +                <set field="layoutSettings.javaScripts[]" value="/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.js" global="true"/>
>> +                <set field="layoutSettings.styleSheets[+0]" value="/common/js/jquery/plugins/jquery-jgrowl/jquery.jgrowl-1.4.6.min.css" 
>> global="true" />
>>                   <!-- Set default user locale from browser -->
>>                   <set field="layoutSettings.javaScripts[+0]" value="/common/js/util/setUserLocale.js"/>
>>                   <set field="layoutSettings.javaScripts[+0]" value="/images/moment-timezone-with-data.min.js" global="true"/>
>>
>>
>>
>
>