2014-09-01 18:04:39 +08:00
var k ;
function r ( a ) { var b , c = this ; this . za = ! 1 ; this . eb = 0 ; this . ja = null ; this . nc = this . Ec = this . Dc = 0 ; this . ee = 10 ; if ( ! a || ! a . nodeType ) throw new TypeError ( "Layer must be a document node" ) ; this . Db = function ( ) { return r . prototype . Db . apply ( c , arguments ) } ; this . Ga = function ( ) { return r . prototype . Ga . apply ( c , arguments ) } ; this . Gb = function ( ) { return r . prototype . Gb . apply ( c , arguments ) } ; this . Fb = function ( ) { return r . prototype . Fb . apply ( c , arguments ) } ; this . Eb = function ( ) { return r . prototype . Eb . apply ( c , arguments ) } ; aa ( ) || ( this . mb && ( a . addEventListener ( "mouseover" , this . Ga ,
! 0 ) , a . addEventListener ( "mousedown" , this . Ga , ! 0 ) , a . addEventListener ( "mouseup" , this . Ga , ! 0 ) ) , a . addEventListener ( "click" , this . Db , ! 0 ) , a . addEventListener ( "touchstart" , this . Gb , ! 1 ) , a . addEventListener ( "touchend" , this . Fb , ! 1 ) , a . addEventListener ( "touchcancel" , this . Eb , ! 1 ) , Event . prototype . stopImmediatePropagation || ( a . removeEventListener = function ( b , c , f ) { var h = Node . prototype . removeEventListener ; "click" === b ? h . call ( a , b , c . hc || c , f ) : h . call ( a , b , c , f ) } , a . addEventListener = function ( b , c , f ) { var h = Node . prototype . addEventListener ;
"click" === b ? h . call ( a , b , c . hc || ( c . hc = function ( a ) { a . Rd || c ( a ) } ) , f ) : h . call ( a , b , c , f ) } ) , "function" === typeof a . onclick && ( b = a . onclick , a . addEventListener ( "click" , function ( a ) { b ( a ) } , ! 1 ) , a . onclick = null ) ) } k = r . prototype ; k . mb = 0 < navigator . userAgent . indexOf ( "Android" ) ; k . ua = /iP(ad|hone|od)/ . test ( navigator . userAgent ) ; k . nb = r . prototype . ua && /OS 4_\d(_\d)?/ . test ( navigator . userAgent ) ; k . gd = r . prototype . ua && /OS ([6-9]|\d{2})_\d/ . test ( navigator . userAgent ) ;
function ba ( a , b ) { switch ( b . nodeName . toLowerCase ( ) ) { case "button" : case "select" : case "textarea" : if ( b . disabled ) return ! 0 ; break ; case "input" : if ( a . ua && "file" === b . type || b . disabled ) return ! 0 ; break ; case "label" : case "video" : return ! 0 } return /\bneedsclick\b/ . test ( b . className ) }
function ca ( a ) { switch ( a . nodeName . toLowerCase ( ) ) { case "textarea" : case "select" : return ! 0 ; case "input" : switch ( a . type ) { case "button" : case "checkbox" : case "file" : case "image" : case "radio" : case "submit" : return ! 1 } return ! a . disabled && ! a . readOnly ; default : return /\bneedsfocus\b/ . test ( a . className ) } } k . focus = function ( a ) { var b ; this . ua && a . setSelectionRange ? ( b = a . value . length , a . setSelectionRange ( b , b ) ) : a . focus ( ) } ;
k . Gb = function ( a ) { var b , c , d ; if ( 1 < a . targetTouches . length ) return ! 0 ; b = a . target ; b = b . nodeType === Node . TEXT _NODE ? b . parentNode : b ; c = a . targetTouches [ 0 ] ; if ( this . ua ) { d = window . getSelection ( ) ; if ( d . rangeCount && ! d . isCollapsed ) return ! 0 ; if ( ! this . nb ) { if ( c . identifier === this . nc ) return a . preventDefault ( ) , ! 1 ; this . nc = c . identifier ; var e ; d = b . dc ; if ( ! d || ! d . contains ( b ) ) { e = b ; do { if ( e . scrollHeight > e . offsetHeight ) { d = e ; b . dc = e ; break } e = e . parentElement } while ( e ) } d && ( d . ld = d . scrollTop ) } } this . za = ! 0 ; this . eb = a . timeStamp ; this . ja = b ; this . Dc = c . pageX ;
this . Ec = c . pageY ; 200 > a . timeStamp - this . mc && a . preventDefault ( ) ; return ! 0 } ;
k . Fb = function ( a ) { var b , c , d ; d = this . ja ; b = a . changedTouches [ 0 ] ; c = this . ee ; if ( Math . abs ( b . pageX - this . Dc ) > c || Math . abs ( b . pageY - this . Ec ) > c || 300 < a . timeStamp - this . eb ) this . za = ! 1 , this . ja = null ; if ( ! this . za ) return ! 0 ; if ( 200 > a . timeStamp - this . mc ) return this . $c = ! 0 ; this . mc = a . timeStamp ; b = this . eb ; this . za = ! 1 ; this . eb = 0 ; this . gd && ( d = a . changedTouches [ 0 ] , d = document . elementFromPoint ( d . pageX - window . pageXOffset , d . pageY - window . pageYOffset ) ) ; c = d . tagName . toLowerCase ( ) ; if ( "label" === c ) { if ( b = void 0 !== d . control ? d . control : d . htmlFor ? document . getElementById ( d . htmlFor ) :
d . querySelector ( "button, input:not([type=hidden]), keygen, meter, output, progress, select, textarea" ) ) { this . focus ( d ) ; if ( this . mb ) return ! 1 ; d = b } } else if ( ca ( d ) ) { if ( 100 < a . timeStamp - b || this . ua && window . top !== window && "input" === c ) return this . ja = null , ! 1 ; this . focus ( d ) ; this . nb && "select" === c || ( this . ja = null , a . preventDefault ( ) ) ; return ! 1 } if ( this . ua && ! this . nb && ( b = d . dc ) && b . ld !== b . scrollTop ) return ! 0 ; ba ( this , d ) || ( a . preventDefault ( ) , document . activeElement && document . activeElement !== d && document . activeElement . blur ( ) , b =
a . changedTouches [ 0 ] , a = document . createEvent ( "MouseEvents" ) , a . initMouseEvent ( "click" , ! 0 , ! 0 , window , 1 , b . screenX , b . screenY , b . clientX , b . clientY , ! 1 , ! 1 , ! 1 , ! 1 , 0 , null ) , a . nd = ! 0 , d . dispatchEvent ( a ) ) ; return ! 1 } ; k . Eb = function ( ) { this . za = ! 1 ; this . ja = null } ; k . Ga = function ( a ) { return this . ja && ! a . nd && a . cancelable ? ! ba ( this , this . ja ) || this . $c ? ( a . stopImmediatePropagation ? a . stopImmediatePropagation ( ) : a . Rd = ! 0 , a . stopPropagation ( ) , a . preventDefault ( ) , ! 1 ) : ! 0 : ! 0 } ;
k . Db = function ( a ) { if ( this . za ) return this . ja = null , this . za = ! 1 , ! 0 ; if ( "submit" === a . target . type && 0 === a . detail ) return ! 0 ; a = this . Ga ( a ) ; a || ( this . ja = null ) ; return a } ; function aa ( ) { var a ; if ( "undefined" === typeof window . ontouchstart ) return ! 0 ; if ( /Chrome\/[0-9]+/ . test ( navigator . userAgent ) ) if ( r . prototype . mb ) { if ( ( a = document . querySelector ( "meta[name=viewport]" ) ) && - 1 !== a . content . indexOf ( "user-scalable=no" ) ) return ! 0 } else return ! 0 ; return ! 1 } var da = [ ] ;
function ia ( a ) { if ( - 1 != da . indexOf ( a ) ) return ! 1 ; da . push ( a ) ; return new r ( a ) } "undefined" !== typeof define && define . ye ? define ( function ( ) { return r } ) : "undefined" !== typeof module && module . cc ? ( module . cc = ia , module . cc . Mc = r ) : window . Mc = r ; ia ( document ) ;
var z = function ( ) { function a ( a ) { return null == a ? String ( a ) : Ba [ Xb . call ( a ) ] || "object" } function b ( b ) { return "function" == a ( b ) } function c ( a ) { return null != a && a == a . window } function d ( a ) { return null != a && a . nodeType == a . DOCUMENT _NODE } function e ( b ) { return "object" == a ( b ) } function f ( a ) { return e ( a ) && ! c ( a ) && Object . getPrototypeOf ( a ) == Object . prototype } function h ( a ) { return "number" == typeof a . length } function l ( a ) { return B . call ( a , function ( a ) { return null != a } ) } function q ( a ) { return a . replace ( /::/g , "/" ) . replace ( /([A-Z]+)([A-Z][a-z])/g ,
"$1_$2" ) . replace ( /([a-z\d])([A-Z])/g , "$1_$2" ) . replace ( /_/g , "-" ) . toLowerCase ( ) } function n ( a ) { return a in W ? W [ a ] : W [ a ] = new RegExp ( "(^|\\s)" + a + "(\\s|$)" ) } function v ( a , b ) { return "number" != typeof b || ea [ q ( a ) ] ? b : b + "px" } function p ( a ) { return "children" in a ? m . call ( a . children ) : g . map ( a . childNodes , function ( a ) { if ( 1 == a . nodeType ) return a } ) } function H ( a , b , c ) { for ( s in b ) c && ( f ( b [ s ] ) || fa ( b [ s ] ) ) ? ( f ( b [ s ] ) && ! f ( a [ s ] ) && ( a [ s ] = { } ) , fa ( b [ s ] ) && ! fa ( a [ s ] ) && ( a [ s ] = [ ] ) , H ( a [ s ] , b [ s ] , c ) ) : b [ s ] !== C && ( a [ s ] = b [ s ] ) } function w ( a , b ) { return null ==
b ? g ( a ) : g ( a ) . filter ( b ) } function y ( a , c , d , e ) { return b ( c ) ? c . call ( a , d , e ) : c } function u ( a , b ) { var c = a . className || "" , d = c && c . Wb !== C ; if ( b === C ) return d ? c . Wb : c ; d ? c . Wb = b : a . className = b } function x ( a ) { var b ; try { return a ? "true" == a || ( "false" == a ? ! 1 : "null" == a ? null : /^0/ . test ( a ) || isNaN ( b = Number ( a ) ) ? /^[\[\{]/ . test ( a ) ? g . sc ( a ) : a : b ) : a } catch ( c ) { return a } } function I ( a , b ) { b ( a ) ; for ( var c = 0 , d = a . childNodes . length ; c < d ; c ++ ) I ( a . childNodes [ c ] , b ) } var C , s , g , L , F = [ ] , m = F . slice , B = F . filter , J = window . document , ga = { } , W = { } , ea = { "column-count" : 1 ,
columns : 1 , "font-weight" : 1 , "line-height" : 1 , opacity : 1 , "z-index" : 1 , zoom : 1 } , ha = /^\s*<(\w+|!)[^>]*>/ , Yb = /^<(\w+)\s*\/?>(?:<\/\1>|)$/ , Zb = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig , db = /^(?:body|html)$/i , $b = /([A-Z])/g , ac = "val css html text data width height offset" . split ( " " ) , Ca = J . createElement ( "table" ) , eb = J . createElement ( "tr" ) , fb = { tr : J . createElement ( "tbody" ) , tbody : Ca , thead : Ca , tfoot : Ca , td : eb , th : eb , "*" : J . createElement ( "div" ) } , bc = /complete|loaded|interactive/ , cc = /^[\w-]*$/ , Ba =
{ } , Xb = Ba . toString , E = { } , ta , ua , gb = J . createElement ( "div" ) , dc = { tabindex : "tabIndex" , readonly : "readOnly" , "for" : "htmlFor" , "class" : "className" , maxlength : "maxLength" , cellspacing : "cellSpacing" , cellpadding : "cellPadding" , rowspan : "rowSpan" , colspan : "colSpan" , usemap : "useMap" , frameborder : "frameBorder" , contenteditable : "contentEditable" } , fa = Array . isArray || function ( a ) { return a instanceof Array } ; E . matches = function ( a , b ) { if ( ! b || ! a || 1 !== a . nodeType ) return ! 1 ; var c = a . webkitMatchesSelector || a . mozMatchesSelector || a . Bf || a . matchesSelector ;
if ( c ) return c . call ( a , b ) ; var d ; d = a . parentNode ; ( c = ! d ) && ( d = gb ) . appendChild ( a ) ; d = ~ E . oa ( d , b ) . indexOf ( a ) ; c && gb . removeChild ( a ) ; return d } ; ta = function ( a ) { return a . replace ( /-+(.)?/g , function ( a , b ) { return b ? b . toUpperCase ( ) : "" } ) } ; ua = function ( a ) { return B . call ( a , function ( b , c ) { return a . indexOf ( b ) == c } ) } ; E . ub = function ( a , b , c ) { var d , e , B ; Yb . test ( a ) && ( d = g ( J . createElement ( RegExp . $1 ) ) ) ; d || ( a . replace && ( a = a . replace ( Zb , "<$1></$2>" ) ) , b === C && ( b = ha . test ( a ) && RegExp . $1 ) , b in fb || ( b = "*" ) , B = fb [ b ] , B . innerHTML = "" + a , d = g . B ( m . call ( B . childNodes ) ,
function ( ) { B . removeChild ( this ) } ) ) ; f ( c ) && ( e = g ( d ) , g . B ( c , function ( a , b ) { if ( - 1 < ac . indexOf ( a ) ) e [ a ] ( b ) ; else e . D ( a , b ) } ) ) ; return d } ; E . Ka = function ( a , b ) { a = a || [ ] ; a . _ _proto _ _ = g . F ; a . Jb = b || "" ; return a } ; E . kc = function ( a ) { return a instanceof E . Ka } ; E . xb = function ( a , c ) { var d ; if ( a ) if ( "string" == typeof a ) if ( a = a . trim ( ) , "<" == a [ 0 ] && ha . test ( a ) ) d = E . ub ( a , RegExp . $1 , c ) , a = null ; else { if ( c !== C ) return g ( c ) . find ( a ) ; d = E . oa ( J , a ) } else { if ( b ( a ) ) return g ( J ) . ready ( a ) ; if ( E . kc ( a ) ) return a ; if ( fa ( a ) ) d = l ( a ) ; else if ( e ( a ) ) d = [ a ] , a = null ; else if ( ha . test ( a ) ) d =
E . ub ( a . trim ( ) , RegExp . $1 , c ) , a = null ; else { if ( c !== C ) return g ( c ) . find ( a ) ; d = E . oa ( J , a ) } } else return E . Ka ( ) ; return E . Ka ( d , a ) } ; g = function ( a , b ) { return E . xb ( a , b ) } ; g . extend = function ( a ) { var b , c = m . call ( arguments , 1 ) ; "boolean" == typeof a && ( b = a , a = c . shift ( ) ) ; c . forEach ( function ( c ) { H ( a , c , b ) } ) ; return a } ; E . oa = function ( a , b ) { var c , e = "#" == b [ 0 ] , f = ! e && "." == b [ 0 ] , B = e || f ? b . slice ( 1 ) : b , l = cc . test ( B ) ; return d ( a ) && l && e ? ( c = a . getElementById ( B ) ) ? [ c ] : [ ] : 1 !== a . nodeType && 9 !== a . nodeType ? [ ] : m . call ( l && ! e ? f ? a . getElementsByClassName ( B ) : a . getElementsByTagName ( b ) :
a . querySelectorAll ( b ) ) } ; g . contains = J . documentElement . contains ? function ( a , b ) { return a !== b && a . contains ( b ) } : function ( a , b ) { for ( ; b && ( b = b . parentNode ) ; ) if ( b === a ) return ! 0 ; return ! 1 } ; g . type = a ; g . ea = b ; g . gf = c ; g . isArray = fa ; g . Xa = f ; g . ff = function ( a ) { for ( var b in a ) return ! 1 ; return ! 0 } ; g . ic = function ( a , b , c ) { return F . indexOf . call ( b , a , c ) } ; g . Zc = ta ; g . trim = function ( a ) { return null == a ? "" : String . prototype . trim . call ( a ) } ; g . ke = 0 ; g . Yf = { } ; g . jd = { } ; g . map = function ( a , b ) { var c , d = [ ] , e ; if ( h ( a ) ) for ( e = 0 ; e < a . length ; e ++ ) c = b ( a [ e ] , e ) , null != c &&
d . push ( c ) ; else for ( e in a ) c = b ( a [ e ] , e ) , null != c && d . push ( c ) ; return 0 < d . length ? g . F . concat . apply ( [ ] , d ) : d } ; g . B = function ( a , b ) { var c ; if ( h ( a ) ) for ( c = 0 ; c < a . length && ! 1 !== b . call ( a [ c ] , c , a [ c ] ) ; c ++ ) ; else for ( c in a ) if ( ! 1 === b . call ( a [ c ] , c , a [ c ] ) ) break ; return a } ; g . bf = function ( a , b ) { return B . call ( a , b ) } ; window . JSON && ( g . sc = JSON . parse ) ; g . B ( "Boolean Number String Function Array Date RegExp Object Error" . split ( " " ) , function ( a , b ) { Ba [ "[object " + b + "]" ] = b . toLowerCase ( ) } ) ; g . F = { forEach : F . forEach , reduce : F . reduce , push : F . push , sort : F . sort ,
indexOf : F . indexOf , concat : F . concat , map : function ( a ) { return g ( g . map ( this , function ( b , c ) { return a . call ( b , c , b ) } ) ) } , slice : function ( ) { return g ( m . apply ( this , arguments ) ) } , ready : function ( a ) { bc . test ( J . readyState ) && J . body ? a ( g ) : J . addEventListener ( "DOMContentLoaded" , function ( ) { a ( g ) } , ! 1 ) ; return this } , get : function ( a ) { return a === C ? m . call ( this ) : this [ 0 <= a ? a : a + this . length ] } , ag : function ( ) { return this . get ( ) } , size : function ( ) { return this . length } , remove : function ( ) { return this . B ( function ( ) { null != this . parentNode && this . parentNode . removeChild ( this ) } ) } ,
B : function ( a ) { F . every . call ( this , function ( b , c ) { return ! 1 !== a . call ( b , c , b ) } ) ; return this } , filter : function ( a ) { return b ( a ) ? this . pc ( this . pc ( a ) ) : g ( B . call ( this , function ( b ) { return E . matches ( b , a ) } ) ) } , add : function ( a , b ) { return g ( ua ( this . concat ( g ( a , b ) ) ) ) } , ef : function ( a ) { return 0 < this . length && E . matches ( this [ 0 ] , a ) } , pc : function ( a ) { var c = [ ] ; if ( b ( a ) && a . call !== C ) this . B ( function ( b ) { a . call ( this , b ) || c . push ( this ) } ) ; else { var d = "string" == typeof a ? this . filter ( a ) : h ( a ) && b ( a . item ) ? m . call ( a ) : g ( a ) ; this . forEach ( function ( a ) { 0 > d . indexOf ( a ) &&
c . push ( a ) } ) } return g ( c ) } , wb : function ( a ) { return this . filter ( function ( ) { return e ( a ) ? g . contains ( this , a ) : g ( this ) . find ( a ) . size ( ) } ) } , sb : function ( a ) { return - 1 === a ? this . slice ( a ) : this . slice ( a , + a + 1 ) } , first : function ( ) { var a = this [ 0 ] ; return a && ! e ( a ) ? a : g ( a ) } , Ca : function ( ) { var a = this [ this . length - 1 ] ; return a && ! e ( a ) ? a : g ( a ) } , find : function ( a ) { var b = this ; return a ? "object" == typeof a ? g ( a ) . filter ( function ( ) { var a = this ; return F . some . call ( b , function ( b ) { return g . contains ( b , a ) } ) } ) : 1 == this . length ? g ( E . oa ( this [ 0 ] , a ) ) : this . map ( function ( ) { return E . oa ( this ,
a ) } ) : [ ] } , X : function ( a , b ) { var c = this [ 0 ] , e = ! 1 ; for ( "object" == typeof a && ( e = g ( a ) ) ; c && ! ( e ? 0 <= e . indexOf ( c ) : E . matches ( c , a ) ) ; ) c = c !== b && ! d ( c ) && c . parentNode ; return g ( c ) } , Ff : function ( a ) { for ( var b = [ ] , c = this ; 0 < c . length ; ) c = g . map ( c , function ( a ) { if ( ( a = a . parentNode ) && ! d ( a ) && 0 > b . indexOf ( a ) ) return b . push ( a ) , a } ) ; return w ( b , a ) } , parent : function ( a ) { return w ( ua ( this . $a ( "parentNode" ) ) , a ) } , children : function ( a ) { return w ( this . map ( function ( ) { return p ( this ) } ) , a ) } , bd : function ( ) { return this . map ( function ( ) { return m . call ( this . childNodes ) } ) } ,
Uf : function ( a ) { return w ( this . map ( function ( a , b ) { return B . call ( p ( b . parentNode ) , function ( a ) { return a !== b } ) } ) , a ) } , empty : function ( ) { return this . B ( function ( ) { this . innerHTML = "" } ) } , $a : function ( a ) { return g . map ( this , function ( b ) { return b [ a ] } ) } , show : function ( ) { return this . B ( function ( ) { "none" == this . style . display && ( this . style . display = "" ) ; if ( "none" == getComputedStyle ( this , "" ) . getPropertyValue ( "display" ) ) { var a = this . style , b = this . nodeName , c , d ; ga [ b ] || ( c = J . createElement ( b ) , J . body . appendChild ( c ) , d = getComputedStyle ( c ,
"" ) . getPropertyValue ( "display" ) , c . parentNode . removeChild ( c ) , "none" == d && ( d = "block" ) , ga [ b ] = d ) ; a . display = ga [ b ] } } ) } , Vd : function ( a ) { return this . Wc ( a ) . remove ( ) } , qa : function ( a ) { var c = b ( a ) ; if ( this [ 0 ] && ! c ) var d = g ( a ) . get ( 0 ) , e = d . parentNode || 1 < this . length ; return this . B ( function ( b ) { g ( this ) . Ic ( c ? a . call ( this , b ) : e ? d . cloneNode ( ! 0 ) : d ) } ) } , Ic : function ( a ) { if ( this [ 0 ] ) { g ( this [ 0 ] ) . Wc ( a = g ( a ) ) ; for ( var b ; ( b = a . children ( ) ) . length ; ) a = b . first ( ) ; g ( a ) . append ( this ) } return this } , ig : function ( a ) { var c = b ( a ) ; return this . B ( function ( b ) { var d =
g ( this ) , e = d . bd ( ) ; b = c ? a . call ( this , b ) : a ; e . length ? e . Ic ( b ) : d . append ( b ) } ) } , eg : function ( ) { this . parent ( ) . B ( function ( ) { g ( this ) . Vd ( g ( this ) . children ( ) ) } ) ; return this } , Je : function ( ) { return this . map ( function ( ) { return this . cloneNode ( ! 0 ) } ) } , J : function ( ) { return this . P ( "display" , "none" ) } , toggle : function ( a ) { return this . B ( function ( ) { var b = g ( this ) ; ( a === C ? "none" == b . P ( "display" ) : a ) ? b . show ( ) : b . J ( ) } ) } , If : function ( a ) { return g ( this . $a ( "previousElementSibling" ) ) . filter ( a || "*" ) } , next : function ( a ) { return g ( this . $a ( "nextElementSibling" ) ) . filter ( a ||
"*" ) } , C : function ( a ) { return 0 in arguments ? this . B ( function ( b ) { var c = this . innerHTML ; g ( this ) . empty ( ) . append ( y ( this , a , b , c ) ) } ) : 0 in this ? this [ 0 ] . innerHTML : null } , text : function ( a ) { return 0 in arguments ? this . B ( function ( b ) { b = y ( this , a , b , this . textContent ) ; this . textContent = null == b ? "" : "" + b } ) : 0 in this ? this [ 0 ] . textContent : null } , D : function ( a , b ) { var c ; return "string" != typeof a || 1 in arguments ? this . B ( function ( c ) { if ( 1 === this . nodeType ) if ( e ( a ) ) for ( s in a ) { var d = s ; c = a [ s ] ; null == c ? this . removeAttribute ( d ) : this . setAttribute ( d ,
c ) } else d = a , c = y ( this , b , c , this . getAttribute ( a ) ) , null == c ? this . removeAttribute ( d ) : this . setAttribute ( d , c ) } ) : this . length && 1 === this [ 0 ] . nodeType ? ! ( c = this [ 0 ] . getAttribute ( a ) ) && a in this [ 0 ] ? this [ 0 ] [ a ] : c : C } , Pa : function ( a ) { return this . B ( function ( ) { 1 === this . nodeType && this . removeAttribute ( a ) } ) } , O : function ( a , b ) { a = dc [ a ] || a ; return 1 in arguments ? this . B ( function ( c ) { this [ a ] = y ( this , b , c , this [ a ] ) } ) : this [ 0 ] && this [ 0 ] [ a ] } , data : function ( a , b ) { var c = "data-" + a . replace ( $b , "-$1" ) . toLowerCase ( ) , c = 1 in arguments ? this . D ( c , b ) : this . D ( c ) ;
return null !== c ? x ( c ) : C } , A : function ( a ) { return 0 in arguments ? this . B ( function ( b ) { this . value = y ( this , a , b , this . value ) } ) : this [ 0 ] && ( this [ 0 ] . multiple ? g ( this [ 0 ] ) . find ( "option" ) . filter ( function ( ) { return this . selected } ) . $a ( "value" ) : this [ 0 ] . value ) } , offset : function ( a ) { if ( a ) return this . B ( function ( b ) { var c = g ( this ) ; b = y ( this , a , b , c . offset ( ) ) ; var d = c . offsetParent ( ) . offset ( ) ; b = { top : b . top - d . top , left : b . left - d . left } ; "static" == c . P ( "position" ) && ( b . position = "relative" ) ; c . P ( b ) } ) ; if ( ! this . length ) return null ; var b = this [ 0 ] . getBoundingClientRect ( ) ;
return { left : b . left + window . pageXOffset , top : b . top + window . pageYOffset , width : Math . round ( b . width ) , height : Math . round ( b . height ) } } , P : function ( b , c ) { if ( 2 > arguments . length ) { var d = this [ 0 ] , e = getComputedStyle ( d , "" ) ; if ( ! d ) return ; if ( "string" == typeof b ) return d . style [ ta ( b ) ] || e . getPropertyValue ( b ) ; if ( fa ( b ) ) { var f = { } ; g . B ( b , function ( a , b ) { f [ b ] = d . style [ ta ( b ) ] || e . getPropertyValue ( b ) } ) ; return f } } var B = "" ; if ( "string" == a ( b ) ) c || 0 === c ? B = q ( b ) + ":" + v ( b , c ) : this . B ( function ( ) { this . style . removeProperty ( q ( b ) ) } ) ; else for ( s in b ) b [ s ] ||
0 === b [ s ] ? B += q ( s ) + ":" + v ( s , b [ s ] ) + ";" : this . B ( function ( ) { this . style . removeProperty ( q ( s ) ) } ) ; return this . B ( function ( ) { this . style . cssText += ";" + B } ) } , index : function ( a ) { return a ? this . indexOf ( g ( a ) [ 0 ] ) : this . parent ( ) . children ( ) . indexOf ( this [ 0 ] ) } , Ba : function ( a ) { return a ? F . some . call ( this , function ( a ) { return this . test ( u ( a ) ) } , n ( a ) ) : ! 1 } , W : function ( a ) { return a ? this . B ( function ( b ) { if ( "className" in this ) { L = [ ] ; var c = u ( this ) ; y ( this , a , b , c ) . split ( /\s+/g ) . forEach ( function ( a ) { g ( this ) . Ba ( a ) || L . push ( a ) } , this ) ; L . length && u ( this ,
c + ( c ? " " : "" ) + L . join ( " " ) ) } } ) : this } , $ : function ( a ) { return this . B ( function ( b ) { if ( "className" in this ) { if ( a === C ) return u ( this , "" ) ; L = u ( this ) ; y ( this , a , b , L ) . split ( /\s+/g ) . forEach ( function ( a ) { L = L . replace ( n ( a ) , " " ) } ) ; u ( this , L . trim ( ) ) } } ) } , bg : function ( a , b ) { return a ? this . B ( function ( c ) { var d = g ( this ) ; y ( this , a , c , u ( this ) ) . split ( /\s+/g ) . forEach ( function ( a ) { ( b === C ? ! d . Ba ( a ) : b ) ? d . W ( a ) : d . $ ( a ) } ) } ) : this } , scrollTop : function ( a ) { if ( this . length ) { var b = "scrollTop" in this [ 0 ] ; return a === C ? b ? this [ 0 ] . scrollTop : this [ 0 ] . pageYOffset :
this . B ( b ? function ( ) { this . scrollTop = a } : function ( ) { this . scrollTo ( this . scrollX , a ) } ) } } , scrollLeft : function ( a ) { if ( this . length ) { var b = "scrollLeft" in this [ 0 ] ; return a === C ? b ? this [ 0 ] . scrollLeft : this [ 0 ] . pageXOffset : this . B ( b ? function ( ) { this . scrollLeft = a } : function ( ) { this . scrollTo ( a , this . scrollY ) } ) } } , position : function ( ) { if ( this . length ) { var a = this [ 0 ] , b = this . offsetParent ( ) , c = this . offset ( ) , d = db . test ( b [ 0 ] . nodeName ) ? { top : 0 , left : 0 } : b . offset ( ) ; c . top -= parseFloat ( g ( a ) . P ( "margin-top" ) ) || 0 ; c . left -= parseFloat ( g ( a ) . P ( "margin-left" ) ) ||
0 ; d . top += parseFloat ( g ( b [ 0 ] ) . P ( "border-top-width" ) ) || 0 ; d . left += parseFloat ( g ( b [ 0 ] ) . P ( "border-left-width" ) ) || 0 ; return { top : c . top - d . top , left : c . left - d . left } } } , offsetParent : function ( ) { return this . map ( function ( ) { for ( var a = this . offsetParent || J . body ; a && ! db . test ( a . nodeName ) && "static" == g ( a ) . P ( "position" ) ; ) a = a . offsetParent ; return a } ) } } ; g . F . detach = g . F . remove ; [ "width" , "height" ] . forEach ( function ( a ) { var b = a . replace ( /./ , function ( a ) { return a [ 0 ] . toUpperCase ( ) } ) ; g . F [ a ] = function ( e ) { var f , B = this [ 0 ] ; return e === C ? c ( B ) ? B [ "inner" +
b ] : d ( B ) ? B . documentElement [ "scroll" + b ] : ( f = this . offset ( ) ) && f [ a ] : this . B ( function ( b ) { B = g ( this ) ; B . P ( a , y ( this , e , b , B [ a ] ( ) ) ) } ) } } ) ; [ "after" , "prepend" , "before" , "append" ] . forEach ( function ( b , c ) { var d = c % 2 ; g . F [ b ] = function ( ) { var b , e = g . map ( arguments , function ( c ) { b = a ( c ) ; return "object" == b || "array" == b || null == c ? c : E . ub ( c ) } ) , f , B = 1 < this . length ; return 1 > e . length ? this : this . B ( function ( a , b ) { f = d ? b : b . parentNode ; b = 0 == c ? b . nextSibling : 1 == c ? b . firstChild : 2 == c ? b : null ; var l = g . contains ( J . documentElement , f ) ; e . forEach ( function ( a ) { if ( B ) a =
a . cloneNode ( ! 0 ) ; else if ( ! f ) return g ( a ) . remove ( ) ; f . insertBefore ( a , b ) ; l && I ( a , function ( a ) { null == a . nodeName || "SCRIPT" !== a . nodeName . toUpperCase ( ) || a . type && "text/javascript" !== a . type || a . src || window . eval . call ( window , a . innerHTML ) } ) } ) } ) } ; g . F [ d ? b + "To" : "insert" + ( c ? "Before" : "After" ) ] = function ( a ) { g ( a ) [ b ] ( this ) ; return this } } ) ; E . Ka . prototype = g . F ; E . je = ua ; E . fd = x ; g . Ob = E ; return g } ( ) ; window . qe = z ; void 0 === window . Lc && ( window . Lc = z ) ;
( function ( a ) { function b ( b , c , d , e ) { if ( b . global ) return b = c || y , d = a . Ja ( d ) , a ( b ) . ba ( d , e ) , ! d . zb ( ) } function c ( c ) { c . global && 0 === a . Sb ++ && b ( c , null , "ajaxStart" ) } function d ( a , c ) { var d = c . ta ; if ( ! 1 === c . Xc . call ( d , a , c ) || ! 1 === b ( c , d , "ajaxBeforeSend" , [ a , c ] ) ) return ! 1 ; b ( c , d , "ajaxSend" , [ a , c ] ) } function e ( a , c , d , e ) { var f = d . ta ; d . ia . call ( f , a , "success" , c ) ; e && e . Ac ( f , [ a , "success" , c ] ) ; b ( d , f , "ajaxSuccess" , [ c , d , a ] ) ; h ( "success" , c , d ) } function f ( a , c , d , e , f ) { var l = e . ta ; e . error . call ( l , d , c , a ) ; f && f . Mf ( l , [ d , c , a ] ) ; b ( e , l , "ajaxError" , [ d , e , a || c ] ) ;
h ( c , d , e ) } function h ( c , d , e ) { var f = e . ta ; e . complete . call ( f , d , c ) ; b ( e , f , "ajaxComplete" , [ d , e ] ) ; e . global && ! -- a . Sb && b ( e , null , "ajaxStop" ) } function l ( ) { } function q ( a ) { a && ( a = a . split ( ";" , 2 ) [ 0 ] ) ; return a && ( a == L ? "html" : a == g ? "json" : C . test ( a ) ? "script" : s . test ( a ) && "xml" ) || "text" } function n ( a , b ) { return "" == b ? a : ( a + "&" + b ) . replace ( /[&?]{1,2}/ , "?" ) } function v ( b ) { b . Pd && b . data && "string" != a . type ( b . data ) && ( b . data = a . rc ( b . data , b . dg ) ) ; ! b . data || b . type && "GET" != b . type . toUpperCase ( ) || ( b . url = n ( b . url , b . data ) , b . data = void 0 ) } function p ( b ,
c , d , e ) { a . ea ( c ) && ( e = d , d = c , c = void 0 ) ; a . ea ( d ) || ( e = d , d = void 0 ) ; return { url : b , data : c , ia : d , dataType : e } } function H ( b , c , d , e ) { var f , l = a . isArray ( c ) , n = a . Xa ( c ) ; a . B ( c , function ( c , g ) { f = a . type ( g ) ; e && ( c = d ? e : e + "[" + ( n || "object" == f || "array" == f ? c : "" ) + "]" ) ; ! e && l ? b . add ( g . name , g . value ) : "array" == f || ! d && "object" == f ? H ( b , g , d , c ) : b . add ( c , g ) } ) } var w = 0 , y = window . document , u , x , I = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi , C = /^(?:text|application)\/javascript/i , s = /^(?:text|application)\/xml/i , g = "application/json" , L = "text/html" ,
F = /^\s*$/ ; a . Sb = 0 ; a . Pc = function ( b , c ) { function l ( b ) { a ( m ) . Fc ( "error" , b || "abort" ) } if ( ! ( "type" in b ) ) return a . U ( b ) ; var g = b . jf , n = ( a . ea ( g ) ? g ( ) : g ) || "jsonp" + ++ w , m = y . createElement ( "script" ) , h = window [ n ] , u , v = { abort : l } , q ; c && c . ca ( v ) ; a ( m ) . H ( "load error" , function ( d , l ) { clearTimeout ( q ) ; a ( m ) . Fa ( ) . remove ( ) ; "error" != d . type && u ? e ( u [ 0 ] , v , b , c ) : f ( null , l || "error" , v , b , c ) ; window [ n ] = h ; u && a . ea ( h ) && h ( u [ 0 ] ) ; h = u = void 0 } ) ; if ( ! 1 === d ( v , b ) ) return l ( "abort" ) , v ; window [ n ] = function ( ) { u = arguments } ; m . src = b . url . replace ( /\?(.+)=\?/ , "?$1=" + n ) ;
y . head . appendChild ( m ) ; 0 < b . timeout && ( q = setTimeout ( function ( ) { l ( "timeout" ) } , b . timeout ) ) ; return v } ; a . Tb = { type : "GET" , Xc : l , ia : l , error : l , complete : l , ta : null , global : ! 0 , me : function ( ) { return new window . XMLHttpRequest } , Nc : { Rf : "text/javascript, application/javascript, application/x-javascript" , hf : g , xml : "application/xml, text/xml" , C : L , text : "text/plain" } , kb : ! 1 , timeout : 0 , Pd : ! 0 , Xb : ! 0 } ; a . U = function ( b ) { function g ( a , b ) { s [ a . toLowerCase ( ) ] = [ a , b ] } var m = a . extend ( { } , b || { } ) , h = a . ga && a . ga ( ) ; for ( u in a . Tb ) void 0 === m [ u ] && ( m [ u ] =
a . Tb [ u ] ) ; c ( m ) ; m . kb || ( m . kb = /^([\w-]+:)?\/\/([^\/]+)/ . test ( m . url ) && RegExp . $2 != window . location . host ) ; m . url || ( m . url = window . location . toString ( ) ) ; v ( m ) ; var w = m . dataType , y = /\?.+=\?/ . test ( m . url ) ; y && ( w = "jsonp" ) ; ! 1 !== m . Xb && ( b && ! 0 === b . Xb || "script" != w && "jsonp" != w ) || ( m . url = n ( m . url , "_=" + Date . now ( ) ) ) ; if ( "jsonp" == w ) return y || ( m . url = n ( m . url , m . lc ? m . lc + "=?" : ! 1 === m . lc ? "" : "callback=?" ) ) , a . Pc ( m , h ) ; b = m . Nc [ w ] ; var s = { } , I = /^([\w-]+:)\/\// . test ( m . url ) ? RegExp . $1 : window . location . protocol , p = m . me ( ) , y = p . setRequestHeader , C ; h && h . ca ( p ) ;
m . kb || g ( "X-Requested-With" , "XMLHttpRequest" ) ; g ( "Accept" , b || "*/*" ) ; if ( b = m . Gd || b ) - 1 < b . indexOf ( "," ) && ( b = b . split ( "," , 2 ) [ 0 ] ) , p . overrideMimeType && p . overrideMimeType ( b ) ; ( m . contentType || ! 1 !== m . contentType && m . data && "GET" != m . type . toUpperCase ( ) ) && g ( "Content-Type" , m . contentType || "application/x-www-form-urlencoded" ) ; if ( m . headers ) for ( x in m . headers ) g ( x , m . headers [ x ] ) ; p . setRequestHeader = g ; p . onreadystatechange = function ( ) { if ( 4 == p . readyState ) { p . onreadystatechange = l ; clearTimeout ( C ) ; var b , c = ! 1 ; if ( 200 <= p . status && 300 > p . status ||
304 == p . status || 0 == p . status && "file:" == I ) { w = w || q ( m . Gd || p . getResponseHeader ( "content-type" ) ) ; b = p . responseText ; try { "script" == w ? ( 0 , eval ) ( b ) : "xml" == w ? b = p . responseXML : "json" == w && ( b = F . test ( b ) ? null : a . sc ( b ) ) } catch ( d ) { c = d } c ? f ( c , "parsererror" , p , m , h ) : e ( b , p , m , h ) } else f ( p . statusText || null , p . status ? "error" : "abort" , p , m , h ) } } ; if ( ! 1 === d ( p , m ) ) return p . abort ( ) , f ( null , "abort" , p , m , h ) , p ; if ( m . Jc ) for ( x in m . Jc ) p [ x ] = m . Jc [ x ] ; p . open ( m . type , m . url , "async" in m ? m . async : ! 0 , m . Hc , m . Od ) ; for ( x in s ) y . apply ( p , s [ x ] ) ; 0 < m . timeout && ( C = setTimeout ( function ( ) { p . onreadystatechange =
l ; p . abort ( ) ; f ( null , "timeout" , p , m , h ) } , m . timeout ) ) ; p . send ( m . data ? m . data : null ) ; return p } ; a . get = function ( ) { return a . U ( p . apply ( null , arguments ) ) } ; a . R = function ( ) { var b = p . apply ( null , arguments ) ; b . type = "POST" ; return a . U ( b ) } ; a . $e = function ( ) { var b = p . apply ( null , arguments ) ; b . dataType = "json" ; return a . U ( b ) } ; a . F . load = function ( b , c , d ) { if ( ! this . length ) return this ; var e = this , f = b . split ( /\s/ ) , m ; b = p ( b , c , d ) ; var l = b . ia ; 1 < f . length && ( b . url = f [ 0 ] , m = f [ 1 ] ) ; b . ia = function ( b ) { e . C ( m ? a ( "<div>" ) . C ( b . replace ( I , "" ) ) . find ( m ) : b ) ; l && l . apply ( e ,
arguments ) } ; a . U ( b ) ; return this } ; var m = encodeURIComponent ; a . rc = function ( a , b ) { var c = [ ] ; c . add = function ( a , b ) { this . push ( m ( a ) + "=" + m ( b ) ) } ; H ( c , a , b ) ; return c . join ( "&" ) . replace ( /%20/g , "+" ) } } ) ( z ) ; ( function ( a ) { var b = [ ] , c ; a . F . remove = function ( ) { return this . B ( function ( ) { this . parentNode && ( "IMG" === this . tagName && ( b . push ( this ) , this . src = "data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=" , c && clearTimeout ( c ) , c = setTimeout ( function ( ) { b = [ ] } , 6E4 ) ) , this . parentNode . removeChild ( this ) ) } ) } } ) ( z ) ;
( function ( a ) { a . gb = function ( b ) { function c ( a ) { d = b . memory && a ; e = ! 0 ; q = h || 0 ; h = 0 ; l = n . length ; for ( f = ! 0 ; n && q < l ; ++ q ) if ( ! 1 === n [ q ] . apply ( a [ 0 ] , a [ 1 ] ) && b . Xf ) { d = ! 1 ; break } f = ! 1 ; n && ( v ? v . length && c ( v . shift ( ) ) : d ? n . length = 0 : p . disable ( ) ) } b = a . extend ( { } , b ) ; var d , e , f , h , l , q , n = [ ] , v = ! b . qc && [ ] , p = { add : function ( ) { if ( n ) { var e = n . length , w = function ( c ) { a . B ( c , function ( a , c ) { "function" === typeof c ? b . unique && p . wb ( c ) || n . push ( c ) : c && c . length && "string" !== typeof c && w ( c ) } ) } ; w ( arguments ) ; f ? l = n . length : d && ( h = e , c ( d ) ) } return this } , remove : function ( ) { n &&
a . B ( arguments , function ( b , c ) { for ( var d ; - 1 < ( d = a . ic ( c , n , d ) ) ; ) n . splice ( d , 1 ) , f && ( d <= l && -- l , d <= q && -- q ) } ) ; return this } , wb : function ( b ) { return ! ! ( n && ( b ? - 1 < a . ic ( b , n ) : n . length ) ) } , empty : function ( ) { l = n . length = 0 ; return this } , disable : function ( ) { n = v = d = void 0 ; return this } , disabled : function ( ) { return ! n } , Ed : function ( ) { v = void 0 ; d || p . disable ( ) ; return this } , of : function ( ) { return ! v } , ec : function ( a , b ) { ! n || e && ! v || ( b = b || [ ] , b = [ a , b . slice ? b . slice ( ) : b ] , f ? v . push ( b ) : c ( b ) ) ; return this } , We : function ( ) { return p . ec ( this , arguments ) } , Xe : function ( ) { return ! ! e } } ;
return p } } ) ( z ) ;
( function ( a ) { function b ( b , d ) { var p = b [ l ] , p = p && e [ p ] ; if ( void 0 === d ) return p || c ( b ) ; if ( p ) { if ( d in p ) return p [ d ] ; var q = h ( d ) ; if ( q in p ) return p [ q ] } return f . call ( a ( b ) , d ) } function c ( b , c , f ) { var q = b [ l ] || ( b [ l ] = ++ a . ke ) ; b = e [ q ] || ( e [ q ] = d ( b ) ) ; void 0 !== c && ( b [ h ( c ) ] = f ) ; return b } function d ( b ) { var c = { } ; a . B ( b . attributes || q , function ( b , d ) { 0 == d . name . indexOf ( "data-" ) && ( c [ h ( d . name . replace ( "data-" , "" ) ) ] = a . Ob . fd ( d . value ) ) } ) ; return c } var e = { } , f = a . F . data , h = a . Zc , l = a . expando = "Zepto" + + new Date , q = [ ] ; a . F . data = function ( d , e ) { return void 0 ===
e ? a . Xa ( d ) ? this . B ( function ( b , e ) { a . B ( d , function ( a , b ) { c ( e , a , b ) } ) } ) : 0 in this ? b ( this [ 0 ] , d ) : void 0 : this . B ( function ( ) { c ( this , d , e ) } ) } ; a . F . Ud = function ( ) { var b ; "string" == typeof b && ( b = b . split ( /\s+/ ) ) ; this . B ( function ( ) { var c = this [ l ] , d = c && e [ c ] ; d && a . B ( b || d , function ( a ) { delete d [ b ? h ( this ) : a ] } ) } ) } ; [ "remove" , "empty" ] . forEach ( function ( b ) { var c = a . F [ b ] ; a . F [ b ] = function ( ) { var a = this . find ( "*" ) ; "remove" === b && ( a = a . add ( this ) ) ; a . Ud ( ) ; return c . call ( this ) } } ) } ) ( z ) ;
( function ( a ) { function b ( c ) { var e = [ [ "resolve" , "done" , a . gb ( { qc : 1 , memory : 1 } ) , "resolved" ] , [ "reject" , "fail" , a . gb ( { qc : 1 , memory : 1 } ) , "rejected" ] , [ "notify" , "progress" , a . gb ( { memory : 1 } ) ] ] , f = "pending" , h = { state : function ( ) { return f } , xe : function ( ) { l . M ( arguments ) . N ( arguments ) ; return this } , then : function ( ) { var c = arguments ; return b ( function ( b ) { a . B ( e , function ( d , e ) { var f = a . ea ( c [ d ] ) && c [ d ] ; l [ e [ 1 ] ] ( function ( ) { var c = f && f . apply ( this , arguments ) ; if ( c && a . ea ( c . ca ) ) c . ca ( ) . M ( b . resolve ) . N ( b . reject ) . Qd ( b . zf ) ; else { var d = this === h ? b . ca ( ) :
this ; b [ e [ 0 ] + "With" ] ( d , f ? [ c ] : arguments ) } } ) } ) ; c = null } ) . ca ( ) } , ca : function ( b ) { return null != b ? a . extend ( b , h ) : h } } , l = { } ; a . B ( e , function ( a , b ) { var c = b [ 2 ] , d = b [ 3 ] ; h [ b [ 1 ] ] = c . add ; d && c . add ( function ( ) { f = d } , e [ a ^ 1 ] [ 2 ] . disable , e [ 2 ] [ 2 ] . Ed ) ; l [ b [ 0 ] ] = function ( ) { l [ b [ 0 ] + "With" ] ( this === l ? h : this , arguments ) ; return this } ; l [ b [ 0 ] + "With" ] = c . ec } ) ; h . ca ( l ) ; c && c . call ( l , l ) ; return l } var c = Array . prototype . slice ; a . gg = function ( d ) { function e ( a , b , d ) { return function ( e ) { b [ a ] = this ; d [ a ] = 1 < arguments . length ? c . call ( arguments ) : e ; d === v ? n . Af ( b , d ) : -- q ||
n . Ac ( b , d ) } } var f = c . call ( arguments ) , h = f . length , l = 0 , q = 1 !== h || d && a . ea ( d . ca ) ? h : 0 , n = 1 === q ? d : b ( ) , v , p , H ; if ( 1 < h ) for ( v = Array ( h ) , p = Array ( h ) , H = Array ( h ) ; l < h ; ++ l ) f [ l ] && a . ea ( f [ l ] . ca ) ? f [ l ] . ca ( ) . M ( e ( l , H , f ) ) . N ( n . reject ) . Qd ( e ( l , p , v ) ) : -- q ; q || n . Ac ( H , f ) ; return n . ca ( ) } ; a . ga = b } ) ( z ) ;
( function ( a ) { function b ( a ) { var b = this . Jd = { } ; a . match ( /Web[kK]it[\/]{0,1}([\d.]+)/ ) ; var e = a . match ( /(Android);?[\s\/]+([\d.]+)?/ ) ; a . match ( /\(Macintosh\; Intel / ) ; var f = a . match ( /(iPad).*OS\s([\d_]+)/ ) , h = a . match ( /(iPod)(.*OS\s([\d_]+))?/ ) , l = ! f && a . match ( /(iPhone\sOS)\s([\d_]+)/ ) , q = a . match ( /(webOS|hpwOS)[\s\/]([\d.]+)/ ) , n = a . match ( /Windows Phone ([\d.]+)/ ) , v = q && a . match ( /TouchPad/ ) , p = a . match ( /Kindle\/([\d.]+)/ ) , H = a . match ( /Silk\/([\d._]+)/ ) , w = a . match ( /(BlackBerry).*Version\/([\d.]+)/ ) , y = a . match ( /(BB10).*Version\/([\d.]+)/ ) ,
u = a . match ( /(RIM\sTablet\sOS)\s([\d.]+)/ ) , x = a . match ( /PlayBook/ ) , I = a . match ( /Chrome\/([\d.]+)/ ) || a . match ( /CriOS\/([\d.]+)/ ) , C = a . match ( /Firefox\/([\d.]+)/ ) , s = a . match ( /MSIE\s([\d.]+)/ ) || a . match ( /Trident\/[\d](?=[^\?]+).*rv:([0-9.].)/ ) ; ! I && a . match ( /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/ ) || a . match ( /Version\/([\d.]+)([^S](Safari)|[^M]*(Mobile)[^S]*(Safari))/ ) ; e && ( b . Qc = ! 0 , b . version = e [ 2 ] ) ; l && ! h && ( b . yb = b . df = ! 0 , b . version = l [ 2 ] . replace ( /_/g , "." ) ) ; f && ( b . yb = b . cf = ! 0 , b . version = f [ 2 ] . replace ( /_/g , "." ) ) ; h && ( b . yb =
b . yd = ! 0 , b . version = h [ 3 ] ? h [ 3 ] . replace ( /_/g , "." ) : null ) ; n && ( b . hg = ! 0 , b . version = n [ 1 ] ) ; q && ( b . fg = ! 0 , b . version = q [ 2 ] ) ; v && ( b . cg = ! 0 ) ; w && ( b . Ee = ! 0 , b . version = w [ 2 ] ) ; y && ( b . De = ! 0 , b . version = y [ 2 ] ) ; u && ( b . Qf = ! 0 , b . version = u [ 2 ] ) ; p && ( b . lf = ! 0 , b . version = p [ 1 ] ) ; ! H && b . Qc && a . match ( /Kindle Fire/ ) ; b . ce = ! ! ( f || x || e && ! a . match ( /Mobile/ ) || C && a . match ( /Tablet/ ) || s && ! a . match ( /Phone/ ) && a . match ( /Touch/ ) ) ; b . Gf = ! ( b . ce || b . yd || ! ( e || l || q || w || y || I && a . match ( /Android/ ) || I && a . match ( /CriOS\/([\d.]+)/ ) || C && a . match ( /Mobile/ ) || s && a . match ( /Touch/ ) ) ) } b . call ( a ,
navigator . userAgent ) ; a . te = b } ) ( z ) ;
( function ( a ) { function b ( ) { return ! 1 } function c ( ) { return ! 0 } function d ( a ) { return "string" == typeof a } function e ( a ) { return a . Rb || ( a . Rb = H ++ ) } function f ( a , b , c , d ) { b = h ( b ) ; if ( b . Za ) var f = new RegExp ( "(?:^| )" + b . Za . replace ( " " , " .* ?" ) + "(?: |$)" ) ; return ( x [ e ( a ) ] || [ ] ) . filter ( function ( a ) { return a && ( ! b . ka || a . ka == b . ka ) && ( ! b . Za || f . test ( a . Za ) ) && ( ! c || e ( a . F ) === e ( c ) ) && ( ! d || a . Wd == d ) } ) } function h ( a ) { a = ( "" + a ) . split ( "." ) ; return { ka : a [ 0 ] , Za : a . slice ( 1 ) . sort ( ) . join ( " " ) } } function l ( a ) { return g [ a ] || C && s [ a ] || a } function q ( b , c , d , f ,
u , q , n ) { var p = e ( b ) , y = x [ p ] || ( x [ p ] = [ ] ) ; c . split ( /\s/ ) . forEach ( function ( c ) { if ( "ready" == c ) return a ( document ) . ready ( d ) ; var e = h ( c ) ; e . F = d ; e . Wd = u ; e . ka in g && ( d = function ( b ) { var c = b . relatedTarget ; if ( ! c || c !== this && ! a . contains ( this , c ) ) return e . F . apply ( this , arguments ) } ) ; var B = ( e . ac = q ) || d ; e . Ha = function ( a ) { a = v ( a ) ; if ( ! a . Ad ( ) ) { a . data = f ; var c = B . apply ( b , a . hb == w ? [ a ] : [ a ] . concat ( a . hb ) ) ; ! 1 === c && ( a . preventDefault ( ) , a . stopPropagation ( ) ) ; return c } } ; e . xd = y . length ; y . push ( e ) ; "addEventListener" in b && b . addEventListener ( l ( e . ka ) , e . Ha ,
e . ac && ! C && e . ka in s || ! ! n ) } ) } function n ( a , b , c , d , g ) { var h = e ( a ) ; ( b || "" ) . split ( /\s/ ) . forEach ( function ( b ) { f ( a , b , c , d ) . forEach ( function ( b ) { delete x [ h ] [ b . xd ] ; "removeEventListener" in a && a . removeEventListener ( l ( b . ka ) , b . Ha , b . ac && ! C && b . ka in s || ! ! g ) } ) } ) } function v ( d , e ) { if ( e || ! d . zb ) if ( e || ( e = d ) , a . B ( F , function ( a , f ) { var l = e [ a ] ; d [ a ] = function ( ) { this [ f ] = c ; return l && l . apply ( e , arguments ) } ; d [ f ] = b } ) , e . defaultPrevented !== w ? e . defaultPrevented : "returnValue" in e ? ! 1 === e . returnValue : e . sd && e . sd ( ) ) d . zb = c ; return d } function p ( a ) { var b ,
c = { Ef : a } ; for ( b in a ) L . test ( b ) || a [ b ] === w || ( c [ b ] = a [ b ] ) ; return v ( c , a ) } var H = 1 , w , y = Array . prototype . slice , u = a . ea , x = { } , I = { } , C = "onfocusin" in window , s = { focus : "focusin" , blur : "focusout" } , g = { tf : "mouseover" , uf : "mouseout" } ; I . click = I . sf = I . wf = I . vf = "MouseEvents" ; a . event = { add : q , remove : n } ; a . Ha = function ( b , c ) { var f = 2 in arguments && y . call ( arguments , 2 ) ; if ( u ( b ) ) { var l = function ( ) { return b . apply ( c , f ? f . concat ( y . call ( arguments ) ) : arguments ) } ; l . Rb = e ( b ) ; return l } if ( d ( c ) ) return f ? ( f . unshift ( b [ c ] , b ) , a . Ha . apply ( null , f ) ) : a . Ha ( b [ c ] ,
b ) ; throw new TypeError ( "expected function" ) ; } ; a . F . bind = function ( a , b , c ) { return this . H ( a , b , c ) } ; a . F . Gc = function ( a , b ) { this . Fa ( a , b ) } ; a . F . Cf = function ( a , b , c , d ) { return this . H ( a , b , c , d , 1 ) } ; var L = /^([A-Z]|returnValue$|layer[XY]$)/ , F = { preventDefault : "isDefaultPrevented" , stopImmediatePropagation : "isImmediatePropagationStopped" , stopPropagation : "isPropagationStopped" } ; a . F . ed = function ( a , b , c ) { this . H ( b , a , c ) } ; a . F . ie = function ( a , b , c ) { this . Fa ( b , a , c ) } ; a . F . L = function ( b , c ) { a ( document . body ) . ed ( this . Jb , b , c ) } ; a . F . Ne = function ( b ,
c ) { a ( document . body ) . ie ( this . Jb , b , c ) ; return this } ; a . F . H = function ( c , e , f , l , g ) { var h , s , I = this ; if ( c && ! d ( c ) ) return a . B ( c , function ( a , b ) { I . H ( a , e , f , b , g ) } ) , I ; d ( e ) || u ( l ) || ! 1 === l || ( l = f , f = e , e = w ) ; if ( u ( f ) || ! 1 === f ) l = f , f = w ; ! 1 === l && ( l = b ) ; return I . B ( function ( b , d ) { g && ( h = function ( a ) { n ( d , a . type , l ) ; return l . apply ( this , arguments ) } ) ; e && ( s = function ( b ) { var c , f = a ( b . target ) . X ( e , d ) . get ( 0 ) ; if ( f && f !== d ) return c = a . extend ( p ( b ) , { currentTarget : f , mf : d } ) , ( h || l ) . apply ( f , [ c ] . concat ( y . call ( arguments , 1 ) ) ) } ) ; q ( d , c , l , f , e , s || h ) } ) } ; a . F . Fa = function ( c ,
e , f ) { var l = this ; if ( c && ! d ( c ) ) return a . B ( c , function ( a , b ) { l . Fa ( a , e , b ) } ) , l ; d ( e ) || u ( f ) || ! 1 === f || ( f = e , e = w ) ; ! 1 === f && ( f = b ) ; return l . B ( function ( ) { n ( this , c , f , e ) } ) } ; a . F . ba = function ( b , c ) { b = d ( b ) || a . Xa ( b ) ? a . Ja ( b ) : v ( b ) ; b . hb = c ; return this . B ( function ( ) { "dispatchEvent" in this ? this . dispatchEvent ( b ) : a ( this ) . Fc ( b , c ) } ) } ; a . F . Fc = function ( b , c ) { var e ; this . B ( function ( l , g ) { e = p ( d ( b ) ? a . Ja ( b ) : b ) ; e . hb = c ; e . target = g ; a . B ( f ( g , b . type || b ) , function ( a , b ) { b . Ha ( e ) ; if ( e . Ad ( ) ) return ! 1 } ) } ) } ; "focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error" . split ( " " ) . forEach ( function ( b ) { a . F [ b ] =
function ( a ) { return a ? this . bind ( b , a ) : this . ba ( b ) } } ) ; [ "focus" , "blur" ] . forEach ( function ( b ) { a . F [ b ] = function ( a ) { a ? this . bind ( b , a ) : this . B ( function ( ) { try { this [ b ] ( ) } catch ( a ) { } } ) ; return this } } ) ; a . Ja = function ( a ) { var b ; d ( a ) || ( b = a , a = b . type ) ; var c = document . createEvent ( I [ a ] || "Events" ) , e = ! 0 ; if ( b ) for ( var f in b ) "bubbles" == f ? e = ! ! b [ f ] : c [ f ] = b [ f ] ; c . initEvent ( a , e , ! 0 ) ; return v ( c ) } } ) ( z ) ;
( function ( a ) { a . F . Bc = function ( ) { var b , c , d = [ ] ; a ( [ ] . slice . call ( this . get ( 0 ) . elements ) ) . B ( function ( ) { b = a ( this ) ; c = b . D ( "type" ) ; "fieldset" != this . nodeName . toLowerCase ( ) && ! this . disabled && "submit" != c && "reset" != c && "button" != c && ( "radio" != c && "checkbox" != c || this . checked ) && d . push ( { name : b . D ( "name" ) , value : b . A ( ) } ) } ) ; return d } ; a . F . Qa = function ( ) { var a = [ ] ; this . Bc ( ) . forEach ( function ( c ) { a . push ( encodeURIComponent ( c . name ) + "=" + encodeURIComponent ( c . value ) ) } ) ; return a . join ( "&" ) } ; a . F . submit = function ( b ) { b ? this . bind ( "submit" , b ) :
this . length && ( b = a . Ja ( "submit" ) , this . sb ( 0 ) . ba ( b ) , b . zb ( ) || this . get ( 0 ) . submit ( ) ) ; return this } } ) ( z ) ;
( function ( a , b ) { function c ( a ) { return e ? e + a : a . toLowerCase ( ) } var d = "" , e , f = window . document . createElement ( "div" ) , h = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i , l , q , n , v , p , H , w , y , u , x = { } ; a . B ( { pe : "webkit" , ne : "" , oe : "o" } , function ( a , c ) { if ( f . style [ a + "TransitionProperty" ] !== b ) return d = "-" + a . toLowerCase ( ) + "-" , e = c , ! 1 } ) ; l = d + "transform" ; x [ q = d + "transition-property" ] = x [ n = d + "transition-duration" ] = x [ p = d + "transition-delay" ] = x [ v = d + "transition-timing-function" ] = x [ H = d + "animation-name" ] = x [ w =
d + "animation-duration" ] = x [ u = d + "animation-delay" ] = x [ y = d + "animation-timing-function" ] = "" ; a . va = { Fa : e === b && f . style . transitionProperty === b , Lb : { Qb : 400 , Ve : 200 , Vf : 600 } , cd : d , he : c ( "TransitionEnd" ) , Tc : c ( "AnimationEnd" ) } ; a . F . Sc = function ( c , d , e ) { var f , l = null ; a . ea ( d ) && ( e = d , d = l = b ) ; a . ea ( l ) && ( e = l , l = b ) ; a . Xa ( d ) && ( l = d . Oe , e = d . complete , f = d . Me , d = d . duration ) ; d && ( d = ( "number" == typeof d ? d : a . va . Lb [ d ] || a . va . Lb . Qb ) / 1E3 ) ; f && ( f = parseFloat ( f ) / 1E3 ) ; return this . Rc ( c , d , l , e , f ) } ; a . F . Rc = function ( c , d , e , f , L ) { var F , m = { } , B , J = "" , ga = this , W , ea =
a . va . he , ha = ! 1 ; d === b && ( d = a . va . Lb . Qb / 1E3 ) ; L === b && ( L = 0 ) ; a . va . Fa && ( d = 0 ) ; if ( "string" == typeof c ) m [ H ] = c , m [ w ] = d + "s" , m [ u ] = L + "s" , m [ y ] = e || "linear" , ea = a . va . Tc ; else { B = [ ] ; for ( F in c ) h . test ( F ) ? J += F + "(" + c [ F ] + ") " : ( m [ F ] = c [ F ] , B . push ( F . replace ( /([a-z])([A-Z])/ , "$1-$2" ) . toLowerCase ( ) ) ) ; J && ( m [ l ] = J , B . push ( l ) ) ; 0 < d && "object" === typeof c && ( m [ q ] = B . join ( ", " ) , m [ n ] = d + "s" , m [ p ] = L + "s" , m [ v ] = e || "linear" ) } W = function ( b ) { if ( "undefined" !== typeof b ) { if ( b . target !== b . currentTarget ) return ; a ( b . target ) . Gc ( ea , W ) } else a ( this ) . Gc ( ea , W ) ; ha = ! 0 ;
a ( this ) . P ( x ) ; f && f . call ( this ) } ; 0 < d && ( this . bind ( ea , W ) , setTimeout ( function ( ) { ha || W . call ( ga ) } , 1E3 * d + 25 ) ) ; this . size ( ) && this . get ( 0 ) . clientLeft ; this . P ( m ) ; 0 >= d && setTimeout ( function ( ) { ga . B ( function ( ) { W . call ( this ) } ) } , 0 ) ; return this } ; f = null } ) ( z ) ;
( function ( a , b ) { function c ( c , d , e , f , h ) { "function" != typeof d || h || ( h = d , d = b ) ; e = { opacity : e } ; f && ( e . scale = f , c . P ( a . va . cd + "transform-origin" , "0 0" ) ) ; return c . Sc ( e , d , h ) } function d ( b , d , e , h ) { return c ( b , d , 0 , e , function ( ) { f . call ( a ( this ) ) ; h && h . call ( this ) } ) } var e = a . F . show , f = a . F . J , h = a . F . toggle ; a . F . show = function ( a , d ) { e . call ( this ) ; a === b ? a = 0 : this . P ( "opacity" , 0 ) ; return c ( this , a , 1 , "1,1" , d ) } ; a . F . J = function ( a , c ) { return a === b ? f . call ( this ) : d ( this , a , "0,0" , c ) } ; a . F . toggle = function ( c , d ) { return c === b || "boolean" == typeof c ? h . call ( this ,
c ) : this . B ( function ( ) { var b = a ( this ) ; b [ "none" == b . P ( "display" ) ? "show" : "hide" ] ( c , d ) } ) } ; a . F . kd = function ( a , b , d ) { return c ( this , a , b , null , d ) } ; a . F . Se = function ( a , b ) { var c = this . P ( "opacity" ) ; 0 < c ? this . P ( "opacity" , 0 ) : c = 1 ; return e . call ( this ) . kd ( a , c , b ) } ; a . F . Te = function ( a , b ) { return d ( this , a , null , b ) } ; a . F . Ue = function ( b , c ) { return this . B ( function ( ) { var d = a ( this ) ; d [ 0 == d . P ( "opacity" ) || "none" == d . P ( "display" ) ? "fadeIn" : "fadeOut" ] ( b , c ) } ) } } ) ( z ) ;
( function ( a ) { if ( a . Jd . yb ) { var b = { } ; a ( document ) . bind ( "gesturestart" , function ( a ) { var d = Date . now ( ) , e = a . target ; b . target = "tagName" in e ? e : e . parentNode ; b . ob = a . scale ; b . Ca = d } ) . bind ( "gesturechange" , function ( a ) { b . Va = a . scale } ) . bind ( "gestureend" , function ( ) { 0 < b . Va ? ( 0 != Math . abs ( b . ob - b . Va ) && a ( b . target ) . ba ( "pinch" ) && a ( b . target ) . ba ( "pinch" + ( 0 < b . ob - b . Va ? "In" : "Out" ) ) , b . ob = b . Va = b . Ca = 0 ) : "last" in b && ( b = { } ) } ) ; [ "pinch" , "pinchIn" , "pinchOut" ] . forEach ( function ( b ) { a . F [ b ] = function ( a ) { return this . bind ( b , a ) } } ) } } ) ( z ) ;
( function ( a ) { "__proto__" in { } || a . extend ( a . Ob , { Ka : function ( b , c ) { b = b || [ ] ; a . extend ( b , a . F ) ; b . Jb = c || "" ; b . se = ! 0 ; return b } , kc : function ( b ) { return "array" === a . type ( b ) && "__Z" in b } } ) ; try { getComputedStyle ( void 0 ) } catch ( b ) { var c = getComputedStyle ; window . getComputedStyle = function ( a ) { try { return c ( a ) } catch ( b ) { return null } } } } ) ( z ) ;
( function ( a ) { String . prototype . trim === a && ( String . prototype . trim = function ( ) { return this . replace ( /^\s+|\s+$/g , "" ) } ) ; Array . prototype . reduce === a && ( Array . prototype . reduce = function ( b ) { if ( void 0 === this || null === this ) throw new TypeError ; var c = Object ( this ) , d = c . length >>> 0 , e = 0 , f ; if ( "function" != typeof b ) throw new TypeError ; if ( 0 == d && 1 == arguments . length ) throw new TypeError ; if ( 2 <= arguments . length ) f = arguments [ 1 ] ; else { do { if ( e in c ) { f = c [ e ++ ] ; break } if ( ++ e >= d ) throw new TypeError ; } while ( 1 ) } for ( ; e < d ; ) e in c && ( f = b . call ( a ,
f , c [ e ] , e , c ) ) , e ++ ; return f } ) } ) ( ) ;
( function ( a ) { function b ( b ) { b = a ( b ) ; return ! ( ! b . width ( ) && ! b . height ( ) ) && "none" !== b . P ( "display" ) } function c ( a , b ) { a = a . replace ( /=#\]/g , '="#"]' ) ; var c , d , e = l . exec ( a ) ; e && e [ 2 ] in h && ( c = h [ e [ 2 ] ] , d = e [ 3 ] , a = e [ 1 ] , d && ( e = Number ( d ) , d = isNaN ( e ) ? d . replace ( /^["']|["']$/g , "" ) : e ) ) ; return b ( a , c , d ) } var d = a . Ob , e = d . oa , f = d . matches , h = a . jd [ ":" ] = { visible : function ( ) { if ( b ( this ) ) return this } , hidden : function ( ) { if ( ! b ( this ) ) return this } , selected : function ( ) { if ( this . selected ) return this } , checked : function ( ) { if ( this . checked ) return this } , parent : function ( ) { return this . parentNode } ,
first : function ( a ) { if ( 0 === a ) return this } , Ca : function ( a , b ) { if ( a === b . length - 1 ) return this } , sb : function ( a , b , c ) { if ( a === c ) return this } , contains : function ( b , c , d ) { if ( - 1 < a ( this ) . text ( ) . indexOf ( d ) ) return this } , wb : function ( a , b , c ) { if ( d . oa ( this , c ) . length ) return this } } , l = /(.*):(\w+)(?:\(([^)]+)\))?$\s*/ , q = /^\s*>/ , n = "Zepto" + + new Date ; d . oa = function ( b , f ) { return c ( f , function ( c , l , h ) { try { var u ; ! c && l ? c = "*" : q . test ( c ) && ( u = a ( b ) . W ( n ) , c = "." + n + " " + c ) ; var x = e ( b , c ) } catch ( I ) { throw console . error ( "error performing selector: %o" ,
f ) , I ; } finally { u && u . $ ( n ) } return l ? d . je ( a . map ( x , function ( a , b ) { return l . call ( a , b , x , h ) } ) ) : x } ) } ; d . matches = function ( a , b ) { return c ( b , function ( b , c , d ) { return ( ! b || f ( a , b ) ) && ( ! c || c . call ( a , null , d ) === a ) } ) } } ) ( z ) ; ( function ( a ) { a . F . end = function ( ) { return this . uc || a ( ) } ; a . F . ze = function ( ) { return this . add ( this . uc || a ( ) ) } ; "filter add not eq first last find closest parents parent children siblings" . split ( " " ) . forEach ( function ( b ) { var c = a . F [ b ] ; a . F [ b ] = function ( ) { var a = c . apply ( this , arguments ) ; a . uc = this ; return a } } ) } ) ( z ) ;
( function ( a ) { function b ( ) { n = null ; f . Ca && ( f . ha . ba ( "longTap" ) , f = { } ) } function c ( ) { h && clearTimeout ( h ) ; l && clearTimeout ( l ) ; q && clearTimeout ( q ) ; n && clearTimeout ( n ) ; h = l = q = n = null ; f = { } } function d ( a ) { return ( "touch" == a . pointerType || a . pointerType == a . MSPOINTER _TYPE _TOUCH ) && a . isPrimary } function e ( a , b ) { return a . type == "pointer" + b || a . type . toLowerCase ( ) == "mspointer" + b } var f = { } , h , l , q , n , v ; a ( document ) . ready ( function ( ) { var p , H , w = 0 , y = 0 , u , x ; "MSGesture" in window && ( v = new MSGesture , v . target = document . body ) ; a ( document ) . bind ( "MSGestureEnd" ,
function ( a ) { if ( a = 1 < a . velocityX ? "Right" : - 1 > a . velocityX ? "Left" : 1 < a . velocityY ? "Down" : - 1 > a . velocityY ? "Up" : null ) f . ha . ba ( "swipe" ) , f . ha . ba ( "swipe" + a ) } ) . H ( "touchstart MSPointerDown pointerdown" , function ( c ) { if ( ! ( x = e ( c , "down" ) ) || d ( c ) ) u = x ? c : c . touches [ 0 ] , c . touches && 1 === c . touches . length && f . Ia && ( f . Ia = void 0 , f . Sa = void 0 ) , p = Date . now ( ) , H = p - ( f . Ca || p ) , f . ha = a ( "tagName" in u . target ? u . target : u . target . parentNode ) , h && clearTimeout ( h ) , f . Mb = u . pageX , f . Nb = u . pageY , 0 < H && 250 >= H && ( f . zd = ! 0 ) , f . Ca = p , n = setTimeout ( b , 750 ) , v && x && v . addPointer ( c . pointerId ) } ) . H ( "touchmove MSPointerMove pointermove" ,
function ( a ) { if ( ! ( x = e ( a , "move" ) ) || d ( a ) ) u = x ? a : a . touches [ 0 ] , n && clearTimeout ( n ) , n = null , f . Ia = u . pageX , f . Sa = u . pageY , w += Math . abs ( f . Mb - f . Ia ) , y += Math . abs ( f . Nb - f . Sa ) } ) . H ( "touchend MSPointerUp pointerup" , function ( b ) { if ( ! ( x = e ( b , "up" ) ) || d ( b ) ) n && clearTimeout ( n ) , n = null , f . Ia && 30 < Math . abs ( f . Mb - f . Ia ) || f . Sa && 30 < Math . abs ( f . Nb - f . Sa ) ? q = setTimeout ( function ( ) { f . ha . ba ( "swipe" ) ; var a = f . Mb , b = f . Ia , c = f . Nb , d = f . Sa ; f . ha . ba ( "swipe" + ( Math . abs ( a - b ) >= Math . abs ( c - d ) ? 0 < a - b ? "Left" : "Right" : 0 < c - d ? "Up" : "Down" ) ) ; f = { } } , 0 ) : "last" in f && ( 30 > w &&
30 > y ? l = setTimeout ( function ( ) { var b = a . Ja ( "tap" ) ; b . He = c ; f . ha . ba ( b ) ; f . zd ? ( f . ha && f . ha . ba ( "doubleTap" ) , f = { } ) : h = setTimeout ( function ( ) { h = null ; f . ha && f . ha . ba ( "singleTap" ) ; f = { } } , 250 ) } , 0 ) : f = { } ) , w = y = 0 } ) . H ( "touchcancel MSPointerCancel pointercancel" , c ) ; a ( window ) . H ( "scroll" , c ) } ) ; "swipe swipeLeft swipeRight swipeUp swipeDown doubleTap tap singleTap longTap" . split ( " " ) . forEach ( function ( b ) { a . F [ b ] = function ( a ) { return this . H ( b , a ) } } ) } ) ( z ) ;
var ja = null , ka = window , la = document , ma = "undefined" != typeof window . Ua || "undefined" != typeof liebaoExtentions && liebaoExtentions . Cd && liebaoExtentions . Cd ( ) , na = "undefined" != typeof liebaoExtentions ; la . addEventListener ( "mobileSupportInitialized" , function ( ) { } ) ;
function oa ( ) { pa ( ) ; A . od ( ) ; $ ( "#randcodeimg" ) . L ( "click" , function ( ) { A . ab ( ) ; return ! 1 } ) ; $ ( ".query_box .query_bigcheck" ) . L ( "click" , function ( ) { $ ( ".query_bigcheck" , $ ( this ) . parent ( ".query_box" ) ) . $ ( "query_bigcheck_checked" ) ; $ ( "input[type=radio]" , this ) . D ( "checked" , "checked" ) ; $ ( this ) . W ( "query_bigcheck_checked" ) } ) ; $ ( '[data-fn="back"]' ) . H ( "click" , function ( ) { window . history . back ( ) } ) ; $ ( ".query_box [type=checkbox]" ) . L ( "change" , function ( ) { if ( 0 != $ ( this ) . X ( ".query_box" ) . find ( '[type=checkbox][value="all"]' ) . length ) { var a =
$ ( this ) . X ( ".query_box" ) . find ( "[type=checkbox]" ) , b = $ ( this ) . X ( ".query_box" ) . find ( '[type=checkbox][value="all"]' ) ; if ( "all" == $ ( this ) . A ( ) ) $ ( this ) . O ( "checked" ) ? a . O ( "checked" , ! 0 ) : a . O ( "checked" , ! 1 ) ; else { var c = $ ( this ) . X ( ".query_box" ) . find ( "[type=checkbox]:checked" ) . length ; b . O ( "checked" ) && c -- ; c == a . length - 1 ? b . O ( "checked" , ! 0 ) : b . O ( "checked" , ! 1 ) } } } ) } var D = "" , qa = ! 1 , ra = 0 ;
function sa ( a , b , c ) { ra ++ ; A . Ab ( function ( ) { qa = ! 0 ; sessionStorage . getItem ( "user" ) ? D = sessionStorage . getItem ( "user" ) : localStorage . getItem ( "useraccount" ) && ( D = JSON . parse ( localStorage . getItem ( "useraccount" ) ) . username ) ; pa ( ) ; $ ( "body" ) . $ ( "nologin" ) ; $ ( "#login_tip" ) . J ( ) ; "function" == typeof a && a ( ) } , function ( ) { sessionStorage . clear ( ) ; qa = ! 1 ; $ ( "body" ) . W ( "nologin" ) ; $ ( "#login_tip" ) . show ( ) ; "function" == typeof b && b ( ) } , function ( ) { qa = ! 1 ; $ ( "body" ) . W ( "nologin" ) ; $ ( "#login_tip" ) . show ( ) ; 2 > ra ? sa ( a , b , c ) : c ( ) } ) } var va = [ ] , wa = { } ;
function pa ( ) { va = xa ( ) ; for ( var a = 0 , b = va . length ; a < b ; a ++ ) wa [ va [ a ] [ 0 ] ] = ya ( va [ a ] [ 1 ] ) } function G ( a , b ) { if ( a ) { var c = $ ( '<div class="public_toast">' + a + "</div>" ) ; b = b || 1500 ; $ ( "body" ) . append ( c ) ; setTimeout ( function ( ) { c . W ( "public_toast_show" ) } , 10 ) ; setTimeout ( function ( ) { c . $ ( "public_toast_show" ) ; c . H ( "webkitTransitionEnd" , function ( ) { c . remove ( ) } ) } , b ) } }
function za ( a , b ) { var c = "" , d = la . createElement ( "div" ) , e = "" ; if ( "object" == typeof b ) for ( var f in b ) e += '<a href="javascript:;" data-val="' + f + '">' + b [ f ] + "</a>" ; d . className = "public_layer" ; c += '<div class="public_pop"><p>' + a + "</p>" + ( "" == e ? '<div class="public_btns"><a href="javascript:;" data-type="sure">\u786e\u5b9a</a></div>' : '<div class="public_btns">' + e + "</div>" ) + "</div>" ; d . innerHTML = c ; document . getElementsByTagName ( "body" ) [ 0 ] . appendChild ( d ) ; setTimeout ( function ( ) { $ ( ".public_pop" , d ) . W ( "public_pop_show" ) } , 0 ) ;
$ ( d ) . H ( "touchmove" , function ( a ) { a . preventDefault ( ) ; return ! 1 } ) ; return $ ( d ) } function K ( a , b ) { var c = za ( a , { sure : "\u786e\u5b9a" } ) ; $ ( ".public_btns a" , c ) . H ( "click" , function ( ) { c . remove ( ) ; "function" == typeof b && b ( ) } ) } function Aa ( a ) { a = $ ( '<div class="loadingBox"><div class="loading"><i class="icon_loading"></i><span>' + ( a ? " " + a : "" ) + "</span></div></div>" ) ; $ ( "body" ) . append ( a ) ; return a } function M ( a ) { a ? a . remove ( ) : $ ( ".loadingBox" ) . remove ( ) }
function Da ( a , b , c ) { var d = za ( a , { cancel : "\u53d6\u6d88" , sure : c || "\u786e\u5b9a" } ) ; $ ( ".public_btns a" , d ) . H ( "click" , function ( ) { var a = $ ( this ) . D ( "data-val" ) ; d . remove ( ) ; "function" == typeof b && "sure" == a && b ( ) } ) } function ya ( a ) { a = a . replace ( /^\?+/ , "" ) . replace ( /&/ , "&" ) ; a = a . split ( "&" ) ; for ( var b = a . length , c = { } ; b -- ; ) if ( item = a [ b ] . split ( "=" ) , item [ 0 ] ) { var d = item [ 1 ] || "" ; try { d = decodeURIComponent ( d ) } catch ( e ) { d = unescape ( d ) } c [ decodeURIComponent ( item [ 0 ] ) ] = d } return c }
function xa ( ) { var a = localStorage . getItem ( D + "hisQuery" ) ; return a ? JSON . parse ( a ) : [ ] } function Ea ( a , b ) { var c = xa ( ) , d ; d = - 1 ; for ( var e = 0 , f = c . length ; e < f ; e ++ ) if ( c [ e ] [ 0 ] == a ) { d = e ; break } - 1 != d && c . splice ( d , 1 ) ; c . unshift ( [ a , b ] ) ; 6 < c . length && 6 == c . length ; localStorage . setItem ( D + "hisQuery" , JSON . stringify ( c ) ) } function N ( a ) { $ ( ".fixed_box" ) . $ ( "fixed_box_show" ) ; $ ( "#" + a ) . W ( "fixed_box_show" ) ; $ ( "#wrap" ) . J ( ) } function O ( ) { $ ( ".fixed_box" ) . $ ( "fixed_box_show" ) ; $ ( "#wrap" ) . show ( ) } var Fa = "yyyy\u5e74M\u6708d\u65e5" ;
function Ga ( a ) { 0 != $ ( "#calendar" ) . length && ( a = a || ( new Date ) . G , $ ( "#start_date" ) . C ( a . format ( Fa ) + " " + a . aa ( 3 ) ) , $ ( "#start_date_val" ) . A ( a . format ( "yyyy-MM-dd" ) ) , P || ( P = new Ha ( { qa : $ ( "#calendar" ) , I : a , La : Ia } ) ) , $ ( "#check_left,#check_right" ) . H ( "click" , function ( ) { var a ; if ( "check_left" == $ ( this ) . D ( "id" ) ) { a = P ; var c = new Date ( a . I . getTime ( ) - 864E5 ) ; c . G . getTime ( ) < a . ra . G . getTime ( ) || ( a . I = c , a . V = new Date ( a . I . getFullYear ( ) , a . I . getMonth ( ) , 1 , 0 , 0 , 0 ) , a . Z = a . V . getMonth ( ) , Ja ( a ) ) ; a = a . I } else a = P , c = new Date ( a . I . getTime ( ) + 864E5 ) , c . G . getTime ( ) >
a . fa . G . getTime ( ) || ( a . I = c , a . V = new Date ( a . I . getFullYear ( ) , a . I . getMonth ( ) , 1 , 0 , 0 , 0 ) , a . Z = a . V . getMonth ( ) , Ja ( a ) ) , a = a . I ; a && ( $ ( "#start_date" ) . C ( a . format ( Fa ) + " " + a . aa ( 3 ) ) , $ ( "#start_date_val" ) . A ( a . format ( "yyyy-MM-dd" ) ) ) } ) , $ ( "#start_date" ) . H ( "click" , function ( ) { N ( "date_box" ) } ) , $ ( "[name=type]" ) . H ( "change" , function ( ) { var a = $ ( "[name=type]:checked" ) . A ( ) ; 1 == a ? ( P . fa = Q ( P . ra , 19 ) , P . I . G . getTime ( ) > P . fa . G . getTime ( ) && ( P . I = P . fa , P . La ( P . I ) ) , Ja ( P ) ) : 2 == a && ( P . fa = Q ( P . ra , 29 ) , Ja ( P ) ) } ) ) }
function Ia ( a ) { var b = a . G . getTime ( ) ; b >= P . Ea . G . getTime ( ) && b <= P . fa . G . getTime ( ) ? ( $ ( "#date_tip" ) . J ( ) , O ( ) , $ ( "#start_date" ) . C ( P . I . format ( Fa ) + " " + P . I . aa ( 3 ) ) , $ ( "#start_date_val" ) . A ( P . I . format ( "yyyy-MM-dd" ) ) ) : ( b = $ ( "a.cur" , P . qa ) . offset ( ) , $ ( "#date_tip" ) . P ( { left : b . left , top : b . top , display : "block" } ) . C ( "<p>" + a . format ( "M\u6708d\u65e5" ) + '\u4e0d\u5728\u9884\u552e\u671f</p><a href="remind.html?data=' + encodeURIComponent ( a . format ( "M\u6708d\u65e5" ) ) + '" class="btn btn_m btn_success">\u9884\u7ea6\u63d0\u9192</a>' ) , 0.75 < b . left /
window . innerWidth ? $ ( "#date_tip" ) . D ( "class" , "tip_small tip_right" ) : 0.15 > b . left / window . innerWidth ? $ ( "#date_tip" ) . D ( "class" , "tip_small tip_left" ) : $ ( "#date_tip" ) . D ( "class" , "tip_small" ) ) } var P ;
function Ka ( a ) { switch ( a ) { case 9 : case "9" : return "\u5546\u52a1\u5ea7" ; case "P" : return "\u7279\u7b49\u5ea7" ; case "M" : return "\u4e00\u7b49\u5ea7" ; case "O" : return "\u4e8c\u7b49\u5ea7" ; case 6 : case "6" : return "\u9ad8\u7ea7\u8f6f\u5ea7" ; case 4 : case "4" : return "\u8f6f\u5367" ; case 3 : case "3" : return "\u786c\u5367" ; case 2 : case "2" : return "\u8f6f\u5ea7" ; case 1 : case "1" : return "\u786c\u5ea7" ; case 0 : case "0" : return "\u65e0\u5ea7" ; default : return "" } } var La = "OM934612P0" . split ( "" ) ;
function Ma ( a ) { for ( var b = [ ] , c = 0 , d = La . length ; c < d ; c ++ ) "undefined" != typeof a [ La [ c ] ] && b . push ( a [ La [ c ] ] ) ; return b } function Na ( a , b ) { for ( var c = { } , d = 0 ; d < a . length ; d ++ ) c [ b ( a [ d ] ) ] = a [ d ] ; return c } function Oa ( a ) { return "C" === a . passenger _id _type _code || "G" === a . passenger _id _type _code || "B" === a . passenger _id _type _code ? ! 0 : "2" === a . passenger _id _type _code ? ! 1 : "93" === a . total _times || "95" === a . total _times || "97" === a . total _times || "99" === a . total _times }
function Pa ( a ) { var b = [ ] ; a = a . Hb ; b . push ( { id : 1 , name : "\u6210\u4eba\u7968" } ) ; b . push ( { id : 2 , name : "\u513f\u7ae5\u7968" } ) ; "3" === a && b . push ( { id : 3 , name : "\u5b66\u751f\u7968" } ) ; "4" === a && b . push ( { id : 4 , name : "\u6b8b\u519b\u7968" } ) ; return b }
var R = { Vb : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" . split ( "" ) } , R = $ . extend ( { Uc : ! function ( ) { var a = { } ; return $ . B ( R . Vb , function ( b , c ) { a [ c ] = b } ) , a } ( ) , qb : function ( a ) { for ( var b = [ ] , c = R . Vb , d = a . length , e , f = 0 ; f < d ; ) e = a [ f ] << 16 | a [ f + 1 ] << 8 | a [ f + 2 ] , b . push ( c [ e >> 18 ] , c [ e >> 12 & 63 ] , c [ e >> 6 & 63 ] , c [ e & 63 ] ) , f += 3 ; return 1 == d % 3 ? ( b . pop ( ) , b . pop ( ) , b . push ( "=" , "=" ) ) : ( b . pop ( ) , b . push ( "=" ) ) , b . join ( "" ) } , dd : function ( a ) { var b = [ ] ; a = a . split ( "" ) ; var c = R . Uc , d = a . length , e , f = 0 ; if ( d % 4 ) return null ; for ( ; f < d ; ) e = c [ a [ f ] ] << 18 | c [ a [ f +
1 ] ] << 12 | c [ a [ f + 2 ] ] << 6 | c [ a [ f + 3 ] ] , b . push ( e >> 16 , e >> 8 & 255 , e & 255 ) , f += 4 ; for ( ; "=" == a [ -- d ] ; ) b . pop ( ) ; return b } , rb : function ( a ) { a = new DataView ( a ) ; for ( var b = a . byteLength , c = [ ] , d = 0 ; d < b ; d ++ ) c . push ( a . getUint8 ( d ) ) ; return R . qb ( c ) } , cb : function ( a , b ) { return "data:" + b + ";base64," + a } } , R ) ; function Q ( a , b ) { return new Date ( a . getFullYear ( ) , a . getMonth ( ) , a . getDate ( ) + b ) } Date . prototype . _ _defineGetter _ _ ( "date" , function ( ) { return new Date ( this . getFullYear ( ) , this . getMonth ( ) , this . getDate ( ) , 0 , 0 , 0 ) } ) ;
Date . prototype . format = function ( a ) { a = a || "yyyy-MM-dd" ; var b = { "M+" : this . getMonth ( ) + 1 , "d+" : this . getDate ( ) , "h+" : this . getHours ( ) , "m+" : this . getMinutes ( ) , "s+" : this . getSeconds ( ) , "q+" : Math . floor ( ( this . getMonth ( ) + 3 ) / 3 ) , S : this . getMilliseconds ( ) } ; /(y+)/i . test ( a ) && ( a = a . replace ( RegExp . $1 , ( this . getFullYear ( ) + "" ) . substr ( 4 - RegExp . $1 . length ) ) ) ; for ( var c in b ) ( new RegExp ( "(" + c + ")" ) ) . test ( a ) && ( a = a . replace ( RegExp . $1 , 1 == RegExp . $1 . length ? b [ c ] : ( "00" + b [ c ] ) . substr ( ( "" + b [ c ] ) . length ) ) ) ; return a } ;
Date . prototype . _ _defineGetter _ _ ( "isToday" , function ( ) { return this . G . getTime ( ) == ( new Date ) . G . getTime ( ) } ) ; Date . prototype . aa = function ( a ) { var b = "\u65e5\u4e00\u4e8c\u4e09\u56db\u4e94\u516d" . split ( "" ) ; switch ( a ) { case 1 : return b [ this . getDay ( ) ] ; case 2 : return "\u5468" + b [ this . getDay ( ) ] ; default : return "\u661f\u671f" + b [ this . getDay ( ) ] } } ; function Qa ( a , b , c ) { if ( a . length >= b ) return a ; for ( var d = [ ] ; d . length + a . length < b ; ) d . push ( c ) ; return d . join ( "" ) + a }
function Ra ( a , b , c ) { if ( a . length >= b ) return a ; for ( var d = [ ] ; d . length + a . length < b ; ) d . push ( c ) ; return a + d . join ( "" ) } String . prototype . format = function ( a , b ) { var c = parseInt ( a ) ; return 0 < c ? Qa ( this , c , b || " " ) : Ra ( this , c , b || " " ) } ; function Sa ( a , b ) { return a . replace ( /\$\w+\$/gi , function ( a ) { a = b [ a . replace ( /\$/g , "" ) ] ; return "undefined" == a + "" ? "" : a } ) }
Number . prototype . format = function ( a ) { a = a . split ( ":" ) ; var b = this . toString ( a [ 0 ] || 10 ) ; if ( ! a [ 1 ] ) return b ; var b = b . split ( "." ) , c = "" , d = "" , c = a [ 1 ] ? Qa ( b [ 0 ] , a [ 1 ] , "0" ) : b [ 0 ] , d = a [ 2 ] ? Ra ( b [ 1 ] || "" , a [ 2 ] , "0" ) : b [ 1 ] || "" ; return c + ( d ? "." : "" ) + d } ; Boolean . prototype . format = function ( a ) { a = a . split ( ":" ) ; return ! 0 == this ? a [ 0 ] : a [ 1 ] } ;
var A = { Ke : "1.0.0.0" , Vc : "https://kyfw.12306.cn/otn/" , Jf : "http://dynamic.12306.cn/otsquery/" , wc : "leftTicket/query" , we : { } , ve : 0 , wa : function ( a ) { return ":" === a [ 4 ] || ":" === a [ 5 ] ? a : A . Vc + a } , ab : function ( ) { $ ( "#randcodeimg" ) . D ( "src" , $ ( "#randcodeimg" ) . D ( "data-loading" ) ) ; $ ( "#randcode" ) . A ( "" ) . focus ( ) ; A . oc ( "sjrand" , function ( a ) { $ ( "#randcodeimg" ) . D ( "src" , a ) } , "login/init" ) } , oc : function ( a , b , c ) { var d = A . wa ( ":" === a [ 4 ] || ":" === a [ 5 ] ? a : function ( ) { if ( "sjrand" == a ) return "passcodeNew/getPassCodeNew?module=login&rand=sjrand" ; if ( "randp" ==
a ) return "passcodeNew/getPassCodeNew?module=passenger&rand=randp" ; K ( "\u4e0d\u652f\u6301\u7684\u9a8c\u8bc1\u7801\u7c7b\u578b\uff01" ) } ( a ) ) ; S . Aa ( d , c ) . M ( b ) . N ( function ( ) { K ( "\u52a0\u8f7d\u9a8c\u8bc1\u7801\u5931\u8d25\uff0c\u8bf7\u70b9\u51fb\u9a8c\u8bc1\u7801\u5237\u65b0" ) } ) } , gc : function ( a ) { return na || ma ? A . wa ( a ) : "/12306/proxy.php" } , Ma : function ( a , b ) { a = A . wa ( a ) ; b = A . wa ( b ) ; var c = { } , d = na ? "" : "Fish-" ; c [ d + "User-Agent" ] = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" ; c [ d + "Origin" ] = /(https?:\/\/[^\/]+\/)/ . exec ( a ) [ 1 ] ;
c [ d + "RawUrl" ] = a ; c [ d + "Referer" ] = b ; na || ma || ( c [ "Fish-RawUrl" ] = a ) ; return c } , Ie : function ( a , b , c , d , e ) { a = A . wa ( "passcodeNew/checkRandCodeAnsyn" ) ; e = A . wa ( e ) ; A . Ma ( a , e ) ; S . R ( "passcodeNew/checkRandCodeAnsyn" , null , null , e ) . M ( function ( a ) { "function" == typeof c && c ( a ) } ) . N ( function ( a , b ) { "function" == typeof d && d ( a , b ) } ) } , Ab : function ( a , b , c ) { S . R ( "login/checkUser" , "json" , { _json _att : "" } , "leftTicket/init" ) . M ( function ( c ) { c && c . data && c . data . Ze ? ( c . attributes && ( sessionStorage . useratts = c . attributes ) , A . Yb || A . jb ( ) , "function" == typeof a &&
a ( ) ) : "function" == typeof b && b ( ) } ) . N ( function ( ) { "function" == typeof c && c ( ) } ) } , U : function ( a ) { var b = { type : "POST" , dataType : "json" } ; $ . extend ( b , a || { } ) ; b . headers = A . Ma ( b . url , b . refer ) ; "undefined" != typeof b . url && ( b . url = A . gc ( A . wa ( b . url ) ) ) ; "undefined" != typeof b . refer && ( b . refer = A . gc ( b . refer ) ) ; $ . U ( b ) } , Yb : ! 1 , jb : function ( ) { A . Yb = ! 0 ; S . R ( "login/checkUser" , "json" , null , "login/init" ) . M ( function ( ) { setTimeout ( A . jb , 6E4 ) } ) . N ( function ( ) { setTimeout ( A . jb , 6E4 ) } ) } , Fd : function ( a , b ) { S . R ( "login/loginOut" , "html" , null , "login/init" ) . M ( function ( ) { a &&
( sessionStorage . clear ( ) , a ( ) ) } ) . N ( function ( a ) { b && b ( a ) } ) } , Oa : function ( a , b , c ) { S . get ( A . wc , "json" , a , "leftTicket/init" ) . M ( function ( d ) { ! 0 == d . status && 200 == d . httpstatus && 0 < d . data . length && A . Dd ( d . data ) ; ! 1 == d . status && d . c _url ? ( A . wc = d . c _url , A . Oa ( a , b , c ) ) : "function" == typeof b && b ( d ) } ) . N ( function ( a , e ) { "function" == typeof b && c ( a , e ) } ) } , sa : { } , Xd : function ( a , b ) { console . log ( b ) ; A . sa [ a ] || ( A . sa [ a ] = b , localStorage . setItem ( "localTrainNos" , JSON . stringify ( A . sa ) ) ) } , od : function ( ) { var a = localStorage . getItem ( "localTrainNos" ) ; a && ( A . sa =
JSON . parse ( a ) ) } , Dd : function ( a ) { if ( a && 0 < a . length ) for ( var b = 0 ; b < a . length ; b ++ ) A . Sd ( { train _no : a [ b ] . queryLeftNewDTO . train _no , from _station _telecode : a [ b ] . queryLeftNewDTO . from _station _telecode , to _station _telecode : a [ b ] . queryLeftNewDTO . to _station _telecode , depart _date : a [ b ] . queryLeftNewDTO . start _train _date . replace ( /(\d{4})(\d{2})(\d{2})/ , "$1-$2-$3" ) } ) } , Ya : [ ] , Sd : function ( a , b , c ) { console . log ( A . sa [ a . train _no ] ) ; A . sa [ a . train _no ] ? "function" == typeof b && b ( A . sa [ a . train _no ] ) : - 1 == A . Ya . indexOf ( a . train _no ) && ( A . Ya . push ( a . train _no ) ,
S . get ( "czxx/queryByTrainNo" , null , a , "leftTicket/init" ) . M ( function ( c ) { var e = A . Ya . indexOf ( a . train _no ) ; - 1 != e && A . Ya . splice ( e , 1 ) ; c . status && A . Xd ( a . train _no , c . data ) ; "function" == typeof b && b ( c ) } ) . N ( function ( a , b ) { "function" == typeof c && c ( a , b ) } ) ) } } ( function ( a ) { function b ( a ) { return d [ a - 1900 ] & 15 ? d [ a - 1900 ] & 65536 ? 30 : 29 : 0 } function c ( a ) { this . G = a || new Date ; var c = 0 , e = 0 , f = ( this . G - h ) / 864E5 ; for ( a = 1900 ; 2050 > a && 0 < f ; a ++ ) { c = void 0 ; e = 348 ; for ( c = 32768 ; 8 < c ; c >>= 1 ) e += d [ a - 1900 ] & c ? 1 : 0 ; e += b ( a ) ; f -= e } 0 > f && ( f += e , a -- ) ; this . Kc = a ; c = d [ a - 1900 ] &
15 ; this . xa = ! 1 ; for ( a = 1 ; 13 > a && 0 < f ; a ++ ) 0 < c && a == c + 1 && ! 1 == this . xa ? ( -- a , this . xa = ! 0 , e = b ( this . Kc ) ) : e = d [ this . Kc - 1900 ] & 65536 >> a ? 30 : 29 , ! 0 == this . xa && a == c + 1 && ( this . xa = ! 1 ) , f -= e ; 0 == f && 0 < c && a == c + 1 && ( this . xa ? this . xa = ! 1 : ( this . xa = ! 0 , -- a ) ) ; 0 > f && ( f += e , -- a ) ; this . Cb = a ; this . aa = f + 1 } var d = [ 19416 , 19168 , 42352 , 21717 , 53856 , 55632 , 91476 , 22176 , 39632 , 21970 , 19168 , 42422 , 42192 , 53840 , 119381 , 46400 , 54944 , 44450 , 38320 , 84343 , 18800 , 42160 , 46261 , 27216 , 27968 , 109396 , 11104 , 38256 , 21234 , 18800 , 25958 , 54432 , 59984 , 28309 , 23248 , 11104 , 100067 , 37600 , 116951 ,
51536 , 54432 , 120998 , 46416 , 22176 , 107956 , 9680 , 37584 , 53938 , 43344 , 46423 , 27808 , 46416 , 86869 , 19872 , 42448 , 83315 , 21200 , 43432 , 59728 , 27296 , 44710 , 43856 , 19296 , 43748 , 42352 , 21088 , 62051 , 55632 , 23383 , 22176 , 38608 , 19925 , 19152 , 42192 , 54484 , 53840 , 54616 , 46400 , 46496 , 103846 , 38320 , 18864 , 43380 , 42160 , 45690 , 27216 , 27968 , 44870 , 43872 , 38256 , 19189 , 18800 , 25776 , 29859 , 59984 , 27480 , 21952 , 43872 , 38613 , 37600 , 51552 , 55636 , 54432 , 55888 , 30034 , 22176 , 43959 , 9680 , 37584 , 51893 , 43344 , 46240 , 47780 , 44368 , 21977 , 19360 , 42416 , 86390 , 21168 , 43312 , 31060 , 27296 , 44368 ,
23378 , 19296 , 42726 , 42208 , 53856 , 60005 , 54576 , 23200 , 30371 , 38608 , 19415 , 19152 , 42192 , 118966 , 53840 , 54560 , 56645 , 46496 , 22224 , 21938 , 18864 , 42359 , 42160 , 43600 , 111189 , 27936 , 44448 ] , e = "\u65e5\u4e00\u4e8c\u4e09\u56db\u4e94\u516d\u4e03\u516b\u4e5d\u5341" . split ( "" ) , f = [ "\u521d" , "\u5341" , "\u5eff" , "\u5345" , "\u3000" ] , h = new Date ( 1900 , 0 , 31 ) ; c . prototype . qd = function ( ) { var a = "" , a = 10 < this . Cb ? a + ( "\u5341" + e [ this . Cb - 10 ] ) : a + e [ this . Cb ] , a = a + "\u6708" ; "\u5341\u4e8c\u6708" == a ? a = "\u814a\u6708" : "\u4e00\u6708" == a && ( a = "\u6b63\u6708" ) ; return a } ;
c . prototype . pd = function ( ) { var a = "" ; switch ( this . aa ) { case 10 : a += "\u521d\u5341" ; break ; case 20 : a += "\u4e8c\u5341" ; break ; case 30 : a += "\u4e09\u5341" ; break ; default : a += f [ Math . floor ( this . aa / 10 ) ] , a += e [ Math . floor ( this . aa % 10 ) ] } return a } ; c . prototype . vb = function ( ) { var a = this . pd ( ) ; "\u521d\u4e00" == a && ( a = this . qd ( ) ) ; return a } ; a . LunarCalendar = c } ) ( window ) ;
function Ha ( a ) { var b = { ra : ( new Date ) . G , qa : $ ( "#date" ) , de : '<td><a href="javascript:;" class="$class$$isCheckClass$" data-time="$time$">$day$<span class="lunar">$lunar$</span></a></td>' , I : ( new Date ) . G , $d : ( new Date ) . G , Ea : ( new Date ) . G , fa : Q ( ( new Date ) . G , 19 ) , ib : [ ] } ; $ . extend ( this , b ) ; "object" == typeof a && $ . extend ( this , a ) ; this . tb = this . I . format ( "yyyy\u5e74 MM\u6708" ) ; this . V = new Date ( this . I . getFullYear ( ) , this . I . getMonth ( ) , 1 , 0 , 0 , 0 ) ; this . Z = this . I . getMonth ( ) ; Ta ( this ) ; Va ( this ) }
function Ta ( a ) { var b = a . Z , c = a . V , d = c . getDay ( ) , e = c . G . getTime ( ) , f = [ ] , h = a . Ea . G . getTime ( ) , l = a . fa . G . getTime ( ) ; do f . push ( { year : c . getFullYear ( ) , month : c . getMonth ( ) + 1 , day : c . getDate ( ) , format : c . format ( "yyyy/MM/dd" ) , time : c . G . getTime ( ) , "class" : c . jc ? " today" + ( a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" ) : a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" , isCheckClass : e < h ? " disable" : e > l ? " remind" : "" , lunar : ( new LunarCalendar ( c ) ) . vb ( ) } ) , c = new Date ( c . getTime ( ) + 864E5 ) , e = c . G . getTime ( ) ; while ( b == c . getMonth ( ) ) ; for ( b = c . getDay ( ) ; 7 > b && 0 !=
b ; b ++ ) f . push ( { year : c . getFullYear ( ) , month : c . getMonth ( ) + 1 , day : c . getDate ( ) , format : c . format ( "yyyy/MM/dd" ) , time : c . G . getTime ( ) , "class" : c . jc ? " today" + ( a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" ) : a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" , isCheckClass : e < h ? " disable" : e > l ? " remind" : "" , lunar : ( new LunarCalendar ( c ) ) . vb ( ) } ) , c = new Date ( c . getTime ( ) + 864E5 ) , e = c . G . getTime ( ) ; b = d ; c = new Date ( ( new Date ( a . V . getFullYear ( ) , a . V . getMonth ( ) , 1 , 0 , 0 , 0 ) ) . getTime ( ) - 864E5 ) ; for ( e = c . G . getTime ( ) ; 0 < b ; b -- ) f . unshift ( { year : c . getFullYear ( ) , month : c . getMonth ( ) +
1 , day : c . getDate ( ) , format : c . format ( "yyyy/MM/dd" ) , time : c . G . getTime ( ) , "class" : c . jc ? " today" + ( a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" ) : a . I . G . getTime ( ) == c . G . getTime ( ) ? " cur" : "" , isCheckClass : e < h ? " disable" : e > l ? " remind" : "" , lunar : ( new LunarCalendar ( c ) ) . vb ( ) } ) , c = new Date ( c . getTime ( ) - 864E5 ) , e = c . G . getTime ( ) ; a . ib = f }
function Va ( a ) { for ( var b = '<div class="date_title"><span class="date_prev"><i class="icon icon_left"></i></span>' + a . tb + '<span class="date_next"><i class="icon icon_right"></i></span></div><table class="date_component"><tr><th>\u65e5</th><th>\u4e00</th><th>\u4e8c</th><th>\u4e09</th><th>\u56db</th><th>\u4e94</th><th>\u516d</th></tr><tr>' , c = 0 , d = a . ib . length ; c < d ; c ++ ) 0 != c && 0 == c % 7 && ( b += "</tr><tr>" ) , b += Sa ( a . de , a . ib [ c ] ) ; a . qa . C ( b + "</tr></table>" ) ; Wa ( a ) }
function Wa ( a ) { $ ( "table a" , a . qa ) . H ( "click" , function ( ) { var b = new Date ( parseInt ( $ ( this ) . D ( "data-time" ) ) ) ; if ( ! $ ( this ) . Ba ( "cur" ) ) { if ( b . getTime ( ) < a . ra . G . getTime ( ) ) return ! 1 ; a . Z == b . getMonth ( ) ? ( $ ( "table a" , a . qa ) . $ ( "cur" ) , $ ( this ) . W ( "cur" ) , a . I = b ) : ( a . I = b , a . $d = b , a . V = new Date ( a . I . getFullYear ( ) , a . I . getMonth ( ) , 1 , 0 , 0 , 0 ) , a . Z = a . I . getMonth ( ) , a . tb = a . I . format ( "yyyy\u5e74 MM\u6708" ) , Ta ( a ) , Va ( a ) ) } a . La && a . La ( b ) } ) ; $ ( ".date_prev,.date_next" , a . qa ) . H ( "click" , function ( ) { if ( $ ( this ) . Ba ( "date_prev" ) ) { var b = a . Z - 1 , c ; 0 > b ? ( b = 11 , c = new Date ( a . V . getFullYear ( ) -
1 , b , 1 , 0 , 0 , 0 ) ) : c = new Date ( a . V . getFullYear ( ) , b , 1 , 0 , 0 , 0 ) ; c . getTime ( ) < ( new Date ( a . ra . getFullYear ( ) , a . ra . getMonth ( ) , 1 , 0 , 0 , 0 ) ) . getTime ( ) || ( a . Z = b , a . V = c , Ja ( a ) ) } else a . Z ++ , 11 < a . Z ? ( a . Z = 0 , a . V = new Date ( a . V . getFullYear ( ) + 1 , a . Z , 1 , 0 , 0 , 0 ) ) : a . V = new Date ( a . V . getFullYear ( ) , a . Z , 1 , 0 , 0 , 0 ) , Ja ( a ) } ) } function Ja ( a ) { a . tb = a . V . format ( "yyyy\u5e74 MM\u6708" ) ; Ta ( a ) ; Va ( a ) }
function Xa ( a ) { var b = P ; a . G . getTime ( ) < b . ra . G . getTime ( ) || a . G . getTime ( ) > b . fa . G . getTime ( ) || ( b . I = a , b . Z = a . getMonth ( ) , b . V = new Date ( a . getFullYear ( ) , b . Z , 1 , 0 , 0 , 0 ) , Ja ( b ) ) } function Ya ( ) { var a = P ; a . Ea = Q ( new Date , 20 ) ; a . fa = Q ( a . Ea , 29 ) } var Za = ! 1 , $a = { a : [ ] , b : [ ] , c : [ ] , d : [ ] , e : [ ] , f : [ ] , g : [ ] , h : [ ] , i : [ ] , j : [ ] , k : [ ] , l : [ ] , m : [ ] , n : [ ] , o : [ ] , p : [ ] , q : [ ] , r : [ ] , s : [ ] , t : [ ] , u : [ ] , v : [ ] , w : [ ] , x : [ ] , y : [ ] , z : [ ] } , ab = { } , bb = [ ] , cb = null ;
function hb ( ) { if ( ! Za ) { Za = ! 0 ; ib = ka . station _names . substr ( 1 ) ; jb = ib . split ( "@" ) ; for ( var a = "" , b = [ ] , c = 0 ; c < jb . length ; c ++ ) a = jb [ c ] [ 0 ] . toLowerCase ( ) , $a [ a ] || ( $a [ a ] = [ ] ) , b = jb [ c ] . split ( "|" ) , $a [ a ] . push ( b ) , a = b [ 1 ] [ 0 ] , ab [ a ] || ( ab [ a ] = [ ] ) , ab [ a ] . push ( b ) ; bb = ka . favorite _names . substr ( 1 ) . split ( "@" ) ; a = '<div class="fixed_box" id="search_station"><header class="header"><div class="search_box"><a href="javascript:;" class="search_cancel" id="station_cancel">\u53d6\u6d88</a><div class="search_ipt"><input type="search" name="" placeholder="\u641c\u7d22\u8f66\u7ad9" id="station_search" class="search_input" autocomplete="off"><i class="icon_remove_s"></i></div></div></header>' ;
if ( 0 < bb . length ) { for ( var b = [ ] , a = a + '<div class="form_title">\u70ed\u95e8</div><div class="box"><ul class="station_list">' , c = 0 , d = bb . length ; c < d ; c ++ ) b = bb [ c ] . split ( "|" ) , a += '<li><a href="javascript:;" title="' + b [ 1 ] + '" data-code="' + b [ 2 ] + '">' + b [ 1 ] + "</a></li>" ; a += '</ul></div><div class="suggest" id="station_suggest"><ul></ul></div></div>' } $ ( "body" ) . append ( a ) ; kb ( ) } } function lb ( ) { $ ( "#search_station" ) . W ( "fixed_box_show" ) } function mb ( ) { $ ( "#search_station" ) . $ ( "fixed_box_show" ) }
function kb ( ) { $ ( "#station_cancel" ) . H ( "click" , function ( ) { mb ( ) ; nb && nb ( ) } ) ; $ ( "#station_search" ) . H ( "input" , function ( ) { var a = $ ( this ) . A ( ) ; if ( $ . trim ( a ) ) { a = $ . trim ( a ) . toLowerCase ( ) ; if ( $a [ a [ 0 ] ] ) { var b = $a [ a [ 0 ] ] , c = [ ] , c = [ ] , d = [ ] , e = [ ] ; if ( 0 == a . length ) a = b ; else { for ( var f = 0 , h = b . length ; f < h ; f ++ ) - 1 != b [ f ] [ 4 ] . indexOf ( a ) ? b [ f ] [ 4 ] == a ? c . unshift ( b [ f ] ) : c . push ( b [ f ] ) : - 1 != b [ f ] [ 3 ] . indexOf ( a ) ? b [ f ] [ 3 ] == a ? d . unshift ( b [ f ] ) : d . push ( b [ f ] ) : - 1 != b [ f ] [ 0 ] . indexOf ( a ) && ( b [ f ] [ 0 ] == a ? e . unshift ( b [ f ] ) : e . push ( b [ f ] ) ) ; a = c = c . sort ( ob ) . concat ( d . sort ( ob ) , e . sort ( ob ) ) } } else a =
[ ] ; if ( a && 0 != a . length ) { b = "" ; c = 0 ; for ( d = a . length ; c < d ; c ++ ) b += '<li><a href="javascript:;" title="' + a [ c ] [ 1 ] + '" data-code="' + a [ c ] [ 2 ] + '">' + a [ c ] [ 1 ] + "</a></li>" ; $ ( "#station_suggest ul" ) . C ( b ) ; $ ( "#station_suggest" ) . show ( ) } else $ ( "#station_suggest ul" ) . C ( "" ) , $ ( "#station_suggest" ) . J ( ) } else $ ( "#station_suggest ul" ) . C ( "" ) , $ ( "#station_suggest" ) . J ( ) } ) ; $ ( "#search_station [data-code]" ) . L ( "click" , function ( ) { var a = $ ( this ) . D ( "title" ) , b = $ ( this ) . D ( "data-code" ) ; cb && cb ( a , b ) ; $ ( "#station_suggest ul" ) . C ( "" ) ; $ ( "#station_suggest" ) . J ( ) ;
$ ( "#station_search" ) . A ( "" ) } ) } function ob ( a , b ) { return parseInt ( a [ 5 ] ) > parseInt ( b [ 5 ] ) ? 1 : - 1 } var ib , jb , nb ;
function pb ( ) { if ( 0 != $ ( "#login_page" ) . length ) { var a = new Date ; $ ( "#interval" ) . C ( a . format ( "M\u6708dd\u65e5" ) + "-" + Q ( a , 19 ) . format ( "M\u6708d\u65e5" ) ) ; A . ab ( ) ; $ ( "#randcode" ) . kf ( function ( ) { this . value = this . value . replace ( /[^0-9a-zA-Z]/g , "" ) } ) ; $ ( "#loginForm" ) . submit ( function ( a ) { var c = { username : $ ( "[name=username]" , this ) . A ( ) , password : $ ( "[name=password]" , this ) . A ( ) , randcode : $ ( "[name=randcode]" , this ) . A ( ) } ; if ( c . Hc ) { if ( ! c . Od ) return G ( "\u8bf7\u8f93\u5165\u767b\u5f55\u5bc6\u7801" ) , ! 1 ; if ( ! c . Kf ) return G ( "\u8bf7\u8f93\u5165\u9a8c\u8bc1\u7801" ) ,
2014-09-04 17:24:35 +08:00
! 1 } else return G ( "\u8bf7\u8f93\u5165\u7528\u6237\u540d" ) , ! 1 ; T = c ; qb ( ) ; a . preventDefault ( ) ; return ! 1 } ) ; localStorage . getItem ( "useraccount" ) ? ( T = JSON . parse ( localStorage . getItem ( "useraccount" ) ) , $ ( "#loginForm [name=username]" ) . A ( T . username ) , $ ( "#loginForm [name=password]" ) . A ( T . password ) , A . Ab ( function ( ) { sessionStorage . setItem ( "user" , T . username ) ; G ( "\u767b\u5f55\u6210\u529f\uff0c\u6b63\u5728\u8fdb\u5165\u8ba2\u7968\u9875\u9762\uff0c\u8bf7\u7a0d\u7b49 \u2764" ) ; setTimeout ( function ( ) { location . href = "index.html" } ,
2014-09-01 18:04:39 +08:00
1E3 ) } ) ) : sessionStorage . clear ( ) } } var T = null ;
function qb ( ) { S . R ( "login/loginAysnSuggest" , null , { "loginUserDTO.user_name" : T . username , "userDTO.password" : T . password , randCode : T . randcode } , "login/init" ) . M ( function ( a ) { a && a . data && "Y" === a . data . pf ? rb ( ) : ( a = ( a . qf || [ "\u672a\u77e5\u9519\u8bef" ] ) . join ( ";" ) , A . ab ( ) , - 1 != a . indexOf ( "\u767b\u5f55\u540d" ) ? ( $ ( "#username" ) . focus ( ) , G ( "\u7528\u6237\u540d\u8f93\u5165\u9519\u8bef\u3002" ) ) : - 1 != a . indexOf ( "\u9a8c\u8bc1\u7801" ) ? ( $ ( "#randcode" ) . focus ( ) , G ( "\u9a8c\u8bc1\u7801\u4e0d\u6b63\u786e\u3002" ) ) : - 1 != a . indexOf ( "\u90ae\u7bb1" ) ?
( $ ( "#username" ) . focus ( ) , G ( "\u90ae\u7bb1\u8f93\u5165\u9519\u8bef\u3002" ) ) : - 1 < a . indexOf ( "\u5bc6\u7801" ) ? ( $ ( "#password" ) . A ( "" ) . focus ( ) , G ( "\u5bc6\u7801\u4e0d\u6b63\u786e\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165\u3002" , 2E3 ) ) : - 1 < a . indexOf ( "\u9501\u5b9a" ) ? ui . postMessage ( ! 1 , "\u60a8\u7684\u8d26\u6237\u5df2\u7ecf\u88ab\u9501\u5b9a\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002" , "login" ) : - 1 !== a . indexOf ( "\u7cfb\u7edf\u7ef4\u62a4" ) ? G ( "\u7cfb\u7edf\u7ef4\u62a4\u4e2d" ) : G ( "\u672a\u77e5\u9519\u8bef" ) ) } ) . N ( function ( a ) { 403 ==
a . status ? K ( "\u8b66\u544a\uff01\u60a8\u7684IP\u5df2\u7ecf\u88ab\u5c01\u9501\uff0c\u8bf7\u91cd\u8bd5" ) : K ( "\u767b\u5f55\u65f6\u7f51\u7edc\u9519\u8bef" ) } ) } function rb ( ) { S . R ( "login/userLogin" , "text" , null , "login/init" ) . M ( function ( ) { sb ( ) } ) . N ( function ( ) { sb ( ) } ) }
2014-09-04 17:24:35 +08:00
function sb ( ) { var a = T ; A . Ab ( function ( ) { var b = ya ( window . location . search ) ; sessionStorage . setItem ( "user" , a . Hc ) ; localStorage . setItem ( "useraccount" , JSON . stringify ( a ) ) ; G ( "\u767b\u5f55\u6210\u529f\uff0c\u6b63\u5728\u8fdb\u5165\u8ba2\u7968\u9875\u9762\uff0c\u8bf7\u7a0d\u7b49 \u2764" ) ; setTimeout ( function ( ) { if ( b . t ) switch ( b . t ) { case "submitorder" : location . href = "perfect.html" } else location . href = "index.html" } , 1E3 ) } , function ( ) { G ( "\u672a\u80fd\u6210\u529f\u767b\u5f55\uff0c\u8bf7\u91cd\u8bd5\u3002" ) } , function ( ) { G ( "\u767b\u5f55\u65f6\u7f51\u7edc\u9519\u8bef" ) } ) }
2014-09-01 18:04:39 +08:00
function tb ( ) { 0 != $ ( "#query_page" ) . length && ( sa ( ub , vb , vb ) , Ga ( Q ( new Date , 19 ) ) , $ ( "#menu_btn" ) . H ( "click" , function ( ) { $ ( "#user_menu" ) . toggle ( ) } ) , $ ( "#user_menu" ) . H ( "click" , function ( a ) { "user_menu" == $ ( a . target ) . D ( "id" ) && $ ( "#user_menu" ) . J ( ) } ) , $ ( "#open_filter" ) . H ( "click" , function ( ) { N ( "filter" ) } ) , $ ( "#filter_cancel" ) . H ( "click" , function ( ) { O ( ) ; var a = $ ( "#query_form [name=filters]" ) . A ( ) . split ( "&" ) ; wb ( a ) } ) , $ ( "#filter_ok" ) . H ( "click" , function ( ) { O ( ) ; $ ( "#query_form [name=filters]" ) . A ( $ ( "#filter_form" ) . Qa ( ) ) } ) , $ ( "#query_form [name=filters]" ) . A ( $ ( "#filter_form" ) . Qa ( ) ) ,
$ ( "#query_form" ) . H ( "submit" , function ( ) { var a = $ ( "#startStationCode" ) . A ( ) , b = $ ( "#endStationCode" ) . A ( ) ; if ( "" == a ) return K ( "\u8bf7\u9009\u62e9\u51fa\u53d1\u7ad9" ) , ! 1 ; if ( "" == b ) return K ( "\u8bf7\u9009\u62e9\u5230\u8fbe\u7ad9" ) , ! 1 ; if ( a == b ) return K ( "\u51fa\u53d1\u5730\u548c\u76ee\u7684\u5730\u4e0d\u80fd\u76f8\u540c" ) , ! 1 ; var c = $ ( "#query_form" ) . Qa ( ) ; Ea ( a + "-" + b , c ) ; window . location . href = "run_query.html" ; return ! 1 } ) , $ ( "#login" ) . H ( "click" , function ( ) { "loginout" == $ ( this ) . D ( "data-fn" ) && A . Fd ( function ( ) { G ( "\u9000\u51fa\u6210\u529f\uff0c\u6b63\u5728\u8df3\u8f6c" ) ;
setTimeout ( function ( ) { window . location . href = "login.html" } , 1E3 ) } , function ( ) { G ( "\u9000\u51fa\u5931\u8d25\uff0c\u8bf7\u91cd\u8bd5\u3002" ) } ) } ) , hb ( ) , xb ( ) , yb ( ) , zb ( ) ) }
function yb ( ) { var a = va , b , c ; if ( 0 != va . length ) { b = '<div class="his_title">\u6700\u8fd1\u67e5\u627e</div><ul class="list his_list">' ; for ( var d = 0 , e = a . length ; d < e ; d ++ ) c = wa [ a [ d ] [ 0 ] ] , b += '<li><a href="javascript:;" data-key="' + a [ d ] [ 0 ] + '"><span>' + c . startname + "</span><span>" + c . endname + "</span></a></li>" ; b += "</ul>" ; $ ( "#hisQuery" ) . C ( b ) ; $ ( "#hisQuery [data-key]" ) . H ( "click" , function ( ) { var a = $ ( this ) . D ( "data-key" ) ; a && wa [ a ] && Ab ( wa [ a ] ) } ) ; Ab ( wa [ $ ( "#hisQuery [data-key]:eq(0)" ) . D ( "data-key" ) ] ) } }
function Ab ( a ) { var b ; $ ( "#query_form [type=checkbox],#query_form [type=radio]" ) . O ( "checked" , ! 1 ) ; for ( var c in a ) b = $ ( "#query_form [name=" + c + "]" ) , 1 < b . length ? $ ( '#query_form [name="' + c + '"][value="' + a [ c ] + '"]' ) . O ( "checked" , ! 0 ) : ( b . A ( a [ c ] ) , "startname" == c ? $ ( "#startStation" ) . C ( a [ c ] ) : "endname" == c ? $ ( "#endStation" ) . C ( a [ c ] ) : "start_date" == c && ( b = new Date ( a [ c ] . replace ( /\-/g , "/" ) ) , $ ( "#start_date" ) . C ( b . format ( "yyyy\u5e74M\u6708d\u65e5" ) + " " + b . aa ( 3 ) ) , Xa ( b ) ) ) ; a = $ ( "#query_form [name=filters]" ) . A ( ) . split ( "&" ) ; wb ( a ) }
function wb ( a ) { var b = [ ] , c ; $ ( "#filter_form [type=checkbox],#filter_form [type=radio]" ) . O ( "checked" , ! 1 ) ; $ ( "#filter_form #train_labels,#filter_form #passenger_list" ) . C ( "" ) ; for ( var d = 0 ; d < a . length ; d ++ ) b = a [ d ] . split ( "=" ) , b [ 1 ] = decodeURIComponent ( b [ 1 ] ) , c = $ ( '#filter_form [name="' + b [ 0 ] + '"][value="' + b [ 1 ] + '"]' ) , "train_type" == b [ 0 ] || "train_seat" == b [ 0 ] ? c . O ( "checked" , ! 0 ) : "timeslot" == b [ 0 ] ? ( c . O ( "checked" , ! 0 ) , c . X ( ".query_box" ) . find ( "label" ) . $ ( "query_bigcheck_checked" ) , c . X ( "label" ) . W ( "query_bigcheck_checked" ) ) : "train" ==
b [ 0 ] ? $ ( "#filter_form #train_labels" ) . append ( '<span class="train_label">' + b [ 1 ] + '<input type="hidden" name="train" value="' + b [ 1 ] + '"></span>' ) : "passenger" == b [ 0 ] && ( $ ( '#passenger_form [name="psg"][value="' + b [ 1 ] + '"]' ) . O ( "checked" , ! 0 ) , $ ( "#filter_form #passenger_list" ) . append ( '<span class="train_label">' + b [ 1 ] . split ( "$" ) [ 0 ] + '<input type="hidden" name="passenger" value="' + b [ 1 ] + '"></span></span>' ) ) ; sessionStorage . getItem ( D + "_passenger" ) ? ( JSON . parse ( sessionStorage . getItem ( D + "_passenger" ) ) , JSON . parse ( sessionStorage . getItem ( D +
"_passengerobj" ) ) ) : S . R ( "confirmPassenger/getPassengerDTOs" , null , null , "leftTicket/init" ) . M ( function ( a ) { if ( a . status && Array . isArray ( a . data . normal _passengers ) && 0 < a . data . normal _passengers . length ) { a = a . data . normal _passengers ; for ( var b = [ ] , c = { } , d = "" , q = 0 ; q < a . length ; q ++ ) Oa ( a [ q ] ) && ( d = a [ q ] . passenger _name + "$" + a [ q ] . passenger _id _type _code + "$" + a [ q ] . passenger _id _no , a [ q ] . key = d , c [ d ] = a [ q ] , b . push ( a [ q ] ) ) ; sessionStorage . setItem ( D + "_passenger" , JSON . stringify ( b ) ) ; sessionStorage . setItem ( D + "_passengerobj" , JSON . stringify ( c ) ) } } ) . N ( function ( a ,
b ) { console . log ( a , b ) } ) } function ub ( ) { $ ( "#login" ) . D ( "href" , "javascript:;" ) . D ( "data-fn" , "loginout" ) . C ( "\u9000\u51fa" ) ; $ ( "#menu_btn .icon_user" ) . W ( "icon_user2" ) ; yb ( ) ; Cb ( ) } function vb ( ) { $ ( "#login" ) . D ( "href" , "/12306/login.html" ) . D ( "data-fn" , "login" ) . C ( "\u767b\u5f55" ) ; $ ( "#menu_btn .icon_user" ) . $ ( "icon_user2" ) ; yb ( ) }
function xb ( ) { $ ( "#startStation" ) . H ( "click" , function ( ) { cb = Db ; nb = Eb ; lb ( ) ; $ ( "#wrap" ) . J ( ) } ) ; $ ( "#endStation" ) . H ( "click" , function ( ) { cb = Fb ; nb = Eb ; lb ( ) ; $ ( "#wrap" ) . J ( ) } ) ; $ ( "#exchange" ) . H ( "click" , function ( ) { var a = $ ( "#startStationName" ) . A ( ) , b = $ ( "#startStationCode" ) . A ( ) , c = $ ( "#endStationName" ) . A ( ) , d = $ ( "#endStationCode" ) . A ( ) ; $ ( "#startStationName" ) . A ( c ) ; $ ( "#startStationCode" ) . A ( d ) ; $ ( "#endStationName" ) . A ( a ) ; $ ( "#endStationCode" ) . A ( b ) ; a ? $ ( "#endStation" ) . C ( a ) : $ ( "#endStation" ) . C ( "\u5230\u8fbe\u7ad9" ) ; c ? $ ( "#startStation" ) . C ( c ) :
$ ( "#startStation" ) . C ( "\u51fa\u53d1\u7ad9" ) } ) } function Db ( a , b ) { $ ( "#startStation" ) . C ( a ) ; $ ( "#startStationName" ) . A ( a ) ; $ ( "#startStationCode" ) . A ( b ) ; mb ( ) ; $ ( "#wrap" ) . show ( ) } function Fb ( a , b ) { $ ( "#endStation" ) . C ( a ) ; $ ( "#endStationName" ) . A ( a ) ; $ ( "#endStationCode" ) . A ( b ) ; mb ( ) ; $ ( "#wrap" ) . show ( ) } function Eb ( ) { $ ( "#wrap" ) . show ( ) } var Gb = { } ;
function Hb ( ) { if ( "" == $ ( "#startStationCode" ) . A ( ) || "" == $ ( "#endStationCode" ) . A ( ) ) K ( "\u8bf7\u9009\u62e9\u53d1\u5230\u8fbe\u7ad9" ) ; else { var a = "ADULT" ; "2" == $ ( "#query_form [name=type]" ) . A ( ) && ( a = "0X00" ) ; var b = Aa ( "\u6b63\u5728\u83b7\u53d6\u8f66\u6b21" ) , c = $ ( "#start_date_val" ) . A ( ) , d = $ ( "#startStationCode" ) . A ( ) , e = $ ( "#endStationCode" ) . A ( ) , f = d + e + c + a , a = { "leftTicketDTO.train_date" : c , "leftTicketDTO.from_station" : d , "leftTicketDTO.to_station" : e , purpose _codes : a } ; Gb [ f ] && ( Ib ( Gb [ f ] ) , N ( "trains_box" ) ) ; A . Oa ( a , function ( a ) { ! 0 ==
a . status && 200 == a . httpstatus && 0 < a . data . length && ( Gb [ f ] = a . data , Ib ( a . data ) , N ( "trains_box" ) ) ; M ( b ) } , function ( ) { M ( b ) } ) } }
function Ib ( a ) { for ( var b , c = "" , d = [ ] , e = 0 , f = a . length ; e < f ; e ++ ) b = a [ e ] . queryLeftNewDTO , d = b . lishi . split ( ":" ) , c = 0 < $ ( '#train_labels [value="' + b . station _train _code + '"]' ) . length ? c + '<li><a href="javascript:;" class="clearfix cur"' : c + '<li><a href="javascript:;" class="clearfix"' , c += ' data-traincode="' + b . station _train _code + '"><span class="pull_right">' + ( d [ 0 ] && "00" != d [ 0 ] ? parseInt ( d [ 0 ] ) + "\u5c0f\u65f6" : "" ) + ( d [ 1 ] ? parseInt ( d [ 1 ] ) + "\u5206" : "0\u5206" ) + '</span><span class="pull_left "><strong class="text_lg form_label text_left">' +
b . station _train _code + "</strong>" + b . start _time + " - " + b . arrive _time + "</span></a></li>" ; $ ( "#trainList" ) . C ( c ) } function Cb ( ) { sessionStorage . getItem ( D + "_passenger" ) ? Jb ( JSON . parse ( sessionStorage . getItem ( D + "_passenger" ) ) ) : S . R ( "confirmPassenger/getPassengerDTOs" , null , null , "leftTicket/init" ) . M ( function ( a ) { a . status && Array . isArray ( a . data . normal _passengers ) && 0 < a . data . normal _passengers . length && Jb ( a . data . normal _passengers ) } ) . N ( function ( a , b ) { console . log ( a , b ) } ) }
function Jb ( a ) { for ( var b = "" , c = 0 , d = a . length ; c < d ; c ++ ) b += '<label class="query_checkbox"><input name="psg" type="checkbox" data-name="' + a [ c ] . passenger _name + '" value="' + a [ c ] . passenger _name + "$" + a [ c ] . passenger _id _type _code + "$" + a [ c ] . passenger _id _no + '">' + a [ c ] . passenger _name + "</label>" ; $ ( "#passengers" ) . C ( b ) ; a = $ ( "#query_form [name=filters]" ) . A ( ) . split ( "&" ) ; wb ( a ) }
function zb ( ) { $ ( "#train_filter" ) . L ( "click" , function ( ) { Hb ( ) } ) ; $ ( "#trains_ok" ) . L ( "click" , function ( ) { N ( "filter" ) } ) ; $ ( "#trainList a" ) . L ( "click" , function ( ) { var a = $ ( this ) . D ( "data-traincode" ) ; $ ( this ) . Ba ( "cur" ) ? ( $ ( '#train_labels [value="' + a + '"]' ) . X ( ".train_label" ) . remove ( ) , $ ( this ) . $ ( "cur" ) ) : ( $ ( this ) . W ( "cur" ) , $ ( "#train_labels" ) . append ( '<span class="train_label">' + a + '<input type="hidden" name="train" value="' + a + '"></span>' ) ) } ) ; $ ( "#train_labels .train_label" ) . L ( "click" , function ( ) { $ ( this ) . remove ( ) } ) ; $ ( "#check_passenger" ) . L ( "click" ,
function ( ) { qa ? N ( "passenger" ) : Da ( "\u767b\u9646\u540e\u53ef\u9009\u4e58\u8f66\u4eba" , function ( ) { window . location . href = "login.html" } , "\u767b\u9646" ) } ) ; $ ( '#passengers [name="psg"]' ) . L ( "change" , function ( ) { if ( 5 < $ ( '#passengers [name="psg"]:checked' ) . length ) K ( "\u8054\u7cfb\u4eba\u6700\u591a\u53ea\u80fd\u9009\u62e9\u4e94\u4e2a" ) , $ ( this ) . O ( "checked" , ! 1 ) ; else { var a = $ ( this ) . A ( ) , b = $ ( this ) . D ( "data-name" ) ; $ ( this ) . O ( "checked" ) ? $ ( "#passenger_list" ) . append ( '<span class="train_label">' + b + '<input type="hidden" name="passenger" value="' +
a + '"></span>' ) : $ ( '#passenger_list [name="passenger"]' ) . X ( ".train_label" ) . remove ( ) } } ) ; $ ( "#passenger_ok" ) . L ( "click" , function ( ) { var a = $ ( '#passenger_list [name="passenger"]' ) ; $ ( '#passenger_form [name="psg"]' ) . O ( "checked" , ! 1 ) ; a . B ( function ( a , c ) { $ ( '#passenger_form [name="psg"][value="' + $ ( c ) . A ( ) + '"]' ) . O ( "checked" , ! 0 ) } ) ; N ( "filter" ) } ) ; $ ( "#passenger_list .train_label" ) . L ( "click" , function ( ) { var a = $ ( "input" , this ) . A ( ) ; $ ( this ) . remove ( ) ; $ ( '#passengers [name="psg"][value="' + a + '"]' ) . O ( "checked" , ! 1 ) } ) }
function Kb ( ) { if ( 0 != $ ( "#runquery_page" ) . length ) { var a = Q ( new Date , 19 ) ; Fa = "M\u6708d\u65e5" ; Ga ( a ) ; P . La = Lb ; sa ( Mb , Mb , Mb ) ; $ ( "#filter_ok" ) . H ( "click" , function ( ) { O ( ) ; $ ( "#query_form [name=filters]" ) . A ( $ ( "#filter_form" ) . Qa ( ) ) ; Nb ( ) ; Ob ( ) } ) ; $ ( "#check_left,#check_right" ) . H ( "click" , function ( ) { Ob ( ) } ) ; $ ( "#filter_cancel" ) . H ( "click" , function ( ) { O ( ) ; var a = $ ( "#query_form [name=filters]" ) . A ( ) . split ( "&" ) ; wb ( a ) } ) ; $ ( "#filter_btn" ) . H ( "click" , function ( ) { N ( "filter" ) } ) ; $ ( "#filter_cancel" ) . H ( "click" , function ( ) { O ( ) } ) ; $ ( '[data-fn="buy"]' ) . L ( "click" ,
function ( ) { var a = $ ( this ) . D ( "data-traincode" ) , c = $ ( this ) . D ( "data-seatcode" ) ; "0" == c && 0 < $ ( '[data-traincode="' + a + '"][data-seatcode="' + c + '"]' ) . length && ( c = "1" ) ; sessionStorage . setItem ( D + "curBuy" , JSON . stringify ( U . fb [ a ] ) ) ; sessionStorage . setItem ( D + "curBuySeat" , c ) ; qa ? location . href = "perfect.html" : K ( "\u8fd8\u672a\u767b\u5f55\uff0c\u8bf7\u767b\u9646\u540e\u8d2d\u7968" , function ( ) { location . href = "login.html?t=submitorder" } ) } ) ; $ ( "#autoTipBtn" ) . L ( "click" , function ( ) { if ( qa ) { if ( ! Qb ) { try { S . yc ( ) } catch ( a ) { alert ( a ) } Rb = Sb = ( new Date ) . getTime ( ) ;
Qb = ! 0 ; $ ( "#refresh_train" ) . show ( ) ; $ ( "#autoTip" ) . J ( ) ; Tb ( ) ; Ub = 1 ; Vb ( ) } } else window . location . href = "login.html" } ) ; $ ( "#refresh_end" ) . L ( "click" , function ( ) { Wb ( ) } ) } }
2014-09-04 17:24:35 +08:00
function Mb ( ) { Cb ( ) ; ec ( ) ; if ( ! V ) return window . location . href = "index.html" , ! 1 ; wb ( V . filters . split ( "&" ) ) ; $ ( ".station_title strong" ) . C ( V . startname + "\u2192" + V . endname ) ; $ ( "#query_form [name=startname]" ) . A ( V . startname ) ; $ ( "#query_form [name=startcode]" ) . A ( V . startcode ) ; $ ( "#query_form [name=endname]" ) . A ( V . endname ) ; $ ( "#query_form [name=endcode]" ) . A ( V . endcode ) ; $ ( "#query_form [name=type]" ) . A ( V . type ) ; $ ( "#query_form [name=filters]" ) . A ( V . filters ) ; var a = new Date ( V . start _date . replace ( /\-/g , "/" ) ) ; $ ( "#start_date" ) . C ( a . format ( "M\u6708d\u65e5" ) +
2014-09-01 18:04:39 +08:00
" " + a . aa ( 3 ) ) ; $ ( "#start_date_val" ) . A ( a . format ( "yyyy-MM-dd" ) ) ; Xa ( a ) ; Nb ( ) ; Tb ( ) ; zb ( ) } var V = null ; function ec ( ) { wa [ va [ 0 ] [ 0 ] ] && ( V = wa [ va [ 0 ] [ 0 ] ] ) }
function Tb ( ) { var a = Aa ( "\u6b63\u5728\u67e5\u7968" ) ; A . Oa ( { "leftTicketDTO.train_date" : V . ae , "leftTicketDTO.from_station" : V . Wf , "leftTicketDTO.to_station" : V . Pe , purpose _codes : "2" == V . type ? "0X00" : "ADULT" } , function ( b ) { M ( a ) ; if ( ! 0 == b . status && 200 == b . httpstatus ) { if ( 0 < b . data . length ) { fc ( b ) ; b = U . da ; var c = "" , d = { } ; U . isMaintain && ( b = U . fb ) ; for ( var e in b ) { d = b [ e ] ; c += "<li>" ; c += '<div class="line no_border">' ; c += '<strong class="pull_right text_underline text_lg" data-id="' + d . id + '">' + d . code + "</strong>" ; c += '<strong class="text_warning text_lg link_label">' +
d . from . time + "</strong>" ; c += '<span class="text_lg">' ; d . from . code == d . start . code && ( c += '<i class="text_label">\u59cb</i>' ) ; c += d . from . name + "</span>" ; c += "</div>" ; c += '<div class="line">' ; ls = d . elapsedTime . total . split ( ":" ) ; c += '<span class="pull_right text_gray">' + ( ls [ 0 ] ? ls [ 0 ] + "\u5c0f\u65f6" : "" ) + ( ls [ 1 ] ? ls [ 1 ] + "\u5206" : "0\u5206" ) + "</span>" ; c += '<span class="text_lg link_label">' ; c += d . to . time + "</span>" ; c += '<span class="text_lg">' ; d . to . code == d . end . code && ( c += '<i class="text_label">\u7ec8</i>' ) ; for ( var c = c + ( d . to . name +
"</span>" ) , c = c + "</div>" , f = 0 ; f < d . ticketMapSort . length ; f ++ ) if ( 0 != d . ticketMapSort [ f ] . count || U . isMaintain ) c += '<div class="line"><span class="pull_right">' , "\u6709" == d . ticketMapSort [ f ] . count ? c += '<span class="text_warning">\u6709</span>' : ( c += '<span class="text_warning">' + d . ticketMapSort [ f ] . count + "</span>" , c += '<span class="text_gray">\u5f20</span>' ) , c = U . isMaintain ? c + '<span href="javascript:;" class="btn btn_gray">\u7ef4\u62a4</span>' : c + ( '<a href="javascript:;" class="btn btn_success" data-fn="buy" data-traincode="' +
d . id + '" data-seatcode="' + d . ticketMapSort [ f ] . code + '">\u62a2\u7968</a>' ) , c += "</span>" , c += '<span class="link_label">' + d . ticketMapSort [ f ] . name + "</span>" , c += '<span class="text_gray">' + d . ticketMapSort [ f ] . price / 10 + "\u5143</span>" , c += "</div>" ; c += "</li>" } $ ( "#train_list" ) . C ( c ) ; $ ( ".station_title span" ) . C ( "\u5171 " + $ ( "#train_list li" ) . length + " \u8d9f\u5217\u8f66" ) ; if ( U . isMaintain || 0 != Object . keys ( U . da ) . length ) if ( ! U . isMaintain && Qb ) { try { S . zc ( ) } catch ( h ) { alert ( h ) } Wb ( ) ; $ ( '#train_list li [data-fn="buy"]' ) . sb ( 0 ) . click ( ) } else $ ( "#autoTip" ) . J ( ) ;
else gc ( ) } } else ! b . status && b . messages ? K ( b . messages [ 0 ] || "\u672a\u77e5\u9519\u8bef" ) : K ( "\u672a\u77e5\u9519\u8bef" ) } , function ( b , c ) { console . log ( b , c ) ; M ( a ) } ) }
function hc ( ) { var a = t . queryLeftNewDTO . yp _info , b = [ ] , a = ( - 1 === a . indexOf ( "#" ) ? a : /getSelected\(['"](.*?)['"]\)/i . exec ( a ) [ 1 ] . split ( "#" ) [ 11 ] ) . match ( /([A-Z\d])0*?([\*\d]{5})0*?(\d{4})/gi ) , c ; for ( c in a ) { var d = /([A-Z\d])0*?([\*\d]{5})0*?(\d{4})/i . exec ( a [ c ] ) , e = d [ 1 ] , f = "*" == d [ 2 ] [ 0 ] ? null : parseInt ( d [ 2 ] , 10 ) , d = parseInt ( d [ 3 ] , 10 ) , h = { code : e , name : Ka ( e ) , vc : f } ; 3E3 > d ? ( h . count = d , "7" === e ? b . push ( { code : "M" , name : Ka ( "M" ) , vc : f , count : d } ) : "8" === e ? b . push ( { code : "O" , name : Ka ( "O" ) , vc : f , count : d } ) : b . push ( h ) ) : ( h . count = d - 3E3 , h . code = "0" , h . name =
"\u65e0\u5ea7" , b . push ( h ) ) } return b } var U = null ;
function fc ( a ) { if ( Array . isArray ( a . data ) || a . data . length ) { for ( var b = a . data , c , d = { Lf : a , Td : { } , fb : { } , Zb : { } , Ae : null , yf : null } , e = 0 ; e < b . length ; e ++ ) { t = b [ e ] ; a = { id : t . queryLeftNewDTO . train _no , code : t . queryLeftNewDTO . station _train _code , available : "Y" === t . queryLeftNewDTO . canWebBuy ? 1 : 0 , start : { code : t . queryLeftNewDTO . start _station _telecode , name : t . queryLeftNewDTO . start _station _name } , from : { code : t . queryLeftNewDTO . from _station _telecode , fromStationNo : t . queryLeftNewDTO . from _station _no , name : t . queryLeftNewDTO . from _station _name ,
endpoint : t . queryLeftNewDTO . from _station _telecode == t . queryLeftNewDTO . start _station _telecode , time : t . queryLeftNewDTO . start _time } , to : { code : t . queryLeftNewDTO . to _station _telecode , toStationNo : t . queryLeftNewDTO . to _station _no , name : t . queryLeftNewDTO . to _station _name , endpoint : t . queryLeftNewDTO . end _station _telecode == t . queryLeftNewDTO . to _station _telecode , time : t . queryLeftNewDTO . arrive _time } , elapsedTime : { days : t . queryLeftNewDTO . day _difference , total : t . queryLeftNewDTO . lishi } , end : { code : t . queryLeftNewDTO . end _station _telecode ,
name : t . queryLeftNewDTO . end _station _name } , ypinfo : t . queryLeftNewDTO . yp _info , ypinfo _ex : t . queryLeftNewDTO . yp _ex , locationCode : t . queryLeftNewDTO . location _code , controlDay : t . queryLeftNewDTO . control _day , supportCard : t . queryLeftNewDTO . is _support _card , saleTime : t . queryLeftNewDTO . sale _time , secureStr : t . secretStr , selltime : null , date : t . queryLeftNewDTO . start _train _date . replace ( /(\d{4})(\d{2})(\d{2})/ , "$1-$2-$3" ) , form _train _date : V . ae , limitSellInfo : t . buttonTextInfo && - 1 != t . buttonTextInfo . indexOf ( "\u6682\u552e" ) ? t . buttonTextInfo . replace ( /<[^>]+>/i ,
"" ) : null } ; c = hc ( ) ; a . $f = c ; a . Ra = Na ( c , function ( a ) { return a . code } ) ; a . Zf = Ma ( a . Ra ) ; if ( c = /(0*(\d+)\u67080*(\d+)\u65e5)?(\d+)\s*\u70b9\s*((\d+)\u5206)?\s*\u8d77\u552e/i . exec ( t . Fe . replace ( /<.*?>/g , "" ) ) ) a . Be = - 1 , a . pa = new Date , a . pa . setHours ( parseInt ( c [ 4 ] ) ) , a . pa . setMinutes ( parseInt ( c [ 6 ] || "0" , 10 ) ) , a . pa . setSeconds ( 0 ) , c [ 1 ] && ( a . pa . setMonth ( parseInt ( c [ 2 ] ) - 1 ) , a . pa . setDate ( parseInt ( c [ 3 ] ) ) , a . pa . getMonth ( ) < ( new Date ) . getMonth ( ) && a . pa . setFullYear ( a . pa . getFullYear ( ) + 1 ) ) ; d . Td [ a . id ] = t ; d . Zb [ a . code ] = t ; d . fb [ a . id ] = a } 0 < b . length &&
( d . isMaintain = - 1 != b [ 0 ] . buttonTextInfo . indexOf ( "\u7cfb\u7edf\u7ef4\u62a4\u65f6\u95f4" ) ) ; U = d ; if ( "undefined" != typeof X . da ) for ( e = 0 ; e < X . da . length ; e ++ ) "undefined" == typeof d . Zb [ X . da [ e ] ] && ( X . da . splice ( e , 1 ) , e -- ) ; U . wd = ic ( ) ; U . da = jc ( ) ; U . ge = kc ( ) ; U . fe = lc ( ) ; U . da = U . fe } } var X = { } ; function Nb ( ) { X = { } ; for ( var a = $ ( "#filter_form" ) . Bc ( ) , b = 0 ; b < a . length ; b ++ ) X [ a [ b ] . name ] || ( X [ a [ b ] . name ] = [ ] ) , X [ a [ b ] . name ] . push ( a [ b ] . value ) ; X . train _type && ( X . train _type = X . train _type . join ( "|" ) . split ( "|" ) ) }
function ic ( ) { var a = U . fb , b = { } , c = ! 1 , d ; for ( d in a ) { for ( var c = ! 1 , e = 0 ; e < a [ d ] . ticketMapSort . length ; e ++ ) if ( 0 < a [ d ] . ticketMapSort [ e ] . count ) { c = ! 0 ; break } c && ( b [ d ] = a [ d ] ) } return b } function jc ( ) { var a = U . wd , b = { } ; if ( "undefined" == typeof X . da || 0 == X . da . length ) return a ; for ( var c in a ) - 1 != X . da . indexOf ( a [ c ] . code ) && ( b [ c ] = a [ c ] ) ; return b }
function kc ( ) { var a = U . da ; if ( "undefined" == typeof X . train _type || "all" == X . train _type [ 0 ] ) return a ; var b = { } , c ; for ( c in a ) if ( - 1 != X . train _type . indexOf ( a [ c ] . code [ 0 ] ) || ! isNaN ( a [ c ] . code [ 0 ] ) && - 1 != X . train _type . indexOf ( "QT" ) ) b [ c ] = a [ c ] ; return b }
function lc ( ) { var a = U . ge ; if ( "undefined" == typeof X . train _seat || "all" == X . train _seat [ 0 ] ) return a ; var b = { } , c = ! 1 , d ; for ( d in a ) { for ( var c = ! 1 , e = 0 ; e < X . train _seat . length ; e ++ ) if ( "undefined" != typeof a [ d ] . Ra [ X . train _seat [ e ] ] && 0 < a [ d ] . Ra [ X . train _seat [ e ] ] . count ) { c = ! 0 ; break } c && ( b [ d ] = a [ d ] ) } return b }
function Lb ( a ) { var b = a . G . getTime ( ) ; b >= P . Ea . G . getTime ( ) && b <= P . fa . G . getTime ( ) ? ( $ ( "#date_tip" ) . J ( ) , O ( ) , $ ( "#start_date" ) . C ( P . I . format ( Fa ) + " " + P . I . aa ( 3 ) ) , $ ( "#start_date_val" ) . A ( P . I . format ( "yyyy-MM-dd" ) ) , Ob ( ) ) : ( b = $ ( "a.cur" , P . qa ) . offset ( ) , $ ( "#date_tip" ) . P ( { left : b . left , top : b . top , display : "block" } ) . C ( "<p>" + a . format ( "M\u6708d\u65e5" ) + '\u4e0d\u5728\u9884\u552e\u671f</p><a href="remind.html?data=' + encodeURIComponent ( a . format ( "M\u6708d\u65e5" ) ) + '" class="btn btn_m btn_success">\u9884\u7ea6\u63d0\u9192</a>' ) , 0.75 <
b . left / window . innerWidth ? $ ( "#date_tip" ) . D ( "class" , "tip_small tip_right" ) : 0.15 > b . left / window . innerWidth ? $ ( "#date_tip" ) . D ( "class" , "tip_small tip_left" ) : $ ( "#date_tip" ) . D ( "class" , "tip_small" ) ) } function Ob ( ) { Ea ( $ ( "#startStationCode" ) . A ( ) + "-" + $ ( "#endStationCode" ) . A ( ) , $ ( "#query_form" ) . Qa ( ) ) ; pa ( ) ; ec ( ) ; Tb ( ) }
function gc ( ) { Qb || ( qa ? $ ( "#autoTip p" ) . C ( "\u6682\u65f6\u65e0\u7968!<br>\u6ca1\u6709\u7b26\u5408\u4f60\u8981\u6c42\u7684\u8f66\u6b21\u548c\u5e2d\u522b" ) : $ ( "#autoTip p" ) . C ( "\u6682\u65f6\u65e0\u7968!<br>\u767b\u5f55\u540e\u53ef\u4ee5\u81ea\u52a8\u5237\u7968" ) , $ ( "#autoTip" ) . show ( ) ) } var Ub = 0 , Sb = null , Rb = null , Qb = ! 1 , mc = null ;
function Vb ( ) { if ( Qb ) { var a = ( new Date ) . getTime ( ) , b ; b = a - Sb ; b = parseInt ( b / 6E4 ) + "\u5206" + parseInt ( b % 6E4 / 1E3 ) + "\u79d2" ; var c = ( ( 5E3 - ( a - Rb ) ) / 1E3 ) . toFixed ( 1 ) ; 0 >= c && ( c = 0 ) ; $ ( "#refresh_train .rf_desc" ) . C ( "\u5df2\u5237 " + Ub + " \u6b21\uff0c\u7528\u65f6 " + b + "<br>\u8ddd\u4e0b\u6b21\u5237\u7968\u8fd8\u6709 " + c + " \u79d2 ..." ) ; 0 == c && ( Rb = a , Ub ++ , Tb ( ) ) ; mc = setTimeout ( Vb , 100 ) } } function Wb ( ) { try { S . xc ( ) } catch ( a ) { alert ( a ) } clearTimeout ( mc ) ; Qb = ! 1 ; $ ( "#refresh_train" ) . J ( ) ; 0 == U . da . length && gc ( ) }
2014-09-04 17:24:35 +08:00
var Y = { xb : function ( ) { if ( 0 == $ ( "#ordersubmit_page" ) . length ) return ! 1 ; Y . Yc ( ) ; sa ( function ( ) { sessionStorage . getItem ( D + "curBuy" ) || sessionStorage . getItem ( "curBuy" ) || ( window . location . href = "index.html" ) ; Y . ud ( ) ; Y . rd ( ) } , function ( ) { window . location . href = "login.html" } , function ( ) { window . location . href = "login.html" } ) } , ud : function ( ) { Y . T = JSON . parse ( sessionStorage . getItem ( D + "curBuy" ) ) ; Y . T || ( Y . T = JSON . parse ( sessionStorage . getItem ( "curBuy" ) ) ) ; Y . lb = sessionStorage . getItem ( D + "curBuySeat" ) ; Y . lb || ( Y . lb = sessionStorage . getItem ( "curBuySeat" ) ) ;
2014-09-01 18:04:39 +08:00
Y . $b = wa [ Y . T . from . code + "-" + Y . T . to . code ] ; var a = '<div class="info">' , b = new Date ( Y . T . form _train _date . replace ( /\-/g , "/" ) ) , a = a + ( '<div class="info_title"><span class="pull_right">' + Y . T . code + "</span><span>" + b . format ( "yyyy-M-d" ) + " " + b . aa ( 3 ) + "</span></div>" ) , a = a + ( '<div class="stations_info"><div class="station_info"><strong>' + Y . T . from . name + "</strong>" + Y . T . from . time + "</div>" ) , a = a + ( '<div class="station_info"><strong>' + Y . T . to . name + "</strong>" + Y . T . to . time + "</div></div>" ) , a = a + "</div>" ; $ ( "#trainInfo" ) . C ( a ) } , Na : null ,
nf : function ( ) { if ( $ ( "#randcodeimg" ) . Ba ( "loading_code" ) ) return ! 1 ; $ ( "#randcodeimg" ) . W ( "loading_code" ) ; A . oc ( "sjrand" , function ( a ) { $ ( "#randcodeimg" ) . D ( "src" , a ) ; $ ( "#randcodeimg" ) . $ ( "loading_code" ) } , "passcodeNew/getPassCodeNew?module=login&rand=sjrand" ) } , rd : function ( ) { sessionStorage . getItem ( D + "_passenger" ) ? ( Y . Na = JSON . parse ( sessionStorage . getItem ( D + "_passenger" ) ) , Y . ya = JSON . parse ( sessionStorage . getItem ( D + "_passengerobj" ) ) , Y . Cc ( ) ) : S . R ( "confirmPassenger/getPassengerDTOs" , null , null , "leftTicket/init" ) . M ( function ( a ) { a . status &&
Array . isArray ( a . data . normal _passengers ) && 0 < a . data . normal _passengers . length && ( Y . md ( a . data . normal _passengers ) , Y . Cc ( ) ) } ) . N ( function ( a , b ) { console . log ( a , b ) } ) } , Cc : function ( ) { for ( var a = "" , b = 0 , c = Y . Na . length ; b < c ; b ++ ) a += '<label class="query_checkbox"><input name="train_type" type="checkbox" value="' + Y . Na [ b ] . key + '">' + Y . Na [ b ] . passenger _name + "</label>" ; if ( Y . $b ) for ( var c = Y . $b . filters . split ( "&" ) , d = [ ] , b = 0 ; b < c . length ; b ++ ) d = c [ b ] . split ( "=" ) , d [ 1 ] = decodeURIComponent ( d [ 1 ] ) , "passenger" == d [ 0 ] && Y . ya [ d [ 1 ] ] && Y . tc ( Y . ya [ d [ 1 ] ] ) ;
$ ( "#passengers" ) . C ( a ) ; $ ( "#add_passenger" ) . H ( "click" , function ( ) { N ( "passenger" ) } ) ; $ ( "#passenger_ok" ) . H ( "click" , function ( ) { O ( ) } ) ; $ ( '#passengers [type="checkbox"]' ) . H ( "change" , function ( ) { if ( 5 < $ ( '#passengers [type="checkbox"]:checked' ) . length || 5 <= $ ( "#passenger_list li" ) . length ) return K ( "\u8054\u7cfb\u4eba\u6700\u591a\u53ea\u80fd\u9009\u62e9\u4e94\u4e2a" ) , $ ( this ) . O ( "checked" , ! 1 ) , ! 1 ; var a = $ ( this ) , b = a . A ( ) ; a . O ( "checked" ) ? Y . tc ( Y . ya [ b ] ) : $ ( '#passenger_list [data-key="' + b + '"]' ) . remove ( ) } ) ; 0 < $ ( "#passenger_list li" ) . length &&
$ ( "#ordersubmit" ) . click ( ) } , Kd : { } , tc : function ( a ) { var b = "" , b = Pa ( a ) , c = Y . T . Ra [ Y . lb ] , b = '<li class="clearfix" data-key="' + a . key + '" data-type="' + b [ 0 ] . id + '" data-seat="' + c . code + '"><span class="pull_left"><strong>' + a . passenger _name + '</strong><span class="ticket">' + b [ 0 ] . name + "</span><br>" + a . passenger _id _no + '</span><a href="javascript:;" data-fn="edit" class="pull_right"><span class="seat">' + c . name + " " + c . price / 10 + '\u5143</span> <i class="icon_edit"></i></a></li>' ; $ ( "#passenger_list" ) . append ( b ) } , Oc : function ( a ,
b ) { var c = Y . ya [ a ] , d = Y . T . Ra [ b . D ( "data-seat" ) ] ; html = '<li class="clearfix" data-children="true" data-key="' + c . passenger _name + "$" + c . passenger _id _type _code + "$" + c . passenger _id _no + '" data-type="2" data-seat="' + b . D ( "data-seat" ) + '">\t\t\t\t<span class="pull_left"><strong>' + c . passenger _name + '</strong><span class="ticket">\u513f\u7ae5\u7968</span><br>' + c . passenger _id _no + '</span>\t\t\t\t<a href="javascript:;" data-fn="edit" class="pull_right">\t\t\t\t<span class="seat">' + d . name + " " + d . price / 10 + '\u5143</span> <i class="icon_edit"></i></a></li>' ;
b . ue ( html ) } , md : function ( a ) { for ( var b = [ ] , c = { } , d = "" , e = 0 ; e < a . length ; e ++ ) Oa ( a [ e ] ) && ( d = a [ e ] . passenger _name + "$" + a [ e ] . passenger _id _type _code + "$" + a [ e ] . passenger _id _no , a [ e ] . key = d , c [ d ] = a [ e ] , b . push ( a [ e ] ) ) ; Y . Na = b ; Y . ya = c ; sessionStorage . setItem ( "_passenger" , JSON . stringify ( b ) ) ; sessionStorage . setItem ( "_passengerobj" , JSON . stringify ( c ) ) } , pb : "" , la : null , Kb : function ( ) { $ ( "#layer" ) . show ( ) } , na : function ( ) { $ ( "#layer" ) . J ( ) } , Yc : function ( ) { var a = $ ( "#edit_menu" ) ; $ ( '[data-fn="edit"]' ) . L ( "click" , function ( ) { var b = $ ( this ) . X ( "[data-key]" ) ,
c = b . D ( "data-key" ) ; Y . pb = c ; Y . la = b ; $ ( "#passenger_editinfo" ) . C ( b . C ( ) ) ; $ ( '#passenger_editinfo [data-fn="edit"]' ) . D ( "data-fn" , "edit_close" ) ; $ ( "#edit_menu" ) . P ( { top : b . offset ( ) . top } ) ; b . D ( "data-children" ) ? ( $ ( '[data-fn="children"]' ) . X ( "li" ) . J ( ) , $ ( '[data-fn="ticket"]' ) . X ( "li" ) . J ( ) ) : ( $ ( '[data-fn="children"]' ) . X ( "li" ) . show ( ) , $ ( '[data-fn="ticket"]' ) . X ( "li" ) . show ( ) ) ; a . show ( ) ; Y . Kb ( ) } ) ; $ ( "#layer" ) . L ( "click" , function ( ) { a . J ( ) ; $ ( "#edit_ticket" ) . J ( ) ; $ ( "#edit_seat" ) . J ( ) ; Y . na ( ) } ) ; a . L ( "click" , function ( a ) { a . stopPropagation ( ) ;
return ! 1 } ) ; $ ( '[data-fn="edit_close"]' ) . L ( "click" , function ( ) { a . J ( ) ; Y . na ( ) } ) ; $ ( '[data-fn="remove"]' ) . L ( "click" , function ( ) { "2" == Y . la . D ( "data-type" ) ? Y . la . remove ( ) : ( $ ( '#passenger_list [data-key="' + Y . editKey + '"]' ) . remove ( ) , $ ( '#passengers [value="' + Y . editKey + '"]' ) . O ( "checked" , ! 1 ) ) ; delete Y . Kd [ Y . editKey ] ; a . J ( ) ; Y . na ( ) } ) ; $ ( '[data-fn="children"]' ) . L ( "click" , function ( ) { 4 < $ ( "#passenger_list li" ) . length ? K ( "\u8054\u7cfb\u4eba\u6700\u591a\u53ea\u80fd\u9009\u62e9\u4e94\u4e2a" ) : Y . Oc ( Y . pb , Y . la ) ; a . J ( ) ; Y . na ( ) } ) ; $ ( '[data-fn="seat"]' ) . L ( "click" ,
function ( ) { a . J ( ) ; Y . na ( ) ; Y . Yd ( ) } ) ; $ ( "#edit_seat ul a" ) . L ( "click" , function ( ) { var a = $ ( this ) . D ( "data-id" ) , c = Y . T . ticketMap [ a ] ; Y . la . D ( "data-seat" , a ) ; $ ( ".seat" , Y . la ) . C ( c . name + " " + c . price / 10 + "\u5143" ) ; $ ( "#edit_seat" ) . J ( ) ; Y . na ( ) } ) ; $ ( '[data-fn="ticket"]' ) . L ( "click" , function ( ) { a . J ( ) ; Y . na ( ) ; Y . Zd ( ) } ) ; $ ( "#edit_ticket a" ) . L ( "click" , function ( ) { var a = $ ( this ) . D ( "data-id" ) , c = $ ( this ) . C ( ) ; Y . la . D ( "data-type" , a ) ; $ ( ".ticket" , Y . la ) . C ( c ) ; $ ( "#edit_ticket" ) . J ( ) ; Y . na ( ) } ) ; $ ( "#ordersubmit" ) . H ( "click" , function ( ) { var a = [ ] ; if ( 0 ==
$ ( "#passenger_list li" ) . length ) return K ( "\u8bf7\u6dfb\u52a0\u8054\u7cfb\u4eba" ) , ! 1 ; $ ( "#passenger_list li" ) . B ( function ( c ) { a [ c ] = { } ; var d = Y . ya [ $ ( this ) . D ( "data-key" ) ] ; a [ c ] . seat = $ ( this ) . D ( "data-seat" ) ; a [ c ] . passenger _type = $ ( this ) . D ( "data-type" ) ; a [ c ] . passenger _id _type _code = d . passenger _id _type _code ; a [ c ] . passenger _id _no = d . passenger _id _no ; a [ c ] . mobile _no = d . mobile _no ; a [ c ] . passenger _name = d . passenger _name } ) ; Y . submit ( a , Y . T , ! 1 ) } ) ; $ ( '#code_layer .public_btns a[data-val="sure"]' ) . L ( "click" , function ( ) { Y . be ( ) } ) ; $ ( '#code_layer .public_btns a[data-val="cancel"]' ) . L ( "click" ,
function ( ) { $ ( "#code_layer" ) . J ( ) } ) } , Yd : function ( ) { for ( var a = "" , b , c = 0 , d = Y . T . ticketMapSort . length ; c < d ; c ++ ) b = Y . T . ticketMapSort [ c ] , a += '<li><a href="javascript:;" data-id="' + b . code + '"><span class="pull_right text_gray"><span class="text_warning">' + b . count + '</span> \u5f20</span><span class="form_label">' + b . name + '</span><span class="text_gray">' + b . price / 10 + "\u5143</span></a></li>" ; $ ( "#edit_seat ul" ) . C ( a ) ; $ ( "#edit_seat" ) . show ( ) ; Y . Kb ( ) } , Zd : function ( ) { for ( var a = Pa ( Y . ya [ Y . pb ] ) , b = "" , c = 0 , d = a . length ; c < d ; c ++ ) b +=
'<li><a href="javascript:;" data-id="' + a [ c ] . id + '">' + a [ c ] . name + "</a></li>" ; $ ( "#edit_ticket ul" ) . C ( b ) ; $ ( "#edit_ticket" ) . show ( ) ; Y . Kb ( ) } , K : null , submit : function ( a , b , c ) { var d = [ ] , e = [ ] ; c = c ? "0X00" : "ADULT" ; a . forEach ( function ( a ) { d . push ( a . Sf + ",1," + a . Hb + "," + a . Nd + "," + a . Md + "," + a . Ld + "," + a . rf + "," + ( b . Of ? "Y" : "N" ) ) ; "2" === a . Hb ? e . push ( " " ) : e . push ( a . Nd + "," + a . Md + "," + a . Ld + "," + a . Hb ) } ) ; d = d . join ( "_" ) ; e = e . join ( "_" ) + "_" ; Y . K = { secretStr : b . secureStr , train _date : b . date , train _date _full : ( new Date ( b . date ) ) . toString ( ) , train _no : b . id , tour _flag : b . resign ?
"gc" : "dc" , purpose _codes : c , query _from _station _name : b . from . name , fromStationTelecode : b . from . code , query _to _station _name : b . to . name , toStationTelecode : b . to . code , stationTrainCode : b . code , seatType : a [ 0 ] . seat , cancel _flag : 2 , bed _level _order _num : "000000000000000000000000000000" , _json _att : "" , passengerTicketStr : d , oldPassengerStr : e } ; Y . Da = Aa ( "\u6b63\u5728\u63d0\u4ea4\u8ba2\u5355" ) ; A . Oa ( { "leftTicketDTO.train_date" : Y . T . form _train _date , "leftTicketDTO.from_station" : Y . T . from . code , "leftTicketDTO.to_station" : Y . T . to . code , purpose _codes : Y . K . purpose _codes } ,
function ( a ) { if ( ! 0 == a . status && 200 == a . httpstatus && 0 < a . data . length ) { for ( var b = 0 ; b < a . data . length ; b ++ ) if ( a . data [ b ] . queryLeftNewDTO . station _train _code == Y . T . code ) { Y . T . secureStr = a . data [ b ] . secretStr ; Y . K . secretStr = a . data [ b ] . secretStr ; break } Y . Ub ( ) } } , function ( ) { Y . Ub ( ) } ) } , Ub : function ( ) { S . R ( "confirmPassenger/autoSubmitOrderRequest" , "json" , "secretStr=" + Y . K . secretStr + "&train_date=" + Y . K . train _date + "&tour_flag=" + Y . K . tour _flag + "&purpose_codes=" + Y . K . purpose _codes + "&query_from_station_name=" + Y . K . query _from _station _name +
"&query_to_station_name=" + Y . K . query _to _station _name + "&cancel_flag=" + Y . K . cancel _flag + "&bed_level_order_num=" + Y . K . bed _level _order _num + "&passengerTicketStr=" + Y . K . passengerTicketStr + "&oldPassengerStr=" + Y . K . oldPassengerStr , "leftTicket/init" ) . M ( function ( a ) { a . status && a . data ? a . data . Bd ? Y . ma ( "\u8bf7\u91cd\u65b0\u767b\u5f55" ) : a . data . hd ? Y . ma ( "\u65e0\u6cd5\u63d0\u4ea4\u8ba2\u5355\uff1a" + a . data . hd ) : ( a = a . data . result . split ( "#" ) , Y . K . key _check _isChange = a [ 1 ] , Y . K . leftTicketStr = a [ 2 ] , Y . K . train _location = a [ 0 ] , Y . K . async =
a [ 3 ] , Y . K . train _no = Y . K . train _no , Y . ad ( ) ) : ( M ( Y . Da ) , a . messages ? Y . ma ( a . messages [ 0 ] ) : Y . ma ( "12306\u8fd4\u56de\u4e86\u672a\u77e5\u7684\u72b6\u6001\u4fe1\u606f\uff0c\u8bf7\u5237\u65b0\u91cd\u8bd5\u3002" ) ) } ) . N ( function ( ) { Y . ma ( "12306\u4e0d\u7ed9\u529b\u5537\uff0c\u8bf7\u5c3d\u5feb\u91cd\u8bd5..." ) } ) } , ad : function ( ) { S . R ( "confirmPassenger/getQueueCountAsync" , null , { train _date : Y . K . train _date _full . toString ( ) , train _no : Y . K . train _no , stationTrainCode : Y . K . stationTrainCode , seatType : Y . K . seatType , fromStationTelecode : Y . K . fromStationTelecode ,
toStationTelecode : Y . K . toStationTelecode , leftTicket : Y . K . leftTicketStr , purpose _codes : Y . K . purpose _codes , _json _att : Y . K . _json _att } , "leftTicket/init" ) . M ( function ( a ) { a && a . status && a . data ? a . data . Bd ? Y . ma ( "\u767b\u5f55\u72b6\u6001\u5f02\u5e38\uff0c\u8bf7\u91cd\u65b0\u767b\u5f55\u3002" ) : "true" === a . data . Df ? Y . ma ( "\u6392\u961f\u4eba\u6570\u8fc7\u591a\uff0c\u4e0d\u5141\u8bb8\u63d0\u4ea4\u8ba2\u5355\u3002\u6392\u961f\u4eba\u6570=" + a . data . Le ) : ( M ( Y . Da ) , A . ab ( ) , $ ( "#code_layer" ) . show ( ) ) : Y . ma ( a . messages [ 0 ] || "\u672a\u77e5\u9519\u8bef" ) } ) . N ( function ( ) { M ( Y . Da ) ;
K ( { xf : "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." } ) } ) } , be : function ( ) { var a = { passengerTicketStr : Y . K . passengerTicketStr , oldPassengerStr : Y . K . oldPassengerStr , purpose _codes : Y . K . purpose _codes , key _check _isChange : Y . K . key _check _isChange , leftTicketStr : Y . K . leftTicketStr , train _location : Y . K . train _location , _json _att : Y . K . _json _att , randCode : $ ( "#randcode" ) . A ( ) } ; S . R ( "confirmPassenger/confirmSingleForQueueAsys" , null , a , "leftTicket/init" ) . M ( function ( a ) { M ( Y . Da ) ;
a && a . status && a . data ? a . data . isRelogin ? K ( "\u767b\u5f55\u72b6\u6001\u5f02\u5e38\uff0c\u8bf7\u91cd\u65b0\u767b\u5f55\u3002" ) : "true" === a . data . op _2 ? K ( "\u6392\u961f\u4eba\u6570\u8fc7\u591a\uff0c\u4e0d\u5141\u8bb8\u63d0\u4ea4\u8ba2\u5355\u3002\u6392\u961f\u4eba\u6570=" + a . data . countT ) : a . data && ! a . data . submitStatus ? K ( a . data . errMsg || "\u672a\u77e5\u9519\u8bef" ) : ( K ( "\u8ba2\u7968\u6210\u529f" , function ( ) { window . location . href = "no_complete_order.html" } ) , $ ( "#code_layer" ) . J ( ) ) : K ( a . messages [ 0 ] || "\u672a\u77e5\u9519\u8bef" ) } ) . N ( function ( ) { M ( Y . Da ) ;
K ( "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." ) } ) } , ma : function ( a ) { M ( Y . Da ) ; - 1 != a . indexOf ( "\u60a8\u8fd8\u6709\u672a\u5904\u7406\u7684\u8ba2\u5355" ) ? K ( '\u60a8\u8fd8\u6709\u672a\u5904\u7406\u7684\u8ba2\u5355\uff0c\u8bf7\u60a8\u5230<a href="no_complete_order.html">[\u672a\u5b8c\u6210\u8ba2\u5355]</a>\u8fdb\u884c\u5904\u7406!' , function ( ) { window . location . href = "no_complete_order.html" } ) : K ( a ) } } , nc = "" , oc = "" , pc = null , qc = "" ;
function rc ( ) { 0 != $ ( "#no_complete_page" ) . length && ( sa ( sc ) , tc ( ) , $ ( "[data-no]" ) . L ( "click" , function ( ) { qc = $ ( this ) . D ( "data-no" ) ; N ( "banks" ) } ) , $ ( '[data-fn="close_bank"]' ) . L ( "click" , function ( ) { O ( ) } ) , $ ( "#banks [data-bank]" ) . L ( "click" , function ( ) { oc = $ ( this ) . D ( "data-bank" ) ; pc = Aa ( "\u6b63\u5728\u52a0\u8f7d" ) ; uc ( ) } ) ) }
function sc ( ) { S . get ( "queryOrder/queryMyOrderNoComplete" , "json" , null , "queryOrder/initNoComplete" ) . M ( function ( a ) { if ( a . status && a . data && a . data . orderDBList && 0 < a . data . orderDBList . length ) { a = a . data . orderDBList ; var b = "" , c = 0 ; console . log ( a ) ; for ( var d = 0 , e = a . length ; d < e ; d ++ ) { for ( var b = b + ( '<div class="orders_title">\u8ba2\u5355\u53f7\uff1a' + a [ d ] . sequence _no + "</div>" ) , b = b + '<div class="order_tickets">' , c = ( new Date ( a [ d ] . tickets [ 0 ] . pay _limit _time . replace ( /\-/gi , "/" ) ) ) . getTime ( ) , f = 0 ; f < a [ d ] . tickets . length ; f ++ ) b += '<div class="ticket">' ,
b += '<div class="ticket_title"><span class="pull_right">K2341</span>' + ( new Date ( a [ d ] . start _train _date _page . replace ( /\-/gi , "/" ) ) ) . format ( "yyyy-M-d" ) + " " + ( new Date ( a [ d ] . start _train _date _page . replace ( /\-/gi , "/" ) ) ) . aa ( 3 ) + "</div>" , b += '<div class="stations_info">' , b += '<div class="station_info"><strong>' + a [ d ] . from _station _name _page [ 0 ] + "</strong>" + a [ d ] . start _time _page + "</div>" , b += '<div class="station_info"><strong>' + a [ d ] . to _station _name _page [ 0 ] + "</strong>" + a [ d ] . arrive _time _page + "</div>" , b += "</div>" , b += '<div class="ticket_passenger">' ,
b += '<strong class="text_lg">' + a [ d ] . tickets [ f ] . passengerDTO . passenger _name + "</strong>" , b += '<span class="text_gray">' + a [ d ] . tickets [ f ] . passengerDTO . passenger _id _no + "</span>" , b += "</div>" , b += '<div class="ticket_info"><span class="pull_right">' + a [ d ] . tickets [ f ] . str _ticket _price _page + "\u5143</span>" , b += a [ d ] . tickets [ f ] . ticket _type _name , b += " " + a [ d ] . tickets [ f ] . seat _type _name , b += " " + a [ d ] . tickets [ f ] . coach _name + "\u8f66" , b += a [ d ] . tickets [ f ] . seat _name , b += "</div>" , b += "</div>" ; b += "</div>" ; b += '<div class="order_pay_info">' ;
b += '<p>\u5e2d\u4f4d\u5df2\u6210\u529f\u9501\u5b9a\uff0c\u8bf7\u60a8\u5728<strong class="pay_time" data-limittime="' + c + '" data-orderno="' + a [ d ] . sequence _no + '"></strong>\u5185\u8fdb\u884c\u7f51\u4e0a\u652f\u4ed8\uff0c\u5426\u5219\u5e2d\u4f4d\u5c06\u81ea\u52a8\u91ca\u653e\u7ed9\u5176\u4ed6\u65c5\u5ba2\u3002</p>' ; b += '<div class="pay_info clearfix"><a href="javascript:;" class="btn btn_success pull_right" data-no="' + a [ d ] . sequence _no + '">\u7acb\u5373\u652f\u4ed8</a><span class="pay_money">' + a [ d ] . ticket _total _price _page +
"\u5143</span></div>" ; b += "</div>" } $ ( "#orders" ) . C ( b ) ; vc ( ) } } ) . N ( function ( a , b ) { console . log ( a , b ) } ) } function tc ( ) { S . R ( "queryOrder/initNoComplete" , "html" , null , "payOrder/init" ) . M ( function ( a ) { a . match ( /\S+\s+globalRepeatSubmitToken\s+=\s+\S+/ ) ; eval ( a . match ( /\S+\s+globalRepeatSubmitToken\s+=\s+\S+/ ) [ 0 ] ) ; globalRepeatSubmitToken && ( nc = globalRepeatSubmitToken ) } ) . N ( function ( ) { K ( "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." ) } ) }
function vc ( ) { $ ( "[data-limittime]" ) . B ( function ( a , b ) { var c = $ ( b ) , d = c . D ( "data-orderno" ) , e = ( new Date ( parseInt ( c . D ( "data-limittime" ) ) ) ) . getTime ( ) - ( new Date ) . getTime ( ) ; 27E5 < e ? ( c . X ( "p" ) . C ( "\u8ba2\u5355\u5df2\u8fc7\u671f" ) , $ ( '[data-no="' + d + '"' ) . C ( "\u8ba2\u5355\u5df2\u8fc7\u671f" ) . W ( "btn_gray" ) ) : ( d = parseInt ( e / 6E4 ) , e = parseInt ( e % 6E4 / 1E3 ) , 10 > d && ( d = "0" + d ) , 10 > e && ( e = "0" + e ) , c . C ( d + ":" + e ) ) } ) ; setTimeout ( vc , 1E3 ) }
function uc ( ) { var a = { sequence _no : qc , pay _flag : "pay" , _json _att : "" , REPEAT _SUBMIT _TOKEN : nc } ; $ ( "span" , pc ) . C ( "\u6b63\u5728\u83b7\u53d6\u652f\u4ed8\u4fe1\u606f" ) ; S . R ( "queryOrder/continuePayNoCompleteMyOrder" , "json" , a , "queryOrder/initNoComplete" ) . M ( function ( a ) { a . status && ( "Y" == a . data . Re ? K ( a . data . Qe ) : S . R ( "payOrder/paycheck" , "json" , { _json _att : "" } , "payOrder/init" ) . M ( function ( a ) { wc ( a . data . payForm ) } ) . N ( function ( ) { K ( "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." ) } ) ) } ) . N ( function ( ) { K ( "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." ) } ) }
function xc ( a ) { for ( var b = { } , c = /<input[\s\w\W]*?(name|value)="([\s\w\W]*?)"[\s\w\W]*?(name|value)=['"]([\s\w\W]*?)['"][\s\w\W]*?\/?>/g , d = null ; null != ( d = c . exec ( a ) ) ; ) "name" == d [ 1 ] ? b [ d [ 2 ] ] = d [ 4 ] : b [ d [ 4 ] ] = d [ 2 ] ; return b }
function wc ( a ) { a = { _json _att : "" , interfaceName : a . interfaceName , interfaceVersion : a . interfaceVersion , tranData : a . tranData , merSignMsg : a . merSignMsg , appId : a . appId , transType : a . transType } ; $ ( "span" , pc ) . C ( "\u6b63\u5728\u63d0\u4ea4\u652f\u4ed8\u8bf7\u6c42" ) ; S . R ( "https://epay.12306.cn/pay/payGateway" , "html" , a , "payOrder/init" ) . M ( function ( a ) { a = xc ( a ) ; a . Ce = oc ; S . R ( "https://epay.12306.cn/pay/webBusiness" , "html" , a , "https://epay.12306.cn/pay/payGateway" ) . M ( function ( a ) { xc ( a ) ; a = a . replace ( /[\n\t\r]/gi , "" ) . replace ( />\s+</gi ,
"><" ) . match ( /<form.*\/form>/gi ) ; 0 < a . length && ( $ ( "span" , pc ) . C ( "\u6b63\u5728\u5411\u94f6\u884c\u63d0\u4ea4\u652f\u4ed8\u8bf7\u6c42" ) , $ ( "#hideHtml" ) . C ( a [ 0 ] ) , setTimeout ( function ( ) { $ ( 'form[name="myform"]' ) . submit ( ) } , 1E3 ) ) } ) . N ( function ( ) { } ) } ) . N ( function ( ) { K ( "12306\u4e0d\u7ed9\u529b\u554a\uff0c\u5509\u3002\u51fa\u73b0\u7f51\u7edc\u9519\u8bef\u4e86\uff0c\u8bf7\u91cd\u8bd5.." ) } ) } var yc = null , zc = null ;
function Ac ( ) { 0 != $ ( "#remind_page" ) . length && ( ( Bc = JSON . parse ( S . bc ) ) ? ( sa ( Cc , Cc , Cc ) , yc = ka . sellTime , Ga ( Q ( new Date , 49 ) ) , Ya ( ) , P . La = Dc , Ja ( P ) , Ec ( ) , $ ( '.query_box [type="checkbox"]' ) . H ( "change" , function ( ) { setTimeout ( function ( ) { Fc ( ) } , 50 ) } ) , $ ( "#remind_form" ) . H ( "submit" , function ( ) { Gc ( ) ; return ! 1 } ) ) : K ( "\u8ba2\u9605\u529f\u80fd\u4ec5\u8bf7\u4f7f\u7528\u624b\u673a\u730e\u8c79\u6d4f\u89c8\u5668" , function ( ) { window . history . back ( ) } ) ) } function Cc ( ) { }
function Dc ( a ) { a = a . G . getTime ( ) ; a >= P . Ea . G . getTime ( ) && a <= P . fa . G . getTime ( ) && ( $ ( "#date_tip" ) . J ( ) , O ( ) , $ ( "#start_date" ) . C ( P . I . format ( Fa ) + " " + P . I . aa ( 3 ) ) , $ ( "#start_date_val" ) . A ( P . I . format ( "yyyy-MM-dd" ) ) ) }
function Ec ( ) { hb ( ) ; $ ( "#startStation" ) . H ( "click" , function ( ) { cb = Hc ; nb = Ic ; lb ( ) ; $ ( "#wrap" ) . J ( ) } ) ; $ ( "#endStation" ) . H ( "click" , function ( ) { cb = Jc ; nb = Ic ; lb ( ) ; $ ( "#wrap" ) . J ( ) } ) ; $ ( "#exchange" ) . H ( "click" , function ( ) { var a = $ ( "#startStationName" ) . A ( ) , b = $ ( "#startStationCode" ) . A ( ) , c = $ ( "#endStationName" ) . A ( ) , d = $ ( "#endStationCode" ) . A ( ) ; $ ( "#startStationName" ) . A ( c ) ; $ ( "#startStationCode" ) . A ( d ) ; $ ( "#endStationName" ) . A ( a ) ; $ ( "#endStationCode" ) . A ( b ) ; a ? $ ( "#endStation" ) . C ( a ) : $ ( "#endStation" ) . C ( "\u5230\u8fbe\u7ad9" ) ; c ? $ ( "#startStation" ) . C ( c ) :
$ ( "#startStation" ) . C ( "\u51fa\u53d1\u7ad9" ) ; Kc ( ) } ) } function Hc ( a , b ) { $ ( "#startStation" ) . C ( a ) ; $ ( "#startStationName" ) . A ( a ) ; $ ( "#startStationCode" ) . A ( b ) ; mb ( ) ; $ ( "#wrap" ) . show ( ) ; Kc ( ) } function Jc ( a , b ) { $ ( "#endStation" ) . C ( a ) ; $ ( "#endStationName" ) . A ( a ) ; $ ( "#endStationCode" ) . A ( b ) ; mb ( ) ; $ ( "#wrap" ) . show ( ) ; Kc ( ) } function Kc ( ) { Fc ( ) ; 0 < $ ( '.station [value=""]' ) . length || Nc ( ) } function Ic ( ) { $ ( "#wrap" ) . show ( ) } var Oc = { } ;
function Nc ( ) { var a = Q ( new Date ( $ ( "#start_date_val" ) . A ( ) ) , - 30 ) . format ( "yyyy-MM-dd" ) , b = $ ( "#startStationCode" ) . A ( ) , c = $ ( "#endStationCode" ) . A ( ) , d = b + c + a + "ADULT" , a = { "leftTicketDTO.train_date" : a , "leftTicketDTO.from_station" : b , "leftTicketDTO.to_station" : c , purpose _codes : "ADULT" } ; b != c && ( Oc [ d ] ? Pc ( Oc [ d ] ) : A . Oa ( a , function ( a ) { ! 0 == a . status && 200 == a . httpstatus && 0 < a . data . length && ( Oc [ d ] = a . data , Pc ( a . data ) ) } ) ) }
function Pc ( a ) { $ ( '.query_box [type="checkbox"]' ) . D ( "disabled" , "disabled" ) . O ( "checked" , ! 1 ) ; for ( var b = 0 , c = a . length ; b < c ; b ++ ) { if ( 2 < $ ( '.query_box [type="checkbox"]:checked' ) . length ) { $ ( '.query_box [value="all"]' ) . Pa ( "disabled" ) . O ( "checked" , ! 0 ) ; break } switch ( a [ b ] . queryLeftNewDTO . station _train _code [ 0 ] ) { case "G" : $ ( '.query_box [value="1"]' ) . Pa ( "disabled" ) . O ( "checked" , ! 0 ) ; break ; case "D" : case "C" : $ ( '.query_box [value="2"]' ) . Pa ( "disabled" ) . O ( "checked" , ! 0 ) ; break ; default : $ ( '.query_box [value="3"]' ) . Pa ( "disabled" ) . O ( "checked" ,
! 0 ) } } Fc ( ) } function Fc ( ) { 0 == $ ( '.station [value=""]' ) . length && 0 < $ ( '[name="train_type"]:checked' ) . length && $ ( "#startStationCode" ) . A ( ) != $ ( "#endStationCode" ) . A ( ) ? $ ( "#remind_btn" ) . Pa ( "disabled" ) . $ ( "btn_gray" ) : $ ( "#remind_btn" ) . D ( "disabled" , "disabled" ) . W ( "btn_gray" ) }
function Gc ( ) { zc = Aa ( "\u6b63\u5728\u9884\u5b9a" ) ; var a = $ ( '.query_box [type="checkbox"]:checked' ) , b = "" , c = { device _id : Bc . did , device _type : Bc . device _type , fromCode : $ ( "#startStationCode" ) . A ( ) , fromName : $ ( "#startStationName" ) . A ( ) , toCode : $ ( "#endStationCode" ) . A ( ) , toName : $ ( "#endStationName" ) . A ( ) , date : $ ( "#start_date_val" ) . A ( ) , tasks : [ ] } , d = c . date . replace ( /\-/g , "/" ) , e = new Date ( d ) , f = [ ] ; a . B ( function ( a , b ) { var e = $ ( b ) . A ( ) , n = yc [ c . fromCode ] ; if ( "all" != e ) switch ( n || ( n = yc [ c . fromName ] ) , n = n . split ( "/" ) , e ) { case "1" : f . push ( "14:00" ) ;
c . tasks . push ( { time : ( new Date ( d + " 14:00" ) ) . getTime ( ) , left : 15 , type : 1 } ) ; c . tasks . push ( { time : ( new Date ( d + " 14:00" ) ) . getTime ( ) , left : 60 , type : 1 } ) ; break ; case "2" : f . push ( "11:00" ) ; c . tasks . push ( { time : ( new Date ( d + " 11:00" ) ) . getTime ( ) , left : 15 , type : 2 } ) ; c . tasks . push ( { time : ( new Date ( d + " 11:00" ) ) . getTime ( ) , left : 60 , type : 2 } ) ; break ; case "3" : for ( e = 0 ; e < n . length ; e ++ ) f . push ( n [ e ] ) , c . tasks . push ( { time : ( new Date ( d + " " + n [ e ] ) ) . getTime ( ) , left : 15 , type : 3 } ) , c . tasks . push ( { time : ( new Date ( d + " " + n [ e ] ) ) . getTime ( ) , left : 60 , type : 3 } ) } } ) ; f . sort ( function ( a ,
b ) { return parseInt ( a . split ( ":" ) [ 0 ] ) > parseInt ( b . split ( ":" ) [ 0 ] ) ? 1 : - 1 } ) ; f = f . join ( "," ) ; b = "\u60a8\u9884\u7ea6\u7684" + e . format ( "YYYY\u5e74M\u6708d\u65e5" ) + "\uff0c" + c . fromName + "\u81f3" + c . toName + "\u7684\u706b\u8f66\u7968\uff0c\u5c06\u4e8e" + Q ( e , - 19 ) . format ( "YYYY\u5e74M\u6708d\u65e5" ) + f + "\u5f00\u552e\u3002\u552e\u7968\u5f00\u59cb\u524d\u6211\u4eec\u4f1a\u63d0\u9192\u60a8\u3002\u795d\u60a8\u62a2\u7968\u6210\u529f\uff01" ; $ . U ( { type : "POST" , url : "http://12306.liebao.cn/index.php?r=Api/SentRss" , data : { data : JSON . stringify ( c ) } ,
dataType : "json" , ia : function ( a ) { M ( zc ) ; 0 == a . resCode ? K ( b ) : K ( a . message ) } , error : function ( ) { M ( zc ) ; K ( "\u9884\u5b9a\u5931\u8d25" ) } } ) } var Bc ;
function Qc ( ) { 0 != $ ( "#myremind_page" ) . length && ( ( Rc = JSON . parse ( S . bc ) ) ? ( Sc ( ) , $ ( "[data-ids]" ) . L ( "click" , function ( ) { var a = $ ( this ) , b = $ ( this ) . D ( "data-ids" ) ; Da ( "\u5220\u9664\u63d0\u9192\u540e\uff0c\u4f60\u5c06\u4e0d\u4f1a\u6536\u5230\u653e\u7968\u63d0\u9192\uff0c\u786e\u5b9a\u5220\u9664\u5417\uff1f" , function ( ) { Tc ( b , a . X ( "li" ) ) } ) } ) ) : K ( "\u8ba2\u9605\u529f\u80fd\u4ec5\u8bf7\u4f7f\u7528\u624b\u673a\u730e\u8c79\u6d4f\u89c8\u5668" , function ( ) { window . history . back ( ) } ) ) }
function Tc ( a , b ) { var c = Aa ( "\u6b63\u5728\u5220\u9664\u63d0\u9192" ) ; $ . U ( { type : "POST" , url : "http://12306.liebao.cn/index.php?r=Api/UpdateRss" , data : { device _id : Rc . did , id _list : a } , ia : function ( ) { $ ( ".loading" , c ) . C ( "\u5220\u9664\u63d0\u9192\u6210\u529f" ) ; b . remove ( ) ; setTimeout ( function ( ) { M ( c ) } , 1E3 ) } , error : function ( ) { M ( c ) ; K ( "\u5220\u9664\u63d0\u9192\u5931\u8d25" ) } } ) }
function Sc ( ) { $ . U ( { type : "POST" , url : "http://12306.liebao.cn/index.php?r=Api/GetRss" , data : { device _id : Rc . did } , dataType : "json" , ia : function ( a ) { if ( 0 == a . resCode && 0 < a . data . length ) { Uc ( a . data ) ; a = "" ; for ( var b = { } , c = 0 , d = Vc . length ; c < d ; c ++ ) b = Vc [ c ] , a += "<li>" , a += '<div class="mr_title"><a class="pull_right" data-ids="' + b . id _list . join ( "," ) + '"><i class="icon_remove"></i></a><i class="icon_clock"></i>' + ( new Date ( b . date . replace ( /\-/gi , "/" ) ) ) . format ( "M\u6708d\u65e5" ) + "</div>" , a += '<div class="stations_info"><div class="station_info"><strong>' +
b . fromName + '</strong></div><div class="station_info"><strong>' + b . toName + "</strong></div></div>" , a += '<div class="mr_text">\u8d77\u552e\u65f6\u95f4\uff1a' + b . format _time _list . join ( "\u3001" ) + "</div>" , a += "</li>" ; $ ( "#myremind_list" ) . C ( a ) ; $ ( ".list_tip" ) . J ( ) ; $ ( "#myremind_list" ) . show ( ) } else K ( a . message ) } , error : function ( ) { K ( "\u83b7\u53d6\u4fe1\u606f\u5931\u8d25" ) } } ) } var Z = { } , Vc = [ ] ;
function Uc ( a ) { for ( var b = "" , c = 0 ; c < a . length ; c ++ ) 1 != a [ c ] . ispush && ( b = a [ c ] . fromCode + a [ c ] . toCode + a [ c ] . date , Z [ b ] || ( Z [ b ] = a [ c ] , Z [ b ] . id _list = [ ] , Z [ b ] . time _list = [ ] , Z [ b ] . format _time _list = [ ] ) , - 1 == Z [ b ] . id _list . indexOf ( a [ c ] . id ) && Z [ b ] . id _list . push ( a [ c ] . id ) , - 1 == Z [ b ] . time _list . indexOf ( 1E3 * a [ c ] . tasks _time ) && Z [ b ] . time _list . push ( 1E3 * a [ c ] . tasks _time ) ) ; for ( b in Z ) { Z [ b ] . time _list . sort ( function ( a , b ) { return a > b ? 1 : - 1 } ) ; for ( c = 0 ; c < Z [ b ] . time _list . length ; c ++ ) Z [ b ] . format _time _list . push ( ( new Date ( Z [ b ] . time _list [ c ] ) ) . toString ( ) . match ( /\d{2}:\d{2}/ ) [ 0 ] ) ;
Vc . push ( Z [ b ] ) } Vc . sort ( function ( a , b ) { return ( new Date ( a . date . replace ( /\-/gi , "/" ) ) ) . getTime ( ) > ( new Date ( b . date . replace ( /\-/gi , "/" ) ) ) . getTime ( ) ? 1 : - 1 } ) }
var Rc , R = R || function ( ) { var a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" . split ( "" ) , b = ! function ( ) { var b = { } ; $ . B ( a , function ( a , e ) { b [ e ] = a } ) ; return b } ( ) ; return { qb : function ( b ) { for ( var d = [ ] , e = b . length , f , h = 0 ; h < e ; ) f = b [ h ] << 16 | b [ h + 1 ] << 8 | b [ h + 2 ] , d . push ( a [ f >> 18 ] , a [ f >> 12 & 63 ] , a [ f >> 6 & 63 ] , a [ f & 63 ] ) , h += 3 ; 1 == e % 3 ? ( d . pop ( ) , d . pop ( ) , d . push ( "=" , "=" ) ) : ( d . pop ( ) , d . push ( "=" ) ) ; return d . join ( "" ) } , dd : function ( a ) { var d = [ ] ; a = a . split ( "" ) ; var e = a . length , f , h = 0 ; if ( e % 4 ) return null ; for ( ; h < e ; ) f = b [ a [ h ] ] << 18 | b [ a [ h + 1 ] ] <<
12 | b [ a [ h + 2 ] ] << 6 | b [ a [ h + 3 ] ] , d . push ( f >> 16 , f >> 8 & 255 , f & 255 ) , h += 4 ; for ( ; "=" == a [ -- e ] ; ) d . pop ( ) ; return d } , rb : function ( a ) { a = new DataView ( a ) ; for ( var b = a . byteLength , e = [ ] , f = 0 ; f < b ; f ++ ) e . push ( a . getUint8 ( f ) ) ; return R . qb ( e ) } , cb : function ( a , b ) { return "data:" + b + ";base64," + a } } } ( ) , S = function ( ) { var a = $ . ga ( ) , b = "undefined" !== typeof _ _TicketJavaScriptObject _ _ , c = "undefined" != typeof window . Pb || "undefined" != typeof window . Ua , d = "undefined" != typeof window . Pb || "undefined" !== typeof window . Bb , e = window . re || window . Pb , f = document . body . dataset . mobileSupportInitialized ||
! 1 ; Object . defineProperties ( a , { isAndroid : { get : function ( ) { return na } } , isIos : { get : function ( ) { return c } } , isIosOld : { get : function ( ) { return ! d } } , device _info : { get : function ( ) { return e ? e . af ( ) : null } } } ) ; a . Id = function ( a ) { e ? e . Id ( a ) : window . open ( a ) } ; a . yc = function ( ) { [ ] . slice . call ( arguments ) ; e && e . yc ( ) } ; a . xc = function ( ) { [ ] . slice . call ( arguments ) ; e && e . xc ( ) } ; a . zc = function ( ) { [ ] . slice . call ( arguments ) ; e ? e . zc ( ) : window . Bb && window . Bb . le ? window . Bb . le ( 5E3 ) : window . Ua && window . Ua . vd && window . Ua . vd ( "\u5237\u7968\u6210\u529f\uff0c\u8bf7\u5c3d\u5feb\u8ba2\u7968" ,
"" ) } ; var h = { } , l = 0 , q = function ( ) { return { Wa : function ( a ) { return ":" === a [ 4 ] || ":" === a [ 5 ] ? a : "https://kyfw.12306.cn/otn/" + a } , Ma : function ( a , b ) { b = b || { } ; b . Origin = /(https?:\/\/[^\/]+\/)/i . exec ( a ) [ 1 ] ; if ( c ) { var d = { } ; $ . B ( b , function ( a , b ) { d [ "Fish-" + a ] = b } ) ; b = d } return b } } } ( ) , n = function ( ) { function a ( b , c , d , f , n , s ) { var g = new $ . ga ; f = f || "" ; "string" !== typeof f && ( f = $ . rc ( f ) ) ; "GET" == b && "image" != ( d || "json" ) && ( c = c + "?" + f ) ; s = s || { } ; n && ( s = $ . extend ( { } , s , { Ta : n } ) ) ; g . Ib = d || "json" ; g . ta = { id : ++ l , url : c , method : b , Hf : f , bb : n , headers : s || { } , Ge : "fishXhrLoadCallback" ,
Nf : "UTF-8" , Pf : "image" === g . Ib ? "image" : "text" } ; h [ g . ta . id ] = g ; e . Tf ( JSON . stringify ( g . ta ) ) ; return g . ca ( ) } window . Ye = function ( a ) { "string" === typeof a && ( a = JSON . parse ( a ) ) ; var b = h [ a . id ] ; if ( b ) { if ( "json" === b . Ib ) try { a . result = JSON . parse ( a . result ) } catch ( c ) { a . ia = ! 1 } else "image" === b . Ib && ( a . result = R . cb ( a . result , "png" ) ) ; delete h [ a . id ] ; a . ia ? b . resolve ( a . result , { headers : a . headers , Q : a . Q , Y : a . Y , id : a . id } ) : b . reject ( a . result , { headers : a . headers , Q : a . Q , Y : a . Y , id : a . id } ) } } ; return { U : a , get : function ( ) { var b = [ ] . slice . call ( arguments ) ; b . unshift ( "GET" ) ;
return a . apply ( this , b ) } , R : function ( ) { var b = [ ] . slice . call ( arguments ) ; b . unshift ( "POST" ) ; return a . apply ( this , b ) } , Aa : function ( b , c ) { return a ( "GET" , b , "image" , null , c ) } } } ( ) , v = function ( ) { function a ( b , c ) { var d , e = new $ . ga , f = new window . XMLHttpRequest ; d = d || { } ; f . open ( "GET" , b , ! 0 ) ; $ . B ( d , function ( a , b ) { f . setRequestHeader ( "Fish-" + a , b ) } ) ; f . onreadystatechange = function ( ) { 4 === f . readyState && ( 200 !== f . status ? e . reject ( "\u52a0\u8f7d\u9a8c\u8bc1\u7801\u5931\u8d25\uff0c\u8bf7\u70b9\u51fb\u9a8c\u8bc1\u7801\u5237\u65b0" , { headers : f . getAllResponseHeaders ( ) ,
Q : f . Q , Y : f . statusText , id : 0 } ) : e . resolve ( R . cb ( R . rb ( f . response ) , "image/jpeg" ) , { headers : f . getAllResponseHeaders ( ) , Q : f . Q , Y : f . statusText , id : 0 } ) ) } ; f . responseType = "arraybuffer" ; f . setRequestHeader ( "Fish-Referer" , c || "" ) ; f . setRequestHeader ( "Fish-User-Agent" , "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" ) ; f . setRequestHeader ( "Fish-Origin" , /(https?:\/\/[^\/]+\/)/ . exec ( b ) [ 1 ] ) ; f . send ( null ) ; return e } function b ( a , c , d , e , f , g ) { var h = new $ . ga ; g = g || { } ; f && ( g = $ . extend ( { } , g , { Ta : f } ) ) ; var l = { } ; $ . B ( g , function ( a ,
b ) { l [ "Fish-" + a ] = b } ) ; $ . U ( { url : c , data : e , timeout : 12E4 , type : a , dataType : d , bb : f , headers : l } ) . M ( function ( a , b , c ) { h . resolve ( a , { headers : c . getAllResponseHeaders ( ) , Q : c . Q , Y : c . statusText , id : 0 } ) } ) . N ( function ( a ) { h . reject ( result , { headers : a . getAllResponseHeaders ( ) , Q : a . Q , Y : a . statusText , id : 0 } ) } ) ; return h } return { U : b , get : function ( ) { var a = [ ] . slice . call ( arguments ) ; a . unshift ( "GET" ) ; return b . apply ( this , a ) } , R : function ( ) { var a = [ ] . slice . call ( arguments ) ; a . unshift ( "POST" ) ; return b . apply ( this , a ) } , Aa : function ( b , c ) { return a ( b , c ) } } } ( ) ,
p = function ( ) { function b ( a , c ) { var d , e = new $ . ga ; d = d || { } ; c && ( d = $ . extend ( { } , d , { Ta : c } ) ) ; d = new CustomEvent ( "ajaxLoadVerifyCode" , { detail : { method : "GET" , url : a , bb : c , index : ++ l , headers : d , data : null } , cancelable : ! 0 } ) ; document . dispatchEvent ( d ) ? ( document . dispatchEvent ( new CustomEvent ( "requestSupportError" ) ) , e . reject ( "\u5e73\u53f0\u9519\u8bef" ) ) : h [ d . detail . index ] = { M : function ( ) { e . resolve ( this . url , { headers : this . headers , Q : this . status , Y : this . statusText , id : this . index } ) } , N : function ( ) { e . reject ( this . text , { headers : this . headers ,
Q : this . status , Y : this . statusText , id : this . index } ) } } ; return e } function c ( b , d , e , f , n , g ) { var p = new $ . ga ; g = g || { } ; n && ( g = $ . extend ( { } , g , { Ta : n } ) ) ; b = new CustomEvent ( "ajaxproxy" , { detail : { data : { url : d , data : f , timeout : 12E4 , type : b , dataType : e , bb : n , headers : g } , index : ++ l } , cancelable : ! 0 } ) ; document . dispatchEvent ( b ) ? ( document . dispatchEvent ( new CustomEvent ( "requestSupportError" ) ) , a . reject ( "\u5e73\u53f0\u9519\u8bef" ) ) : h [ b . detail . index ] = { M : function ( a ) { p . resolve ( a , { headers : this . headers , Q : this . status , Y : this . statusText , id : this . index } ) } ,
N : function ( ) { p . reject ( this . text , { headers : this . headers , Q : this . status , Y : this . statusText , id : this . index } ) } } ; return p } document . addEventListener ( "ajaxproxyfinished" , function ( a ) { a = a . detail ; if ( h [ a . index ] ) { var b = h [ a . index ] ; delete h [ a . index ] ; 404 === a . status && document . dispatchEvent ( new CustomEvent ( "networkOrCertificationError" ) ) ; a . ia ? b . M . call ( a || window , a . Hd ) : b . N . call ( a || window , a . Hd ) } } ) ; return { U : c , get : function ( ) { var a = [ ] . slice . call ( arguments ) ; a . unshift ( "GET" ) ; return c . apply ( this , a ) } , R : function ( ) { var a = [ ] . slice . call ( arguments ) ;
a . unshift ( "POST" ) ; return c . apply ( this , a ) } , Aa : function ( a , c ) { return b ( a , c ) } } } ( ) , H = function ( ) { function a ( b , c ) { var d , e = new $ . ga , f = new window . XMLHttpRequest ; d = d || { } ; d . RawUrl = b ; d . Origin = /(https?:\/\/[^\/]+\/)/ . exec ( b ) [ 1 ] ; d [ "User-Agent" ] = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" ; d . Referer = c || "" ; f . open ( "GET" , "/proxy.php" , ! 0 ) ; $ . B ( d , function ( a , b ) { f . setRequestHeader ( "Fish-" + a , b ) } ) ; f . onreadystatechange = function ( ) { 4 === f . readyState && ( 200 !== f . status ? e . reject ( "\u52a0\u8f7d\u9a8c\u8bc1\u7801\u5931\u8d25\uff0c\u8bf7\u70b9\u51fb\u9a8c\u8bc1\u7801\u5237\u65b0" ,
{ headers : f . getAllResponseHeaders ( ) , Q : f . Q , Y : f . statusText , id : 0 } ) : e . resolve ( R . cb ( R . rb ( f . response ) , "image/jpeg" ) , { headers : f . getAllResponseHeaders ( ) , Q : f . Q , Y : f . statusText , id : 0 } ) ) } ; f . responseType = "arraybuffer" ; f . send ( null ) ; return e } function b ( a , c , d , e , f , g ) { var h = new $ . ga ; g = g || { } ; f && ( g = $ . extend ( { } , g , { Ta : f } ) ) ; g [ "Fish-RawUrl" ] = c ; $ . U ( { url : "/proxy.php" , data : e , timeout : 12E4 , type : a , dataType : d , bb : f , headers : g } ) . M ( function ( a , b ) { h . resolve ( a , { headers : b . getAllResponseHeaders ( ) , Q : b . Q , Y : b . statusText , id : 0 } ) } ) . N ( function ( ) { h . reject ( xhr . responseText ,
{ headers : xhr . getAllResponseHeaders ( ) , Q : xhr . Q , Y : xhr . statusText , id : 0 } ) } ) ; return h } return { U : b , get : function ( ) { var a = [ ] . slice . call ( arguments ) ; a . unshift ( "GET" ) ; return b . apply ( this , a ) } , R : function ( ) { var a = [ ] . slice . call ( arguments ) ; a . unshift ( "POST" ) ; return b . apply ( this , a ) } , Aa : function ( b , c ) { return a ( b , c ) } } } ( ) ; a . fc = function ( ) { return b ? n : c ? v : f ? p : H } ; a . U = function ( ) { var b = [ ] . slice . call ( arguments ) ; b [ 1 ] && ( b [ 1 ] = q . Wa ( b [ 1 ] ) ) ; b [ 4 ] && ( b [ 4 ] = q . Wa ( b [ 4 ] ) ) ; b [ 5 ] && ( b [ 5 ] = q . Ma ( b [ 5 ] ) ) ; return a . fc ( ) . U . apply ( this , b ) } ; a . get = function ( ) { var b =
[ ] . slice . call ( arguments ) ; b . unshift ( "GET" ) ; return a . U . apply ( this , b ) } ; a . R = function ( ) { var b = [ ] . slice . call ( arguments ) ; b . unshift ( "POST" ) ; return a . U . apply ( this , b ) } ; a . Aa = function ( ) { var b = [ ] . slice . call ( arguments ) ; b [ 1 ] && ( b [ 1 ] = q . Wa ( b [ 1 ] ) ) ; b [ 3 ] && ( b [ 3 ] = q . Wa ( b [ 3 ] ) ) ; b [ 5 ] && ( b [ 4 ] = q . Ma ( b [ 4 ] ) ) ; return a . fc ( ) . Aa . apply ( this , b ) } ; $ ( function ( ) { if ( c || f || na ) a . resolve ( ) ; else { var b = setTimeout ( function ( ) { a . resolve ( ) } , 500 ) ; document . addEventListener ( "mobileSupportInitialized" , function ( ) { clearTimeout ( b ) ; f = ! 0 ; a . resolve ( ) } ) } } ) ; return a } ( ) ;
S . M ( function ( ) { try { ja = S . bc , ja = "string" == typeof ja ? JSON . parse ( ja ) : ja } catch ( a ) { alert ( a ) } oa ( ) ; pb ( ) ; tb ( ) ; Kb ( ) ; Y . xb ( ) ; rc ( ) ; Qc ( ) ; Ac ( ) } ) ;