/ * !
* jQuery JavaScript Library v1 . 6.2
* http : //jquery.com/
*
* Copyright 2011 , John Resig
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* Includes Sizzle . js
* http : //sizzlejs.com/
* Copyright 2011 , The Dojo Foundation
* Released under the MIT , BSD , and GPL Licenses .
*
* Date : Thu Jun 30 14 : 16 : 56 2011 - 0400
* /
( function ( a , b ) { function cv ( a ) { return f . isWindow ( a ) ? a : a . nodeType === 9 ? a . defaultView || a . parentWindow : ! 1 } function cs ( a ) { if ( ! cg [ a ] ) { var b = c . body , d = f ( "<" + a + ">" ) . appendTo ( b ) , e = d . css ( "display" ) ; d . remove ( ) ; if ( e === "none" || e === "" ) { ch || ( ch = c . createElement ( "iframe" ) , ch . frameBorder = ch . width = ch . height = 0 ) , b . appendChild ( ch ) ; if ( ! ci || ! ch . createElement ) ci = ( ch . contentWindow || ch . contentDocument ) . document , ci . write ( ( c . compatMode === "CSS1Compat" ? "<!doctype html>" : "" ) + "<html><body>" ) , ci . close ( ) ; d = ci . createElement ( a ) , ci . body . appendChild ( d ) , e = f . css ( d , "display" ) , b . removeChild ( ch ) } cg [ a ] = e } return cg [ a ] } function cr ( a , b ) { var c = { } ; f . each ( cm . concat . apply ( [ ] , cm . slice ( 0 , b ) ) , function ( ) { c [ this ] = a } ) ; return c } function cq ( ) { cn = b } function cp ( ) { setTimeout ( cq , 0 ) ; return cn = f . now ( ) } function cf ( ) { try { return new a . ActiveXObject ( "Microsoft.XMLHTTP" ) } catch ( b ) { } } function ce ( ) { try { return new a . XMLHttpRequest } catch ( b ) { } } function b$ ( a , c ) { a . dataFilter && ( c = a . dataFilter ( c , a . dataType ) ) ; var d = a . dataTypes , e = { } , g , h , i = d . length , j , k = d [ 0 ] , l , m , n , o , p ; for ( g = 1 ; g < i ; g ++ ) { if ( g === 1 ) for ( h in a . converters ) typeof h == "string" && ( e [ h . toLowerCase ( ) ] = a . converters [ h ] ) ; l = k , k = d [ g ] ; if ( k === "*" ) k = l ; else if ( l !== "*" && l !== k ) { m = l + " " + k , n = e [ m ] || e [ "* " + k ] ; if ( ! n ) { p = b ; for ( o in e ) { j = o . split ( " " ) ; if ( j [ 0 ] === l || j [ 0 ] === "*" ) { p = e [ j [ 1 ] + " " + k ] ; if ( p ) { o = e [ o ] , o === ! 0 ? n = p : p === ! 0 && ( n = o ) ; break } } } } ! n && ! p && f . error ( "No conversion from " + m . replace ( " " , " to " ) ) , n !== ! 0 && ( c = n ? n ( c ) : p ( o ( c ) ) ) } } return c } function bZ ( a , c , d ) { var e = a . contents , f = a . dataTypes , g = a . responseFields , h , i , j , k ; for ( i in g ) i in d && ( c [ g [ i ] ] = d [ i ] ) ; while ( f [ 0 ] === "*" ) f . shift ( ) , h === b && ( h = a . mimeType || c . getResponseHeader ( "content-type" ) ) ; if ( h ) for ( i in e ) if ( e [ i ] && e [ i ] . test ( h ) ) { f . unshift ( i ) ; break } if ( f [ 0 ] in d ) j = f [ 0 ] ; else { for ( i in d ) { if ( ! f [ 0 ] || a . converters [ i + " " + f [ 0 ] ] ) { j = i ; break } k || ( k = i ) } j = j || k } if ( j ) { j !== f [ 0 ] && f . unshift ( j ) ; return d [ j ] } } function bY ( a , b , c , d ) { if ( f . isArray ( b ) ) f . each ( b , function ( b , e ) { c || bC . test ( a ) ? d ( a , e ) : bY ( a + "[" + ( typeof e == "object" || f . isArray ( e ) ? b : "" ) + "]" , e , c , d ) } ) ; else if ( ! c && b != null && typeof b == "object" ) for ( var e in b ) bY ( a + "[" + e + "]" , b [ e ] , c , d ) ; else d ( a , b ) } function bX ( a , c , d , e , f , g ) { f = f || c . dataTypes [ 0 ] , g = g || { } , g [ f ] = ! 0 ; var h = a [ f ] , i = 0 , j = h ? h . length : 0 , k = a === bR , l ; for ( ; i < j && ( k || ! l ) ; i ++ ) l = h [ i ] ( c , d , e ) , typeof l == "string" && ( ! k || g [ l ] ? l = b : ( c . dataTypes . unshift ( l ) , l = bX ( a , c , d , e , l , g ) ) ) ; ( k || ! l ) && ! g [ "*" ] && ( l = bX ( a , c , d , e , "*" , g ) ) ; return l } function bW ( a ) { return function ( b , c ) { typeof b != "string" && ( c = b , b = "*" ) ; if ( f . isFunction ( c ) ) { var d = b . toLowerCase ( ) . split ( bN ) , e = 0 , g = d . length , h , i , j ; for ( ; e < g ; e ++ ) h = d [ e ] , j = /^\+/ . test ( h ) , j && ( h = h . substr ( 1 ) || "*" ) , i = a [ h ] = a [ h ] || [ ] , i [ j ? "unshift" : "push" ] ( c ) } } } function bA ( a , b , c ) { var d = b === "width" ? a . offsetWidth : a . offsetHeight , e = b === "width" ? bv : bw ; if ( d > 0 ) { c !== "border" && f . each ( e , function ( ) { c || ( d -= parseFloat ( f . css ( a , "padding" + this ) ) || 0 ) , c === "margin" ? d += parseFloat ( f . css ( a , c + this ) ) || 0 : d -= parseFloat ( f . css ( a , "border" + this + "Width" ) ) || 0 } ) ; return d + "px" } d = bx ( a , b , b ) ; if ( d < 0 || d == null ) d = a . style [ b ] || 0 ; d = parseFloat ( d ) || 0 , c && f . each ( e , function ( ) { d += parseFloat ( f . css ( a , "padding" + this ) ) || 0 , c !== "padding" && ( d += parseFloat ( f . css ( a , "border" + this + "Width" ) ) || 0 ) , c === "margin" && ( d += parseFloat ( f . css ( a , c + this ) ) || 0 ) } ) ; return d + "px" } function bm ( a , b ) { b . src ? f . ajax ( { url : b . src , async : ! 1 , dataType : "script" } ) : f . globalEval ( ( b . text || b . textContent || b . innerHTML || "" ) . replace ( be , "/*$0*/" ) ) , b . parentNode && b . parentNode . removeChild ( b ) } function bl ( a ) { f . nodeName ( a , "input" ) ? bk ( a ) : "getElementsByTagName" in a && f . grep ( a . getElementsByTagName ( "input" ) , bk ) } function bk ( a ) { if ( a . type === "checkbox" || a . type === "radio" ) a . defaultChecked = a . checked } function bj ( a ) { return "getElementsByTagName" in a ? a . getElementsByTagName ( "*" ) : "querySelectorAll" in a ? a . querySelectorAll ( "*" ) : [ ] } function bi ( a , b ) { var c ; if ( b . nodeType === 1 ) { b . clearAttributes && b . clearAttributes ( ) , b . mergeAttributes && b . mergeAttributes ( a ) , c = b . nodeName . toLowerCase ( ) ; if ( c === "object" ) b . outerHTML = a . outerHTML ; else if ( c !== "input" || a . type !== "checkbox" && a . type !== "radio" ) { if ( c === "option" ) b . selected = a . defaultSelected ; else if ( c === "input" || c === "textarea" ) b . defaultValue = a . defaultValue } else a . checked && ( b . defaultChecked = b . checked = a . checked ) , b . value !== a . value && ( b . value = a . value ) ; b . removeAttribute ( f . expando ) } } function bh (
shift ( ) , i . sort ( ) ) ; if ( ! ! e && ! f . event . customEvent [ h ] || ! ! f . event . global [ h ] ) { c = typeof c == "object" ? c [ f . expando ] ? c : new f . Event ( h , c ) : new f . Event ( h ) , c . type = h , c . exclusive = j , c . namespace = i . join ( "." ) , c . namespace_re = new RegExp ( "(^|\\.)" + i . join ( "\\.(?:.*\\.)?" ) + "(\\.|$)" ) ; if ( g || ! e ) c . preventDefault ( ) , c . stopPropagation ( ) ; if ( ! e ) { f . each ( f . cache , function ( ) { var a = f . expando , b = this [ a ] ; b && b . events && b . events [ h ] && f . event . trigger ( c , d , b . handle . elem ) } ) ; return } if ( e . nodeType === 3 || e . nodeType === 8 ) return ; c . result = b , c . target = e , d = d != null ? f . makeArray ( d ) : [ ] , d . unshift ( c ) ; var k = e , l = h . indexOf ( ":" ) < 0 ? "on" + h : "" ; do { var m = f . _ data ( k , "handle" ) ; c . currentTarget = k , m && m . apply ( k , d ) , l && f . acceptData ( k ) && k [ l ] && k [ l ] . apply ( k , d ) === ! 1 && ( c . result = ! 1 , c . preventDefault ( ) ) , k = k . parentNode || k . ownerDocument || k === c . target . ownerDocument && a } while ( k && ! c . isPropagationStopped ( ) ) ; if ( ! c . isDefaultPrevented ( ) ) { var n , o = f . event . special [ h ] || { } ; if ( ( ! o . _ default || o . _ default . call ( e . ownerDocument , c ) === ! 1 ) && ( h !== "click" || ! f . nodeName ( e , "a" ) ) && f . acceptData ( e ) ) { try { l && e [ h ] && ( n = e [ l ] , n && ( e [ l ] = null ) , f . event . triggered = h , e [ h ] ( ) ) } catch ( p ) { } n && ( e [ l ] = n ) , f . event . triggered = b } } return c . result } } , handle : function ( c ) { c = f . event . fix ( c || a . event ) ; var d = ( ( f . _ data ( this , "events" ) || { } ) [ c . type ] || [ ] ) . slice ( 0 ) , e = ! c . exclusive && ! c . namespace , g = Array . prototype . slice . call ( arguments , 0 ) ; g [ 0 ] = c , c . currentTarget = this ; for ( var h = 0 , i = d . length ; h < i ; h ++ ) { var j = d [ h ] ; if ( e || c . namespace_re . test ( j . namespace ) ) { c . handler = j . handler , c . data = j . data , c . handleObj = j ; var k = j . handler . apply ( this , g ) ; k !== b && ( c . result = k , k === ! 1 && ( c . preventDefault ( ) , c . stopPropagation ( ) ) ) ; if ( c . isImmediatePropagationStopped ( ) ) break } } return c . result } , props : "altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which" . split ( " " ) , fix : function ( a ) { if ( a [ f . expando ] ) return a ; var d = a ; a = f . Event ( d ) ; for ( var e = this . props . length , g ; e ; ) g = this . props [ -- e ] , a [ g ] = d [ g ] ; a . target || ( a . target = a . srcElement || c ) , a . target . nodeType === 3 && ( a . target = a . target . parentNode ) , ! a . relatedTarget && a . fromElement && ( a . relatedTarget = a . fromElement === a . target ? a . toElement : a . fromElement ) ; if ( a . pageX == null && a . clientX != null ) { var h = a . target . ownerDocument || c , i = h . documentElement , j = h . body ; a . pageX = a . clientX + ( i && i . scrollLeft || j && j . scrollLeft || 0 ) - ( i && i . clientLeft || j && j . clientLeft || 0 ) , a . pageY = a . clientY + ( i && i . scrollTop || j && j . scrollTop || 0 ) - ( i && i . clientTop || j && j . clientTop || 0 ) } a . which == null && ( a . charCode != null || a . keyCode != null ) && ( a . which = a . charCode != null ? a . charCode : a . keyCode ) , ! a . metaKey && a . ctrlKey && ( a . metaKey = a . ctrlKey ) , ! a . which && a . button !== b && ( a . which = a . button & 1 ? 1 : a . button & 2 ? 3 : a . button & 4 ? 2 : 0 ) ; return a } , guid : 1e8 , proxy : f . proxy , special : { ready : { setup : f . bindReady , teardown : f . noop } , live : { add : function ( a ) { f . event . add ( this , N ( a . origType , a . selector ) , f . extend ( { } , a , { handler : M , guid : a . handler . guid } ) ) } , remove : function ( a ) { f . event . remove ( this , N ( a . origType , a . selector ) , a ) } } , beforeunload : { setup : function ( a , b , c ) { f . isWindow ( this ) && ( this . onbeforeunload = c ) } , teardown : function ( a , b ) { this . onbeforeunload === b && ( this . onbeforeunload = null ) } } } } , f . removeEvent = c . removeEventListener ? function ( a , b , c ) { a . removeEventListener && a . removeEventListener ( b , c , ! 1 ) } : function ( a , b , c ) { a . detachEvent && a . detachEvent ( "on" + b , c ) } , f . Event = function ( a , b ) { if ( ! this . preventDefault ) return new f . Event ( a , b ) ; a && a . type ? ( this . originalEvent = a , this . type = a . type , this . isDefaultPrevented = a . defaultPrevented || a . returnValue === ! 1 || a . getPreventDefault && a . getPreventDefault ( ) ? E : D ) : this . type = a , b && f . extend ( this , b ) , this . timeStamp = f . now ( ) , this [ f . expando ] = ! 0 } , f . Event . prototype = { preventDefault : function ( ) { this . isDefaultPrevented = E ; var a = this . originalEvent ; ! a || ( a . preventDefault ? a . preventDefault ( ) : a . returnValue = ! 1 ) } , stopPropagation : function ( ) { this . isPropagationStopped = E ; var a = this . originalEvent ; ! a || ( a . stopPropagation && a . stopPropagation ( ) , a . cancelBubble = ! 0 ) } , stopImmediatePropagation : function ( ) { this . isImmediatePropagationStopped = E , this . stopPropagation ( ) } , isDefaultPrevented : D , isPropagationStopped : D
) } return this . pushStack ( d , a , e . selector ) } } ) , f . extend ( { clone : function ( a , b , c ) { var d = a . cloneNode ( ! 0 ) , e , g , h ; if ( ( ! f . support . noCloneEvent || ! f . support . noCloneChecked ) && ( a . nodeType === 1 || a . nodeType === 11 ) && ! f . isXMLDoc ( a ) ) { bi ( a , d ) , e = bj ( a ) , g = bj ( d ) ; for ( h = 0 ; e [ h ] ; ++ h ) bi ( e [ h ] , g [ h ] ) } if ( b ) { bh ( a , d ) ; if ( c ) { e = bj ( a ) , g = bj ( d ) ; for ( h = 0 ; e [ h ] ; ++ h ) bh ( e [ h ] , g [ h ] ) } } e = g = null ; return d } , clean : function ( a , b , d , e ) { var g ; b = b || c , typeof b . createElement == "undefined" && ( b = b . ownerDocument || b [ 0 ] && b [ 0 ] . ownerDocument || c ) ; var h = [ ] , i ; for ( var j = 0 , k ; ( k = a [ j ] ) != null ; j ++ ) { typeof k == "number" && ( k += "" ) ; if ( ! k ) continue ; if ( typeof k == "string" ) if ( ! ba . test ( k ) ) k = b . createTextNode ( k ) ; else { k = k . replace ( Z , "<$1></$2>" ) ; var l = ( $ . exec ( k ) || [ "" , "" ] ) [ 1 ] . toLowerCase ( ) , m = bf [ l ] || bf . _ default , n = m [ 0 ] , o = b . createElement ( "div" ) ; o . innerHTML = m [ 1 ] + k + m [ 2 ] ; while ( n -- ) o = o . lastChild ; if ( ! f . support . tbody ) { var p = _ . test ( k ) , q = l === "table" && ! p ? o . firstChild && o . firstChild . childNodes : m [ 1 ] === "<table>" && ! p ? o . childNodes : [ ] ; for ( i = q . length - 1 ; i >= 0 ; -- i ) f . nodeName ( q [ i ] , "tbody" ) && ! q [ i ] . childNodes . length && q [ i ] . parentNode . removeChild ( q [ i ] ) } ! f . support . leadingWhitespace && Y . test ( k ) && o . insertBefore ( b . createTextNode ( Y . exec ( k ) [ 0 ] ) , o . firstChild ) , k = o . childNodes } var r ; if ( ! f . support . appendChecked ) if ( k [ 0 ] && typeof ( r = k . length ) == "number" ) for ( i = 0 ; i < r ; i ++ ) bl ( k [ i ] ) ; else bl ( k ) ; k . nodeType ? h . push ( k ) : h = f . merge ( h , k ) } if ( d ) { g = function ( a ) { return ! a . type || bd . test ( a . type ) } ; for ( j = 0 ; h [ j ] ; j ++ ) if ( e && f . nodeName ( h [ j ] , "script" ) && ( ! h [ j ] . type || h [ j ] . type . toLowerCase ( ) === "text/javascript" ) ) e . push ( h [ j ] . parentNode ? h [ j ] . parentNode . removeChild ( h [ j ] ) : h [ j ] ) ; else { if ( h [ j ] . nodeType === 1 ) { var s = f . grep ( h [ j ] . getElementsByTagName ( "script" ) , g ) ; h . splice . apply ( h , [ j + 1 , 0 ] . concat ( s ) ) } d . appendChild ( h [ j ] ) } } return h } , cleanData : function ( a ) { var b , c , d = f . cache , e = f . expando , g = f . event . special , h = f . support . deleteExpando ; for ( var i = 0 , j ; ( j = a [ i ] ) != null ; i ++ ) { if ( j . nodeName && f . noData [ j . nodeName . toLowerCase ( ) ] ) continue ; c = j [ f . expando ] ; if ( c ) { b = d [ c ] && d [ c ] [ e ] ; if ( b && b . events ) { for ( var k in b . events ) g [ k ] ? f . event . remove ( j , k ) : f . removeEvent ( j , k , b . handle ) ; b . handle && ( b . handle . elem = null ) } h ? delete j [ f . expando ] : j . removeAttribute && j . removeAttribute ( f . expando ) , delete d [ c ] } } } } ) ; var bn = /alpha\([^)]*\)/i , bo = /opacity=([^)]*)/ , bp = /([A-Z]|^ms)/g , bq = /^-?\d+(?:px)?$/i , br = /^-?\d/ , bs = /^[+\-]=/ , bt = /[^+\-\.\de]+/g , bu = { position : "absolute" , visibility : "hidden" , display : "block" } , bv = [ "Left" , "Right" ] , bw = [ "Top" , "Bottom" ] , bx , by , bz ; f . fn . css = function ( a , c ) { if ( arguments . length === 2 && c === b ) return this ; return f . access ( this , a , c , ! 0 , function ( a , c , d ) { return d !== b ? f . style ( a , c , d ) : f . css ( a , c ) } ) } , f . extend ( { cssHooks : { opacity : { get : function ( a , b ) { if ( b ) { var c = bx ( a , "opacity" , "opacity" ) ; return c === "" ? "1" : c } return a . style . opacity } } } , cssNumber : { fillOpacity : ! 0 , fontWeight : ! 0 , lineHeight : ! 0 , opacity : ! 0 , orphans : ! 0 , widows : ! 0 , zIndex : ! 0 , zoom : ! 0 } , cssProps : { "float" : f . support . cssFloat ? "cssFloat" : "styleFloat" } , style : function ( a , c , d , e ) { if ( ! ! a && a . nodeType !== 3 && a . nodeType !== 8 && ! ! a . style ) { var g , h , i = f . camelCase ( c ) , j = a . style , k = f . cssHooks [ i ] ; c = f . cssProps [ i ] || i ; if ( d === b ) { if ( k && "get" in k && ( g = k . get ( a , ! 1 , e ) ) !== b ) return g ; return j [ c ] } h = typeof d ; if ( h === "number" && isNaN ( d ) || d == null ) return ; h === "string" && bs . test ( d ) && ( d = + d . replace ( bt , "" ) + parseFloat ( f . css ( a , c ) ) , h = "number" ) , h === "number" && ! f . cssNumber [ i ] && ( d += "px" ) ; if ( ! k || ! ( "set" in k ) || ( d = k . set ( a , d ) ) !== b ) try { j [ c ] = d } catch ( l ) { } } } , css : function ( a , c , d ) { var e , g ; c = f . camelCase ( c ) , g = f . cssHooks [ c ] , c = f . cssProps [ c ] || c , c === "cssFloat" && ( c = "float" ) ; if ( g && "get" in g && ( e = g . get ( a , ! 0 , d ) ) !== b ) return e ; if ( bx ) return bx ( a , c ) } , swap : function ( a , b , c ) { var d = { } ; for ( var e in b ) d [ e ] = a . style [ e ] , a . style [ e ] = b [ e ] ; c . call ( a ) ; for ( e in b ) a . style [ e ] = d [ e ] } } ) , f . curCSS = f . css , f . each ( [ "height" , "width" ] , function ( a , b ) { f . cssHooks [ b ] = { get : function ( a , c , d ) { var e ; if ( c ) { if ( a . offsetWidth !== 0 ) return bA ( a , b , d ) ; f . swap ( a , bu , function ( ) { e = bA ( a , b , d ) } ) ; return e } } , set : function ( a , b ) { if ( ! bq . test ( b ) ) return b ; b = parseFloat ( b ) ; if ( b >= 0 ) return b + "px" } } } ) , f . support . opacity || ( f . cssHooks . opacity = { get : function ( a , b ) { return bo . test ( ( b && a . currentStyle ? a . currentStyle . filter : a . style . filter ) || "" ) ? parseFloat ( RegExp . $1 ) / 100 + "" : b ? "1" : "" } , set : function ( a , b ) { var c = a . style , d = a . currentStyle ; c . zoom = 1 ; var e = f . isNaN ( b ) ? "" : "alpha(opacity=" + b * 100 + ")" ,
/ * !
* jQuery UI 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI
* /
( function ( c , j ) { function k ( a , b ) { var d = a . nodeName . toLowerCase ( ) ; if ( "area" === d ) { b = a . parentNode ; d = b . name ; if ( ! a . href || ! d || b . nodeName . toLowerCase ( ) !== "map" ) return false ; a = c ( "img[usemap=#" + d + "]" ) [ 0 ] ; return ! ! a && l ( a ) } return ( /input|select|textarea|button|object/ . test ( d ) ? ! a . disabled : "a" == d ? a . href || b : b ) && l ( a ) } function l ( a ) { return ! c ( a ) . parents ( ) . andSelf ( ) . filter ( function ( ) { return c . curCSS ( this , "visibility" ) === "hidden" || c . expr . filters . hidden ( this ) } ) . length } c . ui = c . ui || { } ; if ( ! c . ui . version ) { c . extend ( c . ui , { version : "1.8.15" ,
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 , NUMPAD_SUBTRACT : 109 , PAGE_DOWN : 34 , PAGE_UP : 33 , PERIOD : 190 , RIGHT : 39 , SHIFT : 16 , SPACE : 32 , TAB : 9 , UP : 38 , WINDOWS : 91 } } ) ; c . fn . extend ( { propAttr : c . fn . prop || c . fn . attr , _ focus : c . fn . focus , focus : function ( a , b ) { return typeof a === "number" ? this . each ( function ( ) { var d =
this ; setTimeout ( function ( ) { c ( d ) . focus ( ) ; b && b . call ( d ) } , a ) } ) : this . _ focus . apply ( this , arguments ) } , scrollParent : function ( ) { var a ; a = c . browser . msie && /(static|relative)/ . test ( this . css ( "position" ) ) || /absolute/ . test ( this . css ( "position" ) ) ? this . parents ( ) . filter ( function ( ) { return /(relative|absolute|fixed)/ . test ( c . curCSS ( this , "position" , 1 ) ) && /(auto|scroll)/ . test ( c . curCSS ( this , "overflow" , 1 ) + c . curCSS ( this , "overflow-y" , 1 ) + c . curCSS ( this , "overflow-x" , 1 ) ) } ) . eq ( 0 ) : this . parents ( ) . filter ( function ( ) { return /(auto|scroll)/ . test ( c . curCSS ( this ,
"overflow" , 1 ) + c . curCSS ( this , "overflow-y" , 1 ) + c . curCSS ( this , "overflow-x" , 1 ) ) } ) . eq ( 0 ) ; return /fixed/ . test ( this . css ( "position" ) ) || ! a . length ? c ( document ) : a } , zIndex : function ( a ) { if ( a !== j ) return this . css ( "zIndex" , a ) ; if ( this . length ) { a = c ( this [ 0 ] ) ; for ( var b ; a . length && a [ 0 ] !== document ; ) { b = a . css ( "position" ) ; if ( b === "absolute" || b === "relative" || b === "fixed" ) { b = parseInt ( a . css ( "zIndex" ) , 10 ) ; if ( ! isNaN ( b ) && b !== 0 ) return b } a = a . parent ( ) } } return 0 } , disableSelection : function ( ) { return this . bind ( ( c . support . selectstart ? "selectstart" :
"mousedown" ) + ".ui-disableSelection" , function ( a ) { a . preventDefault ( ) } ) } , enableSelection : function ( ) { return this . unbind ( ".ui-disableSelection" ) } } ) ; c . each ( [ "Width" , "Height" ] , function ( a , b ) { function d ( f , g , m , n ) { c . each ( e , function ( ) { g -= parseFloat ( c . curCSS ( f , "padding" + this , true ) ) || 0 ; if ( m ) g -= parseFloat ( c . curCSS ( f , "border" + this + "Width" , true ) ) || 0 ; if ( n ) g -= parseFloat ( c . curCSS ( f , "margin" + this , true ) ) || 0 } ) ; return g } 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 } ; c . fn [ "inner" + b ] = function ( f ) { if ( f === j ) return i [ "inner" + b ] . call ( this ) ; return this . each ( function ( ) { c ( this ) . css ( h , d ( this , f ) + "px" ) } ) } ; c . fn [ "outer" + b ] = function ( f , g ) { if ( typeof f !== "number" ) return i [ "outer" + b ] . call ( this , f ) ; return this . each ( function ( ) { c ( this ) . css ( h , d ( this , f , true , g ) + "px" ) } ) } } ) ; c . extend ( c . expr [ ":" ] , { data : function ( a , b , d ) { return ! ! c . data ( a , d [ 3 ] ) } , focusable : function ( a ) { return k ( a , ! isNaN ( c . attr ( a , "tabindex" ) ) ) } , tabbable : function ( a ) { var b = c . attr ( a ,
"tabindex" ) , d = isNaN ( b ) ; return ( d || b >= 0 ) && k ( a , ! d ) } } ) ; c ( function ( ) { var a = document . body , b = a . appendChild ( b = document . createElement ( "div" ) ) ; c . extend ( b . style , { minHeight : "100px" , height : "auto" , padding : 0 , borderWidth : 0 } ) ; c . support . minHeight = b . offsetHeight === 100 ; c . support . selectstart = "onselectstart" in b ; a . removeChild ( b ) . style . display = "none" } ) ; c . extend ( c . ui , { plugin : { add : function ( a , b , d ) { a = c . ui [ a ] . prototype ; for ( var e in d ) { a . plugins [ e ] = a . plugins [ e ] || [ ] ; a . plugins [ e ] . push ( [ b , d [ e ] ] ) } } , call : function ( a , b , d ) { 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 , d ) } } , contains : function ( a , b ) { return document . compareDocumentPosition ? a . compareDocumentPosition ( b ) & 16 : a !== b && a . contains ( b ) } , hasScroll : function ( a , b ) { if ( c ( a ) . css ( "overflow" ) === "hidden" ) return false ; b = b && b === "left" ? "scrollLeft" : "scrollTop" ; var d = false ; if ( a [ b ] > 0 ) return true ; a [ b ] = 1 ; d = a [ b ] > 0 ; a [ b ] = 0 ; return d } , isOverAxis : function ( a , b , d ) { return a > b && a < b + d } , isOver : function ( a , b , d , e , h , i ) { return c . ui . isOverAxis ( a , d , h ) &&
c . ui . isOverAxis ( b , e , i ) } } ) } } ) ( jQuery ) ;
; / * !
* jQuery UI Widget 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Widget
* /
( function ( b , j ) { if ( b . cleanData ) { var k = b . cleanData ; b . cleanData = function ( a ) { for ( var c = 0 , d ; ( d = a [ c ] ) != null ; c ++ ) b ( d ) . triggerHandler ( "remove" ) ; k ( a ) } } else { var l = b . fn . remove ; b . fn . remove = function ( a , c ) { return this . each ( function ( ) { if ( ! c ) if ( ! a || b . filter ( a , [ this ] ) . length ) b ( "*" , this ) . add ( [ this ] ) . each ( function ( ) { b ( this ) . triggerHandler ( "remove" ) } ) ; return l . call ( b ( this ) , a , c ) } ) } } b . widget = function ( a , c , d ) { var e = a . split ( "." ) [ 0 ] , f ; a = a . split ( "." ) [ 1 ] ; f = e + "-" + a ; if ( ! d ) { d = c ; c = b . Widget } b . expr [ ":" ] [ f ] = function ( h ) { return ! ! b . data ( h ,
a ) } ; b [ e ] = b [ e ] || { } ; b [ e ] [ a ] = function ( h , g ) { arguments . length && this . _ createWidget ( h , g ) } ; c = new c ; c . options = b . extend ( true , { } , c . options ) ; b [ e ] [ a ] . prototype = b . extend ( true , c , { namespace : e , widgetName : a , widgetEventPrefix : b [ e ] [ a ] . prototype . widgetEventPrefix || a , widgetBaseClass : f } , d ) ; b . widget . bridge ( a , b [ e ] [ a ] ) } ; b . widget . bridge = function ( a , c ) { b . fn [ a ] = function ( d ) { var e = typeof d === "string" , f = Array . prototype . slice . call ( arguments , 1 ) , h = this ; d = ! e && f . length ? b . extend . apply ( null , [ true , d ] . concat ( f ) ) : d ; if ( e && d . charAt ( 0 ) === "_" ) return h ;
e ? this . each ( function ( ) { var g = b . data ( this , a ) , i = g && b . isFunction ( g [ d ] ) ? g [ d ] . apply ( g , f ) : g ; if ( i !== g && i !== j ) { h = i ; return false } } ) : this . each ( function ( ) { var g = b . data ( this , a ) ; g ? g . option ( d || { } ) . _ init ( ) : b . data ( this , a , new c ( d , this ) ) } ) ; return h } } ; b . Widget = function ( a , c ) { arguments . length && this . _ createWidget ( a , c ) } ; b . Widget . prototype = { widgetName : "widget" , widgetEventPrefix : "" , options : { disabled : false } , _ createWidget : function ( a , c ) { b . data ( c , this . widgetName , this ) ; this . element = b ( c ) ; this . options = b . extend ( true , { } , this . options ,
this . _ getCreateOptions ( ) , a ) ; var d = this ; this . element . bind ( "remove." + this . widgetName , function ( ) { d . destroy ( ) } ) ; this . _ create ( ) ; this . _ trigger ( "create" ) ; this . _ init ( ) } , _ getCreateOptions : function ( ) { return b . metadata && b . metadata . get ( this . element [ 0 ] ) [ this . widgetName ] } , _ create : function ( ) { } , _ init : function ( ) { } , destroy : function ( ) { this . element . unbind ( "." + this . widgetName ) . removeData ( this . widgetName ) ; this . widget ( ) . unbind ( "." + this . widgetName ) . removeAttr ( "aria-disabled" ) . removeClass ( this . widgetBaseClass + "-disabled ui-state-disabled" ) } ,
widget : function ( ) { return this . element } , option : function ( a , c ) { var d = a ; if ( arguments . length === 0 ) return b . extend ( { } , this . options ) ; if ( typeof a === "string" ) { if ( c === j ) return this . options [ a ] ; d = { } ; d [ a ] = c } this . _ setOptions ( d ) ; return this } , _ setOptions : function ( a ) { var c = this ; b . each ( a , function ( d , e ) { c . _ setOption ( d , e ) } ) ; return this } , _ setOption : function ( a , c ) { this . options [ a ] = c ; if ( a === "disabled" ) this . widget ( ) [ c ? "addClass" : "removeClass" ] ( this . widgetBaseClass + "-disabled ui-state-disabled" ) . attr ( "aria-disabled" , c ) ; return this } ,
enable : function ( ) { return this . _ setOption ( "disabled" , false ) } , disable : function ( ) { return this . _ setOption ( "disabled" , true ) } , _ trigger : function ( a , c , d ) { var e = this . options [ a ] ; c = b . Event ( c ) ; c . type = ( a === this . widgetEventPrefix ? a : this . widgetEventPrefix + a ) . toLowerCase ( ) ; d = d || { } ; if ( c . originalEvent ) { a = b . event . props . length ; for ( var f ; a ; ) { f = b . event . props [ -- a ] ; c [ f ] = c . originalEvent [ f ] } } this . element . trigger ( c , d ) ; return ! ( b . isFunction ( e ) && e . call ( this . element [ 0 ] , c , d ) === false || c . isDefaultPrevented ( ) ) } } } ) ( jQuery ) ;
; / * !
* jQuery UI Mouse 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Mouse
*
* Depends :
* jquery . ui . widget . js
* /
( function ( b ) { b . widget ( "ui.mouse" , { options : { cancel : ":input,option" , distance : 1 , delay : 0 } , _ mouseInit : function ( ) { var a = this ; this . element . bind ( "mousedown." + this . widgetName , function ( c ) { return a . _ mouseDown ( c ) } ) . bind ( "click." + this . widgetName , function ( c ) { if ( true === b . data ( c . target , a . widgetName + ".preventClickEvent" ) ) { b . removeData ( c . target , a . widgetName + ".preventClickEvent" ) ; c . stopImmediatePropagation ( ) ; return false } } ) ; this . started = false } , _ mouseDestroy : function ( ) { this . element . unbind ( "." + this . widgetName ) } , _ mouseDown : function ( a ) { a . originalEvent =
a . originalEvent || { } ; if ( ! a . originalEvent . mouseHandled ) { this . _ mouseStarted && this . _ mouseUp ( a ) ; this . _ mouseDownEvent = a ; var c = this , e = a . which == 1 , f = typeof this . options . cancel == "string" ? b ( a . target ) . closest ( this . options . cancel ) . length : false ; if ( ! e || f || ! this . _ mouseCapture ( a ) ) return true ; this . mouseDelayMet = ! this . options . delay ; if ( ! this . mouseDelayMet ) this . _ mouseDelayTimer = setTimeout ( function ( ) { c . mouseDelayMet = true } , this . options . delay ) ; if ( this . _ mouseDistanceMet ( a ) && this . _ mouseDelayMet ( a ) ) { this . _ mouseStarted = this . _ mouseStart ( a ) !==
false ; if ( ! this . _ mouseStarted ) { a . preventDefault ( ) ; return true } } true === b . data ( a . target , this . widgetName + ".preventClickEvent" ) && b . removeData ( a . target , this . widgetName + ".preventClickEvent" ) ; this . _ mouseMoveDelegate = function ( d ) { return c . _ mouseMove ( d ) } ; this . _ mouseUpDelegate = function ( d ) { return c . _ mouseUp ( d ) } ; b ( document ) . bind ( "mousemove." + this . widgetName , this . _ mouseMoveDelegate ) . bind ( "mouseup." + this . widgetName , this . _ mouseUpDelegate ) ; a . preventDefault ( ) ; return a . originalEvent . mouseHandled = true } } , _ mouseMove : function ( a ) { if ( b . browser . msie &&
! ( document . documentMode >= 9 ) && ! a . button ) return this . _ mouseUp ( a ) ; if ( this . _ mouseStarted ) { this . _ mouseDrag ( a ) ; return a . preventDefault ( ) } if ( this . _ mouseDistanceMet ( a ) && this . _ mouseDelayMet ( a ) ) ( this . _ mouseStarted = this . _ mouseStart ( this . _ mouseDownEvent , a ) !== false ) ? this . _ mouseDrag ( a ) : this . _ mouseUp ( a ) ; return ! this . _ mouseStarted } , _ mouseUp : function ( a ) { b ( document ) . unbind ( "mousemove." + this . widgetName , this . _ mouseMoveDelegate ) . unbind ( "mouseup." + this . widgetName , this . _ mouseUpDelegate ) ; if ( this . _ mouseStarted ) { this . _ mouseStarted =
false ; a . target == this . _ mouseDownEvent . target && b . data ( a . target , this . widgetName + ".preventClickEvent" , true ) ; this . _ mouseStop ( a ) } return false } , _ mouseDistanceMet : function ( a ) { return Math . max ( Math . abs ( this . _ mouseDownEvent . pageX - a . pageX ) , Math . abs ( this . _ mouseDownEvent . pageY - a . pageY ) ) >= this . options . distance } , _ mouseDelayMet : function ( ) { return this . mouseDelayMet } , _ mouseStart : function ( ) { } , _ mouseDrag : function ( ) { } , _ mouseStop : function ( ) { } , _ mouseCapture : function ( ) { return true } } ) } ) ( jQuery ) ;
; / *
* jQuery UI Position 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Position
* /
( function ( c ) { c . ui = c . ui || { } ; var n = /left|center|right/ , o = /top|center|bottom/ , t = c . fn . position , u = c . fn . offset ; c . fn . position = function ( b ) { if ( ! b || ! b . of ) return t . apply ( this , arguments ) ; b = c . extend ( { } , b ) ; var a = c ( b . of ) , d = a [ 0 ] , g = ( b . collision || "flip" ) . split ( " " ) , e = b . offset ? b . offset . split ( " " ) : [ 0 , 0 ] , h , k , j ; if ( d . nodeType === 9 ) { h = a . width ( ) ; k = a . height ( ) ; j = { top : 0 , left : 0 } } else if ( d . setTimeout ) { h = a . width ( ) ; k = a . height ( ) ; j = { top : a . scrollTop ( ) , left : a . scrollLeft ( ) } } else if ( d . preventDefault ) { b . at = "left top" ; h = k = 0 ; j = { top : b . of . pageY ,
left : b . of . pageX } } else { h = a . outerWidth ( ) ; k = a . outerHeight ( ) ; j = a . offset ( ) } c . each ( [ "my" , "at" ] , function ( ) { var f = ( b [ this ] || "" ) . split ( " " ) ; if ( f . length === 1 ) f = n . test ( f [ 0 ] ) ? f . concat ( [ "center" ] ) : o . test ( f [ 0 ] ) ? [ "center" ] . concat ( f ) : [ "center" , "center" ] ; f [ 0 ] = n . test ( f [ 0 ] ) ? f [ 0 ] : "center" ; f [ 1 ] = o . test ( f [ 1 ] ) ? f [ 1 ] : "center" ; b [ this ] = f } ) ; if ( g . length === 1 ) g [ 1 ] = g [ 0 ] ; e [ 0 ] = parseInt ( e [ 0 ] , 10 ) || 0 ; if ( e . length === 1 ) e [ 1 ] = e [ 0 ] ; e [ 1 ] = parseInt ( e [ 1 ] , 10 ) || 0 ; if ( b . at [ 0 ] === "right" ) j . left += h ; else if ( b . at [ 0 ] === "center" ) j . left += h / 2 ; if ( b . at [ 1 ] === "bottom" ) j . top +=
k ; else if ( b . at [ 1 ] === "center" ) j . top += k / 2 ; j . left += e [ 0 ] ; j . top += e [ 1 ] ; return this . each ( function ( ) { 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 ; if ( b . my [ 0 ] === "right" ) i . left -= l ; else if ( b . my [ 0 ] === "center" ) i . left -= l / 2 ; if ( b . my [ 1 ] === "bottom" ) i . top -= m ; else if ( b . my [ 1 ] === "center" ) i . top -=
m / 2 ; i . left = Math . round ( i . left ) ; i . top = Math . round ( i . top ) ; r = { left : i . left - p , top : i . top - q } ; c . each ( [ "left" , "top" ] , function ( s , x ) { 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 } ) } ) ; c . fn . bgiframe && f . bgiframe ( ) ; f . offset ( c . extend ( i , { using : b . using } ) ) } ) } ; c . ui . position = { fit : { left : function ( b , a ) { var d = c ( window ) ; d = a . collisionPosition . left + a . collisionWidth - d . width ( ) - d . scrollLeft ( ) ; b . left =
d > 0 ? b . left - d : Math . max ( b . left - a . collisionPosition . left , b . left ) } , top : function ( b , a ) { var d = c ( window ) ; d = a . collisionPosition . top + a . collisionHeight - d . height ( ) - d . scrollTop ( ) ; b . top = d > 0 ? b . top - d : Math . max ( b . top - a . collisionPosition . top , b . top ) } } , flip : { left : function ( b , a ) { if ( a . at [ 0 ] !== "center" ) { var d = c ( window ) ; d = a . collisionPosition . left + a . collisionWidth - d . width ( ) - d . scrollLeft ( ) ; 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 ] ; b . left +=
a . collisionPosition . left < 0 ? g + e + h : d > 0 ? g + e + h : 0 } } , top : function ( b , a ) { if ( a . at [ 1 ] !== "center" ) { var d = c ( window ) ; d = a . collisionPosition . top + a . collisionHeight - d . height ( ) - d . scrollTop ( ) ; 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 ] ; b . top += a . collisionPosition . top < 0 ? g + e + h : d > 0 ? g + e + h : 0 } } } } ; if ( ! c . offset . setOffset ) { c . offset . setOffset = function ( b , a ) { if ( /static/ . test ( c . curCSS ( b , "position" ) ) ) b . style . position = "relative" ; var d = c ( b ) ,
g = d . offset ( ) , e = parseInt ( c . curCSS ( b , "top" , true ) , 10 ) || 0 , h = parseInt ( c . curCSS ( b , "left" , true ) , 10 ) || 0 ; g = { top : a . top - g . top + e , left : a . left - g . left + h } ; "using" in a ? a . using . call ( b , g ) : d . css ( g ) } ; c . fn . offset = function ( b ) { var a = this [ 0 ] ; if ( ! a || ! a . ownerDocument ) return null ; if ( b ) return this . each ( function ( ) { c . offset . setOffset ( this , b ) } ) ; return u . call ( this ) } } } ) ( jQuery ) ;
; / *
* jQuery UI Draggable 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Draggables
*
* Depends :
* jquery . ui . core . js
* jquery . ui . mouse . js
* jquery . ui . widget . js
* /
( function ( d ) { d . widget ( "ui.draggable" , d . ui . mouse , { widgetEventPrefix : "drag" , options : { addClasses : true , appendTo : "parent" , axis : false , connectToSortable : false , containment : false , cursor : "auto" , cursorAt : false , grid : false , handle : false , helper : "original" , iframeFix : false , opacity : false , refreshPositions : false , revert : false , revertDuration : 500 , scope : "default" , scroll : true , scrollSensitivity : 20 , scrollSpeed : 20 , snap : false , snapMode : "both" , snapTolerance : 20 , stack : false , zIndex : false } , _ create : function ( ) { if ( this . options . helper ==
"original" && ! /^(?:r|a|f)/ . test ( this . element . css ( "position" ) ) ) this . element [ 0 ] . style . position = "relative" ; this . options . addClasses && this . element . addClass ( "ui-draggable" ) ; this . options . disabled && this . element . addClass ( "ui-draggable-disabled" ) ; this . _ mouseInit ( ) } , destroy : function ( ) { if ( this . element . data ( "draggable" ) ) { this . element . removeData ( "draggable" ) . unbind ( ".draggable" ) . removeClass ( "ui-draggable ui-draggable-dragging ui-draggable-disabled" ) ; this . _ mouseDestroy ( ) ; return this } } , _ mouseCapture : function ( a ) { var b =
this . options ; if ( this . helper || b . disabled || d ( a . target ) . is ( ".ui-resizable-handle" ) ) return false ; this . handle = this . _ getHandle ( a ) ; if ( ! this . handle ) return false ; d ( b . iframeFix === true ? "iframe" : b . iframeFix ) . each ( function ( ) { d ( '<div class="ui-draggable-iframeFix" style="background: #fff;"></div>' ) . css ( { width : this . offsetWidth + "px" , height : this . offsetHeight + "px" , position : "absolute" , opacity : "0.001" , zIndex : 1E3 } ) . css ( d ( this ) . offset ( ) ) . appendTo ( "body" ) } ) ; return true } , _ mouseStart : function ( a ) { var b = this . options ; this . helper =
this . _ createHelper ( a ) ; this . _ cacheHelperProportions ( ) ; if ( d . ui . ddmanager ) d . ui . ddmanager . current = this ; this . _ cacheMargins ( ) ; this . cssPosition = this . helper . css ( "position" ) ; this . scrollParent = this . helper . scrollParent ( ) ; this . offset = this . positionAbs = this . element . offset ( ) ; this . offset = { top : this . offset . top - this . margins . top , left : this . offset . left - this . margins . left } ; d . extend ( this . offset , { click : { left : a . pageX - this . offset . left , top : a . pageY - this . offset . top } , parent : this . _ getParentOffset ( ) , relative : this . _ getRelativeOffset ( ) } ) ;
this . originalPosition = this . position = this . _ generatePosition ( a ) ; this . originalPageX = a . pageX ; this . originalPageY = a . pageY ; b . cursorAt && this . _ adjustOffsetFromHelper ( b . cursorAt ) ; b . containment && this . _ setContainment ( ) ; if ( this . _ trigger ( "start" , a ) === false ) { this . _ clear ( ) ; return false } this . _ cacheHelperProportions ( ) ; d . ui . ddmanager && ! b . dropBehaviour && d . ui . ddmanager . prepareOffsets ( this , a ) ; this . helper . addClass ( "ui-draggable-dragging" ) ; this . _ mouseDrag ( a , true ) ; d . ui . ddmanager && d . ui . ddmanager . dragStart ( this , a ) ; return true } ,
_ mouseDrag : function ( a , b ) { this . position = this . _ generatePosition ( a ) ; this . positionAbs = this . _ convertPositionTo ( "absolute" ) ; if ( ! b ) { b = this . _ uiHash ( ) ; if ( this . _ trigger ( "drag" , a , b ) === false ) { this . _ mouseUp ( { } ) ; return false } this . position = b . position } if ( ! this . options . axis || this . options . axis != "y" ) this . helper [ 0 ] . style . left = this . position . left + "px" ; if ( ! this . options . axis || this . options . axis != "x" ) this . helper [ 0 ] . style . top = this . position . top + "px" ; d . ui . ddmanager && d . ui . ddmanager . drag ( this , a ) ; return false } , _ mouseStop : function ( a ) { var b =
false ; if ( d . ui . ddmanager && ! this . options . dropBehaviour ) b = d . ui . ddmanager . drop ( this , a ) ; if ( this . dropped ) { b = this . dropped ; this . dropped = false } if ( ( ! this . element [ 0 ] || ! this . element [ 0 ] . parentNode ) && this . options . helper == "original" ) return false ; if ( this . options . revert == "invalid" && ! b || this . options . revert == "valid" && b || this . options . revert === true || d . isFunction ( this . options . revert ) && this . options . revert . call ( this . element , b ) ) { var c = this ; d ( this . helper ) . animate ( this . originalPosition , parseInt ( this . options . revertDuration ,
10 ) , function ( ) { c . _ trigger ( "stop" , a ) !== false && c . _ clear ( ) } ) } else this . _ trigger ( "stop" , a ) !== false && this . _ clear ( ) ; return false } , _ mouseUp : function ( a ) { this . options . iframeFix === true && d ( "div.ui-draggable-iframeFix" ) . each ( function ( ) { this . parentNode . removeChild ( this ) } ) ; d . ui . ddmanager && d . ui . ddmanager . dragStop ( this , a ) ; return d . ui . mouse . prototype . _ mouseUp . call ( this , a ) } , cancel : function ( ) { this . helper . is ( ".ui-draggable-dragging" ) ? this . _ mouseUp ( { } ) : this . _ clear ( ) ; return this } , _ getHandle : function ( a ) { var b = ! this . options . handle ||
! d ( this . options . handle , this . element ) . length ? true : false ; d ( this . options . handle , this . element ) . find ( "*" ) . andSelf ( ) . each ( function ( ) { if ( this == a . target ) b = true } ) ; return b } , _ createHelper : function ( a ) { var b = this . options ; a = d . isFunction ( b . helper ) ? d ( b . helper . apply ( this . element [ 0 ] , [ a ] ) ) : b . helper == "clone" ? this . element . clone ( ) . removeAttr ( "id" ) : this . element ; a . parents ( "body" ) . length || a . appendTo ( b . appendTo == "parent" ? this . element [ 0 ] . parentNode : b . appendTo ) ; a [ 0 ] != this . element [ 0 ] && ! /(fixed|absolute)/ . test ( a . css ( "position" ) ) &&
a . css ( "position" , "absolute" ) ; return a } , _ adjustOffsetFromHelper : function ( a ) { if ( typeof a == "string" ) a = a . split ( " " ) ; if ( d . isArray ( a ) ) a = { left : + a [ 0 ] , top : + a [ 1 ] || 0 } ; if ( "left" in a ) this . offset . click . left = a . left + this . margins . left ; if ( "right" in a ) this . offset . click . left = this . helperProportions . width - a . right + this . margins . left ; if ( "top" in a ) this . offset . click . top = a . top + this . margins . top ; if ( "bottom" in a ) this . offset . click . top = this . helperProportions . height - a . bottom + this . margins . top } , _ getParentOffset : function ( ) { this . offsetParent =
this . helper . offsetParent ( ) ; var a = this . offsetParent . offset ( ) ; if ( this . cssPosition == "absolute" && this . scrollParent [ 0 ] != document && d . ui . contains ( this . scrollParent [ 0 ] , this . offsetParent [ 0 ] ) ) { a . left += this . scrollParent . scrollLeft ( ) ; a . top += this . scrollParent . scrollTop ( ) } if ( this . offsetParent [ 0 ] == document . body || this . offsetParent [ 0 ] . tagName && this . offsetParent [ 0 ] . tagName . toLowerCase ( ) == "html" && d . browser . msie ) a = { top : 0 , left : 0 } ; return { top : a . top + ( parseInt ( this . offsetParent . css ( "borderTopWidth" ) , 10 ) || 0 ) , left : a . left + ( parseInt ( this . offsetParent . css ( "borderLeftWidth" ) ,
10 ) || 0 ) } } , _ getRelativeOffset : function ( ) { if ( this . cssPosition == "relative" ) { var a = this . element . position ( ) ; return { top : a . top - ( parseInt ( this . helper . css ( "top" ) , 10 ) || 0 ) + this . scrollParent . scrollTop ( ) , left : a . left - ( parseInt ( this . helper . css ( "left" ) , 10 ) || 0 ) + this . scrollParent . scrollLeft ( ) } } else return { top : 0 , left : 0 } } , _ cacheMargins : function ( ) { this . margins = { left : parseInt ( this . element . css ( "marginLeft" ) , 10 ) || 0 , top : parseInt ( this . element . css ( "marginTop" ) , 10 ) || 0 , right : parseInt ( this . element . css ( "marginRight" ) , 10 ) || 0 , bottom : parseInt ( this . element . css ( "marginBottom" ) ,
10 ) || 0 } } , _ cacheHelperProportions : function ( ) { this . helperProportions = { width : this . helper . outerWidth ( ) , height : this . helper . outerHeight ( ) } } , _ setContainment : function ( ) { var a = this . options ; if ( a . containment == "parent" ) a . containment = this . helper [ 0 ] . parentNode ; if ( a . containment == "document" || a . containment == "window" ) this . containment = [ a . containment == "document" ? 0 : d ( window ) . scrollLeft ( ) - this . offset . relative . left - this . offset . parent . left , a . containment == "document" ? 0 : d ( window ) . scrollTop ( ) - this . offset . relative . top - this . offset . parent . top ,
( a . containment == "document" ? 0 : d ( window ) . scrollLeft ( ) ) + d ( a . containment == "document" ? document : window ) . width ( ) - this . helperProportions . width - this . margins . left , ( a . containment == "document" ? 0 : d ( window ) . scrollTop ( ) ) + ( d ( a . containment == "document" ? document : window ) . height ( ) || document . body . parentNode . scrollHeight ) - this . helperProportions . height - this . margins . top ] ; if ( ! /^(document|window|parent)$/ . test ( a . containment ) && a . containment . constructor != Array ) { a = d ( a . containment ) ; var b = a [ 0 ] ; if ( b ) { a . offset ( ) ; var c = d ( b ) . css ( "overflow" ) !=
"hidden" ; this . containment = [ ( parseInt ( d ( b ) . css ( "borderLeftWidth" ) , 10 ) || 0 ) + ( parseInt ( d ( b ) . css ( "paddingLeft" ) , 10 ) || 0 ) , ( parseInt ( d ( b ) . css ( "borderTopWidth" ) , 10 ) || 0 ) + ( parseInt ( d ( b ) . css ( "paddingTop" ) , 10 ) || 0 ) , ( c ? Math . max ( b . scrollWidth , b . offsetWidth ) : b . offsetWidth ) - ( parseInt ( d ( b ) . css ( "borderLeftWidth" ) , 10 ) || 0 ) - ( parseInt ( d ( b ) . css ( "paddingRight" ) , 10 ) || 0 ) - this . helperProportions . width - this . margins . left - this . margins . right , ( c ? Math . max ( b . scrollHeight , b . offsetHeight ) : b . offsetHeight ) - ( parseInt ( d ( b ) . css ( "borderTopWidth" ) ,
10 ) || 0 ) - ( parseInt ( d ( b ) . css ( "paddingBottom" ) , 10 ) || 0 ) - this . helperProportions . height - this . margins . top - this . margins . bottom ] ; this . relative_container = a } } else if ( a . containment . constructor == Array ) this . containment = a . containment } , _ convertPositionTo : function ( a , b ) { if ( ! b ) b = this . position ; a = a == "absolute" ? 1 : - 1 ; var c = this . cssPosition == "absolute" && ! ( this . scrollParent [ 0 ] != document && d . ui . contains ( this . scrollParent [ 0 ] , this . offsetParent [ 0 ] ) ) ? this . offsetParent : this . scrollParent , f = /(html|body)/i . test ( c [ 0 ] . tagName ) ; return { top : b . top +
this . offset . relative . top * a + this . offset . parent . top * a - ( d . browser . safari && d . browser . version < 526 && this . cssPosition == "fixed" ? 0 : ( this . cssPosition == "fixed" ? - this . scrollParent . scrollTop ( ) : f ? 0 : c . scrollTop ( ) ) * a ) , left : b . left + this . offset . relative . left * a + this . offset . parent . left * a - ( d . browser . safari && d . browser . version < 526 && this . cssPosition == "fixed" ? 0 : ( this . cssPosition == "fixed" ? - this . scrollParent . scrollLeft ( ) : f ? 0 : c . scrollLeft ( ) ) * a ) } } , _ generatePosition : function ( a ) { var b = this . options , c = this . cssPosition == "absolute" &&
! ( this . scrollParent [ 0 ] != document && d . ui . contains ( this . scrollParent [ 0 ] , this . offsetParent [ 0 ] ) ) ? this . offsetParent : this . scrollParent , f = /(html|body)/i . test ( c [ 0 ] . tagName ) , e = a . pageX , h = a . pageY ; if ( this . originalPosition ) { var g ; if ( this . containment ) { if ( this . relative_container ) { g = this . relative_container . offset ( ) ; g = [ this . containment [ 0 ] + g . left , this . containment [ 1 ] + g . top , this . containment [ 2 ] + g . left , this . containment [ 3 ] + g . top ] } else g = this . containment ; if ( a . pageX - this . offset . click . left < g [ 0 ] ) e = g [ 0 ] + this . offset . click . left ;
if ( a . pageY - this . offset . click . top < g [ 1 ] ) h = g [ 1 ] + this . offset . click . top ; if ( a . pageX - this . offset . click . left > g [ 2 ] ) e = g [ 2 ] + this . offset . click . left ; if ( a . pageY - this . offset . click . top > g [ 3 ] ) h = g [ 3 ] + this . offset . click . top } if ( b . grid ) { h = b . grid [ 1 ] ? this . originalPageY + Math . round ( ( h - this . originalPageY ) / b . grid [ 1 ] ) * b . grid [ 1 ] : this . originalPageY ; h = g ? ! ( h - this . offset . click . top < g [ 1 ] || h - this . offset . click . top > g [ 3 ] ) ? h : ! ( h - this . offset . click . top < g [ 1 ] ) ? h - b . grid [ 1 ] : h + b . grid [ 1 ] : h ; e = b . grid [ 0 ] ? this . originalPageX + Math . round ( ( e - this . originalPageX ) /
b . grid [ 0 ] ) * b . grid [ 0 ] : this . originalPageX ; e = g ? ! ( e - this . offset . click . left < g [ 0 ] || e - this . offset . click . left > g [ 2 ] ) ? e : ! ( e - this . offset . click . left < g [ 0 ] ) ? e - b . grid [ 0 ] : e + b . grid [ 0 ] : e } } return { top : h - this . offset . click . top - this . offset . relative . top - this . offset . parent . top + ( d . browser . safari && d . browser . version < 526 && this . cssPosition == "fixed" ? 0 : this . cssPosition == "fixed" ? - this . scrollParent . scrollTop ( ) : f ? 0 : c . scrollTop ( ) ) , left : e - this . offset . click . left - this . offset . relative . left - this . offset . parent . left + ( d . browser . safari && d . browser . version <
526 && this . cssPosition == "fixed" ? 0 : this . cssPosition == "fixed" ? - this . scrollParent . scrollLeft ( ) : f ? 0 : c . scrollLeft ( ) ) } } , _ clear : function ( ) { this . helper . removeClass ( "ui-draggable-dragging" ) ; this . helper [ 0 ] != this . element [ 0 ] && ! this . cancelHelperRemoval && this . helper . remove ( ) ; this . helper = null ; this . cancelHelperRemoval = false } , _ trigger : function ( a , b , c ) { c = c || this . _ uiHash ( ) ; d . ui . plugin . call ( this , a , [ b , c ] ) ; if ( a == "drag" ) this . positionAbs = this . _ convertPositionTo ( "absolute" ) ; return d . Widget . prototype . _ trigger . call ( this , a , b ,
c ) } , plugins : { } , _ uiHash : function ( ) { return { helper : this . helper , position : this . position , originalPosition : this . originalPosition , offset : this . positionAbs } } } ) ; d . extend ( d . ui . draggable , { version : "1.8.15" } ) ; d . ui . plugin . add ( "draggable" , "connectToSortable" , { start : function ( a , b ) { var c = d ( this ) . data ( "draggable" ) , f = c . options , e = d . extend ( { } , b , { item : c . element } ) ; c . sortables = [ ] ; d ( f . connectToSortable ) . each ( function ( ) { var h = d . data ( this , "sortable" ) ; if ( h && ! h . options . disabled ) { c . sortables . push ( { instance : h , shouldRevert : h . options . revert } ) ;
h . refreshPositions ( ) ; h . _ trigger ( "activate" , a , e ) } } ) } , stop : function ( a , b ) { var c = d ( this ) . data ( "draggable" ) , f = d . extend ( { } , b , { item : c . element } ) ; d . each ( c . sortables , function ( ) { if ( this . instance . isOver ) { this . instance . isOver = 0 ; c . cancelHelperRemoval = true ; this . instance . cancelHelperRemoval = false ; if ( this . shouldRevert ) this . instance . options . revert = true ; this . instance . _ mouseStop ( a ) ; this . instance . options . helper = this . instance . options . _ helper ; c . options . helper == "original" && this . instance . currentItem . css ( { top : "auto" , left : "auto" } ) } else { this . instance . cancelHelperRemoval =
false ; this . instance . _ trigger ( "deactivate" , a , f ) } } ) } , drag : function ( a , b ) { var c = d ( this ) . data ( "draggable" ) , f = this ; d . each ( c . sortables , function ( ) { this . instance . positionAbs = c . positionAbs ; this . instance . helperProportions = c . helperProportions ; this . instance . offset . click = c . offset . click ; if ( this . instance . _ intersectsWith ( this . instance . containerCache ) ) { if ( ! this . instance . isOver ) { this . instance . isOver = 1 ; this . instance . currentItem = d ( f ) . clone ( ) . removeAttr ( "id" ) . appendTo ( this . instance . element ) . data ( "sortable-item" , true ) ;
this . instance . options . _ helper = this . instance . options . helper ; this . instance . options . helper = function ( ) { return b . helper [ 0 ] } ; a . target = this . instance . currentItem [ 0 ] ; this . instance . _ mouseCapture ( a , true ) ; this . instance . _ mouseStart ( a , true , true ) ; this . instance . offset . click . top = c . offset . click . top ; this . instance . offset . click . left = c . offset . click . left ; this . instance . offset . parent . left -= c . offset . parent . left - this . instance . offset . parent . left ; this . instance . offset . parent . top -= c . offset . parent . top - this . instance . offset . parent . top ;
c . _ trigger ( "toSortable" , a ) ; c . dropped = this . instance . element ; c . currentItem = c . element ; this . instance . fromOutside = c } this . instance . currentItem && this . instance . _ mouseDrag ( a ) } else if ( this . instance . isOver ) { this . instance . isOver = 0 ; this . instance . cancelHelperRemoval = true ; this . instance . options . revert = false ; this . instance . _ trigger ( "out" , a , this . instance . _ uiHash ( this . instance ) ) ; this . instance . _ mouseStop ( a , true ) ; this . instance . options . helper = this . instance . options . _ helper ; this . instance . currentItem . remove ( ) ; this . instance . placeholder &&
this . instance . placeholder . remove ( ) ; c . _ trigger ( "fromSortable" , a ) ; c . dropped = false } } ) } } ) ; d . ui . plugin . add ( "draggable" , "cursor" , { start : function ( ) { var a = d ( "body" ) , b = d ( this ) . data ( "draggable" ) . options ; if ( a . css ( "cursor" ) ) b . _ cursor = a . css ( "cursor" ) ; a . css ( "cursor" , b . cursor ) } , stop : function ( ) { var a = d ( this ) . data ( "draggable" ) . options ; a . _ cursor && d ( "body" ) . css ( "cursor" , a . _ cursor ) } } ) ; d . ui . plugin . add ( "draggable" , "opacity" , { start : function ( a , b ) { a = d ( b . helper ) ; b = d ( this ) . data ( "draggable" ) . options ; if ( a . css ( "opacity" ) ) b . _ opacity =
a . css ( "opacity" ) ; a . css ( "opacity" , b . opacity ) } , stop : function ( a , b ) { a = d ( this ) . data ( "draggable" ) . options ; a . _ opacity && d ( b . helper ) . css ( "opacity" , a . _ opacity ) } } ) ; d . ui . plugin . add ( "draggable" , "scroll" , { start : function ( ) { var a = d ( this ) . data ( "draggable" ) ; if ( a . scrollParent [ 0 ] != document && a . scrollParent [ 0 ] . tagName != "HTML" ) a . overflowOffset = a . scrollParent . offset ( ) } , drag : function ( a ) { var b = d ( this ) . data ( "draggable" ) , c = b . options , f = false ; if ( b . scrollParent [ 0 ] != document && b . scrollParent [ 0 ] . tagName != "HTML" ) { if ( ! c . axis || c . axis !=
"x" ) if ( b . overflowOffset . top + b . scrollParent [ 0 ] . offsetHeight - a . pageY < c . scrollSensitivity ) b . scrollParent [ 0 ] . scrollTop = f = b . scrollParent [ 0 ] . scrollTop + c . scrollSpeed ; else if ( a . pageY - b . overflowOffset . top < c . scrollSensitivity ) b . scrollParent [ 0 ] . scrollTop = f = b . scrollParent [ 0 ] . scrollTop - c . scrollSpeed ; if ( ! c . axis || c . axis != "y" ) if ( b . overflowOffset . left + b . scrollParent [ 0 ] . offsetWidth - a . pageX < c . scrollSensitivity ) b . scrollParent [ 0 ] . scrollLeft = f = b . scrollParent [ 0 ] . scrollLeft + c . scrollSpeed ; else if ( a . pageX - b . overflowOffset . left <
c . scrollSensitivity ) b . scrollParent [ 0 ] . scrollLeft = f = b . scrollParent [ 0 ] . scrollLeft - c . scrollSpeed } else { if ( ! c . axis || c . axis != "x" ) if ( a . pageY - d ( document ) . scrollTop ( ) < c . scrollSensitivity ) f = d ( document ) . scrollTop ( d ( document ) . scrollTop ( ) - c . scrollSpeed ) ; else if ( d ( window ) . height ( ) - ( a . pageY - d ( document ) . scrollTop ( ) ) < c . scrollSensitivity ) f = d ( document ) . scrollTop ( d ( document ) . scrollTop ( ) + c . scrollSpeed ) ; if ( ! c . axis || c . axis != "y" ) if ( a . pageX - d ( document ) . scrollLeft ( ) < c . scrollSensitivity ) f = d ( document ) . scrollLeft ( d ( document ) . scrollLeft ( ) -
c . scrollSpeed ) ; else if ( d ( window ) . width ( ) - ( a . pageX - d ( document ) . scrollLeft ( ) ) < c . scrollSensitivity ) f = d ( document ) . scrollLeft ( d ( document ) . scrollLeft ( ) + c . scrollSpeed ) } f !== false && d . ui . ddmanager && ! c . dropBehaviour && d . ui . ddmanager . prepareOffsets ( b , a ) } } ) ; d . ui . plugin . add ( "draggable" , "snap" , { start : function ( ) { var a = d ( this ) . data ( "draggable" ) , b = a . options ; a . snapElements = [ ] ; d ( b . snap . constructor != String ? b . snap . items || ":data(draggable)" : b . snap ) . each ( function ( ) { var c = d ( this ) , f = c . offset ( ) ; this != a . element [ 0 ] && a . snapElements . push ( { item : this ,
width : c . outerWidth ( ) , height : c . outerHeight ( ) , top : f . top , left : f . left } ) } ) } , drag : function ( a , b ) { for ( var c = d ( this ) . data ( "draggable" ) , f = c . options , e = f . snapTolerance , h = b . offset . left , g = h + c . helperProportions . width , n = b . offset . top , o = n + c . helperProportions . height , i = c . snapElements . length - 1 ; i >= 0 ; i -- ) { var j = c . snapElements [ i ] . left , l = j + c . snapElements [ i ] . width , k = c . snapElements [ i ] . top , m = k + c . snapElements [ i ] . height ; if ( j - e < h && h < l + e && k - e < n && n < m + e || j - e < h && h < l + e && k - e < o && o < m + e || j - e < g && g < l + e && k - e < n && n < m + e || j - e < g && g < l + e && k - e < o &&
o < m + e ) { if ( f . snapMode != "inner" ) { var p = Math . abs ( k - o ) <= e , q = Math . abs ( m - n ) <= e , r = Math . abs ( j - g ) <= e , s = Math . abs ( l - h ) <= e ; if ( p ) b . position . top = c . _ convertPositionTo ( "relative" , { top : k - c . helperProportions . height , left : 0 } ) . top - c . margins . top ; if ( q ) b . position . top = c . _ convertPositionTo ( "relative" , { top : m , left : 0 } ) . top - c . margins . top ; if ( r ) b . position . left = c . _ convertPositionTo ( "relative" , { top : 0 , left : j - c . helperProportions . width } ) . left - c . margins . left ; if ( s ) b . position . left = c . _ convertPositionTo ( "relative" , { top : 0 , left : l } ) . left - c . margins . left } var t =
p || q || r || s ; if ( f . snapMode != "outer" ) { p = Math . abs ( k - n ) <= e ; q = Math . abs ( m - o ) <= e ; r = Math . abs ( j - h ) <= e ; s = Math . abs ( l - g ) <= e ; if ( p ) b . position . top = c . _ convertPositionTo ( "relative" , { top : k , left : 0 } ) . top - c . margins . top ; if ( q ) b . position . top = c . _ convertPositionTo ( "relative" , { top : m - c . helperProportions . height , left : 0 } ) . top - c . margins . top ; if ( r ) b . position . left = c . _ convertPositionTo ( "relative" , { top : 0 , left : j } ) . left - c . margins . left ; if ( s ) b . position . left = c . _ convertPositionTo ( "relative" , { top : 0 , left : l - c . helperProportions . width } ) . left - c . margins . left } if ( ! c . snapElements [ i ] . snapping &&
( p || q || r || s || t ) ) c . options . snap . snap && c . options . snap . snap . call ( c . element , a , d . extend ( c . _ uiHash ( ) , { snapItem : c . snapElements [ i ] . item } ) ) ; c . snapElements [ i ] . snapping = p || q || r || s || t } else { c . snapElements [ i ] . snapping && c . options . snap . release && c . options . snap . release . call ( c . element , a , d . extend ( c . _ uiHash ( ) , { snapItem : c . snapElements [ i ] . item } ) ) ; c . snapElements [ i ] . snapping = false } } } } ) ; d . ui . plugin . add ( "draggable" , "stack" , { start : function ( ) { var a = d ( this ) . data ( "draggable" ) . options ; a = d . makeArray ( d ( a . stack ) ) . sort ( function ( c , f ) { return ( parseInt ( d ( c ) . css ( "zIndex" ) ,
10 ) || 0 ) - ( parseInt ( d ( f ) . css ( "zIndex" ) , 10 ) || 0 ) } ) ; if ( a . length ) { var b = parseInt ( a [ 0 ] . style . zIndex ) || 0 ; d ( a ) . each ( function ( c ) { this . style . zIndex = b + c } ) ; this [ 0 ] . style . zIndex = b + a . length } } } ) ; d . ui . plugin . add ( "draggable" , "zIndex" , { start : function ( a , b ) { a = d ( b . helper ) ; b = d ( this ) . data ( "draggable" ) . options ; if ( a . css ( "zIndex" ) ) b . _ zIndex = a . css ( "zIndex" ) ; a . css ( "zIndex" , b . zIndex ) } , stop : function ( a , b ) { a = d ( this ) . data ( "draggable" ) . options ; a . _ zIndex && d ( b . helper ) . css ( "zIndex" , a . _ zIndex ) } } ) } ) ( jQuery ) ;
; / *
* jQuery UI Resizable 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Resizables
*
* Depends :
* jquery . ui . core . js
* jquery . ui . mouse . js
* jquery . ui . widget . js
* /
( function ( e ) { e . widget ( "ui.resizable" , e . ui . mouse , { widgetEventPrefix : "resize" , options : { alsoResize : false , animate : false , animateDuration : "slow" , animateEasing : "swing" , aspectRatio : false , autoHide : false , containment : false , ghost : false , grid : false , handles : "e,s,se" , helper : false , maxHeight : null , maxWidth : null , minHeight : 10 , minWidth : 10 , zIndex : 1E3 } , _ create : function ( ) { var b = this , a = this . options ; this . element . addClass ( "ui-resizable" ) ; e . extend ( this , { _ aspectRatio : ! ! a . aspectRatio , aspectRatio : a . aspectRatio , originalElement : this . element ,
_ proportionallyResizeElements : [ ] , _ helper : a . helper || a . ghost || a . animate ? a . helper || "ui-resizable-helper" : null } ) ; if ( this . element [ 0 ] . nodeName . match ( /canvas|textarea|input|select|button|img/i ) ) { /relative/ . test ( this . element . css ( "position" ) ) && e . browser . opera && this . element . css ( { position : "relative" , top : "auto" , left : "auto" } ) ; this . element . wrap ( e ( '<div class="ui-wrapper" style="overflow: hidden;"></div>' ) . css ( { position : this . element . css ( "position" ) , width : this . element . outerWidth ( ) , height : this . element . outerHeight ( ) ,
top : this . element . css ( "top" ) , left : this . element . css ( "left" ) } ) ) ; this . element = this . element . parent ( ) . data ( "resizable" , this . element . data ( "resizable" ) ) ; this . elementIsWrapper = true ; this . element . css ( { marginLeft : this . originalElement . css ( "marginLeft" ) , marginTop : this . originalElement . css ( "marginTop" ) , marginRight : this . originalElement . css ( "marginRight" ) , marginBottom : this . originalElement . css ( "marginBottom" ) } ) ; this . originalElement . css ( { marginLeft : 0 , marginTop : 0 , marginRight : 0 , marginBottom : 0 } ) ; this . originalResizeStyle =
this . originalElement . css ( "resize" ) ; this . originalElement . css ( "resize" , "none" ) ; this . _ proportionallyResizeElements . push ( this . originalElement . css ( { position : "static" , zoom : 1 , display : "block" } ) ) ; this . originalElement . css ( { margin : this . originalElement . css ( "margin" ) } ) ; this . _ proportionallyResize ( ) } this . handles = a . handles || ( ! e ( ".ui-resizable-handle" , this . element ) . length ? "e,s,se" : { n : ".ui-resizable-n" , e : ".ui-resizable-e" , s : ".ui-resizable-s" , w : ".ui-resizable-w" , se : ".ui-resizable-se" , sw : ".ui-resizable-sw" , ne : ".ui-resizable-ne" ,
nw : ".ui-resizable-nw" } ) ; if ( this . handles . constructor == String ) { if ( this . handles == "all" ) this . handles = "n,e,s,w,se,sw,ne,nw" ; var c = this . handles . split ( "," ) ; this . handles = { } ; for ( var d = 0 ; d < c . length ; d ++ ) { var f = e . trim ( c [ d ] ) , g = e ( '<div class="ui-resizable-handle ' + ( "ui-resizable-" + f ) + '"></div>' ) ; /sw|se|ne|nw/ . test ( f ) && g . css ( { zIndex : ++ a . zIndex } ) ; "se" == f && g . addClass ( "ui-icon ui-icon-gripsmall-diagonal-se" ) ; this . handles [ f ] = ".ui-resizable-" + f ; this . element . append ( g ) } } this . _ renderAxis = function ( h ) { h = h || this . element ; for ( var i in this . handles ) { if ( this . handles [ i ] . constructor ==
String ) this . handles [ i ] = e ( this . handles [ i ] , this . element ) . show ( ) ; if ( this . elementIsWrapper && this . originalElement [ 0 ] . nodeName . match ( /textarea|input|select|button/i ) ) { var j = e ( this . handles [ i ] , this . element ) , l = 0 ; l = /sw|ne|nw|se|n|s/ . test ( i ) ? j . outerHeight ( ) : j . outerWidth ( ) ; j = [ "padding" , /ne|nw|n/ . test ( i ) ? "Top" : /se|sw|s/ . test ( i ) ? "Bottom" : /^e$/ . test ( i ) ? "Right" : "Left" ] . join ( "" ) ; h . css ( j , l ) ; this . _ proportionallyResize ( ) } e ( this . handles [ i ] ) } } ; this . _ renderAxis ( this . element ) ; this . _ handles = e ( ".ui-resizable-handle" , this . element ) . disableSelection ( ) ;
this . _ handles . mouseover ( function ( ) { if ( ! b . resizing ) { if ( this . className ) var h = this . className . match ( /ui-resizable-(se|sw|ne|nw|n|e|s|w)/i ) ; b . axis = h && h [ 1 ] ? h [ 1 ] : "se" } } ) ; if ( a . autoHide ) { this . _ handles . hide ( ) ; e ( this . element ) . addClass ( "ui-resizable-autohide" ) . hover ( function ( ) { if ( ! a . disabled ) { e ( this ) . removeClass ( "ui-resizable-autohide" ) ; b . _ handles . show ( ) } } , function ( ) { if ( ! a . disabled ) if ( ! b . resizing ) { e ( this ) . addClass ( "ui-resizable-autohide" ) ; b . _ handles . hide ( ) } } ) } this . _ mouseInit ( ) } , destroy : function ( ) { this . _ mouseDestroy ( ) ;
var b = function ( c ) { e ( c ) . removeClass ( "ui-resizable ui-resizable-disabled ui-resizable-resizing" ) . removeData ( "resizable" ) . unbind ( ".resizable" ) . find ( ".ui-resizable-handle" ) . remove ( ) } ; if ( this . elementIsWrapper ) { b ( this . element ) ; var a = this . element ; a . after ( this . originalElement . css ( { position : a . css ( "position" ) , width : a . outerWidth ( ) , height : a . outerHeight ( ) , top : a . css ( "top" ) , left : a . css ( "left" ) } ) ) . remove ( ) } this . originalElement . css ( "resize" , this . originalResizeStyle ) ; b ( this . originalElement ) ; return this } , _ mouseCapture : function ( b ) { var a =
false ; for ( var c in this . handles ) if ( e ( this . handles [ c ] ) [ 0 ] == b . target ) a = true ; return ! this . options . disabled && a } , _ mouseStart : function ( b ) { var a = this . options , c = this . element . position ( ) , d = this . element ; this . resizing = true ; this . documentScroll = { top : e ( document ) . scrollTop ( ) , left : e ( document ) . scrollLeft ( ) } ; if ( d . is ( ".ui-draggable" ) || /absolute/ . test ( d . css ( "position" ) ) ) d . css ( { position : "absolute" , top : c . top , left : c . left } ) ; e . browser . opera && /relative/ . test ( d . css ( "position" ) ) && d . css ( { position : "relative" , top : "auto" , left : "auto" } ) ;
this . _ renderProxy ( ) ; c = m ( this . helper . css ( "left" ) ) ; var f = m ( this . helper . css ( "top" ) ) ; if ( a . containment ) { c += e ( a . containment ) . scrollLeft ( ) || 0 ; f += e ( a . containment ) . scrollTop ( ) || 0 } this . offset = this . helper . offset ( ) ; this . position = { left : c , top : f } ; this . size = this . _ helper ? { width : d . outerWidth ( ) , height : d . outerHeight ( ) } : { width : d . width ( ) , height : d . height ( ) } ; this . originalSize = this . _ helper ? { width : d . outerWidth ( ) , height : d . outerHeight ( ) } : { width : d . width ( ) , height : d . height ( ) } ; this . originalPosition = { left : c , top : f } ; this . sizeDiff =
{ width : d . outerWidth ( ) - d . width ( ) , height : d . outerHeight ( ) - d . height ( ) } ; this . originalMousePosition = { left : b . pageX , top : b . pageY } ; this . aspectRatio = typeof a . aspectRatio == "number" ? a . aspectRatio : this . originalSize . width / this . originalSize . height || 1 ; a = e ( ".ui-resizable-" + this . axis ) . css ( "cursor" ) ; e ( "body" ) . css ( "cursor" , a == "auto" ? this . axis + "-resize" : a ) ; d . addClass ( "ui-resizable-resizing" ) ; this . _ propagate ( "start" , b ) ; return true } , _ mouseDrag : function ( b ) { var a = this . helper , c = this . originalMousePosition , d = this . _ change [ this . axis ] ;
if ( ! d ) return false ; c = d . apply ( this , [ b , b . pageX - c . left || 0 , b . pageY - c . top || 0 ] ) ; this . _ updateVirtualBoundaries ( b . shiftKey ) ; if ( this . _ aspectRatio || b . shiftKey ) c = this . _ updateRatio ( c , b ) ; c = this . _ respectSize ( c , b ) ; this . _ propagate ( "resize" , b ) ; a . css ( { top : this . position . top + "px" , left : this . position . left + "px" , width : this . size . width + "px" , height : this . size . height + "px" } ) ; ! this . _ helper && this . _ proportionallyResizeElements . length && this . _ proportionallyResize ( ) ; this . _ updateCache ( c ) ; this . _ trigger ( "resize" , b , this . ui ( ) ) ; return false } ,
_ mouseStop : function ( b ) { this . resizing = false ; var a = this . options , c = this ; if ( this . _ helper ) { var d = this . _ proportionallyResizeElements , f = d . length && /textarea/i . test ( d [ 0 ] . nodeName ) ; d = f && e . ui . hasScroll ( d [ 0 ] , "left" ) ? 0 : c . sizeDiff . height ; f = f ? 0 : c . sizeDiff . width ; f = { width : c . helper . width ( ) - f , height : c . helper . height ( ) - d } ; d = parseInt ( c . element . css ( "left" ) , 10 ) + ( c . position . left - c . originalPosition . left ) || null ; var g = parseInt ( c . element . css ( "top" ) , 10 ) + ( c . position . top - c . originalPosition . top ) || null ; a . animate || this . element . css ( e . extend ( f ,
{ top : g , left : d } ) ) ; c . helper . height ( c . size . height ) ; c . helper . width ( c . size . width ) ; this . _ helper && ! a . animate && this . _ proportionallyResize ( ) } e ( "body" ) . css ( "cursor" , "auto" ) ; this . element . removeClass ( "ui-resizable-resizing" ) ; this . _ propagate ( "stop" , b ) ; this . _ helper && this . helper . remove ( ) ; return false } , _ updateVirtualBoundaries : function ( b ) { var a = this . options , c , d , f ; a = { minWidth : k ( a . minWidth ) ? a . minWidth : 0 , maxWidth : k ( a . maxWidth ) ? a . maxWidth : Infinity , minHeight : k ( a . minHeight ) ? a . minHeight : 0 , maxHeight : k ( a . maxHeight ) ? a . maxHeight :
Infinity } ; if ( this . _ aspectRatio || b ) { b = a . minHeight * this . aspectRatio ; d = a . minWidth / this . aspectRatio ; c = a . maxHeight * this . aspectRatio ; f = a . maxWidth / this . aspectRatio ; if ( b > a . minWidth ) a . minWidth = b ; if ( d > a . minHeight ) a . minHeight = d ; if ( c < a . maxWidth ) a . maxWidth = c ; if ( f < a . maxHeight ) a . maxHeight = f } this . _ vBoundaries = a } , _ updateCache : function ( b ) { this . offset = this . helper . offset ( ) ; if ( k ( b . left ) ) this . position . left = b . left ; if ( k ( b . top ) ) this . position . top = b . top ; if ( k ( b . height ) ) this . size . height = b . height ; if ( k ( b . width ) ) this . size . width =
b . width } , _ updateRatio : function ( b ) { var a = this . position , c = this . size , d = this . axis ; if ( k ( b . height ) ) b . width = b . height * this . aspectRatio ; else if ( k ( b . width ) ) b . height = b . width / this . aspectRatio ; if ( d == "sw" ) { b . left = a . left + ( c . width - b . width ) ; b . top = null } if ( d == "nw" ) { b . top = a . top + ( c . height - b . height ) ; b . left = a . left + ( c . width - b . width ) } return b } , _ respectSize : function ( b ) { var a = this . _ vBoundaries , c = this . axis , d = k ( b . width ) && a . maxWidth && a . maxWidth < b . width , f = k ( b . height ) && a . maxHeight && a . maxHeight < b . height , g = k ( b . width ) && a . minWidth &&
a . minWidth > b . width , h = k ( b . height ) && a . minHeight && a . minHeight > b . height ; if ( g ) b . width = a . minWidth ; if ( h ) b . height = a . minHeight ; if ( d ) b . width = a . maxWidth ; if ( f ) b . height = a . maxHeight ; var i = this . originalPosition . left + this . originalSize . width , j = this . position . top + this . size . height , l = /sw|nw|w/ . test ( c ) ; c = /nw|ne|n/ . test ( c ) ; if ( g && l ) b . left = i - a . minWidth ; if ( d && l ) b . left = i - a . maxWidth ; if ( h && c ) b . top = j - a . minHeight ; if ( f && c ) b . top = j - a . maxHeight ; if ( ( a = ! b . width && ! b . height ) && ! b . left && b . top ) b . top = null ; else if ( a && ! b . top && b . left ) b . left =
null ; return b } , _ proportionallyResize : function ( ) { if ( this . _ proportionallyResizeElements . length ) for ( var b = this . helper || this . element , a = 0 ; a < this . _ proportionallyResizeElements . length ; a ++ ) { var c = this . _ proportionallyResizeElements [ a ] ; if ( ! this . borderDif ) { var d = [ c . css ( "borderTopWidth" ) , c . css ( "borderRightWidth" ) , c . css ( "borderBottomWidth" ) , c . css ( "borderLeftWidth" ) ] , f = [ c . css ( "paddingTop" ) , c . css ( "paddingRight" ) , c . css ( "paddingBottom" ) , c . css ( "paddingLeft" ) ] ; this . borderDif = e . map ( d , function ( g , h ) { g = parseInt ( g , 10 ) ||
0 ; h = parseInt ( f [ h ] , 10 ) || 0 ; return g + h } ) } e . browser . msie && ( e ( b ) . is ( ":hidden" ) || e ( b ) . parents ( ":hidden" ) . length ) || c . css ( { height : b . height ( ) - this . borderDif [ 0 ] - this . borderDif [ 2 ] || 0 , width : b . width ( ) - this . borderDif [ 1 ] - this . borderDif [ 3 ] || 0 } ) } } , _ renderProxy : function ( ) { var b = this . options ; this . elementOffset = this . element . offset ( ) ; if ( this . _ helper ) { this . helper = this . helper || e ( '<div style="overflow:hidden;"></div>' ) ; var a = e . browser . msie && e . browser . version < 7 , c = a ? 1 : 0 ; a = a ? 2 : - 1 ; this . helper . addClass ( this . _ helper ) . css ( { width : this . element . outerWidth ( ) +
a , height : this . element . outerHeight ( ) + a , position : "absolute" , left : this . elementOffset . left - c + "px" , top : this . elementOffset . top - c + "px" , zIndex : ++ b . zIndex } ) ; this . helper . appendTo ( "body" ) . disableSelection ( ) } else this . helper = this . element } , _ change : { e : function ( b , a ) { return { width : this . originalSize . width + a } } , w : function ( b , a ) { return { left : this . originalPosition . left + a , width : this . originalSize . width - a } } , n : function ( b , a , c ) { return { top : this . originalPosition . top + c , height : this . originalSize . height - c } } , s : function ( b , a , c ) { return { height : this . originalSize . height +
c } } , se : function ( b , a , c ) { return e . extend ( this . _ change . s . apply ( this , arguments ) , this . _ change . e . apply ( this , [ b , a , c ] ) ) } , sw : function ( b , a , c ) { return e . extend ( this . _ change . s . apply ( this , arguments ) , this . _ change . w . apply ( this , [ b , a , c ] ) ) } , ne : function ( b , a , c ) { return e . extend ( this . _ change . n . apply ( this , arguments ) , this . _ change . e . apply ( this , [ b , a , c ] ) ) } , nw : function ( b , a , c ) { return e . extend ( this . _ change . n . apply ( this , arguments ) , this . _ change . w . apply ( this , [ b , a , c ] ) ) } } , _ propagate : function ( b , a ) { e . ui . plugin . call ( this , b , [ a , this . ui ( ) ] ) ;
b != "resize" && this . _ trigger ( b , a , this . ui ( ) ) } , plugins : { } , ui : function ( ) { return { originalElement : this . originalElement , element : this . element , helper : this . helper , position : this . position , size : this . size , originalSize : this . originalSize , originalPosition : this . originalPosition } } } ) ; e . extend ( e . ui . resizable , { version : "1.8.15" } ) ; e . ui . plugin . add ( "resizable" , "alsoResize" , { start : function ( ) { var b = e ( this ) . data ( "resizable" ) . options , a = function ( c ) { e ( c ) . each ( function ( ) { var d = e ( this ) ; d . data ( "resizable-alsoresize" , { width : parseInt ( d . width ( ) ,
10 ) , height : parseInt ( d . height ( ) , 10 ) , left : parseInt ( d . css ( "left" ) , 10 ) , top : parseInt ( d . css ( "top" ) , 10 ) , position : d . css ( "position" ) } ) } ) } ; if ( typeof b . alsoResize == "object" && ! b . alsoResize . parentNode ) if ( b . alsoResize . length ) { b . alsoResize = b . alsoResize [ 0 ] ; a ( b . alsoResize ) } else e . each ( b . alsoResize , function ( c ) { a ( c ) } ) ; else a ( b . alsoResize ) } , resize : function ( b , a ) { var c = e ( this ) . data ( "resizable" ) ; b = c . options ; var d = c . originalSize , f = c . originalPosition , g = { height : c . size . height - d . height || 0 , width : c . size . width - d . width || 0 , top : c . position . top -
f . top || 0 , left : c . position . left - f . left || 0 } , h = function ( i , j ) { e ( i ) . each ( function ( ) { var l = e ( this ) , q = e ( this ) . data ( "resizable-alsoresize" ) , p = { } , r = j && j . length ? j : l . parents ( a . originalElement [ 0 ] ) . length ? [ "width" , "height" ] : [ "width" , "height" , "top" , "left" ] ; e . each ( r , function ( n , o ) { if ( ( n = ( q [ o ] || 0 ) + ( g [ o ] || 0 ) ) && n >= 0 ) p [ o ] = n || null } ) ; if ( e . browser . opera && /relative/ . test ( l . css ( "position" ) ) ) { c . _ revertToRelativePosition = true ; l . css ( { position : "absolute" , top : "auto" , left : "auto" } ) } l . css ( p ) } ) } ; typeof b . alsoResize == "object" && ! b . alsoResize . nodeType ?
e . each ( b . alsoResize , function ( i , j ) { h ( i , j ) } ) : h ( b . alsoResize ) } , stop : function ( ) { var b = e ( this ) . data ( "resizable" ) , a = b . options , c = function ( d ) { e ( d ) . each ( function ( ) { var f = e ( this ) ; f . css ( { position : f . data ( "resizable-alsoresize" ) . position } ) } ) } ; if ( b . _ revertToRelativePosition ) { b . _ revertToRelativePosition = false ; typeof a . alsoResize == "object" && ! a . alsoResize . nodeType ? e . each ( a . alsoResize , function ( d ) { c ( d ) } ) : c ( a . alsoResize ) } e ( this ) . removeData ( "resizable-alsoresize" ) } } ) ; e . ui . plugin . add ( "resizable" , "animate" , { stop : function ( b ) { var a =
e ( this ) . data ( "resizable" ) , c = a . options , d = a . _ proportionallyResizeElements , f = d . length && /textarea/i . test ( d [ 0 ] . nodeName ) , g = f && e . ui . hasScroll ( d [ 0 ] , "left" ) ? 0 : a . sizeDiff . height ; f = { width : a . size . width - ( f ? 0 : a . sizeDiff . width ) , height : a . size . height - g } ; g = parseInt ( a . element . css ( "left" ) , 10 ) + ( a . position . left - a . originalPosition . left ) || null ; var h = parseInt ( a . element . css ( "top" ) , 10 ) + ( a . position . top - a . originalPosition . top ) || null ; a . element . animate ( e . extend ( f , h && g ? { top : h , left : g } : { } ) , { duration : c . animateDuration , easing : c . animateEasing ,
step : function ( ) { var i = { width : parseInt ( a . element . css ( "width" ) , 10 ) , height : parseInt ( a . element . css ( "height" ) , 10 ) , top : parseInt ( a . element . css ( "top" ) , 10 ) , left : parseInt ( a . element . css ( "left" ) , 10 ) } ; d && d . length && e ( d [ 0 ] ) . css ( { width : i . width , height : i . height } ) ; a . _ updateCache ( i ) ; a . _ propagate ( "resize" , b ) } } ) } } ) ; e . ui . plugin . add ( "resizable" , "containment" , { start : function ( ) { var b = e ( this ) . data ( "resizable" ) , a = b . element , c = b . options . containment ; if ( a = c instanceof e ? c . get ( 0 ) : /parent/ . test ( c ) ? a . parent ( ) . get ( 0 ) : c ) { b . containerElement =
e ( a ) ; if ( /document/ . test ( c ) || c == document ) { b . containerOffset = { left : 0 , top : 0 } ; b . containerPosition = { left : 0 , top : 0 } ; b . parentData = { element : e ( document ) , left : 0 , top : 0 , width : e ( document ) . width ( ) , height : e ( document ) . height ( ) || document . body . parentNode . scrollHeight } } else { var d = e ( a ) , f = [ ] ; e ( [ "Top" , "Right" , "Left" , "Bottom" ] ) . each ( function ( i , j ) { f [ i ] = m ( d . css ( "padding" + j ) ) } ) ; b . containerOffset = d . offset ( ) ; b . containerPosition = d . position ( ) ; b . containerSize = { height : d . innerHeight ( ) - f [ 3 ] , width : d . innerWidth ( ) - f [ 1 ] } ; c = b . containerOffset ;
var g = b . containerSize . height , h = b . containerSize . width ; h = e . ui . hasScroll ( a , "left" ) ? a . scrollWidth : h ; g = e . ui . hasScroll ( a ) ? a . scrollHeight : g ; b . parentData = { element : a , left : c . left , top : c . top , width : h , height : g } } } } , resize : function ( b ) { var a = e ( this ) . data ( "resizable" ) , c = a . options , d = a . containerOffset , f = a . position ; b = a . _ aspectRatio || b . shiftKey ; var g = { top : 0 , left : 0 } , h = a . containerElement ; if ( h [ 0 ] != document && /static/ . test ( h . css ( "position" ) ) ) g = d ; if ( f . left < ( a . _ helper ? d . left : 0 ) ) { a . size . width += a . _ helper ? a . position . left - d . left :
a . position . left - g . left ; if ( b ) a . size . height = a . size . width / c . aspectRatio ; a . position . left = c . helper ? d . left : 0 } if ( f . top < ( a . _ helper ? d . top : 0 ) ) { a . size . height += a . _ helper ? a . position . top - d . top : a . position . top ; if ( b ) a . size . width = a . size . height * c . aspectRatio ; a . position . top = a . _ helper ? d . top : 0 } a . offset . left = a . parentData . left + a . position . left ; a . offset . top = a . parentData . top + a . position . top ; c = Math . abs ( ( a . _ helper ? a . offset . left - g . left : a . offset . left - g . left ) + a . sizeDiff . width ) ; d = Math . abs ( ( a . _ helper ? a . offset . top - g . top : a . offset . top -
d . top ) + a . sizeDiff . height ) ; f = a . containerElement . get ( 0 ) == a . element . parent ( ) . get ( 0 ) ; g = /relative|absolute/ . test ( a . containerElement . css ( "position" ) ) ; if ( f && g ) c -= a . parentData . left ; if ( c + a . size . width >= a . parentData . width ) { a . size . width = a . parentData . width - c ; if ( b ) a . size . height = a . size . width / a . aspectRatio } if ( d + a . size . height >= a . parentData . height ) { a . size . height = a . parentData . height - d ; if ( b ) a . size . width = a . size . height * a . aspectRatio } } , stop : function ( ) { var b = e ( this ) . data ( "resizable" ) , a = b . options , c = b . containerOffset , d = b . containerPosition ,
f = b . containerElement , g = e ( b . helper ) , h = g . offset ( ) , i = g . outerWidth ( ) - b . sizeDiff . width ; g = g . outerHeight ( ) - b . sizeDiff . height ; b . _ helper && ! a . animate && /relative/ . test ( f . css ( "position" ) ) && e ( this ) . css ( { left : h . left - d . left - c . left , width : i , height : g } ) ; b . _ helper && ! a . animate && /static/ . test ( f . css ( "position" ) ) && e ( this ) . css ( { left : h . left - d . left - c . left , width : i , height : g } ) } } ) ; e . ui . plugin . add ( "resizable" , "ghost" , { start : function ( ) { var b = e ( this ) . data ( "resizable" ) , a = b . options , c = b . size ; b . ghost = b . originalElement . clone ( ) ; b . ghost . css ( { opacity : 0.25 ,
display : "block" , position : "relative" , height : c . height , width : c . width , margin : 0 , left : 0 , top : 0 } ) . addClass ( "ui-resizable-ghost" ) . addClass ( typeof a . ghost == "string" ? a . ghost : "" ) ; b . ghost . appendTo ( b . helper ) } , resize : function ( ) { var b = e ( this ) . data ( "resizable" ) ; b . ghost && b . ghost . css ( { position : "relative" , height : b . size . height , width : b . size . width } ) } , stop : function ( ) { var b = e ( this ) . data ( "resizable" ) ; b . ghost && b . helper && b . helper . get ( 0 ) . removeChild ( b . ghost . get ( 0 ) ) } } ) ; e . ui . plugin . add ( "resizable" , "grid" , { resize : function ( ) { var b =
e ( this ) . data ( "resizable" ) , a = b . options , c = b . size , d = b . originalSize , f = b . originalPosition , g = b . axis ; a . grid = typeof a . grid == "number" ? [ a . grid , a . grid ] : a . grid ; var h = Math . round ( ( c . width - d . width ) / ( a . grid [ 0 ] || 1 ) ) * ( a . grid [ 0 ] || 1 ) ; a = Math . round ( ( c . height - d . height ) / ( a . grid [ 1 ] || 1 ) ) * ( a . grid [ 1 ] || 1 ) ; if ( /^(se|s|e)$/ . test ( g ) ) { b . size . width = d . width + h ; b . size . height = d . height + a } else if ( /^(ne)$/ . test ( g ) ) { b . size . width = d . width + h ; b . size . height = d . height + a ; b . position . top = f . top - a } else { if ( /^(sw)$/ . test ( g ) ) { b . size . width = d . width + h ; b . size . height =
d . height + a } else { b . size . width = d . width + h ; b . size . height = d . height + a ; b . position . top = f . top - a } b . position . left = f . left - h } } } ) ; var m = function ( b ) { return parseInt ( b , 10 ) || 0 } , k = function ( b ) { return ! isNaN ( parseInt ( b , 10 ) ) } } ) ( jQuery ) ;
; / *
* jQuery UI Selectable 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Selectables
*
* Depends :
* jquery . ui . core . js
* jquery . ui . mouse . js
* jquery . ui . widget . js
* /
( function ( e ) { e . widget ( "ui.selectable" , e . ui . mouse , { options : { appendTo : "body" , autoRefresh : true , distance : 0 , filter : "*" , tolerance : "touch" } , _ create : function ( ) { var c = this ; this . element . addClass ( "ui-selectable" ) ; this . dragged = false ; var f ; this . refresh = function ( ) { f = e ( c . options . filter , c . element [ 0 ] ) ; f . each ( function ( ) { var d = e ( this ) , b = d . offset ( ) ; e . data ( this , "selectable-item" , { element : this , $element : d , left : b . left , top : b . top , right : b . left + d . outerWidth ( ) , bottom : b . top + d . outerHeight ( ) , startselected : false , selected : d . hasClass ( "ui-selected" ) ,
selecting : d . hasClass ( "ui-selecting" ) , unselecting : d . hasClass ( "ui-unselecting" ) } ) } ) } ; this . refresh ( ) ; this . selectees = f . addClass ( "ui-selectee" ) ; this . _ mouseInit ( ) ; this . helper = e ( "<div class='ui-selectable-helper'></div>" ) } , destroy : function ( ) { this . selectees . removeClass ( "ui-selectee" ) . removeData ( "selectable-item" ) ; this . element . removeClass ( "ui-selectable ui-selectable-disabled" ) . removeData ( "selectable" ) . unbind ( ".selectable" ) ; this . _ mouseDestroy ( ) ; return this } , _ mouseStart : function ( c ) { var f = this ; this . opos = [ c . pageX ,
c . pageY ] ; if ( ! this . options . disabled ) { var d = this . options ; this . selectees = e ( d . filter , this . element [ 0 ] ) ; this . _ trigger ( "start" , c ) ; e ( d . appendTo ) . append ( this . helper ) ; this . helper . css ( { left : c . clientX , top : c . clientY , width : 0 , height : 0 } ) ; d . autoRefresh && this . refresh ( ) ; this . selectees . filter ( ".ui-selected" ) . each ( function ( ) { var b = e . data ( this , "selectable-item" ) ; b . startselected = true ; if ( ! c . metaKey ) { b . $element . removeClass ( "ui-selected" ) ; b . selected = false ; b . $element . addClass ( "ui-unselecting" ) ; b . unselecting = true ; f . _ trigger ( "unselecting" ,
c , { unselecting : b . element } ) } } ) ; e ( c . target ) . parents ( ) . andSelf ( ) . each ( function ( ) { var b = e . data ( this , "selectable-item" ) ; if ( b ) { var g = ! c . metaKey || ! b . $element . hasClass ( "ui-selected" ) ; b . $element . removeClass ( g ? "ui-unselecting" : "ui-selected" ) . addClass ( g ? "ui-selecting" : "ui-unselecting" ) ; b . unselecting = ! g ; b . selecting = g ; ( b . selected = g ) ? f . _ trigger ( "selecting" , c , { selecting : b . element } ) : f . _ trigger ( "unselecting" , c , { unselecting : b . element } ) ; return false } } ) } } , _ mouseDrag : function ( c ) { var f = this ; this . dragged = true ; if ( ! this . options . disabled ) { var d =
this . options , b = this . opos [ 0 ] , g = this . opos [ 1 ] , h = c . pageX , i = c . pageY ; if ( b > h ) { var j = h ; h = b ; b = j } if ( g > i ) { j = i ; i = g ; g = j } this . helper . css ( { left : b , top : g , width : h - b , height : i - g } ) ; this . selectees . each ( function ( ) { var a = e . data ( this , "selectable-item" ) ; if ( ! ( ! a || a . element == f . element [ 0 ] ) ) { var k = false ; if ( d . tolerance == "touch" ) k = ! ( a . left > h || a . right < b || a . top > i || a . bottom < g ) ; else if ( d . tolerance == "fit" ) k = a . left > b && a . right < h && a . top > g && a . bottom < i ; if ( k ) { if ( a . selected ) { a . $element . removeClass ( "ui-selected" ) ; a . selected = false } if ( a . unselecting ) { a . $element . removeClass ( "ui-unselecting" ) ;
a . unselecting = false } if ( ! a . selecting ) { a . $element . addClass ( "ui-selecting" ) ; a . selecting = true ; f . _ trigger ( "selecting" , c , { selecting : a . element } ) } } else { if ( a . selecting ) if ( c . metaKey && a . startselected ) { a . $element . removeClass ( "ui-selecting" ) ; a . selecting = false ; a . $element . addClass ( "ui-selected" ) ; a . selected = true } else { a . $element . removeClass ( "ui-selecting" ) ; a . selecting = false ; if ( a . startselected ) { a . $element . addClass ( "ui-unselecting" ) ; a . unselecting = true } f . _ trigger ( "unselecting" , c , { unselecting : a . element } ) } if ( a . selected ) if ( ! c . metaKey &&
! a . startselected ) { a . $element . removeClass ( "ui-selected" ) ; a . selected = false ; a . $element . addClass ( "ui-unselecting" ) ; a . unselecting = true ; f . _ trigger ( "unselecting" , c , { unselecting : a . element } ) } } } } ) ; return false } } , _ mouseStop : function ( c ) { var f = this ; this . dragged = false ; e ( ".ui-unselecting" , this . element [ 0 ] ) . each ( function ( ) { var d = e . data ( this , "selectable-item" ) ; d . $element . removeClass ( "ui-unselecting" ) ; d . unselecting = false ; d . startselected = false ; f . _ trigger ( "unselected" , c , { unselected : d . element } ) } ) ; e ( ".ui-selecting" , this . element [ 0 ] ) . each ( function ( ) { var d =
e . data ( this , "selectable-item" ) ; d . $element . removeClass ( "ui-selecting" ) . addClass ( "ui-selected" ) ; d . selecting = false ; d . selected = true ; d . startselected = true ; f . _ trigger ( "selected" , c , { selected : d . element } ) } ) ; this . _ trigger ( "stop" , c ) ; this . helper . remove ( ) ; return false } } ) ; e . extend ( e . ui . selectable , { version : "1.8.15" } ) } ) ( jQuery ) ;
; / *
* jQuery UI Button 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Button
*
* Depends :
* jquery . ui . core . js
* jquery . ui . widget . js
* /
( function ( b ) { var h , i , j , g , l = function ( ) { var a = b ( this ) . find ( ":ui-button" ) ; setTimeout ( function ( ) { a . button ( "refresh" ) } , 1 ) } , k = function ( a ) { var c = a . name , e = a . form , f = b ( [ ] ) ; if ( c ) f = e ? b ( e ) . find ( "[name='" + c + "']" ) : b ( "[name='" + c + "']" , a . ownerDocument ) . filter ( function ( ) { return ! this . form } ) ; return f } ; b . widget ( "ui.button" , { options : { disabled : null , text : true , label : null , icons : { primary : null , secondary : null } } , _ create : function ( ) { this . element . closest ( "form" ) . unbind ( "reset.button" ) . bind ( "reset.button" , l ) ; if ( typeof this . options . disabled !==
"boolean" ) this . options . disabled = this . element . propAttr ( "disabled" ) ; this . _ determineButtonType ( ) ; this . hasTitle = ! ! this . buttonElement . attr ( "title" ) ; var a = this , c = this . options , e = this . type === "checkbox" || this . type === "radio" , f = "ui-state-hover" + ( ! e ? " ui-state-active" : "" ) ; if ( c . label === null ) c . label = this . buttonElement . html ( ) ; if ( this . element . is ( ":disabled" ) ) c . disabled = true ; this . buttonElement . addClass ( "ui-button ui-widget ui-state-default ui-corner-all" ) . attr ( "role" , "button" ) . bind ( "mouseenter.button" , function ( ) { if ( ! c . disabled ) { b ( this ) . addClass ( "ui-state-hover" ) ;
this === h && b ( this ) . addClass ( "ui-state-active" ) } } ) . bind ( "mouseleave.button" , function ( ) { c . disabled || b ( this ) . removeClass ( f ) } ) . bind ( "click.button" , function ( d ) { if ( c . disabled ) { d . preventDefault ( ) ; d . stopImmediatePropagation ( ) } } ) ; this . element . bind ( "focus.button" , function ( ) { a . buttonElement . addClass ( "ui-state-focus" ) } ) . bind ( "blur.button" , function ( ) { a . buttonElement . removeClass ( "ui-state-focus" ) } ) ; if ( e ) { this . element . bind ( "change.button" , function ( ) { g || a . refresh ( ) } ) ; this . buttonElement . bind ( "mousedown.button" , function ( d ) { if ( ! c . disabled ) { g =
false ; i = d . pageX ; j = d . pageY } } ) . bind ( "mouseup.button" , function ( d ) { if ( ! c . disabled ) if ( i !== d . pageX || j !== d . pageY ) g = true } ) } if ( this . type === "checkbox" ) this . buttonElement . bind ( "click.button" , function ( ) { if ( c . disabled || g ) return false ; b ( this ) . toggleClass ( "ui-state-active" ) ; a . buttonElement . attr ( "aria-pressed" , a . element [ 0 ] . checked ) } ) ; else if ( this . type === "radio" ) this . buttonElement . bind ( "click.button" , function ( ) { if ( c . disabled || g ) return false ; b ( this ) . addClass ( "ui-state-active" ) ; a . buttonElement . attr ( "aria-pressed" , "true" ) ;
var d = a . element [ 0 ] ; k ( d ) . not ( d ) . map ( function ( ) { return b ( this ) . button ( "widget" ) [ 0 ] } ) . removeClass ( "ui-state-active" ) . attr ( "aria-pressed" , "false" ) } ) ; else { this . buttonElement . bind ( "mousedown.button" , function ( ) { if ( c . disabled ) return false ; b ( this ) . addClass ( "ui-state-active" ) ; h = this ; b ( document ) . one ( "mouseup" , function ( ) { h = null } ) } ) . bind ( "mouseup.button" , function ( ) { if ( c . disabled ) return false ; b ( this ) . removeClass ( "ui-state-active" ) } ) . bind ( "keydown.button" , function ( d ) { if ( c . disabled ) return false ; if ( d . keyCode == b . ui . keyCode . SPACE ||
d . keyCode == b . ui . keyCode . ENTER ) b ( this ) . addClass ( "ui-state-active" ) } ) . bind ( "keyup.button" , function ( ) { b ( this ) . removeClass ( "ui-state-active" ) } ) ; this . buttonElement . is ( "a" ) && this . buttonElement . keyup ( function ( d ) { d . keyCode === b . ui . keyCode . SPACE && b ( this ) . click ( ) } ) } this . _ setOption ( "disabled" , c . disabled ) ; this . _ resetButton ( ) } , _ determineButtonType : function ( ) { this . type = this . element . is ( ":checkbox" ) ? "checkbox" : this . element . is ( ":radio" ) ? "radio" : this . element . is ( "input" ) ? "input" : "button" ; if ( this . type === "checkbox" || this . type ===
"radio" ) { var a = this . element . parents ( ) . filter ( ":last" ) , c = "label[for=" + this . element . attr ( "id" ) + "]" ; this . buttonElement = a . find ( c ) ; if ( ! this . buttonElement . length ) { a = a . length ? a . siblings ( ) : this . element . siblings ( ) ; this . buttonElement = a . filter ( c ) ; if ( ! this . buttonElement . length ) this . buttonElement = a . find ( c ) } this . element . addClass ( "ui-helper-hidden-accessible" ) ; ( a = this . element . is ( ":checked" ) ) && this . buttonElement . addClass ( "ui-state-active" ) ; this . buttonElement . attr ( "aria-pressed" , a ) } else this . buttonElement = this . element } ,
widget : function ( ) { return this . buttonElement } , destroy : function ( ) { this . element . removeClass ( "ui-helper-hidden-accessible" ) ; this . buttonElement . removeClass ( "ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only" ) . removeAttr ( "role" ) . removeAttr ( "aria-pressed" ) . html ( this . buttonElement . find ( ".ui-button-text" ) . html ( ) ) ; this . hasTitle || this . buttonElement . removeAttr ( "title" ) ;
b . Widget . prototype . destroy . call ( this ) } , _ setOption : function ( a , c ) { b . Widget . prototype . _ setOption . apply ( this , arguments ) ; if ( a === "disabled" ) c ? this . element . propAttr ( "disabled" , true ) : this . element . propAttr ( "disabled" , false ) ; else this . _ resetButton ( ) } , refresh : function ( ) { var a = this . element . is ( ":disabled" ) ; a !== this . options . disabled && this . _ setOption ( "disabled" , a ) ; if ( this . type === "radio" ) k ( this . element [ 0 ] ) . each ( function ( ) { b ( this ) . is ( ":checked" ) ? b ( this ) . button ( "widget" ) . addClass ( "ui-state-active" ) . attr ( "aria-pressed" ,
"true" ) : b ( this ) . button ( "widget" ) . removeClass ( "ui-state-active" ) . attr ( "aria-pressed" , "false" ) } ) ; else if ( this . type === "checkbox" ) this . element . is ( ":checked" ) ? this . buttonElement . addClass ( "ui-state-active" ) . attr ( "aria-pressed" , "true" ) : this . buttonElement . removeClass ( "ui-state-active" ) . attr ( "aria-pressed" , "false" ) } , _ resetButton : function ( ) { if ( this . type === "input" ) this . options . label && this . element . val ( this . options . label ) ; else { var a = this . buttonElement . removeClass ( "ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only" ) ,
c = b ( "<span></span>" ) . addClass ( "ui-button-text" ) . html ( this . options . label ) . appendTo ( a . empty ( ) ) . text ( ) , e = this . options . icons , f = e . primary && e . secondary , d = [ ] ; if ( e . primary || e . secondary ) { if ( this . options . text ) d . push ( "ui-button-text-icon" + ( f ? "s" : e . primary ? "-primary" : "-secondary" ) ) ; e . primary && a . prepend ( "<span class='ui-button-icon-primary ui-icon " + e . primary + "'></span>" ) ; e . secondary && a . append ( "<span class='ui-button-icon-secondary ui-icon " + e . secondary + "'></span>" ) ; if ( ! this . options . text ) { d . push ( f ? "ui-button-icons-only" :
"ui-button-icon-only" ) ; this . hasTitle || a . attr ( "title" , c ) } } else d . push ( "ui-button-text-only" ) ; a . addClass ( d . join ( " " ) ) } } } ) ; b . widget ( "ui.buttonset" , { options : { items : ":button, :submit, :reset, :checkbox, :radio, a, :data(button)" } , _ create : function ( ) { this . element . addClass ( "ui-buttonset" ) } , _ init : function ( ) { this . refresh ( ) } , _ setOption : function ( a , c ) { a === "disabled" && this . buttons . button ( "option" , a , c ) ; b . Widget . prototype . _ setOption . apply ( this , arguments ) } , refresh : function ( ) { var a = this . element . css ( "direction" ) ===
"ltr" ; this . buttons = this . element . find ( this . options . items ) . filter ( ":ui-button" ) . button ( "refresh" ) . end ( ) . not ( ":ui-button" ) . button ( ) . end ( ) . map ( function ( ) { return b ( this ) . button ( "widget" ) [ 0 ] } ) . removeClass ( "ui-corner-all ui-corner-left ui-corner-right" ) . filter ( ":first" ) . addClass ( a ? "ui-corner-left" : "ui-corner-right" ) . end ( ) . filter ( ":last" ) . addClass ( a ? "ui-corner-right" : "ui-corner-left" ) . end ( ) . end ( ) } , destroy : function ( ) { this . element . removeClass ( "ui-buttonset" ) ; this . buttons . map ( function ( ) { return b ( this ) . button ( "widget" ) [ 0 ] } ) . removeClass ( "ui-corner-left ui-corner-right" ) . end ( ) . button ( "destroy" ) ;
b . Widget . prototype . destroy . call ( this ) } } ) } ) ( jQuery ) ;
; / *
* jQuery UI Dialog 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Dialog
*
* Depends :
* jquery . ui . core . js
* jquery . ui . widget . js
* jquery . ui . button . js
* jquery . ui . draggable . js
* jquery . ui . mouse . js
* jquery . ui . position . js
* jquery . ui . resizable . js
* /
( function ( c , l ) { var m = { buttons : true , height : true , maxHeight : true , maxWidth : true , minHeight : true , minWidth : true , width : true } , n = { maxHeight : true , maxWidth : true , minHeight : true , minWidth : true } , o = c . attrFn || { val : true , css : true , html : true , text : true , data : true , width : true , height : true , offset : true , click : true } ; c . widget ( "ui.dialog" , { options : { autoOpen : true , buttons : { } , closeOnEscape : true , closeText : "close" , dialogClass : "" , draggable : true , hide : null , height : "auto" , maxHeight : false , maxWidth : false , minHeight : 150 , minWidth : 150 , modal : false ,
position : { my : "center" , at : "center" , collision : "fit" , using : function ( a ) { var b = c ( this ) . css ( a ) . offset ( ) . top ; b < 0 && c ( this ) . css ( "top" , a . top - b ) } } , resizable : true , show : null , stack : true , title : "" , width : 300 , zIndex : 1E3 } , _ create : function ( ) { this . originalTitle = this . element . attr ( "title" ) ; if ( typeof this . originalTitle !== "string" ) this . originalTitle = "" ; this . options . title = this . options . title || this . originalTitle ; var a = this , b = a . options , d = b . title || " " , e = c . ui . dialog . getTitleId ( a . element ) , g = ( a . uiDialog = c ( "<div></div>" ) ) . appendTo ( document . body ) . hide ( ) . addClass ( "ui-dialog ui-widget ui-widget-content ui-corner-all " +
b . dialogClass ) . css ( { zIndex : b . zIndex } ) . attr ( "tabIndex" , - 1 ) . css ( "outline" , 0 ) . keydown ( function ( i ) { if ( b . closeOnEscape && i . keyCode && i . keyCode === c . ui . keyCode . ESCAPE ) { a . close ( i ) ; i . preventDefault ( ) } } ) . attr ( { role : "dialog" , "aria-labelledby" : e } ) . mousedown ( function ( i ) { a . moveToTop ( false , i ) } ) ; a . element . show ( ) . removeAttr ( "title" ) . addClass ( "ui-dialog-content ui-widget-content" ) . appendTo ( g ) ; var f = ( a . uiDialogTitlebar = c ( "<div></div>" ) ) . addClass ( "ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix" ) . prependTo ( g ) ,
h = c ( '<a href="#"></a>' ) . addClass ( "ui-dialog-titlebar-close ui-corner-all" ) . attr ( "role" , "button" ) . hover ( function ( ) { h . addClass ( "ui-state-hover" ) } , function ( ) { h . removeClass ( "ui-state-hover" ) } ) . focus ( function ( ) { h . addClass ( "ui-state-focus" ) } ) . blur ( function ( ) { h . removeClass ( "ui-state-focus" ) } ) . click ( function ( i ) { a . close ( i ) ; return false } ) . appendTo ( f ) ; ( a . uiDialogTitlebarCloseText = c ( "<span></span>" ) ) . addClass ( "ui-icon ui-icon-closethick" ) . text ( b . closeText ) . appendTo ( h ) ; c ( "<span></span>" ) . addClass ( "ui-dialog-title" ) . attr ( "id" ,
e ) . html ( d ) . prependTo ( f ) ; if ( c . isFunction ( b . beforeclose ) && ! c . isFunction ( b . beforeClose ) ) b . beforeClose = b . beforeclose ; f . find ( "*" ) . add ( f ) . disableSelection ( ) ; b . draggable && c . fn . draggable && a . _ makeDraggable ( ) ; b . resizable && c . fn . resizable && a . _ makeResizable ( ) ; a . _ createButtons ( b . buttons ) ; a . _ isOpen = false ; c . fn . bgiframe && g . bgiframe ( ) } , _ init : function ( ) { this . options . autoOpen && this . open ( ) } , destroy : function ( ) { var a = this ; a . overlay && a . overlay . destroy ( ) ; a . uiDialog . hide ( ) ; a . element . unbind ( ".dialog" ) . removeData ( "dialog" ) . removeClass ( "ui-dialog-content ui-widget-content" ) . hide ( ) . appendTo ( "body" ) ;
a . uiDialog . remove ( ) ; a . originalTitle && a . element . attr ( "title" , a . originalTitle ) ; return a } , widget : function ( ) { return this . uiDialog } , close : function ( a ) { var b = this , d , e ; if ( false !== b . _ trigger ( "beforeClose" , a ) ) { b . overlay && b . overlay . destroy ( ) ; b . uiDialog . unbind ( "keypress.ui-dialog" ) ; b . _ isOpen = false ; if ( b . options . hide ) b . uiDialog . hide ( b . options . hide , function ( ) { b . _ trigger ( "close" , a ) } ) ; else { b . uiDialog . hide ( ) ; b . _ trigger ( "close" , a ) } c . ui . dialog . overlay . resize ( ) ; if ( b . options . modal ) { d = 0 ; c ( ".ui-dialog" ) . each ( function ( ) { if ( this !==
b . uiDialog [ 0 ] ) { e = c ( this ) . css ( "z-index" ) ; isNaN ( e ) || ( d = Math . max ( d , e ) ) } } ) ; c . ui . dialog . maxZ = d } return b } } , isOpen : function ( ) { return this . _ isOpen } , moveToTop : function ( a , b ) { var d = this , e = d . options ; if ( e . modal && ! a || ! e . stack && ! e . modal ) return d . _ trigger ( "focus" , b ) ; if ( e . zIndex > c . ui . dialog . maxZ ) c . ui . dialog . maxZ = e . zIndex ; if ( d . overlay ) { c . ui . dialog . maxZ += 1 ; d . overlay . $el . css ( "z-index" , c . ui . dialog . overlay . maxZ = c . ui . dialog . maxZ ) } a = { scrollTop : d . element . scrollTop ( ) , scrollLeft : d . element . scrollLeft ( ) } ; c . ui . dialog . maxZ += 1 ;
d . uiDialog . css ( "z-index" , c . ui . dialog . maxZ ) ; d . element . attr ( a ) ; d . _ trigger ( "focus" , b ) ; return d } , open : function ( ) { if ( ! this . _ isOpen ) { var a = this , b = a . options , d = a . uiDialog ; a . overlay = b . modal ? new c . ui . dialog . overlay ( a ) : null ; a . _ size ( ) ; a . _ position ( b . position ) ; d . show ( b . show ) ; a . moveToTop ( true ) ; b . modal && d . bind ( "keypress.ui-dialog" , function ( e ) { if ( e . keyCode === c . ui . keyCode . TAB ) { var g = c ( ":tabbable" , this ) , f = g . filter ( ":first" ) ; g = g . filter ( ":last" ) ; if ( e . target === g [ 0 ] && ! e . shiftKey ) { f . focus ( 1 ) ; return false } else if ( e . target ===
f [ 0 ] && e . shiftKey ) { g . focus ( 1 ) ; return false } } } ) ; c ( a . element . find ( ":tabbable" ) . get ( ) . concat ( d . find ( ".ui-dialog-buttonpane :tabbable" ) . get ( ) . concat ( d . get ( ) ) ) ) . eq ( 0 ) . focus ( ) ; a . _ isOpen = true ; a . _ trigger ( "open" ) ; return a } } , _ createButtons : function ( a ) { var b = this , d = false , e = c ( "<div></div>" ) . addClass ( "ui-dialog-buttonpane ui-widget-content ui-helper-clearfix" ) , g = c ( "<div></div>" ) . addClass ( "ui-dialog-buttonset" ) . appendTo ( e ) ; b . uiDialog . find ( ".ui-dialog-buttonpane" ) . remove ( ) ; typeof a === "object" && a !== null && c . each ( a ,
function ( ) { return ! ( d = true ) } ) ; if ( d ) { c . each ( a , function ( f , h ) { h = c . isFunction ( h ) ? { click : h , text : f } : h ; var i = c ( '<button type="button"></button>' ) . click ( function ( ) { h . click . apply ( b . element [ 0 ] , arguments ) } ) . appendTo ( g ) ; c . each ( h , function ( j , k ) { if ( j !== "click" ) j in o ? i [ j ] ( k ) : i . attr ( j , k ) } ) ; c . fn . button && i . button ( ) } ) ; e . appendTo ( b . uiDialog ) } } , _ makeDraggable : function ( ) { function a ( f ) { return { position : f . position , offset : f . offset } } var b = this , d = b . options , e = c ( document ) , g ; b . uiDialog . draggable ( { cancel : ".ui-dialog-content, .ui-dialog-titlebar-close" ,
handle : ".ui-dialog-titlebar" , containment : "document" , start : function ( f , h ) { g = d . height === "auto" ? "auto" : c ( this ) . height ( ) ; c ( this ) . height ( c ( this ) . height ( ) ) . addClass ( "ui-dialog-dragging" ) ; b . _ trigger ( "dragStart" , f , a ( h ) ) } , drag : function ( f , h ) { b . _ trigger ( "drag" , f , a ( h ) ) } , stop : function ( f , h ) { d . position = [ h . position . left - e . scrollLeft ( ) , h . position . top - e . scrollTop ( ) ] ; c ( this ) . removeClass ( "ui-dialog-dragging" ) . height ( g ) ; b . _ trigger ( "dragStop" , f , a ( h ) ) ; c . ui . dialog . overlay . resize ( ) } } ) } , _ makeResizable : function ( a ) { function b ( f ) { return { originalPosition : f . originalPosition ,
originalSize : f . originalSize , position : f . position , size : f . size } } a = a === l ? this . options . resizable : a ; var d = this , e = d . options , g = d . uiDialog . css ( "position" ) ; a = typeof a === "string" ? a : "n,e,s,w,se,sw,ne,nw" ; d . uiDialog . resizable ( { cancel : ".ui-dialog-content" , containment : "document" , alsoResize : d . element , maxWidth : e . maxWidth , maxHeight : e . maxHeight , minWidth : e . minWidth , minHeight : d . _ minHeight ( ) , handles : a , start : function ( f , h ) { c ( this ) . addClass ( "ui-dialog-resizing" ) ; d . _ trigger ( "resizeStart" , f , b ( h ) ) } , resize : function ( f , h ) { d . _ trigger ( "resize" ,
f , b ( h ) ) } , stop : function ( f , h ) { c ( this ) . removeClass ( "ui-dialog-resizing" ) ; e . height = c ( this ) . height ( ) ; e . width = c ( this ) . width ( ) ; d . _ trigger ( "resizeStop" , f , b ( h ) ) ; c . ui . dialog . overlay . resize ( ) } } ) . css ( "position" , g ) . find ( ".ui-resizable-se" ) . addClass ( "ui-icon ui-icon-grip-diagonal-se" ) } , _ minHeight : function ( ) { var a = this . options ; return a . height === "auto" ? a . minHeight : Math . min ( a . minHeight , a . height ) } , _ position : function ( a ) { var b = [ ] , d = [ 0 , 0 ] , e ; if ( a ) { if ( typeof a === "string" || typeof a === "object" && "0" in a ) { b = a . split ? a . split ( " " ) :
[ a [ 0 ] , a [ 1 ] ] ; if ( b . length === 1 ) b [ 1 ] = b [ 0 ] ; c . each ( [ "left" , "top" ] , function ( g , f ) { if ( + b [ g ] === b [ g ] ) { d [ g ] = b [ g ] ; b [ g ] = f } } ) ; a = { my : b . join ( " " ) , at : b . join ( " " ) , offset : d . join ( " " ) } } a = c . extend ( { } , c . ui . dialog . prototype . options . position , a ) } else a = c . ui . dialog . prototype . options . position ; ( e = this . uiDialog . is ( ":visible" ) ) || this . uiDialog . show ( ) ; this . uiDialog . css ( { top : 0 , left : 0 } ) . position ( c . extend ( { of : window } , a ) ) ; e || this . uiDialog . hide ( ) } , _ setOptions : function ( a ) { var b = this , d = { } , e = false ; c . each ( a , function ( g , f ) { b . _ setOption ( g , f ) ;
if ( g in m ) e = true ; if ( g in n ) d [ g ] = f } ) ; e && this . _ size ( ) ; this . uiDialog . is ( ":data(resizable)" ) && this . uiDialog . resizable ( "option" , d ) } , _ setOption : function ( a , b ) { var d = this , e = d . uiDialog ; switch ( a ) { case "beforeclose" : a = "beforeClose" ; break ; case "buttons" : d . _ createButtons ( b ) ; break ; case "closeText" : d . uiDialogTitlebarCloseText . text ( "" + b ) ; break ; case "dialogClass" : e . removeClass ( d . options . dialogClass ) . addClass ( "ui-dialog ui-widget ui-widget-content ui-corner-all " + b ) ; break ; case "disabled" : b ? e . addClass ( "ui-dialog-disabled" ) :
e . removeClass ( "ui-dialog-disabled" ) ; break ; case "draggable" : var g = e . is ( ":data(draggable)" ) ; g && ! b && e . draggable ( "destroy" ) ; ! g && b && d . _ makeDraggable ( ) ; break ; case "position" : d . _ position ( b ) ; break ; case "resizable" : ( g = e . is ( ":data(resizable)" ) ) && ! b && e . resizable ( "destroy" ) ; g && typeof b === "string" && e . resizable ( "option" , "handles" , b ) ; ! g && b !== false && d . _ makeResizable ( b ) ; break ; case "title" : c ( ".ui-dialog-title" , d . uiDialogTitlebar ) . html ( "" + ( b || " " ) ) ; break } c . Widget . prototype . _ setOption . apply ( d , arguments ) } , _ size : function ( ) { var a =
this . options , b , d , e = this . uiDialog . is ( ":visible" ) ; this . element . show ( ) . css ( { width : "auto" , minHeight : 0 , height : 0 } ) ; if ( a . minWidth > a . width ) a . width = a . minWidth ; b = this . uiDialog . css ( { height : "auto" , width : a . width } ) . height ( ) ; d = Math . max ( 0 , a . minHeight - b ) ; if ( a . height === "auto" ) if ( c . support . minHeight ) this . element . css ( { minHeight : d , height : "auto" } ) ; else { this . uiDialog . show ( ) ; a = this . element . css ( "height" , "auto" ) . height ( ) ; e || this . uiDialog . hide ( ) ; this . element . height ( Math . max ( a , d ) ) } else this . element . height ( Math . max ( a . height -
b , 0 ) ) ; this . uiDialog . is ( ":data(resizable)" ) && this . uiDialog . resizable ( "option" , "minHeight" , this . _ minHeight ( ) ) } } ) ; c . extend ( c . ui . dialog , { version : "1.8.15" , uuid : 0 , maxZ : 0 , getTitleId : function ( a ) { a = a . attr ( "id" ) ; if ( ! a ) { this . uuid += 1 ; a = this . uuid } return "ui-dialog-title-" + a } , overlay : function ( a ) { this . $el = c . ui . dialog . overlay . create ( a ) } } ) ; c . extend ( c . ui . dialog . overlay , { instances : [ ] , oldInstances : [ ] , maxZ : 0 , events : c . map ( "focus,mousedown,mouseup,keydown,keypress,click" . split ( "," ) , function ( a ) { return a + ".dialog-overlay" } ) . join ( " " ) ,
create : function ( a ) { if ( this . instances . length === 0 ) { setTimeout ( function ( ) { c . ui . dialog . overlay . instances . length && c ( document ) . bind ( c . ui . dialog . overlay . events , function ( d ) { if ( c ( d . target ) . zIndex ( ) < c . ui . dialog . overlay . maxZ ) return false } ) } , 1 ) ; c ( document ) . bind ( "keydown.dialog-overlay" , function ( d ) { if ( a . options . closeOnEscape && d . keyCode && d . keyCode === c . ui . keyCode . ESCAPE ) { a . close ( d ) ; d . preventDefault ( ) } } ) ; c ( window ) . bind ( "resize.dialog-overlay" , c . ui . dialog . overlay . resize ) } var b = ( this . oldInstances . pop ( ) || c ( "<div></div>" ) . addClass ( "ui-widget-overlay" ) ) . appendTo ( document . body ) . css ( { width : this . width ( ) ,
height : this . height ( ) } ) ; c . fn . bgiframe && b . bgiframe ( ) ; this . instances . push ( b ) ; return b } , destroy : function ( a ) { var b = c . inArray ( a , this . instances ) ; b != - 1 && this . oldInstances . push ( this . instances . splice ( b , 1 ) [ 0 ] ) ; this . instances . length === 0 && c ( [ document , window ] ) . unbind ( ".dialog-overlay" ) ; a . remove ( ) ; var d = 0 ; c . each ( this . instances , function ( ) { d = Math . max ( d , this . css ( "z-index" ) ) } ) ; this . maxZ = d } , height : function ( ) { var a , b ; if ( c . browser . msie && c . browser . version < 7 ) { a = Math . max ( document . documentElement . scrollHeight , document . body . scrollHeight ) ;
b = Math . max ( document . documentElement . offsetHeight , document . body . offsetHeight ) ; return a < b ? c ( window ) . height ( ) + "px" : a + "px" } else return c ( document ) . height ( ) + "px" } , width : function ( ) { var a , b ; if ( c . browser . msie ) { a = Math . max ( document . documentElement . scrollWidth , document . body . scrollWidth ) ; b = Math . max ( document . documentElement . offsetWidth , document . body . offsetWidth ) ; return a < b ? c ( window ) . width ( ) + "px" : a + "px" } else return c ( document ) . width ( ) + "px" } , resize : function ( ) { var a = c ( [ ] ) ; c . each ( c . ui . dialog . overlay . instances , function ( ) { a =
a . add ( this ) } ) ; a . css ( { width : 0 , height : 0 } ) . css ( { width : c . ui . dialog . overlay . width ( ) , height : c . ui . dialog . overlay . height ( ) } ) } } ) ; c . extend ( c . ui . dialog . overlay . prototype , { destroy : function ( ) { c . ui . dialog . overlay . destroy ( this . $el ) } } ) } ) ( jQuery ) ;
; / *
* jQuery UI Tabs 1.8 . 15
*
* Copyright 2011 , AUTHORS . txt ( http : //jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses .
* http : //jquery.org/license
*
* http : //docs.jquery.com/UI/Tabs
*
* Depends :
* jquery . ui . core . js
* jquery . ui . widget . js
* /
( function ( d , p ) { function u ( ) { return ++ v } function w ( ) { return ++ x } var v = 0 , x = 0 ; d . widget ( "ui.tabs" , { options : { add : null , ajaxOptions : null , cache : false , cookie : null , collapsible : false , disable : null , disabled : [ ] , enable : null , event : "click" , fx : null , idPrefix : "ui-tabs-" , load : null , panelTemplate : "<div></div>" , remove : null , select : null , show : null , spinner : "<em>Loading…</em>" , tabTemplate : "<li><a href='#{href}'><span>#{label}</span></a></li>" } , _ create : function ( ) { this . _ tabify ( true ) } , _ setOption : function ( b , e ) { if ( b == "selected" ) this . options . collapsible &&
e == this . options . selected || this . select ( e ) ; else { this . options [ b ] = e ; this . _ tabify ( ) } } , _ tabId : function ( b ) { return b . title && b . title . replace ( /\s/g , "_" ) . replace ( /[^\w\u00c0-\uFFFF-]/g , "" ) || this . options . idPrefix + u ( ) } , _ sanitizeSelector : function ( b ) { return b . replace ( /:/g , "\\:" ) } , _ cookie : function ( ) { var b = this . cookie || ( this . cookie = this . options . cookie . name || "ui-tabs-" + w ( ) ) ; return d . cookie . apply ( null , [ b ] . concat ( d . makeArray ( arguments ) ) ) } , _ ui : function ( b , e ) { return { tab : b , panel : e , index : this . anchors . index ( b ) } } , _ cleanup : function ( ) { this . lis . filter ( ".ui-state-processing" ) . removeClass ( "ui-state-processing" ) . find ( "span:data(label.tabs)" ) . each ( function ( ) { var b =
d ( this ) ; b . html ( b . data ( "label.tabs" ) ) . removeData ( "label.tabs" ) } ) } , _ tabify : function ( b ) { function e ( g , f ) { g . css ( "display" , "" ) ; ! d . support . opacity && f . opacity && g [ 0 ] . style . removeAttribute ( "filter" ) } var a = this , c = this . options , h = /^#.+/ ; this . list = this . element . find ( "ol,ul" ) . eq ( 0 ) ; this . lis = d ( " > li:has(a[href])" , this . list ) ; this . anchors = this . lis . map ( function ( ) { return d ( "a" , this ) [ 0 ] } ) ; this . panels = d ( [ ] ) ; this . anchors . each ( function ( g , f ) { var i = d ( f ) . attr ( "href" ) , l = i . split ( "#" ) [ 0 ] , q ; if ( l && ( l === location . toString ( ) . split ( "#" ) [ 0 ] ||
( q = d ( "base" ) [ 0 ] ) && l === q . href ) ) { i = f . hash ; f . href = i } if ( h . test ( i ) ) a . panels = a . panels . add ( a . element . find ( a . _ sanitizeSelector ( i ) ) ) ; else if ( i && i !== "#" ) { d . data ( f , "href.tabs" , i ) ; d . data ( f , "load.tabs" , i . replace ( /#.*$/ , "" ) ) ; i = a . _ tabId ( f ) ; f . href = "#" + i ; f = a . element . find ( "#" + i ) ; if ( ! f . length ) { f = d ( c . panelTemplate ) . attr ( "id" , i ) . addClass ( "ui-tabs-panel ui-widget-content ui-corner-bottom" ) . insertAfter ( a . panels [ g - 1 ] || a . list ) ; f . data ( "destroy.tabs" , true ) } a . panels = a . panels . add ( f ) } else c . disabled . push ( g ) } ) ; if ( b ) { this . element . addClass ( "ui-tabs ui-widget ui-widget-content ui-corner-all" ) ;
this . list . addClass ( "ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all" ) ; this . lis . addClass ( "ui-state-default ui-corner-top" ) ; this . panels . addClass ( "ui-tabs-panel ui-widget-content ui-corner-bottom" ) ; if ( c . selected === p ) { location . hash && this . anchors . each ( function ( g , f ) { if ( f . hash == location . hash ) { c . selected = g ; return false } } ) ; if ( typeof c . selected !== "number" && c . cookie ) c . selected = parseInt ( a . _ cookie ( ) , 10 ) ; if ( typeof c . selected !== "number" && this . lis . filter ( ".ui-tabs-selected" ) . length ) c . selected =
this . lis . index ( this . lis . filter ( ".ui-tabs-selected" ) ) ; c . selected = c . selected || ( this . lis . length ? 0 : - 1 ) } else if ( c . selected === null ) c . selected = - 1 ; c . selected = c . selected >= 0 && this . anchors [ c . selected ] || c . selected < 0 ? c . selected : 0 ; c . disabled = d . unique ( c . disabled . concat ( d . map ( this . lis . filter ( ".ui-state-disabled" ) , function ( g ) { return a . lis . index ( g ) } ) ) ) . sort ( ) ; d . inArray ( c . selected , c . disabled ) != - 1 && c . disabled . splice ( d . inArray ( c . selected , c . disabled ) , 1 ) ; this . panels . addClass ( "ui-tabs-hide" ) ; this . lis . removeClass ( "ui-tabs-selected ui-state-active" ) ;
if ( c . selected >= 0 && this . anchors . length ) { a . element . find ( a . _ sanitizeSelector ( a . anchors [ c . selected ] . hash ) ) . removeClass ( "ui-tabs-hide" ) ; this . lis . eq ( c . selected ) . addClass ( "ui-tabs-selected ui-state-active" ) ; a . element . queue ( "tabs" , function ( ) { a . _ trigger ( "show" , null , a . _ ui ( a . anchors [ c . selected ] , a . element . find ( a . _ sanitizeSelector ( a . anchors [ c . selected ] . hash ) ) [ 0 ] ) ) } ) ; this . load ( c . selected ) } d ( window ) . bind ( "unload" , function ( ) { a . lis . add ( a . anchors ) . unbind ( ".tabs" ) ; a . lis = a . anchors = a . panels = null } ) } else c . selected = this . lis . index ( this . lis . filter ( ".ui-tabs-selected" ) ) ;
this . element [ c . collapsible ? "addClass" : "removeClass" ] ( "ui-tabs-collapsible" ) ; c . cookie && this . _ cookie ( c . selected , c . cookie ) ; b = 0 ; for ( var j ; j = this . lis [ b ] ; b ++ ) d ( j ) [ d . inArray ( b , c . disabled ) != - 1 && ! d ( j ) . hasClass ( "ui-tabs-selected" ) ? "addClass" : "removeClass" ] ( "ui-state-disabled" ) ; c . cache === false && this . anchors . removeData ( "cache.tabs" ) ; this . lis . add ( this . anchors ) . unbind ( ".tabs" ) ; if ( c . event !== "mouseover" ) { var k = function ( g , f ) { f . is ( ":not(.ui-state-disabled)" ) && f . addClass ( "ui-state-" + g ) } , n = function ( g , f ) { f . removeClass ( "ui-state-" +
g ) } ; this . lis . bind ( "mouseover.tabs" , function ( ) { k ( "hover" , d ( this ) ) } ) ; this . lis . bind ( "mouseout.tabs" , function ( ) { n ( "hover" , d ( this ) ) } ) ; this . anchors . bind ( "focus.tabs" , function ( ) { k ( "focus" , d ( this ) . closest ( "li" ) ) } ) ; this . anchors . bind ( "blur.tabs" , function ( ) { n ( "focus" , d ( this ) . closest ( "li" ) ) } ) } var m , o ; if ( c . fx ) if ( d . isArray ( c . fx ) ) { m = c . fx [ 0 ] ; o = c . fx [ 1 ] } else m = o = c . fx ; var r = o ? function ( g , f ) { d ( g ) . closest ( "li" ) . addClass ( "ui-tabs-selected ui-state-active" ) ; f . hide ( ) . removeClass ( "ui-tabs-hide" ) . animate ( o , o . duration || "normal" ,
function ( ) { e ( f , o ) ; a . _ trigger ( "show" , null , a . _ ui ( g , f [ 0 ] ) ) } ) } : function ( g , f ) { d ( g ) . closest ( "li" ) . addClass ( "ui-tabs-selected ui-state-active" ) ; f . removeClass ( "ui-tabs-hide" ) ; a . _ trigger ( "show" , null , a . _ ui ( g , f [ 0 ] ) ) } , s = m ? function ( g , f ) { f . animate ( m , m . duration || "normal" , function ( ) { a . lis . removeClass ( "ui-tabs-selected ui-state-active" ) ; f . addClass ( "ui-tabs-hide" ) ; e ( f , m ) ; a . element . dequeue ( "tabs" ) } ) } : function ( g , f ) { a . lis . removeClass ( "ui-tabs-selected ui-state-active" ) ; f . addClass ( "ui-tabs-hide" ) ; a . element . dequeue ( "tabs" ) } ;
this . anchors . bind ( c . event + ".tabs" , function ( ) { var g = this , f = d ( g ) . closest ( "li" ) , i = a . panels . filter ( ":not(.ui-tabs-hide)" ) , l = a . element . find ( a . _ sanitizeSelector ( g . hash ) ) ; if ( f . hasClass ( "ui-tabs-selected" ) && ! c . collapsible || f . hasClass ( "ui-state-disabled" ) || f . hasClass ( "ui-state-processing" ) || a . panels . filter ( ":animated" ) . length || a . _ trigger ( "select" , null , a . _ ui ( this , l [ 0 ] ) ) === false ) { this . blur ( ) ; return false } c . selected = a . anchors . index ( this ) ; a . abort ( ) ; if ( c . collapsible ) if ( f . hasClass ( "ui-tabs-selected" ) ) { c . selected =
- 1 ; c . cookie && a . _ cookie ( c . selected , c . cookie ) ; a . element . queue ( "tabs" , function ( ) { s ( g , i ) } ) . dequeue ( "tabs" ) ; this . blur ( ) ; return false } else if ( ! i . length ) { c . cookie && a . _ cookie ( c . selected , c . cookie ) ; a . element . queue ( "tabs" , function ( ) { r ( g , l ) } ) ; a . load ( a . anchors . index ( this ) ) ; this . blur ( ) ; return false } c . cookie && a . _ cookie ( c . selected , c . cookie ) ; if ( l . length ) { i . length && a . element . queue ( "tabs" , function ( ) { s ( g , i ) } ) ; a . element . queue ( "tabs" , function ( ) { r ( g , l ) } ) ; a . load ( a . anchors . index ( this ) ) } else throw "jQuery UI Tabs: Mismatching fragment identifier." ;
d . browser . msie && this . blur ( ) } ) ; this . anchors . bind ( "click.tabs" , function ( ) { return false } ) } , _ getIndex : function ( b ) { if ( typeof b == "string" ) b = this . anchors . index ( this . anchors . filter ( "[href$=" + b + "]" ) ) ; return b } , destroy : function ( ) { var b = this . options ; this . abort ( ) ; this . element . unbind ( ".tabs" ) . removeClass ( "ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible" ) . removeData ( "tabs" ) ; this . list . removeClass ( "ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all" ) ; this . anchors . each ( function ( ) { var e =
d . data ( this , "href.tabs" ) ; if ( e ) this . href = e ; var a = d ( this ) . unbind ( ".tabs" ) ; d . each ( [ "href" , "load" , "cache" ] , function ( c , h ) { a . removeData ( h + ".tabs" ) } ) } ) ; this . lis . unbind ( ".tabs" ) . add ( this . panels ) . each ( function ( ) { d . data ( this , "destroy.tabs" ) ? d ( this ) . remove ( ) : d ( this ) . removeClass ( "ui-state-default ui-corner-top ui-tabs-selected ui-state-active ui-state-hover ui-state-focus ui-state-disabled ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" ) } ) ; b . cookie && this . _ cookie ( null , b . cookie ) ; return this } , add : function ( b ,
e , a ) { if ( a === p ) a = this . anchors . length ; var c = this , h = this . options ; e = d ( h . tabTemplate . replace ( /#\{href\}/g , b ) . replace ( /#\{label\}/g , e ) ) ; b = ! b . indexOf ( "#" ) ? b . replace ( "#" , "" ) : this . _ tabId ( d ( "a" , e ) [ 0 ] ) ; e . addClass ( "ui-state-default ui-corner-top" ) . data ( "destroy.tabs" , true ) ; var j = c . element . find ( "#" + b ) ; j . length || ( j = d ( h . panelTemplate ) . attr ( "id" , b ) . data ( "destroy.tabs" , true ) ) ; j . addClass ( "ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide" ) ; if ( a >= this . lis . length ) { e . appendTo ( this . list ) ; j . appendTo ( this . list [ 0 ] . parentNode ) } else { e . insertBefore ( this . lis [ a ] ) ;
j . insertBefore ( this . panels [ a ] ) } h . disabled = d . map ( h . disabled , function ( k ) { return k >= a ? ++ k : k } ) ; this . _ tabify ( ) ; if ( this . anchors . length == 1 ) { h . selected = 0 ; e . addClass ( "ui-tabs-selected ui-state-active" ) ; j . removeClass ( "ui-tabs-hide" ) ; this . element . queue ( "tabs" , function ( ) { c . _ trigger ( "show" , null , c . _ ui ( c . anchors [ 0 ] , c . panels [ 0 ] ) ) } ) ; this . load ( 0 ) } this . _ trigger ( "add" , null , this . _ ui ( this . anchors [ a ] , this . panels [ a ] ) ) ; return this } , remove : function ( b ) { b = this . _ getIndex ( b ) ; var e = this . options , a = this . lis . eq ( b ) . remove ( ) , c = this . panels . eq ( b ) . remove ( ) ;
if ( a . hasClass ( "ui-tabs-selected" ) && this . anchors . length > 1 ) this . select ( b + ( b + 1 < this . anchors . length ? 1 : - 1 ) ) ; e . disabled = d . map ( d . grep ( e . disabled , function ( h ) { return h != b } ) , function ( h ) { return h >= b ? -- h : h } ) ; this . _ tabify ( ) ; this . _ trigger ( "remove" , null , this . _ ui ( a . find ( "a" ) [ 0 ] , c [ 0 ] ) ) ; return this } , enable : function ( b ) { b = this . _ getIndex ( b ) ; var e = this . options ; if ( d . inArray ( b , e . disabled ) != - 1 ) { this . lis . eq ( b ) . removeClass ( "ui-state-disabled" ) ; e . disabled = d . grep ( e . disabled , function ( a ) { return a != b } ) ; this . _ trigger ( "enable" , null ,
this . _ ui ( this . anchors [ b ] , this . panels [ b ] ) ) ; return this } } , disable : function ( b ) { b = this . _ getIndex ( b ) ; var e = this . options ; if ( b != e . selected ) { this . lis . eq ( b ) . addClass ( "ui-state-disabled" ) ; e . disabled . push ( b ) ; e . disabled . sort ( ) ; this . _ trigger ( "disable" , null , this . _ ui ( this . anchors [ b ] , this . panels [ b ] ) ) } return this } , select : function ( b ) { b = this . _ getIndex ( b ) ; if ( b == - 1 ) if ( this . options . collapsible && this . options . selected != - 1 ) b = this . options . selected ; else return this ; this . anchors . eq ( b ) . trigger ( this . options . event + ".tabs" ) ; return this } ,
load : function ( b ) { b = this . _ getIndex ( b ) ; var e = this , a = this . options , c = this . anchors . eq ( b ) [ 0 ] , h = d . data ( c , "load.tabs" ) ; this . abort ( ) ; if ( ! h || this . element . queue ( "tabs" ) . length !== 0 && d . data ( c , "cache.tabs" ) ) this . element . dequeue ( "tabs" ) ; else { this . lis . eq ( b ) . addClass ( "ui-state-processing" ) ; if ( a . spinner ) { var j = d ( "span" , c ) ; j . data ( "label.tabs" , j . html ( ) ) . html ( a . spinner ) } this . xhr = d . ajax ( d . extend ( { } , a . ajaxOptions , { url : h , success : function ( k , n ) { e . element . find ( e . _ sanitizeSelector ( c . hash ) ) . html ( k ) ; e . _ cleanup ( ) ; a . cache && d . data ( c ,
"cache.tabs" , true ) ; e . _ trigger ( "load" , null , e . _ ui ( e . anchors [ b ] , e . panels [ b ] ) ) ; try { a . ajaxOptions . success ( k , n ) } catch ( m ) { } } , error : function ( k , n ) { e . _ cleanup ( ) ; e . _ trigger ( "load" , null , e . _ ui ( e . anchors [ b ] , e . panels [ b ] ) ) ; try { a . ajaxOptions . error ( k , n , b , c ) } catch ( m ) { } } } ) ) ; e . element . dequeue ( "tabs" ) ; return this } } , abort : function ( ) { this . element . queue ( [ ] ) ; this . panels . stop ( false , true ) ; this . element . queue ( "tabs" , this . element . queue ( "tabs" ) . splice ( - 2 , 2 ) ) ; if ( this . xhr ) { this . xhr . abort ( ) ; delete this . xhr } this . _ cleanup ( ) ; return this } ,
url : function ( b , e ) { this . anchors . eq ( b ) . removeData ( "cache.tabs" ) . data ( "load.tabs" , e ) ; return this } , length : function ( ) { return this . anchors . length } } ) ; d . extend ( d . ui . tabs , { version : "1.8.15" } ) ; d . extend ( d . ui . tabs . prototype , { rotation : null , rotate : function ( b , e ) { var a = this , c = this . options , h = a . _ rotate || ( a . _ rotate = function ( j ) { clearTimeout ( a . rotation ) ; a . rotation = setTimeout ( function ( ) { var k = c . selected ; a . select ( ++ k < a . anchors . length ? k : 0 ) } , b ) ; j && j . stopPropagation ( ) } ) ; e = a . _ unrotate || ( a . _ unrotate = ! e ? function ( j ) { j . clientX &&
a . rotate ( null ) } : function ( ) { t = c . selected ; h ( ) } ) ; if ( b ) { this . element . bind ( "tabsshow" , h ) ; this . anchors . bind ( c . event + ".tabs" , e ) ; h ( ) } else { clearTimeout ( a . rotation ) ; this . element . unbind ( "tabsshow" , h ) ; this . anchors . unbind ( c . event + ".tabs" , e ) ; delete this . _ rotate ; delete this . _ unrotate } return this } } ) } ) ( jQuery ) ;
;
// ColorBox v1.3.17.2 - a full featured, light-weight, customizable lightbox based on jQuery 1.3+
// Copyright (c) 2011 Jack Moore - jack@colorpowered.com
// Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php
( function ( a , b , c ) { function bc ( b ) { if ( ! U ) { P = b , _ ( ) , y = a ( P ) , Q = 0 , K . rel !== "nofollow" && ( y = a ( "." + g ) . filter ( function ( ) { var b = a . data ( this , e ) . rel || this . rel ; return b === K . rel } ) , Q = y . index ( P ) , Q === - 1 && ( y = y . add ( P ) , Q = y . length - 1 ) ) ; if ( ! S ) { S = T = ! 0 , r . show ( ) ; if ( K . returnFocus ) try { P . blur ( ) , a ( P ) . one ( l , function ( ) { try { this . focus ( ) } catch ( a ) { } } ) } catch ( c ) { } q . css ( { opacity : + K . opacity , cursor : K . overlayClose ? "pointer" : "auto" } ) . show ( ) , K . w = Z ( K . initialWidth , "x" ) , K . h = Z ( K . initialHeight , "y" ) , X . position ( ) , o && z . bind ( "resize." + p + " scroll." + p , function ( ) { q . css ( { width : z . width ( ) , height : z . height ( ) , top : z . scrollTop ( ) , left : z . scrollLeft ( ) } ) } ) . trigger ( "resize." + p ) , ba ( h , K . onOpen ) , J . add ( D ) . hide ( ) , I . html ( K . close ) . show ( ) } X . load ( ! 0 ) } } function bb ( ) { var a , b = f + "Slideshow_" , c = "click." + f , d , e , g ; K . slideshow && y [ 1 ] ? ( d = function ( ) { F . text ( K . slideshowStop ) . unbind ( c ) . bind ( j , function ( ) { if ( Q < y . length - 1 || K . loop ) a = setTimeout ( X . next , K . slideshowSpeed ) } ) . bind ( i , function ( ) { clearTimeout ( a ) } ) . one ( c + " " + k , e ) , r . removeClass ( b + "off" ) . addClass ( b + "on" ) , a = setTimeout ( X . next , K . slideshowSpeed ) } , e = function ( ) { clearTimeout ( a ) , F . text ( K . slideshowStart ) . unbind ( [ j , i , k , c ] . join ( " " ) ) . one ( c , d ) , r . removeClass ( b + "on" ) . addClass ( b + "off" ) } , K . slideshowAuto ? d ( ) : e ( ) ) : r . removeClass ( b + "off " + b + "on" ) } function ba ( b , c ) { c && c . call ( P ) , a . event . trigger ( b ) } function _ ( b ) { K = a . extend ( { } , a . data ( P , e ) ) ; for ( b in K ) a . isFunction ( K [ b ] ) && b . substring ( 0 , 2 ) !== "on" && ( K [ b ] = K [ b ] . call ( P ) ) ; K . rel = K . rel || P . rel || "nofollow" , K . href = K . href || a ( P ) . attr ( "href" ) , K . title = K . title || P . title , typeof K . href == "string" && ( K . href = a . trim ( K . href ) ) } function $ ( a ) { return K . photo || /\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i . test ( a ) } function Z ( a , b ) { return Math . round ( ( /%/ . test ( a ) ? ( b === "x" ? z . width ( ) : z . height ( ) ) / 100 : 1 ) * parseInt ( a , 10 ) ) } function Y ( c , d , e ) { e = b . createElement ( "div" ) , c && ( e . id = f + c ) , e . style . cssText = d || "" ; return a ( e ) } var d = { transition : "elastic" , speed : 300 , width : ! 1 , initialWidth : "600" , innerWidth : ! 1 , maxWidth : ! 1 , height : ! 1 , initialHeight : "450" , innerHeight : ! 1 , maxHeight : ! 1 , scalePhotos : ! 0 , scrolling : ! 0 , inline : ! 1 , html : ! 1 , iframe : ! 1 , fastIframe : ! 0 , photo : ! 1 , href : ! 1 , title : ! 1 , rel : ! 1 , opacity : . 9 , preloading : ! 0 , current : "image {current} of {total}" , previous : "previous" , next : "next" , close : "close" , open : ! 1 , returnFocus : ! 0 , loop : ! 0 , slideshow : ! 1 , slideshowAuto : ! 0 , slideshowSpeed : 2500 , slideshowStart : "start slideshow" , slideshowStop : "stop slideshow" , onOpen : ! 1 , onLoad : ! 1 , onComplete : ! 1 , onCleanup : ! 1 , onClosed : ! 1 , overlayClose : ! 0 , escKey : ! 0 , arrowKey : ! 0 , top : ! 1 , bottom : ! 1 , left : ! 1 , right : ! 1 , fixed : ! 1 , data : ! 1 } , e = "colorbox" , f = "cbox" , g = f + "Element" , h = f + "_open" , i = f + "_load" , j = f + "_complete" , k = f + "_cleanup" , l = f + "_closed" , m = f + "_purge" , n = a . browser . msie && ! a . support . opacity , o = n && a . browser . version < 7 , p = f + "_IE6" , q , r , s , t , u , v , w , x , y , z , A , B , C , D , E , F , G , H , I , J , K , L , M , N , O , P , Q , R , S , T , U , V , W , X ; X = a . fn [ e ] = a [ e ] = function ( b , c ) { var f = this ; b = b || { } ; if ( ! f [ 0 ] ) { if ( f . selector ) return f ; f = a ( "<a/>" ) , b . open = ! 0 } c && ( b . onComplete = c ) , f . each ( function ( ) { a . data ( this , e , a . extend ( { } , a . data ( this , e ) || d , b ) ) , a ( this ) . addClass ( g ) } ) , ( a . isFunction ( b . open ) && b . open . call ( f ) || b . open ) && bc ( f [ 0 ] ) ; return f } , X . init = function ( ) { z = a ( c ) , r = Y ( ) . attr ( { id : e , "class" : n ? f + ( o ? "IE6" : "IE" ) : "" } ) , q = Y ( "Overlay" , o ? "position:absolute" : "" ) . hide ( ) , s = Y ( "Wrapper" ) , t = Y ( "Content" ) . append ( A = Y ( "LoadedContent" , "width:0; height:0; overflow:hidden" ) , C = Y ( "LoadingOverlay" ) . add ( Y ( "LoadingGraphic" ) ) , D = Y ( "Title" ) , E = Y ( "Current" ) , G = Y ( "Next" ) , H = Y ( "Previous" ) , F = Y ( "Slideshow" ) . bind ( h , bb ) , I = Y ( "Close" ) ) , s . append ( Y ( ) . append ( Y ( "TopLeft" ) , u = Y ( "TopCenter" ) , Y ( "TopRight" ) ) , Y ( ! 1 , "clear:left" ) . append ( v = Y ( "MiddleLeft" ) , t , w = Y ( "MiddleRight" ) ) , Y ( ! 1 , "clear:left" ) . append ( Y ( "BottomLeft" ) , x = Y ( "BottomCenter" ) , Y ( "BottomRight" ) ) ) . children ( ) . children ( ) . css ( { "float" : "left" } ) , B = Y ( ! 1 , "position:absolute; width:9999px; visibility:hidden; display:none" ) , a ( "body" ) . prepend ( q , r . append ( s , B ) ) , t . children ( ) . hover ( function ( ) { a ( this ) . addClass ( "hover" ) } , function ( ) { a ( this ) . removeClass ( "hover" ) } ) . addClass ( "hover" ) , L = u . height ( ) + x . height ( ) + t . outerHeight ( ! 0 ) - t . height ( ) , M = v . width ( ) + w . width ( ) + t . outerWidth ( ! 0 ) - t . width ( ) , N = A . outerHeight ( ! 0 ) , O = A . outerWidth ( ! 0 ) , r . css ( { "padding-bottom" : L , "padding-right" : M } ) . hide ( ) , G . click ( function ( ) { X . next ( ) } ) , H . click ( function ( ) { X . prev ( ) } ) , I . click ( functi
/* note that this has been updated: https://github.com/carhartl/jquery-cookie */
/ * *
* jQuery Cookie plugin 1.0
*
* Copyright ( c ) 2006 Klaus Hartl ( stilbuero . de )
* Dual licensed under the MIT and GPL licenses :
* http : //www.opensource.org/licenses/mit-license.php
* http : //www.gnu.org/licenses/gpl.html
*
* /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( 'o.5=B(9,b,2){6(h b!=\'E\'){2=2||{};6(b===n){b=\'\';2.3=-1}4 3=\'\';6(2.3&&(h 2.3==\'j\'||2.3.k)){4 7;6(h 2.3==\'j\'){7=w u();7.t(7.q()+(2.3*r*l*l*x))}m{7=2.3}3=\'; 3=\'+7.k()}4 8=2.8?\'; 8=\'+(2.8):\'\';4 a=2.a?\'; a=\'+(2.a):\'\';4 c=2.c?\'; c\':\'\';d.5=[9,\'=\',C(b),3,8,a,c].y(\'\')}m{4 e=n;6(d.5&&d.5!=\'\'){4 g=d.5.A(\';\');s(4 i=0;i<g.f;i++){4 5=o.z(g[i]);6(5.p(0,9.f+1)==(9+\'=\')){e=D(5.p(9.f+1));v}}}F e}};' , 42 , 42 , '||options|expires|var|cookie|if|date|path|name|domain|value|secure|document|cookieValue|length|cookies|typeof||number|toUTCString|60|else|null|jQuery|substring|getTime|24|for|setTime|Date|break|new|1000|join|trim|split|function|encodeURIComponent|decodeURIComponent|undefined|return' . split ( '|' ) , 0 , { } ) )
/ * *
* jQuery hoverIntent r5 // 2007.03.27 // jQuery 1.1.2+
* < http : //cherne.net/brian/resources/jquery.hoverIntent.html>
*
* @ param f onMouseOver function || An object with configuration options
* @ param g onMouseOut function || Nothing ( use configuration options object )
* @ author Brian Cherne < brian @ cherne . net >
* /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( '(6($){$.J.K=6(f,g){8 5={y:7,l:I,H:0};5=$.u(5,g?{v:f,z:g}:f);8 d,b,k,i;8 h=6(3){d=3.G;b=3.B};8 m=6(3,2){2.4=o(2.4);9((w.x(k-d)+w.x(i-b))<5.y){$(2).D("n",h);2.j=1;c 5.v.t(2,[3])}E{k=d;i=b;2.4=r(6(){m(3,2)},5.l)}};8 C=6(3,2){2.4=o(2.4);2.j=0;c 5.z.t(2,[3])};8 q=6(e){8 p=(e.A=="s"?e.N:e.U)||e.T;R(p&&p!=a){S{p=p.O}P(e){p=a}}9(p==a){c Q}8 3=F.u({},e);8 2=a;9(2.4){2.4=o(2.4)}9(e.A=="s"){k=3.G;i=3.B;$(2).M("n",h);9(2.j!=1){2.4=r(6(){m(3,2)},5.l)}}E{$(2).D("n",h);9(2.j==1){2.4=r(6(){C(3,2)},5.H)}}};c a.s(q).L(q)}})(F);' , 57 , 57 , '||ob|ev|hoverIntent_t|cfg|function||var|if|this|cY|return|cX||||track|pY|hoverIntent_s|pX|interval|compare|mousemove|clearTimeout||handleHover|setTimeout|mouseover|apply|extend|over|Math|abs|sensitivity|out|type|pageY|delay|unbind|else|jQuery|pageX|timeout|100|fn|hoverIntent|mouseout|bind|fromElement|parentNode|catch|false|while|try|relatedTarget|toElement' . split ( '|' ) , 0 , { } ) )
/*! Copyright (c) 2010 Brandon Aaron (http:/ / brandonaaron . net )
* Dual licensed under the MIT ( MIT_LICENSE . txt )
* and GPL Version 2 ( GPL_LICENSE . txt ) licenses .
*
* Version : 1.1 . 1
* Requires jQuery 1.3 +
* Docs : http : //docs.jquery.com/Plugins/livequery
* /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( '(5($){$.I($.4,{3:5(6,4,8){g s=2,q;9($.K(6))8=4,4=6,6=A;$.d($.3.c,5(i,7){9(s.e==7.e&&s.f==7.f&&6==7.6&&(!4||4.$b==7.4.$b)&&(!8||8.$b==7.8.$b))k(q=7)&&t});q=q||Q $.3(2.e,2.f,6,4,8);q.u=t;q.m();k 2},10:5(6,4,8){g s=2;9($.K(6))8=4,4=6,6=A;$.d($.3.c,5(i,7){9(s.e==7.e&&s.f==7.f&&(!6||6==7.6)&&(!4||4.$b==7.4.$b)&&(!8||8.$b==7.8.$b)&&!2.u)$.3.w(7.a)});k 2}});$.3=5(e,f,6,4,8){2.e=e;2.f=f;2.6=6;2.4=4;2.8=8;2.l=[];2.u=t;2.a=$.3.c.D(2)-1;4.$b=4.$b||$.3.F++;9(8)8.$b=8.$b||$.3.F++;k 2};$.3.W={w:5(){g 7=2;9(2.6)2.l.Z(2.6,2.4);B 9(2.8)2.l.d(5(i,j){7.8.z(j)});2.l=[];2.u=H},m:5(){9(2.u)k;g 7=2;g o=2.l,v=$(2.e,2.f),E=v.U(o);2.l=v;9(2.6){E.R(2.6,2.4);9(o.p>0)$.d(o,5(i,j){9($.x(j,v)<0)$.S.G(j,7.6,7.4)})}B{E.d(5(){7.4.z(2)});9(2.8&&o.p>0)$.d(o,5(i,j){9($.x(j,v)<0)7.8.z(j)})}}};$.I($.3,{F:0,c:[],h:[],y:t,C:1e,J:5(){9($.3.y&&$.3.h.p){g p=$.3.h.p;1c(p--)$.3.c[$.3.h.1a()].m()}},14:5(){$.3.y=t},N:5(){$.3.y=H;$.3.m()},L:5(){$.d(M,5(i,n){9(!$.4[n])k;g O=$.4[n];$.4[n]=5(){g r=O.z(2,M);$.3.m();k r}})},m:5(a){9(a!=A){9($.x(a,$.3.h)<0)$.3.h.D(a)}B $.d($.3.c,5(a){9($.x(a,$.3.h)<0)$.3.h.D(a)});9($.3.C)Y($.3.C);$.3.C=16($.3.J,17)},w:5(a){9(a!=A)$.3.c[a].w();B $.d($.3.c,5(a){$.3.c[a].w()})}});$.3.L(\'19\',\'1d\',\'13\',\'1b\',\'1f\',\'15\',\'T\',\'P\',\'12\',\'V\',\'11\',\'G\',\'X\');$(5(){$.3.N()})})(18);' , 62 , 78 , '||this|livequery|fn|function|type|query|fn2|if|id|lqguid|queries|each|selector|context|var|queue||el|return|elements|run||oEls|length|||self|false|stopped|els|stop|inArray|running|apply|undefined|else|timeout|push|nEls|guid|remove|true|extend|checkQueue|isFunction|registerPlugin|arguments|play|old|addClass|new|bind|event|removeAttr|not|toggleClass|prototype|html|clearTimeout|unbind|expire|empty|removeClass|after|pause|attr|setTimeout|20|jQuery|append|shift|before|while|prepend|null|wrap' . split ( '|' ) , 0 , { } ) )
/ * *
* Pagination jQuery plugin -- with modifications by pairofdimes , where noted
*
* @ author Gabriel Birke ( birke * at * d - scribe * dot * de )
* @ version 1.2
* /
jQuery . fn . pagination = function ( maxentries , opts ) {
opts = jQuery . extend ( {
items_per_page : 10 ,
num_display_entries : 10 ,
current_page : 0 ,
num_edge_entries : 0 ,
link_to : "#" ,
prev_text : "Prev" ,
next_text : "Next" ,
ellipse_text : "..." ,
prev_show_always : true ,
next_show_always : true ,
callback : function ( ) { return false ; }
} , opts || { } ) ;
return this . each ( function ( ) {
/ * *
* Calculate the maximum number of pages
* /
function numPages ( ) {
return Math . ceil ( maxentries / opts . items_per_page ) ;
}
/ * *
* Calculate start and end point of pagination links depending on
* current_page and num_display_entries .
* @ return { Array }
* /
function getInterval ( ) {
var ne_half = Math . ceil ( opts . num_display_entries / 2 ) ;
var np = numPages ( ) ;
var upper_limit = np - opts . num_display_entries ;
var start = current_page > ne_half ? Math . max ( Math . min ( current_page - ne_half , upper_limit ) , 0 ) : 0 ;
var end = current_page > ne_half ? Math . min ( current_page + ne_half , np ) : Math . min ( opts . num_display_entries , np ) ;
return [ start , end ] ;
}
/ * *
* This is the event handling function for the pagination links .
* @ param { int } page_id The new page number
* /
function pageSelected ( page_id , evt ) {
current_page = page_id ;
drawLinks ( ) ;
var continuePropagation = opts . callback ( page_id , panel ) ;
if ( ! continuePropagation ) {
if ( evt . stopPropagation ) {
evt . stopPropagation ( ) ;
}
else {
evt . cancelBubble = true ;
}
}
return continuePropagation ;
}
/ * *
* This function inserts the pagination links into the container element
* /
function drawLinks ( ) {
panel . empty ( ) ;
var interval = getInterval ( ) ;
var np = numPages ( ) ;
// This helper function returns a handler function that calls pageSelected with the right page_id
var getClickHandler = function ( page_id ) {
return function ( evt ) { return pageSelected ( page_id , evt ) ; }
}
// Helper function for generating a single link (or a span tag if it's the current page)
var appendItem = function ( page_id , appendopts ) {
page_id = page_id < 0 ? 0 : ( page_id < np ? page_id : np - 1 ) ; // Normalize page id to sane value
appendopts = jQuery . extend ( { text : page_id + 1 , classes : "" } , appendopts || { } ) ;
if ( page_id == current_page ) {
var lnk = jQuery ( "<span class='current loading'>" + ( appendopts . text ) + "</span>" ) ; // modification by pairofdimes
}
else
{
var lnk = jQuery ( "<a>" + ( appendopts . text ) + "</a>" )
. bind ( "click" , getClickHandler ( page_id ) )
; //.attr('href', opts.link_to.replace(/__id__/,page_id)); // modification by pairofdimes
}
if ( appendopts . classes ) { lnk . addClass ( appendopts . classes ) ; }
panel . append ( lnk ) ;
}
// Generate "Previous"-Link
if ( opts . prev_text && ( current_page > 0 || opts . prev_show_always ) ) {
appendItem ( current_page - 1 , { text : opts . prev_text , classes : "prev" } ) ;
}
// Generate starting points
if ( interval [ 0 ] > 0 && opts . num_edge_entries > 0 )
{
var end = Math . min ( opts . num_edge_entries , interval [ 0 ] ) ;
for ( var i = 0 ; i < end ; i ++ ) {
appendItem ( i ) ;
}
if ( opts . num_edge_entries < interval [ 0 ] && opts . ellipse_text )
{
jQuery ( "<span>" + opts . ellipse_text + "</span>" ) . appendTo ( panel ) ;
}
}
// Generate interval links
for ( var i = interval [ 0 ] ; i < interval [ 1 ] ; i ++ ) {
appendItem ( i ) ;
}
// Generate ending points
if ( interval [ 1 ] < np && opts . num_edge_entries > 0 )
{
if ( np - opts . num_edge_entries > interval [ 1 ] && opts . ellipse_text )
{
jQuery ( "<span>" + opts . ellipse_text + "</span>" ) . appendTo ( panel ) ;
}
var begin = Math . max ( np - opts . num_edge_entries , interval [ 1 ] ) ;
for ( var i = begin ; i < np ; i ++ ) {
appendItem ( i ) ;
}
}
// Generate "Next"-Link
if ( opts . next_text && ( current_page < np - 1 || opts . next_show_always ) ) {
appendItem ( current_page + 1 , { text : opts . next_text , classes : "next" } ) ;
}
}
// Extract current_page from options
var current_page = opts . current_page ;
// Create a sane value for maxentries and items_per_page
maxentries = ( ! maxentries || maxentries < 0 ) ? 1 : maxentries ;
opts . items_per_page = ( ! opts . items_per_page || opts . items_per_page < 0 ) ? 1 : opts . items_per_page ;
// Store DOM element for easy access from all inner functions
var panel = jQuery ( this ) ;
// Attach control functions to the DOM element
this . selectPage = function ( page_id ) { pageSelected ( page_id ) ; }
this . prevPage = function ( ) {
if ( current_page > 0 ) {
pageSelected ( current_page - 1 ) ;
return true ;
}
else {
return false ;
}
}
this . nextPage = function ( ) {
if ( current_page < numPages ( ) - 1 ) {
pageSelected ( current_page + 1 ) ;
return true ;
}
else {
return false ;
}
}
// When all initialisation is done, draw the links
drawLinks ( ) ;
// call callback function
//opts.callback(current_page, this); // modification by pairofdimes
} ) ;
}
/ *
* Superfish v1 . 4.8 - jQuery menu widget
* Copyright ( c ) 2008 Joel Birch
*
* Dual licensed under the MIT and GPL licenses :
* http : //www.opensource.org/licenses/mit-license.php
* http : //www.gnu.org/licenses/gpl.html
*
* CHANGELOG : http : //users.tpg.com.au/j_birch/plugins/superfish/changelog.txt
* /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( ';(3($){$.h.F=3(b){8 2=$.h.F,c=2.c,$S=$([\'<Q 1t="\',c.O,\'"> s;</Q>\'].f(\'\')),t=3(){8 $$=$(4),9=z($$);X(9.y);$$.10().1u().q()},I=3(){8 $$=$(4),9=z($$),o=2.b;X(9.y);9.y=1v(3(){o.x=($.1y($$[0],o.$k)>-1);$$.q();p(o.$k.G&&$$.J([\'d.\',o.g].f(\'\')).G<1){t.e(o.$k)}},o.1g)},z=3($9){8 9=$9.J([\'5.\',c.C,\':N\'].f(\'\'))[0];2.b=2.o[9.W];l 9},R=3($a){$a.u(c.M).1q($S.1i())};l 4.j(3(){8 s=4.W=2.o.G;8 o=$.12({},2.Y,b);o.$k=$(\'d.\'+o.B,4).1l(0,o.K).j(3(){$(4).u([o.g,c.D].f(\' \')).1n(\'d:T(5)\').Z(o.B)});2.o[s]=2.b=o;$(\'d:T(5)\',4)[($.h.P&&!o.13)?\'P\':\'1o\'](t,I).j(3(){p(o.1d)R($(\'>a:N-1M\',4))}).m(\'.\'+c.D).q();8 $a=$(\'a\',4);$a.j(3(i){8 $d=$a.U(i).J(\'d\');$a.U(i).1N(3(){t.e($d)}).1J(3(){I.e($d)})});o.14.e(4)}).j(3(){E=[c.C];p(2.b.A&&!($.n.V&&$.n.L<7))E.1D(c.r);$(4).u(E.f(\' \'))})};8 2=$.h.F;2.o=[];2.b={};2.H=3(){8 o=2.b;p($.n.V&&$.n.L>6&&o.A&&o.v.1f!=1G)4.1z(2.c.r+\'-15\')};2.c={D:\'2-1I\',C:\'2-1E-1B\',M:\'2-1O-5\',O:\'2-1p-1m\',r:\'2-1k\'};2.Y={g:\'1w\',B:\'1r\',K:1,1g:1A,v:{1f:\'1F\'},17:\'1H\',1d:w,A:w,13:11,14:3(){},19:3(){},18:3(){},1e:3(){}};$.h.12({q:3(){8 o=2.b,m=(o.x===w)?o.$k:\'\';o.x=11;8 $5=$([\'d.\',o.g].f(\'\'),4).1C(4).m(m).Z(o.g).16(\'>5\').1K().1c(\'1a\',\'1b\');o.1e.e($5);l 4},10:3(){8 o=2.b,1L=2.c.r+\'-15\',$5=4.u(o.g).16(\'>5:1b\').1c(\'1a\',\'1j\');2.H.e($5);o.19.e($5);$5.1x(o.v,o.17,3(){2.H.e($5);o.18.e($5)});l 4}})})(1h);' , 62 , 113 , '||sf|function|this|ul|||var|menu||op||li|call|join|hoverClass|fn||each|path|return|not|browser||if|hideSuperfishUl|shadowClass||over|addClass|animation|true|retainPath|sfTimer|getMenu|dropShadows|pathClass|menuClass|bcClass|menuClasses|superfish|length|IE7fix|out|parents|pathLevels|version|anchorClass|first|arrowClass|hoverIntent|span|addArrow|arrow|has|eq|msie|serial|clearTimeout|defaults|removeClass|showSuperfishUl|false|extend|disableHI|onInit|off|find|speed|onShow|onBeforeShow|visibility|hidden|css|autoArrows|onHide|opacity|delay|jQuery|clone|visible|shadow|slice|indicator|filter|hover|sub|append|overideThisToUse|187|class|siblings|setTimeout|sfHover|animate|inArray|toggleClass|800|enabled|add|push|js|show|undefined|normal|breadcrumb|blur|hide|sh|child|focus|with' . split ( '|' ) , 0 , { } ) )
/ * *
* TableDnD plug - in for JQuery , allows you to drag and drop table rows
* You can set up various options to control how the system will work
* Copyright ( c ) Denis Howlett < denish @ isocra . com >
* Licensed like jQuery , see http : //docs.jquery.com/License.
*
* /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( '1.3={j:f,h:f,G:f,F:0,1x:a(1p){8.z(a(){8.k=1.1A({1m:f,1r:f,v:"1C",12:f,t:f,w:5,15:/[^\\-]*$/,1N:f,N:f},1p||{});1.3.O(8)});1(g).1s(\'V\',1.3.V).1s(\'Z\',1.3.Z);9 8},O:a(c){4 7=c.k;6(c.k.N){4 1u=1("1J."+c.k.N,c);1u.z(a(){1(8).1l(a(b){1.3.h=8.Y;1.3.j=c;1.3.G=1.3.Q(8,b);6(7.t){7.t(c,8)}9 L})})}m{4 l=1("1H",c);l.z(a(){4 d=1(8);6(!d.1t("1K")){d.1l(a(b){6(b.P.1F=="1E"){1.3.h=8;1.3.j=c;1.3.G=1.3.Q(8,b);6(7.t){7.t(c,8)}9 L}}).11("1M","1L")}})}},1D:a(){8.z(a(){6(8.k){1.3.O(8)}})},U:a(b){6(b.1k||b.1h){9{x:b.1k,y:b.1h}}9{x:b.1z+g.o.1B-g.o.1w,y:b.1y+g.o.S-g.o.1G}},Q:a(P,b){b=b||q.23;4 X=8.C(P);4 p=8.U(b);9{x:p.x-X.x,y:p.y-X.y}},C:a(e){4 K=0;4 I=0;6(e.E==0){e=e.M}21(e.1f){K+=e.1e;I+=e.1g;e=e.1f}K+=e.1e;I+=e.1g;9{x:K,y:I}},V:a(b){6(1.3.h==f){9}4 D=1(1.3.h);4 7=1.3.j.k;4 p=1.3.U(b);4 y=p.y-1.3.G.y;4 u=q.27;6(g.26){6(18 g.17!=\'1b\'&&g.17!=\'24\'){u=g.T.S}m 6(18 g.o!=\'1b\'){u=g.o.S}}6(p.y-u<7.w){q.1v(0,-7.w)}m{4 1j=q.1a?q.1a:g.T.W?g.T.W:g.o.W;6(1j-(p.y-u)<7.w){q.1v(0,7.w)}}6(y!=1.3.F){4 R=y>1.3.F;1.3.F=y;6(7.v){D.1X(7.v)}m{D.11(7.1m)}4 r=1.3.1o(D,y);6(r){6(R&&1.3.h!=r){1.3.h.Y.1q(1.3.h,r.1W)}m 6(!R&&1.3.h!=r){1.3.h.Y.1q(1.3.h,r)}}}9 L},1o:a(16,y){4 l=1.3.j.l;1d(4 i=0;i<l.10;i++){4 d=l[i];4 B=8.C(d).y;4 H=1n(d.E)/2;6(d.E==0){B=8.C(d.M).y;H=1n(d.M.E)/2}6((y>B-H)&&(y<(B+H))){6(d==16){9 f}4 7=1.3.j.k;6(7.1i){6(7.1i(16,d)){9 d}m{9 f}}m{4 13=1(d).1t("13");6(!13){9 d}m{9 f}}9 d}}9 f},Z:a(e){6(1.3.j&&1.3.h){4 A=1.3.h;4 7=1.3.j.k;6(7.v){1(A).1V(7.v)}m{1(A).11(7.1r)}1.3.h=f;6(7.12){7.12(1.3.j,A)}1.3.j=f}},1Y:a(){6(1.3.j){9 1.3.14(1.3.j)}m{9"1U: 1T 1P J 19, 1Q 1R 20 19 1S J 1Z 28 c 25 1O d"}},14:a(c){4 n="";4 1c=c.J;4 l=c.l;1d(4 i=0;i<l.10;i++){6(n.10>0)n+="&";4 s=l[i].J;6(s&&s&&c.k&&c.k.15){s=s.22(c.k.15)[0]}n+=1c+\'[]=\'+s}9 n},1I:a(){4 n="";8.z(a(){n+=1.3.14(8)});9 n}}' , 62 , 133 , '|jQuery||tableDnD|var||if|config|this|return|function|ev|table|row||null|document|dragObject||currentTable|tableDnDConfig|rows|else|result|body|mousePos|window|currentRow|rowId|onDragStart|yOffset|onDragClass|scrollAmount|||each|droppedRow|rowY|getPosition|dragObj|offsetHeight|oldY|mouseOffset|rowHeight|top|id|left|false|firstChild|dragHandle|makeDraggable|target|getMouseOffset|movingDown|scrollTop|documentElement|mouseCoords|mousemove|clientHeight|docPos|parentNode|mouseup|length|css|onDrop|nodrop|serializeTable|serializeRegexp|draggedRow|compatMode|typeof|set|innerHeight|undefined|tableId|for|offsetLeft|offsetParent|offsetTop|pageY|onAllowDrop|windowHeight|pageX|mousedown|onDragStyle|parseInt|findDropTargetRow|options|insertBefore|onDropStyle|bind|hasClass|cells|scrollBy|clientLeft|build|clientY|clientX|extend|scrollLeft|tDnD_whileDrag|updateTables|TD|tagName|clientTop|tr|serializeTables|td|nodrag|move|cursor|serializeParamName|every|Table|you|need|an|No|Error|removeClass|nextSibling|addClass|serialize|on|to|while|match|event|BackCompat|and|all|pageYOffset|your' . split ( '|' ) , 0 , { } ) )
jQuery . fn . extend ( { tableDnD : jQuery . tableDnD . build , tableDnDUpdate : jQuery . tableDnD . updateTables , tableDnDSerialize : jQuery . tableDnD . serializeTables } ) ;
/ * *
*
* AJAX IFRAME METHOD ( AIM )
* http : //www.webtoolkit.info/
*
* Copyright ( c ) 2006 - 2008 www . webtoolkit . info
* Licensed under Gnu Public Licence V3 or higher .
* http : //www.gnu.org/licenses/gpl.html
* * /
eval ( function ( p , a , c , k , e , d ) { e = function ( c ) { return ( c < a ? '' : e ( parseInt ( c / a ) ) ) + ( ( c = c % a ) > 35 ? String . fromCharCode ( c + 29 ) : c . toString ( 36 ) ) } ; if ( ! '' . replace ( /^/ , String ) ) { while ( c -- ) { d [ e ( c ) ] = k [ c ] || e ( c ) } k = [ function ( e ) { return d [ e ] } ] ; e = function ( ) { return '\\w+' } ; c = 1 } ; while ( c -- ) { if ( k [ c ] ) { p = p . replace ( new RegExp ( '\\b' + e ( c ) + '\\b' , 'g' ) , k [ c ] ) } } return p } ( '6={h:0(c){1 n=\'f\'+k.z(k.w()*u);1 d=3.y(\'C\');d.e=\'<o B="D:t" x="g:s" 7="\'+n+\'" 8="\'+n+\'" v="6.p(\\\'\'+n+\'\\\')"></o>\';3.j.A(d);1 i=3.m(n);2(c&&a(c.4)==\'0\'){i.4=c.4}5 n},l:0(f,8){f.J(\'K\',8)},I:0(f,c){6.l(f,6.h(c));2(c&&a(c.b)==\'0\'){5 c.b()}9{5 E}},p:0(7){1 i=3.m(7);2(i.q){1 d=i.q}9 2(i.r){1 d=i.r.3}9{1 d=G.L[7].3}2(d.F.H=="g:s"){5}2(a(i.4)==\'0\'){i.4(d.j.e)}}}' , 48 , 48 , 'function|var|if|document|onComplete|return|AIM|id|name|else|typeof|onStart|||innerHTML||about|frame||body|Math|form|getElementById||iframe|loaded|contentDocument|contentWindow|blank|none|99999|onload|random|src|createElement|floor|appendChild|style|DIV|display|true|location|window|href|submit|setAttribute|target|frames' . split ( '|' ) , 0 , { } ) ) ;
/ * *
*
* RateIt
* http : //rateit.codeplex.com/
*
* Copyright ( c ) 2013 Gideon Junge
* Licensed under the MIT .
* http : //rateit.codeplex.com/license
* * /
( function ( n ) { function t ( n ) { var u = n . originalEvent . changedTouches , t = u [ 0 ] , i = "" , r ; switch ( n . type ) { case "touchmove" : i = "mousemove" ; break ; case "touchend" : i = "mouseup" ; break ; default : return } r = document . createEvent ( "MouseEvent" ) , r . initMouseEvent ( i , ! 0 , ! 0 , window , 1 , t . screenX , t . screenY , t . clientX , t . clientY , ! 1 , ! 1 , ! 1 , ! 1 , 0 , null ) , t . target . dispatchEvent ( r ) , n . preventDefault ( ) } n . rateit = { aria : { resetLabel : "reset rating" , ratingLabel : "rating" } } , n . fn . rateit = function ( i , r ) { var e = 1 , u = { } , o = "init" , s = function ( n ) { return n . charAt ( 0 ) . toUpperCase ( ) + n . substr ( 1 ) } , f ; if ( this . length == 0 ) return this ; if ( f = n . type ( i ) , f == "object" || i === undefined || i == null ) u = n . extend ( { } , n . fn . rateit . defaults , i ) ; else { if ( f == "string" && r === undefined ) return this . data ( "rateit" + s ( i ) ) ; f == "string" && ( o = "setvalue" ) } return this . each ( function ( ) { var c = n ( this ) , f = function ( n , t ) { if ( t != null ) { var i = "aria-value" + ( n == "value" ? "now" : n ) , r = c . find ( ".rateit-range" ) ; r . attr ( i ) != undefined && r . attr ( i , t ) } return arguments [ 0 ] = "rateit" + s ( n ) , c . data . apply ( c , arguments ) } , v , h , b , k , l , y , p , a ; if ( c . hasClass ( "rateit" ) || c . addClass ( "rateit" ) , v = c . css ( "direction" ) != "rtl" , o == "setvalue" ) { if ( ! f ( "init" ) ) throw "Can't set value before init" ; i != "readonly" || r != ! 0 || f ( "readonly" ) || ( c . find ( ".rateit-range" ) . unbind ( ) , f ( "wired" , ! 1 ) ) , i == "value" && ( r = r == null ? f ( "min" ) : Math . max ( f ( "min" ) , Math . min ( f ( "max" ) , r ) ) ) , f ( "backingfld" ) && ( h = n ( f ( "backingfld" ) ) , i == "value" && h . val ( r ) , i == "min" && h [ 0 ] . min && ( h [ 0 ] . min = r ) , i == "max" && h [ 0 ] . max && ( h [ 0 ] . max = r ) , i == "step" && h [ 0 ] . step && ( h [ 0 ] . step = r ) ) , f ( i , r ) } f ( "init" ) || ( f ( "min" , f ( "min" ) || u . min ) , f ( "max" , f ( "max" ) || u . max ) , f ( "step" , f ( "step" ) || u . step ) , f ( "readonly" , f ( "readonly" ) !== undefined ? f ( "readonly" ) : u . readonly ) , f ( "resetable" , f ( "resetable" ) !== undefined ? f ( "resetable" ) : u . resetable ) , f ( "backingfld" , f ( "backingfld" ) || u . backingfld ) , f ( "starwidth" , f ( "starwidth" ) || u . starwidth ) , f ( "starheight" , f ( "starheight" ) || u . starheight ) , f ( "value" , Math . max ( f ( "min" ) , Math . min ( f ( "max" ) , f ( "value" ) || u . value || u . min ) ) ) , f ( "ispreset" , f ( "ispreset" ) !== undefined ? f ( "ispreset" ) : u . ispreset ) , f ( "backingfld" ) && ( h = n ( f ( "backingfld" ) ) , f ( "value" , h . hide ( ) . val ( ) ) , ( h . attr ( "disabled" ) || h . attr ( "readonly" ) ) && f ( "readonly" , ! 0 ) , h [ 0 ] . nodeName == "INPUT" && ( h [ 0 ] . type == "range" || h [ 0 ] . type == "text" ) && ( f ( "min" , parseInt ( h . attr ( "min" ) ) || f ( "min" ) ) , f ( "max" , parseInt ( h . attr ( "max" ) ) || f ( "max" ) ) , f ( "step" , parseInt ( h . attr ( "step" ) ) || f ( "step" ) ) ) , h [ 0 ] . nodeName == "SELECT" && h [ 0 ] . options . length > 1 && ( f ( "min" , Number ( h [ 0 ] . options [ 0 ] . value ) ) , f ( "max" , Number ( h [ 0 ] . options [ h [ 0 ] . length - 1 ] . value ) ) , f ( "step" , Number ( h [ 0 ] . options [ 1 ] . value ) - Number ( h [ 0 ] . options [ 0 ] . value ) ) ) ) , b = c [ 0 ] . nodeName == "DIV" ? "div" : "span" , e ++ , k = '<button id="rateit-reset-{{index}}" class="rateit-reset" aria-label="' + n . rateit . aria . resetLabel + '" aria-controls="rateit-range-{{index}}"><\/button><{{element}} id="rateit-range-{{index}}" class="rateit-range" tabindex="0" role="slider" aria-label="' + n . rateit . aria . ratingLabel + '" aria-owns="rateit-reset-{{index}}" aria-valuemin="' + f ( "min" ) + '" aria-valuemax="' + f ( "max" ) + '" aria-valuenow="' + f ( "value" ) + '"><{{element}} class="rateit-selected" style="height:' + f ( "starheight" ) + 'px"><\/{{element}}><{{element}} class="rateit-hover" style="height:' + f ( "starheight" ) + 'px"><\/{{element}}><\/{{element}}>' , c . append ( k . replace ( /{{index}}/gi , e ) . replace ( /{{element}}/gi , b ) ) , v || ( c . find ( ".rateit-reset" ) . css ( "float" , "right" ) , c . find ( ".rateit-selected" ) . addClass ( "rateit-selected-rtl" ) , c . find ( ".rateit-hover" ) . addClass ( "rateit-hover-rtl" ) ) , f ( "init" , ! 0 ) ) , l = c . find ( ".rateit-range" ) , l . width ( f ( "starwidth" ) * ( f ( "max" ) - f ( "min" ) ) ) . height ( f ( "starheight" ) ) , y = "rateit-preset" + ( v ? "" : "-rtl" ) , f ( "ispreset" ) ? c . find ( ".rateit-selected" ) . addClass ( y ) : c . find ( ".rateit-selected" ) . removeClass ( y ) , f ( "value" ) != null && ( p = ( f ( "value" ) - f ( "min" ) ) * f ( "starwidth" ) , c . find ( ".rateit-selected" ) . width ( p ) ) , a = c . find ( ".rateit-reset" ) , a . data ( "wired" ) !== ! 0 && a . bind ( "click" , function ( t ) { t . preventDefault ( ) , a . blur ( ) , f ( "value" , f ( "min" ) ) , l . find ( ".rateit-hover" ) . hide ( ) . width ( 0 ) , l . find ( ".rateit-selected" ) . width ( 0 ) . show ( ) , f ( "backingfld" ) && n ( f ( "backingfld" ) ) . val ( f ( "min" ) ) , c . trigger ( "reset" ) } ) . data ( "wired" , ! 0 ) ; var d = function ( t , i ) { var u = i . changedTouches ? i . changedTouches [ 0 ] . pageX : i . pageX , r = u - n ( t ) . offset ( ) . left ; return v || ( r = l . w