Added: websites/staging/celix/trunk/content/index.html
==============================================================================
--- websites/staging/celix/trunk/content/index.html (added)
+++ websites/staging/celix/trunk/content/index.html Tue Jul 29 17:51:21 2014
@@ -0,0 +1,197 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd";>
+<html>
+<head>
+<!--
+
+    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.
+-->
+
+    <link rel="stylesheet" type="text/css" 
+               href="/css/reset-fonts-grids.css">
+    <link rel="stylesheet" type="text/css" href="/css/base-min.css">
+    <link rel="stylesheet" type="text/css" href="/css/superfish.css" 
media="screen">
+    <!--  link rel="stylesheet" type="text/css" href="/css/BreadCrumb.css" 
media="screen"  -->
+    <link rel="stylesheet" type="text/css" href="/css/celix.css">
+    <link rel="stylesheet" type="text/css" href="/css/pygments.css">
+    
+  
+  <title>Apache Celix - Welcome to Apache Celix (incubating)</title>
+  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+  
+  <script type="text/javascript" src="/js/jquery.min.js"></script>
+  <script type="text/javascript" src="/js/jquery.gradient.js"></script>
+  <script type="text/javascript" src="/js/jquery.dimensions.js"></script>
+  <script type="text/javascript" src="/js/jquery.hoverIntent.js"></script>
+  <script type="text/javascript" src="/js/superfish.js"></script>
+  <script type="text/javascript" src="/js/supersubs.js"></script>
+  <!-- script type="text/javascript" src="/js/jquery.easing.1.3.js"></script>
+  <script type="text/javascript" 
src="/js/jquery.jBreadCrumb.1.1.js"></script-->
+  <script type="text/javascript"><!--
+        // initialize plugins
+        jQuery(function() {
+               jQuery('#navbar ul:first').addClass('sf-menu');
+            //Nav bar: Supersubs dropdown menus
+            jQuery('#navbar ul:first').supersubs({extraWidth: 
1}).superfish({animation:{opacity:0.97,height:'show'}});
+        });
+  
+        //jQuery(document).ready(function() {
+               //      jQuery("#breadCrumb").jBreadCrumb();
+               //  })
+    --></script>
+</head>
+
+<body>
+    <div id="page">
+        <div id="header">
+            <a href="/index.html"><img id="headerimage" 
src="/images/celix.png" alt="Apache Celix" 
+                    height="130px"></a>
+            <a href="http://incubator.apache.org/";>
+               <img id="incubatorimage" 
src="/celix/images/apache-incubator-logo.png" alt="Apache Incubator">
+               </a>
+            <div id="navbar"> 
+                <ul>
+<li><a href="/index.html">Home</a></li>
+<li><a href="/celix.html">About</a><ul>
+<li><a href="/celix.html">Celix</a></li>
+<li><a href="/background.html">Background</a></li>
+</ul>
+</li>
+<li><a href="/subprojects.html">Subprojects</a><ul>
+<li><a href="/subprojects/dependencymanager.html">Dependency Manager</a></li>
+<li><a href="/subprojects/deviceaccess.html">Device Access</a></li>
+<li><a href="/subprojects/examples.html">Examples</a></li>
+<li><a href="/subprojects/framework.html">Framework</a></li>
+<li><a href="/subprojects/hessian.html">Hessian</a></li>
+<li><a href="/subprojects/launcher.html">Launcher</a></li>
+<li><a href="/subprojects/logservice.html">Log Service</a></li>
+<li><a href="/subprojects/logwriter.html">Log Writer</a></li>
+<li><a href="/subprojects/remoteserviceadmin.html">Remote Service 
Admin</a></li>
+<li><a href="/subprojects/shell.html">Shell</a></li>
+<li><a href="/subprojects/shelltui.html">Shell TUI</a></li>
+<li><a href="/subprojects/utils.html">Utils</a></li>
+</ul>
+</li>
+<li><a href="/documentation.html">Documentation</a><ul>
+<li><a href="/documentation/buildingandrunning.html">Building and 
Running</a></li>
+<li><a href="/documentation/releasing.html">How To Release</a></li>
+<li><a href="/documentation/design.html">Design</a></li>
+<li><a href="/documentation/mapping.html">Mapping</a></li>
+<li><a href="/documentation/memorypools.html">Memory Pools</a></li>
+<li><a href="/documentation/examples.html">Examples</a><ul>
+<li><a href="/examples/helloworld.html">Hello World Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li><a href="/download.cgi">Download</a></li>
+<li><a href="/community/community.html">Community</a><ul>
+<li><a href="/community/contributing/contributing.html">Contributing</a></li>
+<li><a href="/community/boardreports/boardreports.html">Board Reports</a></li>
+</ul>
+</li>
+<li><a href="/support/support.html">Support</a><ul>
+<li><a href="/support/mailinglist.html">Mailing List</a></li>
+<li><a href="/support/issuetracking.html">Issue Tracking</a></li>
+</ul>
+</li>
+<li><a href="/asf/asf.html">ASF</a><ul>
+<li><a href="http://www.apache.org/";>ASF Home</a></li>
+<li><a href="http://www.apache.org/foundation/how-it-works.html";>How it 
Works</a></li>
+<li><a href="http://www.apache.org/licenses/";>License</a></li>
+<li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
+<li><a href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
+<li><a href="http://www.apache.org/security/";>Security</a></li>
+</ul>
+</li>
+</ul>
+            </div>
+                   <!-- div id="breadCrumbHolder" class="module">
+                       <div id="breadCrumb" class="breadCrumb module">
+                           <ul>
+                               
+                           </ul>
+                       </div>
+                   </div-->
+        </div>
+  
+        <div id="center">
+            <div id="main">
+                <div id="homecenter">
+                    <div id="homeleft">
+                        <h1 class="title">Welcome to Apache Celix 
(incubating)</h1>
+                        <p>Celix is an implementation of the OSGi 
specification adapted to C. It will follow the API as close as possible, 
+but since the OSGi specification is written primarily for Java, there will be 
differences (Java is OO, C is procedural). 
+An important aspect of the implementation is interoperability between Java and 
C. 
+This interoperability is achieved by porting and implementing the Remote 
Services specification in Celix.</p>
+<p>Celix entered incubation in November 2010 and is just getting started. 
Short term goals include:</p>
+<ul>
+<li>Working towards a release</li>
+<li>Generate awareness</li>
+<li>Grow a community</li>
+</ul>
+<h2 id="news">News</h2>
+<ul>
+<li>25-feb-2014 - After a successful vote Celix 1.0.0.incubating is released. 
The release is now available via the <a href="/celix/download.cgi">download</a> 
section.</li>
+</ul>
+<h2 id="incubation">Incubation</h2>
+<p>Apache Celix is an effort undergoing incubation at The Apache Software 
Foundation (ASF), 
+sponsored by the Apache Incubator PMC. Incubation is required of all newly 
accepted projects until a further review 
+indicates that the infrastructure, communications, and decision making process 
have stabilized in a manner consistent
+with other successful ASF projects. While incubation status is not necessarily 
a reflection of the completeness or 
+stability of the code, it does indicate that the project has yet to be fully 
endorsed by the ASF.</p>
+                    </div>
+                    <div id="homeright">
+                        
+                        
+                        <div id="download" class="rc">
+                            <h2 id="download-celix">Download Celix</h2>
+<ul>
+<li><a href="/celix/download.cgi">Downloads</a></li>
+<li><a href="https://svn.apache.org/repos/asf/celix/trunk/";>Celix SVN</a></li>
+</ul>
+<h2 id="mailing-lists">Mailing Lists</h2>
+<ul>
+<li><a href="mailto:[email protected]";>Developers List</a>
+    (<a 
href="http://incubator.markmail.org/search/+list:org.apache.incubator.celix-dev";>Archives</a>)</li>
+<li>
+<p><a href="mailto:[email protected]";>Commits List</a>
+    (<a 
href="http://incubator.markmail.org/search/+list:org.apache.incubator.celix-commits";>Archives</a>)</p>
+</li>
+<li>
+<p><a href="http://mail-archives.apache.org/mod_mbox/";>Apache Mail 
Archives</a></p>
+</li>
+</ul>
+                        </div>
+                        
+                        
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+  
+    <div id="footer">
+        <div class="copyright">
+            <p>
+                Copyright &copy; 2011 The Apache Software Foundation, Licensed 
under 
+                the <a 
href="http://www.apache.org/licenses/LICENSE-2.0";>Apache License, Version 
2.0</a>.
+                <br>
+                Apache Celix, Celix, Apache, the Apache feather logo and the 
Apache Celix logo are trademarks of The Apache Software Foundation.
+            </p>
+        </div>
+    </div>
+</body>
+</html>

Added: websites/staging/celix/trunk/content/js/hoverIntent.js
==============================================================================
--- websites/staging/celix/trunk/content/js/hoverIntent.js (added)
+++ websites/staging/celix/trunk/content/js/hoverIntent.js Tue Jul 29 17:51:21 
2014
@@ -0,0 +1,84 @@
+(function($){
+       /* hoverIntent by Brian Cherne */
+       $.fn.hoverIntent = function(f,g) {
+               // default configuration options
+               var cfg = {
+                       sensitivity: 7,
+                       interval: 100,
+                       timeout: 0
+               };
+               // override configuration options with user supplied object
+               cfg = $.extend(cfg, g ? { over: f, out: g } : f );
+
+               // instantiate variables
+               // cX, cY = current X and Y position of mouse, updated by 
mousemove event
+               // pX, pY = previous X and Y position of mouse, set by 
mouseover and polling interval
+               var cX, cY, pX, pY;
+
+               // A private function for getting mouse position
+               var track = function(ev) {
+                       cX = ev.pageX;
+                       cY = ev.pageY;
+               };
+
+               // A private function for comparing current and previous mouse 
position
+               var compare = function(ev,ob) {
+                       ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+                       // compare mouse positions to see if they've crossed 
the threshold
+                       if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < 
cfg.sensitivity ) {
+                               $(ob).unbind("mousemove",track);
+                               // set hoverIntent state to true (so mouseOut 
can be called)
+                               ob.hoverIntent_s = 1;
+                               return cfg.over.apply(ob,[ev]);
+                       } else {
+                               // set previous coordinates for next time
+                               pX = cX; pY = cY;
+                               // use self-calling timeout, guarantees 
intervals are spaced out properly (avoids JavaScript timer bugs)
+                               ob.hoverIntent_t = setTimeout( 
function(){compare(ev, ob);} , cfg.interval );
+                       }
+               };
+
+               // A private function for delaying the mouseOut function
+               var delay = function(ev,ob) {
+                       ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+                       ob.hoverIntent_s = 0;
+                       return cfg.out.apply(ob,[ev]);
+               };
+
+               // A private function for handling mouse 'hovering'
+               var handleHover = function(e) {
+                       // next three lines copied from jQuery.hover, ignore 
children onMouseOver/onMouseOut
+                       var p = (e.type == "mouseover" ? e.fromElement : 
e.toElement) || e.relatedTarget;
+                       while ( p && p != this ) { try { p = p.parentNode; } 
catch(e) { p = this; } }
+                       if ( p == this ) { return false; }
+
+                       // copy objects to be passed into t (required for event 
object to be passed in IE)
+                       var ev = jQuery.extend({},e);
+                       var ob = this;
+
+                       // cancel hoverIntent timer if it exists
+                       if (ob.hoverIntent_t) { ob.hoverIntent_t = 
clearTimeout(ob.hoverIntent_t); }
+
+                       // else e.type == "onmouseover"
+                       if (e.type == "mouseover") {
+                               // set "previous" X and Y position based on 
initial entry point
+                               pX = ev.pageX; pY = ev.pageY;
+                               // update "current" X and Y position based on 
mousemove
+                               $(ob).bind("mousemove",track);
+                               // start polling interval (self-calling 
timeout) to compare mouse coordinates over time
+                               if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = 
setTimeout( function(){compare(ev,ob);} , cfg.interval );}
+
+                       // else e.type == "onmouseout"
+                       } else {
+                               // unbind expensive mousemove event
+                               $(ob).unbind("mousemove",track);
+                               // if hoverIntent state is true, then call the 
mouseOut function after the specified delay
+                               if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = 
setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
+                       }
+               };
+
+               // bind the function to the two event listeners
+               return this.mouseover(handleHover).mouseout(handleHover);
+       };
+       
+})(jQuery);
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.bgiframe.min.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.bgiframe.min.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.bgiframe.min.js Tue Jul 29 
17:51:21 2014
@@ -0,0 +1,10 @@
+/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
+ * Dual licensed under the MIT 
(http://www.opensource.org/licenses/mit-license.php) 
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
+ *
+ * $LastChangedDate: 2007-06-19 20:25:28 -0500 (Tue, 19 Jun 2007) $
+ * $Rev: 2111 $
+ *
+ * Version 2.1
+ */
+(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&parseInt($.browser.version)<=6){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var
 prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe 
class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return
 this.each(function(){if($('> 
iframe.bgiframe',this).length==0)this.insertBefore(doc
 ument.createElement(html),this.firstChild);});}return 
this;};if(!$.browser.version)$.browser.version=navigator.userAgent.toLowerCase().match(/.+(?:rv|it|ra|ie)[\/:
 ]([\d.]+)/)[1];})(jQuery);
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.dimensions.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.dimensions.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.dimensions.js Tue Jul 29 
17:51:21 2014
@@ -0,0 +1,119 @@
+/* Copyright (c) 2007 Paul Bakaus ([email protected]) and Brandon 
Aaron ([email protected] || http://brandonaaron.net)
+ * Dual licensed under the MIT 
(http://www.opensource.org/licenses/mit-license.php)
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
+ *
+ * $LastChangedDate: 2007-12-20 08:46:55 -0600 (Thu, 20 Dec 2007) $
+ * $Rev: 4259 $
+ *
+ * Version: 1.2
+ *
+ * Requires: jQuery 1.2+
+ */
+
+(function($){
+       
+$.dimensions = {
+       version: '1.2'
+};
+
+// Create innerHeight, innerWidth, outerHeight and outerWidth methods
+$.each( [ 'Height', 'Width' ], function(i, name){
+       
+       // innerHeight and innerWidth
+       $.fn[ 'inner' + name ] = function() {
+               if (!this[0]) return;
+               
+               var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
+                   borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or 
right
+               
+               return this.is(':visible') ? this[0]['client' + name] : num( 
this, name.toLowerCase() ) + num(this, 'padding' + torl) + num(this, 'padding' 
+ borr);
+       };
+       
+       // outerHeight and outerWidth
+       $.fn[ 'outer' + name ] = function(options) {
+               if (!this[0]) return;
+               
+               var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
+                   borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or 
right
+               
+               options = $.extend({ margin: false }, options || {});
+               
+               var val = this.is(':visible') ? 
+                               this[0]['offset' + name] : 
+                               num( this, name.toLowerCase() )
+                                       + num(this, 'border' + torl + 'Width') 
+ num(this, 'border' + borr + 'Width')
+                                       + num(this, 'padding' + torl) + 
num(this, 'padding' + borr);
+               
+               return val + (options.margin ? (num(this, 'margin' + torl) + 
num(this, 'margin' + borr)) : 0);
+       };
+});
+
+// Create scrollLeft and scrollTop methods
+$.each( ['Left', 'Top'], function(i, name) {
+       $.fn[ 'scroll' + name ] = function(val) {
+               if (!this[0]) return;
+               
+               return val != undefined ?
+               
+                       // Set the scroll offset
+                       this.each(function() {
+                               this == window || this == document ?
+                                       window.scrollTo( 
+                                               name == 'Left' ? val : 
$(window)[ 'scrollLeft' ](),
+                                               name == 'Top'  ? val : 
$(window)[ 'scrollTop'  ]()
+                                       ) :
+                                       this[ 'scroll' + name ] = val;
+                       }) :
+                       
+                       // Return the scroll offset
+                       this[0] == window || this[0] == document ?
+                               self[ (name == 'Left' ? 'pageXOffset' : 
'pageYOffset') ] ||
+                                       $.boxModel && document.documentElement[ 
'scroll' + name ] ||
+                                       document.body[ 'scroll' + name ] :
+                               this[0][ 'scroll' + name ];
+       };
+});
+
+$.fn.extend({
+       position: function() {
+               var left = 0, top = 0, elem = this[0], offset, parentOffset, 
offsetParent, results;
+               
+               if (elem) {
+                       // Get *real* offsetParent
+                       offsetParent = this.offsetParent();
+                       
+                       // Get correct offsets
+                       offset       = this.offset();
+                       parentOffset = offsetParent.offset();
+                       
+                       // Subtract element margins
+                       offset.top  -= num(elem, 'marginTop');
+                       offset.left -= num(elem, 'marginLeft');
+                       
+                       // Add offsetParent borders
+                       parentOffset.top  += num(offsetParent, 
'borderTopWidth');
+                       parentOffset.left += num(offsetParent, 
'borderLeftWidth');
+                       
+                       // Subtract the two offsets
+                       results = {
+                               top:  offset.top  - parentOffset.top,
+                               left: offset.left - parentOffset.left
+                       };
+               }
+               
+               return results;
+       },
+       
+       offsetParent: function() {
+               var offsetParent = this[0].offsetParent;
+               while ( offsetParent && 
(!/^body|html$/i.test(offsetParent.tagName) && $.css(offsetParent, 'position') 
== 'static') )
+                       offsetParent = offsetParent.offsetParent;
+               return $(offsetParent);
+       }
+});
+
+function num(el, prop) {
+       return parseInt($.curCSS(el.jquery?el[0]:el,prop,true))||0;
+};
+
+})(jQuery);
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.easing.1.3.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.easing.1.3.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.easing.1.3.js Tue Jul 29 
17:51:21 2014
@@ -0,0 +1,205 @@
+/*
+ * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
+ *
+ * Uses the built in easing capabilities added In jQuery 1.1
+ * to offer multiple easing options
+ *
+ * TERMS OF USE - jQuery Easing
+ * 
+ * Open source under the BSD License. 
+ * 
+ * Copyright © 2008 George McGinley Smith
+ * All rights reserved.
+ * 
+ * Redistribution and use in source and binary forms, with or without 
modification, 
+ * are permitted provided that the following conditions are met:
+ * 
+ * Redistributions of source code must retain the above copyright notice, this 
list of 
+ * conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, 
this list 
+ * of conditions and the following disclaimer in the documentation and/or 
other materials 
+ * provided with the distribution.
+ * 
+ * Neither the name of the author nor the names of contributors may be used to 
endorse 
+ * or promote products derived from this software without specific prior 
written permission.
+ * 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
AND ANY 
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 
EVENT SHALL THE
+ *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
PROCUREMENT OF SUBSTITUTE
+ *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
INTERRUPTION) HOWEVER CAUSED 
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 
TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
SOFTWARE, EVEN IF ADVISED 
+ * OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+*/
+
+// t: current time, b: begInnIng value, c: change In value, d: duration
+jQuery.easing['jswing'] = jQuery.easing['swing'];
+
+jQuery.extend( jQuery.easing,
+{
+       def: 'easeOutQuad',
+       swing: function (x, t, b, c, d) {
+               //alert(jQuery.easing.default);
+               return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
+       },
+       easeInQuad: function (x, t, b, c, d) {
+               return c*(t/=d)*t + b;
+       },
+       easeOutQuad: function (x, t, b, c, d) {
+               return -c *(t/=d)*(t-2) + b;
+       },
+       easeInOutQuad: function (x, t, b, c, d) {
+               if ((t/=d/2) < 1) return c/2*t*t + b;
+               return -c/2 * ((--t)*(t-2) - 1) + b;
+       },
+       easeInCubic: function (x, t, b, c, d) {
+               return c*(t/=d)*t*t + b;
+       },
+       easeOutCubic: function (x, t, b, c, d) {
+               return c*((t=t/d-1)*t*t + 1) + b;
+       },
+       easeInOutCubic: function (x, t, b, c, d) {
+               if ((t/=d/2) < 1) return c/2*t*t*t + b;
+               return c/2*((t-=2)*t*t + 2) + b;
+       },
+       easeInQuart: function (x, t, b, c, d) {
+               return c*(t/=d)*t*t*t + b;
+       },
+       easeOutQuart: function (x, t, b, c, d) {
+               return -c * ((t=t/d-1)*t*t*t - 1) + b;
+       },
+       easeInOutQuart: function (x, t, b, c, d) {
+               if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
+               return -c/2 * ((t-=2)*t*t*t - 2) + b;
+       },
+       easeInQuint: function (x, t, b, c, d) {
+               return c*(t/=d)*t*t*t*t + b;
+       },
+       easeOutQuint: function (x, t, b, c, d) {
+               return c*((t=t/d-1)*t*t*t*t + 1) + b;
+       },
+       easeInOutQuint: function (x, t, b, c, d) {
+               if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
+               return c/2*((t-=2)*t*t*t*t + 2) + b;
+       },
+       easeInSine: function (x, t, b, c, d) {
+               return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
+       },
+       easeOutSine: function (x, t, b, c, d) {
+               return c * Math.sin(t/d * (Math.PI/2)) + b;
+       },
+       easeInOutSine: function (x, t, b, c, d) {
+               return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
+       },
+       easeInExpo: function (x, t, b, c, d) {
+               return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
+       },
+       easeOutExpo: function (x, t, b, c, d) {
+               return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
+       },
+       easeInOutExpo: function (x, t, b, c, d) {
+               if (t==0) return b;
+               if (t==d) return b+c;
+               if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
+               return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
+       },
+       easeInCirc: function (x, t, b, c, d) {
+               return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
+       },
+       easeOutCirc: function (x, t, b, c, d) {
+               return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
+       },
+       easeInOutCirc: function (x, t, b, c, d) {
+               if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
+               return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
+       },
+       easeInElastic: function (x, t, b, c, d) {
+               var s=1.70158;var p=0;var a=c;
+               if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
+               if (a < Math.abs(c)) { a=c; var s=p/4; }
+               else var s = p/(2*Math.PI) * Math.asin (c/a);
+               return -(a*Math.pow(2,10*(t-=1)) * Math.sin( 
(t*d-s)*(2*Math.PI)/p )) + b;
+       },
+       easeOutElastic: function (x, t, b, c, d) {
+               var s=1.70158;var p=0;var a=c;
+               if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
+               if (a < Math.abs(c)) { a=c; var s=p/4; }
+               else var s = p/(2*Math.PI) * Math.asin (c/a);
+               return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) 
+ c + b;
+       },
+       easeInOutElastic: function (x, t, b, c, d) {
+               var s=1.70158;var p=0;var a=c;
+               if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) 
p=d*(.3*1.5);
+               if (a < Math.abs(c)) { a=c; var s=p/4; }
+               else var s = p/(2*Math.PI) * Math.asin (c/a);
+               if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( 
(t*d-s)*(2*Math.PI)/p )) + b;
+               return a*Math.pow(2,-10*(t-=1)) * Math.sin( 
(t*d-s)*(2*Math.PI)/p )*.5 + c + b;
+       },
+       easeInBack: function (x, t, b, c, d, s) {
+               if (s == undefined) s = 1.70158;
+               return c*(t/=d)*t*((s+1)*t - s) + b;
+       },
+       easeOutBack: function (x, t, b, c, d, s) {
+               if (s == undefined) s = 1.70158;
+               return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
+       },
+       easeInOutBack: function (x, t, b, c, d, s) {
+               if (s == undefined) s = 1.70158; 
+               if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
+               return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
+       },
+       easeInBounce: function (x, t, b, c, d) {
+               return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
+       },
+       easeOutBounce: function (x, t, b, c, d) {
+               if ((t/=d) < (1/2.75)) {
+                       return c*(7.5625*t*t) + b;
+               } else if (t < (2/2.75)) {
+                       return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
+               } else if (t < (2.5/2.75)) {
+                       return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
+               } else {
+                       return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
+               }
+       },
+       easeInOutBounce: function (x, t, b, c, d) {
+               if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, 
d) * .5 + b;
+               return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + 
c*.5 + b;
+       }
+});
+
+/*
+ *
+ * TERMS OF USE - EASING EQUATIONS
+ * 
+ * Open source under the BSD License. 
+ * 
+ * Copyright © 2001 Robert Penner
+ * All rights reserved.
+ * 
+ * Redistribution and use in source and binary forms, with or without 
modification, 
+ * are permitted provided that the following conditions are met:
+ * 
+ * Redistributions of source code must retain the above copyright notice, this 
list of 
+ * conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice, 
this list 
+ * of conditions and the following disclaimer in the documentation and/or 
other materials 
+ * provided with the distribution.
+ * 
+ * Neither the name of the author nor the names of contributors may be used to 
endorse 
+ * or promote products derived from this software without specific prior 
written permission.
+ * 
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
AND ANY 
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO 
EVENT SHALL THE
+ *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
INCIDENTAL, SPECIAL,
+ *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 
PROCUREMENT OF SUBSTITUTE
+ *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
INTERRUPTION) HOWEVER CAUSED 
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 
TORT (INCLUDING
+ *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 
SOFTWARE, EVEN IF ADVISED 
+ * OF THE POSSIBILITY OF SUCH DAMAGE. 
+ *
+ */
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.gradient.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.gradient.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.gradient.js Tue Jul 29 
17:51:21 2014
@@ -0,0 +1,96 @@
+/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
+ * Dual licensed under the MIT 
(http://www.opensource.org/licenses/mit-license.php) 
+ * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
+ *
+ * Color functions from Steve's Cross Browser Gradient Backgrounds v1.0 
([email protected] && http://slayeroffice.com/code/gradient/)
+ *
+ * $LastChangedDate: 2007-06-26 19:52:18 -0500 (Tue, 26 Jun 2007) $
+ * $Rev: 2163 $
+ *
+ * Version 1.0
+ */
+(function($) {
+
+/**
+ * Adds a gradient to the background of an element.
+ *
+ * @example $('div').gradient({ from: '000000', to: 'CCCCCC' });
+ *
+ * @param Map options Settings/options to configure the gradient.
+ * @option String from The hex color code to start the gradient with.
+ *             By default the value is "000000".
+ * @option String to The hex color code to end the gradient with.
+ *             By default the value is "FFFFFF".
+ * @option String direction This tells the gradient to be horizontal
+ *      or vertical. By default the value is "horizontal".
+ * @option Number length This is used to constrain the gradient to a
+ *      particular width or height (depending on the direction). By default
+ *      the length is set to null, which will use the width or height
+ *      (depending on the direction) of the element.
+ * @option String position This tells the gradient to be positioned
+ *      at the top, bottom, left and/or right within the element. The
+ *      value is just a string that specifices top or bottom and left or right.
+ *      By default the value is 'top left'.
+ *
+ * @name gradient
+ * @type jQuery
+ * @cat Plugins/gradient
+ * @author Brandon Aaron ([email protected] || http://brandonaaron.net)
+ */
+$.fn.gradient = function(options) {
+       options = $.extend({ from: '000000', to: 'ffffff', direction: 
'horizontal', position: 'top', length: null }, options || {});
+       var createColorPath = function(startColor, endColor, distance) {
+               var colorPath = [],
+                   colorPercent = 1.0,
+                       distance = (distance < 100) ? distance : 100;
+               do {
+                       colorPath[colorPath.length] = 
setColorHue(longHexToDec(startColor), colorPercent, longHexToDec(endColor));    
  
+                       colorPercent -= ((100/distance)*0.01);
+               } while (colorPercent>0);
+               return colorPath;
+       },
+       setColorHue = function(originColor, opacityPercent, maskRGB) {
+               var returnColor = [];
+               for (var i=0; i<originColor.length; i++)
+                       returnColor[i] = 
Math.round(originColor[i]*opacityPercent) + 
Math.round(maskRGB[i]*(1.0-opacityPercent));
+               return returnColor;
+       },
+       longHexToDec = function(longHex) {
+               return new 
Array(toDec(longHex.substring(0,2)),toDec(longHex.substring(2,4)),toDec(longHex.substring(4,6)));
+       },
+       toDec = function(hex) {
+               return parseInt(hex,16);
+       };
+       return this.each(function() {
+               var $this = $(this), width = $this.innerWidth(), height = 
$this.innerHeight(), x = 0, y = 0, w = 1, h = 1, html = [],
+                   length = options.length || (options.direction == 'vertical' 
? width : height),
+                   position = (options.position == 'bottom' ? 'bottom:0;' : 
'top:0;') + (options.position == 'right' ? 'right:0;' : 'left:0;'), 
+                   colorArray = createColorPath(options.from, options.to, 
length);
+               
+               if (options.direction == 'horizontal') {
+                       h = Math.round(length/colorArray.length) || 1;
+                       w = width;
+               } else {
+                       w = Math.round(length/colorArray.length) || 1;
+                       h = height;
+               }
+               
+               html.push('<div class="gradient" style="position: absolute; ' + 
position + ' width: ' + (options.direction == 'vertical' ? length+"px" : 
"100%") +'; height: ' + (options.direction == 'vertical' ? "100%" : 
length+"px") + '; overflow: hidden; z-index: 0; background-color: #' + 
(options.position.indexOf('bottom') != -1 ? options.from : options.to) + '">');
+               for(var i=0; i<colorArray.length; i++) {
+                       html.push('<div 
style="position:absolute;z-index:1;top:' + y + 'px;left:' + x + 'px;height:' + 
(options.direction == 'vertical' ? "100%" : h+"px") + ';width:' + 
(options.direction == 'vertical' ? w+"px" : "100%") + ';background-color:rgb(' 
+ colorArray[i][0] + ',' + colorArray[i][1] + ',' + colorArray[i][2] + 
');"></div>');
+                       options.direction == 'vertical' ? x+=w : y+=h;
+                       
+                       if ( y >= height || x >= width) break;
+               }
+               html.push('</div>');
+               
+               if ( $this.css('position') == 'static' )
+                       $this.css('position', 'relative');
+               
+               $this
+                       .html('<div style="display:' + $this.css("display") + 
'; position: relative; z-index: 2;">' + this.innerHTML + '</div>')
+                       .prepend(html.join(''));
+       });
+};
+
+})(jQuery);
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.hoverIntent.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.hoverIntent.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.hoverIntent.js Tue Jul 29 
17:51:21 2014
@@ -0,0 +1,84 @@
+(function($){
+       /* hoverIntent by Brian Cherne */
+       $.fn.hoverIntent = function(f,g) {
+               // default configuration options
+               var cfg = {
+                       sensitivity: 7,
+                       interval: 100,
+                       timeout: 0
+               };
+               // override configuration options with user supplied object
+               cfg = $.extend(cfg, g ? { over: f, out: g } : f );
+
+               // instantiate variables
+               // cX, cY = current X and Y position of mouse, updated by 
mousemove event
+               // pX, pY = previous X and Y position of mouse, set by 
mouseover and polling interval
+               var cX, cY, pX, pY;
+
+               // A private function for getting mouse position
+               var track = function(ev) {
+                       cX = ev.pageX;
+                       cY = ev.pageY;
+               };
+
+               // A private function for comparing current and previous mouse 
position
+               var compare = function(ev,ob) {
+                       ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+                       // compare mouse positions to see if they've crossed 
the threshold
+                       if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < 
cfg.sensitivity ) {
+                               $(ob).unbind("mousemove",track);
+                               // set hoverIntent state to true (so mouseOut 
can be called)
+                               ob.hoverIntent_s = 1;
+                               return cfg.over.apply(ob,[ev]);
+                       } else {
+                               // set previous coordinates for next time
+                               pX = cX; pY = cY;
+                               // use self-calling timeout, guarantees 
intervals are spaced out properly (avoids JavaScript timer bugs)
+                               ob.hoverIntent_t = setTimeout( 
function(){compare(ev, ob);} , cfg.interval );
+                       }
+               };
+
+               // A private function for delaying the mouseOut function
+               var delay = function(ev,ob) {
+                       ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+                       ob.hoverIntent_s = 0;
+                       return cfg.out.apply(ob,[ev]);
+               };
+
+               // A private function for handling mouse 'hovering'
+               var handleHover = function(e) {
+                       // next three lines copied from jQuery.hover, ignore 
children onMouseOver/onMouseOut
+                       var p = (e.type == "mouseover" ? e.fromElement : 
e.toElement) || e.relatedTarget;
+                       while ( p && p != this ) { try { p = p.parentNode; } 
catch(e) { p = this; } }
+                       if ( p == this ) { return false; }
+
+                       // copy objects to be passed into t (required for event 
object to be passed in IE)
+                       var ev = jQuery.extend({},e);
+                       var ob = this;
+
+                       // cancel hoverIntent timer if it exists
+                       if (ob.hoverIntent_t) { ob.hoverIntent_t = 
clearTimeout(ob.hoverIntent_t); }
+
+                       // else e.type == "onmouseover"
+                       if (e.type == "mouseover") {
+                               // set "previous" X and Y position based on 
initial entry point
+                               pX = ev.pageX; pY = ev.pageY;
+                               // update "current" X and Y position based on 
mousemove
+                               $(ob).bind("mousemove",track);
+                               // start polling interval (self-calling 
timeout) to compare mouse coordinates over time
+                               if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = 
setTimeout( function(){compare(ev,ob);} , cfg.interval );}
+
+                       // else e.type == "onmouseout"
+                       } else {
+                               // unbind expensive mousemove event
+                               $(ob).unbind("mousemove",track);
+                               // if hoverIntent state is true, then call the 
mouseOut function after the specified delay
+                               if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = 
setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
+                       }
+               };
+
+               // bind the function to the two event listeners
+               return this.mouseover(handleHover).mouseout(handleHover);
+       };
+       
+})(jQuery);
\ No newline at end of file

Added: websites/staging/celix/trunk/content/js/jquery.jBreadCrumb.1.1.js
==============================================================================
--- websites/staging/celix/trunk/content/js/jquery.jBreadCrumb.1.1.js (added)
+++ websites/staging/celix/trunk/content/js/jquery.jBreadCrumb.1.1.js Tue Jul 
29 17:51:21 2014
@@ -0,0 +1,240 @@
+/**
+ * @author Jason Roy for CompareNetworks Inc.
+ * Thanks to mikejbond for suggested udaptes
+ *
+ * Version 1.1
+ * Copyright (c) 2009 CompareNetworks Inc.
+ *
+ * Licensed under the MIT license:
+ * http://www.opensource.org/licenses/mit-license.php
+ *
+ */
+(function($)
+{
+
+    // Private variables
+    
+    var _options = {};
+    var _container = {};
+    var _breadCrumbElements = {};
+    var _autoIntervalArray = [];
+       var _easingEquation;
+    
+    // Public functions
+    
+    jQuery.fn.jBreadCrumb = function(options)
+    {
+        _options = $.extend({}, $.fn.jBreadCrumb.defaults, options);
+        
+        return this.each(function()
+        {
+            _container = $(this);
+            setupBreadCrumb();
+        });
+        
+    };
+    
+    // Private functions
+    
+    function setupBreadCrumb()
+    {
+               //Check if easing plugin exists. If it doesn't, use "swing"
+               if(typeof(jQuery.easing) == 'object')
+               {
+                       _easingEquation = 'easeOutQuad'
+               }
+               else
+               {
+                       _easingEquation = 'swing'
+               }
+    
+        //The reference object containing all of the breadcrumb elements
+        _breadCrumbElements = jQuery(_container).find('li');
+        
+        //Keep it from overflowing in ie6 & 7
+        jQuery(_container).find('ul').wrap('<div style="overflow:hidden; 
position:relative;  width: ' + jQuery(_container).css("width") + ';"><div>');
+        //Set an arbitrary width width to avoid float drop on the animation
+        jQuery(_container).find('ul').width(5000);
+        
+        //If the breadcrumb contains nothing, don't do anything
+        if (_breadCrumbElements.length > 0) 
+        {
+            jQuery(_breadCrumbElements[_breadCrumbElements.length - 
1]).addClass('last');
+            jQuery(_breadCrumbElements[0]).addClass('first');
+            
+            //If the breadcrumb object length is long enough, compress.
+            
+            if (_breadCrumbElements.length > 
_options.minimumCompressionElements) 
+            {
+                compressBreadCrumb();
+            };
+                    };
+            };
+    
+    function compressBreadCrumb()
+    {
+    
+        // Factor to determine if we should compress the element at all
+        var finalElement = 
jQuery(_breadCrumbElements[_breadCrumbElements.length - 1]);
+        
+        
+        // If the final element is really long, compress more elements
+        if (jQuery(finalElement).width() > _options.maxFinalElementLength) 
+        {
+            if (_options.beginingElementsToLeaveOpen > 0) 
+            {
+                _options.beginingElementsToLeaveOpen--;
+                
+            }
+            if (_options.endElementsToLeaveOpen > 0) 
+            {
+                _options.endElementsToLeaveOpen--;
+            }
+        }
+        // If the final element is within the short and long range, compress 
to the default end elements and 1 less beginning elements
+        if (jQuery(finalElement).width() < _options.maxFinalElementLength && 
jQuery(finalElement).width() > _options.minFinalElementLength) 
+        {
+            if (_options.beginingElementsToLeaveOpen > 0) 
+            {
+                _options.beginingElementsToLeaveOpen--;
+                
+            }
+        }
+        
+        var itemsToRemove = _breadCrumbElements.length - 1 - 
_options.endElementsToLeaveOpen;
+        
+        // We compress only elements determined by the formula setting below
+        
+        //TODO : Make this smarter, it's only checking the final elements 
length.  It could also check the amount of elements.
+        jQuery(_breadCrumbElements[_breadCrumbElements.length - 1]).css(
+        {
+            background: 'none'
+        });
+        
+        $(_breadCrumbElements).each(function(i, listElement)
+        {
+            if (i > _options.beginingElementsToLeaveOpen && i < itemsToRemove) 
+            {
+            
+                
jQuery(listElement).find('a').wrap('<span></span>').width(jQuery(listElement).find('a').width()
 + 10);
+                
+                // Add the overlay png.
+                jQuery(listElement).append(jQuery('<div class="' + 
_options.overlayClass + '"></div>').css(
+                {
+                    display: 'block'
+                })).css(
+                {
+                    background: 'none'
+                });
+                if (isIE6OrLess()) 
+                {
+                    fixPNG(jQuery(listElement).find('.' + 
_options.overlayClass).css(
+                    {
+                        width: '20px',
+                        right: "-1px"
+                    }));
+                }
+                var options = 
+                {
+                    id: i,
+                    width: jQuery(listElement).width(),
+                    listElement: jQuery(listElement).find('span'),
+                    isAnimating: false,
+                    element: jQuery(listElement).find('span')
+                
+                };
+                jQuery(listElement).bind('mouseover', options, 
expandBreadCrumb).bind('mouseout', options, shrinkBreadCrumb);
+                jQuery(listElement).find('a').unbind('mouseover', 
expandBreadCrumb).unbind('mouseout', shrinkBreadCrumb);
+                listElement.autoInterval = setInterval(function()
+                {
+                    clearInterval(listElement.autoInterval);
+                    jQuery(listElement).find('span').animate(
+                    {
+                        width: _options.previewWidth
+                    }, _options.timeInitialCollapse, _options.easing);
+                }, (150 * (i - 2)));
+                
+            }
+        });
+        
+    };
+    
+    function expandBreadCrumb(e)
+    {
+        var elementID = e.data.id;
+        var originalWidth = e.data.width;
+        jQuery(e.data.element).stop();
+        jQuery(e.data.element).animate(
+        {
+            width: originalWidth
+        }, 
+        {
+            duration: _options.timeExpansionAnimation,
+            easing: _options.easing,
+            queue: false
+        });
+        return false;
+        
+    };
+    
+    function shrinkBreadCrumb(e)
+    {
+        var elementID = e.data.id;
+        jQuery(e.data.element).stop();
+        jQuery(e.data.element).animate(
+        {
+            width: _options.previewWidth
+        }, 
+        {
+            duration: _options.timeCompressionAnimation,
+            easing: _options.easing,
+            queue: false
+        });
+        return false;
+    };
+    
+    function isIE6OrLess()
+    {
+        var isIE6 = $.browser.msie && 
/MSIE\s(5\.5|6\.)/.test(navigator.userAgent);
+        return isIE6;
+    };
+    // Fix The Overlay for IE6
+    function fixPNG(element)
+    {
+        var image;
+        if (jQuery(element).is('img')) 
+        {
+            image = jQuery(element).attr('src');
+        }
+        else 
+        {
+            image = $(element).css('backgroundImage');
+            image.match(/^url\(["']?(.*\.png)["']?\)$/i);
+            image = RegExp.$1;
+            ;
+        }
+        $(element).css(
+        {
+            'backgroundImage': 'none',
+            'filter': 
"progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, 
sizingMethod=scale, src='" + image + "')"
+        });
+    };
+    
+    // Public global variables
+    
+    jQuery.fn.jBreadCrumb.defaults = 
+    {
+        maxFinalElementLength: 400,
+        minFinalElementLength: 200,
+        minimumCompressionElements: 4,
+        endElementsToLeaveOpen: 1,
+        beginingElementsToLeaveOpen: 1,
+        timeExpansionAnimation: 800,
+        timeCompressionAnimation: 500,
+        timeInitialCollapse: 600,
+        easing: _easingEquation,
+        overlayClass: 'chevronOverlay',
+        previewWidth: 5
+    };
+    
+})(jQuery);


Reply via email to