var $E = YAHOO.util.Event;
var $D = YAHOO.util.Dom;
var $  = $D.get;

/**
 * 強化 YUI Overlay 物件的 bringToTop() 方法。
 * 使用 UIUtils 的 getTopZIndex() 方法來達到將 Overlay 物件帶到
 * 畫面最上端效果。
 * 
 * 關聯的套件：
 *     ．BaseJS
 *       ．ui/UIUtils.js   --> getTopZIndex()
 *       
 *     ．YUI
 *       ．container-min.js --> YAHOO.widget.Overlay
 *       
 *  @author Camus Chou
 *  @since 2.0.1
 */
YAHOO.widget.Overlay.prototype.forceBringToTop = function() {
	//var maxZIndex = UIUtils.getTopZIndex();
	var maxZIndex = 10000;
	/*
	 *  若畫面上的 zIndex 值大於 element 的 zIndex 值才做設定，如此可以
	 *  避免 zIndex 值越設越大的情況
	 */
	if (this.element.style.zIndex < maxZIndex) {
		if (this.iframe != null) {
			this.iframe.style.zIndex = maxZIndex + 1;
		}
		if (this.mask != null) {
			this.mask.style.zIndex = maxZIndex + 1;
		}
		/*
		 * 考量到在 firefox 中，mask 無法遮蓋掉 zIndex 相同的
		 * tag，而 mask 的 zIndex 值又會自動用 element 的 zIndex
		 * 減 1，因此特地將 element 的 zIndex 設成目前畫面上最大 zIndex
		 * 值 +2。 
		 */
		this.element.style.zIndex = maxZIndex + 2;
	}
}
