nl_tokens: Core PUSH functionality =======================
pl_tokens: function ( options ) { var key ; var data = { } ; var xhr = PUSH . xhr ; options . container = options . container || options . transition ? <mask> . querySelector ( '.content' ) : document . body ; for ( key in bars ) { options [ key ] = options [ key ] || document . querySelector ( bars [ key ] ) ; } if ( xhr && xhr . readyState < 4 ) { xhr . onreadystatechange = noop ; xhr . abort ( ) } xhr = new XMLHttpRequest ( ) ; xhr . open ( 'GET' , options . url , true ) ; xhr . setRequestHeader ( 'X-PUSH' , 'true' ) ; xhr . onreadystatechange = function ( ) { if ( options . _timeout ) clearTimeout ( options . _timeout ) ; if ( xhr . readyState == 4 ) xhr . status == 200 ? success ( xhr , options ) : failure ( options . url ) ; } ; if ( ! PUSH . id ) { cacheReplace ( { id : + new Date , url : window . location . href , title : document . title , timeout : options . timeout , transition : null } ) ; } if ( options . timeout ) { options . _timeout = setTimeout ( function ( ) { xhr . abort ( 'timeout' ) ; } , options . timeout ) ; } xhr . send ( ) ; if ( xhr . readyState && ! options . ignorePush ) cachePush ( ) ; }