﻿/*
Watermark v3.0.6 (June 21, 2010) plugin for jQuery
http://jquery-watermark.googlecode.com/
Copyright (c) 2009-2010 Todd Northrop
http://www.speednet.biz/
Dual licensed under the MIT or GPL Version 2 licenses.
*/
(function (b) { var l = "function", j = "password", d = "maxLength", f = "type", c = true, a = "", e = false, t = "watermark", u, m = t, i = "watermarkClass", q = "watermarkFocus", k = "watermarkSubmit", o = "watermarkMaxLength", h = "watermarkPassword", g = "watermarkText", s = ":data(" + m + ")", n = ":text,:password,:search,textarea", p = ["Page_ClientValidate"], r = e; b.extend(b.expr[":"], { search: function (b) { return "search" === (b.type || a) }, data: function (g, i, h) { var f, d = /^((?:[^=!^$*]|[!^$*](?!=))+)(?:([!^$*]?=)(.*))?$/.exec(h[3]); if (d) { f = b(g).data(d[1]); if (f !== u) { if (d[2]) { f = a + f; switch (d[2]) { case "=": return f == d[3]; case "!=": return f != d[3]; case "^=": return f.slice(0, d[3].length) == d[3]; case "$=": return f.slice(-d[3].length) == d[3]; case "*=": return f.indexOf(d[3]) !== -1 } } return c } } return e } }); b.watermark = { version: "3.0.6", options: { className: t, useNative: c }, hide: function (a) { b(a).filter(s).each(function () { b.watermark._hide(b(this)) }) }, _hide: function (b, n) { var m = b.val() || a, k = b.data(g) || a, l = b.data(o) || 0, j = b.data(i); if (k.length && m == k) { b.val(a); if (b.data(h)) if ((b.attr(f) || a) === "text") { var e = b.data(h) || [], c = b.parent() || []; if (e.length && c.length) { c[0].removeChild(b[0]); c[0].appendChild(e[0]); b = e } } if (l) { b.attr(d, l); b.removeData(o) } if (n) { b.attr("autocomplete", "off"); window.setTimeout(function () { b.select() }, 1) } } j && b.removeClass(j) }, show: function (a) { b(a).filter(s).each(function () { b.watermark._show(b(this)) }) }, _show: function (e) { var t = e.val() || a, k = e.data(g) || a, p = e.attr(f) || a, s = e.data(i); if ((t.length == 0 || t == k) && !e.data(q)) { r = c; if (e.data(h)) if (p === j) { var n = e.data(h) || [], m = e.parent() || []; if (n.length && m.length) { m[0].removeChild(e[0]); m[0].appendChild(n[0]); e = n; e.attr(d, k.length) } } if (p === "text" || p === "search") { var l = e.attr(d) || 0; if (l > 0 && k.length > l) { e.data(o, l); e.attr(d, k.length) } } s && e.addClass(s); e.val(k) } else b.watermark._hide(e) }, hideAll: function () { if (r) { b.watermark.hide(n); r = e } }, showAll: function () { b.watermark.show(n) } }; b.fn.watermark = function (r, o) { var p = "string"; if (!this.length) return this; var s = e, t = typeof r === p; if (typeof o === "object") { s = typeof o.className === p; o = b.extend({}, b.watermark.options, o) } else if (typeof o === p) { s = c; o = b.extend({}, b.watermark.options, { className: o }) } else o = b.watermark.options; if (typeof o.useNative !== l) o.useNative = o.useNative ? function () { return c } : function () { return e }; return this.each(function () { var v = "dragleave", u = "dragenter", x = this, e = b(x); if (!e.is(n)) return; if (e.data(m)) { if (t || s) { b.watermark._hide(e); t && e.data(g, r); s && e.data(i, o.className) } } else { if (o.useNative.call(x, e)) if ((a + e.css("-webkit-appearance")).replace("undefined", a) !== a && (e.attr("tagName") || a) !== "TEXTAREA") { t && e.attr("placeholder", r); return } e.data(g, t ? r : a); e.data(i, o.className); e.data(m, 1); if ((e.attr(f) || a) === j) { var y = e.wrap("<span>").parent(), l = b(y.html().replace(/type=["']?password["']?/i, 'type="text"')); l.data(g, e.data(g)); l.data(i, e.data(i)); l.data(m, 1); l.attr(d, r.length); l.focus(function () { b.watermark._hide(l, c) }).bind(u, function () { b.watermark._hide(l) }).bind("dragend", function () { window.setTimeout(function () { l.blur() }, 1) }); e.blur(function () { b.watermark._show(e) }).bind(v, function () { b.watermark._show(e) }); l.data(h, e); e.data(h, l) } else e.focus(function () { e.data(q, 1); b.watermark._hide(e, c) }).blur(function () { e.data(q, 0); b.watermark._show(e) }).bind(u, function () { b.watermark._hide(e) }).bind(v, function () { b.watermark._show(e) }).bind("dragend", function () { window.setTimeout(function () { b.watermark._show(e) }, 1) }).bind("drop", function (c) { var b = c.originalEvent.dataTransfer.getData("Text"); e.val().replace(b, a) === e.data(g) && e.val(b); e.focus() }); if (x.form) { var p = x.form, w = b(p); if (!w.data(k)) { w.submit(b.watermark.hideAll); if (p.submit) { w.data(k, p.submit); p.submit = function (c, a) { return function () { var d = a.data(k); b.watermark.hideAll(); if (d.apply) d.apply(c, Array.prototype.slice.call(arguments)); else d() } } (p, w) } else { w.data(k, 1); p.submit = function (a) { return function () { b.watermark.hideAll(); delete a.submit; a.submit() } } (p) } } } } b.watermark._show(e) }) }; p.length && b(function () { for (var a, c, d = p.length - 1; d >= 0; d--) { a = p[d]; c = window[a]; if (typeof c === l) window[a] = function (a) { return function () { b.watermark.hideAll(); return a.apply(null, Array.prototype.slice.call(arguments)) } } (c) } }) })(jQuery);
