/**
* jQuery EasyUI 1.3.6
*
* Copyright (c) 2009-2014 www.jeasyui.com. All rights reserved.
*
* Licensed under the GPL license: http://www.gnu.org/licenses/gpl.txt
* To use it on other terms please contact us at info@jeasyui.com
*
*/
(function ($) {
function _1(_2) {
$(_2).addClass("searchbox-f").hide();
var _3 = $("").insertAfter(_2);
var _4 = $("").appendTo(_3);
$("").appendTo(_3);
var _5 = $(_2).attr("name");
if (_5) {
_4.attr("name", _5);
$(_2).removeAttr("name").attr("searchboxName", _5);
}
return _3;
};
function _6(_7, _8) {
var _9 = $.data(_7, "searchbox").options;
var sb = $.data(_7, "searchbox").searchbox;
if (_8) {
_9.width = _8;
}
sb.appendTo("body");
if (isNaN(_9.width)) {
_9.width = sb._outerWidth();
}
var _a = sb.find("span.searchbox-button");
var _b = sb.find("a.searchbox-menu");
var _c = sb.find("input.searchbox-text");
sb._outerWidth(_9.width)._outerHeight(_9.height);
_c._outerWidth(sb.width() - _b._outerWidth() - _a._outerWidth());
_c.css({ height: sb.height() + "px", lineHeight: sb.height() + "px" });
_b._outerHeight(sb.height());
_a._outerHeight(sb.height());
var _d = _b.find("span.l-btn-left");
_d._outerHeight(sb.height());
_d.find("span.l-btn-text").css({ height: _d.height() + "px", lineHeight: _d.height() + "px" });
sb.insertAfter(_7);
};
function _e(_f) {
var _10 = $.data(_f, "searchbox");
var _11 = _10.options;
if (_11.menu) {
_10.menu = $(_11.menu).menu({
onClick: function (_12) {
_13(_12);
}
});
var _14 = _10.menu.children("div.menu-item:first");
_10.menu.children("div.menu-item").each(function () {
var _15 = $.extend({}, $.parser.parseOptions(this), { selected: ($(this).attr("selected") ? true : undefined) });
if (_15.selected) {
_14 = $(this);
return false;
}
});
_14.triggerHandler("click");
} else {
_10.searchbox.find("a.searchbox-menu").remove();
_10.menu = null;
}
function _13(_16) {
_10.searchbox.find("a.searchbox-menu").remove();
var mb = $("").html(_16.text);
mb.prependTo(_10.searchbox).menubutton({ menu: _10.menu, iconCls: _16.iconCls });
_10.searchbox.find("input.searchbox-text").attr("name", _16.name || _16.text);
_6(_f);
};
};
function _17(_18) {
var _19 = $.data(_18, "searchbox");
var _1a = _19.options;
var _1b = _19.searchbox.find("input.searchbox-text");
var _1c = _19.searchbox.find(".searchbox-button");
_1b.unbind(".searchbox");
_1c.unbind(".searchbox");
if (!_1a.disabled) {
_1b.bind("blur.searchbox", function (e) {
_1a.value = $(this).val();
if (_1a.value == "") {
$(this).val(_1a.prompt);
$(this).addClass("searchbox-prompt");
} else {
$(this).removeClass("searchbox-prompt");
}
}).bind("focus.searchbox", function (e) {
if ($(this).val() != _1a.value) {
$(this).val(_1a.value);
}
$(this).removeClass("searchbox-prompt");
}).bind("keydown.searchbox", function (e) {
if (e.keyCode == 13) {
e.preventDefault();
_1a.value = $(this).val();
_1a.searcher.call(_18, _1a.value, _1b._propAttr("name"));
return false;
}
});
_1c.bind("click.searchbox", function () {
_1a.searcher.call(_18, _1a.value, _1b._propAttr("name"));
}).bind("mouseenter.searchbox", function () {
$(this).addClass("searchbox-button-hover");
}).bind("mouseleave.searchbox", function () {
$(this).removeClass("searchbox-button-hover");
});
}
};
function _1d(_1e, _1f) {
var _20 = $.data(_1e, "searchbox");
var _21 = _20.options;
var _22 = _20.searchbox.find("input.searchbox-text");
var mb = _20.searchbox.find("a.searchbox-menu");
if (_1f) {
_21.disabled = true;
$(_1e).attr("disabled", true);
_22.attr("disabled", true);
if (mb.length) {
mb.menubutton("disable");
}
} else {
_21.disabled = false;
$(_1e).removeAttr("disabled");
_22.removeAttr("disabled");
if (mb.length) {
mb.menubutton("enable");
}
}
};
function _23(_24) {
var _25 = $.data(_24, "searchbox");
var _26 = _25.options;
var _27 = _25.searchbox.find("input.searchbox-text");
_26.originalValue = _26.value;
if (_26.value) {
_27.val(_26.value);
_27.removeClass("searchbox-prompt");
} else {
_27.val(_26.prompt);
_27.addClass("searchbox-prompt");
}
};
$.fn.searchbox = function (_28, _29) {
if (typeof _28 == "string") {
return $.fn.searchbox.methods[_28](this, _29);
}
_28 = _28 || {};
return this.each(function () {
var _2a = $.data(this, "searchbox");
if (_2a) {
$.extend(_2a.options, _28);
} else {
_2a = $.data(this, "searchbox", { options: $.extend({}, $.fn.searchbox.defaults, $.fn.searchbox.parseOptions(this), _28), searchbox: _1(this) });
}
_e(this);
_23(this);
_17(this);
_1d(this, _2a.options.disabled);
_6(this);
});
};
$.fn.searchbox.methods = {
options: function (jq) {
return $.data(jq[0], "searchbox").options;
}, menu: function (jq) {
return $.data(jq[0], "searchbox").menu;
}, textbox: function (jq) {
return $.data(jq[0], "searchbox").searchbox.find("input.searchbox-text");
}, getValue: function (jq) {
return $.data(jq[0], "searchbox").options.value;
}, setValue: function (jq, _2b) {
return jq.each(function () {
$(this).searchbox("options").value = _2b;
$(this).searchbox("textbox").val(_2b);
$(this).searchbox("textbox").blur();
});
}, clear: function (jq) {
return jq.each(function () {
$(this).searchbox("setValue", "");
});
}, reset: function (jq) {
return jq.each(function () {
var _2c = $(this).searchbox("options");
$(this).searchbox("setValue", _2c.originalValue);
});
}, getName: function (jq) {
return $.data(jq[0], "searchbox").searchbox.find("input.searchbox-text").attr("name");
}, selectName: function (jq, _2d) {
return jq.each(function () {
var _2e = $.data(this, "searchbox").menu;
if (_2e) {
_2e.children("div.menu-item[name=\"" + _2d + "\"]").triggerHandler("click");
}
});
}, destroy: function (jq) {
return jq.each(function () {
var _2f = $(this).searchbox("menu");
if (_2f) {
_2f.menu("destroy");
}
$.data(this, "searchbox").searchbox.remove();
$(this).remove();
});
}, resize: function (jq, _30) {
return jq.each(function () {
_6(this, _30);
});
}, disable: function (jq) {
return jq.each(function () {
_1d(this, true);
_17(this);
});
}, enable: function (jq) {
return jq.each(function () {
_1d(this, false);
_17(this);
});
}
};
$.fn.searchbox.parseOptions = function (_31) {
var t = $(_31);
return $.extend({}, $.parser.parseOptions(_31, ["width", "height", "prompt", "menu"]), { value: (t.val() || undefined), disabled: (t.attr("disabled") ? true : undefined), searcher: (t.attr("searcher") ? eval(t.attr("searcher")) : undefined) });
};
$.fn.searchbox.defaults = {
width: "auto", height: 22, prompt: "", value: "", menu: null, disabled: false, searcher: function (_32, _33) {
}
};
})(jQuery);