MDL-13828 Updated to YUI 2.5.0

This commit is contained in:
nicolasconnault
2008-03-07 09:48:29 +00:00
parent 44d6ecc32b
commit 8436e8b94b
297 changed files with 134431 additions and 41734 deletions
+1
View File
@@ -10,3 +10,4 @@ Updated to YUI 0.12.0, 23 November 2006
Updated to YUI 0.12.1, 8 January 2007
Updated to YUI 0.12.2, 8 Febuary 2007
Updated to YUI 2.3.0, 3 August 2007
Updated to YUI 2.5.0, 7 March 2008
+16 -13
View File
@@ -1,45 +1,51 @@
Animation Release Notes
*** version 2.5.0 ***
* replace toString overrides with static NAME property
*** version 2.4.0 ***
* calling stop() on an non-animated Anim no longer fires onComplete
*** version 2.3.1 ***
* no change
*** version 2.3.0 ***
* duration of zero now executes 1 frame animation
* added setEl() method to enable reuse
* fixed stop() for multiple animations
*** version 2.2.2 **
*** version 2.3.0 ***
* duration of zero now executes 1 frame animation
* added setEl() method to enable reuse
* fixed stop() for multiple animations
*** version 2.2.2 ***
* no change
*** version 2.2.1 **
*** version 2.2.1 ***
* no change
*** version 2.2.0 **
*** version 2.2.0 ***
* Fixed AnimMgr.stop() when called without tween
*** version 0.12.2 ***
* raised AnimMgr.fps to 1000
*** version 0.12.1 ***
* minified version no longer strips line breaks
*** version 0.12.0 ***
* added boolean finish argument to Anim.stop()
*** version 0.11.3 ***
* no changes
*** version 0.11.1 ***
* changed "prototype" shorthand to "proto" (workaround firefox < 1.5 scoping
bug)
*** version 0.11.0 ***
* ColorAnim subclass added
* Motion and Scroll now inherit from ColorAnim
* getDefaultUnit method added
@@ -47,13 +53,10 @@ bug)
* getDefault and setDefault methods deprecated
*** version 0.10.0 ***
* Scroll now handles relative ("by") animation correctly
* Now converts "auto" values of "from" to appropriate initial values
*** version 0.9.0 ***
* Initial release
+75 -70
View File
@@ -1,9 +1,13 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
(function() {
var Y = YAHOO.util;
/*
Copyright (c) 2006, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
@@ -37,23 +41,25 @@ http://developer.yahoo.net/yui/license.txt
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Anim = function(el, attributes, duration, method) {
var Anim = function(el, attributes, duration, method) {
if (!el) {
YAHOO.log('element required to create Anim instance', 'error', 'Anim');
}
this.init(el, attributes, duration, method);
};
YAHOO.util.Anim.prototype = {
Anim.NAME = 'Anim';
Anim.prototype = {
/**
* Provides a readable name for the Anim instance.
* @method toString
* @return {String}
*/
toString: function() {
var el = this.getEl();
var id = el.id || el.tagName || el;
return ("Anim " + id);
var el = this.getEl() || {};
var id = el.id || el.tagName;
return (this.constructor.NAME + ': ' + id);
},
patterns: { // cached for performance
@@ -87,7 +93,7 @@ YAHOO.util.Anim.prototype = {
val = (val > 0) ? val : 0;
}
YAHOO.util.Dom.setStyle(this.getEl(), attr, val + unit);
Y.Dom.setStyle(this.getEl(), attr, val + unit);
},
/**
@@ -98,7 +104,7 @@ YAHOO.util.Anim.prototype = {
*/
getAttribute: function(attr) {
var el = this.getEl();
var val = YAHOO.util.Dom.getStyle(el, attr);
var val = Y.Dom.getStyle(el, attr);
if (val !== 'auto' && !this.patterns.offsetUnit.test(val)) {
return parseFloat(val);
@@ -109,7 +115,7 @@ YAHOO.util.Anim.prototype = {
var box = !!( a[2] ); // width or height
// use offsets for width/height and abs pos top/left
if ( box || (YAHOO.util.Dom.getStyle(el, 'position') == 'absolute' && pos) ) {
if ( box || (Y.Dom.getStyle(el, 'position') == 'absolute' && pos) ) {
val = el['offset' + a[0].charAt(0).toUpperCase() + a[0].substr(1)];
} else { // default to zero for other 'auto'
val = 0;
@@ -220,7 +226,7 @@ YAHOO.util.Anim.prototype = {
* @private
* @type HTMLElement
*/
el = YAHOO.util.Dom.get(el);
el = Y.Dom.get(el);
/**
* The collection of attributes to be animated.
@@ -247,7 +253,7 @@ YAHOO.util.Anim.prototype = {
* @property method
* @type Function
*/
this.method = method || YAHOO.util.Easing.easeNone;
this.method = method || Y.Easing.easeNone;
/**
* Whether or not the duration should be treated as seconds.
@@ -271,14 +277,14 @@ YAHOO.util.Anim.prototype = {
* @property totalFrames
* @type Int
*/
this.totalFrames = YAHOO.util.AnimMgr.fps;
this.totalFrames = Y.AnimMgr.fps;
/**
* Changes the animated element
* @method setEl
*/
this.setEl = function(element) {
el = YAHOO.util.Dom.get(element);
el = Y.Dom.get(element);
};
/**
@@ -324,12 +330,12 @@ YAHOO.util.Anim.prototype = {
this.currentFrame = 0;
this.totalFrames = ( this.useSeconds ) ? Math.ceil(YAHOO.util.AnimMgr.fps * this.duration) : this.duration;
this.totalFrames = ( this.useSeconds ) ? Math.ceil(Y.AnimMgr.fps * this.duration) : this.duration;
if (this.duration === 0 && this.useSeconds) {
this.totalFrames = 1; // jump to last frame if no duration
if (this.duration === 0 && this.useSeconds) { // jump to last frame if zero second duration
this.totalFrames = 1;
}
YAHOO.util.AnimMgr.registerElement(this);
Y.AnimMgr.registerElement(this);
return true;
};
@@ -339,11 +345,15 @@ YAHOO.util.Anim.prototype = {
* @param {Boolean} finish (optional) If true, animation will jump to final frame.
*/
this.stop = function(finish) {
if (!this.isAnimated()) { // nothing to stop
return false;
}
if (finish) {
this.currentFrame = this.totalFrames;
this._onTween.fire();
}
YAHOO.util.AnimMgr.stop(this);
Y.AnimMgr.stop(this);
};
var onStart = function() {
@@ -414,39 +424,39 @@ YAHOO.util.Anim.prototype = {
* Custom event that fires after onStart, useful in subclassing
* @private
*/
this._onStart = new YAHOO.util.CustomEvent('_start', this, true);
this._onStart = new Y.CustomEvent('_start', this, true);
/**
* Custom event that fires when animation begins
* Listen via subscribe method (e.g. myAnim.onStart.subscribe(someFunction)
* @event onStart
*/
this.onStart = new YAHOO.util.CustomEvent('start', this);
this.onStart = new Y.CustomEvent('start', this);
/**
* Custom event that fires between each frame
* Listen via subscribe method (e.g. myAnim.onTween.subscribe(someFunction)
* @event onTween
*/
this.onTween = new YAHOO.util.CustomEvent('tween', this);
this.onTween = new Y.CustomEvent('tween', this);
/**
* Custom event that fires after onTween
* @private
*/
this._onTween = new YAHOO.util.CustomEvent('_tween', this, true);
this._onTween = new Y.CustomEvent('_tween', this, true);
/**
* Custom event that fires when animation ends
* Listen via subscribe method (e.g. myAnim.onComplete.subscribe(someFunction)
* @event onComplete
*/
this.onComplete = new YAHOO.util.CustomEvent('complete', this);
this.onComplete = new Y.CustomEvent('complete', this);
/**
* Custom event that fires after onComplete
* @private
*/
this._onComplete = new YAHOO.util.CustomEvent('_complete', this, true);
this._onComplete = new Y.CustomEvent('_complete', this, true);
this._onStart.subscribe(onStart);
this._onTween.subscribe(onTween);
@@ -454,6 +464,8 @@ YAHOO.util.Anim.prototype = {
}
};
Y.Anim = Anim;
})();
/**
* Handles animation queueing and threading.
* Used by Anim and subclasses.
@@ -524,12 +536,12 @@ YAHOO.util.AnimMgr = new function() {
* @private
*/
this.unRegister = function(tween, index) {
tween._onComplete.fire();
index = index || getIndex(tween);
if (index == -1) {
if (!tween.isAnimated() || index == -1) {
return false;
}
tween._onComplete.fire();
queue.splice(index, 1);
tweenCount -= 1;
@@ -562,9 +574,7 @@ YAHOO.util.AnimMgr = new function() {
clearInterval(thread);
for (var i = 0, len = queue.length; i < len; ++i) {
if ( queue[0].isAnimated() ) {
this.unRegister(queue[0], 0);
}
this.unRegister(queue[0], 0);
}
queue = [];
@@ -694,23 +704,19 @@ YAHOO.util.Bezier = new function() {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.ColorAnim = function(el, attributes, duration, method) {
YAHOO.util.ColorAnim.superclass.constructor.call(this, el, attributes, duration, method);
var ColorAnim = function(el, attributes, duration, method) {
ColorAnim.superclass.constructor.call(this, el, attributes, duration, method);
};
YAHOO.extend(YAHOO.util.ColorAnim, YAHOO.util.Anim);
ColorAnim.NAME = 'ColorAnim';
// shorthand
var Y = YAHOO.util;
var superclass = Y.ColorAnim.superclass;
var proto = Y.ColorAnim.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("ColorAnim " + id);
};
YAHOO.extend(ColorAnim, Y.Anim);
var superclass = ColorAnim.superclass;
var proto = ColorAnim.prototype;
proto.patterns.color = /color$/i;
proto.patterns.rgb = /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;
proto.patterns.hex = /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;
@@ -806,8 +812,10 @@ YAHOO.util.Bezier = new function() {
this.runtimeAttributes[attr].end = end;
}
};
Y.ColorAnim = ColorAnim;
})();
/*
/*!
TERMS OF USE - EASING EQUATIONS
Open source under the BSD License.
Copyright 2001 Robert Penner All rights reserved.
@@ -1157,7 +1165,7 @@ YAHOO.util.Easing = {
* @requires YAHOO.util.Event
* @requires YAHOO.util.CustomEvent
* @constructor
* @extends YAHOO.util.Anim
* @extends YAHOO.util.ColorAnim
* @param {String | HTMLElement} el Reference to the element that will be animated
* @param {Object} attributes The attribute(s) to be animated.
* Each attribute is an object with at minimum a "to" or "by" member defined.
@@ -1166,25 +1174,22 @@ YAHOO.util.Easing = {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Motion = function(el, attributes, duration, method) {
var Motion = function(el, attributes, duration, method) {
if (el) { // dont break existing subclasses not using YAHOO.extend
YAHOO.util.Motion.superclass.constructor.call(this, el, attributes, duration, method);
Motion.superclass.constructor.call(this, el, attributes, duration, method);
}
};
YAHOO.extend(YAHOO.util.Motion, YAHOO.util.ColorAnim);
Motion.NAME = 'Motion';
// shorthand
var Y = YAHOO.util;
var superclass = Y.Motion.superclass;
var proto = Y.Motion.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("Motion " + id);
};
YAHOO.extend(Motion, Y.ColorAnim);
var superclass = Motion.superclass;
var proto = Motion.prototype;
proto.patterns.points = /^points$/i;
proto.setAttribute = function(attr, val, unit) {
@@ -1293,6 +1298,8 @@ YAHOO.util.Easing = {
var isset = function(prop) {
return (typeof prop !== 'undefined');
};
Y.Motion = Motion;
})();
(function() {
/**
@@ -1308,7 +1315,7 @@ YAHOO.util.Easing = {
* @requires YAHOO.util.Dom
* @requires YAHOO.util.Event
* @requires YAHOO.util.CustomEvent
* @extends YAHOO.util.Anim
* @extends YAHOO.util.ColorAnim
* @constructor
* @param {String or HTMLElement} el Reference to the element that will be animated
* @param {Object} attributes The attribute(s) to be animated.
@@ -1318,24 +1325,20 @@ YAHOO.util.Easing = {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Scroll = function(el, attributes, duration, method) {
var Scroll = function(el, attributes, duration, method) {
if (el) { // dont break existing subclasses not using YAHOO.extend
YAHOO.util.Scroll.superclass.constructor.call(this, el, attributes, duration, method);
Scroll.superclass.constructor.call(this, el, attributes, duration, method);
}
};
YAHOO.extend(YAHOO.util.Scroll, YAHOO.util.ColorAnim);
Scroll.NAME = 'Scroll';
// shorthand
var Y = YAHOO.util;
var superclass = Y.Scroll.superclass;
var proto = Y.Scroll.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("Scroll " + id);
};
YAHOO.extend(Scroll, Y.ColorAnim);
var superclass = Scroll.superclass;
var proto = Scroll.prototype;
proto.doMethod = function(attr, start, end) {
var val = null;
@@ -1375,5 +1378,7 @@ YAHOO.util.Easing = {
superclass.setAttribute.call(this, attr, val, unit);
}
};
Y.Scroll = Scroll;
})();
YAHOO.register("animation", YAHOO.util.Anim, {version: "2.3.0", build: "442"});
YAHOO.register("animation", YAHOO.util.Anim, {version: "2.5.0", build: "895"});
+18 -73
View File
File diff suppressed because one or more lines are too long
+75 -70
View File
@@ -1,9 +1,13 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
(function() {
var Y = YAHOO.util;
/*
Copyright (c) 2006, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
@@ -37,22 +41,24 @@ http://developer.yahoo.net/yui/license.txt
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Anim = function(el, attributes, duration, method) {
var Anim = function(el, attributes, duration, method) {
if (!el) {
}
this.init(el, attributes, duration, method);
};
YAHOO.util.Anim.prototype = {
Anim.NAME = 'Anim';
Anim.prototype = {
/**
* Provides a readable name for the Anim instance.
* @method toString
* @return {String}
*/
toString: function() {
var el = this.getEl();
var id = el.id || el.tagName || el;
return ("Anim " + id);
var el = this.getEl() || {};
var id = el.id || el.tagName;
return (this.constructor.NAME + ': ' + id);
},
patterns: { // cached for performance
@@ -86,7 +92,7 @@ YAHOO.util.Anim.prototype = {
val = (val > 0) ? val : 0;
}
YAHOO.util.Dom.setStyle(this.getEl(), attr, val + unit);
Y.Dom.setStyle(this.getEl(), attr, val + unit);
},
/**
@@ -97,7 +103,7 @@ YAHOO.util.Anim.prototype = {
*/
getAttribute: function(attr) {
var el = this.getEl();
var val = YAHOO.util.Dom.getStyle(el, attr);
var val = Y.Dom.getStyle(el, attr);
if (val !== 'auto' && !this.patterns.offsetUnit.test(val)) {
return parseFloat(val);
@@ -108,7 +114,7 @@ YAHOO.util.Anim.prototype = {
var box = !!( a[2] ); // width or height
// use offsets for width/height and abs pos top/left
if ( box || (YAHOO.util.Dom.getStyle(el, 'position') == 'absolute' && pos) ) {
if ( box || (Y.Dom.getStyle(el, 'position') == 'absolute' && pos) ) {
val = el['offset' + a[0].charAt(0).toUpperCase() + a[0].substr(1)];
} else { // default to zero for other 'auto'
val = 0;
@@ -219,7 +225,7 @@ YAHOO.util.Anim.prototype = {
* @private
* @type HTMLElement
*/
el = YAHOO.util.Dom.get(el);
el = Y.Dom.get(el);
/**
* The collection of attributes to be animated.
@@ -246,7 +252,7 @@ YAHOO.util.Anim.prototype = {
* @property method
* @type Function
*/
this.method = method || YAHOO.util.Easing.easeNone;
this.method = method || Y.Easing.easeNone;
/**
* Whether or not the duration should be treated as seconds.
@@ -270,14 +276,14 @@ YAHOO.util.Anim.prototype = {
* @property totalFrames
* @type Int
*/
this.totalFrames = YAHOO.util.AnimMgr.fps;
this.totalFrames = Y.AnimMgr.fps;
/**
* Changes the animated element
* @method setEl
*/
this.setEl = function(element) {
el = YAHOO.util.Dom.get(element);
el = Y.Dom.get(element);
};
/**
@@ -320,12 +326,12 @@ YAHOO.util.Anim.prototype = {
this.currentFrame = 0;
this.totalFrames = ( this.useSeconds ) ? Math.ceil(YAHOO.util.AnimMgr.fps * this.duration) : this.duration;
this.totalFrames = ( this.useSeconds ) ? Math.ceil(Y.AnimMgr.fps * this.duration) : this.duration;
if (this.duration === 0 && this.useSeconds) {
this.totalFrames = 1; // jump to last frame if no duration
if (this.duration === 0 && this.useSeconds) { // jump to last frame if zero second duration
this.totalFrames = 1;
}
YAHOO.util.AnimMgr.registerElement(this);
Y.AnimMgr.registerElement(this);
return true;
};
@@ -335,11 +341,15 @@ YAHOO.util.Anim.prototype = {
* @param {Boolean} finish (optional) If true, animation will jump to final frame.
*/
this.stop = function(finish) {
if (!this.isAnimated()) { // nothing to stop
return false;
}
if (finish) {
this.currentFrame = this.totalFrames;
this._onTween.fire();
}
YAHOO.util.AnimMgr.stop(this);
Y.AnimMgr.stop(this);
};
var onStart = function() {
@@ -410,39 +420,39 @@ YAHOO.util.Anim.prototype = {
* Custom event that fires after onStart, useful in subclassing
* @private
*/
this._onStart = new YAHOO.util.CustomEvent('_start', this, true);
this._onStart = new Y.CustomEvent('_start', this, true);
/**
* Custom event that fires when animation begins
* Listen via subscribe method (e.g. myAnim.onStart.subscribe(someFunction)
* @event onStart
*/
this.onStart = new YAHOO.util.CustomEvent('start', this);
this.onStart = new Y.CustomEvent('start', this);
/**
* Custom event that fires between each frame
* Listen via subscribe method (e.g. myAnim.onTween.subscribe(someFunction)
* @event onTween
*/
this.onTween = new YAHOO.util.CustomEvent('tween', this);
this.onTween = new Y.CustomEvent('tween', this);
/**
* Custom event that fires after onTween
* @private
*/
this._onTween = new YAHOO.util.CustomEvent('_tween', this, true);
this._onTween = new Y.CustomEvent('_tween', this, true);
/**
* Custom event that fires when animation ends
* Listen via subscribe method (e.g. myAnim.onComplete.subscribe(someFunction)
* @event onComplete
*/
this.onComplete = new YAHOO.util.CustomEvent('complete', this);
this.onComplete = new Y.CustomEvent('complete', this);
/**
* Custom event that fires after onComplete
* @private
*/
this._onComplete = new YAHOO.util.CustomEvent('_complete', this, true);
this._onComplete = new Y.CustomEvent('_complete', this, true);
this._onStart.subscribe(onStart);
this._onTween.subscribe(onTween);
@@ -450,6 +460,8 @@ YAHOO.util.Anim.prototype = {
}
};
Y.Anim = Anim;
})();
/**
* Handles animation queueing and threading.
* Used by Anim and subclasses.
@@ -520,12 +532,12 @@ YAHOO.util.AnimMgr = new function() {
* @private
*/
this.unRegister = function(tween, index) {
tween._onComplete.fire();
index = index || getIndex(tween);
if (index == -1) {
if (!tween.isAnimated() || index == -1) {
return false;
}
tween._onComplete.fire();
queue.splice(index, 1);
tweenCount -= 1;
@@ -558,9 +570,7 @@ YAHOO.util.AnimMgr = new function() {
clearInterval(thread);
for (var i = 0, len = queue.length; i < len; ++i) {
if ( queue[0].isAnimated() ) {
this.unRegister(queue[0], 0);
}
this.unRegister(queue[0], 0);
}
queue = [];
@@ -690,23 +700,19 @@ YAHOO.util.Bezier = new function() {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.ColorAnim = function(el, attributes, duration, method) {
YAHOO.util.ColorAnim.superclass.constructor.call(this, el, attributes, duration, method);
var ColorAnim = function(el, attributes, duration, method) {
ColorAnim.superclass.constructor.call(this, el, attributes, duration, method);
};
YAHOO.extend(YAHOO.util.ColorAnim, YAHOO.util.Anim);
ColorAnim.NAME = 'ColorAnim';
// shorthand
var Y = YAHOO.util;
var superclass = Y.ColorAnim.superclass;
var proto = Y.ColorAnim.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("ColorAnim " + id);
};
YAHOO.extend(ColorAnim, Y.Anim);
var superclass = ColorAnim.superclass;
var proto = ColorAnim.prototype;
proto.patterns.color = /color$/i;
proto.patterns.rgb = /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;
proto.patterns.hex = /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;
@@ -802,8 +808,10 @@ YAHOO.util.Bezier = new function() {
this.runtimeAttributes[attr].end = end;
}
};
Y.ColorAnim = ColorAnim;
})();
/*
/*!
TERMS OF USE - EASING EQUATIONS
Open source under the BSD License.
Copyright 2001 Robert Penner All rights reserved.
@@ -1153,7 +1161,7 @@ YAHOO.util.Easing = {
* @requires YAHOO.util.Event
* @requires YAHOO.util.CustomEvent
* @constructor
* @extends YAHOO.util.Anim
* @extends YAHOO.util.ColorAnim
* @param {String | HTMLElement} el Reference to the element that will be animated
* @param {Object} attributes The attribute(s) to be animated.
* Each attribute is an object with at minimum a "to" or "by" member defined.
@@ -1162,25 +1170,22 @@ YAHOO.util.Easing = {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Motion = function(el, attributes, duration, method) {
var Motion = function(el, attributes, duration, method) {
if (el) { // dont break existing subclasses not using YAHOO.extend
YAHOO.util.Motion.superclass.constructor.call(this, el, attributes, duration, method);
Motion.superclass.constructor.call(this, el, attributes, duration, method);
}
};
YAHOO.extend(YAHOO.util.Motion, YAHOO.util.ColorAnim);
Motion.NAME = 'Motion';
// shorthand
var Y = YAHOO.util;
var superclass = Y.Motion.superclass;
var proto = Y.Motion.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("Motion " + id);
};
YAHOO.extend(Motion, Y.ColorAnim);
var superclass = Motion.superclass;
var proto = Motion.prototype;
proto.patterns.points = /^points$/i;
proto.setAttribute = function(attr, val, unit) {
@@ -1289,6 +1294,8 @@ YAHOO.util.Easing = {
var isset = function(prop) {
return (typeof prop !== 'undefined');
};
Y.Motion = Motion;
})();
(function() {
/**
@@ -1304,7 +1311,7 @@ YAHOO.util.Easing = {
* @requires YAHOO.util.Dom
* @requires YAHOO.util.Event
* @requires YAHOO.util.CustomEvent
* @extends YAHOO.util.Anim
* @extends YAHOO.util.ColorAnim
* @constructor
* @param {String or HTMLElement} el Reference to the element that will be animated
* @param {Object} attributes The attribute(s) to be animated.
@@ -1314,24 +1321,20 @@ YAHOO.util.Easing = {
* @param {Number} duration (optional, defaults to 1 second) Length of animation (frames or seconds), defaults to time-based
* @param {Function} method (optional, defaults to YAHOO.util.Easing.easeNone) Computes the values that are applied to the attributes per frame (generally a YAHOO.util.Easing method)
*/
YAHOO.util.Scroll = function(el, attributes, duration, method) {
var Scroll = function(el, attributes, duration, method) {
if (el) { // dont break existing subclasses not using YAHOO.extend
YAHOO.util.Scroll.superclass.constructor.call(this, el, attributes, duration, method);
Scroll.superclass.constructor.call(this, el, attributes, duration, method);
}
};
YAHOO.extend(YAHOO.util.Scroll, YAHOO.util.ColorAnim);
Scroll.NAME = 'Scroll';
// shorthand
var Y = YAHOO.util;
var superclass = Y.Scroll.superclass;
var proto = Y.Scroll.prototype;
proto.toString = function() {
var el = this.getEl();
var id = el.id || el.tagName;
return ("Scroll " + id);
};
YAHOO.extend(Scroll, Y.ColorAnim);
var superclass = Scroll.superclass;
var proto = Scroll.prototype;
proto.doMethod = function(attr, start, end) {
var val = null;
@@ -1371,5 +1374,7 @@ YAHOO.util.Easing = {
superclass.setAttribute.call(this, attr, val, unit);
}
};
Y.Scroll = Scroll;
})();
YAHOO.register("animation", YAHOO.util.Anim, {version: "2.3.0", build: "442"});
YAHOO.register("animation", YAHOO.util.Anim, {version: "2.5.0", build: "895"});
Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

+2 -2
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-ac{position:relative;font-family:arial;font-size:100%;}.yui-skin-sam .yui-ac-input{position:absolute;width:100%;}.yui-skin-sam .yui-ac-container{position:absolute;top:1.6em;width:100%;}.yui-skin-sam .yui-ac-content{position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050;}.yui-skin-sam .yui-ac-shadow{position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity:0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049;}.yui-skin-sam .yui-ac-content ul{margin:0;padding:0;width:100%;}.yui-skin-sam .yui-ac-content li{margin:0;padding:2px 5px;cursor:default;white-space:nowrap;}.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight{background:#B3D4FF;}.yui-skin-sam .yui-ac-content li.yui-ac-highlight{background:#426FD9;color:#FFF;}
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-button{display:-moz-inline-box;display:inline-block;border-width:1px 0;border-style:solid;border-color:#808080;background:url(sprite.png) repeat-x 0 0;margin:auto .25em;}.yui-skin-sam .yui-button .first-child{display:block;*display:inline-block;border-width:0 1px;border-style:solid;border-color:#808080;margin:0 -1px;*position:relative;*left:-1px;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{display:block;*display:inline-block;padding:0 10px;border:none;font-size:93%;line-height:2;*line-height:1.7;min-height:2em;*min-height:auto;color:#000;}.yui-skin-sam .yui-button button{*overflow:visible;background-color:transparent;cursor:pointer;cursor:hand;}.yui-skin-sam .yui-button a{text-decoration:none;}.yui-skin-sam .yui-split-button button,.yui-skin-sam .yui-menu-button button{padding-right:20px;background-position:right center;background-repeat:no-repeat;}.yui-skin-sam .yui-menu-button button{background-image:url(menu-button-arrow.png);}.yui-skin-sam .yui-split-button button{background-image:url(split-button-arrow.png);}.yui-skin-sam .yui-button-focus{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-focus .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-focus button,.yui-skin-sam .yui-button-focus a{color:#000;}.yui-skin-sam .yui-split-button-focus button{background-image:url(split-button-arrow-focus.png);}.yui-skin-sam .yui-button-hover{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-hover .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-hover button,.yui-skin-sam .yui-button-hover a{color:#000;}.yui-skin-sam .yui-split-button-hover button{background-image:url(split-button-arrow-hover.png);}.yui-skin-sam .yui-button-active{border-color:#7D98B8;background-position:0 -1700px;}.yui-skin-sam .yui-button-active .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-active button,.yui-skin-sam .yui-button-active a{color:#000;}.yui-skin-sam .yui-split-button-activeoption{border-color:#808080;background-position:0 0;}.yui-skin-sam .yui-split-button-activeoption .first-child{border-color:#808080;}.yui-skin-sam .yui-split-button-activeoption button{background-image:url(split-button-arrow-active.png);}.yui-skin-sam .yui-radio-button-checked,.yui-skin-sam .yui-checkbox-button-checked{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-radio-button-checked .first-child,.yui-skin-sam .yui-checkbox-button-checked .first-child{border-color:#304369;}.yui-skin-sam .yui-radio-button-checked button,.yui-skin-sam .yui-checkbox-button-checked button{color:#fff;}.yui-skin-sam .yui-button-disabled{border-color:#ccc;background-position:0 -1500px;}.yui-skin-sam .yui-button-disabled .first-child{border-color:#ccc;}.yui-skin-sam .yui-button-disabled button,.yui-skin-sam .yui-button-disabled a{color:#A6A6A6;cursor:default;}.yui-skin-sam .yui-menu-button-disabled button{background-image:url(menu-button-arrow-disabled.png);}.yui-skin-sam .yui-split-button-disabled button{background-image:url(split-button-arrow-disabled.png);}
.yui-button{display:-moz-inline-box;display:inline-block;vertical-align:text-bottom;}.yui-button .first-child{display:block;*display:inline-block;}.yui-button button,.yui-button a{display:block;*display:inline-block;border:none;margin:0;}.yui-button button{background-color:transparent;*overflow:visible;cursor:pointer;}.yui-button a{text-decoration:none;}.yui-skin-sam .yui-button{border-width:1px 0;border-style:solid;border-color:#808080;background:url(sprite.png) repeat-x 0 0;margin:auto .25em;}.yui-skin-sam .yui-button .first-child{border-width:0 1px;border-style:solid;border-color:#808080;margin:0 -1px;*position:relative;*left:-1px;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{padding:0 10px;font-size:93%;line-height:2;*line-height:1.7;min-height:2em;*min-height:auto;color:#000;}.yui-skin-sam .yui-button a{*line-height:2;}.yui-skin-sam .yui-split-button button,.yui-skin-sam .yui-menu-button button{padding-right:20px;background-position:right center;background-repeat:no-repeat;}.yui-skin-sam .yui-menu-button button{background-image:url(menu-button-arrow.png);}.yui-skin-sam .yui-split-button button{background-image:url(split-button-arrow.png);}.yui-skin-sam .yui-button-focus{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-focus .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-focus button,.yui-skin-sam .yui-button-focus a{color:#000;}.yui-skin-sam .yui-split-button-focus button{background-image:url(split-button-arrow-focus.png);}.yui-skin-sam .yui-button-hover{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-hover .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-hover button,.yui-skin-sam .yui-button-hover a{color:#000;}.yui-skin-sam .yui-split-button-hover button{background-image:url(split-button-arrow-hover.png);}.yui-skin-sam .yui-button-active{border-color:#7D98B8;background-position:0 -1700px;}.yui-skin-sam .yui-button-active .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-active button,.yui-skin-sam .yui-button-active a{color:#000;}.yui-skin-sam .yui-split-button-activeoption{border-color:#808080;background-position:0 0;}.yui-skin-sam .yui-split-button-activeoption .first-child{border-color:#808080;}.yui-skin-sam .yui-split-button-activeoption button{background-image:url(split-button-arrow-active.png);}.yui-skin-sam .yui-radio-button-checked,.yui-skin-sam .yui-checkbox-button-checked{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-radio-button-checked .first-child,.yui-skin-sam .yui-checkbox-button-checked .first-child{border-color:#304369;}.yui-skin-sam .yui-radio-button-checked button,.yui-skin-sam .yui-checkbox-button-checked button{color:#fff;}.yui-skin-sam .yui-button-disabled{border-color:#ccc;background-position:0 -1500px;}.yui-skin-sam .yui-button-disabled .first-child{border-color:#ccc;}.yui-skin-sam .yui-button-disabled button,.yui-skin-sam .yui-button-disabled a{color:#A6A6A6;cursor:default;}.yui-skin-sam .yui-menu-button-disabled button{background-image:url(menu-button-arrow-disabled.png);}.yui-skin-sam .yui-split-button-disabled button{background-image:url(split-button-arrow-disabled.png);}
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-picker-panel{background:#e3e3e3;border-color:#888;}.yui-picker-panel .hd{background-color:#ccc;font-size:100%;line-height:100%;border:1px solid #e3e3e3;font-weight:bold;overflow:hidden;padding:6px;color:#000;}.yui-picker-panel .bd{background:#e8e8e8;margin:1px;height:200px;}.yui-picker-panel .ft{background:#e8e8e8;margin:1px;padding:1px;}.yui-picker{position:relative;}.yui-picker-hue-thumb{cursor:default;width:18px;height:18px;top:-8px;left:-2px;z-index:9;position:absolute;}.yui-picker-hue-bg{-moz-outline:none;outline:0px none;position:absolute;left:200px;height:183px;width:14px;background:url(hue_bg.png) no-repeat;top:4px;}.yui-picker-bg{-moz-outline:none;outline:0px none;position:absolute;top:4px;left:4px;height:182px;width:182px;background-color:#F00;background-image:url(picker_mask.png);}*html .yui-picker-bg{background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png',sizingMethod='scale');}.yui-picker-mask{position:absolute;z-index:1;top:0px;left:0px;}.yui-picker-thumb{cursor:default;width:11px;height:11px;z-index:9;position:absolute;top:-4px;left:-4px;}.yui-picker-swatch{position:absolute;left:240px;top:4px;height:60px;width:55px;border:1px solid #888;}.yui-picker-websafe-swatch{position:absolute;left:304px;top:4px;height:24px;width:24px;border:1px solid #888;}.yui-picker-controls{position:absolute;top:72px;left:226px;font:1em monospace;}.yui-picker-controls .hd{background:transparent;border-width:0px !important;}.yui-picker-controls .bd{height:100px;border-width:0px !important;}.yui-picker-controls ul{float:left;list-style:none;padding:0 2px 0 0;margin:0}.yui-picker-controls li{padding:2px;margin:0}.yui-picker-controls input{font-size:0.85em;width:2.4em;}.yui-picker-hex-controls{clear:both;padding:2px;}.yui-picker-hex-controls input{width:4.6em;}.yui-picker-controls a{font:1em arial,helvetica,clean,sans-serif;display:block;*display:inline-block;padding:0;color:#000;}
.yui-picker-panel{background:#e3e3e3;border-color:#888;}.yui-picker-panel .hd{background-color:#ccc;font-size:100%;line-height:100%;border:1px solid #e3e3e3;font-weight:bold;overflow:hidden;padding:6px;color:#000;}.yui-picker-panel .bd{background:#e8e8e8;margin:1px;height:200px;}.yui-picker-panel .ft{background:#e8e8e8;margin:1px;padding:1px;}.yui-picker{position:relative;}.yui-picker-hue-thumb{cursor:default;width:18px;height:18px;top:-8px;left:-2px;z-index:9;position:absolute;}.yui-picker-hue-bg{-moz-outline:none;outline:0px none;position:absolute;left:200px;height:183px;width:14px;background:url(hue_bg.png) no-repeat;top:4px;}.yui-picker-bg{-moz-outline:none;outline:0px none;position:absolute;top:4px;left:4px;height:182px;width:182px;background-color:#F00;background-image:url(picker_mask.png);}*html .yui-picker-bg{background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png',sizingMethod='scale');}.yui-picker-mask{position:absolute;z-index:1;top:0px;left:0px;}.yui-picker-thumb{cursor:default;width:11px;height:11px;z-index:9;position:absolute;top:-4px;left:-4px;}.yui-picker-swatch{position:absolute;left:240px;top:4px;height:60px;width:55px;border:1px solid #888;}.yui-picker-websafe-swatch{position:absolute;left:304px;top:4px;height:24px;width:24px;border:1px solid #888;}.yui-picker-controls{position:absolute;top:72px;left:226px;font:1em monospace;}.yui-picker-controls .hd{background:transparent;border-width:0px !important;}.yui-picker-controls .bd{height:100px;border-width:0px !important;}.yui-picker-controls ul{float:left;padding:0 2px 0 0;margin:0}.yui-picker-controls li{padding:2px;list-style:none;margin:0}.yui-picker-controls input{font-size:0.85em;width:2.4em;}.yui-picker-hex-controls{clear:both;padding:2px;}.yui-picker-hex-controls input{width:4.6em;}.yui-picker-controls a{font:1em arial,helvetica,clean,sans-serif;display:block;*display:inline-block;padding:0;color:#000;}
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:1;}yui-panel-container form{margin:0;}.masked .yui-panel-container{z-index:2;}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0;overflow:auto;}.masked select,.drag select,.hide-select select{_visibility:hidden;}.yui-panel-container select{_visibility:inherit;}.hide-scrollbars,.hide-scrollbars *{overflow:hidden;}.hide-scrollbars select{display:none;}.show-scrollbars{overflow:auto;}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible;}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto;}.yui-tt-shadow{position:absolute;}.yui-skin-sam .mask{background-color:#000;opacity:.25;*filter:alpha(opacity=25);}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px 3px;}.yui-skin-sam .yui-panel{position:relative;*zoom:1;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{*zoom:1;*position:relative;border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc;}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#F2F2F2;}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(sprite.png) repeat-x 0 -200px;}.yui-skin-sam .yui-panel .bd{padding:10px;}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%;}.yui-skin-sam .yui-panel-container.focused .yui-panel .hd{}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(sprite.png) no-repeat 0 -300px;}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px;}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff;}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 5px 0 3px;}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;right:-3px;bottom:-3px;left:-3px;*top:3px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_right:0;_bottom:0;_left:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;*filter:alpha(opacity=12);}.yui-skin-sam .yui-dialog .ft{border-top:none;padding:0 10px 10px 10px;font-size:100%;}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right;}.yui-skin-sam .yui-dialog .ft .default{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-dialog .ft .default .first-child{border-color:#304369;}.yui-skin-sam .yui-dialog .ft .default button{color:#fff;}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left;}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px;}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px;}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px;}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px;}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px;}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px;}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#D4C237 #A6982B #A6982B #A6982B;border-width:1px;border-style:solid;background-color:#FFEE69;}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto;}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000;}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;*filter:alpha(opacity=12);}
.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:2;}.yui-panel-container form{margin:0;}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0;}.mask.block-scrollbars{overflow:auto;}.masked select,.drag select,.hide-select select{_visibility:hidden;}.yui-panel-container select{_visibility:inherit;}.hide-scrollbars,.hide-scrollbars *{overflow:hidden;}.hide-scrollbars select{display:none;}.show-scrollbars{overflow:auto;}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible;}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto;}.yui-panel-container.shadow .underlay.yui-force-redraw{padding-bottom:1px;}.yui-effect-fade .underlay{display:none;}.yui-tt-shadow{position:absolute;}.yui-skin-sam .mask{background-color:#000;opacity:.25;*filter:alpha(opacity=25);}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px 3px;}.yui-skin-sam .yui-panel{position:relative;*zoom:1;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{*zoom:1;*position:relative;border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc;}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#F2F2F2;}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(sprite.png) repeat-x 0 -200px;}.yui-skin-sam .yui-panel .bd{padding:10px;}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%;}.yui-skin-sam .yui-panel-container.focused .yui-panel .hd{}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(sprite.png) no-repeat 0 -300px;cursor:pointer;}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px;}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff;}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 5px 0 3px;}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;right:-3px;bottom:-3px;left:-3px;*top:3px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_right:0;_bottom:0;_left:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;*filter:alpha(opacity=12);}.yui-skin-sam .yui-dialog .ft{border-top:none;padding:0 10px 10px 10px;font-size:100%;}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right;}.yui-skin-sam .yui-dialog .ft button.default{font-weight:bold;}.yui-skin-sam .yui-dialog .ft span.default{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-dialog .ft span.default .first-child{border-color:#304369;}.yui-skin-sam .yui-dialog .ft span.default button{color:#fff;}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left;}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px;}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px;}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px;}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px;}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px;}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px;}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#D4C237 #A6982B #A6982B #A6982B;border-width:1px;border-style:solid;background-color:#FFEE69;}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto;}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000;}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;*filter:alpha(opacity=12);}
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 B

After

Width:  |  Height:  |  Size: 116 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 B

After

Width:  |  Height:  |  Size: 116 B

File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 158 B

@@ -0,0 +1,7 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
.yui-crop{position:relative;}.yui-crop .yui-crop-mask{position:absolute;top:0;left:0;height:100%;width:100%;}.yui-crop .yui-resize{position:absolute;top:10px;left:10px;}.yui-crop .yui-crop-resize-mask{position:absolute;top:0;left:0;height:100%;width:100%;background-position:-10px -10px;overflow:hidden;}.yui-skin-sam .yui-crop .yui-crop-mask{background-color:#000;opacity:.5;filter:alpha(opacity=50);}.yui-skin-sam .yui-crop .yui-resize{border:1px dashed #fff;}
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

+2 -2
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-log{padding:1em;width:31em;background-color:#AAA;color:#000;border:1px solid black;font-family:monospace;font-size:77%;text-align:left;z-index:9000;}.yui-skin-sam .yui-log-container{position:absolute;top:1em;right:1em;}.yui-skin-sam .yui-log input{margin:0;padding:0;font-family:arial;font-size:100%;font-weight:normal;}.yui-skin-sam .yui-log .yui-log-btns{position:relative;float:right;bottom:.25em;}.yui-skin-sam .yui-log .yui-log-hd{margin-top:1em;padding:.5em;background-color:#575757;}.yui-skin-sam .yui-log .yui-log-hd h4{margin:0;padding:0;font-size:108%;font-weight:bold;color:#FFF;}.yui-skin-sam .yui-log .yui-log-bd{width:100%;height:20em;background-color:#FFF;border:1px solid gray;overflow:auto;}.yui-skin-sam .yui-log p{margin:1px;padding:.1em;}.yui-skin-sam .yui-log pre{margin:0;padding:0;}.yui-skin-sam .yui-log pre.yui-log-verbose{white-space:pre-wrap;white-space:-moz-pre-wrap !important;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;}.yui-skin-sam .yui-log .yui-log-ft{margin-top:.5em;}.yui-skin-sam .yui-log .yui-log-ft .yui-log-categoryfilters{}.yui-skin-sam .yui-log .yui-log-ft .yui-log-sourcefilters{width:100%;border-top:1px solid #575757;margin-top:.75em;padding-top:.75em;}.yui-skin-sam .yui-log .yui-log-filtergrp{margin-right:.5em;}.yui-skin-sam .yui-log .info{background-color:#A7CC25;}.yui-skin-sam .yui-log .warn{background-color:#F58516;}.yui-skin-sam .yui-log .error{background-color:#E32F0B;}.yui-skin-sam .yui-log .time{background-color:#A6C9D7;}.yui-skin-sam .yui-log .window{background-color:#F2E886;}
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

@@ -0,0 +1,7 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
.yui-skin-sam .yui-pv{background-color:#4a4a4a;font:arial;position:relative;width:99%;z-index:1000;margin-bottom:1em;overflow:hidden;}.yui-skin-sam .yui-pv .hd{background:url(header_background.png) repeat-x;min-height:30px;overflow:hidden;zoom:1;padding:2px 0;}.yui-skin-sam .yui-pv .hd h4{padding:8px 10px;margin:0;font:bold 14px arial;color:#fff;}.yui-skin-sam .yui-pv .hd a{background:#3f6bc3;font:bold 11px arial;color:#fff;padding:4px;margin:3px 10px 0 0;border:1px solid #3f567d;cursor:pointer;display:block;float:right;}.yui-skin-sam .yui-pv .hd span{display:none;}.yui-skin-sam .yui-pv .hd span.yui-pv-busy{height:18px;width:18px;background:url(wait.gif) no-repeat;overflow:hidden;display:block;float:right;margin:4px 10px 0 0;}.yui-skin-sam .yui-pv .hd:after,.yui-pv .bd:after,.yui-skin-sam .yui-pv-chartlegend dl:after{content:'.';visibility:hidden;clear:left;height:0;display:block;}.yui-skin-sam .yui-pv .bd{position:relative;zoom:1;overflow-x:auto;overflow-y:hidden;}.yui-skin-sam .yui-pv .yui-pv-table{padding:0 10px;margin:5px 0 10px 0;}.yui-skin-sam .yui-pv .yui-pv-table .yui-dt-bd td{color:#eeee5c;font:12px arial;}.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-odd{background:#929292;}.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-even{background:#58637a;}.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-even td.yui-dt-asc,.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-even td.yui-dt-desc{background:#384970;}.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-odd td.yui-dt-asc,.yui-skin-sam .yui-pv .yui-pv-table tr.yui-dt-odd td.yui-dt-desc{background:#6F6E6E;}.yui-skin-sam .yui-pv .yui-pv-table .yui-dt-hd th{background-image:none;background:#2E2D2D;}.yui-skin-sam .yui-pv th.yui-dt-asc .yui-dt-liner{background:transparent url(asc.gif) no-repeat scroll right center;}.yui-skin-sam .yui-pv th.yui-dt-desc .yui-dt-liner{background:transparent url(desc.gif) no-repeat scroll right center;}.yui-skin-sam .yui-pv .yui-pv-table .yui-dt-hd th a{color:#fff;font:bold 12px arial;}.yui-skin-sam .yui-pv .yui-pv-table .yui-dt-hd th.yui-dt-asc,.yui-skin-sam .yui-pv .yui-pv-table .yui-dt-hd th.yui-dt-desc{background:#333;}.yui-skin-sam .yui-pv-chartcontainer{padding:0 10px;}.yui-skin-sam .yui-pv-chart{height:250px;clear:right;margin:5px 0 0 0;color:#fff;}.yui-skin-sam .yui-pv-chartlegend div{float:right;margin:0 0 0 10px;_width:250px;}.yui-skin-sam .yui-pv-chartlegend dl{border:1px solid #999;padding:.2em 0 .2em .5em;zoom:1;margin:5px 0;}.yui-skin-sam .yui-pv-chartlegend dt{float:left;display:block;height:.7em;width:.7em;padding:0;}.yui-skin-sam .yui-pv-chartlegend dd{float:left;display:block;color:#fff;margin:0 1em 0 .5em;padding:0;font:11px arial;}.yui-skin-sam .yui-pv-minimized{height:35px;}.yui-skin-sam .yui-pv-minimized .bd{top:-3000px;}.yui-skin-sam .yui-pv-minimized .hd a.yui-pv-refresh{display:none;}
+7
View File
@@ -0,0 +1,7 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
.yui-resize{position:relative;zoom:1;z-index:0;}.yui-resize-wrap{zoom:1;}.yui-draggable{cursor:move;}.yui-resize .yui-resize-handle{position:absolute;z-index:1;font-size:0;margin:0;padding:0;zoom:1;height:1px;width:1px;}.yui-resize .yui-resize-handle-br{height:5px;width:5px;bottom:0;right:0;cursor:se-resize;z-index:2;zoom:1;}.yui-resize .yui-resize-handle-bl{height:5px;width:5px;bottom:0;left:0;cursor:sw-resize;z-index:2;zoom:1;}.yui-resize .yui-resize-handle-tl{height:5px;width:5px;top:0;left:0;cursor:nw-resize;z-index:2;zoom:1;}.yui-resize .yui-resize-handle-tr{height:5px;width:5px;top:0;right:0;cursor:ne-resize;z-index:2;zoom:1;}.yui-resize .yui-resize-handle-r{width:5px;height:100%;top:0;right:0;cursor:e-resize;zoom:1;}.yui-resize .yui-resize-handle-l{height:100%;width:5px;top:0;left:0;cursor:w-resize;zoom:1;}.yui-resize .yui-resize-handle-b{width:100%;height:5px;bottom:0;right:0;cursor:s-resize;zoom:1;}.yui-resize .yui-resize-handle-t{width:100%;height:5px;top:0;right:0;cursor:n-resize;zoom:1;}.yui-resize-proxy{position:absolute;border:1px dashed #000;visibility:hidden;z-index:1000;}.yui-resize-hover .yui-resize-handle,.yui-resize-hidden .yui-resize-handle{opacity:0;filter:alpha(opacity=0);}.yui-resize-ghost{opacity:.5;filter:alpha(opacity=50);}.yui-resize-knob .yui-resize-handle{height:6px;width:6px;}.yui-resize-knob .yui-resize-handle-tr{right:-3px;top:-3px;}.yui-resize-knob .yui-resize-handle-tl{left:-3px;top:-3px;}.yui-resize-knob .yui-resize-handle-bl{left:-3px;bottom:-3px;}.yui-resize-knob .yui-resize-handle-br{right:-3px;bottom:-3px;}.yui-resize-knob .yui-resize-handle-t{left:45%;top:-3px;}.yui-resize-knob .yui-resize-handle-r{right:-3px;top:45%;}.yui-resize-knob .yui-resize-handle-l{left:-3px;top:45%;}.yui-resize-knob .yui-resize-handle-b{left:45%;bottom:-3px;}.yui-resize-status{position:absolute;top:-999px;left:-999px;padding:2px;font-size:80%;display:none;zoom:1;z-index:9999;}.yui-resize-status strong,.yui-resize-status em{font-weight:normal;font-style:normal;padding:1px;zoom:1;}.yui-skin-sam .yui-resize .yui-resize-handle{background-color:#F2F2F2;}.yui-skin-sam .yui-resize .yui-resize-handle-active{background-color:#7D98B8;zoom:1;}.yui-skin-sam .yui-resize-knob .yui-resize-handle{border:1px solid #808080;}.yui-skin-sam .yui-resize-hover .yui-resize-handle-active{opacity:1;filter:alpha(opacity=100);}.yui-skin-sam .yui-resize-proxy{border:1px dashed #426FD9;}.yui-skin-sam .yui-resize-status{border:1px solid #A6982B;border-top:1px solid #D4C237;background-color:#FFEE69}.yui-skin-sam .yui-resize-status strong,.yui-skin-sam .yui-resize-status em{float:left;display:block;clear:both;padding:1px;text-align:center;}.yui-skin-sam .yui-resize .yui-resize-handle-inner-r,.yui-skin-sam .yui-resize .yui-resize-handle-inner-l{background:transparent url( layout_sprite.png) no-repeat 0 -5px;height:16px;width:5px;position:absolute;top:45%;}.yui-skin-sam .yui-resize .yui-resize-handle-inner-t,.yui-skin-sam .yui-resize .yui-resize-handle-inner-b{background:transparent url(layout_sprite.png) no-repeat -20px 0;height:5px;width:16px;position:absolute;left:50%;}.yui-skin-sam .yui-resize .yui-resize-handle-br{background-image:url( layout_sprite.png );background-repeat:no-repeat;background-position:-22px -62px;}.yui-skin-sam .yui-resize .yui-resize-handle-tr{background-image:url( layout_sprite.png );background-repeat:no-repeat;background-position:-22px -42px;}.yui-skin-sam .yui-resize .yui-resize-handle-tl{background-image:url( layout_sprite.png );background-repeat:no-repeat;background-position:-22px -82px;}.yui-skin-sam .yui-resize .yui-resize-handle-bl{background-image:url( layout_sprite.png );background-repeat:no-repeat;background-position:-22px -23px;}.yui-skin-sam .yui-resize-knob .yui-resize-handle-t,.yui-skin-sam .yui-resize-knob .yui-resize-handle-r,.yui-skin-sam .yui-resize-knob .yui-resize-handle-b,.yui-skin-sam .yui-resize-knob .yui-resize-handle-l,.yui-skin-sam .yui-resize-knob .yui-resize-handle-tl,.yui-skin-sam .yui-resize-knob .yui-resize-handle-tr,.yui-skin-sam .yui-resize-knob .yui-resize-handle-bl,.yui-skin-sam .yui-resize-knob .yui-resize-handle-br,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-t,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-r,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-b,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-l,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-tl,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-tr,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-bl,.yui-skin-sam .yui-resize-knob .yui-resize-handle-inner-br{background-image:none;}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.ygtvtn{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -5600px no-repeat;}.ygtvtm{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -4000px no-repeat;}.ygtvtmh{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -4800px no-repeat;}.ygtvtp{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -6400px no-repeat;}.ygtvtph{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -7200px no-repeat;}.ygtvln{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -1600px no-repeat;}.ygtvlm{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 0px no-repeat;}.ygtvlmh{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -800px no-repeat;}.ygtvlp{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -2400px no-repeat;}.ygtvlph{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -3200px no-repeat;}.ygtvloading{width:18px;height:22px;background:url(treeview-loading.gif) 0 0 no-repeat;}.ygtvdepthcell{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -8000px no-repeat;}.ygtvblankdepthcell{width:18px;height:22px;}.ygtvitem{}.ygtvchildren{*zoom:1;}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;background-color:white;}.ygtvspacer{height:22px;width:18px;}
.ygtvtn{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -5600px no-repeat;}.ygtvtm{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -4000px no-repeat;}.ygtvtmh{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -4800px no-repeat;}.ygtvtp{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -6400px no-repeat;}.ygtvtph{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -7200px no-repeat;}.ygtvln{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -1600px no-repeat;}.ygtvlm{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 0px no-repeat;}.ygtvlmh{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -800px no-repeat;}.ygtvlp{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -2400px no-repeat;}.ygtvlph{width:18px;height:22px;cursor:pointer;background:url(treeview-sprite.gif) 0 -3200px no-repeat;}.ygtvloading{width:18px;height:22px;background:url(treeview-loading.gif) 0 0 no-repeat;}.ygtvdepthcell{width:18px;height:22px;background:url(treeview-sprite.gif) 0 -8000px no-repeat;}.ygtvblankdepthcell{width:18px;height:22px;}.ygtvitem{}.ygtvchildren{*zoom:1;}.ygtvlabel,.ygtvlabel:link,.ygtvlabel:visited,.ygtvlabel:hover{margin-left:2px;text-decoration:none;background-color:white;}.ygtvspacer{height:22px;width:12px;}
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

+2 -2
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
+41 -1
View File
@@ -1,8 +1,48 @@
AutoComplete Release Notes
*** version 2.5.0 ***
* Fixed bug where Mac users were not able to input "&" or "(" characters.
*** version 2.4.0 ***
* Support for YUI JSON Utility.
* The allowBrowserAutocomplete property now supports cases when the user navigates
away from page via mean other than a form submission.
* Added support for integration with the Get Utility, for proxyless data
retrieval from dynamically loaded script nodes.
* Typing 'Enter' to select item no longer causes automatic form submission on
Mac browsers.
*** version 2.3.1 ***
* AutoComplete no longer throw a JavaScript error due to an invalid or
non-existent parent container. While a wrapper DIV element is still expected in
order to enable skinning (see 2.3.0 release note), a lack of such will not
cause an error.
* When suggestion container is collapsed, Mac users no longer need to type
Enter twice to submit input.
*** version 2.3.0 ***
* Applied new skinning model.
* Applied new skinning model. Please note that in order to enable skinning,
AutoComplete now expects a wrapper DIV element around the INPUT element and the
container DIV element, in this fashion:
<div id="myAutoComplete">
<input type="text" id="myInput">
<div id="myContainer"></div>
</div>
* The default queryDelay value has been changed to 0.2. In low-latency
implementations (e.g., when queryDelay is set to 0 against a local
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/* This file intentionally left blank */
/* This file intentionally left blank */
@@ -1,50 +1,50 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/* styles for entire widget */
.yui-skin-sam .yui-ac {
position:relative;font-family:arial;font-size:100%;
}
/* styles for input field */
.yui-skin-sam .yui-ac-input {
position:absolute;width:100%;
}
/* styles for results container */
.yui-skin-sam .yui-ac-container {
position:absolute;top:1.6em;width:100%;
}
/* styles for header/body/footer wrapper within container */
.yui-skin-sam .yui-ac-content {
position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050;
}
/* styles for container shadow */
.yui-skin-sam .yui-ac-shadow {
position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity: 0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049;
}
/* styles for results list */
.yui-skin-sam .yui-ac-content ul{
margin:0;padding:0;width:100%;
}
/* styles for result item */
.yui-skin-sam .yui-ac-content li {
margin:0;padding:2px 5px;cursor:default;white-space:nowrap;
}
/* styles for prehighlighted result item */
.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight {
background:#B3D4FF;
}
/* styles for highlighted result item */
.yui-skin-sam .yui-ac-content li.yui-ac-highlight {
background:#426FD9;color:#FFF;
}
/* styles for entire widget */
.yui-skin-sam .yui-ac {
position:relative;font-family:arial;font-size:100%;
}
/* styles for input field */
.yui-skin-sam .yui-ac-input {
position:absolute;width:100%;
}
/* styles for results container */
.yui-skin-sam .yui-ac-container {
position:absolute;top:1.6em;width:100%;
}
/* styles for header/body/footer wrapper within container */
.yui-skin-sam .yui-ac-content {
position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050;
}
/* styles for container shadow */
.yui-skin-sam .yui-ac-shadow {
position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity: 0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049;
}
/* styles for results list */
.yui-skin-sam .yui-ac-content ul{
margin:0;padding:0;width:100%;
}
/* styles for result item */
.yui-skin-sam .yui-ac-content li {
margin:0;padding:2px 5px;cursor:default;white-space:nowrap;
}
/* styles for prehighlighted result item */
.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight {
background:#B3D4FF;
}
/* styles for highlighted result item */
.yui-skin-sam .yui-ac-content li.yui-ac-highlight {
background:#426FD9;color:#FFF;
}
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-ac{position:relative;font-family:arial;font-size:100%;}.yui-skin-sam .yui-ac-input{position:absolute;width:100%;}.yui-skin-sam .yui-ac-container{position:absolute;top:1.6em;width:100%;}.yui-skin-sam .yui-ac-content{position:absolute;width:100%;border:1px solid #808080;background:#fff;overflow:hidden;z-index:9050;}.yui-skin-sam .yui-ac-shadow{position:absolute;margin:.3em;width:100%;background:#000;-moz-opacity:0.10;opacity:.10;filter:alpha(opacity=10);z-index:9049;}.yui-skin-sam .yui-ac-content ul{margin:0;padding:0;width:100%;}.yui-skin-sam .yui-ac-content li{margin:0;padding:2px 5px;cursor:default;white-space:nowrap;}.yui-skin-sam .yui-ac-content li.yui-ac-prehighlight{background:#B3D4FF;}.yui-skin-sam .yui-ac-content li.yui-ac-highlight{background:#426FD9;color:#FFF;}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+603 -248
View File
File diff suppressed because it is too large Load Diff
+12
View File
@@ -1,5 +1,17 @@
YUI Library - Base - Release Notes
Version 2.5.0
* No changes.
Version 2.4.0
* Fixed typo in comments.
* Added margin-bottom:1em; for PRE element to match P
* Added color:#000 for legend element, accomodation for IE
* Added set width (equivilant to 160px but set in EMs) for input's
width type = text or password, and for textareas.
Version 2.3.0
* Initial release.
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:bold;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;}em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style: decimal outside;}ul li{list-style: disc outside;}dl dd{margin-left:1em;}th,td {border:1px solid #000;padding:.5em;}th {font-weight:bold;text-align:center;}caption {margin-bottom:.5em;text-align:center;}p,fieldset,table {margin-bottom:1em;}
h1{font-size:138.5%;}h2{font-size:123.1%;}h3{font-size:108%;}h1,h2,h3{margin:1em 0;}h1,h2,h3,h4,h5,h6,strong{font-weight:bold;}abbr,acronym{border-bottom:1px dotted #000;cursor:help;} em{font-style:italic;}blockquote,ul,ol,dl{margin:1em;}ol,ul,dl{margin-left:2em;}ol li{list-style:decimal outside;}ul li{list-style:disc outside;}dl dd{margin-left:1em;}th,td{border:1px solid #000;padding:.5em;}th{font-weight:bold;text-align:center;}caption{margin-bottom:.5em;text-align:center;}p,fieldset,table,pre{margin-bottom:1em;}input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em;}
+8 -5
View File
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/* base.css, part of YUI's CSS Foundation */
h1 {
@@ -65,12 +65,15 @@ th {
text-align:center;
}
caption {
/*coordinated marking to match cell's padding*/
/*coordinated margin to match cell's padding*/
margin-bottom:.5em;
/*centered so it doesn't blend in to other content*/
text-align:center;
}
p,fieldset,table {
p,fieldset,table,pre {
/*so things don't run into each other*/
margin-bottom:1em;
}
}
/* setting a consistent width, 160px;
control of type=file still not possible */
input[type=text],input[type=password],textarea{width:12.25em;*width:11.9em;}
+72 -1
View File
@@ -1,4 +1,75 @@
*** Version 2.3.0 ***
*** Version 2.5.0 ***
+ Fixed issue where returning false inside the scope of a listener for attribute "before"
events (i.e "beforeCheckedChange") would not cancel the attribute's default setter.
*** Version 2.4.1 ***
+ No changes.
*** Version 2.4.0 ***
Added the following features:
-----------------------------
+ Added a static method "YAHOO.widget.Button.getButton" that returns a Button
instance with the specified HTML element id.
Fixed the following bugs:
-------------------------
+ Removed the ".yui-skin-sam" CSS class name from style rules in the core
stylesheet so that it is now truly skin agnostic.
+ Updated the default text for tooltips for Buttons of type "radio" so that
they offer the correct instructional text.
+ Menus with grouped YAHOO.widget.MenuItem instances will now highlight
correctly when used with Button.
+ Buttons of type "link" now have the same default height as other Button
types in Internet Explorer.
+ Buttons of various types now line up correctly on the same line.
+ Menu is now truly an optional dependancy of Button.
+ Menus now render with the correct width when the "yui-skin-sam" CSS class
name is applied to an element other than the <BODY>.
*** Version 2.3.1 ***
Fixed the following bugs:
-------------------------
+ Purged the old 2.2.2 Button stylesheet and related image assets that was
mistakenly included in the 2.3.0 build.
+ Fixed an issue in Gecko where changing a Button instance's "label" attribute
after the Button had been created would not result in the Button redrawing at
a width to fit its content.
+ Fixed an issue where the singleton keypress event handler
(YAHOO.widget.Button.onFormKeyPress) registered for forms containing
Button instances of type "submit" was not removed from the form once all of
its child Button instances are destroyed.
+ Submitting a form by clicking on a MenuItem of a SplitButton's or MenuButton's
Menu will no longer result in a JavaScript error.
+ Modified how element tag names are compared to support XHTML applications.
+ Added code to remove the CSS class names representing the "hover," "focus,"
and "active" states when a Button instance is disabled.
*** Version 2.3 ***
Added the following features:
-----------------------------
+40 -2
View File
@@ -1,6 +1,44 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-button {
display: -moz-inline-box; /* Gecko */
display: inline-block; /* IE, Opera and Safari */
vertical-align: text-bottom;
}
.yui-button .first-child {
display: block;
*display: inline-block; /* IE */
}
.yui-button button,
.yui-button a {
display: block;
*display: inline-block; /* IE */
border: none;
margin: 0;
}
.yui-button button {
background-color: transparent;
*overflow: visible; /* Remove superfluous padding for IE */
cursor: pointer;
}
.yui-button a {
text-decoration: none;
}
@@ -1,13 +1,11 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-button {
display: -moz-inline-box; /* Gecko */
display: inline-block; /* IE, Opera and Safari */
border-width: 1px 0;
border-style: solid;
border-color: #808080;
@@ -18,13 +16,11 @@ version: 2.3.0
.yui-skin-sam .yui-button .first-child {
display: block;
*display: inline-block; /* IE */
border-width: 0 1px;
border-style: solid;
border-color: #808080;
margin: 0 -1px;
*position: relative;
*position: relative; /* Necessary to get negative margins working in IE */
*left: -1px;
}
@@ -32,10 +28,7 @@ version: 2.3.0
.yui-skin-sam .yui-button button,
.yui-skin-sam .yui-button a {
display: block;
*display: inline-block; /* IE */
padding: 0 10px;
border: none;
font-size: 93%; /* 12px */
line-height: 2; /* ~24px */
*line-height: 1.7; /* For IE */
@@ -45,22 +38,16 @@ version: 2.3.0
}
.yui-skin-sam .yui-button button {
*overflow: visible; /* Remove superfluous padding for IE */
background-color: transparent;
cursor: pointer;
cursor: hand;
}
.yui-skin-sam .yui-button a {
text-decoration: none;
/*
Necessary to get Button's of type "link" to be the correct
height in IE.
*/
*line-height: 2;
}
.yui-skin-sam .yui-split-button button,
.yui-skin-sam .yui-menu-button button {
+3 -3
View File
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-skin-sam .yui-button{display:-moz-inline-box;display:inline-block;border-width:1px 0;border-style:solid;border-color:#808080;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;margin:auto .25em;}.yui-skin-sam .yui-button .first-child{display:block;*display:inline-block;border-width:0 1px;border-style:solid;border-color:#808080;margin:0 -1px;*position:relative;*left:-1px;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{display:block;*display:inline-block;padding:0 10px;border:none;font-size:93%;line-height:2;*line-height:1.7;min-height:2em;*min-height:auto;color:#000;}.yui-skin-sam .yui-button button{*overflow:visible;background-color:transparent;cursor:pointer;cursor:hand;}.yui-skin-sam .yui-button a{text-decoration:none;}.yui-skin-sam .yui-split-button button,.yui-skin-sam .yui-menu-button button{padding-right:20px;background-position:right center;background-repeat:no-repeat;}.yui-skin-sam .yui-menu-button button{background-image:url(menu-button-arrow.png);}.yui-skin-sam .yui-split-button button{background-image:url(split-button-arrow.png);}.yui-skin-sam .yui-button-focus{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-focus .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-focus button,.yui-skin-sam .yui-button-focus a{color:#000;}.yui-skin-sam .yui-split-button-focus button{background-image:url(split-button-arrow-focus.png);}.yui-skin-sam .yui-button-hover{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-hover .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-hover button,.yui-skin-sam .yui-button-hover a{color:#000;}.yui-skin-sam .yui-split-button-hover button{background-image:url(split-button-arrow-hover.png);}.yui-skin-sam .yui-button-active{border-color:#7D98B8;background-position:0 -1700px;}.yui-skin-sam .yui-button-active .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-active button,.yui-skin-sam .yui-button-active a{color:#000;}.yui-skin-sam .yui-split-button-activeoption{border-color:#808080;background-position:0 0;}.yui-skin-sam .yui-split-button-activeoption .first-child{border-color:#808080;}.yui-skin-sam .yui-split-button-activeoption button{background-image:url(split-button-arrow-active.png);}.yui-skin-sam .yui-radio-button-checked,.yui-skin-sam .yui-checkbox-button-checked{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-radio-button-checked .first-child,.yui-skin-sam .yui-checkbox-button-checked .first-child{border-color:#304369;}.yui-skin-sam .yui-radio-button-checked button,.yui-skin-sam .yui-checkbox-button-checked button{color:#fff;}.yui-skin-sam .yui-button-disabled{border-color:#ccc;background-position:0 -1500px;}.yui-skin-sam .yui-button-disabled .first-child{border-color:#ccc;}.yui-skin-sam .yui-button-disabled button,.yui-skin-sam .yui-button-disabled a{color:#A6A6A6;cursor:default;}.yui-skin-sam .yui-menu-button-disabled button{background-image:url(menu-button-arrow-disabled.png);}.yui-skin-sam .yui-split-button-disabled button{background-image:url(split-button-arrow-disabled.png);}
.yui-button{display:-moz-inline-box;display:inline-block;vertical-align:text-bottom;}.yui-button .first-child{display:block;*display:inline-block;}.yui-button button,.yui-button a{display:block;*display:inline-block;border:none;margin:0;}.yui-button button{background-color:transparent;*overflow:visible;cursor:pointer;}.yui-button a{text-decoration:none;}.yui-skin-sam .yui-button{border-width:1px 0;border-style:solid;border-color:#808080;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;margin:auto .25em;}.yui-skin-sam .yui-button .first-child{border-width:0 1px;border-style:solid;border-color:#808080;margin:0 -1px;*position:relative;*left:-1px;}.yui-skin-sam .yui-button button,.yui-skin-sam .yui-button a{padding:0 10px;font-size:93%;line-height:2;*line-height:1.7;min-height:2em;*min-height:auto;color:#000;}.yui-skin-sam .yui-button a{*line-height:2;}.yui-skin-sam .yui-split-button button,.yui-skin-sam .yui-menu-button button{padding-right:20px;background-position:right center;background-repeat:no-repeat;}.yui-skin-sam .yui-menu-button button{background-image:url(menu-button-arrow.png);}.yui-skin-sam .yui-split-button button{background-image:url(split-button-arrow.png);}.yui-skin-sam .yui-button-focus{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-focus .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-focus button,.yui-skin-sam .yui-button-focus a{color:#000;}.yui-skin-sam .yui-split-button-focus button{background-image:url(split-button-arrow-focus.png);}.yui-skin-sam .yui-button-hover{border-color:#7D98B8;background-position:0 -1300px;}.yui-skin-sam .yui-button-hover .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-hover button,.yui-skin-sam .yui-button-hover a{color:#000;}.yui-skin-sam .yui-split-button-hover button{background-image:url(split-button-arrow-hover.png);}.yui-skin-sam .yui-button-active{border-color:#7D98B8;background-position:0 -1700px;}.yui-skin-sam .yui-button-active .first-child{border-color:#7D98B8;}.yui-skin-sam .yui-button-active button,.yui-skin-sam .yui-button-active a{color:#000;}.yui-skin-sam .yui-split-button-activeoption{border-color:#808080;background-position:0 0;}.yui-skin-sam .yui-split-button-activeoption .first-child{border-color:#808080;}.yui-skin-sam .yui-split-button-activeoption button{background-image:url(split-button-arrow-active.png);}.yui-skin-sam .yui-radio-button-checked,.yui-skin-sam .yui-checkbox-button-checked{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-radio-button-checked .first-child,.yui-skin-sam .yui-checkbox-button-checked .first-child{border-color:#304369;}.yui-skin-sam .yui-radio-button-checked button,.yui-skin-sam .yui-checkbox-button-checked button{color:#fff;}.yui-skin-sam .yui-button-disabled{border-color:#ccc;background-position:0 -1500px;}.yui-skin-sam .yui-button-disabled .first-child{border-color:#ccc;}.yui-skin-sam .yui-button-disabled button,.yui-skin-sam .yui-button-disabled a{color:#A6A6A6;cursor:default;}.yui-skin-sam .yui-menu-button-disabled button{background-image:url(menu-button-arrow-disabled.png);}.yui-skin-sam .yui-split-button-disabled button{background-image:url(split-button-arrow-disabled.png);}
+4738
View File
File diff suppressed because it is too large Load Diff
+11
View File
File diff suppressed because one or more lines are too long
+4670
View File
File diff suppressed because it is too large Load Diff
+334 -87
View File
@@ -1,110 +1,357 @@
Calendar Release Notes
*** version 2.3.0 ***
*** version 2.5.0 ***
- Added checks to select, selectCell, deselect and deselectCell methods to ensure the Calendar/Calendar group was not set to an invalid state by programmatically selecting unselectable dates or cells.
- Added new locale configuration properties for the Month/Year label used in the Calendar header (MY_LABEL_MONTH_POSITION, MY_LABEL_YEAR_POSITION, MY_LABEL_YEAR_SUFFIX, MY_LABEL_MONTH_SUFFIX). Japan is an example locale, where customization of the Month/Year label is required.
- Changed "first", "last" class names to "first-of-type", "last-of-type", to avoid collision with YUI Grids' use of the "first" class name.
- Added public isDateOOB method, to check if a given date is outside of the minimum/maximum configuration dates of the Calendar.
- Deprecated YAHOO.widget.Calendar.browser, refactored to use YAHOO.env.ua instead.
- Removed overflow:hidden from default Calendar/CalendarGroup container for non-IE6 browsers to fix clipping issue with IE7 when CalendarGroup was inside a box with a specific width. overflow:hidden is still required for IE6 with an iframe shim.
- Added Opera container width calculation fix to CalendarGroup.show method, to fix incorrect wrapping when using a CalendarGroup which is initially rendered hidden (display:none). Previously this fix was only applied on render.
+ Prevent default event handling in CalendarNavigator enter key
listener, to prevent automatic form submission when using Calendar
inside a form.
*** version 2.2.2 ***
+ Added workaround to DateMath.add and subtract for Safari 2 (webkit)
bug in Date.setDate(n) which doesn't handle value of n less than -128
or greater than 127 correctly.
- Fixed problem with selected dates being shared across instances, when more than one Calendar/CalendarGroup was on the page
See: http://brianary.blogspot.com/2006/03/safari-date-bug.html
*** version 2.2.1 ***
+ Added border, padding and margin rules to Calendar Sam Skin to
protect Sam Skin's look and feel when Calendar is used with
YUI base.css
- Fixed problem with selectCell adding duplicate selected date entries for dates which were already selected
- Fixed problem with CalendarGroup iframe shim not covering the CalendarGroup title area
- Removed javascript:void(null) from close button and cell links which was interrupting form submission and firing onbeforeunload in IE
- Fixed problem with CalendarGroup getSelectedDates returning invalid results, when used in conjunction with the "selected" Config property (either passed in the constructor config argument or set seperately after construction)
- Refactored Calendar and CalendarGroup to improve performance, especially when working with a large number of instances in IE6
*** version 2.4.0 ***
*** version 2.2.0 ***
+ Added CalendarNavigator (year selector) feature to allow the user to
jump to a year/month directly without having to scroll through months
sequentially.
- Image customization can now be done through CSS. Images for Close, Left and Right Arrows are now pulled in using CSS defined in calendar.css and by default use relative paths to the images in the same directory as calendar.css.
- Deprecated Calendar.IMG_ROOT and NAV_ARROW_LEFT, NAV_ARROW_RIGHT configuration properties. Customizations based on older releases which set these properties will still function as expected.
- Deprecated CalendarGroup.CSS_2UPCLOSE. Calendar's Style.CSS_CLOSE property now represents the new default CSS class (calclose) for the close button. CSS_2UPCLOSE is still applied along with CSS_CLOSE to the new markup for the close button to support existing customizations of the CSS_2UPCLOSE CSS class (close-icon)
- Fixed problem with Safari setting Calendar pages to incorrect dates if the pages spanned a year boundary in CalendarGroups with 3 or more pages, due to a bug in Safari's implementation of Date setMonth
- Fixed problem with CalendarGroup setMonth rendering Calendar pages with incorrect dates in all browsers if current pages spanned year boundary
- Fixed incorrect CalendarGroup logging statement in calendar-debug.js
- Fixed domEventMap support for Safari versions prior to 2.0.2, caused by hasOwnProperty not being supported
- Removed unused private property : _pageDate from Calendar class
The feature is enabled/configured using the "navigator" configuration
property.
*** version 0.12.2 ***
+ Added Custom Events:
- Corrected documentation for clearTime function to reflect the change from midnight to noon
showNav/beforeShowNav
hideNav/beforeHideNav,
renderNav/beforeRenderNav
*** version 0.12.1 ***
To Calendar/CalendarGroup, in support of the CalendarNavigator
functionality.
- Calendar and CalendarGroup now automatically parse the argument passed to setMonth and setYear into an integer, eliminating potential concatenation bugs.
+ Added Custom Events:
*** version 0.12 ***
show/beforeShow
hide/beforeHide
- New documentation format implemented
- Calendar2up and Calendar_Core are now deprecated. Now, Calendar alone represents the single Calendar instance, and CalendarGroup represents an n-up instance, defaulting to 2up
- Added semantic style classes to Calendar elements to allow for custom styling solely using CSS.
- Remapped all configuration properties to use the Config object (familiar to those who use the Container collection of controls). Property names are the same as their previous counterparts, but wrapped into Calendar.cfg, allowing for runtime reconfiguration of most properties
- Added "title" property for setting the Calendar title
- Added "close" property for enabling and disabling the close icon
- Added "iframe" property for enabling an iframe shim in Internet Explorer 6 and below to fix the select bleed-through bug
- pageDate moved to property: "pagedate"
- selectedDates moved to property: "selected"
- minDate moved to property : "mindate", which accepts a JavaScript Date object like its predecessor, but also supports string dates
- maxDate moved to property : "maxdate", which accepts a JavaScript Date object like its predecessor, but also supports string dates
- Moved style declarations to initStyles function
- Optimized event handling in doSelectCell/doCellMouseOver/doCellMouseOut by only attaching the listener to the outer Calendar container, and only reacting to events on cells with the "selectable" CSS class.
- Added domEventMap field for applying DOM event listeners to cells containing specific class and tag combinations.
- Moved all cell DOM event attachment to applyListeners function
- Added getDateByCellId / getDateFieldsByCellId helper functions
- Corrected DateMath.getWeekNumber to comply with ISO week number handling
- Separated renderCellDefault style portions into styleCellDefault function for easy extension
- Deprecated onBeforeSelect. Created beforeSelectEvent which automatically subscribes to its deprecated predecessor.
- Deprecated onSelect. Created selectEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onBeforeDeselect. Created beforeSelectEvent which automatically subscribes to its deprecated predecessor.
- Deprecated onDeselect. Created beforeDeselectEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onChangePage. Created changePageEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onRender. Created renderEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onReset. Created resetEvent, which automatically subscribes to its deprecated predecessor.
- Deprecated onClear. Created clearEvent, which automatically subscribes to its deprecated predecessor.
- Corrected setMonth documentation to refer to 0-11 indexed months.
- Added show and hide methods to Calendar for setting the Calendar's display property.
- Optimized internal render classes to use innerHTML and string buffers
- Removed wireCustomEvents function
- Removed wireDefaultEvents function
- Removed doNextMonth / doPreviousMonth
- Removed all buildShell (header, body, footer) functions, since the Calendar shell is now built dynamically on each render
- Wired all CalendarGroup events and configuration properties to be properly delegated to Calendar
- Augmented CalendarGroup with all built-in renderers, label functions, hide, show, and initStyles, creating API transparency between Calendar and CalendarGroup.
- Made all tagName, createElement, and entity references XHTML compliant
- Fixed Daylight Saving Time bug for Brazilian time zone
To Calendar and CalendarGroup. Returning false from a
beforeShow/beforeHide listener can be used to prevent the Calendar
from being shown/hidden respectively.
*** version 0.11.3 ***
+ Added Public Methods:
- Calendar_Core: Added arguments for selected/deselected dates to onSelect/onDeselect
- CalendarGroup: Fixed bug where selected dates passed to constructor were not represented in selectedDates
- Calendar2up: Now displays correctly in Opera 9
getCellIndex(date) [ Calendar ]
getCalendarPage(date) [ CalendarGroup ]
toDate(dateArray) [ Calendar/CalendarGroup ]
removeRenderers() [ Calendar/CalendarGroup ]
+ The Calendar/CalendarGroup constructor is now more flexible:
*** version 0.11.0 ***
* It no longer requires an "id" argument.
- DateMath: DateMath.add now properly adds weeks
- DateMath: between() function added
- DateMath: getWeekNumber() fixed to take starting day of week into account
- All references to Calendar's built in CSS class handlers are removed, replaced with calls to Dom utility (addClass, removeClass)
- Several CSS class constants now have clearer names
- All CSS classes are now properly namespaced to avoid CSS conflicts
- Fixed table:hover bug in CSS
- Calendar no longer requires the container ID and variable name to match in order for month navigation to function properly
- Calendar month navigation arrows are now represented as background images
In it's simplest form, a Calendar/CalendarGroup can be
constructed by simply providing a container id or reference.
*** version 0.10.0 ***
var cal = new YAHOO.widget.Calendar("container");
-or-
var containerDiv = YAHOO.util.Dom.get("container");
var cal = new YAHOO.widget.Calendar(containerDiv);
- Major performance improvements from attaching DOM events to associated table cells only once, when the Calendar shell is built
- DOM events for mouseover/mouseout are now fired for all browsers (not just Internet Explorer)
- Reset functionality bug fixed for 2-up Calendar view
An id for the Calendar does not need to be provided, and will be
generated from the container id by appending an "_t" suffix to the
container id if only the container is provided.
*** version 0.9.0 ***
* The container argument can be either a string, representing the
id of the container, or an HTMLElement referring to the container
element itself, as suggested in the example above.
* Initial release
* If an HTMLElement is provided for the container argument and the
element does not have an id, one will be generated for it using
YAHOO.util.Dom.generateId().
* The older form of Calendar/CalendarGroup signature, expecting
both an id and containerId is still supported and works as it did
prior to 2.4.0.
+ Fixed performance issue, where the same custom renderer was being
applied multiple times to the same cell.
+ Added getDate(year, month, date) factory method to the DateMath utility,
which can be used to create JavaScript Date instances for years less
than 100.
The default Date(year, month, date) constructor implementations across
browsers, assume that if year < 100, the caller is referring to the
nineteen hundreds, and the year is set to 19xx instead of xx (as with
the deprecated setYear method). However Date.setFullYear(xx) can
be used to set dates below 100. The above factory method provides a
construction mechanism consistent with setFullYear.
+ Changed Calendar/CalendarGroup/DateMath code to use the DateMath.getDate
method, so that 2 digit years are not assumed to be in the 1900's.
NOTE: Calendar's API already expects 4 digit date strings when referring
to years after 999.
*** version 2.3.1 ***
+ Changed Calendar/CalendarGroup to render an empty title bar element
when "close" is set to true, but "title" has not been set, to allow Sam
Skin to render a title bar correctly.
*** version 2.3.0 ***
+ Added checks to select, selectCell, deselect and deselectCell methods
to ensure the Calendar/Calendar group was not set to an invalid state
by programmatically selecting unselectable dates or cells.
+ Added new locale configuration properties for the Month/Year label
used in the Calendar header (MY_LABEL_MONTH_POSITION,
MY_LABEL_YEAR_POSITION, MY_LABEL_YEAR_SUFFIX, MY_LABEL_MONTH_SUFFIX).
Japan is an example locale, where customization of the Month/Year
label is required.
+ Changed "first", "last" class names to "first-of-type", "last-of-type",
to avoid collision with YUI Grids' use of the "first" class name.
+ Added public isDateOOB method, to check if a given date is outside of
the minimum/maximum configuration dates of the Calendar.
+ Deprecated YAHOO.widget.Calendar.browser, refactored to use
YAHOO.env.ua instead.
+ Removed overflow:hidden from default Calendar/CalendarGroup container
for non-IE6 browsers to fix clipping issue with IE7 when CalendarGroup
was inside a box with a specific width. overflow:hidden is still
required for IE6 with an iframe shim.
+ Added Opera container width calculation fix to CalendarGroup.show
method, to fix incorrect wrapping when using a CalendarGroup which is
initially rendered hidden (display:none). Previously this fix was
only applied on render.
*** version 2.2.2 ***
+ Fixed problem with selected dates being shared across instances, when
more than one Calendar/CalendarGroup was on the page
*** version 2.2.1 ***
+ Fixed problem with selectCell adding duplicate selected date entries
for dates which were already selected
+ Fixed problem with CalendarGroup iframe shim not covering the
CalendarGroup title area
+ Removed javascript:void(null) from close button and cell links which
was interrupting form submission and firing onbeforeunload in IE
+ Fixed problem with CalendarGroup getSelectedDates returning invalid
results, when used in conjunction with the "selected" Config property
(either passed in the constructor config argument or set seperately
after construction)
+ Refactored Calendar and CalendarGroup to improve performance,
especially when working with a large number of instances in
IE6
*** version 2.2.0 ***
+ Image customization can now be done through CSS. Images for Close,
Left and Right Arrows are now pulled in using CSS defined in
calendar.css and by default use relative paths to the images in
the same directory as calendar.css.
+ Deprecated Calendar.IMG_ROOT and NAV_ARROW_LEFT, NAV_ARROW_RIGHT
configuration properties. Customizations based on older releases
which set these properties will still function as expected.
+ Deprecated CalendarGroup.CSS_2UPCLOSE. Calendar's Style.CSS_CLOSE
property now represents the new default CSS class (calclose) for
the close button. CSS_2UPCLOSE is still applied along with
CSS_CLOSE to the new markup for the close button to support existing
customizations of the CSS_2UPCLOSE CSS class (close-icon)
+ Fixed problem with Safari setting Calendar pages to incorrect dates
if the pages spanned a year boundary in CalendarGroups with 3 or more
pages, due to a bug in Safari's implementation of Date setMonth
+ Fixed problem with CalendarGroup setMonth rendering Calendar pages
with incorrect dates in all browsers if current pages spanned year
boundary
+ Fixed incorrect CalendarGroup logging statement in calendar-debug.js
+ Fixed domEventMap support for Safari versions prior to 2.0.2,
caused by hasOwnProperty not being supported
+ Removed unused private property : _pageDate from Calendar class
*** version 0.12.2 ***
+ Corrected documentation for clearTime function to reflect the
change from midnight to noon
*** version 0.12.1 ***
+ Calendar and CalendarGroup now automatically parse the argument
passed to setMonth and setYear into an integer, eliminating
potential concatenation bugs.
*** version 0.12 ***
+ New documentation format implemented
+ Calendar2up and Calendar_Core are now deprecated. Now, Calendar alone
represents the single Calendar instance, and CalendarGroup represents
an n-up instance, defaulting to 2up
+ Added semantic style classes to Calendar elements to allow for
custom styling solely using CSS.
+ Remapped all configuration properties to use the Config object
(familiar to those who use the Container collection of controls).
Property names are the same as their previous counterparts, but
wrapped into Calendar.cfg, allowing for runtime reconfiguration of
most properties
+ Added "title" property for setting the Calendar title
+ Added "close" property for enabling and disabling the close icon
+ Added "iframe" property for enabling an iframe shim in Internet
Explorer 6 and below to fix the select bleed-through bug
+ pageDate moved to property: "pagedate"
+ selectedDates moved to property: "selected"
+ minDate moved to property : "mindate", which accepts a JavaScript
Date object like its predecessor, but also supports string dates
+ maxDate moved to property : "maxdate", which accepts a JavaScript
Date object like its predecessor, but also supports string dates
+ Moved style declarations to initStyles function
+ Optimized event handling in doSelectCell/doCellMouseOver/
doCellMouseOut by only attaching the listener to the outer
Calendar container, and only reacting to events on cells with
the "selectable" CSS class.
+ Added domEventMap field for applying DOM event listeners to cells
containing specific class and tag combinations.
+ Moved all cell DOM event attachment to applyListeners function
+ Added getDateByCellId / getDateFieldsByCellId helper functions
+ Corrected DateMath.getWeekNumber to comply with ISO week number
handling
+ Separated renderCellDefault style portions into styleCellDefault
function for easy extension
+ Deprecated onBeforeSelect. Created beforeSelectEvent which
automatically subscribes to its deprecated predecessor.
+ Deprecated onSelect. Created selectEvent, which automatically
subscribes to its deprecated predecessor.
+ Deprecated onBeforeDeselect. Created beforeSelectEvent which
automatically subscribes to its deprecated predecessor.
+ Deprecated onDeselect. Created beforeDeselectEvent, which
automatically subscribes to its deprecated predecessor.
+ Deprecated onChangePage. Created changePageEvent, which automatically
subscribes to its deprecated predecessor.
+ Deprecated onRender. Created renderEvent, which automatically
subscribes to its deprecated predecessor.
+ Deprecated onReset. Created resetEvent, which automatically
subscribes to its deprecated predecessor.
+ Deprecated onClear. Created clearEvent, which automatically
subscribes to its deprecated predecessor.
+ Corrected setMonth documentation to refer to 0-11 indexed months.
+ Added show and hide methods to Calendar for setting the Calendar's
display property.
+ Optimized internal render classes to use innerHTML and string buffers
+ Removed wireCustomEvents function
+ Removed wireDefaultEvents function
+ Removed doNextMonth / doPreviousMonth
+ Removed all buildShell (header, body, footer) functions, since
the Calendar shell is now built dynamically on each render
+ Wired all CalendarGroup events and configuration properties to
be properly delegated to Calendar
+ Augmented CalendarGroup with all built-in renderers, label functions,
hide, show, and initStyles, creating API transparency between Calendar
and CalendarGroup.
+ Made all tagName, createElement, and entity references XHTML compliant
+ Fixed Daylight Saving Time bug for Brazilian time zone
*** version 0.11.3 ***
+ Calendar_Core: Added arguments for selected/deselected dates to
onSelect/onDeselect
+ CalendarGroup: Fixed bug where selected dates passed to constructor
were not represented in selectedDates
+ Calendar2up: Now displays correctly in Opera 9
*** version 0.11.0 ***
+ DateMath: DateMath.add now properly adds weeks
+ DateMath: between() function added
+ DateMath: getWeekNumber() fixed to take starting day of week into
account
+ All references to Calendar's built in CSS class handlers are
removed, replaced with calls to Dom utility (addClass, removeClass)
+ Several CSS class constants now have clearer names
+ All CSS classes are now properly namespaced to avoid CSS conflicts
+ Fixed table:hover bug in CSS
+ Calendar no longer requires the container ID and variable name to
match in order for month navigation to function properly
+ Calendar month navigation arrows are now represented as
background images
*** version 0.10.0 ***
+ Major performance improvements from attaching DOM events to
associated table cells only once, when the Calendar shell is built
+ DOM events for mouseover/mouseout are now fired for all browsers
(not just Internet Explorer)
+ Reset functionality bug fixed for 2-up Calendar view
*** version 0.9.0 ***
* Initial release
+40 -2
View File
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/**
* CORE
@@ -83,6 +83,44 @@ version: 2.3.0
text-align:center;
}
/* CalendarNavigator */
.yui-calcontainer .yui-cal-nav-mask {
position:absolute;
z-index:2;
margin:0;
padding:0;
width:100%;
height:100%;
_width:0; /* IE6, IE7 quirks - width/height set programmatically to match container */
_height:0;
left:0;
top:0;
display:none;
}
/* NAVIGATOR BOUNDING BOX */
.yui-calcontainer .yui-cal-nav {
position:absolute;
z-index:3;
top:0;
display:none;
}
/* NAVIGATOR BUTTONS (based on button-core.css) */
.yui-calcontainer .yui-cal-nav .yui-cal-nav-btn {
display: -moz-inline-box; /* Gecko */
display: inline-block; /* IE, Opera and Safari */
}
.yui-calcontainer .yui-cal-nav .yui-cal-nav-btn button {
display: block;
*display: inline-block; /* IE */
*overflow: visible; /* Remove superfluous padding for IE */
border: none;
background-color: transparent;
cursor: pointer;
}
/* Specific changes for calendar running under fonts/reset */
.yui-calendar .calbody a:hover {background:inherit;}
p#clear {clear:left; padding-top:10px;}
+112 -3
View File
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-calcontainer {
position:relative;
@@ -91,7 +91,7 @@ version: 2.3.0
top:2px;
bottom:0;
width:9px;
height:12px;
height:12px;
left:2px;
z-index:1;
background: url("callt.gif") no-repeat;
@@ -200,6 +200,115 @@ version: 2.3.0
border-right-width:2px;
}
/* CalendarNavigator */
.yui-calendar a.calnav {
_position:relative;
padding-left:2px;
padding-right:2px;
text-decoration:none;
color:#000;
}
.yui-calendar a.calnav:hover {
border:1px solid #003366;
background-color:#6699cc;
background: url(calgrad.png) repeat-x;
color:#fff;
cursor:pointer;
}
.yui-calcontainer .yui-cal-nav-mask {
position:absolute;
z-index:2;
display:none;
margin:0;
padding:0;
left:0;
top:0;
width:100%;
height:100%;
_width:0; /* IE6, IE7 Quirks - width/height set programmatically to match container */
_height:0;
background-color:#000;
opacity:0.25;
*filter:alpha(opacity=25);
}
.yui-calcontainer .yui-cal-nav {
position:absolute;
z-index:3;
display:none;
padding:0;
top:1.5em;
left:50%;
width:12em;
margin-left:-6em;
border:1px solid #7B9EBD;
background-color:#F7F9FB;
font-size:93%;
}
.yui-calcontainer.withtitle .yui-cal-nav {
top:3.5em;
}
.yui-calcontainer .yui-cal-nav-y,
.yui-calcontainer .yui-cal-nav-m,
.yui-calcontainer .yui-cal-nav-b {
padding:2px 5px 2px 5px;
}
.yui-calcontainer .yui-cal-nav-b {
text-align:center;
}
.yui-calcontainer .yui-cal-nav-e {
margin-top:2px;
padding:2px;
background-color:#EDF5FF;
border-top:1px solid black;
display:none;
}
.yui-calcontainer .yui-cal-nav label {
display:block;
font-weight:bold;
}
.yui-calcontainer .yui-cal-nav-mc {
width:100%;
_width:auto; /* IE6 doesn't like width 100% */
}
.yui-calcontainer .yui-cal-nav-y input.yui-invalid {
background-color:#FFEE69;
border: 1px solid #000;
}
.yui-calcontainer .yui-cal-nav-yc {
width:3em;
}
.yui-calcontainer .yui-cal-nav-b button {
font-size:93%;
text-decoration:none;
cursor: pointer;
background-color: #79b2ea;
border: 1px solid #003366;
border-top-color:#FFF;
border-left-color:#FFF;
margin:1px;
}
.yui-calcontainer .yui-cal-nav-b .yui-default button {
/* not implemented */
}
/* Specific changes for calendar running under fonts/reset */
.yui-calendar .calbody a:hover {background:inherit;}
p#clear {clear:left; padding-top:10px;}
Binary file not shown.

After

Width:  |  Height:  |  Size: 497 B

@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/**
* SAM
@@ -79,6 +79,7 @@ version: 2.3.0
border-collapse:collapse;
font:100% sans-serif;
text-align:center;
margin:0;
}
/* NAVBAR BOUNDING BOX */
@@ -86,6 +87,7 @@ version: 2.3.0
background:transparent;
border:none;
vertical-align:middle;
padding:0;
}
/* NAVBAR TEXT CONTAINER */
@@ -129,6 +131,11 @@ version: 2.3.0
height:2em;
}
.yui-skin-sam .yui-calendar .calweekdayrow th {
padding:0;
border:none;
}
/* WEEKDAY (Su, Mo, Tu...) HEADER CELLS */
.yui-skin-sam .yui-calendar .calweekdaycell {
color:#000;
@@ -148,16 +155,17 @@ version: 2.3.0
font-size:85%;
font-style:normal;
font-weight:normal;
border:none;
}
.yui-skin-sam .yui-calendar .calrowhead {
text-align:right;
padding-right:2px;
padding:0 2px 0 0;
}
.yui-skin-sam .yui-calendar .calrowfoot {
text-align:left;
padding-left:2px;
padding:0 0 0 2px;
}
/* NORMAL CELLS */
@@ -228,4 +236,126 @@ version: 2.3.0
.yui-skin-sam .yui-calendar td.calcell.highlight1 { background-color:#ccff99; }
.yui-skin-sam .yui-calendar td.calcell.highlight2 { background-color:#99ccff; }
.yui-skin-sam .yui-calendar td.calcell.highlight3 { background-color:#ffcccc; }
.yui-skin-sam .yui-calendar td.calcell.highlight4 { background-color:#ccff99; }
.yui-skin-sam .yui-calendar td.calcell.highlight4 { background-color:#ccff99; }
/* CalendarNavigator */
/* MONTH/YEAR LABEL */
.yui-skin-sam .yui-calendar a.calnav {
border: 1px solid #f2f2f2;
padding:0 4px;
text-decoration:none;
color:#000;
zoom:1;
}
.yui-skin-sam .yui-calendar a.calnav:hover {
background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;
border-color:#A0A0A0;
cursor:pointer;
}
/* NAVIGATOR MASK */
.yui-skin-sam .yui-calcontainer .yui-cal-nav-mask {
background-color:#000;
opacity:0.25;
*filter:alpha(opacity=25); /* IE */
}
/* NAVIGATOR BOUNDING BOX */
.yui-skin-sam .yui-calcontainer .yui-cal-nav {
font-family:arial,helvetica,clean,sans-serif;
font-size:93%;
border:1px solid #808080;
left:50%;
margin-left:-7em;
width:14em;
padding:0;
top:2.5em;
background-color:#f2f2f2;
}
.yui-skin-sam .yui-calcontainer.withtitle .yui-cal-nav {
top:4.5em;
}
/* NAVIGATOR BOUNDING BOX */
.yui-skin-sam .yui-calcontainer.multi .yui-cal-nav {
width:16em;
margin-left:-8em;
}
/* NAVIGATOR YEAR/MONTH/BUTTON/ERROR BOUNDING BLOCKS */
.yui-skin-sam .yui-calcontainer .yui-cal-nav-y,
.yui-skin-sam .yui-calcontainer .yui-cal-nav-m,
.yui-skin-sam .yui-calcontainer .yui-cal-nav-b {
padding:5px 10px 5px 10px;
}
.yui-skin-sam .yui-calcontainer .yui-cal-nav-b {
text-align:center;
}
.yui-skin-sam .yui-calcontainer .yui-cal-nav-e {
margin-top:5px;
padding:5px;
background-color:#EDF5FF;
border-top:1px solid black;
display:none;
}
/* NAVIGATOR LABELS */
.yui-skin-sam .yui-calcontainer .yui-cal-nav label {
display:block;
font-weight:bold;
}
/* NAVIGATOR MONTH CONTROL */
.yui-skin-sam .yui-calcontainer .yui-cal-nav-mc {
width:100%;
_width:auto; /* IE6, IE7 Quirks don't handle 100% well */
}
/* NAVIGATOR MONTH CONTROL, VALIDATION ERROR */
.yui-skin-sam .yui-calcontainer .yui-cal-nav-y input.yui-invalid {
background-color:#FFEE69;
border: 1px solid #000;
}
/* NAVIGATOR YEAR CONTROL */
.yui-skin-sam .yui-calcontainer .yui-cal-nav-yc {
width:4em;
}
/* NAVIGATOR BUTTONS */
/* BUTTON WRAPPER */
.yui-skin-sam .yui-calcontainer .yui-cal-nav .yui-cal-nav-btn {
border:1px solid #808080;
background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;
background-color:#ccc;
margin: auto .15em;
}
/* BUTTON (based on button-skin.css) */
.yui-skin-sam .yui-calcontainer .yui-cal-nav .yui-cal-nav-btn button {
padding:0 8px;
font-size:93%;
line-height: 2; /* ~24px */
*line-height: 1.7; /* For IE */
min-height: 2em; /* For Gecko */
*min-height: auto; /* For IE */
color: #000;
}
/* DEFAULT BUTTONS */
/* NOTE: IE6 will only pickup the yui-default specifier from the multiple class specifier */
.yui-skin-sam .yui-calcontainer .yui-cal-nav .yui-cal-nav-btn.yui-default {
border:1px solid #304369;
background-color: #426fd9;
background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1400px;
}
.yui-skin-sam .yui-calcontainer .yui-cal-nav .yui-cal-nav-btn.yui-default button {
color:#fff;
}
File diff suppressed because one or more lines are too long
+5342 -3500
View File
File diff suppressed because it is too large Load Diff
+14 -126
View File
File diff suppressed because one or more lines are too long
+5312 -3472
View File
File diff suppressed because it is too large Load Diff
+14
View File
@@ -0,0 +1,14 @@
YUI Library - Charts - Release Notes
2.5.0
* Added lineSize style to series styles
* Added showLabels substyle to xAxis and yAxis styles
* Added more descriptive local content warning for ExternalInterface failure
* Improved minor unit calculation
* Fixed animation and marker positioning bugs
* Fixed bug that caused series definition update to fail
* Fixed bug that caused setting hex color values with # symbol to fail
* Added initialization flag to ensure DataSource doesn't receive multiple requests during initialization.
2.4.0
* Experimental release
Binary file not shown.
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large Load Diff
+11
View File
@@ -1,4 +1,15 @@
ColorPicker - Release Notes
2.5.0
* No change
2.4.0
* Initialization values assigned to showcontrols, showrgbcontrols,
showwebsafe, showhexsummary, animate, red, green, and blue in the
constructor configuration are now honored.
2.3.1
* No change (bug fixes were inherited from slider)
2.3.0
* Initial release
@@ -1,6 +1,6 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-picker-panel {
@@ -81,8 +81,8 @@ left: -2px;
.yui-picker-controls { position:absolute; top: 72px; left:226px; font:1em monospace;}
.yui-picker-controls .hd { background: transparent; border-width: 0px !important;}
.yui-picker-controls .bd { height: 100px; border-width: 0px !important;}
.yui-picker-controls ul {float:left;list-style:none;padding:0 2px 0 0;margin:0}
.yui-picker-controls li {padding:2px;margin:0}
.yui-picker-controls ul {float:left;padding:0 2px 0 0;margin:0}
.yui-picker-controls li {padding:2px;list-style:none;margin:0}
.yui-picker-controls input {
font-size: 0.85em;
width: 2.4em;
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-picker-panel{background:#e3e3e3;border-color:#888;}.yui-picker-panel .hd{background-color:#ccc;font-size:100%;line-height:100%;border:1px solid #e3e3e3;font-weight:bold;overflow:hidden;padding:6px;color:#000;}.yui-picker-panel .bd{background:#e8e8e8;margin:1px;height:200px;}.yui-picker-panel .ft{background:#e8e8e8;margin:1px;padding:1px;}.yui-picker{position:relative;}.yui-picker-hue-thumb{cursor:default;width:18px;height:18px;top:-8px;left:-2px;z-index:9;position:absolute;}.yui-picker-hue-bg{-moz-outline:none;outline:0px none;position:absolute;left:200px;height:183px;width:14px;background:url(hue_bg.png) no-repeat;top:4px;}.yui-picker-bg{-moz-outline:none;outline:0px none;position:absolute;top:4px;left:4px;height:182px;width:182px;background-color:#F00;background-image:url(picker_mask.png);}*html .yui-picker-bg{background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png',sizingMethod='scale');}.yui-picker-mask{position:absolute;z-index:1;top:0px;left:0px;}.yui-picker-thumb{cursor:default;width:11px;height:11px;z-index:9;position:absolute;top:-4px;left:-4px;}.yui-picker-swatch{position:absolute;left:240px;top:4px;height:60px;width:55px;border:1px solid #888;}.yui-picker-websafe-swatch{position:absolute;left:304px;top:4px;height:24px;width:24px;border:1px solid #888;}.yui-picker-controls{position:absolute;top:72px;left:226px;font:1em monospace;}.yui-picker-controls .hd{background:transparent;border-width:0px !important;}.yui-picker-controls .bd{height:100px;border-width:0px !important;}.yui-picker-controls ul{float:left;list-style:none;padding:0 2px 0 0;margin:0}.yui-picker-controls li{padding:2px;margin:0}.yui-picker-controls input{font-size:0.85em;width:2.4em;}.yui-picker-hex-controls{clear:both;padding:2px;}.yui-picker-hex-controls input{width:4.6em;}.yui-picker-controls a{font:1em arial,helvetica,clean,sans-serif;display:block;*display:inline-block;padding:0;color:#000;}
.yui-picker-panel{background:#e3e3e3;border-color:#888;}.yui-picker-panel .hd{background-color:#ccc;font-size:100%;line-height:100%;border:1px solid #e3e3e3;font-weight:bold;overflow:hidden;padding:6px;color:#000;}.yui-picker-panel .bd{background:#e8e8e8;margin:1px;height:200px;}.yui-picker-panel .ft{background:#e8e8e8;margin:1px;padding:1px;}.yui-picker{position:relative;}.yui-picker-hue-thumb{cursor:default;width:18px;height:18px;top:-8px;left:-2px;z-index:9;position:absolute;}.yui-picker-hue-bg{-moz-outline:none;outline:0px none;position:absolute;left:200px;height:183px;width:14px;background:url(hue_bg.png) no-repeat;top:4px;}.yui-picker-bg{-moz-outline:none;outline:0px none;position:absolute;top:4px;left:4px;height:182px;width:182px;background-color:#F00;background-image:url(picker_mask.png);}*html .yui-picker-bg{background-image:none;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../../build/colorpicker/assets/picker_mask.png',sizingMethod='scale');}.yui-picker-mask{position:absolute;z-index:1;top:0px;left:0px;}.yui-picker-thumb{cursor:default;width:11px;height:11px;z-index:9;position:absolute;top:-4px;left:-4px;}.yui-picker-swatch{position:absolute;left:240px;top:4px;height:60px;width:55px;border:1px solid #888;}.yui-picker-websafe-swatch{position:absolute;left:304px;top:4px;height:24px;width:24px;border:1px solid #888;}.yui-picker-controls{position:absolute;top:72px;left:226px;font:1em monospace;}.yui-picker-controls .hd{background:transparent;border-width:0px !important;}.yui-picker-controls .bd{height:100px;border-width:0px !important;}.yui-picker-controls ul{float:left;padding:0 2px 0 0;margin:0}.yui-picker-controls li{padding:2px;list-style:none;margin:0}.yui-picker-controls input{font-size:0.85em;width:2.4em;}.yui-picker-hex-controls{clear:both;padding:2px;}.yui-picker-hex-controls input{width:4.6em;}.yui-picker-controls a{font:1em arial,helvetica,clean,sans-serif;display:block;*display:inline-block;padding:0;color:#000;}
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+1735
View File
File diff suppressed because it is too large Load Diff
+50 -23
View File
@@ -1,5 +1,54 @@
Connection Manager Release Notes
*** version 2.5.0 ***
* setForm() can now detects HTTPS in the URI for file upload transactions. The
third, boolean argument for HTTPS when using IE is no longer necessary.
* [FIXED] SF1882101. POST transactions without a message will now have a
Content-Length value set to 0 for FF 2.x. This is accomplished by passing a
value of empty string instead of null to XHR's send(). All other A-Grade
browsers remain unaffected and perform correctly.
*** version 2.4.0 ***
* [FIXED] SF1804153. Transactions initialized with setForm() now properly clear
the POST data field after each transaction.
* The callback object can accept a new member, cache, defined with a boolean
value. If set to false (e.g., var callback = { cache:false };), a timestamp
will be appended to the URI to override HTTP GET caching. This timestamp value
will appear as rnd=timestamp in the request querystring.
* Custom Events startEvent, completeEvent, and abortEvent now receive
callback.argument, if defined, in addition to the transaction ID. Each Custom
Event's function handler receives two arguments -- the event type as the first
argument, and an array as the second argument. The first element in the array
is the transaction ID, and the second element are any arguments defined in the
callback object.
*** version 2.3.1 ***
* setDefaultPostHeader() can now be overloaded with a boolean, string, or
number. By default, POST transactions send the following Content-Type header:
'application/x-www-form-urlencoded; charset=UTF-8'.
A custom Content-Type header can now be set by passing its value to
setDefaultPostHeader().
* HTML form submissions now send a Content-Type header of "application/x-www-
form-urlencoded", omitting the charset=UTF-8 value.
* setDefaultXhrHeader() can now be overloaded with a boolean, string, or number.
By default, all transactions send a custom header of "X-Requested-
With:XMLHttpRequest".
This default header value can be overridden by passing the desired value as an
argument to setDefaultPostHeader().
* The file upload iframe's event listener is now explicitly removed before the
iframe is destroyed.
*** version 2.3.0 ***
* Custom Events are introduced in Connection Manager. These events -- for a
@@ -23,7 +72,7 @@ For transactions involving file upload with an HTML form, the events are:
* abort() and isCallInProgress() are now functional for file upload
transactions.
* NOTE: The XHR implementation in Safari 2.0.4 has been confirmed to leak
* NOTE: The native XHR implementation in Safari 2.0.4 has been confirmed to leak
memory.
* UPDATE: The XHR implementation in Safari 3.0 beta(and WebKit builds) now
@@ -216,25 +265,3 @@ and returns false if the connection object is no longer available.
+112 -106
View File
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/**
* The Connection Manager provides a simplified interface to the XMLHttpRequest
@@ -33,9 +33,9 @@ YAHOO.util.Connect =
* @type array
*/
_msxml_progid:[
'Microsoft.XMLHTTP',
'MSXML2.XMLHTTP.3.0',
'MSXML2.XMLHTTP',
'Microsoft.XMLHTTP'
'MSXML2.XMLHTTP'
],
/**
@@ -69,10 +69,7 @@ YAHOO.util.Connect =
_use_default_post_header:true,
/**
* @description Determines if a default header of
* Content-Type of 'application/x-www-form-urlencoded'
* will be added to client HTTP headers sent for POST
* transactions.
* @description The default header used for POST transactions.
* @property _default_post_header
* @private
* @static
@@ -80,6 +77,16 @@ YAHOO.util.Connect =
*/
_default_post_header:'application/x-www-form-urlencoded; charset=UTF-8',
/**
* @description The default header used for transactions involving the
* use of HTML forms.
* @property _default_form_header
* @private
* @static
* @type boolean
*/
_default_form_header:'application/x-www-form-urlencoded',
/**
* @description Determines if a default header of
* 'X-Requested-With: XMLHttpRequest'
@@ -228,7 +235,7 @@ YAHOO.util.Connect =
'click',
function(e){
var obj = YAHOO.util.Event.getTarget(e);
if(obj.type == 'submit'){
if(obj.nodeName.toLowerCase() == 'input' && (obj.type && obj.type.toLowerCase() == 'submit')){
YAHOO.util.Connect._submitElementValue = encodeURIComponent(obj.name) + "=" + encodeURIComponent(obj.value);
}
});
@@ -329,7 +336,7 @@ YAHOO.util.Connect =
},
/**
* @description Member to enable or disable the default POST header.
* @description Member to override the default POST header.
* @method setDefaultPostHeader
* @public
* @static
@@ -338,12 +345,17 @@ YAHOO.util.Connect =
*/
setDefaultPostHeader:function(b)
{
this._use_default_post_header = b;
YAHOO.log('Use default POST header set to ' + b, 'info', 'Connection');
if(typeof b == 'string'){
this._default_post_header = b;
YAHOO.log('Default POST header set to ' + b, 'info', 'Connection');
}
else if(typeof b == 'boolean'){
this._use_default_post_header = b;
}
},
/**
* @description Member to enable or disable the default POST header.
* @description Member to override the default transaction header..
* @method setDefaultXhrHeader
* @public
* @static
@@ -352,8 +364,13 @@ YAHOO.util.Connect =
*/
setDefaultXhrHeader:function(b)
{
this._use_default_xhr_header = b;
YAHOO.log('Use default transaction header set to ' + b, 'info', 'Connection');
if(typeof b == 'string'){
this._default_xhr_header = b;
YAHOO.log('Default XHR header set to ' + b, 'info', 'Connection');
}
else{
this._use_default_xhr_header = b;
}
},
/**
@@ -397,7 +414,7 @@ YAHOO.util.Connect =
for(var i=0; i<this._msxml_progid.length; ++i){
try
{
// Instantiates XMLHttpRequest for IE and assign to http.
// Instantiates XMLHttpRequest for IE and assign to http
http = new ActiveXObject(this._msxml_progid[i]);
// Object literal with conn and tId properties
obj = { conn:http, tId:transactionId };
@@ -463,6 +480,7 @@ YAHOO.util.Connect =
asyncRequest:function(method, uri, callback, postData)
{
var o = (this._isFileUpload)?this.getConnectionObject(true):this.getConnectionObject();
var args = (callback && callback.argument)?callback.argument:null;
if(!o){
YAHOO.log('Unable to create connection object.', 'error', 'Connection');
@@ -490,9 +508,6 @@ YAHOO.util.Connect =
// and then concatenate _sFormData to the URI.
uri += ((uri.indexOf('?') == -1)?'?':'&') + this._sFormData;
}
else{
uri += "?" + this._sFormData;
}
}
else if(method.toUpperCase() == 'POST'){
// If POST data exist in addition to the HTML form data,
@@ -501,8 +516,13 @@ YAHOO.util.Connect =
}
}
if(method.toUpperCase() == 'GET' && (callback && callback.cache === false)){
// If callback.cache is defined and set to false, a
// timestamp value will be added to the querystring.
uri += ((uri.indexOf('?') == -1)?'?':'&') + "rnd=" + new Date().valueOf().toString();
}
o.conn.open(method, uri, true);
//this.processTransactionHeaders(o);
// Each transaction will automatically include a custom header of
// "X-Requested-With: XMLHttpRequest" to identify the request as
@@ -514,27 +534,35 @@ YAHOO.util.Connect =
}
}
if(this._isFormSubmit || (postData && this._use_default_post_header)){
//If the transaction method is POST and the POST header value is set to true
//or a custom value, initalize the Content-Type header to this value.
if((method.toUpperCase() == 'POST' && this._use_default_post_header) && this._isFormSubmit === false){
this.initHeader('Content-Type', this._default_post_header);
YAHOO.log('Initialize header Content-Type to application/x-www-form-urlencoded for POST transaction.', 'info', 'Connection');
if(this._isFormSubmit){
this.resetFormState();
}
YAHOO.log('Initialize header Content-Type to application/x-www-form-urlencoded; UTF-8 for POST transaction.', 'info', 'Connection');
}
//Initialize all default and custom HTTP headers,
if(this._has_default_headers || this._has_http_headers){
this.setHeader(o);
}
this.handleReadyState(o, callback);
o.conn.send(postData || null);
o.conn.send(postData || '');
YAHOO.log('Transaction ' + o.tId + ' sent.', 'info', 'Connection');
// Reset the HTML form data and state properties as
// soon as the data are submitted.
if(this._isFormSubmit === true){
this.resetFormState();
}
// Fire global custom event -- startEvent
this.startEvent.fire(o);
this.startEvent.fire(o, args);
if(o.startEvent){
// Fire transaction custom event -- startEvent
o.startEvent.fire(o);
o.startEvent.fire(o, args);
}
return o;
@@ -585,6 +613,7 @@ YAHOO.util.Connect =
{
var oConn = this;
var args = (callback && callback.argument)?callback.argument:null;
if(callback && callback.timeout){
this._timeOut[o.tId] = window.setTimeout(function(){ oConn.abort(o, callback, true); }, callback.timeout);
@@ -605,11 +634,11 @@ YAHOO.util.Connect =
}
// Fire global custom event -- completeEvent
oConn.completeEvent.fire(o);
oConn.completeEvent.fire(o, args);
if(o.completeEvent){
// Fire transaction custom event -- completeEvent
o.completeEvent.fire(o);
o.completeEvent.fire(o, args);
}
oConn.handleTransactionResponse(o, callback);
@@ -632,14 +661,8 @@ YAHOO.util.Connect =
*/
handleTransactionResponse:function(o, callback, isAbort)
{
// If no valid callback is provided, then do not process any callback handling.
if(!callback){
this.releaseObject(o);
YAHOO.log('No callback object to process. Transaction complete.', 'info', 'Connection');
return;
}
var httpStatus, responseObject;
var args = (callback && callback.argument)?callback.argument:null;
try
{
@@ -652,15 +675,15 @@ YAHOO.util.Connect =
}
catch(e){
// 13030 is the custom code to indicate the condition -- in Mozilla/FF --
// when the o object's status and statusText properties are
// 13030 is a custom code to indicate the condition -- in Mozilla/FF --
// when the XHR object's status and statusText properties are
// unavailable, and a query attempt throws an exception.
httpStatus = 13030;
}
if(httpStatus >= 200 && httpStatus < 300 || httpStatus === 1223){
responseObject = this.createResponseObject(o, callback.argument);
if(callback.success){
responseObject = this.createResponseObject(o, args);
if(callback && callback.success){
if(!callback.scope){
callback.success(responseObject);
YAHOO.log('Success callback. HTTP code is ' + httpStatus, 'info', 'Connection');
@@ -690,8 +713,8 @@ YAHOO.util.Connect =
case 12031:
case 12152: // Connection closed by server.
case 13030: // See above comments for variable status.
responseObject = this.createExceptionObject(o.tId, callback.argument, (isAbort?isAbort:false));
if(callback.failure){
responseObject = this.createExceptionObject(o.tId, args, (isAbort?isAbort:false));
if(callback && callback.failure){
if(!callback.scope){
callback.failure(responseObject);
YAHOO.log('Failure callback. Exception detected. Status code is ' + httpStatus, 'warn', 'Connection');
@@ -701,10 +724,11 @@ YAHOO.util.Connect =
YAHOO.log('Failure callback with scope. Exception detected. Status code is ' + httpStatus, 'warn', 'Connection');
}
}
break;
default:
responseObject = this.createResponseObject(o, callback.argument);
if(callback.failure){
responseObject = this.createResponseObject(o, args);
if(callback && callback.failure){
if(!callback.scope){
callback.failure(responseObject);
YAHOO.log('Failure callback. HTTP status code is ' + httpStatus, 'warn', 'Connection');
@@ -769,7 +793,7 @@ YAHOO.util.Connect =
obj.responseText = o.conn.responseText;
obj.responseXML = o.conn.responseXML;
if(typeof callbackArg !== undefined){
if(callbackArg){
obj.argument = callbackArg;
}
@@ -829,18 +853,10 @@ YAHOO.util.Connect =
* automatically sent with each transaction.
* @return {void}
*/
initHeader:function(label,value,isDefault)
initHeader:function(label, value, isDefault)
{
var headerObj = (isDefault)?this._default_headers:this._http_headers;
if(headerObj[label] === undefined){
headerObj[label] = value;
}
else{
// Concatenate multiple values, comma-delimited,
// for the same header label,
headerObj[label] = value + "," + headerObj[label];
}
headerObj[label] = value;
if(isDefault){
this._has_default_headers = true;
@@ -912,12 +928,14 @@ YAHOO.util.Connect =
*/
setForm:function(formId, isUpload, secureUri)
{
// reset the HTML form data and state properties
this.resetFormState();
var oForm;
if(typeof formId == 'string'){
// Determine if the argument is a form id or a form name.
// Note form name usage is deprecated by supported
// here for legacy reasons.
// Note form name usage is deprecated, but supported
// here for backward compatibility.
oForm = (document.getElementById(formId) || document.forms[formId]);
}
else if(typeof formId == 'object'){
@@ -938,7 +956,7 @@ YAHOO.util.Connect =
if(isUpload){
// Create iframe in preparation for file upload.
var io = this.createFrame(secureUri?secureUri:null);
var io = this.createFrame((window.location.href.toLowerCase().indexOf("https") === 0 || secureUri)?true:false);
// Set form reference and file upload properties to true.
this._isFormSubmit = true;
this._isFileUpload = true;
@@ -955,9 +973,9 @@ YAHOO.util.Connect =
// label-value pairs.
for (var i=0; i<oForm.elements.length; i++){
oElement = oForm.elements[i];
oDisabled = oForm.elements[i].disabled;
oName = oForm.elements[i].name;
oValue = oForm.elements[i].value;
oDisabled = oElement.disabled;
oName = oElement.name;
oValue = oElement.value;
// Do not submit fields that are disabled or
// do not have a name attribute value.
@@ -1016,6 +1034,9 @@ YAHOO.util.Connect =
YAHOO.log('Form initialized for transaction. HTML form POST message is: ' + this._sFormData, 'info', 'Connection');
this.initHeader('Content-Type', this._default_form_header);
YAHOO.log('Initialize header Content-Type to application/x-www-form-urlencoded for setForm() transaction.', 'info', 'Connection');
return this._sFormData;
},
@@ -1058,10 +1079,6 @@ YAHOO.util.Connect =
if(typeof secureUri == 'boolean'){
io.src = 'javascript:false';
}
else if(typeof secureURI == 'string'){
// Deprecated
io.src = secureUri;
}
}
else{
io = document.createElement('iframe');
@@ -1120,10 +1137,11 @@ YAHOO.util.Connect =
// Each iframe has an id prefix of "yuiIO" followed
// by the unique transaction id.
var oConn = this;
var frameId = 'yuiIO' + o.tId;
var uploadEncoding = 'multipart/form-data';
var io = document.getElementById(frameId);
var oConn = this;
var args = (callback && callback.argument)?callback.argument:null;
// Track original HTML form attribute values.
var rawFormAttributes =
@@ -1156,11 +1174,11 @@ YAHOO.util.Connect =
this._formNode.submit();
// Fire global custom event -- startEvent
this.startEvent.fire(o);
this.startEvent.fire(o, args);
if(o.startEvent){
// Fire transaction custom event -- startEvent
o.startEvent.fire(o);
o.startEvent.fire(o, args);
}
// Start polling if a callback is present and the timeout
@@ -1203,11 +1221,11 @@ YAHOO.util.Connect =
}
// Fire global custom event -- completeEvent
oConn.completeEvent.fire(o);
oConn.completeEvent.fire(o, args);
if(o.completeEvent){
// Fire transaction custom event -- completeEvent
o.completeEvent.fire(o);
o.completeEvent.fire(o, args);
}
var obj = {};
@@ -1234,23 +1252,16 @@ YAHOO.util.Connect =
}
}
// Fire global custom event -- completeEvent
// Fire global custom event -- uploadEvent
oConn.uploadEvent.fire(obj);
if(o.uploadEvent){
// Fire transaction custom event -- completeEvent
// Fire transaction custom event -- uploadEvent
o.uploadEvent.fire(obj);
}
if(YAHOO.util.Event){
YAHOO.util.Event.removeListener(io, "load", uploadCallback);
}
else if(window.detachEvent){
io.detachEvent('onload', uploadCallback);
}
else{
io.removeEventListener('load', uploadCallback, false);
}
YAHOO.util.Event.removeListener(io, "load", uploadCallback);
setTimeout(
function(){
document.body.removeChild(io);
@@ -1260,15 +1271,7 @@ YAHOO.util.Connect =
};
// Bind the onload handler to the iframe to detect the file upload response.
if(YAHOO.util.Event){
YAHOO.util.Event.addListener(io, "load", uploadCallback);
}
else if(window.attachEvent){
io.attachEvent('onload', uploadCallback);
}
else{
io.addEventListener('load', uploadCallback, false);
}
YAHOO.util.Event.addListener(io, "load", uploadCallback);
},
/**
@@ -1284,8 +1287,10 @@ YAHOO.util.Connect =
abort:function(o, callback, isTimeout)
{
var abortStatus;
var args = (callback && callback.argument)?callback.argument:null;
if(o.conn){
if(o && o.conn){
if(this.isCallInProgress(o)){
// Issue abort request
o.conn.abort();
@@ -1301,11 +1306,14 @@ YAHOO.util.Connect =
abortStatus = true;
}
}
else if(o.isUpload === true){
else if(o && o.isUpload === true){
var frameId = 'yuiIO' + o.tId;
var io = document.getElementById(frameId);
if(io){
// Remove all listeners on the iframe prior to
// its destruction.
YAHOO.util.Event.removeListener(io, "load");
// Destroy the iframe facilitating the transaction.
document.body.removeChild(io);
YAHOO.log('File upload iframe destroyed. Id is:' + frameId, 'info', 'Connection');
@@ -1324,26 +1332,22 @@ YAHOO.util.Connect =
if(abortStatus === true){
// Fire global custom event -- abortEvent
this.abortEvent.fire(o);
this.abortEvent.fire(o, args);
if(o.abortEvent){
// Fire transaction custom event -- abortEvent
o.abortEvent.fire(o);
o.abortEvent.fire(o, args);
}
this.handleTransactionResponse(o, callback, true);
YAHOO.log('Transaction ' + o.tId + ' aborted.', 'info', 'Connection');
}
else{
YAHOO.log('Transaction ' + o.tId + ' abort call failed. Connection object no longer exists.', 'warn', 'Connection');
}
return abortStatus;
},
/**
* Public method to check if the transaction is still being processed.
*
* @description Determines if the transaction is still being processed.
* @method isCallInProgress
* @public
* @static
@@ -1376,14 +1380,16 @@ YAHOO.util.Connect =
*/
releaseObject:function(o)
{
//dereference the XHR instance.
if(o.conn){
if(o && o.conn){
//dereference the XHR instance.
o.conn = null;
YAHOO.log('Connection object for transaction ' + o.tId + ' destroyed.', 'info', 'Connection');
//dereference the connection object.
o = null;
}
YAHOO.log('Connection object for transaction ' + o.tId + ' destroyed.', 'info', 'Connection');
//dereference the connection object.
o = null;
}
};
YAHOO.register("connection", YAHOO.util.Connect, {version: "2.3.0", build: "442"});
YAHOO.register("connection", YAHOO.util.Connect, {version: "2.5.0", build: "895"});
+4 -126
View File
File diff suppressed because one or more lines are too long
+106 -100
View File
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/**
* The Connection Manager provides a simplified interface to the XMLHttpRequest
@@ -33,9 +33,9 @@ YAHOO.util.Connect =
* @type array
*/
_msxml_progid:[
'Microsoft.XMLHTTP',
'MSXML2.XMLHTTP.3.0',
'MSXML2.XMLHTTP',
'Microsoft.XMLHTTP'
'MSXML2.XMLHTTP'
],
/**
@@ -69,10 +69,7 @@ YAHOO.util.Connect =
_use_default_post_header:true,
/**
* @description Determines if a default header of
* Content-Type of 'application/x-www-form-urlencoded'
* will be added to client HTTP headers sent for POST
* transactions.
* @description The default header used for POST transactions.
* @property _default_post_header
* @private
* @static
@@ -80,6 +77,16 @@ YAHOO.util.Connect =
*/
_default_post_header:'application/x-www-form-urlencoded; charset=UTF-8',
/**
* @description The default header used for transactions involving the
* use of HTML forms.
* @property _default_form_header
* @private
* @static
* @type boolean
*/
_default_form_header:'application/x-www-form-urlencoded',
/**
* @description Determines if a default header of
* 'X-Requested-With: XMLHttpRequest'
@@ -228,7 +235,7 @@ YAHOO.util.Connect =
'click',
function(e){
var obj = YAHOO.util.Event.getTarget(e);
if(obj.type == 'submit'){
if(obj.nodeName.toLowerCase() == 'input' && (obj.type && obj.type.toLowerCase() == 'submit')){
YAHOO.util.Connect._submitElementValue = encodeURIComponent(obj.name) + "=" + encodeURIComponent(obj.value);
}
});
@@ -328,7 +335,7 @@ YAHOO.util.Connect =
},
/**
* @description Member to enable or disable the default POST header.
* @description Member to override the default POST header.
* @method setDefaultPostHeader
* @public
* @static
@@ -337,11 +344,16 @@ YAHOO.util.Connect =
*/
setDefaultPostHeader:function(b)
{
this._use_default_post_header = b;
if(typeof b == 'string'){
this._default_post_header = b;
}
else if(typeof b == 'boolean'){
this._use_default_post_header = b;
}
},
/**
* @description Member to enable or disable the default POST header.
* @description Member to override the default transaction header..
* @method setDefaultXhrHeader
* @public
* @static
@@ -350,7 +362,12 @@ YAHOO.util.Connect =
*/
setDefaultXhrHeader:function(b)
{
this._use_default_xhr_header = b;
if(typeof b == 'string'){
this._default_xhr_header = b;
}
else{
this._use_default_xhr_header = b;
}
},
/**
@@ -392,7 +409,7 @@ YAHOO.util.Connect =
for(var i=0; i<this._msxml_progid.length; ++i){
try
{
// Instantiates XMLHttpRequest for IE and assign to http.
// Instantiates XMLHttpRequest for IE and assign to http
http = new ActiveXObject(this._msxml_progid[i]);
// Object literal with conn and tId properties
obj = { conn:http, tId:transactionId };
@@ -457,6 +474,7 @@ YAHOO.util.Connect =
asyncRequest:function(method, uri, callback, postData)
{
var o = (this._isFileUpload)?this.getConnectionObject(true):this.getConnectionObject();
var args = (callback && callback.argument)?callback.argument:null;
if(!o){
return null;
@@ -483,9 +501,6 @@ YAHOO.util.Connect =
// and then concatenate _sFormData to the URI.
uri += ((uri.indexOf('?') == -1)?'?':'&') + this._sFormData;
}
else{
uri += "?" + this._sFormData;
}
}
else if(method.toUpperCase() == 'POST'){
// If POST data exist in addition to the HTML form data,
@@ -494,8 +509,13 @@ YAHOO.util.Connect =
}
}
if(method.toUpperCase() == 'GET' && (callback && callback.cache === false)){
// If callback.cache is defined and set to false, a
// timestamp value will be added to the querystring.
uri += ((uri.indexOf('?') == -1)?'?':'&') + "rnd=" + new Date().valueOf().toString();
}
o.conn.open(method, uri, true);
//this.processTransactionHeaders(o);
// Each transaction will automatically include a custom header of
// "X-Requested-With: XMLHttpRequest" to identify the request as
@@ -506,26 +526,33 @@ YAHOO.util.Connect =
}
}
if(this._isFormSubmit || (postData && this._use_default_post_header)){
//If the transaction method is POST and the POST header value is set to true
//or a custom value, initalize the Content-Type header to this value.
if((method.toUpperCase() == 'POST' && this._use_default_post_header) && this._isFormSubmit === false){
this.initHeader('Content-Type', this._default_post_header);
if(this._isFormSubmit){
this.resetFormState();
}
}
//Initialize all default and custom HTTP headers,
if(this._has_default_headers || this._has_http_headers){
this.setHeader(o);
}
this.handleReadyState(o, callback);
o.conn.send(postData || null);
o.conn.send(postData || '');
// Reset the HTML form data and state properties as
// soon as the data are submitted.
if(this._isFormSubmit === true){
this.resetFormState();
}
// Fire global custom event -- startEvent
this.startEvent.fire(o);
this.startEvent.fire(o, args);
if(o.startEvent){
// Fire transaction custom event -- startEvent
o.startEvent.fire(o);
o.startEvent.fire(o, args);
}
return o;
@@ -574,6 +601,7 @@ YAHOO.util.Connect =
{
var oConn = this;
var args = (callback && callback.argument)?callback.argument:null;
if(callback && callback.timeout){
this._timeOut[o.tId] = window.setTimeout(function(){ oConn.abort(o, callback, true); }, callback.timeout);
@@ -594,11 +622,11 @@ YAHOO.util.Connect =
}
// Fire global custom event -- completeEvent
oConn.completeEvent.fire(o);
oConn.completeEvent.fire(o, args);
if(o.completeEvent){
// Fire transaction custom event -- completeEvent
o.completeEvent.fire(o);
o.completeEvent.fire(o, args);
}
oConn.handleTransactionResponse(o, callback);
@@ -621,13 +649,8 @@ YAHOO.util.Connect =
*/
handleTransactionResponse:function(o, callback, isAbort)
{
// If no valid callback is provided, then do not process any callback handling.
if(!callback){
this.releaseObject(o);
return;
}
var httpStatus, responseObject;
var args = (callback && callback.argument)?callback.argument:null;
try
{
@@ -640,15 +663,15 @@ YAHOO.util.Connect =
}
catch(e){
// 13030 is the custom code to indicate the condition -- in Mozilla/FF --
// when the o object's status and statusText properties are
// 13030 is a custom code to indicate the condition -- in Mozilla/FF --
// when the XHR object's status and statusText properties are
// unavailable, and a query attempt throws an exception.
httpStatus = 13030;
}
if(httpStatus >= 200 && httpStatus < 300 || httpStatus === 1223){
responseObject = this.createResponseObject(o, callback.argument);
if(callback.success){
responseObject = this.createResponseObject(o, args);
if(callback && callback.success){
if(!callback.scope){
callback.success(responseObject);
}
@@ -676,8 +699,8 @@ YAHOO.util.Connect =
case 12031:
case 12152: // Connection closed by server.
case 13030: // See above comments for variable status.
responseObject = this.createExceptionObject(o.tId, callback.argument, (isAbort?isAbort:false));
if(callback.failure){
responseObject = this.createExceptionObject(o.tId, args, (isAbort?isAbort:false));
if(callback && callback.failure){
if(!callback.scope){
callback.failure(responseObject);
}
@@ -685,10 +708,11 @@ YAHOO.util.Connect =
callback.failure.apply(callback.scope, [responseObject]);
}
}
break;
default:
responseObject = this.createResponseObject(o, callback.argument);
if(callback.failure){
responseObject = this.createResponseObject(o, args);
if(callback && callback.failure){
if(!callback.scope){
callback.failure(responseObject);
}
@@ -751,7 +775,7 @@ YAHOO.util.Connect =
obj.responseText = o.conn.responseText;
obj.responseXML = o.conn.responseXML;
if(typeof callbackArg !== undefined){
if(callbackArg){
obj.argument = callbackArg;
}
@@ -811,18 +835,10 @@ YAHOO.util.Connect =
* automatically sent with each transaction.
* @return {void}
*/
initHeader:function(label,value,isDefault)
initHeader:function(label, value, isDefault)
{
var headerObj = (isDefault)?this._default_headers:this._http_headers;
if(headerObj[label] === undefined){
headerObj[label] = value;
}
else{
// Concatenate multiple values, comma-delimited,
// for the same header label,
headerObj[label] = value + "," + headerObj[label];
}
headerObj[label] = value;
if(isDefault){
this._has_default_headers = true;
@@ -892,12 +908,14 @@ YAHOO.util.Connect =
*/
setForm:function(formId, isUpload, secureUri)
{
// reset the HTML form data and state properties
this.resetFormState();
var oForm;
if(typeof formId == 'string'){
// Determine if the argument is a form id or a form name.
// Note form name usage is deprecated by supported
// here for legacy reasons.
// Note form name usage is deprecated, but supported
// here for backward compatibility.
oForm = (document.getElementById(formId) || document.forms[formId]);
}
else if(typeof formId == 'object'){
@@ -917,7 +935,7 @@ YAHOO.util.Connect =
if(isUpload){
// Create iframe in preparation for file upload.
var io = this.createFrame(secureUri?secureUri:null);
var io = this.createFrame((window.location.href.toLowerCase().indexOf("https") === 0 || secureUri)?true:false);
// Set form reference and file upload properties to true.
this._isFormSubmit = true;
this._isFileUpload = true;
@@ -934,9 +952,9 @@ YAHOO.util.Connect =
// label-value pairs.
for (var i=0; i<oForm.elements.length; i++){
oElement = oForm.elements[i];
oDisabled = oForm.elements[i].disabled;
oName = oForm.elements[i].name;
oValue = oForm.elements[i].value;
oDisabled = oElement.disabled;
oName = oElement.name;
oValue = oElement.value;
// Do not submit fields that are disabled or
// do not have a name attribute value.
@@ -994,6 +1012,8 @@ YAHOO.util.Connect =
this._sFormData = this._sFormData.substr(0, this._sFormData.length - 1);
this.initHeader('Content-Type', this._default_form_header);
return this._sFormData;
},
@@ -1036,10 +1056,6 @@ YAHOO.util.Connect =
if(typeof secureUri == 'boolean'){
io.src = 'javascript:false';
}
else if(typeof secureURI == 'string'){
// Deprecated
io.src = secureUri;
}
}
else{
io = document.createElement('iframe');
@@ -1097,10 +1113,11 @@ YAHOO.util.Connect =
// Each iframe has an id prefix of "yuiIO" followed
// by the unique transaction id.
var oConn = this;
var frameId = 'yuiIO' + o.tId;
var uploadEncoding = 'multipart/form-data';
var io = document.getElementById(frameId);
var oConn = this;
var args = (callback && callback.argument)?callback.argument:null;
// Track original HTML form attribute values.
var rawFormAttributes =
@@ -1133,11 +1150,11 @@ YAHOO.util.Connect =
this._formNode.submit();
// Fire global custom event -- startEvent
this.startEvent.fire(o);
this.startEvent.fire(o, args);
if(o.startEvent){
// Fire transaction custom event -- startEvent
o.startEvent.fire(o);
o.startEvent.fire(o, args);
}
// Start polling if a callback is present and the timeout
@@ -1180,11 +1197,11 @@ YAHOO.util.Connect =
}
// Fire global custom event -- completeEvent
oConn.completeEvent.fire(o);
oConn.completeEvent.fire(o, args);
if(o.completeEvent){
// Fire transaction custom event -- completeEvent
o.completeEvent.fire(o);
o.completeEvent.fire(o, args);
}
var obj = {};
@@ -1209,23 +1226,16 @@ YAHOO.util.Connect =
}
}
// Fire global custom event -- completeEvent
// Fire global custom event -- uploadEvent
oConn.uploadEvent.fire(obj);
if(o.uploadEvent){
// Fire transaction custom event -- completeEvent
// Fire transaction custom event -- uploadEvent
o.uploadEvent.fire(obj);
}
if(YAHOO.util.Event){
YAHOO.util.Event.removeListener(io, "load", uploadCallback);
}
else if(window.detachEvent){
io.detachEvent('onload', uploadCallback);
}
else{
io.removeEventListener('load', uploadCallback, false);
}
YAHOO.util.Event.removeListener(io, "load", uploadCallback);
setTimeout(
function(){
document.body.removeChild(io);
@@ -1234,15 +1244,7 @@ YAHOO.util.Connect =
};
// Bind the onload handler to the iframe to detect the file upload response.
if(YAHOO.util.Event){
YAHOO.util.Event.addListener(io, "load", uploadCallback);
}
else if(window.attachEvent){
io.attachEvent('onload', uploadCallback);
}
else{
io.addEventListener('load', uploadCallback, false);
}
YAHOO.util.Event.addListener(io, "load", uploadCallback);
},
/**
@@ -1258,8 +1260,10 @@ YAHOO.util.Connect =
abort:function(o, callback, isTimeout)
{
var abortStatus;
var args = (callback && callback.argument)?callback.argument:null;
if(o.conn){
if(o && o.conn){
if(this.isCallInProgress(o)){
// Issue abort request
o.conn.abort();
@@ -1275,11 +1279,14 @@ YAHOO.util.Connect =
abortStatus = true;
}
}
else if(o.isUpload === true){
else if(o && o.isUpload === true){
var frameId = 'yuiIO' + o.tId;
var io = document.getElementById(frameId);
if(io){
// Remove all listeners on the iframe prior to
// its destruction.
YAHOO.util.Event.removeListener(io, "load");
// Destroy the iframe facilitating the transaction.
document.body.removeChild(io);
@@ -1297,24 +1304,21 @@ YAHOO.util.Connect =
if(abortStatus === true){
// Fire global custom event -- abortEvent
this.abortEvent.fire(o);
this.abortEvent.fire(o, args);
if(o.abortEvent){
// Fire transaction custom event -- abortEvent
o.abortEvent.fire(o);
o.abortEvent.fire(o, args);
}
this.handleTransactionResponse(o, callback, true);
}
else{
}
return abortStatus;
},
/**
* Public method to check if the transaction is still being processed.
*
* @description Determines if the transaction is still being processed.
* @method isCallInProgress
* @public
* @static
@@ -1347,13 +1351,15 @@ YAHOO.util.Connect =
*/
releaseObject:function(o)
{
//dereference the XHR instance.
if(o.conn){
if(o && o.conn){
//dereference the XHR instance.
o.conn = null;
//dereference the connection object.
o = null;
}
//dereference the connection object.
o = null;
}
};
YAHOO.register("connection", YAHOO.util.Connect, {version: "2.3.0", build: "442"});
YAHOO.register("connection", YAHOO.util.Connect, {version: "2.5.0", build: "895"});
+436 -160
View File
@@ -1,5 +1,281 @@
Container Release Notes
*** version 2.5.0 ***
Fixed the following bugs:
-------------------------
+ We now add the text resize monitor iframe to the DOM in a timeout,
to help alleviate the perpetual loading indicator seen in
Firefox 2.0.0.8 (Gecko 1.8.1.8) and above on Windows.
+ Changed the closing script tag string used in the resize monitor, to
allow container-min.js, container_core-min.js content to be used inline.
+ Fixed problem with underlay size being too short in IE6 when setting up
an initially visible Dialog with buttons.
+ Removed overflow:auto applied to the modal mask for all browsers other
than gecko/MacOS to help avoid the "missing text cursor" Gecko bug.
Overflow:auto is still applied to for Gecko/MacOS to help avoid
scrollbar bleedthrough, another Gecko bug (discussed in Container's
known issues section).
Added the following features:
-----------------------------
+ Added a "hideaftersubmit" config property to Dialog, to allow the end
user to configure whether or not the Dialog should be hidden after
it has been submitted. By default it is set to false, to provide
backwards compatibility.
+ Added contextMouseOverEvent, contextMouseOutEvent and
contextTriggerEvent events to Tooltip, which provide access to the
context element when the user mouses over a context element, mouses
out of a context element, and before a tooltip is about to be
triggered (displayed) for a context element. See the API docs for
these events for futher details.
+ Added a "disabled" config property to Tooltip, to allow the user
to dynamically disable a tooltip.
Changes:
--------
+ Optimized constraintoviewport handling for Overlays which haven't
been specifically positioned, so that the constraint checks aren't
made before every show.
*** version 2.4.0 ***
Fixed the following bugs:
-------------------------
+ constraintoviewport and fixedcenter now handle Overlays which are
larger than the viewport. The Overlay will be positioned such that
it's top, left corner is in the viewport. Panel's draggable
behavior now also honors constraintoviewport, if the panel is
larger than the viewport.
+ constrainToViewport will now correctly constrain Overlays which
haven't been specifically positioned (don't have an XY value set).
+ Overlay/OverlayManager bringToTop methods will bring Overlays to
the top of the stack, even if their current zindex is the same as
other Overlays on the page.
+ Fixed double textResizeEvents fired on gecko based browsers (e.g
Firefox 2.x).
+ Panel underlay now resizes correctly in Safari 2.x, when the
content of the Panel is modified (e.g. when setBody() is called).
+ Tooltip "text" configuration property is no longer overridden by
the "title" attribute value on the context element if both are
set. The "text" configuration property takes precedence
(as indicated in the Tooltip documentation).
+ Transparent shadows no longer become opaque (black) in IE6/IE7
when a Panel with ContainerEffect.FADE is hidden and then
shown again. Also on IE6/IE7 transparent shadows no longer
appear opaque while animation is in progress.
+ An empty header is no longer created for non-draggable
Dialogs/SimpleDialogs which don't provide their own headers.
By design, an empty header is still created for draggable
Dialogs/SimpleDialogs which don't provide a header, in order
to provide a drag handle.
+ Select boxes inside Modal Panels on IE6 are no longer hidden.
+ In Sam Skin, Dialog/SimpleDialog default and non-default HTML
buttons (used when YUI Button is not included on the page) now
have a consistent look. Previously style properties intended
for default YUI Buttons, were being incorrectly applied to
default HTML buttons, giving them a look inconsistent with
non-default buttons.
Added the following features:
-----------------------------
+ Added "dragOnly" configuration property to Panel, to leverage
the "dragOnly" configuration property added to the DragDrop
utility for 2.4.0.
When the "dragOnly" configuration property is set to true,
the DD instance created for the Panel will not check for drop
targets on the page, improving performance during drag operations
which don't require drop target interaction.
The property is set to "false" by default to maintain backwards
compatibility with older 2.x releases, but should be set to "true"
if no drop targets for the Panel exist on the page.
See the DragDrop utilities 2.4.0 README for additional information.
*** version 2.3.1 ***
Fixed the following bugs:
-------------------------
+ To help reduce the occurrence of "Operation Aborted" errors in IE,
containers which are rendered to the document's BODY element (e.g.
myOverlay.render(document.body)) are now inserted before the first
child of the BODY element. This applies to both the container
element as well as the iframe shim if enabled.
Prior to 2.3.1, these two elements were appended as the last
children of the BODY element.
When rendering to any other element on the page, the behavior is
unchanged and both the container and shim are appended as the last
children of the element.
Upgrade Impact For Containers Rendered To Document.Body
-------------------------------------------------------
If you have an xy coordinate and non-zero z-index specified for
your container there should be no negative impact.
If you haven't specified an xy position, the fix could result
in a shift in your container position, depending on other elements
on the page.
If you haven't specified a z-index and are relying on DOM order to
stack the container, you may see a change in stacking order of
the container or iframe shim.
Both these changes can be resolved by setting a specific z-index
and position based on the layout of other elements on your page.
If you do need to revert to 2.3.0 behavior, a configuration property
"appendtodocumentbody" has been added to Module, which can be set to
true.
The change to stacking order is discussed in detail below in
relation to other z-index fixes made for 2.3.1.
+ Z-index is now applied correctly for Overlay/Panel elements, their
corresponding iframe shims, and modal masks (for Panels).
This fix applies to both the default z-index based on the CSS
for the Overlay/Panel and specific z-indices set using the
"zindex" configuration parameter.
Default z-index values are:
Overlay/Panel element: 2
Iframe shim: 1
Mask: 1
The iframe shim and modal mask z-index will always be set to one less
than the Overlay/Panel z-index.
PLEASE NOTE:
As a result of the fix to reduce "Operation Aborted" errors,
setting a z-index of 1 on an Overlay/Panel rendered to document.body
will result in its iframe shim and modal mask (which will have a
z-index of 0) being rendered behind other positioned elements in the
document.
This is because the Overlay/Panel, iframe shim and mask are
inserted as the first children of the BODY element and hence any
positioned elements with a z-index of 0 or auto which occur after
them in the document will be stacked on top of them as per W3C spec.
If you need to keep the Overlay/Panel above positioned elements on your
page, it's z-index needs to be set to 2 or more.
In general it's advisable to manage the z-index of positioned elements
on your page deliberately by setting a z-index, to avoid having their
order in the document define their stacking order.
For detailed stacking order information see:
- http://www.w3.org/TR/CSS21/visuren.html#layers
- http://developer.mozilla.org/en/docs/Understanding_CSS_z-index:The_st
acking_context
+ Module now correctly recognizes standard module header, body and footer
DIVs when they have extra CSS classes applied in addition to the
required hd, bd, and ft classes. e.g. <div class="bd news"></div>.
+ An empty header (set to $#160;) is created for draggable Panels which
don't have a header specified, to provide a drag handle. This fixes a
regression introduced in 2.3.0 so that 2.2.2 behavior is restored.
+ Dialog.destroy has been fixed to account for Dialog form elements which
may not be direct children of the standard module body ("bd") element.
+ SimpleDialog.destory now completes successfully if the optional
button-beta.js dependancy is not included on the page.
+ Destroying Overlays registered with the OverlayManager no longer results in a
JavaScript error. The Overlay is destroyed and removed from the
OverlayManager correctly.
+ Submitting a Dialog form directly (e.g. using a "submit" button, hitting
enter on a single text field form) no longer throws a JavaScript error.
Known Issues
------------
+ IE: Borders for tables with border-collapse:collapse remain visible
-------------------------------------------------------------------
If an Overlay, or any of its subclasses, contains a table with its
border-collapse CSS property set to "collapse" instead of the default
value of "separate", the borders of the table will remain visible, when
the Overlay is configured to be hidden initially. The table contents
will be hidden correctly.
This is due to an IE bug, reproducible by the basic test case below:
<style type="text/css">
.box {visibility:hidden;}
td {border:1px solid red;}
table {border-collapse:collapse;}
</style>
<div class="box">
<table>
<tr>
<td>1</td>
<td>2</td>
</tr>
</table>
</div>
Setting the DIV elements "style.visibility" JS property fixes the
problem with the simple test case. NOTE: Setting the style in markup
using the DIV's style attribute does not.
Extending this to Container, the simplest workaround if you're not
using effects, is to use Overlay's hide() method to setup visibility.
This will set the Overlay's element "style.visibility" property. e.g.
// Start visible, then hide.
var ovr = YAHOO.widget.Overlay("ovr");
ovr.render();
ovr.hide();
You can also apply this workaround if you want to use effects by
setting the effect up after you hide. e.g.
// Start visible, but don't apply effects,
// to avoid initial animation.
var ovr = YAHOO.widget.Overlay("ovr");
ovr.render();
ovr.hide();
ovr.cfg.setProperty("effect", {effect:.....});
If initial flicker is a problem with the above, you can set the
visibility directly on the Overlay element after rendering e.g.
var ovr = YAHOO.widget.Overlay("ovr", {visible:false});
ovr.render();
YAHOO.util.Dom.setStyle(ovr.element, "visibility", "hidden");
but if possible one of the previous methods should be used since
they use the public API as opposed to manipulating the DOM directly.
*** version 2.3.0 ***
Fixed the following bugs:
@@ -495,204 +771,204 @@ Known Issues
*** version 2.2.0 ***
Module
- Removed hardcoded file paths for image roots. Affected properties
include:
- YAHOO.widget.Module.IMG_ROOT
- YAHOO.widget.Module.IMG_ROOT_SSL
- HTML elements, created via createElement, now use lowercase.
Module
- Removed hardcoded file paths for image roots. Affected properties
include:
- YAHOO.widget.Module.IMG_ROOT
- YAHOO.widget.Module.IMG_ROOT_SSL
- HTML elements, created via createElement, now use lowercase.
Panel
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Panel.CSS_PANEL now references CSS class "yui-
panel".
- YAHOO.widget.Panel.CSS_PANEL_CONTAINER now references CSS class
"yui-panel-container".
- Close button can now be configured via the CSS class "container-
close".
- HTML elements, created via createElement, now use lowercase.
Panel
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Panel.CSS_PANEL now references CSS class "yui-
panel".
- YAHOO.widget.Panel.CSS_PANEL_CONTAINER now references CSS class
"yui-panel-container".
- Close button can now be configured via the CSS class "container-
close".
- HTML elements, created via createElement, now use lowercase.
Dialog
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Dialog.CSS_DIALOG now references CSS class "yui-
dialog".
- HTML elements, created via createElement, now use lowercase.
Dialog
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Dialog.CSS_DIALOG now references CSS class "yui-
dialog".
- HTML elements, created via createElement, now use lowercase.
SimpleDialog
- Removed hardcoded file paths for SimpleDialog icons, which are now
configurable in CSS:
- YAHOO.widget.SimpleDialog.ICON_BLOCK now references CSS class
"blckicon".
- YAHOO.widget.SimpleDialog.ICON_ALARM now references CSS class
"alrticon".
- YAHOO.widget.SimpleDialog.ICON_HELP now references CSS class
"hlpicon".
- YAHOO.widget.SimpleDialog.ICON_INFO now references CSS class
"infoicon".
- YAHOO.widget.SimpleDialog.ICON_WARN now references CSS class
"warnicon".
- YAHOO.widget.SimpleDialog.ICON_TIP now references CSS class
"tipicon".
- To provide shield against CSS class collision the following
references now have a "yui-" prefix:
- YAHOO.widget.SimpleDialog.CSS_SIMPLEDIALOG now references CSS
class "yui-simple-dialog";
SimpleDialog
- Removed hardcoded file paths for SimpleDialog icons, which are now
configurable in CSS:
- YAHOO.widget.SimpleDialog.ICON_BLOCK now references CSS class
"blckicon".
- YAHOO.widget.SimpleDialog.ICON_ALARM now references CSS class
"alrticon".
- YAHOO.widget.SimpleDialog.ICON_HELP now references CSS class
"hlpicon".
- YAHOO.widget.SimpleDialog.ICON_INFO now references CSS class
"infoicon".
- YAHOO.widget.SimpleDialog.ICON_WARN now references CSS class
"warnicon".
- YAHOO.widget.SimpleDialog.ICON_TIP now references CSS class
"tipicon".
- To provide shield against CSS class collision the following
references now have a "yui-" prefix:
- YAHOO.widget.SimpleDialog.CSS_SIMPLEDIALOG now references CSS
class "yui-simple-dialog";
Tooltip
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Tooltip.CSS_TOOLTIP now references CSS class "yui-
tipicon" "yui-tt";
Tooltip
- To shield against CSS class collision, the following references now
have a "yui-" prefix:
- YAHOO.widget.Tooltip.CSS_TOOLTIP now references CSS class "yui-
tipicon" "yui-tt";
*** version 0.12.2 ***
Module
- Corrected issue where listener was not properly removed from resize
monitor element when "monitorresize" is disabled
Module
- Corrected issue where listener was not properly removed from resize
monitor element when "monitorresize" is disabled
Panel
- Fixed issue that would sometimes prevent select lists from working
properly in Firefox
Panel
- Fixed issue that would sometimes prevent select lists from working
properly in Firefox
Dialog
- Fixed error that would occur when trying to create a Dialog where
the first form element is set to "disabled"
- Modified "close" property handler for Dialog/SimpleDialog to call
"cancel" instead of "hide"
Dialog
- Fixed error that would occur when trying to create a Dialog where
the first form element is set to "disabled"
- Modified "close" property handler for Dialog/SimpleDialog to call
"cancel" instead of "hide"
*** version 0.12.1 ***
All Classes
- "monitorresize" property now functions in situations where
document.domain has been modified.
- YAHOO.widget.Module.textResizeEvent now fires when the font size is
changed (except for Opera, which uses "zoom" functionality that
prevents this)
- Event listeners attached to container elements are now properly
purged on destroy using YAHOO.util.Event.purgeElement
All Classes
- "monitorresize" property now functions in situations where
document.domain has been modified.
- YAHOO.widget.Module.textResizeEvent now fires when the font size is
changed (except for Opera, which uses "zoom" functionality that
prevents this)
- Event listeners attached to container elements are now properly
purged on destroy using YAHOO.util.Event.purgeElement
Panel
- Fixed issue where focus events were broken on the page when a modal
Panel was created
Panel
- Fixed issue where focus events were broken on the page when a modal
Panel was created
Dialog
- Fixed bug where hitting "enter" on a Dialog was forcing the default
submission behavior of the form's action to execute
- Dialog no longer tries to give focus to hidden form elements.
- Replaced &nbsp; references in Panel with &#160; for XHTML
compliance.
- Fixed issue that was preventing Safari from successfully using the
getData() function
Dialog
- Fixed bug where hitting "enter" on a Dialog was forcing the default
submission behavior of the form's action to execute
- Dialog no longer tries to give focus to hidden form elements.
- Replaced &nbsp; references in Panel with &#160; for XHTML
compliance.
- Fixed issue that was preventing Safari from successfully using the
getData() function
*** version 0.12 ***
All Classes
- New documentation format implemented, and removed unnecessary
prototype null references previously used for generating
documentation
All Classes
- New documentation format implemented, and removed unnecessary
prototype null references previously used for generating
documentation
Config
- Added 'undefined' check when reading initial properties for
.reset()
- Fixed Firefox warning on .resetProperty()
- Fixed issue preventing resetProperty() from resetting values
correctly
Config
- Added 'undefined' check when reading initial properties for
.reset()
- Fixed Firefox warning on .resetProperty()
- Fixed issue preventing resetProperty() from resetting values
correctly
Module
- Removed unused "childNodesInDom" property
Module
- Removed unused "childNodesInDom" property
Overlay
- Converted center() to use Dom utility
- Fixed configVisible() to properly detect actual visible/hidden
status in Internet Explorer, which reports "inherit" for all elements
by default.
- Updated onDomResize to properly reapply "context" property
- Unified scroll/resize handlers so that they fire properly (when the
event has completed) as opposed to constantly (as seen in Mozilla-
based browsers)
Overlay
- Converted center() to use Dom utility
- Fixed configVisible() to properly detect actual visible/hidden
status in Internet Explorer, which reports "inherit" for all elements
by default.
- Updated onDomResize to properly reapply "context" property
- Unified scroll/resize handlers so that they fire properly (when the
event has completed) as opposed to constantly (as seen in Mozilla-
based browsers)
Panel
- Modified modality mask to show before Panel is shown (prior to any
animation)
- Modified buildWrapper to eliminate cloning of the initial markup
module, which fixes issues with select options not maintaining their
default selections in IE
- Modality mask is now z-indexed properly so that the mask z-index is
always one less than the Panel z-index
Panel
- Modified modality mask to show before Panel is shown (prior to any
animation)
- Modified buildWrapper to eliminate cloning of the initial markup
module, which fixes issues with select options not maintaining their
default selections in IE
- Modality mask is now z-indexed properly so that the mask z-index is
always one less than the Panel z-index
Dialog
- Fixed Connection to get "action" attribute using getAttribute, to
allow for form fields named "action"
- Added support for "GET" by retrieving the form "method" rather than
always defaulting to "POST"
Dialog
- Fixed Connection to get "action" attribute using getAttribute, to
allow for form fields named "action"
- Added support for "GET" by retrieving the form "method" rather than
always defaulting to "POST"
KeyListener
- Fixed to work properly with Safari 2.0 by matching against keyCode
or charCode
KeyListener
- Fixed to work properly with Safari 2.0 by matching against keyCode
or charCode
*** version 0.11.4 ***
- Panel: Modality mask is now properly removed from DOM on Panel
destroy.
- Panel: Modality mask is now properly removed from DOM on Panel
destroy.
*** version 0.11.3 ***
- Module: Fixed SSL warning issue in IE
- Overlay: Fixed memory leak related to iframe shim in IE
- Panel: No focusable elements under the mask can now be tabbed to
- Panel: Set Panel container overflow to hidden to fix scrolling issue
in Opera 9
- Module: Fixed SSL warning issue in IE
- Overlay: Fixed memory leak related to iframe shim in IE
- Panel: No focusable elements under the mask can now be tabbed to
- Panel: Set Panel container overflow to hidden to fix scrolling issue
in Opera 9
*** version 0.11.2 ***
- All: JsLint optimization
- Overlay: Fixed SSL issues with monitorresize property
- OverlayManager: Fixed z-index incrementing issues
- Dialog: Form elements called "name" will now function properly
- Dialog: Removed unnecessary scope:this reference
- All: JsLint optimization
- Overlay: Fixed SSL issues with monitorresize property
- OverlayManager: Fixed z-index incrementing issues
- Dialog: Form elements called "name" will now function properly
- Dialog: Removed unnecessary scope:this reference
*** version 0.11.1 ***
- Tooltip: Removed incorrect logger statement
- Dialog: Corrected logic that was causing browser lockup in IE for
SimpleDialog
- Dialog: Fixed "firstButtom" typo
- Tooltip: Removed incorrect logger statement
- Dialog: Corrected logic that was causing browser lockup in IE for
SimpleDialog
- Dialog: Fixed "firstButtom" typo
*** version 0.11.0 ***
- toString function added to all classes for easy logging
- YAHOO.extend is now being used for inheritance on all container
classes
- Module: monitorresize feature now works on all browsers
- Module: Fixed bug with image root and isSecure
- Overlay: Fixed bugs related to IFRAME shim positioning
- Overlay: center() now works in quirks mode
- Overlay: Overlay now has a custom destroy() method that also removes
the IFRAME shim
- OverlayManager: Fixed bug in the prototype that was preventing
multiple Managers on one page
- OverlayManager: focusEvent now fires at all appropriate times
- Tooltip: context can now be specified as an array, so Tooltips can be
reused across multiple context elements
- Tooltip: preventoverlap now functions properly for large context
elements (i.e, images)
- Tooltip: fixed bugs regarding setTimeout
- Tooltip: added mousemove event to allow for more accurate Tooltip
positioning
- Panel: added dragEvent for monitoring all event handlers for drag and
drop
- Panel: modality mask is now resized on scroll
- Panel: KeyListeners are now properly destroyed when the Panel is
destroyed
- Panel: Header is now sized properly in quirks mode
- Dialog: Blinking cursor issue is fixed for Firefox
- Dialog: callback object for Connection is now public (this.callback)
- Dialog: onsuccess/onfailure properties removed (as a result of the
public callback object)
- Dialog: Dialog is now invisible by default
- Dialog: Buttons are now properly cleaned up on destroy
- toString function added to all classes for easy logging
- YAHOO.extend is now being used for inheritance on all container
classes
- Module: monitorresize feature now works on all browsers
- Module: Fixed bug with image root and isSecure
- Overlay: Fixed bugs related to IFRAME shim positioning
- Overlay: center() now works in quirks mode
- Overlay: Overlay now has a custom destroy() method that also removes
the IFRAME shim
- OverlayManager: Fixed bug in the prototype that was preventing
multiple Managers on one page
- OverlayManager: focusEvent now fires at all appropriate times
- Tooltip: context can now be specified as an array, so Tooltips can be
reused across multiple context elements
- Tooltip: preventoverlap now functions properly for large context
elements (i.e, images)
- Tooltip: fixed bugs regarding setTimeout
- Tooltip: added mousemove event to allow for more accurate Tooltip
positioning
- Panel: added dragEvent for monitoring all event handlers for drag and
drop
- Panel: modality mask is now resized on scroll
- Panel: KeyListeners are now properly destroyed when the Panel is
destroyed
- Panel: Header is now sized properly in quirks mode
- Dialog: Blinking cursor issue is fixed for Firefox
- Dialog: callback object for Connection is now public (this.callback)
- Dialog: onsuccess/onfailure properties removed (as a result of the
public callback object)
- Dialog: Dialog is now invisible by default
- Dialog: Buttons are now properly cleaned up on destroy
*** version 0.10.0 ***
+40 -56
View File
@@ -1,59 +1,38 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-overlay,
.yui-panel-container {
visibility: hidden;
position: absolute;
z-index: 1;
position: absolute;
z-index: 2;
}
yui-panel-container form {
margin: 0;
}
.masked .yui-panel-container {
/*
Default to a z-index 1 higher than default if the Panel is modal
to make sure the panel is above its modality mask.
*/
z-index: 2;
.yui-panel-container form {
margin: 0;
}
.mask {
/*
Default to a z-index of 1 less than the default defined
by ".masked .yui-panel-container"
*/
z-index: 1;
z-index: 1;
display: none;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
/*
Application of "overflow:auto" prevents Mac scrollbars from bleeding
through the modality mask in Gecko.
*/
overflow: auto;
}
.mask.block-scrollbars {
/*
Application of "overflow:auto" prevents Mac scrollbars from bleeding
through the modality mask in Gecko. The block-scollbars class is only
added for Gecko on MacOS
*/
overflow: auto;
}
/*
PLEASE NOTE:
@@ -62,28 +41,26 @@ yui-panel-container form {
the modality mask in IE 6.
2) ".drag select" is used to hide <SELECT> elements when dragging a
Panel in IE 6.
Panel in IE 6. This is necessary to prevent some redraw problems with
the <SELECT> elements when a Panel instance is dragged.
3) "hide-select select" is appended to an Overlay instance's root HTML
element when it is being annimated by YAHOO.widget.ContainerEffect
3) ".hide-select select" is appended to an Overlay instance's root HTML
element when it is being annimated by YAHOO.widget.ContainerEffect.
This is necessary because <SELECT> elements don't inherit their parent
element's opacity in IE 6.
*/
.masked select,
.drag select,
.masked select,
.drag select,
.hide-select select {
_visibility: hidden;
_visibility: hidden;
}
.yui-panel-container select {
_visibility: inherit;
_visibility: inherit;
}
/*
There are two known issues with YAHOO.widget.Overlay (and its subclasses) that
@@ -129,27 +106,21 @@ PLEASE NOTE:
.hide-scrollbars,
.hide-scrollbars * {
overflow: hidden;
overflow: hidden;
}
.hide-scrollbars select {
display: none;
display: none;
}
.show-scrollbars {
overflow: auto;
}
.yui-panel-container.show-scrollbars,
.yui-tt.show-scrollbars {
overflow: visible;
}
.yui-panel-container.show-scrollbars .underlay,
@@ -159,6 +130,19 @@ PLEASE NOTE:
}
/*
Workaround for Safari 2.x - the yui-force-redraw class is applied, and then removed when
the Panel's content changes, to force Safari 2.x to redraw the underlay.
We attempt to choose a CSS property which has no visual impact when added,
removed.
*/
.yui-panel-container.shadow .underlay.yui-force-redraw {
padding-bottom: 1px;
}
.yui-effect-fade .underlay {
display:none;
}
/*
PLEASE NOTE: The <DIV> element used for a Tooltip's shadow is appended
+104 -108
View File
@@ -1,37 +1,26 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-overlay,
.yui-panel-container {
visibility:hidden;
position:absolute;
z-index: 1;
}
.masked .yui-panel-container {
/*
Default to a z-index 1 higher than default if the Panel is modal
to make sure the panel is above its modality mask.
*/
z-index: 2;
position:absolute;
z-index: 2;
}
.yui-tt {
visibility:hidden;
position:absolute;
color:#333;
background-color:#FDFFB4;
font-family:arial,helvetica,verdana,sans-serif;
padding:2px;
border:1px solid #FCC90D;
font:100% sans-serif;
width:auto;
visibility:hidden;
position:absolute;
color:#333;
background-color:#FDFFB4;
font-family:arial,helvetica,verdana,sans-serif;
padding:2px;
border:1px solid #FCC90D;
font:100% sans-serif;
width:auto;
}
/*
@@ -44,33 +33,26 @@ version: 2.3.0
*/
.yui-tt-shadow {
display: none;
}
* html body.masked select {
visibility:hidden;
visibility:hidden;
}
* html div.yui-panel-container select {
visibility:inherit;
visibility:inherit;
}
* html div.drag select {
visibility:hidden;
visibility:hidden;
}
* html div.hide-select select {
visibility:hidden;
visibility:hidden;
}
.mask {
/*
Default to a z-index of 1 less than the default defined
by ".masked .yui-panel-container"
*/
z-index: 1;
display:none;
position:absolute;
@@ -127,13 +109,13 @@ PLEASE NOTE:
.hide-scrollbars,
.hide-scrollbars * {
overflow: hidden;
overflow: hidden;
}
.hide-scrollbars select {
display: none;
display: none;
}
@@ -174,8 +156,8 @@ PLEASE NOTE:
.yui-panel-container.matte {
padding: 3px;
background-color: #fff;
padding: 3px;
background-color: #fff;
}
@@ -191,132 +173,146 @@ PLEASE NOTE:
}
/*
Workaround for Safari 2.x - the yui-force-redraw class is applied, and then removed when
the Panel's content changes, to force Safari 2.x to redraw the underlay.
We attempt to choose a CSS property which has no visual impact when added,
removed, but still causes Safari to redraw
*/
.yui-panel-container.shadow .underlay.yui-force-redraw {
padding-bottom: 1px;
}
.yui-effect-fade .underlay {
display:none;
}
.yui-panel {
visibility:hidden;
border-collapse:separate;
position:relative;
left:0;
top:0;
font:1em Arial;
background-color:#FFF;
border:1px solid #000;
z-index:1;
overflow:hidden;
visibility:hidden;
border-collapse:separate;
position:relative;
left:0;
top:0;
font:1em Arial;
background-color:#FFF;
border:1px solid #000;
z-index:1;
overflow:hidden;
}
.yui-panel .hd {
background-color:#3d77cb;
color:#FFF;
font-size:100%;
line-height:100%;
border:1px solid #FFF;
border-bottom:1px solid #000;
font-weight:bold;
padding:4px;
background-color:#3d77cb;
color:#FFF;
font-size:100%;
line-height:100%;
border:1px solid #FFF;
border-bottom:1px solid #000;
font-weight:bold;
padding:4px;
white-space:nowrap;
}
.yui-panel .bd {
overflow:hidden;
padding:4px;
overflow:hidden;
padding:4px;
}
.yui-panel .bd p {
margin:0 0 1em;
margin:0 0 1em;
}
.yui-panel .container-close {
position:absolute;
top:5px;
right:4px;
z-index:6;
height:12px;
width:12px;
margin:0px;
padding:0px;
background:url(close12_1.gif) no-repeat;
cursor:pointer;
visibility:inherit;
position:absolute;
top:5px;
right:4px;
z-index:6;
height:12px;
width:12px;
margin:0px;
padding:0px;
background:url(close12_1.gif) no-repeat;
cursor:pointer;
visibility:inherit;
}
.yui-panel .ft {
padding:4px;
overflow:hidden;
padding:4px;
overflow:hidden;
}
.yui-simple-dialog .bd .yui-icon {
background-repeat:no-repeat;
width:16px;
height:16px;
margin-right:10px;
float:left;
background-repeat:no-repeat;
width:16px;
height:16px;
margin-right:10px;
float:left;
}
.yui-simple-dialog .bd span.blckicon {
background: url("blck16_1.gif") no-repeat;
background: url("blck16_1.gif") no-repeat;
}
.yui-simple-dialog .bd span.alrticon {
background: url("alrt16_1.gif") no-repeat;
background: url("alrt16_1.gif") no-repeat;
}
.yui-simple-dialog .bd span.hlpicon {
background: url("hlp16_1.gif") no-repeat;
background: url("hlp16_1.gif") no-repeat;
}
.yui-simple-dialog .bd span.infoicon {
background: url("info16_1.gif") no-repeat;
background: url("info16_1.gif") no-repeat;
}
.yui-simple-dialog .bd span.warnicon {
background: url("warn16_1.gif") no-repeat;
background: url("warn16_1.gif") no-repeat;
}
.yui-simple-dialog .bd span.tipicon {
background: url("tip16_1.gif") no-repeat;
background: url("tip16_1.gif") no-repeat;
}
.yui-dialog .ft,
.yui-simple-dialog .ft {
padding-bottom:5px;
padding-right:5px;
text-align:right;
padding-bottom:5px;
padding-right:5px;
text-align:right;
}
.yui-dialog form,
.yui-simple-dialog form {
margin:0;
margin:0;
}
.button-group button {
font:100 76% verdana;
text-decoration:none;
background-color: #E4E4E4;
color: #333;
cursor: hand;
vertical-align: middle;
border: 2px solid #797979;
border-top-color:#FFF;
border-left-color:#FFF;
margin:2px;
padding:2px;
font:100 76% verdana;
text-decoration:none;
background-color: #E4E4E4;
color: #333;
cursor: hand;
vertical-align: middle;
border: 2px solid #797979;
border-top-color:#FFF;
border-left-color:#FFF;
margin:2px;
padding:2px;
}
.button-group button.default {
font-weight:bold;
font-weight:bold;
}
.button-group button:hover,
.button-group button.hover {
border:2px solid #90A029;
background-color:#EBF09E;
border-top-color:#FFF;
border-left-color:#FFF;
border:2px solid #90A029;
background-color:#EBF09E;
border-top-color:#FFF;
border-left-color:#FFF;
}
.button-group button:active {
border:2px solid #E4E4E4;
background-color:#BBB;
border-top-color:#333;
border-left-color:#333;
border:2px solid #E4E4E4;
background-color:#BBB;
border-top-color:#333;
border-left-color:#333;
}
@@ -1,8 +1,8 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/* Panel modality mask styles */
@@ -113,6 +113,7 @@ version: 2.3.0
width: 25px;
height: 15px;
background: url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;
cursor:pointer;
}
@@ -189,29 +190,25 @@ version: 2.3.0
}
/* Dialog default button style */
.yui-skin-sam .yui-dialog .ft button.default {
font-weight:bold;
}
/* Dialog default button styles */
.yui-skin-sam .yui-dialog .ft .default {
/* Dialog default YUI Button style */
.yui-skin-sam .yui-dialog .ft span.default {
border-color: #304369;
background-position: 0 -1400px;
}
.yui-skin-sam .yui-dialog .ft .default .first-child {
.yui-skin-sam .yui-dialog .ft span.default .first-child {
border-color: #304369;
}
.yui-skin-sam .yui-dialog .ft .default button {
.yui-skin-sam .yui-dialog .ft span.default button {
color: #fff;
}
/* SimpleDialog icon styles */
.yui-skin-sam .yui-simple-dialog .bd .yui-icon {
@@ -285,18 +282,16 @@ version: 2.3.0
}
.yui-skin-sam .yui-tt-shadow {
top: 2px;
right: -3px;
left: -3px;
bottom: -3px;
background-color: #000;
}
.yui-skin-sam .yui-tt-shadow-visible {
opacity: .12;
*filter: alpha(opacity=12); /* For IE */
*filter: alpha(opacity=12); /* For IE */
}
@@ -1,7 +1,7 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:1;}yui-panel-container form{margin:0;}.masked .yui-panel-container{z-index:2;}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0;overflow:auto;}.masked select,.drag select,.hide-select select{_visibility:hidden;}.yui-panel-container select{_visibility:inherit;}.hide-scrollbars,.hide-scrollbars *{overflow:hidden;}.hide-scrollbars select{display:none;}.show-scrollbars{overflow:auto;}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible;}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto;}.yui-tt-shadow{position:absolute;}.yui-skin-sam .mask{background-color:#000;opacity:.25;*filter:alpha(opacity=25);}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px 3px;}.yui-skin-sam .yui-panel{position:relative;*zoom:1;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{*zoom:1;*position:relative;border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc;}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#F2F2F2;}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -200px;}.yui-skin-sam .yui-panel .bd{padding:10px;}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%;}.yui-skin-sam .yui-panel-container.focused .yui-panel .hd{}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px;}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff;}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 5px 0 3px;}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;right:-3px;bottom:-3px;left:-3px;*top:3px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_right:0;_bottom:0;_left:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;*filter:alpha(opacity=12);}.yui-skin-sam .yui-dialog .ft{border-top:none;padding:0 10px 10px 10px;font-size:100%;}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right;}.yui-skin-sam .yui-dialog .ft .default{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-dialog .ft .default .first-child{border-color:#304369;}.yui-skin-sam .yui-dialog .ft .default button{color:#fff;}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left;}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px;}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px;}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px;}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px;}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px;}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px;}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#D4C237 #A6982B #A6982B #A6982B;border-width:1px;border-style:solid;background-color:#FFEE69;}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto;}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000;}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;*filter:alpha(opacity=12);}
.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:2;}.yui-panel-container form{margin:0;}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0;}.mask.block-scrollbars{overflow:auto;}.masked select,.drag select,.hide-select select{_visibility:hidden;}.yui-panel-container select{_visibility:inherit;}.hide-scrollbars,.hide-scrollbars *{overflow:hidden;}.hide-scrollbars select{display:none;}.show-scrollbars{overflow:auto;}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible;}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto;}.yui-panel-container.shadow .underlay.yui-force-redraw{padding-bottom:1px;}.yui-effect-fade .underlay{display:none;}.yui-tt-shadow{position:absolute;}.yui-skin-sam .mask{background-color:#000;opacity:.25;*filter:alpha(opacity=25);}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px 3px;}.yui-skin-sam .yui-panel{position:relative;*zoom:1;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{*zoom:1;*position:relative;border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc;}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#F2F2F2;}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -200px;}.yui-skin-sam .yui-panel .bd{padding:10px;}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%;}.yui-skin-sam .yui-panel-container.focused .yui-panel .hd{}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;cursor:pointer;}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px;}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff;}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 5px 0 3px;}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;right:-3px;bottom:-3px;left:-3px;*top:3px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_right:0;_bottom:0;_left:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;*filter:alpha(opacity=12);}.yui-skin-sam .yui-dialog .ft{border-top:none;padding:0 10px 10px 10px;font-size:100%;}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right;}.yui-skin-sam .yui-dialog .ft button.default{font-weight:bold;}.yui-skin-sam .yui-dialog .ft span.default{border-color:#304369;background-position:0 -1400px;}.yui-skin-sam .yui-dialog .ft span.default .first-child{border-color:#304369;}.yui-skin-sam .yui-dialog .ft span.default button{color:#fff;}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left;}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px;}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px;}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px;}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px;}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px;}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px;}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#D4C237 #A6982B #A6982B #A6982B;border-width:1px;border-style:solid;background-color:#FFEE69;}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto;}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000;}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;*filter:alpha(opacity=12);}
+1346 -1879
View File
File diff suppressed because it is too large Load Diff
+13 -235
View File
File diff suppressed because one or more lines are too long
+1333 -1860
View File
File diff suppressed because it is too large Load Diff
+804 -1152
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+797 -1144
View File
File diff suppressed because it is too large Load Diff
+5
View File
@@ -0,0 +1,5 @@
YUI Library - Cookie Utility - Release Notes
2.5.0
* Beta release
+361
View File
@@ -0,0 +1,361 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
/**
* Utilities for cookie management
* @namespace YAHOO.util
* @module cookie
* @beta
*/
YAHOO.namespace("util");
/**
* Cookie utility.
* @class Cookie
* @static
*/
YAHOO.util.Cookie = {
//-------------------------------------------------------------------------
// Private Methods
//-------------------------------------------------------------------------
/**
* Creates a cookie string that can be assigned into document.cookie.
* @param {String} name The name of the cookie.
* @param {String} value The value of the cookie.
* @param {encodeValue} encodeValue True to encode the value, false to leave as-is.
* @param {Object} options (Optional) Options for the cookie.
* @return {String} The formatted cookie string.
* @method _createCookieString
* @private
* @static
*/
_createCookieString : function (name /*:String*/, value /*:Variant*/, encodeValue /*:Boolean*/, options /*:Object*/) /*:String*/ {
//shortcut
var lang = YAHOO.lang;
var text /*:String*/ = encodeURIComponent(name) + "=" + (encodeValue ? encodeURIComponent(value) : value);
if (lang.isObject(options)){
//expiration date
if (options.expires instanceof Date){
text += "; expires=" + options.expires.toGMTString();
}
//path
if (lang.isString(options.path) && options.path != ""){
text += "; path=" + options.path;
}
//domain
if (lang.isString(options.domain) && options.domain != ""){
text += "; domain=" + options.domain;
}
//secure
if (options.secure === true){
text += "; secure";
}
}
return text;
},
/**
* Formats a cookie value for an object containing multiple values.
* @param {Object} hash An object of key-value pairs to create a string for.
* @return {String} A string suitable for use as a cookie value.
* @method _createCookieHash
* @private
* @static
*/
_createCookieHashString : function (hash /*:Object*/) /*:String*/ {
//shortcuts
var lang = YAHOO.lang;
if (!lang.isObject(hash)){
throw new TypeError("Cookie._createCookieHashString(): Argument must be an object.");
}
var text /*:Array*/ = new Array();
for (var key in hash){
if (lang.hasOwnProperty(hash, key) && !lang.isFunction(hash[key]) && !lang.isUndefined(hash[key])){
text.push(encodeURIComponent(key) + "=" + encodeURIComponent(String(hash[key])));
}
}
return text.join("&");
},
/**
* Parses a cookie hash string into an object.
* @param {String} text The cookie hash string to parse. The string should already be URL-decoded.
* @return {Object} An object containing entries for each cookie value.
* @method _parseCookieHash
* @private
* @static
*/
_parseCookieHash : function (text /*:String*/) /*:Object*/ {
var hashParts /*:Array*/ = text.split("&");
var hashPart /*:Array*/ = null;
var hash /*:Object*/ = new Object();
for (var i=0, len=hashParts.length; i < len; i++){
hashPart = hashParts[i].split("=");
hash[hashPart[0]] = hashPart[1];
}
return hash;
},
/**
* Parses a cookie string into an object representing all accessible cookies.
* @param {String} text The cookie string to parse.
* @return {Object} An object containing entries for each accessible cookie.
* @method _parseCookieString
* @private
* @static
*/
_parseCookieString : function (text /*:String*/) /*:Object*/ {
var cookies /*:Object*/ = new Object();
if (YAHOO.lang.isString(text) && text.length > 0) {
if (/[^=]+=[^=;]?(?:; [^=]+=[^=]?)?/.test(text)){
var cookieParts /*:Array*/ = text.split(/;\s/g);
var cookieName /*:String*/ = null;
var cookieValue /*:String*/ = null;
for (var i=0, len=cookieParts.length; i < len; i++){
cookieName = decodeURIComponent(cookieParts[i].match(/([a-z]+)=/i)[1]);
cookieValue = decodeURIComponent(cookieParts[i].substring(cookieName.length+1));
cookies[cookieName] = cookieValue;
}
}
}
return cookies;
},
//-------------------------------------------------------------------------
// Public Methods
//-------------------------------------------------------------------------
/**
* Returns the cookie value for the given name.
* @param {String} name The name of the cookie to retrieve.
* @param {Function} converter (Optional) A function to run on the value before returning
* it. The function is not used if the cookie doesn't exist.
* @return {Variant} If no converter is specified, returns a string or null if
* the cookie doesn't exist. If the converter is specified, returns the value
* returned from the converter or null if the cookie doesn't exist.
* @method get
* @static
*/
get : function (name /*:String*/, converter /*:Function*/) /*:Variant*/{
var lang = YAHOO.lang;
var cookies /*:Object*/ = this._parseCookieString(document.cookie);
if (!lang.isString(name) || name === ""){
throw new TypeError("Cookie.get(): Cookie name must be a non-empty string.");
}
if (lang.isUndefined(cookies[name])) {
return null;
}
if (!lang.isFunction(converter)){
return cookies[name];
} else {
return converter(cookies[name]);
}
},
/**
* Returns the value of a subcookie.
* @param {String} name The name of the cookie to retrieve.
* @param {String} subName The name of the subcookie to retrieve.
* @param {Function} converter (Optional) A function to run on the value before returning
* it. The function is not used if the cookie doesn't exist.
* @return {Variant} If the cookie doesn't exist, null is returned. If the subcookie
* doesn't exist, null if also returned. If no converter is specified and the
* subcookie exists, a string is returned. If a converter is specified and the
* subcookie exists, the value returned from the converter is returned.
* @method getSub
* @static
*/
getSub : function (name /*:String*/, subName /*:String*/, converter /*:Function*/) /*:Variant*/ {
var lang = YAHOO.lang;
var hash /*:Variant*/ = this.getSubs(name);
if (hash !== null) {
if (!lang.isString(subName) || subName === ""){
throw new TypeError("Cookie.getSub(): Subcookie name must be a non-empty string.");
}
if (lang.isUndefined(hash[subName])){
return null;
}
if (!lang.isFunction(converter)){
return hash[subName];
} else {
return converter(hash[subName]);
}
} else {
return null;
}
},
/**
* Returns an object containing name-value pairs stored in the cookie with the given name.
* @param {String} name The name of the cookie to retrieve.
* @return {Object} An object of name-value pairs if the cookie with the given name
* exists, null if it does not.
* @method getHash
* @static
*/
getSubs : function (name /*:String*/) /*:Object*/ {
return this.get(name, this._parseCookieHash);
},
/**
* Removes a cookie from the machine by setting its expiration date to
* sometime in the past.
* @param {String} name The name of the cookie to remove.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string),
* and secure (true/false). The expires option will be overwritten
* by the method.
* @return {String} The created cookie string.
* @method remove
* @static
*/
remove : function (name /*:String*/, options /*:Object*/) /*:String*/ {
//check cookie name
if (!YAHOO.lang.isString(name) || name === ""){
throw new TypeError("Cookie.remove(): Cookie name must be a non-empty string.");
}
//set options
options = options || {};
options.expires = new Date(0);
//set cookie
return this.set(name, "", options);
},
/**
* Sets a cookie with a given name and value.
* @param {String} name The name of the cookie to set.
* @param {Variant} value The value to set for the cookie.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method set
* @static
*/
set : function (name /*:String*/, value /*:Variant*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name)){
throw new TypeError("Cookie.set(): Cookie name must be a string.");
}
if (lang.isUndefined(value)){
throw new TypeError("Cookie.set(): Value cannot be undefined.");
}
var text /*:String*/ = this._createCookieString(name, value, true, options);
document.cookie = text;
return text;
},
/**
* Sets a sub cookie with a given name to a particular value.
* @param {String} name The name of the cookie to set.
* @param {String} subName The name of the subcookie to set.
* @param {Variant} value The value to set.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method setSub
* @static
*/
setSub : function (name /*:String*/, subName /*:String*/, value /*:Variant*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name) || name === ""){
throw new TypeError("Cookie.setSub(): Cookie name must be a non-empty string.");
}
if (!lang.isString(subName) || subName === ""){
throw new TypeError("Cookie.setSub(): Subcookie name must be a non-empty string.");
}
if (lang.isUndefined(value)){
throw new TypeError("Cookie.setSub(): Subcookie value cannot be undefined.");
}
var hash /*:Object*/ = this.getSubs(name);
if (!lang.isObject(hash)){
hash = new Object();
}
hash[subName] = value;
return this.setSubs(name, hash, options);
},
/**
* Sets a cookie with a given name to contain a hash of name-value pairs.
* @param {String} name The name of the cookie to set.
* @param {Object} value An object containing name-value pairs.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method setSubs
* @static
*/
setSubs : function (name /*:String*/, value /*:Object*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name)){
throw new TypeError("Cookie.setSubs(): Cookie name must be a string.");
}
if (!lang.isObject(value)){
throw new TypeError("Cookie.setSubs(): Cookie value must be an object.");
}
var text /*:String*/ = this._createCookieString(name, this._createCookieHashString(value), false, options);
document.cookie = text;
return text;
}
};
YAHOO.register("cookie", YAHOO.util.Cookie, {version: "2.5.0", build: "895"});
+7
View File
@@ -0,0 +1,7 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
YAHOO.namespace("util");YAHOO.util.Cookie={_createCookieString:function(B,D,C,A){var F=YAHOO.lang;var E=encodeURIComponent(B)+"="+(C?encodeURIComponent(D):D);if(F.isObject(A)){if(A.expires instanceof Date){E+="; expires="+A.expires.toGMTString();}if(F.isString(A.path)&&A.path!=""){E+="; path="+A.path;}if(F.isString(A.domain)&&A.domain!=""){E+="; domain="+A.domain;}if(A.secure===true){E+="; secure";}}return E;},_createCookieHashString:function(B){var D=YAHOO.lang;if(!D.isObject(B)){throw new TypeError("Cookie._createCookieHashString(): Argument must be an object.");}var C=new Array();for(var A in B){if(D.hasOwnProperty(B,A)&&!D.isFunction(B[A])&&!D.isUndefined(B[A])){C.push(encodeURIComponent(A)+"="+encodeURIComponent(String(B[A])));}}return C.join("&");},_parseCookieHash:function(E){var D=E.split("&");var F=null;var C=new Object();for(var B=0,A=D.length;B<A;B++){F=D[B].split("=");C[F[0]]=F[1];}return C;},_parseCookieString:function(E){var C=new Object();if(YAHOO.lang.isString(E)&&E.length>0){if(/[^=]+=[^=;]?(?:; [^=]+=[^=]?)?/.test(E)){var G=E.split(/;\s/g);var F=null;var D=null;for(var B=0,A=G.length;B<A;B++){F=decodeURIComponent(G[B].match(/([a-z]+)=/i)[1]);D=decodeURIComponent(G[B].substring(F.length+1));C[F]=D;}}}return C;},get:function(A,B){var D=YAHOO.lang;var C=this._parseCookieString(document.cookie);if(!D.isString(A)||A===""){throw new TypeError("Cookie.get(): Cookie name must be a non-empty string.");}if(D.isUndefined(C[A])){return null;}if(!D.isFunction(B)){return C[A];}else{return B(C[A]);}},getSub:function(A,C,B){var E=YAHOO.lang;var D=this.getSubs(A);if(D!==null){if(!E.isString(C)||C===""){throw new TypeError("Cookie.getSub(): Subcookie name must be a non-empty string.");}if(E.isUndefined(D[C])){return null;}if(!E.isFunction(B)){return D[C];}else{return B(D[C]);}}else{return null;}},getSubs:function(A){return this.get(A,this._parseCookieHash);},remove:function(B,A){if(!YAHOO.lang.isString(B)||B===""){throw new TypeError("Cookie.remove(): Cookie name must be a non-empty string.");}A=A||{};A.expires=new Date(0);return this.set(B,"",A);},set:function(B,C,A){var E=YAHOO.lang;if(!E.isString(B)){throw new TypeError("Cookie.set(): Cookie name must be a string.");}if(E.isUndefined(C)){throw new TypeError("Cookie.set(): Value cannot be undefined.");}var D=this._createCookieString(B,C,true,A);document.cookie=D;return D;},setSub:function(B,D,C,A){var F=YAHOO.lang;if(!F.isString(B)||B===""){throw new TypeError("Cookie.setSub(): Cookie name must be a non-empty string.");}if(!F.isString(D)||D===""){throw new TypeError("Cookie.setSub(): Subcookie name must be a non-empty string.");}if(F.isUndefined(C)){throw new TypeError("Cookie.setSub(): Subcookie value cannot be undefined.");}var E=this.getSubs(B);if(!F.isObject(E)){E=new Object();}E[D]=C;return this.setSubs(B,E,A);},setSubs:function(B,C,A){var E=YAHOO.lang;if(!E.isString(B)){throw new TypeError("Cookie.setSubs(): Cookie name must be a string.");}if(!E.isObject(C)){throw new TypeError("Cookie.setSubs(): Cookie value must be an object.");}var D=this._createCookieString(B,this._createCookieHashString(C),false,A);document.cookie=D;return D;}};YAHOO.register("cookie",YAHOO.util.Cookie,{version:"2.5.0",build:"895"});
+361
View File
@@ -0,0 +1,361 @@
/*
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.5.0
*/
/**
* Utilities for cookie management
* @namespace YAHOO.util
* @module cookie
* @beta
*/
YAHOO.namespace("util");
/**
* Cookie utility.
* @class Cookie
* @static
*/
YAHOO.util.Cookie = {
//-------------------------------------------------------------------------
// Private Methods
//-------------------------------------------------------------------------
/**
* Creates a cookie string that can be assigned into document.cookie.
* @param {String} name The name of the cookie.
* @param {String} value The value of the cookie.
* @param {encodeValue} encodeValue True to encode the value, false to leave as-is.
* @param {Object} options (Optional) Options for the cookie.
* @return {String} The formatted cookie string.
* @method _createCookieString
* @private
* @static
*/
_createCookieString : function (name /*:String*/, value /*:Variant*/, encodeValue /*:Boolean*/, options /*:Object*/) /*:String*/ {
//shortcut
var lang = YAHOO.lang;
var text /*:String*/ = encodeURIComponent(name) + "=" + (encodeValue ? encodeURIComponent(value) : value);
if (lang.isObject(options)){
//expiration date
if (options.expires instanceof Date){
text += "; expires=" + options.expires.toGMTString();
}
//path
if (lang.isString(options.path) && options.path != ""){
text += "; path=" + options.path;
}
//domain
if (lang.isString(options.domain) && options.domain != ""){
text += "; domain=" + options.domain;
}
//secure
if (options.secure === true){
text += "; secure";
}
}
return text;
},
/**
* Formats a cookie value for an object containing multiple values.
* @param {Object} hash An object of key-value pairs to create a string for.
* @return {String} A string suitable for use as a cookie value.
* @method _createCookieHash
* @private
* @static
*/
_createCookieHashString : function (hash /*:Object*/) /*:String*/ {
//shortcuts
var lang = YAHOO.lang;
if (!lang.isObject(hash)){
throw new TypeError("Cookie._createCookieHashString(): Argument must be an object.");
}
var text /*:Array*/ = new Array();
for (var key in hash){
if (lang.hasOwnProperty(hash, key) && !lang.isFunction(hash[key]) && !lang.isUndefined(hash[key])){
text.push(encodeURIComponent(key) + "=" + encodeURIComponent(String(hash[key])));
}
}
return text.join("&");
},
/**
* Parses a cookie hash string into an object.
* @param {String} text The cookie hash string to parse. The string should already be URL-decoded.
* @return {Object} An object containing entries for each cookie value.
* @method _parseCookieHash
* @private
* @static
*/
_parseCookieHash : function (text /*:String*/) /*:Object*/ {
var hashParts /*:Array*/ = text.split("&");
var hashPart /*:Array*/ = null;
var hash /*:Object*/ = new Object();
for (var i=0, len=hashParts.length; i < len; i++){
hashPart = hashParts[i].split("=");
hash[hashPart[0]] = hashPart[1];
}
return hash;
},
/**
* Parses a cookie string into an object representing all accessible cookies.
* @param {String} text The cookie string to parse.
* @return {Object} An object containing entries for each accessible cookie.
* @method _parseCookieString
* @private
* @static
*/
_parseCookieString : function (text /*:String*/) /*:Object*/ {
var cookies /*:Object*/ = new Object();
if (YAHOO.lang.isString(text) && text.length > 0) {
if (/[^=]+=[^=;]?(?:; [^=]+=[^=]?)?/.test(text)){
var cookieParts /*:Array*/ = text.split(/;\s/g);
var cookieName /*:String*/ = null;
var cookieValue /*:String*/ = null;
for (var i=0, len=cookieParts.length; i < len; i++){
cookieName = decodeURIComponent(cookieParts[i].match(/([a-z]+)=/i)[1]);
cookieValue = decodeURIComponent(cookieParts[i].substring(cookieName.length+1));
cookies[cookieName] = cookieValue;
}
}
}
return cookies;
},
//-------------------------------------------------------------------------
// Public Methods
//-------------------------------------------------------------------------
/**
* Returns the cookie value for the given name.
* @param {String} name The name of the cookie to retrieve.
* @param {Function} converter (Optional) A function to run on the value before returning
* it. The function is not used if the cookie doesn't exist.
* @return {Variant} If no converter is specified, returns a string or null if
* the cookie doesn't exist. If the converter is specified, returns the value
* returned from the converter or null if the cookie doesn't exist.
* @method get
* @static
*/
get : function (name /*:String*/, converter /*:Function*/) /*:Variant*/{
var lang = YAHOO.lang;
var cookies /*:Object*/ = this._parseCookieString(document.cookie);
if (!lang.isString(name) || name === ""){
throw new TypeError("Cookie.get(): Cookie name must be a non-empty string.");
}
if (lang.isUndefined(cookies[name])) {
return null;
}
if (!lang.isFunction(converter)){
return cookies[name];
} else {
return converter(cookies[name]);
}
},
/**
* Returns the value of a subcookie.
* @param {String} name The name of the cookie to retrieve.
* @param {String} subName The name of the subcookie to retrieve.
* @param {Function} converter (Optional) A function to run on the value before returning
* it. The function is not used if the cookie doesn't exist.
* @return {Variant} If the cookie doesn't exist, null is returned. If the subcookie
* doesn't exist, null if also returned. If no converter is specified and the
* subcookie exists, a string is returned. If a converter is specified and the
* subcookie exists, the value returned from the converter is returned.
* @method getSub
* @static
*/
getSub : function (name /*:String*/, subName /*:String*/, converter /*:Function*/) /*:Variant*/ {
var lang = YAHOO.lang;
var hash /*:Variant*/ = this.getSubs(name);
if (hash !== null) {
if (!lang.isString(subName) || subName === ""){
throw new TypeError("Cookie.getSub(): Subcookie name must be a non-empty string.");
}
if (lang.isUndefined(hash[subName])){
return null;
}
if (!lang.isFunction(converter)){
return hash[subName];
} else {
return converter(hash[subName]);
}
} else {
return null;
}
},
/**
* Returns an object containing name-value pairs stored in the cookie with the given name.
* @param {String} name The name of the cookie to retrieve.
* @return {Object} An object of name-value pairs if the cookie with the given name
* exists, null if it does not.
* @method getHash
* @static
*/
getSubs : function (name /*:String*/) /*:Object*/ {
return this.get(name, this._parseCookieHash);
},
/**
* Removes a cookie from the machine by setting its expiration date to
* sometime in the past.
* @param {String} name The name of the cookie to remove.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string),
* and secure (true/false). The expires option will be overwritten
* by the method.
* @return {String} The created cookie string.
* @method remove
* @static
*/
remove : function (name /*:String*/, options /*:Object*/) /*:String*/ {
//check cookie name
if (!YAHOO.lang.isString(name) || name === ""){
throw new TypeError("Cookie.remove(): Cookie name must be a non-empty string.");
}
//set options
options = options || {};
options.expires = new Date(0);
//set cookie
return this.set(name, "", options);
},
/**
* Sets a cookie with a given name and value.
* @param {String} name The name of the cookie to set.
* @param {Variant} value The value to set for the cookie.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method set
* @static
*/
set : function (name /*:String*/, value /*:Variant*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name)){
throw new TypeError("Cookie.set(): Cookie name must be a string.");
}
if (lang.isUndefined(value)){
throw new TypeError("Cookie.set(): Value cannot be undefined.");
}
var text /*:String*/ = this._createCookieString(name, value, true, options);
document.cookie = text;
return text;
},
/**
* Sets a sub cookie with a given name to a particular value.
* @param {String} name The name of the cookie to set.
* @param {String} subName The name of the subcookie to set.
* @param {Variant} value The value to set.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method setSub
* @static
*/
setSub : function (name /*:String*/, subName /*:String*/, value /*:Variant*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name) || name === ""){
throw new TypeError("Cookie.setSub(): Cookie name must be a non-empty string.");
}
if (!lang.isString(subName) || subName === ""){
throw new TypeError("Cookie.setSub(): Subcookie name must be a non-empty string.");
}
if (lang.isUndefined(value)){
throw new TypeError("Cookie.setSub(): Subcookie value cannot be undefined.");
}
var hash /*:Object*/ = this.getSubs(name);
if (!lang.isObject(hash)){
hash = new Object();
}
hash[subName] = value;
return this.setSubs(name, hash, options);
},
/**
* Sets a cookie with a given name to contain a hash of name-value pairs.
* @param {String} name The name of the cookie to set.
* @param {Object} value An object containing name-value pairs.
* @param {Object} options (Optional) An object containing one or more
* cookie options: path (a string), domain (a string), expires (a Date object),
* and secure (true/false).
* @return {String} The created cookie string.
* @method setSubs
* @static
*/
setSubs : function (name /*:String*/, value /*:Object*/, options /*:Object*/) /*:String*/ {
var lang = YAHOO.lang;
if (!lang.isString(name)){
throw new TypeError("Cookie.setSubs(): Cookie name must be a string.");
}
if (!lang.isObject(value)){
throw new TypeError("Cookie.setSubs(): Cookie value must be an object.");
}
var text /*:String*/ = this._createCookieString(name, this._createCookieHashString(value), false, options);
document.cookie = text;
return text;
}
};
YAHOO.register("cookie", YAHOO.util.Cookie, {version: "2.5.0", build: "895"});
+63
View File
@@ -1,5 +1,61 @@
DataSource Release Notes
**** version 2.5.0 ****
* doBeforeCallback() - The second argument is now oFullResponse rather than oRawResponse.
* handleResponse() -
o oCallback is now an object literal pointing to success and failure
handlers and can contain scope and argument values.
o The oCaller argument is now deprecated.
o When callback function is passed oRequest and oParsedResponse values,
the oParsedResponse object now consistently returns the following values:
+ tId (Number)
+ results (Array)
+ error (Boolean)
+ totalResults (Number) (when available)
* makeConnection() -
o oCallback is now an object literal pointing to success and failure
handlers and can contain scope and argument values.
o The oCaller argument is now deprecated.
* parseArrayData() - The second argument is now oFullResponse rather than oRawResponse.
* parseHTMLTableData() - The second argument is now oFullResponse rather than oRawResponse.
* parseJsonData() - The second argument is now oFullResponse rather than oRawResponse.
* parseTextData() - The second argument is now oFullResponse rather than oRawResponse.
* parseXMLData() - The second argument is now oFullResponse rather than oRawResponse.
* sendRequest() -
o oCallback is now an object literal pointing to success and failure
handlers and can contain scope and argument values.
o The oCaller argument is now deprecated.
* setInterval() -
o oCallback is now an object literal pointing to success and failure
handlers and can contain scope and argument values.
o The oCaller argument is now deprecated.
* cacheRequestEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* dataErrorEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* getCachedResponseEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* requestEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* responseCacheEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* responseEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
* responseParseEvent - oArgs.caller is now deprecated in favor of oCallback object literal.
**** version 2.4.0 ****
* Support for YUI JSON Utility.
* Implemented setInterval(), clearInterval(), and clearAllIntervals() for polling.
* Text data parsing algorithm now tolerates newlines within and at the end of data.
**** version 2.3.1 ****
* No changes.
**** version 2.3.0 ****
* DataSource requests over XHR no longer automatically insert a "?" in the URIs
@@ -17,6 +73,13 @@ These are executed in the scope of the DataSource instance.
"cancelStaleRequests"
"ignoreStaleResponses"
* Added property connMethodPost to support POST requests.
* The parsed response object passed to the callback function now has the
following properties:
tId {Number} Unique transaction ID
results {Array} Array of parsed data results
error {Boolean} True if there was an error
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+813 -379
View File
File diff suppressed because it is too large Load Diff
+96
View File
@@ -1,5 +1,101 @@
DataTable Release Notes
*** version 2.5.0 ***
* Introduced YAHOO.widget.Paginator to manage pagination.
* Introduced YAHOO.util.Chain to allow for progressive rendering.
Removed APIs
* CLASS_SCROLLBODY
* CLASS_TABLE
* getTableEl()
Changed APIs
* doBeforeLoadData(sRequest, oResponse, oPayload) - oResponse is now the converted full response (typed JSON or XML as appropriate). oPayload is now an optional data payload implementer can pass in to DataSource.sendRequest via the callback object literal.
* formatCell() - The first argument, elCell, is now a reference to the cell liner element rather than the TD itself.
* onDataReturnAppendRows(sRequest, oResponse, oPayload) - oResponse is now the converted full response (typed JSON or XML as appropriate). oPayload is now an optional data payload implementer can pass in to DataSource.sendRequest via the callback object literal.
* onDataReturnInitializeTable(sRequest, oResponse, oPayload) - oResponse is now the converted full response (typed JSON or XML as appropriate). oPayload is now an optional data payload implementer can pass in to DataSource.sendRequest via the callback object literal.
* onDataReturnInsertRows(sRequest, oResponse, oPayload) - oResponse is now the converted full response (typed JSON or XML as appropriate). oPayload is now an optional data payload implementer can pass in to DataSource.sendRequest via the callback object literal.
* paginator - Should now be an instance of YAHOO.widget.Paginator.
* sortedBy.dir - Use CLASS_ASC or CLASS_DESC instead of "asc" and "desc" strings.
* Scrolling must be enabled via the configs "scrollable", "width", and "height". CSS should no longer be used to set width or height on scrollable tables.
Deprecated APIs
* formatPaginatorDropdown() - Use new Paginator class.
* formatPaginatorLinks() - Use new Paginator class.
* formatPaginators() - Use new Paginator class.
* refreshView() - Use render().
* showPage() - Use new Paginator class.
* updatePaginator() - Use new Paginator class.
* headerCellClickEvent - Use theadCellClickEvent.
* headerCellDblclickEvent - Use theadCellDblclickEvent.
* headerCellMousedownEvent - Use theadCellMousedownEvent.
* headerCellMouseoutEvent - Use theadCellMouseoutEvent.
* headerCellMouseoverEvent - Use theadCellMouseoverEvent.
* headerLabelClickEvent - Use theadLabelClickEvent.
* headerLabelDblclickEvent - Use theadLabelDblclickEvent.
* headerLabelMousedownEvent - Use theadLabelMousedownEvent.
* headerLabelMouseoutEvent - Use theadLabelMouseoutEvent.
* headerLabelMouseoverEvent - Use theadLabelMouseoverEvent.
* headerRowClickEvent - Use theadRowClickEvent.
* headerRowDblclickEvent - Use theadRowDblclickEvent.
* headerRowMousedownEvent - Use theadRowMousedownEvent.
* headerRowMouseoutEvent - Use theadRowMouseoutEvent.
* headerRowMouseoverEvent - Use theadRowMouseoverEvent.
* refreshEvent - Use renderEvent.
* paginated - No longer used, as long as "paginator" value is an instance of Paginator class.
RecordSet
* updateKey() - Use updateRecordValue().
* keyUpdateEvent - Use recordValueUpdateEvent.
Column
* width - Must now be a number. Strings will be ignored.
* sortOptions.defaultOrder - Use sortOptions.defaultDir, and use CLASS_ASC or CLASS_DESC instead of "asc" and "desc" strings.
*** version 2.4.0 ***
* No changes.
*** version 2.3.1 ***
* For better support of resizeable Columns, the following core CSS changes have been
made:
- applied "table-layout:fixed" to TABLE elements
- removed "overflow:hidden" from TH and TD elements
- removed "white-space:nowrap" from TD elements
As a result, implementers may notice a change in the widths of their rendered
DataTables, which should be resolved by setting widths explicitly via CSS or
your Column definitions.
* Selection model issues have been addressed by clearing up ambiguous ID and
index usage. Record instances are now assigned globally unique and immutable ID
strings (no longer numbers). Record indexes are numbers that are mutable in order
to represent Record order within a RecordSet instance. TR elements are assigned
DOM ID strings that are *unrelated* to Record instance IDs and Record indexes. Be
aware that DOM element IDs will get reused when sorting and paginating. Furthermore,
Column instances are assigned globally unique and immutable ID strings
(no longer numbers). Column indexes are numbers that are mutable and represent
Column order within a ColumnSet instance. Please refer to the API documentation
for details on when to use Record/Column instance IDs, DOM element IDs, and
Record/Column index numbers.
* Enabling row or cell selection no longer breaks clicks on links and form elements.
*** version 2.3.0 ***
* DataSource requests over XHR no longer automatically insert a "?" in the URIs
+73 -44
View File
@@ -1,48 +1,77 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/*foundational css*/
.yui-dt-table th, .yui-dt-table td {
overflow:hidden;
}
th .yui-dt-header {
position:relative;
}
th .yui-dt-label {
position:relative;
}
th .yui-dt-resizer {
position:absolute;
margin-right:-6px;
right:0;
bottom:0;
width:6px;
height:100%;
cursor:w-resize;
cursor:col-resize;
}
/* foundational scrolling css */
.yui-dt-scrollable {
*overflow-y:auto; /* for ie */
}
.yui-dt-scrollable thead {
display:block; /* for safari and opera */
}
.yui-dt-scrollable thead tr {
position:relative; /* for ie */
}
.yui-dt-scrollbody {
display:block; /* for safari and opera */
overflow:auto; /* for gecko */
}
.yui-dt-editor {
position:absolute;z-index:9000;
}
/* foundational CSS */
.yui-dt {
border:1px solid transparent;
}
.yui-dt-noop {
border:none;
}
.yui-dt-liner {
overflow:hidden;
}
/* a11y headers */
.yui-dt-bd thead tr, .yui-dt-bd thead th {
position:absolute;
left:-1500px;
}
/* draggable columns */
.yui-dt-draggable {
cursor: move;
}
.yui-dt-coltarget {
position: absolute;
z-index: 999;
}
/* resizeable columns */
.yui-dt-hd {
zoom:1;
}
th.yui-dt-resizeable .yui-dt-liner {
position:relative;
}
.yui-dt-resizer {
position:absolute;
right:0;
bottom:0;
height:100%;
cursor:e-resize;
cursor:col-resize;
}
.yui-dt-resizerproxy {
visibility:hidden;
position:absolute;
z-index:9000;
}
/* hidden columns */
.yui-skin-sam th.yui-dt-hidden .yui-dt-liner,
.yui-skin-sam td.yui-dt-hidden .yui-dt-liner {
margin:0;
padding:0;
overflow:hidden;
white-space:nowrap;
}
/* vertical and horizontal scrolling */
.yui-dt-scrollable .yui-dt-bd {
overflow:auto;
}
.yui-dt-scrollable .yui-dt-hd {
overflow:hidden;
position:relative; /* for ie overflow bug http://rowanw.com/bugs/overflow_relative.htm */
}
/* editing */
.yui-dt-editor {
position:absolute;z-index:9000;
}
+45 -45
View File
@@ -1,49 +1,49 @@
/*
Copyright (c) 2007, Yahoo! Inc. All rights reserved.
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.net/yui/license.txt
version: 2.3.0
version: 2.5.0
*/
/*foundational css*/
.yui-dt-table th, .yui-dt-table td {
overflow:hidden;
}
th .yui-dt-header {
position:relative;
}
th .yui-dt-label {
position:relative;
border-right:10px;
}
th .yui-dt-resizer {
position:absolute;
margin-right:-6px;
right:0;
bottom:0;
width:6px;
height:100%;
cursor:w-resize;
cursor:col-resize;
}
/* foundational scrolling css */
.yui-dt-scrollable {
*overflow-y:auto; /* for ie */
}
.yui-dt-scrollable thead {
display:block; /* for safari and opera */
}
.yui-dt-scrollable thead tr {
position:relative; /* for ie */
}
.yui-dt-scrollbody {
display:block; /* for safari and opera */
overflow:auto; /* for gecko */
}
.yui-dt-editor {
position:absolute;
}
/*foundational css*/
.yui-dt-table th, .yui-dt-table td {
overflow:hidden;
}
th .yui-dt-header {
position:relative;
}
th .yui-dt-label {
position:relative;
border-right:10px;
}
th .yui-dt-resizer {
position:absolute;
margin-right:-6px;
right:0;
bottom:0;
width:6px;
height:100%;
cursor:w-resize;
cursor:col-resize;
}
/* foundational scrolling css */
.yui-dt-scrollable {
*overflow-y:auto; /* for ie */
}
.yui-dt-scrollable thead {
display:block; /* for safari and opera */
}
.yui-dt-scrollable thead tr {
position:relative; /* for ie */
}
.yui-dt-scrollbody {
display:block; /* for safari and opera */
overflow:auto; /* for gecko */
}
.yui-dt-editor {
position:absolute;
}

Some files were not shown because too many files have changed in this diff Show More