~hanspayer/+junk/kobersdorf

« back to all changes in this revision

Viewing changes to static/treebeard/jquery-ui-1.8.5.custom.min.js

  • Committer: Payer Hans-Christian
  • Date: 2016-03-29 20:18:05 UTC
  • Revision ID: hans@net-so.org-20160329201805-cs2re2zwb7svwje4
base template working

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*!
 
2
 * jQuery UI 1.8.5
 
3
 *
 
4
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
5
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
6
 * http://jquery.org/license
 
7
 *
 
8
 * http://docs.jquery.com/UI
 
9
 */
 
10
(function (c, j) {
 
11
    function k(a) {
 
12
        return!c(a).parents().andSelf().filter(function () {
 
13
            return c.curCSS(this, "visibility") === "hidden" || c.expr.filters.hidden(this)
 
14
        }).length
 
15
    }
 
16
 
 
17
    c.ui = c.ui || {};
 
18
    if (!c.ui.version) {
 
19
        c.extend(c.ui, {version: "1.8.5", keyCode: {ALT: 18, BACKSPACE: 8, CAPS_LOCK: 20, COMMA: 188, COMMAND: 91, COMMAND_LEFT: 91, COMMAND_RIGHT: 93, CONTROL: 17, DELETE: 46, DOWN: 40, END: 35, ENTER: 13, ESCAPE: 27, HOME: 36, INSERT: 45, LEFT: 37, MENU: 93, NUMPAD_ADD: 107, NUMPAD_DECIMAL: 110, NUMPAD_DIVIDE: 111, NUMPAD_ENTER: 108, NUMPAD_MULTIPLY: 106,
 
20
            NUMPAD_SUBTRACT: 109, PAGE_DOWN: 34, PAGE_UP: 33, PERIOD: 190, RIGHT: 39, SHIFT: 16, SPACE: 32, TAB: 9, UP: 38, WINDOWS: 91}});
 
21
        c.fn.extend({_focus: c.fn.focus, focus: function (a, b) {
 
22
            return typeof a === "number" ? this.each(function () {
 
23
                var d = this;
 
24
                setTimeout(function () {
 
25
                    c(d).focus();
 
26
                    b && b.call(d)
 
27
                }, a)
 
28
            }) : this._focus.apply(this, arguments)
 
29
        }, scrollParent: function () {
 
30
            var a;
 
31
            a = c.browser.msie && /(static|relative)/.test(this.css("position")) || /absolute/.test(this.css("position")) ? this.parents().filter(function () {
 
32
                return/(relative|absolute|fixed)/.test(c.curCSS(this,
 
33
                    "position", 1)) && /(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x", 1))
 
34
            }).eq(0) : this.parents().filter(function () {
 
35
                return/(auto|scroll)/.test(c.curCSS(this, "overflow", 1) + c.curCSS(this, "overflow-y", 1) + c.curCSS(this, "overflow-x", 1))
 
36
            }).eq(0);
 
37
            return/fixed/.test(this.css("position")) || !a.length ? c(document) : a
 
38
        }, zIndex: function (a) {
 
39
            if (a !== j)return this.css("zIndex", a);
 
40
            if (this.length) {
 
41
                a = c(this[0]);
 
42
                for (var b; a.length && a[0] !== document;) {
 
43
                    b = a.css("position");
 
44
                    if (b === "absolute" || b === "relative" || b === "fixed") {
 
45
                        b = parseInt(a.css("zIndex"));
 
46
                        if (!isNaN(b) && b != 0)return b
 
47
                    }
 
48
                    a = a.parent()
 
49
                }
 
50
            }
 
51
            return 0
 
52
        }, disableSelection: function () {
 
53
            return this.bind("mousedown.ui-disableSelection selectstart.ui-disableSelection", function (a) {
 
54
                a.preventDefault()
 
55
            })
 
56
        }, enableSelection: function () {
 
57
            return this.unbind(".ui-disableSelection")
 
58
        }});
 
59
        c.each(["Width", "Height"], function (a, b) {
 
60
            function d(f, g, l, m) {
 
61
                c.each(e, function () {
 
62
                    g -= parseFloat(c.curCSS(f, "padding" + this, true)) || 0;
 
63
                    if (l)g -= parseFloat(c.curCSS(f,
 
64
                        "border" + this + "Width", true)) || 0;
 
65
                    if (m)g -= parseFloat(c.curCSS(f, "margin" + this, true)) || 0
 
66
                });
 
67
                return g
 
68
            }
 
69
 
 
70
            var e = b === "Width" ? ["Left", "Right"] : ["Top", "Bottom"], h = b.toLowerCase(), i = {innerWidth: c.fn.innerWidth, innerHeight: c.fn.innerHeight, outerWidth: c.fn.outerWidth, outerHeight: c.fn.outerHeight};
 
71
            c.fn["inner" + b] = function (f) {
 
72
                if (f === j)return i["inner" + b].call(this);
 
73
                return this.each(function () {
 
74
                    c.style(this, h, d(this, f) + "px")
 
75
                })
 
76
            };
 
77
            c.fn["outer" + b] = function (f, g) {
 
78
                if (typeof f !== "number")return i["outer" + b].call(this, f);
 
79
                return this.each(function () {
 
80
                    c.style(this,
 
81
                        h, d(this, f, true, g) + "px")
 
82
                })
 
83
            }
 
84
        });
 
85
        c.extend(c.expr[":"], {data: function (a, b, d) {
 
86
            return!!c.data(a, d[3])
 
87
        }, focusable: function (a) {
 
88
            var b = a.nodeName.toLowerCase(), d = c.attr(a, "tabindex");
 
89
            if ("area" === b) {
 
90
                b = a.parentNode;
 
91
                d = b.name;
 
92
                if (!a.href || !d || b.nodeName.toLowerCase() !== "map")return false;
 
93
                a = c("img[usemap=#" + d + "]")[0];
 
94
                return!!a && k(a)
 
95
            }
 
96
            return(/input|select|textarea|button|object/.test(b) ? !a.disabled : "a" == b ? a.href || !isNaN(d) : !isNaN(d)) && k(a)
 
97
        }, tabbable: function (a) {
 
98
            var b = c.attr(a, "tabindex");
 
99
            return(isNaN(b) || b >= 0) && c(a).is(":focusable")
 
100
        }});
 
101
        c(function () {
 
102
            var a = document.createElement("div"), b = document.body;
 
103
            c.extend(a.style, {minHeight: "100px", height: "auto", padding: 0, borderWidth: 0});
 
104
            c.support.minHeight = b.appendChild(a).offsetHeight === 100;
 
105
            b.removeChild(a).style.display = "none"
 
106
        });
 
107
        c.extend(c.ui, {plugin: {add: function (a, b, d) {
 
108
            a = c.ui[a].prototype;
 
109
            for (var e in d) {
 
110
                a.plugins[e] = a.plugins[e] || [];
 
111
                a.plugins[e].push([b, d[e]])
 
112
            }
 
113
        }, call: function (a, b, d) {
 
114
            if ((b = a.plugins[b]) && a.element[0].parentNode)for (var e = 0; e < b.length; e++)a.options[b[e][0]] && b[e][1].apply(a.element,
 
115
                d)
 
116
        }}, contains: function (a, b) {
 
117
            return document.compareDocumentPosition ? a.compareDocumentPosition(b) & 16 : a !== b && a.contains(b)
 
118
        }, hasScroll: function (a, b) {
 
119
            if (c(a).css("overflow") === "hidden")return false;
 
120
            b = b && b === "left" ? "scrollLeft" : "scrollTop";
 
121
            var d = false;
 
122
            if (a[b] > 0)return true;
 
123
            a[b] = 1;
 
124
            d = a[b] > 0;
 
125
            a[b] = 0;
 
126
            return d
 
127
        }, isOverAxis: function (a, b, d) {
 
128
            return a > b && a < b + d
 
129
        }, isOver: function (a, b, d, e, h, i) {
 
130
            return c.ui.isOverAxis(a, d, h) && c.ui.isOverAxis(b, e, i)
 
131
        }})
 
132
    }
 
133
})(jQuery);
 
134
;
 
135
/*!
 
136
 * jQuery UI Widget 1.8.5
 
137
 *
 
138
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
139
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
140
 * http://jquery.org/license
 
141
 *
 
142
 * http://docs.jquery.com/UI/Widget
 
143
 */
 
144
(function (b, j) {
 
145
    if (b.cleanData) {
 
146
        var k = b.cleanData;
 
147
        b.cleanData = function (a) {
 
148
            for (var c = 0, d; (d = a[c]) != null; c++)b(d).triggerHandler("remove");
 
149
            k(a)
 
150
        }
 
151
    } else {
 
152
        var l = b.fn.remove;
 
153
        b.fn.remove = function (a, c) {
 
154
            return this.each(function () {
 
155
                if (!c)if (!a || b.filter(a, [this]).length)b("*", this).add([this]).each(function () {
 
156
                    b(this).triggerHandler("remove")
 
157
                });
 
158
                return l.call(b(this), a, c)
 
159
            })
 
160
        }
 
161
    }
 
162
    b.widget = function (a, c, d) {
 
163
        var e = a.split(".")[0], f;
 
164
        a = a.split(".")[1];
 
165
        f = e + "-" + a;
 
166
        if (!d) {
 
167
            d = c;
 
168
            c = b.Widget
 
169
        }
 
170
        b.expr[":"][f] = function (h) {
 
171
            return!!b.data(h,
 
172
                a)
 
173
        };
 
174
        b[e] = b[e] || {};
 
175
        b[e][a] = function (h, g) {
 
176
            arguments.length && this._createWidget(h, g)
 
177
        };
 
178
        c = new c;
 
179
        c.options = b.extend(true, {}, c.options);
 
180
        b[e][a].prototype = b.extend(true, c, {namespace: e, widgetName: a, widgetEventPrefix: b[e][a].prototype.widgetEventPrefix || a, widgetBaseClass: f}, d);
 
181
        b.widget.bridge(a, b[e][a])
 
182
    };
 
183
    b.widget.bridge = function (a, c) {
 
184
        b.fn[a] = function (d) {
 
185
            var e = typeof d === "string", f = Array.prototype.slice.call(arguments, 1), h = this;
 
186
            d = !e && f.length ? b.extend.apply(null, [true, d].concat(f)) : d;
 
187
            if (e && d.substring(0, 1) ===
 
188
                "_")return h;
 
189
            e ? this.each(function () {
 
190
                var g = b.data(this, a);
 
191
                if (!g)throw"cannot call methods on " + a + " prior to initialization; attempted to call method '" + d + "'";
 
192
                if (!b.isFunction(g[d]))throw"no such method '" + d + "' for " + a + " widget instance";
 
193
                var i = g[d].apply(g, f);
 
194
                if (i !== g && i !== j) {
 
195
                    h = i;
 
196
                    return false
 
197
                }
 
198
            }) : this.each(function () {
 
199
                var g = b.data(this, a);
 
200
                g ? g.option(d || {})._init() : b.data(this, a, new c(d, this))
 
201
            });
 
202
            return h
 
203
        }
 
204
    };
 
205
    b.Widget = function (a, c) {
 
206
        arguments.length && this._createWidget(a, c)
 
207
    };
 
208
    b.Widget.prototype = {widgetName: "widget",
 
209
        widgetEventPrefix: "", options: {disabled: false}, _createWidget: function (a, c) {
 
210
            b.data(c, this.widgetName, this);
 
211
            this.element = b(c);
 
212
            this.options = b.extend(true, {}, this.options, b.metadata && b.metadata.get(c)[this.widgetName], a);
 
213
            var d = this;
 
214
            this.element.bind("remove." + this.widgetName, function () {
 
215
                d.destroy()
 
216
            });
 
217
            this._create();
 
218
            this._init()
 
219
        }, _create: function () {
 
220
        }, _init: function () {
 
221
        }, destroy: function () {
 
222
            this.element.unbind("." + this.widgetName).removeData(this.widgetName);
 
223
            this.widget().unbind("." + this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass +
 
224
                "-disabled ui-state-disabled")
 
225
        }, widget: function () {
 
226
            return this.element
 
227
        }, option: function (a, c) {
 
228
            var d = a, e = this;
 
229
            if (arguments.length === 0)return b.extend({}, e.options);
 
230
            if (typeof a === "string") {
 
231
                if (c === j)return this.options[a];
 
232
                d = {};
 
233
                d[a] = c
 
234
            }
 
235
            b.each(d, function (f, h) {
 
236
                e._setOption(f, h)
 
237
            });
 
238
            return e
 
239
        }, _setOption: function (a, c) {
 
240
            this.options[a] = c;
 
241
            if (a === "disabled")this.widget()[c ? "addClass" : "removeClass"](this.widgetBaseClass + "-disabled ui-state-disabled").attr("aria-disabled", c);
 
242
            return this
 
243
        }, enable: function () {
 
244
            return this._setOption("disabled",
 
245
                false)
 
246
        }, disable: function () {
 
247
            return this._setOption("disabled", true)
 
248
        }, _trigger: function (a, c, d) {
 
249
            var e = this.options[a];
 
250
            c = b.Event(c);
 
251
            c.type = (a === this.widgetEventPrefix ? a : this.widgetEventPrefix + a).toLowerCase();
 
252
            d = d || {};
 
253
            if (c.originalEvent) {
 
254
                a = b.event.props.length;
 
255
                for (var f; a;) {
 
256
                    f = b.event.props[--a];
 
257
                    c[f] = c.originalEvent[f]
 
258
                }
 
259
            }
 
260
            this.element.trigger(c, d);
 
261
            return!(b.isFunction(e) && e.call(this.element[0], c, d) === false || c.isDefaultPrevented())
 
262
        }}
 
263
})(jQuery);
 
264
;
 
265
/*!
 
266
 * jQuery UI Mouse 1.8.5
 
267
 *
 
268
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
269
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
270
 * http://jquery.org/license
 
271
 *
 
272
 * http://docs.jquery.com/UI/Mouse
 
273
 *
 
274
 * Depends:
 
275
 *      jquery.ui.widget.js
 
276
 */
 
277
(function (c) {
 
278
    c.widget("ui.mouse", {options: {cancel: ":input,option", distance: 1, delay: 0}, _mouseInit: function () {
 
279
        var a = this;
 
280
        this.element.bind("mousedown." + this.widgetName,function (b) {
 
281
            return a._mouseDown(b)
 
282
        }).bind("click." + this.widgetName, function (b) {
 
283
            if (a._preventClickEvent) {
 
284
                a._preventClickEvent = false;
 
285
                b.stopImmediatePropagation();
 
286
                return false
 
287
            }
 
288
        });
 
289
        this.started = false
 
290
    }, _mouseDestroy: function () {
 
291
        this.element.unbind("." + this.widgetName)
 
292
    }, _mouseDown: function (a) {
 
293
        a.originalEvent = a.originalEvent || {};
 
294
        if (!a.originalEvent.mouseHandled) {
 
295
            this._mouseStarted &&
 
296
            this._mouseUp(a);
 
297
            this._mouseDownEvent = a;
 
298
            var b = this, e = a.which == 1, f = typeof this.options.cancel == "string" ? c(a.target).parents().add(a.target).filter(this.options.cancel).length : false;
 
299
            if (!e || f || !this._mouseCapture(a))return true;
 
300
            this.mouseDelayMet = !this.options.delay;
 
301
            if (!this.mouseDelayMet)this._mouseDelayTimer = setTimeout(function () {
 
302
                b.mouseDelayMet = true
 
303
            }, this.options.delay);
 
304
            if (this._mouseDistanceMet(a) && this._mouseDelayMet(a)) {
 
305
                this._mouseStarted = this._mouseStart(a) !== false;
 
306
                if (!this._mouseStarted) {
 
307
                    a.preventDefault();
 
308
                    return true
 
309
                }
 
310
            }
 
311
            this._mouseMoveDelegate = function (d) {
 
312
                return b._mouseMove(d)
 
313
            };
 
314
            this._mouseUpDelegate = function (d) {
 
315
                return b._mouseUp(d)
 
316
            };
 
317
            c(document).bind("mousemove." + this.widgetName, this._mouseMoveDelegate).bind("mouseup." + this.widgetName, this._mouseUpDelegate);
 
318
            c.browser.safari || a.preventDefault();
 
319
            return a.originalEvent.mouseHandled = true
 
320
        }
 
321
    }, _mouseMove: function (a) {
 
322
        if (c.browser.msie && !a.button)return this._mouseUp(a);
 
323
        if (this._mouseStarted) {
 
324
            this._mouseDrag(a);
 
325
            return a.preventDefault()
 
326
        }
 
327
        if (this._mouseDistanceMet(a) &&
 
328
            this._mouseDelayMet(a))(this._mouseStarted = this._mouseStart(this._mouseDownEvent, a) !== false) ? this._mouseDrag(a) : this._mouseUp(a);
 
329
        return!this._mouseStarted
 
330
    }, _mouseUp: function (a) {
 
331
        c(document).unbind("mousemove." + this.widgetName, this._mouseMoveDelegate).unbind("mouseup." + this.widgetName, this._mouseUpDelegate);
 
332
        if (this._mouseStarted) {
 
333
            this._mouseStarted = false;
 
334
            this._preventClickEvent = a.target == this._mouseDownEvent.target;
 
335
            this._mouseStop(a)
 
336
        }
 
337
        return false
 
338
    }, _mouseDistanceMet: function (a) {
 
339
        return Math.max(Math.abs(this._mouseDownEvent.pageX -
 
340
            a.pageX), Math.abs(this._mouseDownEvent.pageY - a.pageY)) >= this.options.distance
 
341
    }, _mouseDelayMet: function () {
 
342
        return this.mouseDelayMet
 
343
    }, _mouseStart: function () {
 
344
    }, _mouseDrag: function () {
 
345
    }, _mouseStop: function () {
 
346
    }, _mouseCapture: function () {
 
347
        return true
 
348
    }})
 
349
})(jQuery);
 
350
;
 
351
/*
 
352
 * jQuery UI Position 1.8.5
 
353
 *
 
354
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
355
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
356
 * http://jquery.org/license
 
357
 *
 
358
 * http://docs.jquery.com/UI/Position
 
359
 */
 
360
(function (c) {
 
361
    c.ui = c.ui || {};
 
362
    var n = /left|center|right/, o = /top|center|bottom/, t = c.fn.position, u = c.fn.offset;
 
363
    c.fn.position = function (b) {
 
364
        if (!b || !b.of)return t.apply(this, arguments);
 
365
        b = c.extend({}, b);
 
366
        var a = c(b.of), d = a[0], g = (b.collision || "flip").split(" "), e = b.offset ? b.offset.split(" ") : [0, 0], h, k, j;
 
367
        if (d.nodeType === 9) {
 
368
            h = a.width();
 
369
            k = a.height();
 
370
            j = {top: 0, left: 0}
 
371
        } else if (d.scrollTo && d.document) {
 
372
            h = a.width();
 
373
            k = a.height();
 
374
            j = {top: a.scrollTop(), left: a.scrollLeft()}
 
375
        } else if (d.preventDefault) {
 
376
            b.at = "left top";
 
377
            h = k = 0;
 
378
            j =
 
379
            {top: b.of.pageY, left: b.of.pageX}
 
380
        } else {
 
381
            h = a.outerWidth();
 
382
            k = a.outerHeight();
 
383
            j = a.offset()
 
384
        }
 
385
        c.each(["my", "at"], function () {
 
386
            var f = (b[this] || "").split(" ");
 
387
            if (f.length === 1)f = n.test(f[0]) ? f.concat(["center"]) : o.test(f[0]) ? ["center"].concat(f) : ["center", "center"];
 
388
            f[0] = n.test(f[0]) ? f[0] : "center";
 
389
            f[1] = o.test(f[1]) ? f[1] : "center";
 
390
            b[this] = f
 
391
        });
 
392
        if (g.length === 1)g[1] = g[0];
 
393
        e[0] = parseInt(e[0], 10) || 0;
 
394
        if (e.length === 1)e[1] = e[0];
 
395
        e[1] = parseInt(e[1], 10) || 0;
 
396
        if (b.at[0] === "right")j.left += h; else if (b.at[0] === "center")j.left += h /
 
397
            2;
 
398
        if (b.at[1] === "bottom")j.top += k; else if (b.at[1] === "center")j.top += k / 2;
 
399
        j.left += e[0];
 
400
        j.top += e[1];
 
401
        return this.each(function () {
 
402
            var f = c(this), l = f.outerWidth(), m = f.outerHeight(), p = parseInt(c.curCSS(this, "marginLeft", true)) || 0, q = parseInt(c.curCSS(this, "marginTop", true)) || 0, v = l + p + parseInt(c.curCSS(this, "marginRight", true)) || 0, w = m + q + parseInt(c.curCSS(this, "marginBottom", true)) || 0, i = c.extend({}, j), r;
 
403
            if (b.my[0] === "right")i.left -= l; else if (b.my[0] === "center")i.left -= l / 2;
 
404
            if (b.my[1] === "bottom")i.top -= m; else if (b.my[1] ===
 
405
                "center")i.top -= m / 2;
 
406
            i.left = parseInt(i.left);
 
407
            i.top = parseInt(i.top);
 
408
            r = {left: i.left - p, top: i.top - q};
 
409
            c.each(["left", "top"], function (s, x) {
 
410
                c.ui.position[g[s]] && c.ui.position[g[s]][x](i, {targetWidth: h, targetHeight: k, elemWidth: l, elemHeight: m, collisionPosition: r, collisionWidth: v, collisionHeight: w, offset: e, my: b.my, at: b.at})
 
411
            });
 
412
            c.fn.bgiframe && f.bgiframe();
 
413
            f.offset(c.extend(i, {using: b.using}))
 
414
        })
 
415
    };
 
416
    c.ui.position = {fit: {left: function (b, a) {
 
417
        var d = c(window);
 
418
        d = a.collisionPosition.left + a.collisionWidth - d.width() - d.scrollLeft();
 
419
        b.left = d > 0 ? b.left - d : Math.max(b.left - a.collisionPosition.left, b.left)
 
420
    }, top: function (b, a) {
 
421
        var d = c(window);
 
422
        d = a.collisionPosition.top + a.collisionHeight - d.height() - d.scrollTop();
 
423
        b.top = d > 0 ? b.top - d : Math.max(b.top - a.collisionPosition.top, b.top)
 
424
    }}, flip: {left: function (b, a) {
 
425
        if (a.at[0] !== "center") {
 
426
            var d = c(window);
 
427
            d = a.collisionPosition.left + a.collisionWidth - d.width() - d.scrollLeft();
 
428
            var g = a.my[0] === "left" ? -a.elemWidth : a.my[0] === "right" ? a.elemWidth : 0, e = a.at[0] === "left" ? a.targetWidth : -a.targetWidth, h = -2 * a.offset[0];
 
429
            b.left += a.collisionPosition.left < 0 ? g + e + h : d > 0 ? g + e + h : 0
 
430
        }
 
431
    }, top: function (b, a) {
 
432
        if (a.at[1] !== "center") {
 
433
            var d = c(window);
 
434
            d = a.collisionPosition.top + a.collisionHeight - d.height() - d.scrollTop();
 
435
            var g = a.my[1] === "top" ? -a.elemHeight : a.my[1] === "bottom" ? a.elemHeight : 0, e = a.at[1] === "top" ? a.targetHeight : -a.targetHeight, h = -2 * a.offset[1];
 
436
            b.top += a.collisionPosition.top < 0 ? g + e + h : d > 0 ? g + e + h : 0
 
437
        }
 
438
    }}};
 
439
    if (!c.offset.setOffset) {
 
440
        c.offset.setOffset = function (b, a) {
 
441
            if (/static/.test(c.curCSS(b, "position")))b.style.position = "relative";
 
442
            var d =
 
443
                c(b), g = d.offset(), e = parseInt(c.curCSS(b, "top", true), 10) || 0, h = parseInt(c.curCSS(b, "left", true), 10) || 0;
 
444
            g = {top: a.top - g.top + e, left: a.left - g.left + h};
 
445
            "using"in a ? a.using.call(b, g) : d.css(g)
 
446
        };
 
447
        c.fn.offset = function (b) {
 
448
            var a = this[0];
 
449
            if (!a || !a.ownerDocument)return null;
 
450
            if (b)return this.each(function () {
 
451
                c.offset.setOffset(this, b)
 
452
            });
 
453
            return u.call(this)
 
454
        }
 
455
    }
 
456
})(jQuery);
 
457
;
 
458
/*
 
459
 * jQuery UI Slider 1.8.5
 
460
 *
 
461
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
462
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
463
 * http://jquery.org/license
 
464
 *
 
465
 * http://docs.jquery.com/UI/Slider
 
466
 *
 
467
 * Depends:
 
468
 *      jquery.ui.core.js
 
469
 *      jquery.ui.mouse.js
 
470
 *      jquery.ui.widget.js
 
471
 */
 
472
(function (d) {
 
473
    d.widget("ui.slider", d.ui.mouse, {widgetEventPrefix: "slide", options: {animate: false, distance: 0, max: 100, min: 0, orientation: "horizontal", range: false, step: 1, value: 0, values: null}, _create: function () {
 
474
        var a = this, b = this.options;
 
475
        this._mouseSliding = this._keySliding = false;
 
476
        this._animateOff = true;
 
477
        this._handleIndex = null;
 
478
        this._detectOrientation();
 
479
        this._mouseInit();
 
480
        this.element.addClass("ui-slider ui-slider-" + this.orientation + " ui-widget ui-widget-content ui-corner-all");
 
481
        b.disabled && this.element.addClass("ui-slider-disabled ui-disabled");
 
482
        this.range = d([]);
 
483
        if (b.range) {
 
484
            if (b.range === true) {
 
485
                this.range = d("<div></div>");
 
486
                if (!b.values)b.values = [this._valueMin(), this._valueMin()];
 
487
                if (b.values.length && b.values.length !== 2)b.values = [b.values[0], b.values[0]]
 
488
            } else this.range = d("<div></div>");
 
489
            this.range.appendTo(this.element).addClass("ui-slider-range");
 
490
            if (b.range === "min" || b.range === "max")this.range.addClass("ui-slider-range-" + b.range);
 
491
            this.range.addClass("ui-widget-header")
 
492
        }
 
493
        d(".ui-slider-handle", this.element).length === 0 && d("<a href='#'></a>").appendTo(this.element).addClass("ui-slider-handle");
 
494
        if (b.values && b.values.length)for (; d(".ui-slider-handle", this.element).length < b.values.length;)d("<a href='#'></a>").appendTo(this.element).addClass("ui-slider-handle");
 
495
        this.handles = d(".ui-slider-handle", this.element).addClass("ui-state-default ui-corner-all");
 
496
        this.handle = this.handles.eq(0);
 
497
        this.handles.add(this.range).filter("a").click(function (c) {
 
498
            c.preventDefault()
 
499
        }).hover(function () {
 
500
            b.disabled || d(this).addClass("ui-state-hover")
 
501
        },function () {
 
502
            d(this).removeClass("ui-state-hover")
 
503
        }).focus(function () {
 
504
            if (b.disabled)d(this).blur();
 
505
            else {
 
506
                d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");
 
507
                d(this).addClass("ui-state-focus")
 
508
            }
 
509
        }).blur(function () {
 
510
                d(this).removeClass("ui-state-focus")
 
511
            });
 
512
        this.handles.each(function (c) {
 
513
            d(this).data("index.ui-slider-handle", c)
 
514
        });
 
515
        this.handles.keydown(function (c) {
 
516
            var e = true, f = d(this).data("index.ui-slider-handle"), h, g, i;
 
517
            if (!a.options.disabled) {
 
518
                switch (c.keyCode) {
 
519
                    case d.ui.keyCode.HOME:
 
520
                    case d.ui.keyCode.END:
 
521
                    case d.ui.keyCode.PAGE_UP:
 
522
                    case d.ui.keyCode.PAGE_DOWN:
 
523
                    case d.ui.keyCode.UP:
 
524
                    case d.ui.keyCode.RIGHT:
 
525
                    case d.ui.keyCode.DOWN:
 
526
                    case d.ui.keyCode.LEFT:
 
527
                        e =
 
528
                            false;
 
529
                        if (!a._keySliding) {
 
530
                            a._keySliding = true;
 
531
                            d(this).addClass("ui-state-active");
 
532
                            h = a._start(c, f);
 
533
                            if (h === false)return
 
534
                        }
 
535
                        break
 
536
                }
 
537
                i = a.options.step;
 
538
                h = a.options.values && a.options.values.length ? (g = a.values(f)) : (g = a.value());
 
539
                switch (c.keyCode) {
 
540
                    case d.ui.keyCode.HOME:
 
541
                        g = a._valueMin();
 
542
                        break;
 
543
                    case d.ui.keyCode.END:
 
544
                        g = a._valueMax();
 
545
                        break;
 
546
                    case d.ui.keyCode.PAGE_UP:
 
547
                        g = a._trimAlignValue(h + (a._valueMax() - a._valueMin()) / 5);
 
548
                        break;
 
549
                    case d.ui.keyCode.PAGE_DOWN:
 
550
                        g = a._trimAlignValue(h - (a._valueMax() - a._valueMin()) / 5);
 
551
                        break;
 
552
                    case d.ui.keyCode.UP:
 
553
                    case d.ui.keyCode.RIGHT:
 
554
                        if (h ===
 
555
                            a._valueMax())return;
 
556
                        g = a._trimAlignValue(h + i);
 
557
                        break;
 
558
                    case d.ui.keyCode.DOWN:
 
559
                    case d.ui.keyCode.LEFT:
 
560
                        if (h === a._valueMin())return;
 
561
                        g = a._trimAlignValue(h - i);
 
562
                        break
 
563
                }
 
564
                a._slide(c, f, g);
 
565
                return e
 
566
            }
 
567
        }).keyup(function (c) {
 
568
                var e = d(this).data("index.ui-slider-handle");
 
569
                if (a._keySliding) {
 
570
                    a._keySliding = false;
 
571
                    a._stop(c, e);
 
572
                    a._change(c, e);
 
573
                    d(this).removeClass("ui-state-active")
 
574
                }
 
575
            });
 
576
        this._refreshValue();
 
577
        this._animateOff = false
 
578
    }, destroy: function () {
 
579
        this.handles.remove();
 
580
        this.range.remove();
 
581
        this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");
 
582
        this._mouseDestroy();
 
583
        return this
 
584
    }, _mouseCapture: function (a) {
 
585
        var b = this.options, c, e, f, h, g;
 
586
        if (b.disabled)return false;
 
587
        this.elementSize = {width: this.element.outerWidth(), height: this.element.outerHeight()};
 
588
        this.elementOffset = this.element.offset();
 
589
        c = this._normValueFromMouse({x: a.pageX, y: a.pageY});
 
590
        e = this._valueMax() - this._valueMin() + 1;
 
591
        h = this;
 
592
        this.handles.each(function (i) {
 
593
            var j = Math.abs(c - h.values(i));
 
594
            if (e > j) {
 
595
                e = j;
 
596
                f = d(this);
 
597
                g = i
 
598
            }
 
599
        });
 
600
        if (b.range === true && this.values(1) === b.min) {
 
601
            g += 1;
 
602
            f = d(this.handles[g])
 
603
        }
 
604
        if (this._start(a,
 
605
            g) === false)return false;
 
606
        this._mouseSliding = true;
 
607
        h._handleIndex = g;
 
608
        f.addClass("ui-state-active").focus();
 
609
        b = f.offset();
 
610
        this._clickOffset = !d(a.target).parents().andSelf().is(".ui-slider-handle") ? {left: 0, top: 0} : {left: a.pageX - b.left - f.width() / 2, top: a.pageY - b.top - f.height() / 2 - (parseInt(f.css("borderTopWidth"), 10) || 0) - (parseInt(f.css("borderBottomWidth"), 10) || 0) + (parseInt(f.css("marginTop"), 10) || 0)};
 
611
        this._slide(a, g, c);
 
612
        return this._animateOff = true
 
613
    }, _mouseStart: function () {
 
614
        return true
 
615
    }, _mouseDrag: function (a) {
 
616
        var b =
 
617
            this._normValueFromMouse({x: a.pageX, y: a.pageY});
 
618
        this._slide(a, this._handleIndex, b);
 
619
        return false
 
620
    }, _mouseStop: function (a) {
 
621
        this.handles.removeClass("ui-state-active");
 
622
        this._mouseSliding = false;
 
623
        this._stop(a, this._handleIndex);
 
624
        this._change(a, this._handleIndex);
 
625
        this._clickOffset = this._handleIndex = null;
 
626
        return this._animateOff = false
 
627
    }, _detectOrientation: function () {
 
628
        this.orientation = this.options.orientation === "vertical" ? "vertical" : "horizontal"
 
629
    }, _normValueFromMouse: function (a) {
 
630
        var b;
 
631
        if (this.orientation === "horizontal") {
 
632
            b =
 
633
                this.elementSize.width;
 
634
            a = a.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0)
 
635
        } else {
 
636
            b = this.elementSize.height;
 
637
            a = a.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0)
 
638
        }
 
639
        b = a / b;
 
640
        if (b > 1)b = 1;
 
641
        if (b < 0)b = 0;
 
642
        if (this.orientation === "vertical")b = 1 - b;
 
643
        a = this._valueMax() - this._valueMin();
 
644
        return this._trimAlignValue(this._valueMin() + b * a)
 
645
    }, _start: function (a, b) {
 
646
        var c = {handle: this.handles[b], value: this.value()};
 
647
        if (this.options.values && this.options.values.length) {
 
648
            c.value = this.values(b);
 
649
            c.values = this.values()
 
650
        }
 
651
        return this._trigger("start", a, c)
 
652
    }, _slide: function (a, b, c) {
 
653
        var e;
 
654
        if (this.options.values && this.options.values.length) {
 
655
            e = this.values(b ? 0 : 1);
 
656
            if (this.options.values.length === 2 && this.options.range === true && (b === 0 && c > e || b === 1 && c < e))c = e;
 
657
            if (c !== this.values(b)) {
 
658
                e = this.values();
 
659
                e[b] = c;
 
660
                a = this._trigger("slide", a, {handle: this.handles[b], value: c, values: e});
 
661
                this.values(b ? 0 : 1);
 
662
                a !== false && this.values(b, c, true)
 
663
            }
 
664
        } else if (c !== this.value()) {
 
665
            a = this._trigger("slide", a, {handle: this.handles[b], value: c});
 
666
            a !== false && this.value(c)
 
667
        }
 
668
    }, _stop: function (a, b) {
 
669
        var c = {handle: this.handles[b], value: this.value()};
 
670
        if (this.options.values && this.options.values.length) {
 
671
            c.value = this.values(b);
 
672
            c.values = this.values()
 
673
        }
 
674
        this._trigger("stop", a, c)
 
675
    }, _change: function (a, b) {
 
676
        if (!this._keySliding && !this._mouseSliding) {
 
677
            var c = {handle: this.handles[b], value: this.value()};
 
678
            if (this.options.values && this.options.values.length) {
 
679
                c.value = this.values(b);
 
680
                c.values = this.values()
 
681
            }
 
682
            this._trigger("change", a, c)
 
683
        }
 
684
    }, value: function (a) {
 
685
        if (arguments.length) {
 
686
            this.options.value =
 
687
                this._trimAlignValue(a);
 
688
            this._refreshValue();
 
689
            this._change(null, 0)
 
690
        }
 
691
        return this._value()
 
692
    }, values: function (a, b) {
 
693
        var c, e, f;
 
694
        if (arguments.length > 1) {
 
695
            this.options.values[a] = this._trimAlignValue(b);
 
696
            this._refreshValue();
 
697
            this._change(null, a)
 
698
        }
 
699
        if (arguments.length)if (d.isArray(arguments[0])) {
 
700
            c = this.options.values;
 
701
            e = arguments[0];
 
702
            for (f = 0; f < c.length; f += 1) {
 
703
                c[f] = this._trimAlignValue(e[f]);
 
704
                this._change(null, f)
 
705
            }
 
706
            this._refreshValue()
 
707
        } else return this.options.values && this.options.values.length ? this._values(a) : this.value();
 
708
        else return this._values()
 
709
    }, _setOption: function (a, b) {
 
710
        var c, e = 0;
 
711
        if (d.isArray(this.options.values))e = this.options.values.length;
 
712
        d.Widget.prototype._setOption.apply(this, arguments);
 
713
        switch (a) {
 
714
            case "disabled":
 
715
                if (b) {
 
716
                    this.handles.filter(".ui-state-focus").blur();
 
717
                    this.handles.removeClass("ui-state-hover");
 
718
                    this.handles.attr("disabled", "disabled");
 
719
                    this.element.addClass("ui-disabled")
 
720
                } else {
 
721
                    this.handles.removeAttr("disabled");
 
722
                    this.element.removeClass("ui-disabled")
 
723
                }
 
724
                break;
 
725
            case "orientation":
 
726
                this._detectOrientation();
 
727
                this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-" + this.orientation);
 
728
                this._refreshValue();
 
729
                break;
 
730
            case "value":
 
731
                this._animateOff = true;
 
732
                this._refreshValue();
 
733
                this._change(null, 0);
 
734
                this._animateOff = false;
 
735
                break;
 
736
            case "values":
 
737
                this._animateOff = true;
 
738
                this._refreshValue();
 
739
                for (c = 0; c < e; c += 1)this._change(null, c);
 
740
                this._animateOff = false;
 
741
                break
 
742
        }
 
743
    }, _value: function () {
 
744
        var a = this.options.value;
 
745
        return a = this._trimAlignValue(a)
 
746
    }, _values: function (a) {
 
747
        var b, c;
 
748
        if (arguments.length) {
 
749
            b = this.options.values[a];
 
750
            return b = this._trimAlignValue(b)
 
751
        } else {
 
752
            b = this.options.values.slice();
 
753
            for (c = 0; c < b.length; c += 1)b[c] = this._trimAlignValue(b[c]);
 
754
            return b
 
755
        }
 
756
    }, _trimAlignValue: function (a) {
 
757
        if (a < this._valueMin())return this._valueMin();
 
758
        if (a > this._valueMax())return this._valueMax();
 
759
        var b = this.options.step > 0 ? this.options.step : 1, c = a % b;
 
760
        a = a - c;
 
761
        if (Math.abs(c) * 2 >= b)a += c > 0 ? b : -b;
 
762
        return parseFloat(a.toFixed(5))
 
763
    }, _valueMin: function () {
 
764
        return this.options.min
 
765
    }, _valueMax: function () {
 
766
        return this.options.max
 
767
    }, _refreshValue: function () {
 
768
        var a =
 
769
            this.options.range, b = this.options, c = this, e = !this._animateOff ? b.animate : false, f, h = {}, g, i, j, l;
 
770
        if (this.options.values && this.options.values.length)this.handles.each(function (k) {
 
771
            f = (c.values(k) - c._valueMin()) / (c._valueMax() - c._valueMin()) * 100;
 
772
            h[c.orientation === "horizontal" ? "left" : "bottom"] = f + "%";
 
773
            d(this).stop(1, 1)[e ? "animate" : "css"](h, b.animate);
 
774
            if (c.options.range === true)if (c.orientation === "horizontal") {
 
775
                if (k === 0)c.range.stop(1, 1)[e ? "animate" : "css"]({left: f + "%"}, b.animate);
 
776
                if (k === 1)c.range[e ? "animate" : "css"]({width: f -
 
777
                    g + "%"}, {queue: false, duration: b.animate})
 
778
            } else {
 
779
                if (k === 0)c.range.stop(1, 1)[e ? "animate" : "css"]({bottom: f + "%"}, b.animate);
 
780
                if (k === 1)c.range[e ? "animate" : "css"]({height: f - g + "%"}, {queue: false, duration: b.animate})
 
781
            }
 
782
            g = f
 
783
        }); else {
 
784
            i = this.value();
 
785
            j = this._valueMin();
 
786
            l = this._valueMax();
 
787
            f = l !== j ? (i - j) / (l - j) * 100 : 0;
 
788
            h[c.orientation === "horizontal" ? "left" : "bottom"] = f + "%";
 
789
            this.handle.stop(1, 1)[e ? "animate" : "css"](h, b.animate);
 
790
            if (a === "min" && this.orientation === "horizontal")this.range.stop(1, 1)[e ? "animate" : "css"]({width: f + "%"},
 
791
                b.animate);
 
792
            if (a === "max" && this.orientation === "horizontal")this.range[e ? "animate" : "css"]({width: 100 - f + "%"}, {queue: false, duration: b.animate});
 
793
            if (a === "min" && this.orientation === "vertical")this.range.stop(1, 1)[e ? "animate" : "css"]({height: f + "%"}, b.animate);
 
794
            if (a === "max" && this.orientation === "vertical")this.range[e ? "animate" : "css"]({height: 100 - f + "%"}, {queue: false, duration: b.animate})
 
795
        }
 
796
    }});
 
797
    d.extend(d.ui.slider, {version: "1.8.5"})
 
798
})(jQuery);
 
799
;
 
800
/*
 
801
 * jQuery UI Datepicker 1.8.5
 
802
 *
 
803
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
804
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
805
 * http://jquery.org/license
 
806
 *
 
807
 * http://docs.jquery.com/UI/Datepicker
 
808
 *
 
809
 * Depends:
 
810
 *      jquery.ui.core.js
 
811
 */
 
812
(function (d, G) {
 
813
    function L() {
 
814
        this.debug = false;
 
815
        this._curInst = null;
 
816
        this._keyEvent = false;
 
817
        this._disabledInputs = [];
 
818
        this._inDialog = this._datepickerShowing = false;
 
819
        this._mainDivId = "ui-datepicker-div";
 
820
        this._inlineClass = "ui-datepicker-inline";
 
821
        this._appendClass = "ui-datepicker-append";
 
822
        this._triggerClass = "ui-datepicker-trigger";
 
823
        this._dialogClass = "ui-datepicker-dialog";
 
824
        this._disableClass = "ui-datepicker-disabled";
 
825
        this._unselectableClass = "ui-datepicker-unselectable";
 
826
        this._currentClass = "ui-datepicker-current-day";
 
827
        this._dayOverClass =
 
828
            "ui-datepicker-days-cell-over";
 
829
        this.regional = [];
 
830
        this.regional[""] = {closeText: "Done", prevText: "Prev", nextText: "Next", currentText: "Today", monthNames: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], monthNamesShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], dayNames: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], dayNamesShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], dayNamesMin: ["Su",
 
831
            "Mo", "Tu", "We", "Th", "Fr", "Sa"], weekHeader: "Wk", dateFormat: "mm/dd/yy", firstDay: 0, isRTL: false, showMonthAfterYear: false, yearSuffix: ""};
 
832
        this._defaults = {showOn: "focus", showAnim: "fadeIn", showOptions: {}, defaultDate: null, appendText: "", buttonText: "...", buttonImage: "", buttonImageOnly: false, hideIfNoPrevNext: false, navigationAsDateFormat: false, gotoCurrent: false, changeMonth: false, changeYear: false, yearRange: "c-10:c+10", showOtherMonths: false, selectOtherMonths: false, showWeek: false, calculateWeek: this.iso8601Week, shortYearCutoff: "+10",
 
833
            minDate: null, maxDate: null, duration: "fast", beforeShowDay: null, beforeShow: null, onSelect: null, onChangeMonthYear: null, onClose: null, numberOfMonths: 1, showCurrentAtPos: 0, stepMonths: 1, stepBigMonths: 12, altField: "", altFormat: "", constrainInput: true, showButtonPanel: false, autoSize: false};
 
834
        d.extend(this._defaults, this.regional[""]);
 
835
        this.dpDiv = d('<div id="' + this._mainDivId + '" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all ui-helper-hidden-accessible"></div>')
 
836
    }
 
837
 
 
838
    function E(a, b) {
 
839
        d.extend(a,
 
840
            b);
 
841
        for (var c in b)if (b[c] == null || b[c] == G)a[c] = b[c];
 
842
        return a
 
843
    }
 
844
 
 
845
    d.extend(d.ui, {datepicker: {version: "1.8.5"}});
 
846
    var y = (new Date).getTime();
 
847
    d.extend(L.prototype, {markerClassName: "hasDatepicker", log: function () {
 
848
        this.debug && console.log.apply("", arguments)
 
849
    }, _widgetDatepicker: function () {
 
850
        return this.dpDiv
 
851
    }, setDefaults: function (a) {
 
852
        E(this._defaults, a || {});
 
853
        return this
 
854
    }, _attachDatepicker: function (a, b) {
 
855
        var c = null;
 
856
        for (var e in this._defaults) {
 
857
            var f = a.getAttribute("date:" + e);
 
858
            if (f) {
 
859
                c = c || {};
 
860
                try {
 
861
                    c[e] = eval(f)
 
862
                } catch (h) {
 
863
                    c[e] =
 
864
                        f
 
865
                }
 
866
            }
 
867
        }
 
868
        e = a.nodeName.toLowerCase();
 
869
        f = e == "div" || e == "span";
 
870
        if (!a.id) {
 
871
            this.uuid += 1;
 
872
            a.id = "dp" + this.uuid
 
873
        }
 
874
        var i = this._newInst(d(a), f);
 
875
        i.settings = d.extend({}, b || {}, c || {});
 
876
        if (e == "input")this._connectDatepicker(a, i); else f && this._inlineDatepicker(a, i)
 
877
    }, _newInst: function (a, b) {
 
878
        return{id: a[0].id.replace(/([^A-Za-z0-9_])/g, "\\\\$1"), input: a, selectedDay: 0, selectedMonth: 0, selectedYear: 0, drawMonth: 0, drawYear: 0, inline: b, dpDiv: !b ? this.dpDiv : d('<div class="' + this._inlineClass + ' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>')}
 
879
    },
 
880
        _connectDatepicker: function (a, b) {
 
881
            var c = d(a);
 
882
            b.append = d([]);
 
883
            b.trigger = d([]);
 
884
            if (!c.hasClass(this.markerClassName)) {
 
885
                this._attachments(c, b);
 
886
                c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function (e, f, h) {
 
887
                    b.settings[f] = h
 
888
                }).bind("getData.datepicker", function (e, f) {
 
889
                    return this._get(b, f)
 
890
                });
 
891
                this._autoSize(b);
 
892
                d.data(a, "datepicker", b)
 
893
            }
 
894
        }, _attachments: function (a, b) {
 
895
            var c = this._get(b, "appendText"), e = this._get(b, "isRTL");
 
896
            b.append &&
 
897
            b.append.remove();
 
898
            if (c) {
 
899
                b.append = d('<span class="' + this._appendClass + '">' + c + "</span>");
 
900
                a[e ? "before" : "after"](b.append)
 
901
            }
 
902
            a.unbind("focus", this._showDatepicker);
 
903
            b.trigger && b.trigger.remove();
 
904
            c = this._get(b, "showOn");
 
905
            if (c == "focus" || c == "both")a.focus(this._showDatepicker);
 
906
            if (c == "button" || c == "both") {
 
907
                c = this._get(b, "buttonText");
 
908
                var f = this._get(b, "buttonImage");
 
909
                b.trigger = d(this._get(b, "buttonImageOnly") ? d("<img/>").addClass(this._triggerClass).attr({src: f, alt: c, title: c}) : d('<button type="button"></button>').addClass(this._triggerClass).html(f ==
 
910
                    "" ? c : d("<img/>").attr({src: f, alt: c, title: c})));
 
911
                a[e ? "before" : "after"](b.trigger);
 
912
                b.trigger.click(function () {
 
913
                    d.datepicker._datepickerShowing && d.datepicker._lastInput == a[0] ? d.datepicker._hideDatepicker() : d.datepicker._showDatepicker(a[0]);
 
914
                    return false
 
915
                })
 
916
            }
 
917
        }, _autoSize: function (a) {
 
918
            if (this._get(a, "autoSize") && !a.inline) {
 
919
                var b = new Date(2009, 11, 20), c = this._get(a, "dateFormat");
 
920
                if (c.match(/[DM]/)) {
 
921
                    var e = function (f) {
 
922
                        for (var h = 0, i = 0, g = 0; g < f.length; g++)if (f[g].length > h) {
 
923
                            h = f[g].length;
 
924
                            i = g
 
925
                        }
 
926
                        return i
 
927
                    };
 
928
                    b.setMonth(e(this._get(a,
 
929
                        c.match(/MM/) ? "monthNames" : "monthNamesShort")));
 
930
                    b.setDate(e(this._get(a, c.match(/DD/) ? "dayNames" : "dayNamesShort")) + 20 - b.getDay())
 
931
                }
 
932
                a.input.attr("size", this._formatDate(a, b).length)
 
933
            }
 
934
        }, _inlineDatepicker: function (a, b) {
 
935
            var c = d(a);
 
936
            if (!c.hasClass(this.markerClassName)) {
 
937
                c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function (e, f, h) {
 
938
                    b.settings[f] = h
 
939
                }).bind("getData.datepicker", function (e, f) {
 
940
                    return this._get(b, f)
 
941
                });
 
942
                d.data(a, "datepicker", b);
 
943
                this._setDate(b, this._getDefaultDate(b),
 
944
                    true);
 
945
                this._updateDatepicker(b);
 
946
                this._updateAlternate(b)
 
947
            }
 
948
        }, _dialogDatepicker: function (a, b, c, e, f) {
 
949
            a = this._dialogInst;
 
950
            if (!a) {
 
951
                this.uuid += 1;
 
952
                this._dialogInput = d('<input type="text" id="' + ("dp" + this.uuid) + '" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');
 
953
                this._dialogInput.keydown(this._doKeyDown);
 
954
                d("body").append(this._dialogInput);
 
955
                a = this._dialogInst = this._newInst(this._dialogInput, false);
 
956
                a.settings = {};
 
957
                d.data(this._dialogInput[0], "datepicker", a)
 
958
            }
 
959
            E(a.settings, e || {});
 
960
            b = b && b.constructor ==
 
961
                Date ? this._formatDate(a, b) : b;
 
962
            this._dialogInput.val(b);
 
963
            this._pos = f ? f.length ? f : [f.pageX, f.pageY] : null;
 
964
            if (!this._pos)this._pos = [document.documentElement.clientWidth / 2 - 100 + (document.documentElement.scrollLeft || document.body.scrollLeft), document.documentElement.clientHeight / 2 - 150 + (document.documentElement.scrollTop || document.body.scrollTop)];
 
965
            this._dialogInput.css("left", this._pos[0] + 20 + "px").css("top", this._pos[1] + "px");
 
966
            a.settings.onSelect = c;
 
967
            this._inDialog = true;
 
968
            this.dpDiv.addClass(this._dialogClass);
 
969
            this._showDatepicker(this._dialogInput[0]);
 
970
            d.blockUI && d.blockUI(this.dpDiv);
 
971
            d.data(this._dialogInput[0], "datepicker", a);
 
972
            return this
 
973
        }, _destroyDatepicker: function (a) {
 
974
            var b = d(a), c = d.data(a, "datepicker");
 
975
            if (b.hasClass(this.markerClassName)) {
 
976
                var e = a.nodeName.toLowerCase();
 
977
                d.removeData(a, "datepicker");
 
978
                if (e == "input") {
 
979
                    c.append.remove();
 
980
                    c.trigger.remove();
 
981
                    b.removeClass(this.markerClassName).unbind("focus", this._showDatepicker).unbind("keydown", this._doKeyDown).unbind("keypress", this._doKeyPress).unbind("keyup", this._doKeyUp)
 
982
                } else if (e == "div" || e == "span")b.removeClass(this.markerClassName).empty()
 
983
            }
 
984
        },
 
985
        _enableDatepicker: function (a) {
 
986
            var b = d(a), c = d.data(a, "datepicker");
 
987
            if (b.hasClass(this.markerClassName)) {
 
988
                var e = a.nodeName.toLowerCase();
 
989
                if (e == "input") {
 
990
                    a.disabled = false;
 
991
                    c.trigger.filter("button").each(function () {
 
992
                        this.disabled = false
 
993
                    }).end().filter("img").css({opacity: "1.0", cursor: ""})
 
994
                } else if (e == "div" || e == "span")b.children("." + this._inlineClass).children().removeClass("ui-state-disabled");
 
995
                this._disabledInputs = d.map(this._disabledInputs, function (f) {
 
996
                    return f == a ? null : f
 
997
                })
 
998
            }
 
999
        }, _disableDatepicker: function (a) {
 
1000
            var b =
 
1001
                d(a), c = d.data(a, "datepicker");
 
1002
            if (b.hasClass(this.markerClassName)) {
 
1003
                var e = a.nodeName.toLowerCase();
 
1004
                if (e == "input") {
 
1005
                    a.disabled = true;
 
1006
                    c.trigger.filter("button").each(function () {
 
1007
                        this.disabled = true
 
1008
                    }).end().filter("img").css({opacity: "0.5", cursor: "default"})
 
1009
                } else if (e == "div" || e == "span")b.children("." + this._inlineClass).children().addClass("ui-state-disabled");
 
1010
                this._disabledInputs = d.map(this._disabledInputs, function (f) {
 
1011
                    return f == a ? null : f
 
1012
                });
 
1013
                this._disabledInputs[this._disabledInputs.length] = a
 
1014
            }
 
1015
        }, _isDisabledDatepicker: function (a) {
 
1016
            if (!a)return false;
 
1017
            for (var b = 0; b < this._disabledInputs.length; b++)if (this._disabledInputs[b] == a)return true;
 
1018
            return false
 
1019
        }, _getInst: function (a) {
 
1020
            try {
 
1021
                return d.data(a, "datepicker")
 
1022
            } catch (b) {
 
1023
                throw"Missing instance data for this datepicker";
 
1024
            }
 
1025
        }, _optionDatepicker: function (a, b, c) {
 
1026
            var e = this._getInst(a);
 
1027
            if (arguments.length == 2 && typeof b == "string")return b == "defaults" ? d.extend({}, d.datepicker._defaults) : e ? b == "all" ? d.extend({}, e.settings) : this._get(e, b) : null;
 
1028
            var f = b || {};
 
1029
            if (typeof b == "string") {
 
1030
                f = {};
 
1031
                f[b] = c
 
1032
            }
 
1033
            if (e) {
 
1034
                this._curInst == e &&
 
1035
                this._hideDatepicker();
 
1036
                var h = this._getDateDatepicker(a, true);
 
1037
                E(e.settings, f);
 
1038
                this._attachments(d(a), e);
 
1039
                this._autoSize(e);
 
1040
                this._setDateDatepicker(a, h);
 
1041
                this._updateDatepicker(e)
 
1042
            }
 
1043
        }, _changeDatepicker: function (a, b, c) {
 
1044
            this._optionDatepicker(a, b, c)
 
1045
        }, _refreshDatepicker: function (a) {
 
1046
            (a = this._getInst(a)) && this._updateDatepicker(a)
 
1047
        }, _setDateDatepicker: function (a, b) {
 
1048
            if (a = this._getInst(a)) {
 
1049
                this._setDate(a, b);
 
1050
                this._updateDatepicker(a);
 
1051
                this._updateAlternate(a)
 
1052
            }
 
1053
        }, _getDateDatepicker: function (a, b) {
 
1054
            (a = this._getInst(a)) && !a.inline && this._setDateFromField(a, b);
 
1055
            return a ? this._getDate(a) : null
 
1056
        }, _doKeyDown: function (a) {
 
1057
            var b = d.datepicker._getInst(a.target), c = true, e = b.dpDiv.is(".ui-datepicker-rtl");
 
1058
            b._keyEvent = true;
 
1059
            if (d.datepicker._datepickerShowing)switch (a.keyCode) {
 
1060
                case 9:
 
1061
                    d.datepicker._hideDatepicker();
 
1062
                    c = false;
 
1063
                    break;
 
1064
                case 13:
 
1065
                    c = d("td." + d.datepicker._dayOverClass, b.dpDiv).add(d("td." + d.datepicker._currentClass, b.dpDiv));
 
1066
                    c[0] ? d.datepicker._selectDay(a.target, b.selectedMonth, b.selectedYear, c[0]) : d.datepicker._hideDatepicker();
 
1067
                    return false;
 
1068
                case 27:
 
1069
                    d.datepicker._hideDatepicker();
 
1070
                    break;
 
1071
                case 33:
 
1072
                    d.datepicker._adjustDate(a.target, a.ctrlKey ? -d.datepicker._get(b, "stepBigMonths") : -d.datepicker._get(b, "stepMonths"), "M");
 
1073
                    break;
 
1074
                case 34:
 
1075
                    d.datepicker._adjustDate(a.target, a.ctrlKey ? +d.datepicker._get(b, "stepBigMonths") : +d.datepicker._get(b, "stepMonths"), "M");
 
1076
                    break;
 
1077
                case 35:
 
1078
                    if (a.ctrlKey || a.metaKey)d.datepicker._clearDate(a.target);
 
1079
                    c = a.ctrlKey || a.metaKey;
 
1080
                    break;
 
1081
                case 36:
 
1082
                    if (a.ctrlKey || a.metaKey)d.datepicker._gotoToday(a.target);
 
1083
                    c = a.ctrlKey ||
 
1084
                        a.metaKey;
 
1085
                    break;
 
1086
                case 37:
 
1087
                    if (a.ctrlKey || a.metaKey)d.datepicker._adjustDate(a.target, e ? +1 : -1, "D");
 
1088
                    c = a.ctrlKey || a.metaKey;
 
1089
                    if (a.originalEvent.altKey)d.datepicker._adjustDate(a.target, a.ctrlKey ? -d.datepicker._get(b, "stepBigMonths") : -d.datepicker._get(b, "stepMonths"), "M");
 
1090
                    break;
 
1091
                case 38:
 
1092
                    if (a.ctrlKey || a.metaKey)d.datepicker._adjustDate(a.target, -7, "D");
 
1093
                    c = a.ctrlKey || a.metaKey;
 
1094
                    break;
 
1095
                case 39:
 
1096
                    if (a.ctrlKey || a.metaKey)d.datepicker._adjustDate(a.target, e ? -1 : +1, "D");
 
1097
                    c = a.ctrlKey || a.metaKey;
 
1098
                    if (a.originalEvent.altKey)d.datepicker._adjustDate(a.target,
 
1099
                        a.ctrlKey ? +d.datepicker._get(b, "stepBigMonths") : +d.datepicker._get(b, "stepMonths"), "M");
 
1100
                    break;
 
1101
                case 40:
 
1102
                    if (a.ctrlKey || a.metaKey)d.datepicker._adjustDate(a.target, +7, "D");
 
1103
                    c = a.ctrlKey || a.metaKey;
 
1104
                    break;
 
1105
                default:
 
1106
                    c = false
 
1107
            } else if (a.keyCode == 36 && a.ctrlKey)d.datepicker._showDatepicker(this); else c = false;
 
1108
            if (c) {
 
1109
                a.preventDefault();
 
1110
                a.stopPropagation()
 
1111
            }
 
1112
        }, _doKeyPress: function (a) {
 
1113
            var b = d.datepicker._getInst(a.target);
 
1114
            if (d.datepicker._get(b, "constrainInput")) {
 
1115
                b = d.datepicker._possibleChars(d.datepicker._get(b, "dateFormat"));
 
1116
                var c = String.fromCharCode(a.charCode == G ? a.keyCode : a.charCode);
 
1117
                return a.ctrlKey || c < " " || !b || b.indexOf(c) > -1
 
1118
            }
 
1119
        }, _doKeyUp: function (a) {
 
1120
            a = d.datepicker._getInst(a.target);
 
1121
            if (a.input.val() != a.lastVal)try {
 
1122
                if (d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), a.input ? a.input.val() : null, d.datepicker._getFormatConfig(a))) {
 
1123
                    d.datepicker._setDateFromField(a);
 
1124
                    d.datepicker._updateAlternate(a);
 
1125
                    d.datepicker._updateDatepicker(a)
 
1126
                }
 
1127
            } catch (b) {
 
1128
                d.datepicker.log(b)
 
1129
            }
 
1130
            return true
 
1131
        }, _showDatepicker: function (a) {
 
1132
            a = a.target ||
 
1133
                a;
 
1134
            if (a.nodeName.toLowerCase() != "input")a = d("input", a.parentNode)[0];
 
1135
            if (!(d.datepicker._isDisabledDatepicker(a) || d.datepicker._lastInput == a)) {
 
1136
                var b = d.datepicker._getInst(a);
 
1137
                d.datepicker._curInst && d.datepicker._curInst != b && d.datepicker._curInst.dpDiv.stop(true, true);
 
1138
                var c = d.datepicker._get(b, "beforeShow");
 
1139
                E(b.settings, c ? c.apply(a, [a, b]) : {});
 
1140
                b.lastVal = null;
 
1141
                d.datepicker._lastInput = a;
 
1142
                d.datepicker._setDateFromField(b);
 
1143
                if (d.datepicker._inDialog)a.value = "";
 
1144
                if (!d.datepicker._pos) {
 
1145
                    d.datepicker._pos = d.datepicker._findPos(a);
 
1146
                    d.datepicker._pos[1] += a.offsetHeight
 
1147
                }
 
1148
                var e = false;
 
1149
                d(a).parents().each(function () {
 
1150
                    e |= d(this).css("position") == "fixed";
 
1151
                    return!e
 
1152
                });
 
1153
                if (e && d.browser.opera) {
 
1154
                    d.datepicker._pos[0] -= document.documentElement.scrollLeft;
 
1155
                    d.datepicker._pos[1] -= document.documentElement.scrollTop
 
1156
                }
 
1157
                c = {left: d.datepicker._pos[0], top: d.datepicker._pos[1]};
 
1158
                d.datepicker._pos = null;
 
1159
                b.dpDiv.css({position: "absolute", display: "block", top: "-1000px"});
 
1160
                d.datepicker._updateDatepicker(b);
 
1161
                c = d.datepicker._checkOffset(b, c, e);
 
1162
                b.dpDiv.css({position: d.datepicker._inDialog &&
 
1163
                    d.blockUI ? "static" : e ? "fixed" : "absolute", display: "none", left: c.left + "px", top: c.top + "px"});
 
1164
                if (!b.inline) {
 
1165
                    c = d.datepicker._get(b, "showAnim");
 
1166
                    var f = d.datepicker._get(b, "duration"), h = function () {
 
1167
                        d.datepicker._datepickerShowing = true;
 
1168
                        var i = d.datepicker._getBorders(b.dpDiv);
 
1169
                        b.dpDiv.find("iframe.ui-datepicker-cover").css({left: -i[0], top: -i[1], width: b.dpDiv.outerWidth(), height: b.dpDiv.outerHeight()})
 
1170
                    };
 
1171
                    b.dpDiv.zIndex(d(a).zIndex() + 1);
 
1172
                    d.effects && d.effects[c] ? b.dpDiv.show(c, d.datepicker._get(b, "showOptions"), f,
 
1173
                        h) : b.dpDiv[c || "show"](c ? f : null, h);
 
1174
                    if (!c || !f)h();
 
1175
                    b.input.is(":visible") && !b.input.is(":disabled") && b.input.focus();
 
1176
                    d.datepicker._curInst = b
 
1177
                }
 
1178
            }
 
1179
        }, _updateDatepicker: function (a) {
 
1180
            var b = this, c = d.datepicker._getBorders(a.dpDiv);
 
1181
            a.dpDiv.empty().append(this._generateHTML(a)).find("iframe.ui-datepicker-cover").css({left: -c[0], top: -c[1], width: a.dpDiv.outerWidth(), height: a.dpDiv.outerHeight()}).end().find("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a").bind("mouseout",function () {
 
1182
                d(this).removeClass("ui-state-hover");
 
1183
                this.className.indexOf("ui-datepicker-prev") != -1 && d(this).removeClass("ui-datepicker-prev-hover");
 
1184
                this.className.indexOf("ui-datepicker-next") != -1 && d(this).removeClass("ui-datepicker-next-hover")
 
1185
            }).bind("mouseover",function () {
 
1186
                    if (!b._isDisabledDatepicker(a.inline ? a.dpDiv.parent()[0] : a.input[0])) {
 
1187
                        d(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");
 
1188
                        d(this).addClass("ui-state-hover");
 
1189
                        this.className.indexOf("ui-datepicker-prev") != -1 && d(this).addClass("ui-datepicker-prev-hover");
 
1190
                        this.className.indexOf("ui-datepicker-next") != -1 && d(this).addClass("ui-datepicker-next-hover")
 
1191
                    }
 
1192
                }).end().find("." + this._dayOverClass + " a").trigger("mouseover").end();
 
1193
            c = this._getNumberOfMonths(a);
 
1194
            var e = c[1];
 
1195
            e > 1 ? a.dpDiv.addClass("ui-datepicker-multi-" + e).css("width", 17 * e + "em") : a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");
 
1196
            a.dpDiv[(c[0] != 1 || c[1] != 1 ? "add" : "remove") + "Class"]("ui-datepicker-multi");
 
1197
            a.dpDiv[(this._get(a, "isRTL") ? "add" : "remove") + "Class"]("ui-datepicker-rtl");
 
1198
            a == d.datepicker._curInst && d.datepicker._datepickerShowing && a.input && a.input.is(":visible") && !a.input.is(":disabled") && a.input.focus()
 
1199
        }, _getBorders: function (a) {
 
1200
            var b = function (c) {
 
1201
                return{thin: 1, medium: 2, thick: 3}[c] || c
 
1202
            };
 
1203
            return[parseFloat(b(a.css("border-left-width"))), parseFloat(b(a.css("border-top-width")))]
 
1204
        }, _checkOffset: function (a, b, c) {
 
1205
            var e = a.dpDiv.outerWidth(), f = a.dpDiv.outerHeight(), h = a.input ? a.input.outerWidth() : 0, i = a.input ? a.input.outerHeight() : 0, g = document.documentElement.clientWidth + d(document).scrollLeft(),
 
1206
                k = document.documentElement.clientHeight + d(document).scrollTop();
 
1207
            b.left -= this._get(a, "isRTL") ? e - h : 0;
 
1208
            b.left -= c && b.left == a.input.offset().left ? d(document).scrollLeft() : 0;
 
1209
            b.top -= c && b.top == a.input.offset().top + i ? d(document).scrollTop() : 0;
 
1210
            b.left -= Math.min(b.left, b.left + e > g && g > e ? Math.abs(b.left + e - g) : 0);
 
1211
            b.top -= Math.min(b.top, b.top + f > k && k > f ? Math.abs(f + i) : 0);
 
1212
            return b
 
1213
        }, _findPos: function (a) {
 
1214
            for (var b = this._get(this._getInst(a), "isRTL"); a && (a.type == "hidden" || a.nodeType != 1);)a = a[b ? "previousSibling" : "nextSibling"];
 
1215
            a = d(a).offset();
 
1216
            return[a.left, a.top]
 
1217
        }, _hideDatepicker: function (a) {
 
1218
            var b = this._curInst;
 
1219
            if (!(!b || a && b != d.data(a, "datepicker")))if (this._datepickerShowing) {
 
1220
                a = this._get(b, "showAnim");
 
1221
                var c = this._get(b, "duration"), e = function () {
 
1222
                    d.datepicker._tidyDialog(b);
 
1223
                    this._curInst = null
 
1224
                };
 
1225
                d.effects && d.effects[a] ? b.dpDiv.hide(a, d.datepicker._get(b, "showOptions"), c, e) : b.dpDiv[a == "slideDown" ? "slideUp" : a == "fadeIn" ? "fadeOut" : "hide"](a ? c : null, e);
 
1226
                a || e();
 
1227
                if (a = this._get(b, "onClose"))a.apply(b.input ? b.input[0] : null, [b.input ? b.input.val() :
 
1228
                    "", b]);
 
1229
                this._datepickerShowing = false;
 
1230
                this._lastInput = null;
 
1231
                if (this._inDialog) {
 
1232
                    this._dialogInput.css({position: "absolute", left: "0", top: "-100px"});
 
1233
                    if (d.blockUI) {
 
1234
                        d.unblockUI();
 
1235
                        d("body").append(this.dpDiv)
 
1236
                    }
 
1237
                }
 
1238
                this._inDialog = false
 
1239
            }
 
1240
        }, _tidyDialog: function (a) {
 
1241
            a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")
 
1242
        }, _checkExternalClick: function (a) {
 
1243
            if (d.datepicker._curInst) {
 
1244
                a = d(a.target);
 
1245
                a[0].id != d.datepicker._mainDivId && a.parents("#" + d.datepicker._mainDivId).length == 0 && !a.hasClass(d.datepicker.markerClassName) && !a.hasClass(d.datepicker._triggerClass) && d.datepicker._datepickerShowing && !(d.datepicker._inDialog && d.blockUI) && d.datepicker._hideDatepicker()
 
1246
            }
 
1247
        }, _adjustDate: function (a, b, c) {
 
1248
            a = d(a);
 
1249
            var e = this._getInst(a[0]);
 
1250
            if (!this._isDisabledDatepicker(a[0])) {
 
1251
                this._adjustInstDate(e, b + (c == "M" ? this._get(e, "showCurrentAtPos") : 0), c);
 
1252
                this._updateDatepicker(e)
 
1253
            }
 
1254
        }, _gotoToday: function (a) {
 
1255
            a = d(a);
 
1256
            var b = this._getInst(a[0]);
 
1257
            if (this._get(b, "gotoCurrent") && b.currentDay) {
 
1258
                b.selectedDay = b.currentDay;
 
1259
                b.drawMonth = b.selectedMonth = b.currentMonth;
 
1260
                b.drawYear = b.selectedYear = b.currentYear
 
1261
            } else {
 
1262
                var c = new Date;
 
1263
                b.selectedDay = c.getDate();
 
1264
                b.drawMonth = b.selectedMonth = c.getMonth();
 
1265
                b.drawYear = b.selectedYear = c.getFullYear()
 
1266
            }
 
1267
            this._notifyChange(b);
 
1268
            this._adjustDate(a)
 
1269
        }, _selectMonthYear: function (a, b, c) {
 
1270
            a = d(a);
 
1271
            var e = this._getInst(a[0]);
 
1272
            e._selectingMonthYear = false;
 
1273
            e["selected" + (c == "M" ? "Month" : "Year")] = e["draw" + (c == "M" ? "Month" : "Year")] = parseInt(b.options[b.selectedIndex].value, 10);
 
1274
            this._notifyChange(e);
 
1275
            this._adjustDate(a)
 
1276
        }, _clickMonthYear: function (a) {
 
1277
            var b =
 
1278
                this._getInst(d(a)[0]);
 
1279
            b.input && b._selectingMonthYear && setTimeout(function () {
 
1280
                b.input.focus()
 
1281
            }, 0);
 
1282
            b._selectingMonthYear = !b._selectingMonthYear
 
1283
        }, _selectDay: function (a, b, c, e) {
 
1284
            var f = d(a);
 
1285
            if (!(d(e).hasClass(this._unselectableClass) || this._isDisabledDatepicker(f[0]))) {
 
1286
                f = this._getInst(f[0]);
 
1287
                f.selectedDay = f.currentDay = d("a", e).html();
 
1288
                f.selectedMonth = f.currentMonth = b;
 
1289
                f.selectedYear = f.currentYear = c;
 
1290
                this._selectDate(a, this._formatDate(f, f.currentDay, f.currentMonth, f.currentYear))
 
1291
            }
 
1292
        }, _clearDate: function (a) {
 
1293
            a =
 
1294
                d(a);
 
1295
            this._getInst(a[0]);
 
1296
            this._selectDate(a, "")
 
1297
        }, _selectDate: function (a, b) {
 
1298
            a = this._getInst(d(a)[0]);
 
1299
            b = b != null ? b : this._formatDate(a);
 
1300
            a.input && a.input.val(b);
 
1301
            this._updateAlternate(a);
 
1302
            var c = this._get(a, "onSelect");
 
1303
            if (c)c.apply(a.input ? a.input[0] : null, [b, a]); else a.input && a.input.trigger("change");
 
1304
            if (a.inline)this._updateDatepicker(a); else {
 
1305
                this._hideDatepicker();
 
1306
                this._lastInput = a.input[0];
 
1307
                typeof a.input[0] != "object" && a.input.focus();
 
1308
                this._lastInput = null
 
1309
            }
 
1310
        }, _updateAlternate: function (a) {
 
1311
            var b = this._get(a,
 
1312
                "altField");
 
1313
            if (b) {
 
1314
                var c = this._get(a, "altFormat") || this._get(a, "dateFormat"), e = this._getDate(a), f = this.formatDate(c, e, this._getFormatConfig(a));
 
1315
                d(b).each(function () {
 
1316
                    d(this).val(f)
 
1317
                })
 
1318
            }
 
1319
        }, noWeekends: function (a) {
 
1320
            a = a.getDay();
 
1321
            return[a > 0 && a < 6, ""]
 
1322
        }, iso8601Week: function (a) {
 
1323
            a = new Date(a.getTime());
 
1324
            a.setDate(a.getDate() + 4 - (a.getDay() || 7));
 
1325
            var b = a.getTime();
 
1326
            a.setMonth(0);
 
1327
            a.setDate(1);
 
1328
            return Math.floor(Math.round((b - a) / 864E5) / 7) + 1
 
1329
        }, parseDate: function (a, b, c) {
 
1330
            if (a == null || b == null)throw"Invalid arguments";
 
1331
            b = typeof b ==
 
1332
                "object" ? b.toString() : b + "";
 
1333
            if (b == "")return null;
 
1334
            for (var e = (c ? c.shortYearCutoff : null) || this._defaults.shortYearCutoff, f = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort, h = (c ? c.dayNames : null) || this._defaults.dayNames, i = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort, g = (c ? c.monthNames : null) || this._defaults.monthNames, k = c = -1, l = -1, u = -1, j = false, o = function (p) {
 
1335
                (p = z + 1 < a.length && a.charAt(z + 1) == p) && z++;
 
1336
                return p
 
1337
            }, m = function (p) {
 
1338
                o(p);
 
1339
                p = new RegExp("^\\d{1," + (p == "@" ? 14 : p == "!" ? 20 : p == "y" ? 4 : p == "o" ?
 
1340
                    3 : 2) + "}");
 
1341
                p = b.substring(s).match(p);
 
1342
                if (!p)throw"Missing number at position " + s;
 
1343
                s += p[0].length;
 
1344
                return parseInt(p[0], 10)
 
1345
            }, n = function (p, w, H) {
 
1346
                p = o(p) ? H : w;
 
1347
                for (w = 0; w < p.length; w++)if (b.substr(s, p[w].length).toLowerCase() == p[w].toLowerCase()) {
 
1348
                    s += p[w].length;
 
1349
                    return w + 1
 
1350
                }
 
1351
                throw"Unknown name at position " + s;
 
1352
            }, r = function () {
 
1353
                if (b.charAt(s) != a.charAt(z))throw"Unexpected literal at position " + s;
 
1354
                s++
 
1355
            }, s = 0, z = 0; z < a.length; z++)if (j)if (a.charAt(z) == "'" && !o("'"))j = false; else r(); else switch (a.charAt(z)) {
 
1356
                case "d":
 
1357
                    l = m("d");
 
1358
                    break;
 
1359
                case "D":
 
1360
                    n("D", f, h);
 
1361
                    break;
 
1362
                case "o":
 
1363
                    u = m("o");
 
1364
                    break;
 
1365
                case "m":
 
1366
                    k = m("m");
 
1367
                    break;
 
1368
                case "M":
 
1369
                    k = n("M", i, g);
 
1370
                    break;
 
1371
                case "y":
 
1372
                    c = m("y");
 
1373
                    break;
 
1374
                case "@":
 
1375
                    var v = new Date(m("@"));
 
1376
                    c = v.getFullYear();
 
1377
                    k = v.getMonth() + 1;
 
1378
                    l = v.getDate();
 
1379
                    break;
 
1380
                case "!":
 
1381
                    v = new Date((m("!") - this._ticksTo1970) / 1E4);
 
1382
                    c = v.getFullYear();
 
1383
                    k = v.getMonth() + 1;
 
1384
                    l = v.getDate();
 
1385
                    break;
 
1386
                case "'":
 
1387
                    if (o("'"))r(); else j = true;
 
1388
                    break;
 
1389
                default:
 
1390
                    r()
 
1391
            }
 
1392
            if (c == -1)c = (new Date).getFullYear(); else if (c < 100)c += (new Date).getFullYear() - (new Date).getFullYear() % 100 + (c <= e ? 0 : -100);
 
1393
            if (u > -1) {
 
1394
                k = 1;
 
1395
                l = u;
 
1396
                do {
 
1397
                    e = this._getDaysInMonth(c, k - 1);
 
1398
                    if (l <= e)break;
 
1399
                    k++;
 
1400
                    l -= e
 
1401
                } while (1)
 
1402
            }
 
1403
            v = this._daylightSavingAdjust(new Date(c, k - 1, l));
 
1404
            if (v.getFullYear() != c || v.getMonth() + 1 != k || v.getDate() != l)throw"Invalid date";
 
1405
            return v
 
1406
        }, ATOM: "yy-mm-dd", COOKIE: "D, dd M yy", ISO_8601: "yy-mm-dd", RFC_822: "D, d M y", RFC_850: "DD, dd-M-y", RFC_1036: "D, d M y", RFC_1123: "D, d M yy", RFC_2822: "D, d M yy", RSS: "D, d M y", TICKS: "!", TIMESTAMP: "@", W3C: "yy-mm-dd", _ticksTo1970: (718685 + Math.floor(492.5) - Math.floor(19.7) + Math.floor(4.925)) * 24 *
 
1407
            60 * 60 * 1E7, formatDate: function (a, b, c) {
 
1408
            if (!b)return"";
 
1409
            var e = (c ? c.dayNamesShort : null) || this._defaults.dayNamesShort, f = (c ? c.dayNames : null) || this._defaults.dayNames, h = (c ? c.monthNamesShort : null) || this._defaults.monthNamesShort;
 
1410
            c = (c ? c.monthNames : null) || this._defaults.monthNames;
 
1411
            var i = function (o) {
 
1412
                (o = j + 1 < a.length && a.charAt(j + 1) == o) && j++;
 
1413
                return o
 
1414
            }, g = function (o, m, n) {
 
1415
                m = "" + m;
 
1416
                if (i(o))for (; m.length < n;)m = "0" + m;
 
1417
                return m
 
1418
            }, k = function (o, m, n, r) {
 
1419
                return i(o) ? r[m] : n[m]
 
1420
            }, l = "", u = false;
 
1421
            if (b)for (var j = 0; j < a.length; j++)if (u)if (a.charAt(j) ==
 
1422
                "'" && !i("'"))u = false; else l += a.charAt(j); else switch (a.charAt(j)) {
 
1423
                case "d":
 
1424
                    l += g("d", b.getDate(), 2);
 
1425
                    break;
 
1426
                case "D":
 
1427
                    l += k("D", b.getDay(), e, f);
 
1428
                    break;
 
1429
                case "o":
 
1430
                    l += g("o", (b.getTime() - (new Date(b.getFullYear(), 0, 0)).getTime()) / 864E5, 3);
 
1431
                    break;
 
1432
                case "m":
 
1433
                    l += g("m", b.getMonth() + 1, 2);
 
1434
                    break;
 
1435
                case "M":
 
1436
                    l += k("M", b.getMonth(), h, c);
 
1437
                    break;
 
1438
                case "y":
 
1439
                    l += i("y") ? b.getFullYear() : (b.getYear() % 100 < 10 ? "0" : "") + b.getYear() % 100;
 
1440
                    break;
 
1441
                case "@":
 
1442
                    l += b.getTime();
 
1443
                    break;
 
1444
                case "!":
 
1445
                    l += b.getTime() * 1E4 + this._ticksTo1970;
 
1446
                    break;
 
1447
                case "'":
 
1448
                    if (i("'"))l +=
 
1449
                        "'"; else u = true;
 
1450
                    break;
 
1451
                default:
 
1452
                    l += a.charAt(j)
 
1453
            }
 
1454
            return l
 
1455
        }, _possibleChars: function (a) {
 
1456
            for (var b = "", c = false, e = function (h) {
 
1457
                (h = f + 1 < a.length && a.charAt(f + 1) == h) && f++;
 
1458
                return h
 
1459
            }, f = 0; f < a.length; f++)if (c)if (a.charAt(f) == "'" && !e("'"))c = false; else b += a.charAt(f); else switch (a.charAt(f)) {
 
1460
                case "d":
 
1461
                case "m":
 
1462
                case "y":
 
1463
                case "@":
 
1464
                    b += "0123456789";
 
1465
                    break;
 
1466
                case "D":
 
1467
                case "M":
 
1468
                    return null;
 
1469
                case "'":
 
1470
                    if (e("'"))b += "'"; else c = true;
 
1471
                    break;
 
1472
                default:
 
1473
                    b += a.charAt(f)
 
1474
            }
 
1475
            return b
 
1476
        }, _get: function (a, b) {
 
1477
            return a.settings[b] !== G ? a.settings[b] : this._defaults[b]
 
1478
        },
 
1479
        _setDateFromField: function (a, b) {
 
1480
            if (a.input.val() != a.lastVal) {
 
1481
                var c = this._get(a, "dateFormat"), e = a.lastVal = a.input ? a.input.val() : null, f, h;
 
1482
                f = h = this._getDefaultDate(a);
 
1483
                var i = this._getFormatConfig(a);
 
1484
                try {
 
1485
                    f = this.parseDate(c, e, i) || h
 
1486
                } catch (g) {
 
1487
                    this.log(g);
 
1488
                    e = b ? "" : e
 
1489
                }
 
1490
                a.selectedDay = f.getDate();
 
1491
                a.drawMonth = a.selectedMonth = f.getMonth();
 
1492
                a.drawYear = a.selectedYear = f.getFullYear();
 
1493
                a.currentDay = e ? f.getDate() : 0;
 
1494
                a.currentMonth = e ? f.getMonth() : 0;
 
1495
                a.currentYear = e ? f.getFullYear() : 0;
 
1496
                this._adjustInstDate(a)
 
1497
            }
 
1498
        }, _getDefaultDate: function (a) {
 
1499
            return this._restrictMinMax(a,
 
1500
                this._determineDate(a, this._get(a, "defaultDate"), new Date))
 
1501
        }, _determineDate: function (a, b, c) {
 
1502
            var e = function (h) {
 
1503
                var i = new Date;
 
1504
                i.setDate(i.getDate() + h);
 
1505
                return i
 
1506
            }, f = function (h) {
 
1507
                try {
 
1508
                    return d.datepicker.parseDate(d.datepicker._get(a, "dateFormat"), h, d.datepicker._getFormatConfig(a))
 
1509
                } catch (i) {
 
1510
                }
 
1511
                var g = (h.toLowerCase().match(/^c/) ? d.datepicker._getDate(a) : null) || new Date, k = g.getFullYear(), l = g.getMonth();
 
1512
                g = g.getDate();
 
1513
                for (var u = /([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g, j = u.exec(h); j;) {
 
1514
                    switch (j[2] || "d") {
 
1515
                        case "d":
 
1516
                        case "D":
 
1517
                            g +=
 
1518
                                parseInt(j[1], 10);
 
1519
                            break;
 
1520
                        case "w":
 
1521
                        case "W":
 
1522
                            g += parseInt(j[1], 10) * 7;
 
1523
                            break;
 
1524
                        case "m":
 
1525
                        case "M":
 
1526
                            l += parseInt(j[1], 10);
 
1527
                            g = Math.min(g, d.datepicker._getDaysInMonth(k, l));
 
1528
                            break;
 
1529
                        case "y":
 
1530
                        case "Y":
 
1531
                            k += parseInt(j[1], 10);
 
1532
                            g = Math.min(g, d.datepicker._getDaysInMonth(k, l));
 
1533
                            break
 
1534
                    }
 
1535
                    j = u.exec(h)
 
1536
                }
 
1537
                return new Date(k, l, g)
 
1538
            };
 
1539
            if (b = (b = b == null ? c : typeof b == "string" ? f(b) : typeof b == "number" ? isNaN(b) ? c : e(b) : b) && b.toString() == "Invalid Date" ? c : b) {
 
1540
                b.setHours(0);
 
1541
                b.setMinutes(0);
 
1542
                b.setSeconds(0);
 
1543
                b.setMilliseconds(0)
 
1544
            }
 
1545
            return this._daylightSavingAdjust(b)
 
1546
        },
 
1547
        _daylightSavingAdjust: function (a) {
 
1548
            if (!a)return null;
 
1549
            a.setHours(a.getHours() > 12 ? a.getHours() + 2 : 0);
 
1550
            return a
 
1551
        }, _setDate: function (a, b, c) {
 
1552
            var e = !b, f = a.selectedMonth, h = a.selectedYear;
 
1553
            b = this._restrictMinMax(a, this._determineDate(a, b, new Date));
 
1554
            a.selectedDay = a.currentDay = b.getDate();
 
1555
            a.drawMonth = a.selectedMonth = a.currentMonth = b.getMonth();
 
1556
            a.drawYear = a.selectedYear = a.currentYear = b.getFullYear();
 
1557
            if ((f != a.selectedMonth || h != a.selectedYear) && !c)this._notifyChange(a);
 
1558
            this._adjustInstDate(a);
 
1559
            if (a.input)a.input.val(e ?
 
1560
                "" : this._formatDate(a))
 
1561
        }, _getDate: function (a) {
 
1562
            return!a.currentYear || a.input && a.input.val() == "" ? null : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay))
 
1563
        }, _generateHTML: function (a) {
 
1564
            var b = new Date;
 
1565
            b = this._daylightSavingAdjust(new Date(b.getFullYear(), b.getMonth(), b.getDate()));
 
1566
            var c = this._get(a, "isRTL"), e = this._get(a, "showButtonPanel"), f = this._get(a, "hideIfNoPrevNext"), h = this._get(a, "navigationAsDateFormat"), i = this._getNumberOfMonths(a), g = this._get(a, "showCurrentAtPos"), k =
 
1567
                this._get(a, "stepMonths"), l = i[0] != 1 || i[1] != 1, u = this._daylightSavingAdjust(!a.currentDay ? new Date(9999, 9, 9) : new Date(a.currentYear, a.currentMonth, a.currentDay)), j = this._getMinMaxDate(a, "min"), o = this._getMinMaxDate(a, "max");
 
1568
            g = a.drawMonth - g;
 
1569
            var m = a.drawYear;
 
1570
            if (g < 0) {
 
1571
                g += 12;
 
1572
                m--
 
1573
            }
 
1574
            if (o) {
 
1575
                var n = this._daylightSavingAdjust(new Date(o.getFullYear(), o.getMonth() - i[0] * i[1] + 1, o.getDate()));
 
1576
                for (n = j && n < j ? j : n; this._daylightSavingAdjust(new Date(m, g, 1)) > n;) {
 
1577
                    g--;
 
1578
                    if (g < 0) {
 
1579
                        g = 11;
 
1580
                        m--
 
1581
                    }
 
1582
                }
 
1583
            }
 
1584
            a.drawMonth = g;
 
1585
            a.drawYear = m;
 
1586
            n = this._get(a,
 
1587
                "prevText");
 
1588
            n = !h ? n : this.formatDate(n, this._daylightSavingAdjust(new Date(m, g - k, 1)), this._getFormatConfig(a));
 
1589
            n = this._canAdjustMonth(a, -1, m, g) ? '<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_' + y + ".datepicker._adjustDate('#" + a.id + "', -" + k + ", 'M');\" title=\"" + n + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? "e" : "w") + '">' + n + "</span></a>" : f ? "" : '<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="' + n + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? "e" : "w") + '">' +
 
1590
                n + "</span></a>";
 
1591
            var r = this._get(a, "nextText");
 
1592
            r = !h ? r : this.formatDate(r, this._daylightSavingAdjust(new Date(m, g + k, 1)), this._getFormatConfig(a));
 
1593
            f = this._canAdjustMonth(a, +1, m, g) ? '<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_' + y + ".datepicker._adjustDate('#" + a.id + "', +" + k + ", 'M');\" title=\"" + r + '"><span class="ui-icon ui-icon-circle-triangle-' + (c ? "w" : "e") + '">' + r + "</span></a>" : f ? "" : '<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="' + r + '"><span class="ui-icon ui-icon-circle-triangle-' +
 
1594
                (c ? "w" : "e") + '">' + r + "</span></a>";
 
1595
            k = this._get(a, "currentText");
 
1596
            r = this._get(a, "gotoCurrent") && a.currentDay ? u : b;
 
1597
            k = !h ? k : this.formatDate(k, r, this._getFormatConfig(a));
 
1598
            h = !a.inline ? '<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_' + y + '.datepicker._hideDatepicker();">' + this._get(a, "closeText") + "</button>" : "";
 
1599
            e = e ? '<div class="ui-datepicker-buttonpane ui-widget-content">' + (c ? h : "") + (this._isInRange(a, r) ? '<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_' +
 
1600
                y + ".datepicker._gotoToday('#" + a.id + "');\">" + k + "</button>" : "") + (c ? "" : h) + "</div>" : "";
 
1601
            h = parseInt(this._get(a, "firstDay"), 10);
 
1602
            h = isNaN(h) ? 0 : h;
 
1603
            k = this._get(a, "showWeek");
 
1604
            r = this._get(a, "dayNames");
 
1605
            this._get(a, "dayNamesShort");
 
1606
            var s = this._get(a, "dayNamesMin"), z = this._get(a, "monthNames"), v = this._get(a, "monthNamesShort"), p = this._get(a, "beforeShowDay"), w = this._get(a, "showOtherMonths"), H = this._get(a, "selectOtherMonths");
 
1607
            this._get(a, "calculateWeek");
 
1608
            for (var M = this._getDefaultDate(a), I = "", C = 0; C < i[0]; C++) {
 
1609
                for (var N =
 
1610
                    "", D = 0; D < i[1]; D++) {
 
1611
                    var J = this._daylightSavingAdjust(new Date(m, g, a.selectedDay)), t = " ui-corner-all", x = "";
 
1612
                    if (l) {
 
1613
                        x += '<div class="ui-datepicker-group';
 
1614
                        if (i[1] > 1)switch (D) {
 
1615
                            case 0:
 
1616
                                x += " ui-datepicker-group-first";
 
1617
                                t = " ui-corner-" + (c ? "right" : "left");
 
1618
                                break;
 
1619
                            case i[1] - 1:
 
1620
                                x += " ui-datepicker-group-last";
 
1621
                                t = " ui-corner-" + (c ? "left" : "right");
 
1622
                                break;
 
1623
                            default:
 
1624
                                x += " ui-datepicker-group-middle";
 
1625
                                t = "";
 
1626
                                break
 
1627
                        }
 
1628
                        x += '">'
 
1629
                    }
 
1630
                    x += '<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix' + t + '">' + (/all|left/.test(t) && C == 0 ? c ?
 
1631
                        f : n : "") + (/all|right/.test(t) && C == 0 ? c ? n : f : "") + this._generateMonthYearHeader(a, g, m, j, o, C > 0 || D > 0, z, v) + '</div><table class="ui-datepicker-calendar"><thead><tr>';
 
1632
                    var A = k ? '<th class="ui-datepicker-week-col">' + this._get(a, "weekHeader") + "</th>" : "";
 
1633
                    for (t = 0; t < 7; t++) {
 
1634
                        var q = (t + h) % 7;
 
1635
                        A += "<th" + ((t + h + 6) % 7 >= 5 ? ' class="ui-datepicker-week-end"' : "") + '><span title="' + r[q] + '">' + s[q] + "</span></th>"
 
1636
                    }
 
1637
                    x += A + "</tr></thead><tbody>";
 
1638
                    A = this._getDaysInMonth(m, g);
 
1639
                    if (m == a.selectedYear && g == a.selectedMonth)a.selectedDay = Math.min(a.selectedDay,
 
1640
                        A);
 
1641
                    t = (this._getFirstDayOfMonth(m, g) - h + 7) % 7;
 
1642
                    A = l ? 6 : Math.ceil((t + A) / 7);
 
1643
                    q = this._daylightSavingAdjust(new Date(m, g, 1 - t));
 
1644
                    for (var O = 0; O < A; O++) {
 
1645
                        x += "<tr>";
 
1646
                        var P = !k ? "" : '<td class="ui-datepicker-week-col">' + this._get(a, "calculateWeek")(q) + "</td>";
 
1647
                        for (t = 0; t < 7; t++) {
 
1648
                            var F = p ? p.apply(a.input ? a.input[0] : null, [q]) : [true, ""], B = q.getMonth() != g, K = B && !H || !F[0] || j && q < j || o && q > o;
 
1649
                            P += '<td class="' + ((t + h + 6) % 7 >= 5 ? " ui-datepicker-week-end" : "") + (B ? " ui-datepicker-other-month" : "") + (q.getTime() == J.getTime() && g == a.selectedMonth &&
 
1650
                                a._keyEvent || M.getTime() == q.getTime() && M.getTime() == J.getTime() ? " " + this._dayOverClass : "") + (K ? " " + this._unselectableClass + " ui-state-disabled" : "") + (B && !w ? "" : " " + F[1] + (q.getTime() == u.getTime() ? " " + this._currentClass : "") + (q.getTime() == b.getTime() ? " ui-datepicker-today" : "")) + '"' + ((!B || w) && F[2] ? ' title="' + F[2] + '"' : "") + (K ? "" : ' onclick="DP_jQuery_' + y + ".datepicker._selectDay('#" + a.id + "'," + q.getMonth() + "," + q.getFullYear() + ', this);return false;"') + ">" + (B && !w ? "&#xa0;" : K ? '<span class="ui-state-default">' + q.getDate() +
 
1651
                                "</span>" : '<a class="ui-state-default' + (q.getTime() == b.getTime() ? " ui-state-highlight" : "") + (q.getTime() == J.getTime() ? " ui-state-active" : "") + (B ? " ui-priority-secondary" : "") + '" href="#">' + q.getDate() + "</a>") + "</td>";
 
1652
                            q.setDate(q.getDate() + 1);
 
1653
                            q = this._daylightSavingAdjust(q)
 
1654
                        }
 
1655
                        x += P + "</tr>"
 
1656
                    }
 
1657
                    g++;
 
1658
                    if (g > 11) {
 
1659
                        g = 0;
 
1660
                        m++
 
1661
                    }
 
1662
                    x += "</tbody></table>" + (l ? "</div>" + (i[0] > 0 && D == i[1] - 1 ? '<div class="ui-datepicker-row-break"></div>' : "") : "");
 
1663
                    N += x
 
1664
                }
 
1665
                I += N
 
1666
            }
 
1667
            I += e + (d.browser.msie && parseInt(d.browser.version, 10) < 7 && !a.inline ? '<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>' :
 
1668
                "");
 
1669
            a._keyEvent = false;
 
1670
            return I
 
1671
        }, _generateMonthYearHeader: function (a, b, c, e, f, h, i, g) {
 
1672
            var k = this._get(a, "changeMonth"), l = this._get(a, "changeYear"), u = this._get(a, "showMonthAfterYear"), j = '<div class="ui-datepicker-title">', o = "";
 
1673
            if (h || !k)o += '<span class="ui-datepicker-month">' + i[b] + "</span>"; else {
 
1674
                i = e && e.getFullYear() == c;
 
1675
                var m = f && f.getFullYear() == c;
 
1676
                o += '<select class="ui-datepicker-month" onchange="DP_jQuery_' + y + ".datepicker._selectMonthYear('#" + a.id + "', this, 'M');\" onclick=\"DP_jQuery_" + y + ".datepicker._clickMonthYear('#" +
 
1677
                    a.id + "');\">";
 
1678
                for (var n = 0; n < 12; n++)if ((!i || n >= e.getMonth()) && (!m || n <= f.getMonth()))o += '<option value="' + n + '"' + (n == b ? ' selected="selected"' : "") + ">" + g[n] + "</option>";
 
1679
                o += "</select>"
 
1680
            }
 
1681
            u || (j += o + (h || !(k && l) ? "&#xa0;" : ""));
 
1682
            if (h || !l)j += '<span class="ui-datepicker-year">' + c + "</span>"; else {
 
1683
                g = this._get(a, "yearRange").split(":");
 
1684
                var r = (new Date).getFullYear();
 
1685
                i = function (s) {
 
1686
                    s = s.match(/c[+-].*/) ? c + parseInt(s.substring(1), 10) : s.match(/[+-].*/) ? r + parseInt(s, 10) : parseInt(s, 10);
 
1687
                    return isNaN(s) ? r : s
 
1688
                };
 
1689
                b = i(g[0]);
 
1690
                g = Math.max(b,
 
1691
                    i(g[1] || ""));
 
1692
                b = e ? Math.max(b, e.getFullYear()) : b;
 
1693
                g = f ? Math.min(g, f.getFullYear()) : g;
 
1694
                for (j += '<select class="ui-datepicker-year" onchange="DP_jQuery_' + y + ".datepicker._selectMonthYear('#" + a.id + "', this, 'Y');\" onclick=\"DP_jQuery_" + y + ".datepicker._clickMonthYear('#" + a.id + "');\">"; b <= g; b++)j += '<option value="' + b + '"' + (b == c ? ' selected="selected"' : "") + ">" + b + "</option>";
 
1695
                j += "</select>"
 
1696
            }
 
1697
            j += this._get(a, "yearSuffix");
 
1698
            if (u)j += (h || !(k && l) ? "&#xa0;" : "") + o;
 
1699
            j += "</div>";
 
1700
            return j
 
1701
        }, _adjustInstDate: function (a, b, c) {
 
1702
            var e =
 
1703
                a.drawYear + (c == "Y" ? b : 0), f = a.drawMonth + (c == "M" ? b : 0);
 
1704
            b = Math.min(a.selectedDay, this._getDaysInMonth(e, f)) + (c == "D" ? b : 0);
 
1705
            e = this._restrictMinMax(a, this._daylightSavingAdjust(new Date(e, f, b)));
 
1706
            a.selectedDay = e.getDate();
 
1707
            a.drawMonth = a.selectedMonth = e.getMonth();
 
1708
            a.drawYear = a.selectedYear = e.getFullYear();
 
1709
            if (c == "M" || c == "Y")this._notifyChange(a)
 
1710
        }, _restrictMinMax: function (a, b) {
 
1711
            var c = this._getMinMaxDate(a, "min");
 
1712
            a = this._getMinMaxDate(a, "max");
 
1713
            b = c && b < c ? c : b;
 
1714
            return b = a && b > a ? a : b
 
1715
        }, _notifyChange: function (a) {
 
1716
            var b = this._get(a,
 
1717
                "onChangeMonthYear");
 
1718
            if (b)b.apply(a.input ? a.input[0] : null, [a.selectedYear, a.selectedMonth + 1, a])
 
1719
        }, _getNumberOfMonths: function (a) {
 
1720
            a = this._get(a, "numberOfMonths");
 
1721
            return a == null ? [1, 1] : typeof a == "number" ? [1, a] : a
 
1722
        }, _getMinMaxDate: function (a, b) {
 
1723
            return this._determineDate(a, this._get(a, b + "Date"), null)
 
1724
        }, _getDaysInMonth: function (a, b) {
 
1725
            return 32 - (new Date(a, b, 32)).getDate()
 
1726
        }, _getFirstDayOfMonth: function (a, b) {
 
1727
            return(new Date(a, b, 1)).getDay()
 
1728
        }, _canAdjustMonth: function (a, b, c, e) {
 
1729
            var f = this._getNumberOfMonths(a);
 
1730
            c = this._daylightSavingAdjust(new Date(c, e + (b < 0 ? b : f[0] * f[1]), 1));
 
1731
            b < 0 && c.setDate(this._getDaysInMonth(c.getFullYear(), c.getMonth()));
 
1732
            return this._isInRange(a, c)
 
1733
        }, _isInRange: function (a, b) {
 
1734
            var c = this._getMinMaxDate(a, "min");
 
1735
            a = this._getMinMaxDate(a, "max");
 
1736
            return(!c || b.getTime() >= c.getTime()) && (!a || b.getTime() <= a.getTime())
 
1737
        }, _getFormatConfig: function (a) {
 
1738
            var b = this._get(a, "shortYearCutoff");
 
1739
            b = typeof b != "string" ? b : (new Date).getFullYear() % 100 + parseInt(b, 10);
 
1740
            return{shortYearCutoff: b, dayNamesShort: this._get(a,
 
1741
                "dayNamesShort"), dayNames: this._get(a, "dayNames"), monthNamesShort: this._get(a, "monthNamesShort"), monthNames: this._get(a, "monthNames")}
 
1742
        }, _formatDate: function (a, b, c, e) {
 
1743
            if (!b) {
 
1744
                a.currentDay = a.selectedDay;
 
1745
                a.currentMonth = a.selectedMonth;
 
1746
                a.currentYear = a.selectedYear
 
1747
            }
 
1748
            b = b ? typeof b == "object" ? b : this._daylightSavingAdjust(new Date(e, c, b)) : this._daylightSavingAdjust(new Date(a.currentYear, a.currentMonth, a.currentDay));
 
1749
            return this.formatDate(this._get(a, "dateFormat"), b, this._getFormatConfig(a))
 
1750
        }});
 
1751
    d.fn.datepicker =
 
1752
        function (a) {
 
1753
            if (!d.datepicker.initialized) {
 
1754
                d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);
 
1755
                d.datepicker.initialized = true
 
1756
            }
 
1757
            var b = Array.prototype.slice.call(arguments, 1);
 
1758
            if (typeof a == "string" && (a == "isDisabled" || a == "getDate" || a == "widget"))return d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this[0]].concat(b));
 
1759
            if (a == "option" && arguments.length == 2 && typeof arguments[1] == "string")return d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this[0]].concat(b));
 
1760
            return this.each(function () {
 
1761
                typeof a == "string" ? d.datepicker["_" + a + "Datepicker"].apply(d.datepicker, [this].concat(b)) : d.datepicker._attachDatepicker(this, a)
 
1762
            })
 
1763
        };
 
1764
    d.datepicker = new L;
 
1765
    d.datepicker.initialized = false;
 
1766
    d.datepicker.uuid = (new Date).getTime();
 
1767
    d.datepicker.version = "1.8.5";
 
1768
    window["DP_jQuery_" + y] = d
 
1769
})(jQuery);
 
1770
;
 
1771
/*
 
1772
 * jQuery UI Progressbar 1.8.5
 
1773
 *
 
1774
 * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
 
1775
 * Dual licensed under the MIT or GPL Version 2 licenses.
 
1776
 * http://jquery.org/license
 
1777
 *
 
1778
 * http://docs.jquery.com/UI/Progressbar
 
1779
 *
 
1780
 * Depends:
 
1781
 *   jquery.ui.core.js
 
1782
 *   jquery.ui.widget.js
 
1783
 */
 
1784
(function (b, c) {
 
1785
    b.widget("ui.progressbar", {options: {value: 0}, min: 0, max: 100, _create: function () {
 
1786
        this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role: "progressbar", "aria-valuemin": this.min, "aria-valuemax": this.max, "aria-valuenow": this._value()});
 
1787
        this.valueDiv = b("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);
 
1788
        this._refreshValue()
 
1789
    }, destroy: function () {
 
1790
        this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
 
1791
        this.valueDiv.remove();
 
1792
        b.Widget.prototype.destroy.apply(this, arguments)
 
1793
    }, value: function (a) {
 
1794
        if (a === c)return this._value();
 
1795
        this._setOption("value", a);
 
1796
        return this
 
1797
    }, _setOption: function (a, d) {
 
1798
        if (a === "value") {
 
1799
            this.options.value = d;
 
1800
            this._refreshValue();
 
1801
            this._trigger("change")
 
1802
        }
 
1803
        b.Widget.prototype._setOption.apply(this, arguments)
 
1804
    }, _value: function () {
 
1805
        var a = this.options.value;
 
1806
        if (typeof a !== "number")a = 0;
 
1807
        return Math.min(this.max, Math.max(this.min, a))
 
1808
    }, _refreshValue: function () {
 
1809
        var a = this.value();
 
1810
        this.valueDiv.toggleClass("ui-corner-right",
 
1811
            a === this.max).width(a + "%");
 
1812
        this.element.attr("aria-valuenow", a)
 
1813
    }});
 
1814
    b.extend(b.ui.progressbar, {version: "1.8.5"})
 
1815
})(jQuery);
 
1816
;
 
 
b'\\ No newline at end of file'