1(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);throw new Error("Cannot find module '"+o+"'")}var f=n[o]={exports:{}};t[o][0].call(f.exports,function(e){var n=t[o][1][e];return s(n?n:e)},f,f.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ 2module.exports = (function() { 3 var api = { 4 page: function(url, title) { 5 title = title || ''; 6 7 ga('send', 'pageview', { 8 'page': url, 9 'title': title 10 }); 11 }, 12 social: function(network, action, target) { 13 ga('send', { 14 'hitType': 'social', 15 'socialNetwork': network, 16 'socialAction': action, 17 'socialTarget': target 18 }); 19 }, 20 event: function(category, action, label, value) { 21 value = value || 0; 22 ga('send', { 23 'hitType': 'event', 24 'eventCategory': category, 25 'eventAction': action, 26 'eventLabel': label, 27 'eventValue': value 28 }); 29 } 30 }; 31 32 api.init = function() { 33 34 }; 35 36 api.init(); 37 38 return api; 39})(); 40},{}],2:[function(require,module,exports){ 41module.exports = (function() { 42 var api = {}; 43 44 api.prepAnimatedBtn = function($btn) { 45 var $helper = $btn.find('.btn-helper').first(), 46 x = $helper.width(), 47 y = $helper.height() + 1, 48 halfX = x / 2, 49 hidingClip = 'rect(0, ' + halfX + 'px, ' + y + 'px, ' + halfX + 'px)', 50 showingClip = 'rect(0, ' + x + 'px, ' + y + 'px, 0)'; 51 $helper.css({clip: hidingClip}); 52 $btn.on('mouseenter focus', function() { 53 $helper.css({clip: showingClip}); 54 }).on('mouseleave blur', function() { 55 $helper.css({clip: hidingClip}); 56 }); 57 } 58 59 api.init = function() { 60 $('.btn').each(function() { 61 api.prepAnimatedBtn($(this)); 62 }); 63 } 64 65 api.init() 66 67 return api; 68})(); 69},{}],3:[function(require,module,exports){ 70var analytics = require('./analytics'); 71 72 73module.exports = (function() { 74 var api = {}; 75 76 api.clearForm = function () { 77 var $form = $('#contact'); 78 79 if ($form.length === 0) 80 return; 81 82 $form.find('#contact-name').val(''); 83 $form.find('#contact-email').val(''); 84 $form.find('#contact-message').val(''); 85 $form.find('#contact-submit').prop('disabled', false); 86 } 87 88 api.init = function() { 89 var $form = $('#contact'); 90 91 $form.find('.form-fields').css({ 92 'max-height': $form.height() + 200 93 }); 94 95 if ($form.length === 0) 96 return; 97 98 if(typeof grecaptcha == "object" && $('#contact-recaptcha').length) 99 { 100 grecaptcha.render('contact-recaptcha', { 101 'sitekey' : '6LdytwUTAAAAAPW3vjNF0Ny1xHw19lhRWdv9QV0m' 102 }); 103 } 104 105 106 $form.submit(function (e) { 107 e.preventDefault(); 108 109 analytics.event('form', 'submitting', 'contact-us-form'); 110 111 $form.find('#contact-submit').prop('disabled', true); 112 113 var data = { 114 wp_form_id: $form.find('#contact-form-id').val(), 115 contact_name: $form.find('#contact-name').val(), 116 contact_email: $form.find('#contact-email').val(), 117 contact_filter: $form.find('#contact-filter').val(), 118 contact_message: $form.find('#contact-message').val(), 119 'g-recaptcha-response': $form.find('#g-recaptcha-response').val(), 120 ajax: true 121 } 122 123 $.post('/', data).success(function (response) { 124 if (response.success == 'true') 125 { 126 $form.addClass('m-success'); 127 api.clearForm(); 128 analytics.event('form', 'submited', 'contact-us-form'); 129 } 130 else 131 { 132 alert('An error occured, Please try again later.'); 133 $form.find('#contact-submit').prop('disabled', false); 134 analytics.event('form', 'error', 'contact-us-form'); 135 } 136 137 }).fail(function () { 138 alert('An error occured, Please try again later.'); 139 $form.find('#contact-submit').prop('disabled', false); 140 analytics.event('form', 'error', 'contact-us-form'); 141 }); 142 143 return false;
144 }); 145 } 146 147 api.init(); 148 149 return api; 150})(); 151 152},{"./analytics":1}],4:[function(require,module,exports){ 153var analytics = require('./analytics'); 154 155module.exports = (function() { 156 var api = { 157 resizeDownloads: function(){ 158 var curmax = 0; 159 var curid = 0; 160 $('.downloads-list').each(function(){ 161 curmax = 0; 162 curid = $(this).attr('id'); 163 var items = $(this).find('li').each(function(){ 164 if($(this).outerHeight() > curmax) 165 { 166 curmax = $(this).outerHeight(); 167 } 168 }); 169 $('#' + curid + ' li').css({minHeight: curmax}); 170 }); 171 }, 172 init: function () { 173 $('.media-row').each(function(){ 174 if($(this).find('li').length > 4) 175 { 176 var id = $(this).attr('id'); 177 $('#' + id + '-more').fadeIn(); 178 } 179 }); 180 181 $(document).unbind('click.seeallmedia').on('click.seeallmedia', '.see-all', function(e){ 182 e.preventDefault(); 183 184 var mrow = $(this).data('mrow'); 185 186 if($(this).hasClass('active')) 187 { 188 $('#mrow-' + mrow).find('.over-4').fadeOut(); 189 $(this).removeClass('active').text("See All"); 190 } 191 else 192 { 193 var cpos = $(this).offset().top; 194 $('html,body').animate({scrollTop: cpos + 200}, 200, function(){ 195 var total = $('#mrow-' + mrow + ' .over-4').length; 196 $.each($('#mrow-' + mrow).find('.over-4'), function(i,v){ 197 setTimeout(function(){ 198 $(v).fadeIn(500); 199 }, i * 100); 200 }); 201 202 setTimeout(function(){ 203 api.resizeDownloads(); 204 }, total * 100); 205 }); 206 $(this).addClass('active').text("See Less"); 207 } 208 }); 209 210 $(document).unbind('click.downloadfilters').on('click.downloadfilters', '.download-filters', function(e){ 211 e.preventDefault(); 212 213 var id = $(this).data('id'); 214 215 $('html,body').animate({scrollTop: $('#' + id).offset().top - 50}, 200); 216 217 analytics.event('button', 'Download Filter', id); 218 219 }); 220 221 $(document).unbind('click.downloadloadmore').on('click.downloadloadmore', '.downloads-load-more a', function(e){ 222 e.preventDefault(); 223 224 var elem = $(this); 225 var cat = elem.data('cat'); 226 var index = elem.data('index'); 227 var parent = elem.parent(); 228 229 $.ajax({ 230 type : "post", 231 dataType : "html", 232 url : ajaxurl, 233 data : {action: "load_more_downloads", cat:cat, index:index} 234 }).always(function(data){ 235 parent.fadeOut(500, function(){ 236 parent.remove(); 237 $('#mrow-' + cat).append(data); 238 239 $.each($('#mrow-' + cat).find('.over-4'), function(i,v){ 240 setTimeout(function(){ 241 $(v).fadeIn(500); 242 }, i * 100); 243 }); 244 }); 245 }); 246 247 analytics.event('button', 'Load more downloads', 'Category: ' + cat); 248 249 }); 250 251 $(document).unbind('click.filedownload').on('click.filedownload', '.media-download .pdf', function(e){ 252 var url = $(this).attr('href'); 253 analytics.event('button', 'View Download File', url); 254 }); 255 256 $(document).unbind('click.gallerybox').on('click.gallerybox', '.gallery-box', function(e){ 257 var id = $(this).data('id'); 258 var name = $(this).data('name'); 259 $('#home-title').find('text').text(name); 260 $('.gallery-box').slideUp(); 261 $('#gallery-' + id).show(); 262 $('html,body').animate({scrollTop:0}, 500); 263 window.curgallery = id;
264 window.location.hash = name.toLowerCase().replace(' ', '-'); 265 setTimeout(api.resizeDownloads, 1000); 266 }); 267 268 $(document).unbind('click.closegallery').on('click.closegallery', '.close-gallery', function(e){ 269 $(this).parent().fadeOut(); 270 $('.gallery-box').slideDown(); 271 $('#home-title').find('text').text('Galleries'); 272 window.curgallery = null; 273 window.location.hash = ''; 274 }); 275 276 $(document).unbind('click.prevgallery').on('click.prevgallery', '.prev-gallery', function(e){ 277 $(this).parent().fadeOut(500, function(){ 278 var id = window.curgallery; 279 var nid = $('#gallery-' + id).prev().prev(); 280 var title = ''; 281 282 if($('#gallery-' + id).prev().prev().length === 0) 283 { 284 nid = $('.gallery-content').last().data('id'); 285 title = $('.gallery-content').last().data('name'); 286 } 287 else 288 { 289 nid = $('#gallery-' + id).prev().prev().data('id'); 290 title = $('#gallery-' + id).prev().prev().data('name'); 291 } 292 293 $('#gallery-' + nid).fadeIn(); 294 $('html,body').animate({scrollTop:0}, 500); 295 296 $('#home-title').find('text').text(title); 297 $('#mobile-title').text(title); 298 window.curgallery = nid; 299 window.location.hash = title.toLowerCase().replace(' ', '-'); 300 }); 301 $('.gallery-box').slideUp(); 302 303 }); 304 305 $(document).unbind('click.nextgallery').on('click.nextgallery', '.next-gallery', function(e){ 306 $(this).parent().fadeOut(500, function(){ 307 var id = window.curgallery; 308 var nid = $('#gallery-' + id).next(); 309 var title = ''; 310 311 if($('#gallery-' + id).next().length === 0) 312 { 313 nid = $('.gallery-content').first().data('id'); 314 title = $('.gallery-content').first().data('name'); 315 } 316 else 317 { 318 nid = $('#gallery-' + id).next().data('id'); 319 title = $('#gallery-' + id).next().data('name'); 320 } 321 322 $('#gallery-' + nid).fadeIn(); 323 $('html,body').animate({scrollTop:0}, 500); 324 325 $('#home-title').find('text').text(title); 326 $('#mobile-title').text(title); 327 window.curgallery = nid; 328 window.location.hash = title.toLowerCase().replace(' ', '-'); 329 }); 330 $('.gallery-box').slideUp(); 331 332 }); 333 334 $(document).unbind('click.imagepopup').on('click.imagepopup', '.gallery-item .image', function(e){ 335 e.preventDefault(); 336 e.stopPropagation(); 337 var url = $(this).attr('href'); 338 var caption = $(this).data('caption'); 339 if(caption != '') 340 { 341 caption = '<div class="popup-caption">' + caption + '</div>'; 342 } 343 344 $.magnificPopup.open({ 345 items: { 346 src: '<div class="imageWrapper"><img src="' + url + '" />' + caption + '</div>', 347 type: 'inline' 348 } 349 }); 350 351 analytics.event('button', 'View Download Image', url); 352 353 return false; 354 }); 355 356 $(document).unbind('click.videopopup').on('click.videopopup', '.gallery-item .video', function(e){ 357 e.preventDefault(); 358 var url = $(this).attr('href'), vid; 359 360 if(url.indexOf('embed') > -1) 361 { 362 vid = url.split('/'); 363 vid = vid.pop(); 364 } 365 else 366 { 367 vid = url.split('v='); 368 vid = vid.pop(); 369 } 370 371 //$('.video-popup').html('<iframe width="560" height="315" src="https://www.youtube.com/embed/' + vid + '" frameborder="0" allowfullscreen></iframe>').magnificPopup({type:'inline'}); 372 373 $.magnificPopup.open({ 374 items: { 375 src: '<div class="videoWrapper"><iframe width="560" height="315" src="https://www.youtube.com/embed/' + vid + '" frameborder="0" allowfullscreen></iframe></div>', 376 type: 'inline' 377 } 378 }); 379 380 analytics.event('button', 'Video Watched', vid); 381 }); 382 383 $(window).on('resize', api.resizeDownloads); 384 385 if(window.location.hash) 386 { 387 var hash = window.location.hash.split('#')[1]; 388 if(hash.indexOf('-') > -1) 389 { 390 hash = hash.replace('-', ' '); 391 } 392 393 if(hash == 'asteroidalphabet') 394 { 395 hash = 'asteroid alphabet'; 396 } 397 398 $('.gallery-content').each(function(){ 399 if($(this).data('name').toLowerCase() == hash) 400 { 401 var id = $(this).data('id'); 402 var name = $(this).data('name'); 403 $('#home-title').find('text').text(name);
404 $('.gallery-box').slideUp(); 405 $('#gallery-' + id).show(); 406 $('html,body').animate({scrollTop:0}, 500); 407 window.curgallery = id; 408 } 409 }); 410 } 411 } 412 }; 413 414 api.init(); 415 416 return api; 417})(); 418},{"./analytics":1}],5:[function(require,module,exports){ 419module.exports = (function() { 420 var api = { 421 isLoggedIn: false 422 }; 423 424 api.scope = ['public_profile', 'email']; 425 426 api.check = function() { 427 FB.getLoginStatus(function(response) { 428 if (response.status === 'connected') { 429 api.isLoggedIn = true; 430 431 //check permissions 432 FB.api('/me/permissions', function(response) { 433 var available = []; 434 for(var i in response.data) { 435 if (response.data[i].status == "granted") { 436 available.push(response.data[i].permission); 437 } 438 } 439 440 var intersection = available.filter(function(n) { 441 return api.scope.indexOf(n) > -1; 442 }); 443 444 //prompt login if not all required permissions are filled 445 if (intersection.length !== api.scope.length) 446 { 447 api.login(); 448 } 449 }); 450 } else { 451 api.isLoggedIn = false; 452 } 453 }); 454 }; 455 456 api.login = function(success, fail) { 457 success = success || function() { 458 console.log('User logged in.'); 459 }; 460 fail = fail || function() { 461 console.log('User cancelled login or did not fully authorize.'); 462 }; 463 464 FB.login(function(response) { 465 if (response.authResponse) { 466 api.isLoggedIn = false; 467 success(); 468 } else { 469 fail(); 470 } 471 }, {scope: api.scope.join(',')}); 472 }; 473 474 api.call = function(success, fail) { 475 success = success || function() { 476 console.log('Success.'); 477 }; 478 fail = fail || function() { 479 console.log('Fail.'); 480 }; 481 482 if (api.isLoggedIn) { 483 success(); 484 } else { 485 api.login(success, fail); 486 } 487 }; 488 489 api.wallPost = function(data, callback) { 490 callback = callback || function (r) {}; 491 var def = { 492 method: 'feed', 493 link: '', 494 caption: '', 495 picture: '', 496 description: '' 497 } 498 499 data = $.extend({}, def, data); 500 501 FB.ui(data, callback); 502 } 503 504 return api; 505})(); 506 507},{}],6:[function(require,module,exports){ 508module.exports = (function() { 509 var api = {}; 510 511 api.init = function () { 512 var $fancybordersHeader = $('.fancyborder-header'); 513 // requires inlineSVG, 3d transforms (for horizontal flipping), 514 // and shouldn't be mobile 515 if (!$fancybordersHeader.length || !Modernizr.inlinesvg || !Modernizr.csstransforms3d || window.isMobile()) 516 return; 517 518 // get the fancyborder SVG 519 var svgAsset = $.get(assetsDir + '/images/fancyborder.svg'); 520 var svgReady = $.Deferred(); 521 svgAsset.done(function(data) { 522 // once it's got, 523 // put the svg in all its places, 524 // and indicate that it's ready to be animated 525 var $svg = $(data).find('svg').first(); 526 $('.fancyborder-c').append($svg); 527 svgReady.resolve(); 528 }); 529 530 function drawFancyBorders($el) { 531 var $bds = $el.find('.fancyborder-c'); 532 // is-on class starts the animations 533 $bds.addClass('is-on'); 534 setTimeout(function() { 535 // animate the hairs 536 $bds.each(function() { 537 $(this).find('.blp-hair').each(function(i) { 538 $(this).css({ 539 'animation': 'hairs 3s linear ' + (i * 0.15) + 's infinite' 540 }); 541 }); 542 }); 543 }, 1500); 544 } 545 546 svgReady.done(function() { 547 // set an interval checking for whether the fancyborderHeader is in view, 548 // and if it is, draw it and clear the interval 549 $fancybordersHeader.each(function() { 550 var $el = $(this); 551 var top = $el.offset().top + 50; 552 var bdInterval = setInterval(function() { 553 if (window.$win.scrollTop() + window.$win.height() > top) { 554 clearInterval(bdInterval); 555 drawFancyBorders($el); 556 } 557 }, 100); 558 }); 559 }); 560 } 561 562 api.init(); 563 564 return api; 565})(); 566 567},{}],7:[function(require,module,exports){ 568module.exports = (function() { 569 var api = {}; 570 571 api.sizeTitle = function() { 572 573 var $title = $('.page-title').first(); 574 if (!$title.length || !Modernizr.inlinesvg) 575 return; 576 577 var titleTextArray = $title.text().split(' '), 578 originalTitle = $title.data('original-title') || $title.text(), 579 titleText = originalTitle,
580 twoLined = $title.hasClass('m-two-lines'); 581 582 $title.data('original-title', originalTitle); 583 584 if (twoLined) { 585 var splitText = titleText.split(' '); 586 titleText = '<tspan>' + splitText[0] + ' ' + splitText[1] + '</tspan>'; 587 titleText += '<tspan>' + splitText[2] + '</tspan>'; 588 } 589 590 var $svg = $('<svg class="fancytitle-svg">\ 591 <defs>\ 592 <radialGradient id="title-gradient" cx="0" cy="130%" r="0" gradientTransform="translate(0,0.275) scale(1,0.45)" gradientUnits="userSpaceOnUse">\ 593 <animate attributeName="cx" attributeType="XML" begin="0s" dur="12s" values="-1200;1200;-1200" repeatCount="indefinite" fill="freeze"/>\ 594 <stop offset="0" style="stop-color:#FFFFFF"/>\ 595 <stop offset="1" style="stop-color:#889CA2"/>\ 596 </radialGradient>\ 597 </defs>\ 598 <text class="fancytitle-text" fill="url(#title-gradient)" text-anchor="middle">' + titleText + '</text>\ 599 </svg>').css({display: 'block'}); 600
601 var $svgContainer = $('<div />').addClass('fancytitle-c') 602 .append($svg); 603 604 var isSvged = $title.data('is-svged') == 'true', 605 isTwoLines = false, 606 $svgText = $svg.find('text').first(), 607 $svgGradient = $svg.find('radialGradient').first(), 608 $svgGradientAnimation = $svgGradient.find('animate').first(); 609 610 // if we're at movile size return, not insert SVG. 611 // if we've resized to mobile and with a current SVG, remove it. 612 if (window.isMobile()) { 613 if (isSvged) { 614 $title.empty() 615 .text(originalTitle) 616 .attr('style', ''); 617 isSvged = false; 618 $title.data('is-svged', 'false'); 619 } 620 return; 621 } 622 623 // size the SVG 624 var tY = $title.height(), 625 svgX = $title.width(), 626 svgY = tY;// + parseInt($title.css('padding-top'), 10); removed for reverse animation 627 628 $svg.attr('width', svgX) 629 .attr('height', svgY); 630 $svgGradient 631 .attr('r', svgX * 1.2); 632 $svgText.attr('x', svgX / 2) 633 .attr('y', svgY - 16); // magic number 634 var animateValues = [ 635 -svgX / 2, 636 svgX + (svgX / 2), 637 -svgX / 2 638 ].join(';'); 639 $svgGradientAnimation.attr('values', animateValues); 640 641 if (twoLined) { 642 var $tspans = $svgText.find('tspan'); 643 $($tspans[0]) 644 .attr('x', svgX / 2) 645 .attr('y', svgY - 16 - 72); // more magic 646 $($tspans[1]) 647 .attr('x', svgX / 2) 648 .attr('y', svgY - 16); 649 } 650 651 // refresh and re animate 652 $title.empty() 653 .css({'padding-top': 0}) 654 .append($svgContainer); 655 isSvged = true; 656 $title.data('is-svged', 'true'); 657 658 } 659 // do it initially 660 api.sizeTitle(); 661 // TODO: deboucne this 662 $win.on('resize', api.sizeTitle); 663 664 return api; 665})(); 666 667},{}],8:[function(require,module,exports){ 668var popup = require('./popup'); 669 670module.exports = (function() { 671 var api = { 672 isLoggedIn: false 673 }; 674 675 api.check = function() { 676 gapi.auth.authorize({ 677 client_id: GOOGLE_CLIENT_ID, 678 scope: ['https://www.googleapis.com/auth/plus.login', 'email'], 679 immediate: true 680 }, function(response) { 681 api.isLoggedIn = response.status.signed_in; 682 }); 683 }; 684 685 api.login = function(success, fail) { 686 success = success || function() { 687 console.log('User logged in.'); 688 }; 689 fail = fail || function() { 690 console.log('User cancelled login or did not fully authorize.'); 691 }; 692 693 gapi.auth.authorize({ 694 client_id: GOOGLE_CLIENT_ID, 695 immediate: false, 696 scope: ['https://www.googleapis.com/auth/plus.login', 'email'], 697 }, function (response) { 698 if (response.status.signed_in) 699 { 700 api.isLoggedIn = true; 701 success(); 702 } 703 else 704 { 705 fail(); 706 } 707 }); 708 }; 709 710 api.call = function(success, fail) { 711 success = success || function() { 712 console.log('Success.'); 713 }; 714 fail = fail || function() { 715 console.log('Fail.'); 716 }; 717 718 if (api.isLoggedIn) { 719 success(); 720 } else { 721 api.login(success, fail); 722 } 723 }; 724 725 api.wallPost = function(data, callback) { 726 callback = callback || function(r) { 727 }; 728 729 var window = popup.window('https://plus.google.com/share?url=' + data.url, 'google-popup'); 730 } 731 732 return api; 733})(); 734 735},{"./popup":16}],9:[function(require,module,exports){ 736var analytics = require('./analytics'); 737 738module.exports = (function() { 739 var api = {}; 740 741 //link hijacking 742 var $footer = $('#footer'), 743 $fadeArea = $('#site-body'), 744 $title = $('title'), 745 $doc = $(document), 746 transitioning = false, 747 ajaxCache = {}; 748 749
750 var $defaultLoader = $('<div id="loader"><svg viewBox="0 0 300 300">' + 751 '<rect id="loader-square-1" class="loader-square loader-primary" x="50" y="50" width="100" height="100"/>' + 752 '<rect id="loader-square-2" class="loader-square loader-secondary" x="150" y="50" width="100" height="100"/>' + 753 '<rect id="loader-square-3" class="loader-square loader-secondary" x="50" y="150" width="100" height="100"/>' + 754 '<rect id="loader-square-4" class="loader-square loader-primary" x="150" y="150" width="100" height="100"/>' + 755 '<circle id="loader-circle-1" class="loader-circle loader-secondary" r="40" cy="100" cx="100"/>' + 756 '<circle id="loader-circle-2" class="loader-circle loader-primary" r="40" cy="100" cx="200"/>' + 757 '<circle id="loader-circle-3" class="loader-circle loader-primary" r="40" cy="200" cx="100"/>' + 758 '<circle id="loader-circle-4" class="loader-circle loader-secondary" r="40" cy="200" cx="200"/>' + 759 '</svg></div>'); 760 761 function hrefToKey(href) { 762 // changes / and - to _ to create acceptable object keys 763 return href.replace(/[\/-]/g, '_'); 764 } 765 766 var hijackerDefaults = { 767 element: 'site-body main', 768 transitionIn: function(callback) { 769 $fadeArea.velocity({opacity: 1}, callback); 770 }, 771 transitionOut: function(callback) { 772 $fadeArea.velocity({opacity: 0}, callback); 773 }, 774 $loader: $defaultLoader 775 }; 776 777 function createPageObj(htmlStr, element) { 778 return { 779 html: $($.parseHTML(htmlStr.match(/<body[^>]*>([\s\S.]*)<\/body>/i)[0])).find('#' + element).html(), 780 title: htmlStr.match(/<title[^>]*>([\s\S.]*)<\/title>/i)[1], 781 nav: '#' + $($.parseHTML(htmlStr.match(/<body[^>]*>([\s\S.]*)<\/body>/i)[0])).find('.current_page_item, .current-menu-item').attr('id') 782 }; 783 } 784 785 /** 786 * presumes that internal links are just `/path/to/file`, no protocol 787 */ 788 789 790 function changePage(href, options) { 791 // options 792 // - scrollTo 793 // - noPushState 794 // - transitionIn 795 // - transitionOut 796 options = $.extend({}, hijackerDefaults, options); 797 798 // `href` is where we're getting our content; 799 // `noPushState` means this is happening because of a popstate event, 800 // so the browser is already changing the URL; 801 // `scrollTo` is a position to scroll to (again, needed by popstate triggers) 802 803 // if we are already transitioning, ignore the click 804 // AT SOME POINT WE MAY WANT TO CHANGE THIS SO THAT THERE IS A QUEUE? 805 if (transitioning) 806 return; 807 808 // save scroll position before anything changes, 809 // to pass to history state for back button 810 var currentPos = $doc.scrollTop(), 811 // if popstate happens (back button) prepare 812 // to return to a prior scroll position 813 scrollTarget = options.scrollTo || 0, 814 // create cacheKey now, for use later 815 nextCacheKey = hrefToKey(href), 816 currentCacheKey = hrefToKey(window.location.pathname); 817 818 function initNewPage(page) { 819 // given a new page object (attributes of `title` and `html`), 820 // change the content, change the url, etc. -- make it happen 821 822 if (!options.noPushState) { 823 var pathname = window.location.pathname; 824 // save scroll position for back button 825 window.history.replaceState({url: pathname, position: currentPos}, null, pathname); 826 // change URL with pushState 827 window.history.pushState({url: href, position: 0}, '', href); 828 } 829 830 // change the main element 831 $('#' + options.element).html(page.html); 832 833 // change the title 834 $title.text(page.title); 835 836 // get in position 837 $doc.off('.freezeScroll'); 838 setTimeout(function() { 839 // DON'T KNOW WHY THIS TIMEOUT IS NECESSARY 840 $doc.scrollTop(scrollTarget); 841 }, 40); 842 843 // indicate that we're done 844 transitioning = false;
845 846 // run any page-specific script 847 $(document).trigger('runPageScriptsPlease'); 848 849 // call the callback 850 options.transitionIn(); 851 852 //update main nav 853 $('.current_page_item,.current-menu-item').removeClass('current-menu-item current_page_item'); 854 $(page.nav).addClass('current-menu-item current_page_item'); 855 } 856 857 // set state to prevent overlapping attempts 858 transitioning = true; 859 860 // transition out ... 861 options.transitionOut(function() { 862 863 // let any listeners know that we're changing 864 // $doc.trigger('page-change', { target: href }); 865 866 // if the page has already loaded and been cached, 867 // intialize it from the cache 868 if (ajaxCache[nextCacheKey]) { 869 initNewPage(ajaxCache[nextCacheKey]); 870 return; 871 } 872 873 // if a little time passes, add the loader 874 options.$loader.hide(); 875 var loaderActive = false; 876 var loaderTimeout = setTimeout(function() { 877 loaderActive = true; 878 if (options.element === 'main') { 879 $fadeArea.before(options.$loader); 880 options.$loader.add('body').height($(window).height()); 881 } 882 options.$loader.velocity('fadeIn'); 883 }, 500); 884//console.log(href); 885 // fetch the content, then cache and initialize 886 887 if(href.indexOf('/mission') > -1 && (window.isMobile() || window.iOS)) 888 { 889 $('.site-header').addClass('fixed'); 890 href = '/mission/mission-mobile/'; 891 } 892 else 893 { 894 $('.site-header').removeClass('fixed'); 895 } 896 897 898 $.get(href) 899 // on failure go to 404 900 .fail(function() { 901 transitioning = false; 902 changePage('/four-oh-four'); 903 return; 904 }) 905 // on success ... 906 .done(function(data) { 907 908 // THIS TIMEOUT IS TEMPORARY FOR DEBUGGING 909 // setTimeout(function() { 910 911 // create object 912 var page = createPageObj(data, options.element); 913 914 //report to google analytics 915 analytics.page(href, page.title); 916 917 // remove the loader 918 clearTimeout(loaderTimeout); 919 if (loaderActive) { 920 options.$loader.velocity('fadeOut', function() { 921 $('body').height('auto'); 922 options.$loader.remove(); 923 loaderActive = false; 924 // initialize the page 925 initNewPage(page); 926 // and cache it 927 ajaxCache[nextCacheKey] = page; 928 }); 929 } else { 930 initNewPage(page); 931 ajaxCache[nextCacheKey] = page; 932 } 933 934 // }, 2000); 935 }); 936 }); 937 } 938 939 940 function hijackLink(e) { 941 // called by a jquery click event, 942 // so `e` = event and `this` = clicked element 943 944 var link = e.currentTarget, 945 href = $(link).attr('href'), 946 options = $.extend({}, hijackerDefaults, e.data); 947 948 if (!/^\/|#/g.test(href)) { 949 //return true; 950 } 951 952 // Middle click, cmd click, and ctrl click should open 953 // links in a new tab as normal. (code from PJAX, https://github.com/defunkt/jquery-pjax) 954 if (e.which > 1 || e.metaKey || e.ctrlKey || e.shiftKey || e.altKey) 955 return; 956 957 // prevent default link behavior 958 e.preventDefault(); 959 960 if (href.substr(0, 1) === '#') { 961 // if it's a hash, scroll to the target element 962 var $target = (href.length > 1) ? $(href) : $('body'); 963 $target.velocity('scroll', {duration: 150, easing: 'linear'}); 964 } else if (href !== window.location.pathname.replace(/\/$/, '')) { 965 // otherwise, if it's pointing to a different page, go there. 966 changePage(href, options); 967 } 968 969 } 970 971 // RIGHT NOW WE'RE JUST NOT BOTHERING TO FIX BROWSER-BACK-BOUNCING 972 973 // THIS WAS A NON-WEBKIT SOLUTION TO BROWSER-BACK-BOUNCING 974 // THAT WE CAN IMPLEMENT IF WE NEED TO ... 975 // 976 // var scrollPosition, allowScroll, currentUrl; 977 // // currentUrl will need to be set by changePage 978 // $(window).on('scroll', function(e) { 979 // if (document.location.pathname !== currentUrl) { 980 // $(window).scrollTop(scrollPosition); 981 // } else { 982 // scrollPosition = $doc.scrollTop(); 983 // } 984 // }); 985 986 // assigning popstate listener for back and forward buttons 987 window.onpopstate = function(event) { 988 // iOS (iPad simulator at least) seems to fire the popstate event 989 // on initial page load, with a null `event.state` 990 // -- so in that case we don't need to do anything 991 if (event.state) { 992 993 // don't allow window to scroll away (via back functionality) 994 // (does not work for non-webkit, which seems to move the position before 995 // firing this event -- see above) 996 var pos = $doc.scrollTop(); 997 $doc.on('scroll.freezeScroll', function() { 998 $doc.scrollTop(pos); 999 }); 1000 1001 changePage(window.location.pathname, { 1002 noPushState: true, 1003 scrollTo: event.state.position 1004 }); 1005 } 1006 }; 1007 1008 api.changePage = changePage; 1009 api.hijackLink = hijackLink; 1010 1011 return api; 1012})(); 1013},{"./analytics":1}],10:[function(require,module,exports){ 1014/*jshint multistr: true */ 1015 1016$ = jQuery.noConflict(); 1017jQuery(document).ready(function($) { 1018 window.$win = $(window); 1019 window.$doc = $(document); 1020 window.isMobile = function() { 1021 return matchMedia('only screen and (max-width: 48em)').matches; 1022 }; 1023 window.iOS = /(iPad|iPhone|iPod)/g.test(navigator.userAgent); 1024 window.ie = function() { 1025 var myNav = navigator.userAgent.toLowerCase(); 1026 return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : false;
1027 }; 1028 1029 if(window.iOS) 1030 $('body').addClass('ios'); 1031 1032 $('select').selectize({}); 1033 1034 $(document).on('click', '.download-file', function(e){ 1035 e.preventDefault(); 1036 window.open( 1037 $(this).data('file'), 1038 '_blank' 1039 ); 1040 }); 1041 1042 var mobileNav = require('./mobile-nav'), 1043 hijackJummpLinks = require('./hijack-jump-links'), 1044 pageScripts = require('./page-scripts'), 1045 buttonAnimations = require('./button-animation'), 1046 qaSubmission = require('./qa-submission'), 1047 readMore = require('./read-more'), 1048 fancyBorder = require('./fancy-border'), 1049 fancyTitle = require('./fancy-title'), 1050 qaAccordion = require('./qa-accordion'), 1051 team = require('./team'), 1052 mission = require('./mission'), 1053 facebok = require('./facebook'), 1054 google = require('./google'), 1055 contact = require('./contact'), 1056 targetAsteroids = require('./target-asteroids'), 1057 msgBennu = require('./msg-bennu'), 1058 newsletter = require('./newsletter'), 1059 analytics = require('./analytics'), 1060 socialMedia = require('./social-media'); 1061 1062 $.ajaxSetup({cache: true}); 1063 1064 //load Facebook SDK 1065 $.getScript('//connect.facebook.net/en_US/sdk.js', function() { 1066 FB.init({ 1067 appId: FB_APP_ID, 1068 xfbml: true, 1069 version: 'v2.0' 1070 }); 1071 1072 facebok.check(); 1073 }); 1074 1075 window.googleSDKReady = function() { 1076 google.check(); 1077 } 1078 1079 //load Google SDK 1080 $.getScript('https://apis.google.com/js/client:plusone.js?onload=googleSDKReady'); 1081 1082 $(document).on('click', "a[href^='/'], a[href^='#']", function(e) { 1083 1084 if ($(this).data('pass') || window.isMobile() || window.iOS || window.ie() != false) 1085 return true; 1086 1087 hijackJummpLinks.hijackLink(e); 1088 }); 1089 1090 if($('#timer').length) 1091 { 1092 clearInterval(window.timeinterval); 1093 1094 var deadline = '9/22/2017 10:26:00 UTC-0700'; 1095 1096 if($('#timer').data('date').length) 1097 { 1098 deadline = $('#timer').data('date'); 1099 } 1100 1101 $.getScript('/wp-content/themes/osiris/public_assets/js/countdown.js', function() { 1102 1103 window.timeinterval = setInterval(function(){ 1104 var cd = countdown(null, Date.parse(deadline), countdown.DAYS); 1105 var t = cd.value; 1106 1107 var seconds = Math.floor( (t/1000) % 60 ); 1108 var minutes = Math.floor( (t/1000/60) % 60 ); 1109 var days = Math.floor( t/(1000*60*60*24) ); 1110 var hours = Math.floor( (t/(1000*60*60)) % 24 ); // factor daylight savings 1111 1112 if(seconds < 0) 1113 seconds = 0; 1114 1115 if(minutes < 0) 1116 minutes = 0; 1117 1118 if(hours < 0) 1119 hours = 0; 1120 1121 if(days < 0) 1122 days = 0; 1123 1124 $('#timer .t-days').text(days < 100 ? ('0' + days).slice(-2) : days); 1125 $('#timer .t-hours').text(('0' + hours).slice(-2)); 1126 $('#timer .t-minutes').text(('0' + minutes).slice(-2)); 1127 $('#timer .t-seconds').text(('0' + seconds).slice(-2)); 1128 1129 if(t.total<=0){ 1130 clearInterval(window.timeinterval); 1131 } 1132 },1000); 1133 }); 1134 } 1135 1136 1137 window.homescroll = { 1138 w:0, 1139 pos:0, 1140 max: 2000, 1141 bpos:-50, 1142 rs: null, 1143 init: function(){ 1144 homescroll.w = $(window).width(); 1145 $(window).on('scroll', homescroll.scroll); 1146 $(window).on('resize', function(){ 1147 homescroll.rs = setTimeout(homescroll.scroll, 10); 1148 }); 1149 $('#home-osiris-craft').css({top:0, width: homescroll.w > 754 ? 300 : 192, height: homescroll.w > 754 ? 252 : 176}); 1150 $('#home-bennu-surface').css({bottom:'-50px'}); 1151 homescroll.max = $(window).height() * 2; 1152 homescroll.bpos = -50; 1153 }, 1154 scroll: function(){ 1155 homescroll.w = $(window).width(); 1156 homescroll.pos = $(window).scrollTop(); 1157 //console.log(homescroll.pos); 1158 1159 if(homescroll.pos > 0 && homescroll.pos < homescroll.max) 1160 { 1161 homescroll.bpos = -50 + (100 * ((homescroll.pos / homescroll.max))); 1162 if(homescroll.bpos > 0) 1163 homescroll.bpos = 0; 1164 1165 $('#home-osiris-craft').css({top:(homescroll.w > 754 ? 210 : 20) * (homescroll.pos / homescroll.max) + 'px', left: (homescroll.w > 754 ? 30 : 20) + ((homescroll.w > 754 ? 20 : 10) * ((homescroll.pos / homescroll.max))) + '%',width: (homescroll.w > 754 ? 300 : 120) + ((homescroll.w > 754 ? 400 : 192) * ((homescroll.pos / homescroll.max))) + 'px', height: (homescroll.w > 754 ? 252 : 116) + ((homescroll.w > 754 ? 352 : 176) * ((homescroll.pos / homescroll.max))) + 'px'}); 1166 $('#home-bennu-surface').css({bottom:homescroll.bpos + 'px'}); 1167 } 1168 } 1169 }; 1170 1171 if($('#home-craft').length) 1172 { 1173 homescroll.init(); 1174 } 1175 1176 //hide preload images 1177 $('.js-preload-image').hide(); 1178 1179 $('#menu-item-292 a').attr('target', '_blank'); 1180 1181}); 1182 1183 1184 1185window.propagateChildEvent = function(event, arg) { 1186 $(document).trigger(event, arg); 1187} 1188},{"./analytics":1,"./button-animation":2,"./contact":3,"./facebook":5,"./fancy-border":6,"./fancy-title":7,"./google":8,"./hijack-jump-links":9,"./mission":11,"./mobile-nav":12,"./msg-bennu":13,"./newsletter":14,"./page-scripts":15,"./qa-accordion":17,"./qa-submission":18,"./read-more":19,"./social-media":20,"./target-asteroids":21,"./team":22}],11:[function(require,module,exports){ 1189if(window.location.hash) 1190{ 1191 $('.loading-screen h1, .loading-content').html('<br><br>'); 1192} 1193 1194module.exports = (function() { 1195 var api = {}; 1196 var h = $(window).height(); 1197 var w = $(window).width(); 1198 var mode = 'full'; 1199 window.videos = []; 1200 window.capsule_live_queue = null; 1201 window.hasMissionLoaded = false;
1202 window.video_url = "//" + document.location.hostname + "/videos/"; 1203 1204 var headerh = $('.site-header').outerHeight(); 1205 var launchOffset = h / 3; 1206 if(h > 650) 1207 launchOffset = h / 2; 1208 1209 if($('main').hasClass('mission-mobile')) 1210 { 1211 h -= $('.mobile-jump').outerHeight(); 1212 $('.site-header').addClass('fixed'); 1213 } 1214 1215 1216 $('#atlas-launch').hide(); 1217 $('#m1').css({minHeight: h}); 1218 1219 window.missionInit = function() 1220 { 1221 $('#site-footer, #subscribe-c').slideUp(500); 1222 $('body').addClass('page-id-30'); 1223 $('#site-body').css({height:$(window).height()}); 1224 var base_url = "/wp-content/themes/osiris/public_assets/"; 1225 1226 var preload = [ 1227 "images/stars.gif", 1228 "images/atlas/nose-left-lg.png", 1229 "images/atlas/nose-right-lg.png", 1230 "images/atlas/osiris.png", 1231 "images/atlas/connector3-lg.png", 1232 "images/atlas/stage2-lg.png", 1233 "images/atlas/connector2-lg.png", 1234 "images/atlas/connector2-back-lg.png", 1235 "images/atlas/connector1-lg.png", 1236 "images/atlas/connector1-back-lg.png", 1237 "images/atlas/stage1-lg.png", 1238 "images/atlas/booster-lg.png", 1239 "images/atlas/thruster-lg.png", 1240 "images/atlas/grid-bg.gif", 1241 "images/atlas/cutaway.png", 1242 "images/atlas/line/leftnose.png", 1243 "images/atlas/line/rightnose.png", 1244 "images/atlas/line/osr.png", 1245 "images/atlas/line/stage2.png", 1246 "images/atlas/line/coupling.png", 1247 "images/atlas/line/stage1.png", 1248 "images/atlas/line/booster.png", 1249 "images/atlas/line/flame.png", 1250 "images/scroll-arrows.png", 1251 "images/atlas/line/clouds.gif", 1252 "images/atlas/line/tower.gif", 1253 "images/atlas/line/launch-tower.gif", 1254 "images/large-earth.png", 1255 "images/osiris-cruise.png", 1256 "images/space.gif", 1257 "images/osiris-tilt.png", 1258 "images/bennu.png", 1259 "images/osiris-arm.png", 1260 "images/osiris-leaving.png", 1261 "images/surface-line.png", 1262 "images/surface-arm.png", 1263 "images/surface-arm-vacuum.png", 1264 "images/capsule-line.png", 1265 "images/capsule-parachute.png", 1266 "images/capsule_ground.jpg", 1267 "images/tag.png" 1268 ]; 1269 1270 if(!window.hasMissionLoaded) 1271 { 1272 //console.log('loading'); 1273 var promises = []; 1274 for (var i = 0; i < preload.length; i++) { 1275 (function(url, promise) { 1276 var img = new Image(); 1277 img.onload = function() { 1278 promise.resolve(); 1279 $('#loading-percent').text(i * (100 / preload.length) ); 1280 }; 1281 img.src = base_url + url; 1282 })(preload[i], promises[i] = $.Deferred()); 1283 } 1284 $.when.apply($, promises).done(function() { 1285 1286 window.hasMissionLoaded = true; 1287 1288 launchScreen(); 1289 1290 }); 1291 } 1292 else 1293 { 1294 //console.log('already loaded'); 1295 launchScreen(); 1296 } 1297 1298 } 1299 1300window.launchScreen = function(){ 1301 1302 if(window.location.href.indexOf('/mission') > -1 && (window.isMobile() || window.iOS)) 1303 { 1304 window.location.href = '/mission/mission-mobile/'; 1305 } 1306 1307 $('#mission-loading').fadeOut(); 1308 1309 if(window.location.hash) 1310 { 1311 window.launchSite(); 1312 } 1313 else 1314 { 1315 $('#launch-mission-button').fadeIn(); 1316 1317 $(document).unbind('click.lmb').on('click.lmb', '#launch-mission-button', function(e){ 1318 e.preventDefault(); 1319 window.launchSite(); 1320 }); 1321 } 1322} 1323 1324window.launchSite = function() 1325{ 1326 //console.log('launching site', window.isMobile(), window.iOS); 1327 1328 $('#atlas-launch').show(); 1329 if((!window.isMobile() && !window.iOS)) 1330 { 1331 //console.log('going full'); 1332 $('#timeline').hide(); 1333 1334 var atlas = { 1335 state: 'full', 1336 pieces: { 1337 //sample piece structure. written dynamically 1338 noseleft: { 1339 w:0, // current w 1340 h:0, 1341 x:0, 1342 y:0, 1343 ow:0, //original width 1344 oh:0, 1345 ol:0, 1346 oy:0, 1347 sw:0, // scaled width 1348 sh:0, 1349 sx:0, 1350 sy:0, 1351 xx:0, //expanded x 1352 xy:0 1353 }, 1354 noseright:{}, 1355 osiris:{}, 1356 connector3:{}, 1357 stage2:{}, 1358 connector2:{},
1359 connector2back:{}, 1360 connector1:{}, 1361 connector1back:{}, 1362 stage1:{}, 1363 booster:{}, 1364 thruster:{} 1365 }, 1366 lines:{ 1367 noseleft:{ 1368 w:0, 1369 h:0, 1370 x:0, 1371 y:0, 1372 sw:0, 1373 sh:0, 1374 sx:0, 1375 sy:0 1376 }, 1377 noseright:{}, 1378 osiris:{}, 1379 stage2:{}, 1380 coupling:{}, 1381 stage1:{}, 1382 booster:{} 1383 }, 1384 init: function(){ 1385 1386 stopVideos(); 1387 clearTimeout(window.capsule_live_queue); 1388 1389 //mode setting 1390 var offleft,offright,factwidth, lfw; 1391 if(mode == 'full') 1392 { 1393 factwidth = '40%'; 1394 offright = '50%'; 1395 offleft = '50%'; 1396 lfw = 640; 1397 } 1398 else if(mode == 'medium') 1399 { 1400 factwidth = '55%'; 1401 offright = '30%'; 1402 offleft = '70%'; 1403 lfw = 540; 1404 1405 } 1406 else 1407 { 1408 factwidth = '55%'; 1409 offright = '30%'; 1410 offleft = '70%'; 1411 lfw = 500; 1412 1413 } 1414 1415 $('#atlas-breakaway, #atlas-cutaway').css({left: offleft}); 1416 $('.fact, #cutaway-facts').css({width: factwidth}); 1417 $('#atlas-height').css({right: offright}); 1418 1419 $('#line-ground').hide(); 1420 $('#launch-fact1').removeClass('is-on').css({zIndex:-1, opacity:0, width:lfw}); 1421 $('#atlas-lines').css({ 1422 position:'absolute', 1423 left:offleft, 1424 top:100, 1425 '-webkit-transform': 'rotate(0deg)', 1426 '-moz-transform': 'rotate(0deg)', 1427 '-ms-transform': 'rotate(0deg)', 1428 '-o-transform': 'rotate(0deg)', 1429 'transform': 'rotate(0deg)', 1430 'zoom': 1 1431 }); 1432 $('#atlas-lines dic').css({ 1433 '-webkit-transform': 'rotate(0deg)', 1434 '-moz-transform': 'rotate(0deg)', 1435 '-ms-transform': 'rotate(0deg)', 1436 '-o-transform': 'rotate(0deg)', 1437 'transform': 'rotate(0deg)', 1438 'zoom': 1 1439 }); 1440 1441 $('#atlas-launch .grad').css({bottom:-200, opacity:0}); 1442 $('#atlas-launch').css({height: '100%', top:'0'}); 1443 $('.plus').removeClass('active'); 1444 1445 $('#launch-notes, #blastoff').css('display', 'block'); 1446 atlas.state = 'line'; 1447 1448 $('#atl-nose-left').css({width:atlas.lines.noseleft.w, height:atlas.lines.noseleft.h, top:atlas.lines.noseleft.y, left:atlas.lines.noseleft.x}); 1449 $('#atl-nose-right').css({width:atlas.lines.noseright.w, height:atlas.lines.noseright.h, top:atlas.lines.noseright.y, left:atlas.lines.noseright.x}); 1450 $('#atl-osiris').css({width:atlas.lines.osiris.w, height:atlas.lines.osiris.h, top:atlas.lines.osiris.y, left:atlas.lines.osiris.x}); 1451 $('#atl-stage2').css({width:atlas.lines.stage2.w, height:atlas.lines.stage2.h, top:atlas.lines.stage2.y, left:atlas.lines.stage2.x}); 1452 $('#atl-coupling').css({width:atlas.lines.coupling.w, height:atlas.lines.coupling.h, top:atlas.lines.coupling.y, left:atlas.lines.coupling.x}); 1453 $('#atl-stage1').css({width:atlas.lines.stage1.w, height:atlas.lines.stage1.h, top:atlas.lines.stage1.y, left:atlas.lines.stage1.x}); 1454 $('#atl-booster').css({width:atlas.lines.booster.w, height:atlas.lines.booster.h, top:atlas.lines.booster.y, left:atlas.lines.booster.x}); 1455 1456 forceTimeline("September", "8", "2016"); 1457 $('#timeline').fadeOut(); 1458 $('#atlas-cruise, #arrival, #sample, #return, #collection, #atlas-scaled, #m-atlas').fadeOut(); 1459 } 1460 }; 1461 1462 var cruise = { 1463 videos: { 1464 w:600, 1465 h:380, 1466 m2: { 1467 w:800, 1468 h:507, 1469 y:-30 1470 }, 1471 m3: { 1472 w:800, 1473 h:507, 1474 y:-30 1475 } 1476 }, 1477 earth: { 1478 stage1: { 1479 w: 2000, 1480 h: 2000, 1481 x: -1000, 1482 y: -1000, 1483 tw: 2200, 1484 th: 2200, 1485 tx: -1100, 1486 ty: -1100, 1487 tw2:2800, 1488 th2:2800, 1489 ty2: -1800, 1490 tx2: -2000 1491 }, 1492 stage2:{ 1493 tw: 1400, 1494 th: 1400, 1495 tx: -600, 1496 ty: -300 1497 } 1498 }, 1499 init: function(){ 1500 stopVideos(); 1501 forceTimeline("September", "8", "2016"); 1502 clearTimeout(window.capsule_live_queue); 1503
1504 $('#timeline').fadeIn(); 1505 1506 $('#m1-video').css({width:'100%', left:0, top:0}); 1507 $('#launch-fact5').removeClass('is-on').animate({opacity: 0}, 500); 1508 $('#m-atlas, #atlas-launch, #arrival, #sample, #return, #collection, #atlas-scaled, #launch-notes').fadeOut(); 1509 1510 $('#cruise-info').css({width:'50%', left:'-55%'}); 1511 $('#cruise-grad').css({width:'25%'}); 1512 $('#cruise-content').css({left:0}); 1513 $('#cruise-info-1').show(); 1514 $('#cruise-info-2').hide(); 1515 $('#cruise-bennu, #m1-bennu-ios').css({width:0, height:0, top:140, left:100}); 1516 $('#cruise-osiris').css({width:590, height:295, top:900, left:200, opacity:0}); 1517 $('#cruise-earth').css({width:cruise.earth.stage1.w, height:cruise.earth.stage1.h, top:cruise.earth.stage1.y, left:cruise.earth.stage1.x, opacity:0}); 1518 $('#cruise-space').css('opacity', 0); 1519 $('#cruise-arrow').css('opacity', 0); 1520 $('#atlas-cruise video').removeClass('active'); 1521 $('.btn').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1522 $('.video-text .hide').hide(); 1523 } 1524 }; 1525 1526 var arrival = { 1527 init: function(){ 1528 stopVideos(); 1529 forceTimeline("December", "3", "2018"); 1530 clearTimeout(window.capsule_live_queue); 1531 1532 $('#timeline').fadeIn(); 1533 try { 1534 $('#arrival-approach-video').get(0).currentTime = 0; 1535 } catch(error) { 1536 if (error.code === 11) { 1537 1538 } 1539 } 1540 $('#arrival-info, #arrival-grad').removeClass('right'); 1541 1542 $('#arrival-info').css({right:'-55%'}); 1543 $('#spec-close-box, .spec').hide(); 1544 1545 $('#launch-fact5').removeClass('is-on').animate({opacity: 0}, 500); 1546 $('#m-atlas, #atlas-launch, #atlas-cruise, #sample, #return, #collection, #atlas-scaled, #launch-notes').fadeOut(); 1547 1548 $('#atlas-cruise').fadeOut(); 1549 $('#atlas-launchprep').fadeOut(); 1550 $('#arrival-approach-bennu, #arrival-approach-osiris').css({opacity:1}); 1551 $('#arrival-bennu, #arrival-osiris, #arrival-space').css({opacity:0}); 1552 $('#arrival-bennu').css({top: h - 300}); 1553 $('#inspect, #sensor-note').hide(); 1554 $('.inspect-sensor').removeClass('active'); 1555 $('#arrival-info').css({width:'50%', left:'-55%'}); 1556 1557 $('#arrival-info-specs .spec').css({height: h * .76}); 1558 $('#arrival-space').css({backgroundPosition: '0 0'}); 1559 1560 $('#arrival-grad').css({width:'25%'}); 1561 $('#arrival-content').css({left:0}); 1562 $('#arrival-info-1').show(); 1563 $('#arrival-1-next, #arrival-2-next, #arrival-3-next, #arrival-info-2, #arrival-info-3').hide(); 1564 $('#arrival-osiris').css('background-position', '0 0'); 1565 $('#arrival-spec-next, #arrival-1-next2, #arrival-2-next2, #arrival-3-next2, .arrival-fact-box').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1566 1567 $('#arrival-approach video').removeClass('active').css({width:0, height:0}); 1568 $('.video-text .hide').hide(); 1569 $('.btn').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1570 } 1571 }; 1572 1573 var sample = { 1574 init: function(){ 1575 stopVideos(); 1576 forceTimeline("September", "10", "2019"); 1577 clearTimeout(window.capsule_live_queue); 1578 1579 1580 var bleft, btop; 1581 if(mode == 'full') 1582 { 1583 bleft = .3; 1584 btop = .5; 1585 } 1586 else if(mode == 'medium') 1587 { 1588 bleft = .2; 1589 btop = .8; 1590 } 1591 else 1592 { 1593 bleft = .2; 1594 btop = .8; 1595 } 1596 1597 $('#timeline').fadeIn(); 1598 $('#sample-surface').hide(); 1599 $('#sample-info, #sample-grad').removeClass('right'); 1600 $('#sample-1-next, #sample-2-next2, #sample-3-next2, #sample-4-next2, #acquisition-sim, #acquisition-next').css({opacity:0, zIndex:-1}); 1601 $('#m-atlas, #atlas-launch, #atlas-cruise, #return, #collection, #atlas-scaled, #launch-notes').fadeOut(); 1602 $('#sample-info').css({left:'-105%', padding:'0', opacity:1}); 1603 $('#sample-grad').css({width:'25%'}); 1604 $('#sample-content').css({left:0}); 1605 $('#sample-bennu').css({width:915, height:824, top:-h * btop, left: w * bleft}); 1606 $('#sample-osiris').css({backgroundPosition: '0 0', width:100, height:249, top:h * .7, left
1606:w * .55}).removeClass('arm').removeClass('return'); 1607 $('.video-text .hide').hide(); 1608 $('.btn').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1609 } 1610 }; 1611 1612 var osreturn = { 1613 init: function(){ 1614 stopVideos(); 1615 forceTimeline("March", "3", "2021"); 1616 clearTimeout(window.capsule_live_queue); 1617 1618 var bennuleft, osirisleft; 1619 if(mode == 'full') 1620 { 1621 bennuleft = 0; 1622 osirisleft = w * .45; 1623 } 1624 else if(mode == 'medium') 1625 { 1626 bennuleft = -w * .1; 1627 osirisleft = w * .55; 1628 } 1629 else 1630 { 1631 bennuleft = -w * .1; 1632 osirisleft = w * .55; 1633 } 1634 1635 $('#timeline').fadeIn(); 1636 1637 $('#m-atlas, #atlas-launch, #atlas-cruise, #collection, #atlas-scaled, #launch-notes').fadeOut(500, function(){ 1638 $('#sample').fadeOut(1000); 1639 }); 1640 1641 $('#return-info').stop().css({width:'50%', left:'-55%'}); 1642 $('#return-grad').stop().css({width:'25%'}); 1643 $('#return-content').stop().css({left:0}); 1644 $('#return-bennu').stop().css({width:915, height:824, top:0, left: bennuleft, display:'block'}); 1645 $('#return-osiris').stop().css({width:48, height:27, top:h / 3, left: osirisleft, display:'block', opacity:1, backgroundPosition: '0 0'}); 1646 $('#return-earth').stop().css({width:100, height:100, top:400, left:800, zIndex:-1}); 1647 $('#return-space').css({opacity:1, backgroundPositionX: '0 0'}); 1648 $('#return-1').css({opacity:0, zIndex:-1}).removeClass('is-on'); 1649 1650 $('#cloud4').stop().css({top:1000}); 1651 $('#cloud5').stop().css({top:1000}); 1652 $('#cloud6').stop().css({top:1000}); 1653 $('#return-capsule').stop().css({width:294, height:229, top:140, left:700, zIndex:-1, opacity:0}); 1654 $('#return-ground').stop().css({top:'100%', zIndex:-1}).show(); 1655 $('#capsule-parachute').stop().css({zIndex:-1, opacity:0}); 1656 1657 $('#return-info-1').show(); 1658 $('#return-info-2, #return-info-3').hide(); 1659 try { 1660 $('#r1-video').get(0).currentTime = 0; 1661 } catch(error) { 1662 if (error.code === 11) { 1663 1664 } 1665 } 1666 1667 $('#return-1-next2, #return-2-next2, #return-3-next2, #freefall-next').css({opacity:0, zIndex:-1,}).removeClass('is-on'); 1668 $('.video-text .hide').hide(); 1669 $('.btn').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1670 1671 } 1672 }; 1673 1674 var collection = { 1675 init: function(){ 1676 stopVideos(); 1677 forceTimeline("September", "24", "2023"); 1678 clearTimeout(window.capsule_live_queue); 1679 1680 $('#collection-capsule-live img').removeClass('active').css({opacity:0}); 1681 $('#collection-capsule-live img').first().addClass('active'); 1682 1683 $('#collection-info').stop().css({width:'50%', left:'-55%'}); 1684 $('#collection-grad').stop().css({width:'25%'}); 1685 $('#collection-content').stop().css({left:0}); 1686 $('#collection-info-1, #collection-capsule-live').show(); 1687 $('#collection-info-2, #collection-form').hide(); 1688 try { 1689 $('#c1-video').get(0).currentTime = 0; 1690 } catch(error) { 1691 if (error.code === 11) { 1692 1693 } 1694 } 1695 $('#collection-next, #collection-next2, #collection-form-box').css({opacity:0, zIndex:-1,}).removeClass('is-on'); 1696 $('#collection-bennu, #collection-earth, #collection-space, #collection-capsule').css({opacity:0, zIndex:-1}); 1697 $('.video-text .hide').hide(); 1698 $('.btn').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 1699 } 1700 }; 1701 1702 window.kf1 = 50; 1703 window.kf2 = 4000; 1704 window.kf3 = 8000; 1705 window.kf4 = 12000; 1706 window.kf5 = 16000; 1707 window.kf6 = 18000; 1708 window.interrupt = false; 1709 1710 1711 function resizeMission(){ 1712 h = $(window).height(); 1713 $('.full-page').css({height: h + 'px'}); 1714 1715 if(w > 1280) 1716 { 1717 mode = 'full'; 1718 } 1719 else if(w <= 1280 && w > 1024) 1720 { 1721 mode = 'medium'; 1722 } 1723 else if(w <= 1024) 1724 { 1725 mode = 'small'; 1726 } 1727 1728 if(window.iOS) 1729 mode = 'medium'; 1730 } 1731 1732 /****** mission page (keep at bottom) ******/ 1733 1734 function setStage() 1735 { 1736 var speed = 1000; 1737 1738 //mode setting 1739 var offleft, t1, t2, lp, lt; 1740 if(mode == 'full') 1741 { 1742 t1 = '58%'; 1743 t2 = '75%'; 1744 lt = '66%'; 1745 lp = '66%'; 1746 offleft = '50%'; 1747 } 1748 else if(mode == 'medium') 1749 { 1750 t1 = '55%'; 1751 t2 = '78%'; 1752 lt = '64%'; 1753 lp = '64%'; 1754 offleft = '70%'; 1755 } 1756 else 1757 { 1758 t1 = '55%'; 1759 t2 = '78%'; 1760 lt = '64%'; 1761 lp = '64%'; 1762 offleft = '70%'; 1763 } 1764
1765 $('#tower1').css({left:t1}); 1766 $('#tower2').css({left:t2}); 1767 $('#launch-tower').css({left:lt}); 1768 $('#launchpad').css({left:lp}); 1769 1770 $('#timeline').fadeIn(); 1771 1772 $('#atlas-launch .grad').css({bottom:0, opacity:0}); 1773 $('#atlas-launch').css('display', 'block'); 1774 $('#atlas-lines').css({left: offleft}); 1775 atlas.state = 'line'; 1776 $('#atlas-lines').css({position:'fixed'}); 1777 $('#atlas-launch').css('height', '20000px'); 1778 $('#atlas-lines').animate({left:'70%', top:launchOffset}, speed, function(){ 1779 $('#expand').fadeOut(500); 1780 $('#atlas-launchprep').fadeOut(500); 1781 $('#atlas-scale').fadeOut(500); 1782 $('#line-ground').css({top: launchOffset + 320}).fadeIn(500); 1783 $('#launch-notes').css('display', 'block'); 1784 $('#launch-fact1').addClass('is-on').css('opacity', 1); 1785 $('#blastoff').css({opacity:1,zIndex:100}).fadeIn(500); 1786 }); 1787 1788 $('#atl-nose-left').animate({width:atlas.lines.noseleft.sw, height:atlas.lines.noseleft.sh, top:atlas.lines.noseleft.sy, left:atlas.lines.noseleft.sx}, speed); 1789 $('#atl-nose-right').animate({width:atlas.lines.noseright.sw, height:atlas.lines.noseright.sh, top:atlas.lines.noseright.sy, left:atlas.lines.noseright.sx}, speed); 1790 $('#atl-osiris').animate({width:atlas.lines.osiris.sw, height:atlas.lines.osiris.sh, top:atlas.lines.osiris.sy, left:atlas.lines.osiris.sx}, speed); 1791 $('#atl-stage2').animate({width:atlas.lines.stage2.sw, height:atlas.lines.stage2.sh, top:atlas.lines.stage2.sy, left:atlas.lines.stage2.sx}, speed); 1792 $('#atl-coupling').animate({width:atlas.lines.coupling.sw, height:atlas.lines.coupling.sh, top:atlas.lines.coupling.sy, left:atlas.lines.coupling.sx}, speed); 1793 $('#atl-stage1').animate({width:atlas.lines.stage1.sw, height:atlas.lines.stage1.sh, top:atlas.lines.stage1.sy, left
1793:atlas.lines.stage1.sx}, speed); 1794 $('#atl-booster').animate({width:atlas.lines.booster.sw, height:atlas.lines.booster.sh, top:atlas.lines.booster.sy, left:atlas.lines.booster.sx}, speed); 1795 1796 setTimeout(function(){ 1797 $('#atlas-launch .grad').animate({bottom:-60, opacity:0}, 500); 1798 $('#atlas-scaled').fadeOut(500); 1799 $('#show-scale').fadeIn(500); 1800 }, speed * .8); 1801 1802 $('#cutaway-facts').removeClass('is-on'); 1803 } 1804 1805 function showAtlas() 1806 { 1807 atlas.init(); 1808 $('#atlas-launch').css({top:0}).fadeIn(1000); 1809 $('#m-atlas').hide(); 1810 $('#atlas-scale').hide(); 1811 setStage(); 1812 } 1813 1814 function spreadAtlas() 1815 { 1816 var speed = 1200; 1817 1818 $('#at-nose-left').animate({left: atlas.pieces.noseleft.xx}, speed); 1819 $('#at-nose-right').animate({left: atlas.pieces.noseright.xx}, speed); 1820 $('#at-connector3').animate({top: atlas.pieces.connector3.xy}, speed); 1821 $('#at-stage2').animate({top: atlas.pieces.stage2.xy}, speed); 1822 $('#at-connector2').animate({top: atlas.pieces.connector2.xy}, speed); 1823 $('#at-connector2-back').animate({top: atlas.pieces.connector2back.xy}, speed); 1824 $('#at-connector1').animate({top: atlas.pieces.connector1.xy}, speed); 1825 $('#at-connector1-back').animate({top: atlas.pieces.connector1back.xy}, speed); 1826 $('#at-stage1').animate({top: atlas.pieces.stage1.xy}, speed); 1827 $('#at-booster').animate({top: atlas.pieces.booster.xy, left: atlas.pieces.booster.xx}, speed); 1828 $('#at-thruster').animate({top: atlas.pieces.thruster.xy}, speed, function(){ 1829 $('.plus').addClass('active'); 1830 $('#at-nose-left').click(); 1831 }); 1832 $('#expand-model').stop().fadeOut(500, function(){ 1833 $('#collapse').fadeIn(500); 1834 }); 1835 } 1836 1837 function collapseAtlas(callback) 1838 { 1839 var speed = 1200; 1840 1841 $('.plus').removeClass('active'); 1842 $('.fact').removeClass('is-on').addClass('hidden'); 1843 $('#at-nose-left').animate({left: atlas.pieces.noseleft.ox}, speed); 1844 $('#at-nose-right').animate({left: atlas.pieces.noseright.ox}, speed); 1845 $('#at-connector3').animate({top: atlas.pieces.connector3.oy}, speed); 1846 $('#at-stage2').animate({top: atlas.pieces.stage2.oy}, speed); 1847 $('#at-connector2').animate({top: atlas.pieces.connector2.oy}, speed); 1848 $('#at-connector2-back').animate({top: atlas.pieces.connector2back.oy}, speed); 1849 $('#at-connector1').animate({top: atlas.pieces.connector1.oy}, speed); 1850 $('#at-connector1-back').animate({top: atlas.pieces.connector1back.oy}, speed); 1851 $('#at-stage1').animate({top: atlas.pieces.stage1.oy}, speed); 1852 $('#at-booster').animate({top: atlas.pieces.booster.oy, left: atlas.pieces.booster.ox}, speed); 1853 $('#at-thruster').animate({top: atlas.pieces.thruster.oy}, speed); 1854 $('#collapse').fadeOut(500, function(){ 1855 $('#expand-model').fadeIn(500); 1856 }); 1857 1858 if(callback) 1859 { 1860 setTimeout(function(){callback();}, speed); 1861 } 1862 } 1863 1864 function collapseAndScaleAtlas(callback) 1865 { 1866 var speed = 1200; 1867 1868 $('.plus').removeClass('active'); 1869 $('.fact').removeClass('is-on').addClass('hidden'); 1870 $('#at-nose-left').animate({left: atlas.pieces.noseleft.ox}, speed); 1871 $('#at-nose-right').animate({left: atlas.pieces.noseright.ox}, speed); 1872 $('#at-connector3').animate({top: atlas.pieces.connector3.oy}, speed); 1873 $('#at-stage2').animate({top: atlas.pieces.stage2.oy}, speed); 1874 $('#at-connector2').animate({top: atlas.pieces.connector2.oy}, speed); 1875 $('#at-connector2-back').animate({top: atlas.pieces.connector2back.oy}, speed); 1876 $('#at-connector1').animate({top: atlas.pieces.connector1.oy}, speed); 1877 $('#at-connector1-back').animate({top: atlas.pieces.connector1back.oy}, speed); 1878 $('#at-stage1').animate({top: atlas.pieces.stage1.oy}, speed); 1879 $('#at-booster').animate({top: atlas.pieces.booster.oy, left: atlas.pieces.booster.ox}, speed); 1880 $('#at-thruster').animate({top: atlas.pieces.thruster.oy}, speed, function(){ 1881 scaleObject($('#at-nose-left'), atlas.pieces.noseleft, 'scaled', speed); 1882 scaleObject($('#at-nose-right'), atlas.pieces.noseright, 'scaled', speed); 1883 scaleObject($('#at-osiris'), atlas.pieces.osiris, 'scaled', speed); 1884 scaleObject($('#at-connector3'), atlas.pieces.connector3, 'scaled', speed); 1885 scaleObject($('#at-stage2'), atlas.pieces.stage2, 'scaled', speed); 1886 scaleObject($('#at-connector2'), atlas.pieces.connector2, 'scaled', speed); 1887 scaleObject($('#at-connector2-back'), atlas.pieces.connector2back, 'scaled', speed); 1888 scaleObject($('#at-connector1'), atlas.pieces.connector1, 'scaled', speed); 1889 scaleObject($('#at-connector1-back'), atlas.pieces.connector1back, 'scaled', speed); 1890 scaleObject($('#at-stage1'), atlas.pieces.stage1, 'scaled', speed); 1891 scaleObject($('#at-booster'), atlas.pieces.booster, 'scaled', speed); 1892 scaleObject($('#at-thruster'), atlas.pieces.thruster, 'scaled', speed); 1893 if(callback) 1894 { 1895 setTimeout(function(){callback();}, speed); 1896 } 1897 }); 1898 $('#collapse').fadeOut(500); 1899 1900 1901 } 1902 1903 function showSpread(){ 1904 var speed = 1000; 1905 1906 $('.plus').removeClass('active'); 1907 $('.fact').removeClass('is-on').addClass('hidden'); 1908 $('#expand-model').hide(); 1909 $('#m-atlas').fadeIn(speed, function(){ 1910 scaleObject($('#at-nose-left'), atlas.pieces.noseleft, 'original', speed); 1911 scaleObject($('#at-nose-right'), atlas.pieces.noseright, 'original', speed); 1912 scaleObject($('#at-osiris'), atlas.pieces.osiris, 'original', speed); 1913 scaleObject($('#at-connector3'), atlas.pieces.connector3, 'original', speed); 1914 scaleObject($('#at-stage2'), atlas.pieces.stage2, 'original', speed); 1915 scaleObject($('#at-connector2'), atlas.pieces.connector2, 'original', speed); 1916 scaleObject($('#at-connector2-back'), atlas.pieces.connector2back, 'original', speed); 1917 scaleObject($('#at-connector1'), atlas.pieces.connector1, 'original', speed); 1918 scaleObject($('#at-connector1-back'), atlas.pieces.connector1back, 'original', speed); 1919 scaleObject($('#at-stage1'), atlas.pieces.stage1, 'original', speed); 1920 scaleObject($('#at-booster'), atlas.pieces.booster, 'original', speed); 1921 scaleObject($('#at-thruster'), atlas.pieces.thruster, 'original', speed); 1922 1923 setTimeout(function(){ 1924 spreadAtlas(); 1925 $('#atlas-scale').fadeIn(500); 1926 }, speed); 1927 }); 1928 atlas.state = 'full'; 1929 $('#cutaway-facts').removeClass('is-on'); 1930 $('#atlas-launchprep').fadeOut(500); 1931 $('#atlas-scaled').fadeOut(500); 1932 } 1933 1934 function showScale() 1935 { 1936 var speed = 1000; 1937 $('#atlas-height, .plus').removeClass('active'); 1938 $('#atlas-height span').hide(); 1939 1940 $('#m-atlas').animate({scrollTop: 0}, 500, function(){ 1941 scaleObject($('#at-nose-left'), atlas.pieces.noseleft, 'scaled', speed); 1942 scaleObject($('#at-nose-right'), atlas.pieces.noseright, 'scaled', speed); 1943 scaleObject($('#at-osiris'), atlas.pieces.osiris, 'scaled', speed); 1944 scaleObject($('#at-connector3'), atlas.pieces.connector3, 'scaled', speed); 1945 scaleObject($('#at-stage2'), atlas.pieces.stage2, 'scaled', speed); 1946 scaleObject($('#at-connector2'), atlas.pieces.connector2, 'scaled', speed); 1947 scaleObject($('#at-connector2-back'), atlas.pieces.connector2back, 'scaled', speed); 1948 scaleObject($('#at-connector1'), atlas.pieces.connector1, 'scaled', speed); 1949 scaleObject($('#at-connector1-back'), atlas.pieces.connector1back, 'scaled', speed); 1950 scaleObject($('#at-stage1'), atlas.pieces.stage1, 'scaled', speed); 1951 scaleObject($('#at-booster'), atlas.pieces.booster, 'scaled', speed); 1952 scaleObject($('#at-thruster'), atlas.pieces.thruster, 'scaled', speed); 1953 1954 setTimeout(function(){ 1955 $('#m-atlas').fadeOut(speed); 1956 }, speed); 1957 1958 $('#atlas-scaled').delay(speed * .8).fadeIn(speed, function(){ 1959 $('#cutaway-facts').css({zIndex:300, opacity:1}).addClass('is-on'); 1960 $('#atlas-launchprep').fadeIn(500); 1961 $('#collapse').fadeOut(500); 1962 $('#atlas-scale').fadeOut(500); 1963 $('#expand').fadeIn(500); 1964 1965 setTimeout(function(){ 1966 $('#atlas-height').addClass('active'); 1967 }, 1000); 1968 setTimeout(function(){ 1969 $('#atlas-height span').fadeIn(); 1970 }, 1600); 1971 1972 atlas.state = 'scaled'; 1973 }); 1974 }); 1975 } 1976 1977 function backToScale(){ 1978 1979 var speed = 1000;
1980 var scrollSpeed = 1000 * ($(window).scrollTop() / 10000); 1981 1982 scaleObject($('#at-nose-left'), atlas.pieces.noseleft, 'scaled', speed); 1983 scaleObject($('#at-nose-right'), atlas.pieces.noseright, 'scaled', speed); 1984 scaleObject($('#at-osiris'), atlas.pieces.osiris, 'scaled', speed); 1985 scaleObject($('#at-connector3'), atlas.pieces.connector3, 'scaled', speed); 1986 scaleObject($('#at-stage2'), atlas.pieces.stage2, 'scaled', speed); 1987 scaleObject($('#at-connector2'), atlas.pieces.connector2, 'scaled', speed); 1988 scaleObject($('#at-connector2-back'), atlas.pieces.connector2back, 'scaled', speed); 1989 scaleObject($('#at-connector1'), atlas.pieces.connector1, 'scaled', speed); 1990 scaleObject($('#at-connector1-back'), atlas.pieces.connector1back, 'scaled', speed); 1991 scaleObject($('#at-stage1'), atlas.pieces.stage1, 'scaled', speed); 1992 scaleObject($('#at-booster'), atlas.pieces.booster, 'scaled', speed); 1993 scaleObject($('#at-thruster'), atlas.pieces.thruster, 'scaled', speed); 1994 1995 //mode setting 1996 var offleft; 1997 if(mode == 'full') 1998 { 1999 offleft = '50%'; 2000 } 2001 else if(mode == 'medium') 2002 { 2003 offleft = '70%'; 2004 } 2005 else 2006 { 2007 offleft = '70%'; 2008 } 2009 2010 $('html,body').animate({scrollTop: 0}, scrollSpeed, function(){ 2011 $('#line-ground').fadeOut(500); 2012 $('#launch-fact1').removeClass('is-on').css({zIndex:-1, opacity:0}); 2013 $('#atlas-lines').animate({left:offleft, top:100}, speed, function(){ 2014 $('#atlas-launch .grad').css({bottom:0, opacity:1}); 2015 $('#atlas-lines').css({position:'absolute'}); 2016 $('#atlas-launch').css('height', '100%').animate({top:'-100%'}, speed); 2017 //$('#atlas-scaled').fadeIn(500); 2018 $('#launch-notes').css('display', 'none'); 2019 $('#expand-model').hide(); 2020 2021 2022 $('#m-atlas').fadeIn(speed); 2023 atlas.state = 'full'; 2024 $('#cutaway-facts').removeClass('is-on'); 2025 $('#atlas-launchprep').fadeOut(500); 2026 $('#atlas-scaled').fadeOut(500); 2027 $('.plus').removeClass('active'); 2028 2029 }).animate({top: h + 100}, speed, function(){ 2030 scaleObject($('#at-nose-left'), atlas.pieces.noseleft, 'original', speed); 2031 scaleObject($('#at-nose-right'), atlas.pieces.noseright, 'original', speed); 2032 scaleObject($('#at-osiris'), atlas.pieces.osiris, 'original', speed); 2033 scaleObject($('#at-connector3'), atlas.pieces.connector3, 'original', speed); 2034 scaleObject($('#at-stage2'), atlas.pieces.stage2, 'original', speed); 2035 scaleObject($('#at-connector2'), atlas.pieces.connector2, 'original', speed); 2036 scaleObject($('#at-connector2-back'), atlas.pieces.connector2back, 'original', speed); 2037 scaleObject($('#at-connector1'), atlas.pieces.connector1, 'original', speed); 2038 scaleObject($('#at-connector1-back'), atlas.pieces.connector1back, 'original', speed); 2039 scaleObject($('#at-stage1'), atlas.pieces.stage1, 'original', speed); 2040 scaleObject($('#at-booster'), atlas.pieces.booster, 'original', speed); 2041 scaleObject($('#at-thruster'), atlas.pieces.thruster, 'original', speed); 2042 2043 setTimeout(function(){ 2044 2045 $('#at-nose-left').stop().animate({left: atlas.pieces.noseleft.xx}, speed); 2046 $('#at-nose-right').stop().animate({left: atlas.pieces.noseright.xx}, speed); 2047 $('#at-connector3').stop().animate({top: atlas.pieces.connector3.xy}, speed); 2048 $('#at-stage2').stop().animate({top: atlas.pieces.stage2.xy}, speed); 2049 $('#at-connector2').stop().animate({top: atlas.pieces.connector2.xy}, speed); 2050 $('#at-connector2-back').stop().animate({top: atlas.pieces.connector2back.xy}, speed); 2051 $('#at-connector1').stop().animate({top: atlas.pieces.connector1.xy}, speed); 2052 $('#at-connector1-back').stop().animate({top: atlas.pieces.connector1back.xy}, speed); 2053 $('#at-stage1').stop().animate({top: atlas.pieces.stage1.xy}, speed); 2054 $('#at-booster').stop().animate({top: atlas.pieces.booster.xy, left: atlas.pieces.booster.xx}, speed); 2055 $('#at-thruster').stop().animate({top: atlas.pieces.thruster.xy}, speed, function(){ 2056 $('.plus').stop().addClass('active'); 2057 }); 2058 $('#collapse').fadeIn(500); 2059 $('#atlas-scale').fadeIn(500); 2060 $('#atlas-launch-process').fadeIn(500); 2061 }, 2000); 2062 }); 2063 2064 $('#atl-nose-left').animate({width:atlas.lines.noseleft.w, height:atlas.lines.noseleft.h, top:atlas.lines.noseleft.y, left:atlas.lines.noseleft.x}, speed); 2065 $('#atl-nose-right').animate({width:atlas.lines.noseright.w, height:atlas.lines.noseright.h, top:atlas.lines.noseright.y, left:atlas.lines.noseright.x}, speed); 2066 $('#atl-osiris').animate({width:atlas.lines.osiris.w, height:atlas.lines.osiris.h, top:atlas.lines.osiris.y, left:atlas.lines.osiris.x}, speed); 2067 $('#atl-stage2').animate({width:atlas.lines.stage2.w, height:atlas.lines.stage2.h, top:atlas.lines.stage2.y, left:atlas.lines.stage2.x}, speed);
2068 $('#atl-coupling').animate({width:atlas.lines.coupling.w, height:atlas.lines.coupling.h, top:atlas.lines.coupling.y, left:atlas.lines.coupling.x}, speed); 2069 $('#atl-stage1').animate({width:atlas.lines.stage1.w, height:atlas.lines.stage1.h, top:atlas.lines.stage1.y, left:atlas.lines.stage1.x}, speed); 2070 $('#atl-booster').animate({width:atlas.lines.booster.w, height:atlas.lines.booster.h, top:atlas.lines.booster.y, left:atlas.lines.booster.x}, speed); 2071 }); 2072 } 2073 2074 function prepLaunch() 2075 { 2076 var speed = 1000; 2077 2078 //mode setting 2079 var offleft, t1, t2, lp, lt; 2080 if(mode == 'full') 2081 { 2082 t1 = '58%'; 2083 t2 = '75%'; 2084 lt = '66%'; 2085 lp = '66%'; 2086 offleft = '50%'; 2087 } 2088 else if(mode == 'medium') 2089 { 2090 t1 = '55%'; 2091 t2 = '78%'; 2092 lt = '64%'; 2093 lp = '64%'; 2094 offleft = '70%'; 2095 } 2096 else 2097 { 2098 t1 = '55%'; 2099 t2 = '78%'; 2100 lt = '64%'; 2101 lp = '64%'; 2102 offleft = '70%'; 2103 } 2104 2105 $('#tower1').css({left:t1}); 2106 $('#tower2').css({left:t2}); 2107 $('#launch-tower').css({left:lt}); 2108 $('#launchpad').css({left:lp}); 2109 2110 $('#timeline').fadeIn(); 2111 2112 $('html, body').animate({scrollTop: 0}, 100); 2113 2114 $('#atlas-launch .grad').css({bottom:0, opacity:1}); 2115 $('#atlas-launch').css('display', 'block').animate({top:0}, speed); 2116 $('#atlas-lines').css({left: offleft}).animate({top:100}, speed, function(){ 2117 atlas.state = 'line'; 2118 $('#atlas-lines').css({position:'fixed'}); 2119 $('#atlas-launch').css('height', '20000px'); 2120 $('#atlas-lines').animate({left:'70%', top:launchOffset}, speed, function(){ 2121 $('#expand').fadeOut(500); 2122 $('#atlas-launchprep').fadeOut(500); 2123 $('#atlas-scale').fadeIn(500); 2124 $('#line-ground').css({top: launchOffset + 320}).fadeIn(500); 2125 $('#launch-notes').css('display', 'block'); 2126 $('#launch-fact1').addClass('is-on').css('opacity', 1); 2127 }); 2128 2129 $('#atl-nose-left').animate({width:atlas.lines.noseleft.sw, height:atlas.lines.noseleft.sh, top:atlas.lines.noseleft.sy, left:atlas.lines.noseleft.sx}, speed); 2130 $('#atl-nose-right').animate({width:atlas.lines.noseright.sw, height:atlas.lines.noseright.sh, top:atlas.lines.noseright.sy, left:atlas.lines.noseright.sx}, speed); 2131 $('#atl-osiris').animate({width:atlas.lines.osiris.sw, height:atlas.lines.osiris.sh, top:atlas.lines.osiris.sy, left:atlas.lines.osiris.sx}, speed); 2132 $('#atl-stage2').animate({width:atlas.lines.stage2.sw, height:atlas.lines.stage2.sh, top:atlas.lines.stage2.sy, left:atlas.lines.stage2.sx}, speed); 2133 $('#atl-coupling').animate({width:atlas.lines.coupling.sw, height:atlas.lines.coupling.sh, top:atlas.lines.coupling.sy, left:atlas.lines.coupling.sx}, speed); 2134 $('#atl-stage1').animate({width:atlas.lines.stage1.sw, height:atlas.lines.stage1.sh, top:atlas.lines.stage1.sy, left
2134:atlas.lines.stage1.sx}, speed); 2135 $('#atl-booster').animate({width:atlas.lines.booster.sw, height:atlas.lines.booster.sh, top:atlas.lines.booster.sy, left:atlas.lines.booster.sx}, speed); 2136 }); 2137 setTimeout(function(){ 2138 $('#atlas-launch .grad').animate({bottom:-60, opacity:0}, 500); 2139 $('#atlas-scaled').fadeOut(500); 2140 $('#show-scale').fadeIn(500); 2141 }, speed * .8); 2142 2143 $('#cutaway-facts').removeClass('is-on'); 2144 } 2145 2146 function returnLaunch() 2147 { 2148 var speed = 1000; 2149 setTimeline("September", "8", "2016"); 2150 2151 $('#atlas-launch, #launch-notes, #atlas-scale').fadeIn(speed); 2152 $('#atlas-cruise, #atlas-launchprep').fadeOut(speed, function(){ 2153 atlas.state = 'line'; 2154 $('html, body').animate({scrollTop: 18000}, 100); 2155 }); 2156 } 2157 2158 function showCruise() 2159 { 2160 var speed = 1000; 2161 setTimeline("September", "8", "2016"); 2162 2163 cruise.init(); 2164 2165 try { 2166 $('#m1-video').get(0).currentTime = 0; 2167 } catch(error) { 2168 if (error.code === 11) { 2169 2170 } 2171 } 2172 2173 2174 2175 $('#m1-video').show(); 2176 $('#atlas-cruise').fadeIn(speed, function(){ 2177 if(!window.iOS) 2178 { 2179 if(!$('#m1-video').data('events')) 2180 $('#m1-video').get(0).addEventListener('ended', closeM1, false); 2181 2182 $('#m1-video').get(0).play(); 2183 } 2184 else 2185 { 2186 getVideo('m1-video'); 2187 } 2188 2189 }); 2190 atlas.state = 'cruise'; 2191 } 2192 2193 function closeM1() 2194 { 2195 if(cruise.running == 'm1') 2196 return false; 2197 2198 cruise.running = 'm1'; 2199 2200 //$('#c-m1-video video').remove(); 2201 2202 var radius, eoffset; 2203 if(mode == 'full') 2204 { 2205 radius = 800; 2206 eoffset = cruise.earth.stage1.tx; 2207 } 2208 else if(mode == 'medium') 2209 { 2210 radius = 500; 2211 eoffset = -1600; 2212 } 2213 else 2214 { 2215 radius = 400; 2216 eoffset = -1600; 2217 } 2218 2219 var speed = 3000; 2220 var arc_params = { 2221 center: [w / 3, h / 2.4], 2222 radius: radius, 2223 start: 30, 2224 end: 100, 2225 dir: 1 2226 }; 2227 $('#m1-video').fadeOut(500);
2228 $('#cruise-earth').animate({opacity:1, left:eoffset, top: cruise.earth.stage1.ty, width:cruise.earth.stage1.tw, height:cruise.earth.stage1.th}, speed, 'linear', function(){ 2229 $('#cruise-earth').animate({width:cruise.earth.stage1.tw2, height:cruise.earth.stage1.th2, top: cruise.earth.stage1.ty2, left:cruise.earth.stage1.tx2, opacity:0}, speed); 2230 $('#cruise-space').animate({opacity:1}, 4000); 2231 }); 2232 $('#mnav-inner-progress').animate({width: '16%'}, speed, function(){ 2233 $('#mission-nav-cruise-so').addClass('active current'); 2234 }); 2235 2236 $('#cruise-osiris').animate({opacity:1, path : new $.path.arc(arc_params), width: 56, height:28}, speed, function(){ 2237 2238 try { 2239 $('#m2-video').get(0).currentTime = 0; 2240 } catch(error) { 2241 if (error.code === 11) { 2242 2243 } 2244 } 2245 2246 $('#cruise-info-1 p, #m2-video').css('display', 'none'); 2247 $('#cruise-grad').css({width:'15%'}).animate({width:0}, 700); 2248 $('#cruise-info').animate({left:0}, 500, function(){ 2249 $('#cruise-info-1 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 2250 $('#cruise-info-1 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 2251 2252 if(window.iOS) 2253 { 2254 getVideo('m2-video'); 2255 } 2256 else 2257 { 2258 2259 var video = $('<video>').addClass('story-video').attr('id', 'm2-video'); 2260 var src1 = $('<source>').attr('src', window.video_url + 'outbound_cruise.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2261 var src2 = $('<source>').attr('src', window.video_url + 'outbound_cruise.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2262 2263 video.append(src1).append(src2); 2264 2265 $('#c-m2-video').html(video); 2266 2267 $('#m2-video').fadeIn(500, function(){ 2268 2269 $('#m2-video').get(0).play(); 2270 2271 if(!$('#m2-video').data('events')) 2272 { 2273 $('#m2-video').get(0).addEventListener('ended', function(){ 2274 $('#cruise-1-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 2275 $(this).addClass('is-on'); 2276 }); 2277 }, false); 2278 } 2279 2280 cruise.running = false; 2281 2282 }); 2283 } 2284 2285 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Cruise - Outbound Cruise'); 2286 2287 $('#cruise-info-1 p').fadeIn(500); 2288 $('#cruise-1-next').fadeIn(); 2289 2290 }); 2291 }); 2292 }); 2293 2294 }); 2295 } 2296 2297 function moveToM3() 2298 { 2299 if(cruise.running == 'm3') 2300 return false; 2301 2302 cruise.running = 'm3'; 2303 2304 /* set initial defaults for magic jump */ 2305 var eoffset; 2306 if(mode == 'full') 2307 { 2308 eoffset = cruise.earth.stage1.tx; 2309 } 2310 else if(mode == 'medium') 2311 { 2312 eoffset = -1600; 2313 } 2314 else 2315 { 2316 eoffset = -1600; 2317 } 2318 if(parseInt($('#cruise-earth').css('left')) != eoffset) 2319 $('#cruise-earth').css({width:cruise.earth.stage1.tw2, height:cruise.earth.stage1.th2, top: cruise.earth.stage1.ty2, left:cruise.earth.stage1.tx2, opacity:1}); 2320 $('#cruise-space').css({opacity:1}); 2321 $('#cruise-osiris').css({opacity:1, width: 56, height:28}); 2322 if(parseInt($('#cruise-osiris').css('top')) > h / 2) 2323 $('#cruise-osiris').css('left', w * .8); 2324 $('#cruise-bennu, #m1-bennu-ios').css({width:0, height:0, top:140, left:100}); 2325 2326 $('.mission-subnav-button').removeClass('current'); 2327 //$('#c-m2-video video').remove(); 2328 2329 setTimeline("September", "22", "2017"); 2330 2331 $('#cruise-1-next').fadeOut(); 2332 $('#cruise-content').animate({left: 0}, 500); 2333 $('#cruise-info').animate({left:'-55%'}, 500, function(){ 2334 try { 2335 $('#m2-video').get(0).currentTime = 0; 2336 } catch(error) { 2337 if (error.code === 11) { 2338 2339 } 2340 } 2341 $('#mnav-inner-progress').animate({width: '21%'}, 5000, function(){ 2342 $('#mission-nav-cruise-ga').addClass('active current'); 2343 }); 2344 $('#cruise-earth').stop().css({width:0, height:0, left:w / 2, top:140, opacity:1}).delay(1000).animate({width:cruise.earth.stage2.tw, height:cruise.earth.stage2.th, left
2344:cruise.earth.stage2.tx, top: cruise.earth.stage2.ty}, 5000, function(){ 2345 2346 try { 2347 $('#m3-video').get(0).currentTime = 0; 2348 } catch(error) { 2349 if (error.code === 11) { 2350 2351 } 2352 } 2353 $('#cruise-info-1').hide(); 2354 $('#cruise-info-2').show(); 2355 $('#cruise-info-2 p, #m3-video').css('display', 'none'); 2356 $('#cruise-grad').css({width:'15%'}).animate({width:0}, 700); 2357 $('#cruise-content').animate({left: '50%'}, 500); 2358 $('#cruise-info').animate({left:0}, 500, function(){ 2359 2360 $('#cruise-info-2 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 2361 $('#cruise-info-2 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 2362 2363 if(window.iOS) 2364 { 2365 getVideo('m3-video'); 2366 } 2367 else 2368 { 2369 2370 var video = $('<video>').addClass('story-video').attr('id', 'm3-video'); 2371 var src1 = $('<source>').attr('src', window.video_url + 'gravity-assist.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2372 var src2 = $('<source>').attr('src', window.video_url + 'gravity-assist.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2373 video.append(src1).append(src2); 2374 2375 $('#c-m3-video').html(video); 2376 2377 $('#m3-video').fadeIn(500, function(){ 2378 $('#m3-video').get(0).play(); 2379 2380 if(!$('#m3-video').data('events')) 2381 { 2382 $('#m3-video').get(0).addEventListener('ended', function(){ 2383 $('#cruise-2-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 2384 $(this).addClass('is-on'); 2385 }); 2386 }, false); 2387 } 2388 2389 cruise.running = false; 2390 2391 }); 2392 } 2393 2394 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Cruise - Gravity Assist'); 2395 2396 $('#cruise-info-2 p').fadeIn(500); 2397 $('#cruise-2-next').fadeIn(); 2398 2399 }); 2400 }); 2401 }); 2402 2403 }); 2404 $('#cruise-osiris').animate({width:594, height:295, top:300}, 5000); 2405 }); 2406 2407 2408 } 2409 2410 function moveToM4() 2411 { 2412 setTimeline("September", "22", "2018"); 2413 $('.mission-subnav-button').removeClass('current'); 2414 //$('#c-m3-video video').remove(); 2415 2416 $('#cruise-2-next').fadeOut(); 2417 $('#cruise-content').animate({left: 0}, 500); 2418 $('#cruise-info').animate({left:'-55%'}, 500, function(){ 2419 2420 2421 $('#mnav-inner-progress').animate({width: '27%'}, 5000, function(){ 2422 $('#mission-nav-arrival').click(); 2423 }); 2424 $('#cruise-space').animate({opacity:0}
2424, 1000); 2425 $('#cruise-earth').animate({width: 2000, height:2000, top:-600, left:-1500, opacity:0}, 2000); 2426 $('#cruise-osiris').animate({width:756, height:375, top:500, left:w - 400}, 4000); 2427 if(window.iOS) 2428 { 2429 $('#m1-bennu-ios').css('opacity', 1).delay(1000).animate({width:915, height:824}, 6000); 2430 } 2431 else 2432 { 2433 var video = $('<video>').addClass('story-video').attr('id', 'cruise-bennu').attr('loop', 'true'); 2434 var src1 = $('<source>').attr('src', window.video_url + 'bennu-rotation.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2435 var src2 = $('<source>').attr('src', window.video_url + 'bennu-rotation.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2436 video.append(src1).append(src2); 2437 2438 $('#c-cruise-bennu').html(video); 2439 $('#cruise-bennu').css('opacity', 1).delay(1000).animate({width:1200, height:1200, top:-300}, 6000); 2440 $('#cruise-bennu').get(0).play(); 2441 } 2442 }); 2443 } 2444 2445 function showArrival() 2446 { 2447 arrival.init(); 2448 var speed = 1000; 2449 setTimeline("December", "3", "2018"); 2450 2451 $('.mission-subnav-button').removeClass('current'); 2452 2453 if(!iOS) 2454 { 2455 var video = $('<video>').addClass('story-video').attr('id', 'arrival-approach-video'); 2456 var src1 = $('<source>').attr('src', window.video_url + 'approach.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2457 var src2 = $('<source>').attr('src', window.video_url + 'approach.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2458 video.append(src1).append(src2); 2459 2460 $('#c-arrival-approach-video').html(video); 2461 2462 $('#arrival-approach-video').css({width:'100%', height:'auto'}).get(0).play(); 2463 2464 if(!$('#arrival-approach-video').data('events')) 2465 { 2466 $('#arrival-approach-video').get(0).addEventListener('ended', showA1, false); 2467 } 2468 } 2469 else 2470 { 2471 getVideo('arrival-approach-video'); 2472 } 2473 2474 $('#arrival').fadeIn(speed); 2475 setTimeout(function(){ 2476 $('#mnav-inner-progress').stop().animate({width: '32%'}, 4000); 2477 }, 1000); 2478 atlas.state = 'arrival'; 2479 } 2480 2481 function showA1() 2482 { 2483 if(arrival.running == 'a1') 2484 return false; 2485 2486 arrival.running = 'a1'; 2487 //$('#c-arrival-approach-video video').remove(); 2488 $('.mission-subnav-button').removeClass('current'); 2489 2490 try { 2491 $('#a1-video').get(0).currentTime = 0; 2492 } catch(error) { 2493 if (error.code === 11) { 2494 2495 } 2496 } 2497 $('#arrival-info-1 p, #a1-video').css('display', 'none'); 2498 $('#arrival-grad').css({width:'15%'}).animate({width:0}, 700); 2499 $('#arrival-info').css({width:'100%', left: '-100%', padding:0}).animate({left:0}, 500, function(){ 2500 $('#arrival-info-1 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 2501 $('#arrival-info-1 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 2502 2503 if(window.iOS) 2504 { 2505 getVideo('a1-video'); 2506 } 2507 else 2508 { 2509 /* v1 was approaching_bennu.mp4 */ 2510 var video = $('<video>').addClass('story-video').attr('id', 'a1-video'); 2511 var src1 = $('<source>').attr('src', window.video_url + 'approach-v2.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2512 var src2 = $('<source>').attr('src', window.video_url + 'approach-v2.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2513 video.append(src1).append(src2); 2514 2515 $('#c-a1-video').html(video); 2516 2517 $('#a1-video').fadeIn(500, function(){ 2518 $('#a1-video').get(0).play(); 2519 2520 if(!$('#a1-video').data('events')) 2521 { 2522 $('#a1-video').get(0).addEventListener('ended', function(){ 2523 $('#arrival-1-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 2524 $(this).addClass('is-on'); 2525 }); 2526 }, false); 2527 } 2528 2529 arrival.running = false;
2530 2531 }); 2532 } 2533 2534 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Approach - Approaching Bennu'); 2535 2536 $('#arrival-info-1 p').fadeIn(500); 2537 $('#arrival-1-next').fadeIn(); 2538 2539 }); 2540 }); 2541 }); 2542 } 2543 2544 function moveToA2() 2545 { 2546 if(arrival.running == 'a2') 2547 return false; 2548 2549 arrival.running = 'a2'; 2550 2551 2552 //$('#c-a1-video video').remove(); 2553 $('.mission-subnav-button').removeClass('current'); 2554 $('#mission-nav-arrival-sb').addClass('active current'); 2555 2556 var bleft; 2557 if(mode == 'full') 2558 { 2559 bleft = .2 2560 } 2561 else if(mode == 'medium') 2562 { 2563 bleft = .1; 2564 } 2565 else 2566 { 2567 bleft = .1; 2568 } 2569 2570 $('#arrival-1-next').fadeOut(); 2571 $('#arrival-1-next2').removeClass('is-on').animate({height:0}, 500); 2572 $('#arrival-2-next2').removeClass('is-on').css({height:0}); 2573 $('#arrival-content').animate({left: 0}, 500); 2574 $('#arrival-info').fadeOut(500, function(){ 2575 $('#arrival-info').css({width:'50%', left:'-55%', padding: '70px 20px', display:'block'}); 2576 //$('#arrival-approach-bennu, #arrival-approach-osiris').animate({opacity:0}
2576, 500); 2577 $('#arrival-space').animate({opacity:1}, 1000); 2578 //$('#arrival-bennu').css({width:150, height:150, left:$('#arrival-approach-bennu').css('left'), top:$('#arrival-approach-bennu').css('top')}).animate({width:1200, height:1127, top:-800, left:w * bleft, opacity:1}, 2500); 2579 //$('#arrival-osiris').css({width:25, height:25, left:$('#arrival-approach-osiris').css('left'), top:$('#arrival-approach-osiris').css('top')}).animate({width:400, height:400, top:'40%', left:w * .4, opacity:1}, 2500, function(){ 2580 $('#arrival-bennu').css({width:150, height:135, left:w * .4, top:h * .8}).animate({width:1200, height:1081, top:-800, left:w * bleft, opacity:1}, 2500); 2581 $('#arrival-osiris').css({width:25, height:62, left:w * .3, top:h * .85}).animate({width:281, height:700, top:'40%', left:w * .4, opacity:1}, 2500, function(){ 2582 2583 $('#arrival-info-1').css('display', 'none'); 2584 $('#arrival-info-2').css('display', 'block'); 2585 2586 setTimeline("September", "10", "2019"); 2587 try { 2588 $('#a2-video').get(0).currentTime = 0; 2589 } catch(error) { 2590 if (error.code === 11) { 2591 2592 } 2593 } 2594 $('#arrival-info-2 p, #a2-video').css('display', 'none'); 2595 $('#arrival-grad').css({width:'15%'}).animate({width:0}, 700); 2596 $('#mnav-inner-progress').stop().animate({width: '37%'}, 1000); 2597 $('#arrival-info').css({width:'100%', left:'-100%', padding:0}).animate({left:0}, 500, function(){ 2598 $('#arrival-info-2 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 2599 $('#arrival-info-2 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 2600 2601 if(window.iOS) 2602 { 2603 getVideo('a2-video'); 2604 } 2605 else 2606 { 2607 /* v1 was sensors.mp4 */ 2608 var video = $('<video>').addClass('story-video').attr('id', 'a2-video'); 2609 var src1 = $('<source>').attr('src', window.video_url + 'survey.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2610 var src2 = $('<source>').attr('src', window.video_url + 'survey.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2611 video.append(src1).append(src2); 2612 2613 $('#c-a2-video').html(video); 2614 2615 $('#a2-video').fadeIn(500, function(){ 2616 $('#a2-video').get(0).play(); 2617 2618 if(!$('#a2-video').data('events')) 2619 { 2620 $('#a2-video').get(0).addEventListener('ended', function(){ 2621 $('#arrival-2-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 2622 $(this).addClass('is-on'); 2623 }); 2624 }, false); 2625 } 2626 2627 arrival.running = false; 2628 2629 }); 2630 } 2631 2632 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Approach - Surveying Bennu'); 2633 2634 $('#arrival-info-2 .hide').fadeIn(500); 2635 $('#arrival-2-next').fadeIn(); 2636 2637 }); 2638 }); 2639 }); 2640 }); 2641 }); 2642 } 2643 2644 function moveToSensors() 2645 { 2646 if(arrival.running == 'ms') 2647 return false; 2648 2649 arrival.running = 'ms'; 2650 //$('#c-a2-video video').remove(); 2651 $('.mission-subnav-button').removeClass('current'); 2652 $('#mission-nav-arrival-ei').addClass('active current'); 2653 2654 $('#arrival-osiris').css({left:'50%', top:'50%', margin: '-350px 0 0 -100px'}); 2655 $('#arrival-2-next').fadeOut(); 2656 $('#arrival-2-next2').removeClass('is-on').animate({height:0}, 500); 2657 $('#inspect').fadeOut(); 2658 $('.inspect-sensor').removeClass('active'); 2659 $('#arrival-content').animate({left: 0}, 500); 2660 $('#arrival-info').fadeOut(500, function(){ 2661 $('#arrival-info').addClass('right').css({width:'50%', left:'auto', right:'-55%', padding: '70px 20px', display:'block'}); 2662 $('#arrival-grad').addClass('right'); 2663 2664 animate($('#arrival-osiris'), 1, 700, 10, 'forward', null); 2665 2666 $('#arrival-bennu').animate({top:-1200}, 1000); 2667 $('#arrival-space').animate({backgroundPositionY:400}, 1000, function(){ 2668 showInspect(); 2669 setTimeout(function(){ 2670 $('#inspect-ola').click(); 2671 $('#sensor-note').fadeIn(500); 2672 }, 1200); 2673 2674 setTimeout(function(){ 2675 $('#arrival-spec-next').css({opacity:1, zIndex:100}).addClass('is-on'); 2676 }, 5000); 2677 arrival.running = false;
2678 }); 2679 2680 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Approach - Show Sensors'); 2681 2682 }); 2683 } 2684 2685 function showInspect() 2686 { 2687 $('#inspect').fadeIn(500, function(){ 2688 $('.inspect-sensor').each(function(i, v){ 2689 setTimeout(function(){ 2690 $(v).addClass('active'); 2691 }, i * 100); 2692 }); 2693 }); 2694 } 2695 2696 function moveOffSensors() 2697 { 2698 $('#sensor-note').fadeOut(500); 2699 $('#arrival-spec-next').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 2700 $('.arrival-fact-box').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500); 2701 $('#inspect').fadeOut(); 2702 $('.inspect-sensor').removeClass('active').removeClass('selected'); 2703 $('#arrival-space').animate({backgroundPositionY:0}, 1000); 2704 animate($('#arrival-osiris'), 10, 700, 10, 'reverse', moveToA3); 2705 } 2706 2707 function moveToA3() 2708 { 2709 $('.mission-subnav-button').removeClass('current'); 2710 2711 var bleft, btop; 2712 if(mode == 'full') 2713 { 2714 bleft = .3; 2715 btop = .5; 2716 } 2717 else if(mode == 'medium') 2718 { 2719 bleft = .2; 2720 btop = .8; 2721 } 2722 else 2723 { 2724 bleft = .2; 2725 btop = .8; 2726 } 2727 2728 $('#arrival-bennu').animate({width:915, height:824, top:-h * btop, left: w * bleft}, 1000); 2729 $('#arrival-osiris').css('background-position', '0 0').animate({margin:0, width:100, height:249, top:h * .7, left:w * .55}, 1100, function(){ 2730 2731 $('#mission-nav-sample').click(); 2732 2733 }); 2734 } 2735 2736 function showSample() 2737 { 2738 var speed = 1000; 2739 sample.init(); 2740 setTimeline("July", "4", "2020"); 2741 $('.mission-subnav-button').removeClass('current'); 2742 2743 $('#sample-surface').hide(); 2744 2745 2746 var bleft, btop; 2747 if(mode == 'full') 2748 { 2749 bleft = .1; 2750 btop = .2; 2751 } 2752 else if(mode == 'medium') 2753 { 2754 bleft = .7; 2755 btop = .6; 2756 } 2757 else 2758 { 2759 bleft = .7; 2760 btop = .6; 2761 } 2762 2763 $('#arrival-info, #arrival-grad').removeClass('right'); 2764 $('#sample').fadeIn(500, function(){ 2765 $('#sample-osiris').animate({top:300}, {duration:2000, step: 2766 function(top){ 2767 if(top > 520) 2768 $('#sample-osiris').css('left', '+=5'); 2769 else if(top <= 520 && top > 480) 2770 $('#sample-osiris').css('left', '+=3'); 2771 else if(top <= 480 && top > 400) 2772 $('#sample-osiris').css('left', '+=1'); 2773 else if(top <= 400 && top > 350) 2774 $('#sample-osiris').css('left', '-=3'); 2775 else if(top <= 350 && top > 300) 2776 $('#sample-osiris').css('left', '-=5'); 2777 } 2778 }); 2779 $('#sample-bennu').animate({width:1300, height:1171, top: -h * btop, left:-w * bleft}, 2000, function(){ 2780 2781 $('#sample-1').css({opacity:1, zIndex:100}).addClass('is-on'); 2782 setTimeout(function(){ 2783 $('#sample-1-next').css({opacity: 1, zIndex:100}).addClass('is-on'); 2784 }, 2000); 2785 }); 2786 }); 2787 2788 } 2789 2790 function moveToS2() 2791 { 2792 if(sample.running == 's2') 2793 return false; 2794 2795 sample.running = 's2'; 2796 2797 $('.mission-subnav-button').removeClass('current'); 2798 $('#mission-nav-sample-dt').addClass('active current'); 2799 2800 $('#sample-surface').hide(); 2801 2802 try { 2803 $('#s1-video').get(0).currentTime = 0; 2804 } catch(error) { 2805 if (error.code === 11) { 2806 2807 } 2808 } 2809 $('#mnav-inner-progress').stop().animate({width: '49%'}, 4000); 2810 2811 $('#sample-1, #sample-1-next').removeClass('is-on').animate({opacity:0}
2811, 500); 2812 $('#sample-content').animate({left: 0}, 500); 2813 $('#sample-info').animate({left:'-105%'}, 500, function(){ 2814 $('#sample-osiris').animate({width:339, height:844, top:140, left: w * .55}, 1000); 2815 $('#sample-bennu').animate({width:2000, height:1801, left:-1200, top:-700}, 1000, function(){ 2816 2817 $('#sample-info-1, #sample-info-3, #sample-info-4').hide(); 2818 $('#sample-info-2').show(); 2819 $("#sample-info, #sample-grad").addClass('right'); 2820 $('#s1-video, #sample-info-2 p').css('display', 'none'); 2821 2822 $('#sample-grad').css({width:'15%'}).animate({width:0}, 700); 2823 //$('#sample-content').animate({left: '-25%'}, 500); 2824 $('#sample-info').css({width: '100%', right:'-105%'}).animate({right:0}, 500, function(){ 2825 2826 $('#sample-info-2 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 2827 $('#sample-info-2 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 2828 2829 if(window.iOS) 2830 { 2831 getVideo('s1-video'); 2832 } 2833 else 2834 { 2835 /* v1 was arm-deploy.mp4 */ 2836 var video = $('<video>').addClass('story-video').attr('id', 's1-video'); 2837 var src1 = $('<source>').attr('src', window.video_url + 'arm-deploy-v2.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 2838 var src2 = $('<source>').attr('src', window.video_url + 'arm-deploy-v2.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 2839 video.append(src1).append(src2); 2840 2841 $('#c-s1-video').html(video); 2842 2843 $('#s1-video').fadeIn(500, function(){ 2844 $('#s1-video').get(0).play(); 2845 2846 if(!$('#s1-video').data('events')) 2847 { 2848 $('#s1-video').get(0).addEventListener('ended', function(){ 2849 $('#sample-2-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 2850 $(this).addClass('is-on'); 2851 }); 2852 }, false); 2853 } 2854 2855 sample.running = false; 2856 2857 }); 2858 } 2859 2860 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Sample - Deploying TAGSAM'); 2861 2862 $('#sample-info-2 .hide').fadeIn(500); 2863 $('#sample-2-next').fadeIn(); 2864 2865 }); 2866 }); 2867 2868 }); 2869 2870 }); 2871 }); 2872 } 2873 2874 function moveToS3() 2875 { 2876 //$('#c-s1-video video').remove(); 2877 if(sample.running == 's3') 2878 return false; 2879 2880 sample.running = 's3'; 2881 2882 $('.mission-subnav-button').removeClass('current'); 2883 $('#mission-nav-sample-cs').addClass('active current'); 2884 2885 $('#sample-surface').hide(); 2886 2887 try { 2888 $('#s2-video-a').get(0).currentTime = 0; 2889 } catch(error) { 2890 if (error.code === 11) { 2891 2892 } 2893 } 2894 2895 $('#mnav-inner-progress').stop().animate({width: '54%'}, 4000); 2896 2897 var armleft; 2898 if(mode == 'full') 2899 { 2900 armleft = '50%'; 2901 } 2902 else if(mode == 'medium') 2903 { 2904 armleft = '70%'; 2905 } 2906 else 2907 { 2908 armleft = '70%'; 2909 } 2910 2911 var shard, d, ml, border, speed, bottom, fd; 2912 for(var i = 0; i < 200; i ++) 2913 { 2914 shard = $('<div>').addClass('shard'); 2915 $('#sample-surface').append(shard); 2916 } 2917 2918 $('#sample-2-next').fadeOut(); 2919 $('#sample-left, #sample-right').css({height:0}); 2920 $('#surface-arm, #surface-arm-vacuum, .shard').css({left: armleft}); 2921 $('#surface-arm-vacuum').css({backgroundPosition: '0 0'}).hide(); 2922 $('.surface-arm-door').css({ 2923 '-webkit-transform': 'rotate(0deg)', 2924 '-moz-transform': 'rotate(0deg)',
2925 '-ms-transform': 'rotate(0deg)', 2926 '-o-transform': 'rotate(0deg)', 2927 'transform': 'rotate(0deg)' 2928 }); 2929 $('#sample-2-next2').removeClass('is-on').animate({opacity:0}, 500); 2930 $('#sample-content').animate({left: 0}, 500); 2931 $('#sample-surface').show(); 2932 $('#sample-info').animate({opacity:0}, 500, function(){ 2933 $('#sample-info, #sample-grad').removeClass('right'); 2934 //$('#sample-bennu').animate({width:2900, height:2723, left:-1200, top:-800, opacity:0}, 1000); 2935 //$('#sample-osiris').animate({width:339, height:332, top:240, left: w * .65, opacity:0}, 1000); 2936 $('#surface-arm').animate({bottom:163}, 1000, function(){ 2937 2938 2939 2940 setTimeout(function(){ 2941 $('#surface-arm-vacuum').css({backgroundPosition: '0 0'}).fadeIn(500); 2942 }, 500); 2943 2944 setTimeout(function(){ 2945 $('#surface-arm-vacuum').css({backgroundPosition: '0 -464px'}); 2946 $('#sample-left, #sample-right').animate({height:54}, 1500); 2947 }, 1000); 2948 2949 setTimeout(function(){ 2950 $('#surface-arm-vacuum').css({backgroundPosition: '0 -880px'}); 2951 $({deg: 0}).animate({deg: 32}, { 2952 duration: 500, 2953 step: function(now) { 2954 $('#surface-arm-door-left').css({ 2955 '-webkit-transform': 'rotate(' + now + 'deg)', 2956 '-moz-transform': 'rotate(' + now + 'deg)', 2957 '-ms-transform': 'rotate(' + now + 'deg)', 2958 '-o-transform': 'rotate(' + now + 'deg)', 2959 'transform': 'rotate(' + now + 'deg)' 2960 }); 2961 } 2962 }); 2963 $({deg: 0}).animate({deg: -32}, { 2964 duration: 500, 2965 step: function(now) { 2966 $('#surface-arm-door-right').css({ 2967 '-webkit-transform': 'rotate(' + now + 'deg)', 2968 '-moz-transform': 'rotate(' + now + 'deg)', 2969 '-ms-transform': 'rotate(' + now + 'deg)', 2970 '-o-transform': 'rotate(' + now + 'deg)', 2971 'transform': 'rotate(' + now + 'deg)' 2972 }); 2973 } 2974 }); 2975 }, 1500); 2976 2977 setTimeout(function(){ 2978 $('#surface-arm-vacuum').css({backgroundPosition: '0 -1296px'}); 2979 }, 2000); 2980 2981 setTimeout(function(){ 2982 $('#surface-arm-vacuum').fadeOut(1000); 2983 $({deg: 32}).animate({deg: 0}, { 2984 duration: 500, 2985 step: function(now) { 2986 $('#surface-arm-door-left').css({ 2987 '-webkit-transform': 'rotate(' + now + 'deg)', 2988 '-moz-transform': 'rotate(' + now + 'deg)', 2989 '-ms-transform': 'rotate(' + now + 'deg)', 2990 '-o-transform': 'rotate(' + now + 'deg)', 2991 'transform': 'rotate(' + now + 'deg)' 2992 }); 2993 } 2994 }); 2995 $({deg: -32}).animate({deg: 0}, { 2996 duration: 500, 2997 step: function(now) { 2998 $('#surface-arm-door-right').css({ 2999 '-webkit-transform': 'rotate(' + now + 'deg)', 3000 '-moz-transform': 'rotate(' + now + 'deg)', 3001 '-ms-transform': 'rotate(' + now + 'deg)', 3002 '-o-transform': 'rotate(' + now + 'deg)', 3003 'transform': 'rotate(' + now + 'deg)' 3004 }); 3005 } 3006 }); 3007 }, 4000); 3008 3009 $('#acquisition-sim').css({opacity:1, zIndex:500}).addClass('is-on'); 3010 3011 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Sample - Acquisition Simulator'); 3012 3013 setTimeout(function(){ 3014 3015 var video = $('<video>').addClass('story-video').attr('id', 's2-video-a'); 3016 var src1 = $('<source>').attr('src', window.video_url + 'acquisition_sim.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3017 var src2 = $('<source>').attr('src', window.video_url + 'acquisition_sim.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3018 video.append(src1).append(src2); 3019 3020 $('#c-s2-video-a').html(video); 3021 3022 $('#s2-video-a').get(0).play(); 3023 3024 }, 500); 3025 3026 setTimeout(function(){ 3027 $('#acquisition-next').css({opacity:1, zIndex:500}).addClass('is-on'); 3028 }, 6000); 3029 3030 setTimeout(function(){ 3031 $('.shard').each(function(i, v){ 3032 d = Math.random() * (10 - 1) + 1; 3033 border = Math.random() * (20 - 5) + 5; 3034 ml = Math.random() * (300 - 5) + 5; 3035 speed = Math.random() * (5000 - 800) + 800; 3036 bottom = 150 + Math.random() * (300 - 100) + 100; 3037 fd = 360; 3038 3039 if(d < 5) 3040 { 3041 ml *= -1; 3042 fd = -360; 3043 } 3044 3045 3046 $(this).css({marginLeft: ml, borderTop: border + "px solid #4693B6", borderLeft: border + "px solid transparent", borderRight:border + "px solid transparent"}).animate({ 3047 opacity:0, 3048 marginLeft: ml * 1.8, 3049 bottom: bottom 3050 }, speed, function(){ 3051 $(this).remove(); 3052 }); 3053 3054 $({deg: 0}).animate({deg: fd}, { 3055 duration: speed, 3056 step: function(now) { 3057 $(v).css({
3058 '-webkit-transform': 'rotate(' + now + 'deg)', 3059 '-moz-transform': 'rotate(' + now + 'deg)', 3060 '-ms-transform': 'rotate(' + now + 'deg)', 3061 '-o-transform': 'rotate(' + now + 'deg)', 3062 'transform': 'rotate(' + now + 'deg)' 3063 }); 3064 } 3065 }); 3066 }); 3067 3068 }, 5000); 3069 3070 sample.running = false; 3071 3072 }).delay(5000).animate({bottom:400}, 2000); 3073 3074 }); 3075 } 3076 3077 function showAcquisition() 3078 { 3079 if(sample.running == 'sa') 3080 return false; 3081 3082 sample.running = 'sa'; 3083 3084 $('.mission-subnav-button').removeClass('current'); 3085 $('#mission-nav-sample-sa').addClass('active current'); 3086 3087 try { 3088 $('#s2-video').get(0).currentTime = 0; 3089 } catch(error) { 3090 if (error.code === 11) { 3091 3092 } 3093 } 3094 3095 $('#mnav-inner-progress').stop().animate({width: '59%'}, 4000); 3096 3097 $('#sample-info-1, #sample-info-2, #sample-info-4').hide(); 3098 $('#sample-info-3').show(); 3099 $('#s2-video, #sample-info-3 p').css('display', 'none'); 3100 $('#acquisition-sim, #acquisition-next').removeClass('is-on').animate({opacity:0}
3100, function(){ 3101 $(this).css({zIndex:-1}); 3102 }); 3103 $('#sample-grad').css({width:'15%'}).animate({width:0}, 700); 3104 //$('#sample-content').animate({left: '25%'}, 500); 3105 $('#sample-info').css({opacity:1, left:'-105%', right:'auto', width: '100%'}).animate({left:0}, 500, function(){ 3106 3107 $('#sample-info-3 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3108 $('#sample-info-3 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3109 3110 if(window.iOS) 3111 { 3112 getVideo('s2-video'); 3113 } 3114 else 3115 { 3116 /* v1 is acquisition.mp4 */ 3117 var video = $('<video>').addClass('story-video').attr('id', 's2-video'); 3118 var src1 = $('<source>').attr('src', window.video_url + 'acquisition-v2.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3119 var src2 = $('<source>').attr('src', window.video_url + 'acquisition-v2.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3120 video.append(src1).append(src2); 3121 3122 $('#c-s2-video').html(video); 3123 3124 $('#s2-video').fadeIn(500, function(){ 3125 $('#s2-video').get(0).play(); 3126 3127 if(!$('#s2-video').data('events')) 3128 { 3129 $('#s2-video').get(0).addEventListener('ended', function(){ 3130 $('#sample-3-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3131 $(this).addClass('is-on'); 3132 }); 3133 }, false); 3134 } 3135 3136 sample.running = false; 3137 3138 }); 3139 } 3140 3141 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Sample - Show Acquisition'); 3142 3143 $('#sample-info-3 .hide').fadeIn(500); 3144 $('#sample-3-next').fadeIn(); 3145 3146 }); 3147 }); 3148 3149 }); 3150 } 3151 3152 function moveToS4() 3153 { 3154 if(sample.running == 's4') 3155 return false; 3156 3157 sample.running = 's4'; 3158 3159 //$('#c-s2-video video').remove(); 3160 $('.mission-subnav-button').removeClass('current'); 3161 $('#mission-nav-sample-ss').addClass('active current'); 3162 3163 $('#mnav-inner-progress').stop().animate({width: '64%'}, 4000); 3164 var osirisleft; 3165 if(mode == 'full') 3166 { 3167 osirisleft = w * .55; 3168 } 3169 else if(mode == 'medium') 3170 { 3171 osirisleft = w * .7; 3172 } 3173 else 3174 { 3175 osirisleft = w * .7; 3176 } 3177 3178 try { 3179 $('#s3-video').get(0).currentTime = 0; 3180 } catch(error) { 3181 if (error.code === 11) { 3182 3183 } 3184 } 3185 $('#sample-osiris').addClass('arm'); 3186 $('#sample-3-next').fadeOut(); 3187 $('#sample-surface').hide(); 3188 $('#sample-osiris').css({ 3189 width:66, 3190 height:91, 3191 left: osirisleft, 3192 '-webkit-transform': 'rotate(-90deg)',
3193 '-moz-transform': 'rotate(-90deg)', 3194 '-ms-transform': 'rotate(-90deg)', 3195 '-o-transform': 'rotate(-90deg)', 3196 'transform': 'rotate(-90deg)', 3197 'zoom': 1, 3198 opacity:1 3199 }); 3200 $('#sample-3-next2').removeClass('is-on').animate({opacity:0}, 500); 3201 $('#sample-content').animate({left: 0}, 500); 3202 $('#sample-info').animate({left:'-105%'}, 500, function(){ 3203 3204 $({deg: -90}).animate({deg: 0}, { 3205 duration: 2000, 3206 step: function(now) { 3207 $('#sample-osiris').css({ 3208 '-webkit-transform': 'rotate(' + now + 'deg)', 3209 '-moz-transform': 'rotate(' + now + 'deg)', 3210 '-ms-transform': 'rotate(' + now + 'deg)', 3211 '-o-transform': 'rotate(' + now + 'deg)', 3212 'transform': 'rotate(' + now + 'deg)' 3213 }); 3214 } 3215 }); 3216 3217 $('#sample-bennu').animate({width:2000, height:1801, left:-1200, top:-700, opacity:1}, 1000, function(){ 3218 $('#sample-bennu').animate({left:-1800}, 1000); 3219 $('#sample-osiris').animate({left: w / 3, top: 70, width:526, height: 800}, 1000, function(){ 3220 3221 3222 $('#sample-info-1, #sample-info-2, #sample-info-3').hide(); 3223 $('#sample-info-4').show(); 3224 $('#s3-video, #sample-info-4 p').css('display', 'none'); 3225 3226 $('#sample-grad').css({width:'15%'}).animate({width:0}, 700); 3227 //$('#sample-content').animate({left: '25%'}, 500); 3228 $('#sample-info').animate({left:0}, 500, function(){ 3229 3230 $('#sample-info-4 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3231 $('#sample-info-4 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3232 3233 if(window.iOS) 3234 { 3235 getVideo('s3-video'); 3236 } 3237 else 3238 { 3239 /* v1 was stowing.mp4 */ 3240 var video = $('<video>').addClass('story-video').attr('id', 's3-video'); 3241 var src1 = $('<source>').attr('src', window.video_url + 'stowing-v2.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3242 var src2 = $('<source>').attr('src', window.video_url + 'stowing-v2.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3243 video.append(src1).append(src2); 3244 3245 $('#c-s3-video').html(video); 3246 3247 $('#s3-video').fadeIn(500, function(){ 3248 $('#s3-video').get(0).play(); 3249 3250 if(!$('#s3-video').data('events')) 3251 { 3252 $('#s3-video').get(0).addEventListener('ended', function(){ 3253 $('#sample-4-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3254 $(this).addClass('is-on'); 3255 }); 3256 }, false); 3257 } 3258 3259 sample.running = false; 3260 3261 }); 3262 } 3263 3264 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Sample - Stowing the Sample'); 3265 3266 $('#sample-info-4 .hide').fadeIn(500); 3267 $('#sample-4-next').fadeIn(); 3268 setTimeline("July", "4", "2020"); 3269 3270 }); 3271 }); 3272 3273 }); 3274 3275 }); 3276 }); 3277 3278 }); 3279 } 3280 3281 function moveToS5() 3282 { 3283 //$('#c-s3-video video').remove(); 3284 $('.mission-subnav-button').removeClass('current'); 3285 3286 var bennuleft, osirisleft; 3287 if(mode == 'full') 3288 { 3289 bennuleft = 0; 3290 osirisleft = w * .45; 3291 } 3292 else if(mode == 'medium') 3293 { 3294 bennuleft = -w * .1; 3295 osirisleft = w * .55; 3296 } 3297 else 3298 { 3299 bennuleft = -w * .1; 3300 osirisleft = w * .55; 3301 } 3302 $('#sample-osiris').css({width:600, height:338}).addClass('return').removeClass('arm'); 3303 $('#sample-4-next').fadeOut(); 3304 $('#sample-4-next2').removeClass('is-on').animate({opacity:0}
3304, 500); 3305 $('#sample-content').animate({left: 0}, 500); 3306 $('#sample-info').animate({left:'-105%'}, 500, function(){ 3307 $('#sample-osiris').animate({width:48, height:27, top:h / 3, left: osirisleft}, 1000); 3308 $('#sample-bennu').animate({width:915, height:824, left:bennuleft, top:0}, 1000, function(){ 3309 $('#mission-nav-return').click(); 3310 }); 3311 3312 }); 3313 } 3314 3315 function showReturn() 3316 { 3317 osreturn.init(); 3318 setTimeline("March", "3", "2021"); 3319 $('.mission-subnav-button').removeClass('current'); 3320 3321 try { 3322 $('#r1-video').get(0).currentTime = 0; 3323 } catch(error) { 3324 if (error.code === 11) { 3325 3326 } 3327 } 3328 $('#return').fadeIn(500, function(){ 3329 $('#return-osiris').animate({width:480, height:270, top:h * .4, left: w * .6}, 4000); 3330 $('#return-bennu').animate({width:100, height:90, top: 140, left: 120}, 4000, function(){ 3331 3332 $('#r1-video, #return-info-1 p').css('display', 'none'); 3333 $('#return-grad').css({width:'15%'}).animate({width:0}, 700); 3334 $('#return-info').animate({left:0}, 500, function(){ 3335 3336 $('#return-info-1 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3337 $('#return-info-1 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3338 3339 if(window.iOS) 3340 { 3341 getVideo('r1-video'); 3342 } 3343 else 3344 { 3345 var video = $('<video>').addClass('story-video').attr('id', 'r1-video'); 3346 var src1 = $('<source>').attr('src', window.video_url + 'return-orbit.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3347 var src2 = $('<source>').attr('src', window.video_url + 'return-orbit.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3348 video.append(src1).append(src2); 3349 3350 $('#c-r1-video').html(video); 3351 3352 $('#r1-video').fadeIn(500, function(){ 3353 $('#r1-video').get(0).play(); 3354 3355 if(!$('#r1-video').data('events')) 3356 { 3357 $('#r1-video').get(0).addEventListener('ended', function(){ 3358 $('#return-1-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3359 $(this).addClass('is-on'); 3360 }); 3361 }, false); 3362 } 3363 3364 }); 3365 } 3366 3367 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Return - Return Orbit'); 3368 3369 $('#return-info-1 .hide').fadeIn(500); 3370 $('#return-1-next').fadeIn(); 3371 3372 }); 3373 }); 3374 3375 }); 3376 3377 }); 3378 }); 3379 } 3380 3381 function moveToR1() 3382 { 3383 3384 if(osreturn.running == 'r1') 3385 return false; 3386 3387 osreturn.running = 'r1'; 3388 3389 //$('#c-r1-video video').remove(); 3390 $('.mission-subnav-button').removeClass('current'); 3391 $('#mission-nav-return-se').addClass('active current'); 3392 3393 try { 3394 $('#r2-video').get(0).currentTime = 0; 3395 } catch(error) { 3396 if (error.code === 11) { 3397 3398 } 3399 } 3400 3401 $('#mnav-inner-progress').stop().animate({width: '76%'}, 4000); 3402 3403 $('#return-1-next').fadeOut(); 3404 $('#return-content').animate({left: 0}, 500); 3405 $('#return-info').animate({left:'-105%'}, 500, function(){ 3406 3407 $('#return-earth').css({top:h * .2, left: w + 200, opacity:1, zIndex:98}).animate({left: w * .6}, 2000); 3408 $('#return-space').animate({backgroundPositionX: -800}, 2000); 3409 $('#return-osiris').animate({left: w * .1}, 2000); 3410 animate($('#return-osiris'), 0, 270, 10, 'forward', null); 3411 $('#return-bennu').animate({left: -900}, 2000, function(){ 3412 setTimeline("September", "24", "2023"); 3413 $('#return-earth').animate({width:800, height:800, top: 0, left: w * .3}, 4000); 3414 $('#return-osiris').animate({left: 0}, 4000, function(){ 3415 3416 $('#r2-video, #return-info-2 p').css('display', 'none'); 3417 $('#return-info-1, #return-2-next').hide(); 3418 $('#return-info-2').show(); 3419 3420 3421 $('#return-grad').css({width:'15%'}).animate({width:0}, 700); 3422 //$('#return-content').animate({left:'50%'}, 500); 3423 $('#return-info').css({width:'100%', left:'-105%', padding:0}).animate({left:0}, 500, function(){ 3424 $('#return-info-2 h2').css({top:'50%', opacity:0}
3424).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3425 $('#return-info-2 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3426 3427 if(window.iOS) 3428 { 3429 getVideo('r2-video'); 3430 } 3431 else 3432 { 3433 var video = $('<video>').addClass('story-video').attr('id', 'r2-video'); 3434 var src1 = $('<source>').attr('src', window.video_url + 'return.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3435 var src2 = $('<source>').attr('src', window.video_url + 'return.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3436 video.append(src1).append(src2); 3437 3438 $('#c-r2-video').html(video); 3439 3440 $('#r2-video').fadeIn(500, function(){ 3441 $('#r2-video').get(0).play(); 3442 3443 if(!$('#r2-video').data('events')) 3444 { 3445 $('#r2-video').get(0).addEventListener('ended', function(){ 3446 $('#return-2-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3447 $(this).addClass('is-on'); 3448 }); 3449 }, false); 3450 } 3451 3452 osreturn.running = false; 3453 3454 }); 3455 } 3456 3457 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Return - Capsule Return'); 3458 3459 $('#return-info-2 .hide').fadeIn(500); 3460 $('#return-2-next').fadeIn(); 3461 3462 }); 3463 }); 3464 3465 }); 3466 3467 }); 3468 3469 }); 3470 3471 3472 3473 }); 3474 } 3475 3476 function returnEarth() 3477 { 3478 if(osreturn.running == 're') 3479 return false; 3480 3481 osreturn.running = 're'; 3482 3483 $('.mission-subnav-button').removeClass('current'); 3484 $('#mission-nav-return-re').addClass('active current'); 3485 3486 $('#mnav-inner-progress').stop().animate({width: '82%'}, 4000); 3487 3488 //does this function need to be here? 3489 $('#return-earth').css({top:h * .2, left: w + 200, opacity:1, zIndex:98}).animate({left: w * .6}, 2000); 3490 $('#return-space').animate({backgroundPositionX: -800}, 2000); 3491 $('#return-osiris').animate({left: -400}, 2000); 3492 $('#return-bennu').animate({left: -900}, 2000, function(){ 3493 setTimeline("September", "24", "2023"); 3494 $('#return-earth').animate({width:800, height:800, top: 0, left: w * .3}, 4000); 3495 $('#return-osiris').animate({top: 0, left: -200}, 4000, function(){ 3496 3497 $('#r2-video, #return-info-2 p').css('display', 'none'); 3498 $('#return-info-1, #return-2-next').hide(); 3499 $('#return-info-2').show(); 3500 3501 3502 $('#return-grad').css({width:'15%'}).animate({width:0}, 700); 3503 //$('#return-content').animate({left:'50%'}, 500); 3504 $('#return-info').css({width:'100%', left:'-105%', padding:0}).animate({left:0}, 500, function(){ 3505 $('#return-info-2 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3506 $('#return-info-2 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3507 3508 var video = $('<video>').addClass('story-video').attr('id', 'r2-video'); 3509 var src1 = $('<source>').attr('src', window.video_url + 'return.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3510 var src2 = $('<source>').attr('src', window.video_url + 'return.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3511 video.append(src1).append(src2); 3512 3513 $('#c-r2-video').html(video); 3514 3515 $('#r2-video').fadeIn(500, function(){ 3516 $('#r2-video').get(0).play(); 3517 3518 if(!$('#r2-video').data('events')) 3519 { 3520 $('#r2-video').get(0).addEventListener('ended', function(){ 3521 $('#return-2-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3522 $(this).addClass('is-on'); 3523 }); 3524 }, false); 3525 } 3526 3527 osreturn.running = false;
3528 3529 $('#return-info-2 .hide').fadeIn(); 3530 $('#return-2-next').fadeIn(); 3531 3532 }); 3533 3534 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Return - Capsule Return'); 3535 3536 }); 3537 }); 3538 3539 }); 3540 3541 }); 3542 3543 }); 3544 } 3545 3546 function moveToR2() 3547 { 3548 if(osreturn.running == 'r2') 3549 return false; 3550 3551 osreturn.running = 'r2'; 3552 //$('#c-r2-video video').remove(); 3553 $('.mission-subnav-button').removeClass('current'); 3554 $('#mission-nav-return-re').addClass('active current'); 3555 3556 try { 3557 $('#r3-video').get(0).currentTime = 0; 3558 } catch(error) { 3559 if (error.code === 11) { 3560 3561 } 3562 } 3563 3564 $('#mnav-inner-progress').stop().animate({width: '82%'}, 4000); 3565 3566 var capsuleleft; 3567 if(mode == 'full') 3568 { 3569 capsuleleft = w * .6; 3570 } 3571 else if(mode == 'medium') 3572 { 3573 capsuleleft = w * .75; 3574 } 3575 else 3576 { 3577 capsuleleft = w * .75; 3578 } 3579 3580 $('#return-2-next').fadeOut(); 3581 $('#return-content').animate({left: 0}, 500); 3582 $('#return-info').css({padding:'70px 20px'}).animate({left:'-105%'}, 500, function(){ 3583 3584 $('#r3-video, #return-info-3 p').css('display', 'none'); 3585 $('#return-info-1, #return-info-2').hide(); 3586 $('#return-info-3').show(); 3587 3588 $('#cloud4, #cloud5, #cloud6').css({opacity:1, zIndex:100, top:h + 500}); 3589 $('#return-osiris').animate({left:-2000, top: h + 2000, opacity: 0}, 1000); 3590 $('#return-earth').animate({width:3000, height:3000, top: -1000, left: -1000, opacity:0}, 2000); 3591 $('#return-capsule').css({left:w, top:h * .1, zIndex:200}).animate({width:100, height:78, left:capsuleleft, top: h * .2, opacity:1}, 2000); 3592 $({deg: 90}).animate({deg: 60}, { 3593 duration: 2000, 3594 step: function(now) { 3595 $('#return-capsule').css({ 3596 '-webkit-transform': 'rotate(' + now + 'deg)', 3597 '-moz-transform': 'rotate(' + now + 'deg)', 3598 '-ms-transform': 'rotate(' + now + 'deg)', 3599 '-o-transform': 'rotate(' + now + 'deg)', 3600 'transform': 'rotate(' + now + 'deg)' 3601 }); 3602 } 3603 }); 3604 $('#return-space').animate({opacity:0}
3604, 2000, function(){ 3605 3606 $('#return-grad').css({width:'15%'}).animate({width:0}, 700); 3607 $('#return-info').css({width:'50%'}).animate({left:0}, 500, function(){ 3608 $('#return-info-3 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3609 $('#return-info-3 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3610 3611 if(window.iOS) 3612 { 3613 getVideo('r3-video'); 3614 } 3615 else 3616 { 3617 var video = $('<video>').addClass('story-video').attr('id', 'r3-video').attr('loop', 'true'); 3618 var src1 = $('<source>').attr('src', window.video_url + 'reentry.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3619 var src2 = $('<source>').attr('src', window.video_url + 'reentry.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3620 video.append(src1).append(src2); 3621 3622 $('#c-r3-video').html(video); 3623 3624 $('#r3-video').fadeIn(500, function(){ 3625 $('#r3-video').get(0).play(); 3626 }); 3627 } 3628 3629 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Return - Re-entry'); 3630 osreturn.running = false; 3631 $('#return-info-3 .hide').fadeIn(500); 3632 $('#return-3-next').fadeIn(); 3633 setTimeout(function(){ 3634 $('#return-3-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3635 $(this).addClass('is-on'); 3636 }); 3637 }, 3000); 3638 3639 }); 3640 }); 3641 }); 3642 3643 }); 3644 }); 3645 } 3646 3647 function moveToR3() 3648 { 3649 if(osreturn.running == 'r3') 3650 return false; 3651 3652 osreturn.running = 'r3'; 3653 3654 //$('#c-r3-video video').remove(); 3655 $('.mission-subnav-button').removeClass('current'); 3656 $('#mission-nav-return-ff').addClass('active current'); 3657 3658 var capsuleleft; 3659 if(mode == 'full') 3660 { 3661 capsuleleft = w * .45; 3662 } 3663 else if(mode == 'medium') 3664 { 3665 capsuleleft = w * .65; 3666 } 3667 else 3668 { 3669 capsuleleft = w * .65; 3670 } 3671 3672 $('#mnav-inner-progress').stop().animate({width: '87.5%'}, 4000); 3673 3674 $('#return-3-next').fadeOut(); 3675 $('#return-content').animate({left: 0}, 500); 3676 $('#return-info').animate({left:'-55%'}, 500, function(){ 3677 setTimeout(function(){ 3678 $('#capsule-parachute').animate({opacity:1}, 500); 3679 }, 4300); 3680 $('#cloud4').animate({top: -100}, 4000); 3681 $('#cloud5').animate({top: -100}, 3600); 3682 $('#cloud6').animate({top: -100}, 4100, function(){ 3683 $('#cloud4').css({top: h + 400}).animate({top: h * .8}, 1000); 3684 $('#cloud5').css({top: h + 400}).animate({top: h * .7}, 1000); 3685 $('#cloud6').css({top: h + 400}).animate({top: h * .82}, 1000, function(){ 3686 $('#cloud4').animate({top: -100}, 3000); 3687 $('#cloud5').animate({top: -100}, 2600); 3688 $('#cloud6').animate({top: -100}, 3100, function(){ 3689 $('#return-capsule').animate({top: h * .4}, 2000, function(){ 3690 $(this).animate({top: h * .8}, 2000); 3691 }); 3692 $('#return-ground').css({zIndex:100, top: h + 100}).animate({top: h * .8}, 4000, function(){ 3693 $('#capsule-parachute').animate({opacity:0}
3693, 500); 3694 3695 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Return - Return Freefall'); 3696 3697 $({deg: 0}).animate({deg: 120}, { 3698 duration: 600, 3699 step: function(now) { 3700 $('#return-capsule').css({ 3701 '-webkit-transform': 'rotate(' + now + 'deg)', 3702 '-moz-transform': 'rotate(' + now + 'deg)', 3703 '-ms-transform': 'rotate(' + now + 'deg)', 3704 '-o-transform': 'rotate(' + now + 'deg)', 3705 'transform': 'rotate(' + now + 'deg)' 3706 }); 3707 }, 3708 complete: function(){ 3709 $('#freefall-next').css({opacity:1, zIndex:500}).addClass('is-on'); 3710 osreturn.running = false; 3711 } 3712 }); 3713 }); 3714 }); 3715 }); 3716 }); 3717 $('#return-capsule').animate({width:50, height:39, left:capsuleleft, top: h * .8}, 2000, function(){ 3718 $('#return-1').css({opacity:1, zIndex:600}).addClass('is-on'); 3719 }); 3720 $({deg: 60}).animate({deg: 0}, { 3721 duration: 2000, 3722 step: function(now) { 3723 $('#return-capsule').css({ 3724 '-webkit-transform': 'rotate(' + now + 'deg)', 3725 '-moz-transform': 'rotate(' + now + 'deg)', 3726 '-ms-transform': 'rotate(' + now + 'deg)', 3727 '-o-transform': 'rotate(' + now + 'deg)', 3728 'transform': 'rotate(' + now + 'deg)' 3729 }); 3730 } 3731 }); 3732 }); 3733 } 3734 3735 function returnOutro() 3736 { 3737 $('#return-ground').fadeOut(1000); 3738 $('#return-capsule').animate({width:w * .5, height:h * .8, left:0, top: h * .1}, 1000, function(){ 3739 $(this).animate({opacity:0}
3739, 500); 3740 showCollection(); 3741 }); 3742 } 3743 3744 function showCollection() 3745 { 3746 if(osreturn.running == 'sc') 3747 return false; 3748 3749 osreturn.running = 'sc'; 3750 3751 collection.init(); 3752 $('#timeline').fadeOut(); 3753 $('.mission-subnav-button').removeClass('current'); 3754 $('#mission-nav-return-oc').addClass('active current'); 3755 3756 try { 3757 $('#c1-video').get(0).currentTime = 0; 3758 } catch(error) { 3759 if (error.code === 11) { 3760 3761 } 3762 } 3763 3764 $('#mnav-inner-progress').stop().animate({width: '93%'}, 4000); 3765 3766 $('#collection-info').addClass('right').css({width:'50%', left:'auto', right:'-55%', padding: '70px 20px', display:'block'}); 3767 $('#collection-grad').addClass('right'); 3768 3769 $('#c1-video, #collection-info-1 p').css('display', 'none'); 3770 3771 $('#collection').fadeIn(500, function(){ 3772 3773 $('#collection-grad').css({width:'15%'}).animate({width:0}, 700); 3774 $('#collection-info').animate({right:0}, 500, function(){ 3775 3776 $('#collection-info-1 h2').css({top:'50%', opacity:0}).animate({top:'45%', opacity:1}, 1200, 'linear', function(){ 3777 $('#collection-info-1 h2').animate({top: '40%', opacity:0}, 1200, 'linear', function(){ 3778 3779 if(window.iOS) 3780 { 3781 getVideo('c1-video'); 3782 } 3783 else 3784 { 3785 var video = $('<video>').addClass('story-video').attr('id', 'c1-video'); 3786 var src1 = $('<source>').attr('src', window.video_url + 'capsule_open.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3787 var src2 = $('<source>').attr('src', window.video_url + 'capsule_open.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3788 video.append(src1).append(src2); 3789 3790 $('#c-c1-video').html(video); 3791 3792 $('#c1-video').fadeIn(500, function(){ 3793 $('#c1-video').get(0).play(); 3794 3795 if(!$('#c1-video').data('events')) 3796 { 3797 $('#c1-video').get(0).addEventListener('ended', function(){ 3798 $('#collection-next2').css({opacity:1, zIndex:100}).animate({height:60}, 500, function(){ 3799 $(this).addClass('is-on'); 3800 }); 3801 }, false); 3802 } 3803 3804 osreturn.running = false; 3805 3806 }); 3807 } 3808 3809 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Collection - Opening the Capsule'); 3810 3811 $('#collection-info-1 .hide').fadeIn(500); 3812 $('#collection-1-next').fadeIn(); 3813 3814 }); 3815 }); 3816 3817 rotateEndImages(); 3818 3819 }); 3820 }); 3821 } 3822 3823 function callToAction() 3824 { 3825 if(!$('#return').is(':visible')) 3826 { 3827 $('section, #launch-notes').hide(); 3828 forceTimeline("September", "24", "2023"); 3829 3830 atlas.state = 'return'; 3831 3832 fullReset(); 3833 3834 $('#return-info').css({width:'50%', left:'-55%'}); 3835 $('#return-osiris').css({opacity:0}); 3836 $('#return-bennu').css({display:'none'}); 3837 $('#return-earth').css({opacity:0}); 3838 3839 3840 $('#return-grad').stop().css({width:'25%'}); 3841 $('#return-content').css({left:0}); 3842 $('#return-space').css({opacity:0}); 3843 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 3844 3845 $('#cloud4').css({top:1000, opacity:1}); 3846 $('#cloud5').css({top:1000, opacity:1}); 3847 $('#cloud6').css({top:1000, opacity:1}); 3848 3849 $('#return-capsule').css({opacity:0}); 3850 3851 $('#return-ground').css({top:'100%', zIndex:-1}).hide(); 3852 $('#capsule-parachute').css({zIndex:-1, opacity:0}); 3853 3854 $('#return-info-3').show(); 3855 $('#return-info-1, #return-info-2').hide(); 3856 $('#collection, #collection-info').show(); 3857 $('#return').show(); 3858 } 3859 //$('#c-c1-video video').remove(); 3860 3861 var bennuwidth, bennuheight, bennutop, bennuleft, formheight, formtop; 3862 if(mode == 'full') 3863 { 3864 bennuwidth = 1500; 3865 bennuheight = 600; 3866 bennutop = 100; 3867 bennuleft = -200; 3868 formheight = .8; 3869 formtop = .1; 3870 } 3871 else if(mode == 'medium') 3872 { 3873 bennuwidth = 1000; 3874 bennuheight = 400; 3875 bennutop = 120; 3876 bennuleft = -200; 3877 formheight = .6; 3878 formtop = .2; 3879 } 3880 else 3881 { 3882 bennuwidth = 1000; 3883 bennuheight = 400; 3884 bennutop = 20; 3885 bennuleft = -250; 3886 formheight = .5; 3887 formtop = .2; 3888 } 3889 3890 $('#collection-capsule-live img').removeClass('active').animate({opacity:0}
3890, 500); 3891 clearTimeout(window.capsule_live_queue); 3892 $('#collection-info').animate({right:'-55%'}, 500, function(){ 3893 $('#collection-capsule-live').fadeOut(500); 3894 $('#collection-capsule').css({zIndex:100, width:w * .5, height:h * .8, left:0, top: h * .1}).animate({opacity:1}, 500, function(){ 3895 3896 $('#collection-capsule').animate({width:120, height:100, opacity:0, top:h * .5, left: w * .5}, 1000, function(){ 3897 $('#collection-space').css({zIndex:1}).animate({opacity: 1}, 1000); 3898 $('#collection-earth').css({width:4096, height: 4096, top: -1032, left: -1032, opacity:1, zIndex:100}).animate({width:100, height:100, top: h /2, left: w/2}, 2000, function(){ 3899 $('#collection-earth').animate({opacity:0}, 500); 3900 3901 var video = $('<video>').addClass('story-video').attr('id', 'collection-bennu').attr('loop', 'true'); 3902 var src1 = $('<source>').attr('src', window.video_url + 'bennu-rotation.webm').attr('type', 'video/webm;codecs="vp8, vorbis"'); 3903 var src2 = $('<source>').attr('src', window.video_url + 'bennu-rotation.mp4').attr('type', 'video/mp4;codecs="avc1.42E01E, mp4a.40.2"'); 3904 video.append(src1).append(src2); 3905 3906 $('#c-collection-bennu').html(video); 3907 $('#collection-bennu').get(0).play(); 3908 3909 $('#collection-space').css({zIndex:1}).animate({opacity: 0}, 1000); 3910 $('#collection-bennu').css({width: bennuwidth, height: bennuheight, zIndex:200, top:bennutop, left: bennuleft}).animate({opacity:1}, 1000, function(){ 3911 $('#collection-form').show(); 3912 setTimeout(function(){ 3913 $('#collection-form-box').css({width:w * .5, height: h * formheight, top: h * formtop, right: 20, opacity:1, zIndex:400}).addClass('is-on'); 3914 $('#qa-link').animate({zIndex:1,opacity:1},500); 3915 }, 500); 3916 }); 3917 3918 ga('send', 'event', 'button', 'click', 'Mission Panel', 'Collection - Updates'); 3919 }); 3920 }); 3921 3922 }); 3923 }); 3924 } 3925 3926 function animate(elem, frame, height, total, dir, callback, speed) 3927 { 3928 elem.css('background-position', '0 -' + (frame * height) + 'px'); 3929 if((dir == 'forward' && frame < total) || (dir == 'reverse' && frame > 1)) 3930 { 3931 if(dir == 'forward') 3932 frame += 1; 3933 else 3934 frame -= 1; 3935 3936 if((dir == 'reverse' && frame > 1) || (dir == 'forward' && frame < total)) 3937 { 3938 setTimeout(function(){ 3939 animate(elem, frame, height, total, dir, callback); 3940 }, 70); 3941 } 3942 } 3943 3944 if((dir == 'reverse' && frame == 1) || (dir == 'forward' && frame == total)) 3945 { 3946 if(callback) 3947 { 3948 callback(); 3949 } 3950 } 3951 } 3952 3953 function resetBurst() 3954 { 3955 $('.burst').css('background-position', '0 0'); 3956 } 3957 3958 function stopVideos() 3959 { 3960 $('.story-video').each(function(){ 3961 $(this).get(0).pause(); 3962 }); 3963 } 3964 3965 function rotateEndImages() 3966 { 3967 window.capsule_live_queue = setTimeout(function(){ 3968 3969 var total = $('#collection-capsule-live img').length; 3970 var cur = $('#collection-capsule-live img.active'); 3971 var next = cur.next(); 3972 3973 if(!next.length) 3974 { 3975 next = $('#collection-capsule-live img').first(); 3976 } 3977 3978 next.css({zIndex:101}).animate({opacity:1}, 1000, function(){ 3979 cur.css({zIndex:99, opacity:0}).removeClass('active'); 3980 $(this).css({zIndex:100}).addClass("active"); 3981 rotateEndImages(); 3982 }); 3983 3984 }, 5000); 3985 } 3986 3987 function prepAnimatedBtn($btn) { 3988 var $helper = $btn.find('.btn-helper').first(), 3989 x = $helper.width(), 3990 y = $helper.height() + 1, 3991 halfX = x / 2, 3992 hidingClip = 'rect(0, ' + halfX + 'px, ' + y + 'px, ' + halfX + 'px)', 3993 showingClip = 'rect(0, ' + x + 'px, ' + y + 'px, 0)'; 3994 $helper.css({clip: hidingClip}); 3995 $btn.on('mouseenter focus', function() { 3996 $helper.css({clip: showingClip}); 3997 }).on('mouseleave blur', function() { 3998 $helper.css({clip: hidingClip}); 3999 }); 4000 } 4001 4002 function setTimeline(month, day, year) 4003 { 4004 if(window.iOS) 4005 { 4006 forceTimeline(month, day, year); 4007 return; 4008 } 4009 //console.log("setting " + month + " " + day + ", " + year);
4010 $('#timeline').data("month", month).data("day", day).data("year", year); 4011 var months = ["January","February","March","April","May","June","July","August","September","October","November","December"]; 4012 var days = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]; 4013 var y = parseInt($('#timeline-year').text()); 4014 var cy = y; 4015 var d = parseInt($('#timeline-day').text()); 4016 var cm = $('#timeline-month').text(); 4017 var st = false; 4018 var dst = false; 4019 var ct = 1; 4020 var v; 4021 var cycles = year - y; 4022 var spin = false; 4023 4024 var fin = []; 4025 4026 if(cycles > 0 || month != cm || day != d) 4027 spin = true; 4028 4029 if(!spin) 4030 { 4031 $('#timeline-month').text(month); 4032 $('#timeline-day').text(day); 4033 $('#timeline-year').text(year); 4034 } 4035 else 4036 { 4037 for(var i = 0; i <= cycles; i ++) 4038 { 4039 for(var n = 0; n < months.length; n ++) 4040 { 4041 v = months[n]; 4042 if(st) 4043 { 4044 for(var x = 0; x < days.length; x ++) 4045 { 4046 if(dst) 4047 { 4048 fin.push([v,days[x],cy]); 4049 } 4050 4051 if(days[x] == day) 4052 { 4053 dst = true; 4054 } 4055 4056 if(days[x] == day && v == month && i == cycles) 4057 { 4058 dst = false; 4059 break; 4060 } 4061 } 4062 4063 4064 ct += 1; 4065 } 4066 4067 if(v == cm) 4068 { 4069 st = true; 4070 } 4071 4072 if(v == month && i == cycles) 4073 { 4074 st = false; 4075 break; 4076 } 4077 } 4078 4079 cy += 1; 4080 4081 if(i == cycles) 4082 { 4083 writeTimeline(fin.reverse()); 4084 } 4085 } 4086 } 4087 } 4088 4089 function writeTimeline(arr) 4090 { 4091 window.queue = setTimeout(function(){ 4092 var str = arr.pop(); 4093 if(typeof str != "undefined" && str.length > 0) 4094 { 4095 $('#timeline-month').text(str[0]); 4096 $('#timeline-day').text(str[1]); 4097 $('#timeline-year').text(str[2]); 4098 4099 if(arr.length > 0) 4100 writeTimeline(arr); 4101 } 4102 4103 }, 10); 4104 } 4105 4106 function forceTimeline(month, day, year) 4107 { 4108 clearTimeout(window.queue); 4109 $('#timeline-month').text(month); 4110 $('#timeline-day').text(day); 4111 $('#timeline-year').text(year); 4112 } 4113 4114 function scaleObject(elem, obj, method, speed){ 4115 if(method == 'scaled') 4116 elem.animate({top: obj.sy, left: obj.sx, width: obj.sw, height: obj.sh}, speed); 4117 else if(method == 'original') 4118 elem.animate({top: obj.oy, left: obj.ox, width: obj.ow, height: obj.oh}, speed); 4119 } 4120 4121 function getVideo(vid) 4122 { 4123 var video; 4124 for(var i = 0; i < window.videos.length; i ++) 4125 { 4126 if(window.videos[i].id == vid) 4127 { 4128 video = window.videos[i].elem; 4129 } 4130 } 4131 4132 video.appendTo($('#c-' + vid)); 4133 $('#' + vid).show(); 4134 } 4135 4136 function blastoff(){ 4137 var offset = $(window).scrollTop(); 4138 var percent, degree, goal; 4139 4140 goal = offset / kf6; 4141 $('#mnav-inner-progress').css('width', (10 * goal) + '%'); 4142 4143 if(offset < kf2) 4144 { 4145 $('#line-ground').css({top: launchOffset + 320 + offset}); 4146 } 4147 if(offset > 0 && offset < kf2) 4148 { 4149 percent = (2000 - offset) / 4000; 4150 $('#atl-booster-flame').css('display', 'block'); 4151 $('#atl-stage1-flame').css('display', 'block'); 4152 $('#atl-stage2-flame').css('display', 'none'); 4153 4154 $('#cloud1').css({top: -960 - (1200 * percent)}); 4155 $('#cloud2').css({top: -930 - (400 * percent)}); 4156 $('#cloud3').css({top: -1010 - (2000 * percent)}); 4157 $('#cloud1a').css({top: -1630 - (1200 * percent)}); 4158 $('#cloud2a').css({top: -1510 - (400 * percent)}); 4159 $('#cloud3a').css({top: -1460 - (2000 * percent)}); 4160 $('#cloud1b').css({top: -2250 - (1400 * percent)}); 4161 $('#cloud2b').css({top: -2140 - (500 * percent)}
4161); 4162 $('#cloud3b').css({top: -2570 - (1700 * percent)}); 4163 } 4164 else 4165 { 4166 $('#atl-booster-flame').css('display', 'none'); 4167 $('#atl-stage1-flame').css('display', 'none'); 4168 $('#line-ground').css({top: launchOffset + 320 + offset}); 4169 } 4170 4171 if(offset >= kf2) 4172 { 4173 $('#atl-stage1-flame').css('display', 'block'); 4174 percent = (kf2 - offset) / (kf2 + 2000); 4175 degree = 90 * percent; 4176 4177 var adj = 50; 4178 if(adj < 1 || $(window).width() < 1290) 4179 adj = 0; 4180 4181 $('#atl-booster').css({ 4182 'left': atlas.lines.booster.sx + (160 * percent) + 'px', 4183 'top': atlas.lines.booster.sy - (400 * percent) + 'px', 4184 '-webkit-transform': 'rotate(' + degree + 'deg)', 4185 '-moz-transform': 'rotate(' + degree + 'deg)', 4186 '-ms-transform': 'rotate(' + degree + 'deg)', 4187 '-o-transform': 'rotate(' + degree + 'deg)', 4188 'transform': 'rotate(' + degree + 'deg)', 4189 'zoom': 1 4190 }); 4191 } 4192 else 4193 { 4194 $('#atl-booster').css({ 4195 'left': atlas.lines.booster.sx, 4196 'top': atlas.lines.booster.sy, 4197 '-webkit-transform': 'rotate(0deg)', 4198 '-moz-transform': 'rotate(0deg)', 4199 '-ms-transform': 'rotate(0deg)', 4200 '-o-transform': 'rotate(0deg)', 4201 'transform': 'rotate(0deg)', 4202 'zoom': 1 4203 }); 4204 } 4205 4206 if(offset >= kf3) 4207 { 4208 $('#atl-stage1-flame').css('display', 'none'); 4209 $('#atl-stage2-flame').css('display', 'block'); 4210 4211 percent = (kf3 - offset) / (kf3 + 2000); 4212 degree = 90 * percent; 4213 var deg2 = -26 * percent; 4214 4215 $('#atl-booster').css('display', 'none'); 4216 4217 $('#atlas-lines').css({ 4218 '-webkit-transform': 'rotate(' + deg2 + 'deg)', 4219 '-moz-transform': 'rotate(' + deg2 + 'deg)', 4220 '-ms-transform': 'rotate(' + deg2 + 'deg)', 4221 '-o-transform': 'rotate(' + deg2 + 'deg)', 4222 'transform': 'rotate(' + deg2 + 'deg)', 4223 'zoom': 1 4224 }); 4225 4226 $('#atl-stage1').css({ 4227 'top': atlas.lines.stage1.sy - (700 * percent) + 'px', 4228 'left': atlas.lines.stage1.sx - (200 * percent) + 'px', 4229 '-webkit-transform': 'rotate(' + degree + 'deg)', 4230 '-moz-transform': 'rotate(' + degree + 'deg)', 4231 '-ms-transform': 'rotate(' + degree + 'deg)', 4232 '-o-transform': 'rotate(' + degree + 'deg)', 4233 'transform': 'rotate(' + degree + 'deg)', 4234 'zoom': 1 4235 }); 4236 } 4237 else 4238 { 4239 $('#atl-booster').css('display', 'block'); 4240 $('#atl-stage2-flame').css('display', 'none'); 4241 4242 $('#atlas-lines').css({ 4243 '-webkit-transform': 'rotate(0deg)', 4244 '-moz-transform': 'rotate(0deg)', 4245 '-ms-transform': 'rotate(0deg)', 4246 '-o-transform': 'rotate(0deg)', 4247 'transform': 'rotate(0deg)', 4248 'zoom': 1 4249 }); 4250 4251 $('#atl-stage1').css({ 4252 'top': atlas.lines.stage1.sy, 4253 'left': atlas.lines.stage1.sx, 4254 '-webkit-transform': 'rotate(0deg)', 4255 '-moz-transform': 'rotate(0deg)', 4256 '-ms-transform': 'rotate(0deg)', 4257 '-o-transform': 'rotate(0deg)', 4258 'transform': 'rotate(0deg)', 4259 'zoom': 1 4260 }); 4261 /* 4262 $('#atl-coupling').css({ 4263 'top': atlas.lines.coupling.sy, 4264 'left': atlas.lines.coupling.sx, 4265 '-webkit-transform': 'rotate(0deg)', 4266 '-moz-transform': 'rotate(0deg)', 4267 '-ms-transform': 'rotate(0deg)', 4268 '-o-transform': 'rotate(0deg)', 4269 'transform': 'rotate(0deg)', 4270 'zoom': 1 4271 });*/ 4272 } 4273 4274 if(offset >= kf4) 4275 { 4276 percent = (kf4 - offset) / (kf4 + 2000); 4277 degree = 140 * percent; 4278 4279 $('#atl-nose-left').css({ 4280 'top': atlas.lines.noseleft.sy - (500 * percent), 4281 'left': atlas.lines.noseleft.sx + (500 * percent), 4282 '-webkit-transform': 'rotate(' + degree + 'deg)', 4283 '-moz-transform': 'rotate(' + degree + 'deg)', 4284 '-ms-transform': 'rotate(' + degree + 'deg)',
4285 '-o-transform': 'rotate(' + degree + 'deg)', 4286 'transform': 'rotate(' + degree + 'deg)', 4287 'zoom': 1, 4288 'opacity': 1 - percent 4289 }); 4290 $('#atl-nose-right').css({ 4291 'top': atlas.lines.noseright.sy - (500 * percent), 4292 'left': atlas.lines.noseright.sx - (500 * percent), 4293 '-webkit-transform': 'rotate(' + -degree + 'deg)', 4294 '-moz-transform': 'rotate(' + -degree + 'deg)', 4295 '-ms-transform': 'rotate(' + -degree + 'deg)', 4296 '-o-transform': 'rotate(' + -degree + 'deg)', 4297 'transform': 'rotate(' + -degree + 'deg)', 4298 'zoom': 1, 4299 'opacity': 1 - percent 4300 }); 4301 4302 $('#bennu-line').css({ 4303 top:-2050 - (1150 * percent), 4304 left: 450 + (1600 * percent) 4305 }); 4306 } 4307 else 4308 { 4309 $('#atl-nose-left').css({ 4310 'top': atlas.lines.noseleft.sy, 4311 'left': atlas.lines.noseleft.sx, 4312 '-webkit-transform': 'rotate(0deg)', 4313 '-moz-transform': 'rotate(0deg)', 4314 '-ms-transform': 'rotate(0deg)', 4315 '-o-transform': 'rotate(0deg)', 4316 'transform': 'rotate(0deg)', 4317 'zoom': 1, 4318 'opacity': 1 4319 }); 4320 $('#atl-nose-right').css({ 4321 'top': atlas.lines.noseright.sy, 4322 'left': atlas.lines.noseright.sx, 4323 '-webkit-transform': 'rotate(0deg)', 4324 '-moz-transform': 'rotate(0deg)', 4325 '-ms-transform': 'rotate(0deg)', 4326 '-o-transform': 'rotate(0deg)', 4327 'transform': 'rotate(0deg)', 4328 'zoom': 1, 4329 'opacity': 1 4330 }); 4331 $('#bennu-line').css({ 4332 top:-2050, 4333 left:450 4334 }); 4335 } 4336 4337 if(offset >= kf5) 4338 { 4339 4340 $('#atl-stage2-flame').css('display', 'none'); 4341 4342 percent = (kf5 - offset) / (kf5 + 2000); 4343 degree = 140 * percent; 4344 4345 $('#atl-stage2').css({ 4346 'top': atlas.lines.stage2.sy - (500 * percent), 4347 'left': atlas.lines.stage2.sx + (500 * percent), 4348 '-webkit-transform': 'rotate(' + degree + 'deg)', 4349 '-moz-transform': 'rotate(' + degree + 'deg)', 4350 '-ms-transform': 'rotate(' + degree + 'deg)', 4351 '-o-transform': 'rotate(' + degree + 'deg)', 4352 'transform': 'rotate(' + degree + 'deg)', 4353 'zoom': 1, 4354 'opacity': 1 - percent 4355 }); 4356 } 4357 else 4358 { 4359 //$('#atl-stage2-flame').css('display', 'block'); 4360 $('#atl-stage2').css({ 4361 'top': atlas.lines.stage2.sy, 4362 'left': atlas.lines.stage2.sx, 4363 '-webkit-transform': 'rotate(0deg)', 4364 '-moz-transform': 'rotate(0deg)', 4365 '-ms-transform': 'rotate(0deg)', 4366 '-o-transform': 'rotate(0deg)', 4367 'transform': 'rotate(0deg)', 4368 'zoom': 1, 4369 'opacity': 1 - percent 4370 }); 4371 } 4372 4373 if(offset >= kf4 + 600 && offset < kf5) 4374 { 4375 $('#launch-fact-next-5').css({display:'block',zIndex:100,opacity:1}).addClass('is-on'); 4376 } 4377 else if(offset > kf1) 4378 { 4379 if($('.launch-controls').is(':visible')) 4380 { 4381 $('.launch-controls').fadeOut(500); 4382 } 4383 } 4384 else if(offset <= kf1) 4385 { 4386 if(!$('#lf-1').is(':visible')) 4387 { 4388 $('#lf-1').fadeIn(500, function(){ 4389 $('#launch-fact-next-1').css({display:'block',zIndex:100,opacity:1}).addClass('is-on'); 4390 }); 4391 } 4392 4393 if(!$('.launch-controls').is(':visible')) 4394 { 4395 $('.launch-controls').fadeIn(500); 4396 } 4397 } 4398 4399 if(offset > kf6) 4400 { 4401 $('#mission-nav-cruise').click(); 4402 } 4403 4404 } 4405 4406 4407 function setAtlas(){ 4408 atlas.pieces.noseleft = { 4409 w:$('#at-nose-left').width(), 4410 h:$('#at-nose-left').height(), 4411 x:$('#at-nose-left').css('left'), 4412 y:$('#at-nose-left').css('top'), 4413 ow:$('#at-nose-left').width(), 4414 oh:$('#at-nose-left').height(), 4415 ox:$('#at-nose-left').css('left'), 4416 oy:$('#at-nose-left').css('top'), 4417 sw:26, 4418 sh:127, 4419 sx:15, 4420 sy:-10, 4421 xx:$('#at-nose-left').width() * -1, 4422 xy:$('#at-nose-left').css('top') 4423 }; 4424 atlas.pieces.noseright = { 4425 w:$('#at-nose-right').width(), 4426 h:$('#at-nose-right').height(), 4427 x:$('#at-nose-right').css('left'), 4428 y:$('#at-nose-right').css('top'), 4429 ow:$('#at-nose-right').width(), 4430 oh:$('#at-nose-right').height(), 4431 ox:$('#at-nose-right').css('left'), 4432 oy:$('#at-nose-right').css('top'), 4433 sw:24, 4434 sh:124, 4435 sx:37, 4436 sy:-7, 4437 xx:parseInt($('#at-nose-right').css('left')) + $('#at-nose-right').width(), 4438 xy:$('#at-nose-right').css('top') 4439 }; 4440 atlas.pieces.osiris = { 4441 w:$('#at-osiris').width(), 4442 h:$('#at-osiris').height(), 4443 x:$('#at-osiris').css('left'), 4444 y:$('#at-osiris').css('top'), 4445 ow:$('#at-osiris').width(), 4446 oh:$('#at-osiris').height(), 4447 ox:$('#at-osiris').css('left'), 4448 oy:$('#at-osiris').css('top'), 4449 sw:20, 4450 sh:42, 4451 sx:27, 4452 sy:55, 4453 xx:$('#at-osiris').css('left'), 4454 xy:$('#at-osiris').css('top') 4455 }; 4456 atlas.pieces.connector3 = { 4457 w:$('#at-connector3').width(), 4458 h:$('#at-connector3').height(), 4459 x:$('#at-connector3').css('left'), 4460 y:$('#at-connector3').css('top'), 4461 ow:$('#at-connector3').width(), 4462 oh:$('#at-connector3').height(), 4463 ox:$('#at-connector3').css('left'), 4464 oy:$('#at-connector3').css('top'), 4465 sw:15, 4466 sh:10, 4467 sx:30, 4468 sy:107, 4469 xx:$('#at-connector3').css('left'), 4470 xy:parseInt($('#at-connector3').css('top')) + $('#at-connector3').height() 4471 }; 4472 atlas.pieces.stage2 = { 4473 w:$('#at-stage2').width(), 4474 h:$('#at-stage2').height(), 4475 x:$('#at-stage2').css('left'), 4476 y:$('#at-stage2').css('top'), 4477 ow:$('#at-stage2').width(), 4478 oh:$('#at-stage2').height(), 4479 ox:$('#at-stage2').css('left'), 4480 oy:$('#at-stage2').css('top'), 4481 sw:32, 4482 sh:125, 4483 sx:22, 4484 sy:107, 4485 xx:$('#at-stage2').css('left'), 4486 xy:parseInt($('#at-stage2').css('top')) + $('#at-stage2').height() / 3 4487 }; 4488 atlas.pieces.connector2 = { 4489 w:$('#at-connector2').width(), 4490 h:$('#at-connector2').height(), 4491 x:$('#at-connector2').css('left'), 4492 y:$('#at-connector2').css('top'), 4493 ow:$('#at-connector2').width(), 4494 oh:$('#at-connector2').height(), 4495 ox:$('#at-connector2').css('left'), 4496 oy:$('#at-connector2').css('top'), 4497 sw:31, 4498 sh:12, 4499 sx:23, 4500 sy:194, 4501 xx:$('#at-connector2').css('left'), 4502 xy:parseInt($('#at-connector2').css('top')) + ($('#at-stage2').height() / 2) + $('#at-connector2').height() + 15 4503 }; 4504 atlas.pieces.connector2back = { 4505 w:$('#at-connector2-back').width(), 4506 h:$('#at-connector2-back').height(), 4507 x:$('#at-connector2-back').css('left'), 4508 y:$('#at-connector2-back').css('top'), 4509 ow:$('#at-connector2-back').width(), 4510 oh:$('#at-connector2-back').height(), 4511 ox:$('#at-connector2-back').css('left'), 4512 oy:$('#at-connector2-back').css('top'), 4513 sw:32, 4514 sh:8, 4515 sx:23, 4516 sy:188, 4517 xx:$('#at-connector2-back').css('left'), 4518 xy:parseInt($('#at-connector2-back').css('top')) + ($('#at-stage2').height() / 2) + $('#at-connector2-back').height() + 20 4519 }; 4520 atlas.pieces.connector1 = { 4521 w:$('#at-connector1').width(), 4522 h:$('#at-connector1').height(), 4523 x:$('#at-connector1').css('left'), 4524 y:$('#at-connector1').css('top'), 4525 ow:$('#at-connector1').width(), 4526 oh:$('#at-connector1').height(), 4527 ox:$('#at-connector1').css('left'), 4528 oy:$('#at-connector1').css('top'), 4529 sw:42, 4530 sh:56, 4531 sx:17, 4532 sy:195, 4533 xx:$('#at-connector1').css('left'), 4534 xy:parseInt($('#at-connector1').css('top')) + $('#at-connector1').height() * 2 4535 }; 4536 atlas.pieces.connector1back = { 4537 w:$('#at-connector1-back').width(), 4538 h:$('#at-connector1-back').height(), 4539 x:$('#at-connector1-back').css('left'), 4540 y:$('#at-connector1-back').css('top'), 4541 ow:$('#at-connector1-back').width(), 4542 oh:$('#at-connector1-back').height(), 4543 ox:$('#at-connector1-back').css('left'), 4544 oy:$('#at-connector1-back').css('top'), 4545 sw:34, 4546 sh:12, 4547 sx:20, 4548 sy:195, 4549 xx:$('#at-connector1-back').css('left'), 4550 xy:parseInt($('#at-connector1-back').css('top')) + $('#at-connector1').height() * 2 - 2 4551 }; 4552 atlas.pieces.stage1 = { 4553 w:$('#at-stage1').width(), 4554 h:$('#at-stage1').height(), 4555 x:$('#at-stage1').css('left'), 4556 y:$('#at-stage1').css('top'), 4557 ow:$('#at-stage1').width(), 4558 oh:$('#at-stage1').height(), 4559 ox:$('#at-stage1').css('left'), 4560 oy:$('#at-stage1').css('top'),
4561 sw:40, 4562 sh:312, 4563 sx:17, 4564 sy:237, 4565 xx:$('#at-stage1').css('left'), 4566 xy:parseInt($('#at-stage1').css('top')) + $('#at-stage1').height() / 2 4567 }; 4568 atlas.pieces.booster = { 4569 w:$('#at-booster').width(), 4570 h:$('#at-booster').height(), 4571 x:$('#at-booster').css('left'), 4572 y:$('#at-booster').css('top'), 4573 ow:$('#at-booster').width(), 4574 oh:$('#at-booster').height(), 4575 ox:$('#at-booster').css('left'), 4576 oy:$('#at-booster').css('top'), 4577 sw:17, 4578 sh:203, 4579 sx:0, 4580 sy:384, 4581 xx:parseInt($('#at-booster').css('left')) - $('#at-booster').width(), 4582 xy:parseInt($('#at-booster').css('top')) + $('#at-stage1').height() / 2 4583 }; 4584 atlas.pieces.thruster = { 4585 w:$('#at-thruster').width(), 4586 h:$('#at-thruster').height(), 4587 x:$('#at-thruster').css('left'), 4588 y:$('#at-thruster').css('top'), 4589 ow:$('#at-thruster').width(), 4590 oh:$('#at-thruster').height(), 4591 ox:$('#at-thruster').css('left'), 4592 oy:$('#at-thruster').css('top'), 4593 sw:42, 4594 sh:65, 4595 sx:16, 4596 sy:525, 4597 xx:$('#at-thruster').css('left'), 4598 xy:parseInt($('#at-thruster').css('top')) + $('#at-stage1').height() * .6 4599 }; 4600 4601 atlas.lines.noseleft = { 4602 w:$('#atl-nose-left').width(), 4603 h:$('#atl-nose-left').height(), 4604 x:$('#atl-nose-left').css('left'), 4605 y:$('#atl-nose-left').css('top'), 4606 sw:13, 4607 sh:57, 4608 sx:0, 4609 sy:-9 4610 }; 4611 atlas.lines.noseright = { 4612 w:$('#atl-nose-right').width(), 4613 h:$('#atl-nose-right').height(), 4614 x:$('#atl-nose-right').css('left'), 4615 y:$('#atl-nose-right').css('top'), 4616 sw:13, 4617 sh:57, 4618 sx:12, 4619 sy:-9 4620 }; 4621 atlas.lines.osiris = { 4622 w:$('#atl-osiris').width(), 4623 h:$('#atl-osiris').height(), 4624 x:$('#atl-osiris').css('left'), 4625 y:$('#atl-osiris').css('top'), 4626 sw:17, 4627 sh:15, 4628 sx:4, 4629 sy:29 4630 }; 4631 atlas.lines.stage2 = { 4632 w:$('#atl-stage2').width(), 4633 h:$('#atl-stage2').height(), 4634 x:$('#atl-stage2').css('left'), 4635 y:$('#atl-stage2').css('top'), 4636 sw:25, 4637 sh:77, 4638 sx:0, 4639 sy:47 4640 }; 4641 atlas.lines.coupling = { 4642 w:$('#atl-coupling').width(), 4643 h:$('#atl-coupling').height(), 4644 x:$('#atl-coupling').css('left'), 4645 y:$('#atl-coupling').css('top'), 4646 sw:23, 4647 sh:8, 4648 sx:1, 4649 sy:117 4650 }; 4651 atlas.lines.stage1 = { 4652 w:$('#atl-stage1').width(), 4653 h:$('#atl-stage1').height(), 4654 x:$('#atl-stage1').css('left'), 4655 y:$('#atl-stage1').css('top'), 4656 sw:23, 4657 sh:176, 4658 sx:1, 4659 sy:117 4660 }; 4661 atlas.lines.booster = { 4662 w:$('#atl-booster').width(), 4663 h:$('#atl-booster').height(), 4664 x:$('#atl-booster').css('left'), 4665 y:$('#atl-booster').css('top'), 4666 sw:15, 4667 sh:127, 4668 sx:-12, 4669 sy:164 4670 }; 4671 atlas.lines.stage1flame = { 4672 sw:$('#atl-stage1-flame').width(), 4673 sh:$('#atl-stage1-flame').height(), 4674 sx:$('#atl-stage1-flame').css('left'), 4675 sy:$('#atl-stage1-flame').css('top') 4676 }; 4677 atlas.lines.stage2flame = { 4678 sw:$('#atl-stage2-flame').width(), 4679 sh:$('#atl-stage2-flame').height(), 4680 sx:$('#atl-stage2-flame').css('left'), 4681 sy:$('#atl-stage2-flame').css('top') 4682 }; 4683 atlas.lines.boosterflame = { 4684 sw:$('#atl-booster-flame').width(), 4685 sh:$('#atl-booster-flame').height(), 4686 sx:$('#atl-booster-flame').css('left'), 4687 sy:$('#atl-booster-flame').css('top') 4688 }; 4689 } 4690 4691 setAtlas(); 4692 resizeMission(); 4693 4694 if(window.iOS) 4695 { 4696 $('video').prop('controls', true); 4697 $('video').each(function(){ 4698 var id = $(this).attr('id'); 4699 window.videos.push({ id: id, elem: $(this).detach()}); 4700 }); 4701 $('html').addClass('ios'); 4702 } 4703 4704 $(window).on('resize.mission', resizeMission); 4705 $('#atlas-lines').css('top', h + 100); 4706 4707 // quick jump 4708 if(window.location.hash) 4709 { 4710 $('#m-atlas, #atlas-scaled, #launch-notes, #atlas-launch').hide(); 4711 $('#m1').fadeOut(1000, function(){ 4712 var hash = window.location.hash.toLowerCase(); 4713 switch(hash) 4714 { 4715 case '#cruise': 4716 $('#mission-nav-cruise').click(); 4717 break; 4718 case '#entering-solar-orbit': 4719 $('#mission-nav-cruise-so').click(); 4720 break; 4721 case '#gravity-assist': 4722 $('#mission-nav-cruise-ga').click(); 4723 break; 4724 case '#arrival': 4725 $('#mission-nav-arrival').click(); 4726 break; 4727 case '#surveying-bennu': 4728 $('#mission-nav-arrival-sb').click(); 4729 break; 4730 case '#explore-instruments': 4731 $('#mission-nav-arrival-ei').click(); 4732 break; 4733 case '#sample': 4734 $('#mission-nav-sample').click(); 4735 break; 4736 case '#deploying-tagsam': 4737 $('#mission-nav-sample-dt').click(); 4738 break; 4739 case '#contacting-the-surface': 4740 $('#mission-nav-sample-cs').click(); 4741 break; 4742 case '#sample-acquisition': 4743 $('#mission-nav-sample-sa').click(); 4744 break; 4745 case '#stowing-the-sample': 4746 $('#mission-nav-sample-ss').click(); 4747 break; 4748 case '#return': 4749 $('#mission-nav-return').click(); 4750 break; 4751 case '#separation-at-earth': 4752 $('#mission-nav-return-se').click(); 4753 break; 4754 case '#re-entry': 4755 $('#mission-nav-return-re').click(); 4756 break; 4757 case '#freefall': 4758 $('#mission-nav-return-ff').click(); 4759 break; 4760 case '#opening-the-capsule': 4761 $('#mission-nav-return-oc').click(); 4762 break; 4763 case '#finale': 4764 $('#mission-nav-finale').click(); 4765 break; 4766 default: 4767 window.location = '/mission/'; 4768 break; 4769 } 4770 }); 4771 4772 } 4773 else 4774 { 4775 $('#m1').fadeOut(1000, function(){ 4776 setStage(); 4777 //setTimeout(spreadAtlas, 500); 4778 }); 4779 } 4780 4781 atlas.init(); 4782 4783 4784 4785 $('#mission-nav').fadeIn(1000); 4786 4787 var resetRunning = false;
4788 4789 function fullReset() 4790 { 4791 if(!resetRunning) 4792 { 4793 //console.log('running'); 4794 resetRunning = true; 4795 $('#arrival-spec-next').css({opacity:0, zIndex:-1}).removeClass('is-on'); 4796 $('#arrival-info').css({right: 'auto', width:0}).removeClass('right'); 4797 $('#arrival-info-specs').hide(); 4798 $('.inspect-sensor').removeClass('active'); 4799 $('.arrival-fact-box').css('opacity', 0); 4800 $('#sensor-note').hide(); 4801 4802 $('#sample-info').removeClass('right').css({left:'-105%', right:'auto'}); 4803 //$('#sample-surface').css('display', 'none'); 4804 $('#acquisition-sim, #acquisition-next').css({opacity:0, zIndex:-1}).removeClass('is-on'); 4805 4806 setTimeout(function(){ 4807 resetRunning = false; 4808 }, 1000); 4809 } 4810 } 4811 4812 /*********** button listeners **********/ 4813 4814 $(document).unbind('click.expand').on('click.expand', '#expand', function(e){ 4815 e.preventDefault(); 4816 if(atlas.state == 'scaled') 4817 { 4818 $('#atlas-scale').fadeIn(500); 4819 $('#collapse').fadeIn(500); 4820 $('#atlas-launchprep').fadeOut(500); 4821 showSpread(); 4822 } 4823 else 4824 spreadAtlas(); 4825 }); 4826 4827 $(document).unbind('click.expandmodel').on('click.expandmodel', '#expand-model', function(e){ 4828 e.preventDefault(); 4829 if(atlas.state == 'scaled') 4830 { 4831 $('#atlas-scale').fadeIn(500); 4832 $('#collapse').fadeIn(500); 4833 $('#atlas-launchprep').fadeOut(500); 4834 showSpread(); 4835 } 4836 else 4837 spreadAtlas(); 4838 }); 4839 4840 $(document).unbind('click.collapse').on('click.collapse', '#collapse', function(e){ 4841 e.preventDefault(); 4842//showCollection(); return; 4843 4844 if(atlas.state == 'scaled') 4845 return; 4846 4847 collapseAtlas(null); 4848 }); 4849 $(document).unbind('click.scale').on('click.scale', '#atlas-scale, #show-scale', function(e){ 4850 e.preventDefault(); 4851 if(atlas.state == 'line') 4852 { 4853 backToScale(); 4854 } 4855 else 4856 { 4857 showScale(); 4858 } 4859 4860 }); 4861 $(document).unbind('click.launchprep').on('click.launchprep', '#atlas-launchprep', function(e){ 4862 e.preventDefault(); 4863 if(atlas.state == 'cruise') 4864 { 4865 returnLaunch(); 4866 } 4867 else 4868 { 4869 prepLaunch(); 4870 } 4871 }); 4872 4873 $(document).unbind('click.launchprocess').on('click.launchpress', '#atlas-launch-process', function(e){ 4874 e.preventDefault(); 4875 4876 collapseAndScaleAtlas(prepLaunch); 4877 4878 }); 4879 4880 $(document).unbind('click.lfmore').on('click.lfmore', '#launch-fact-next-5', function(e){ 4881 e.preventDefault(); 4882 4883 $('#mission-nav-cruise').click(); 4884 }); 4885 4886 $(document).unbind('click.inspectsensor').on('click.inspectsensor', '.inspect-sensor', function(){ 4887 var id = $(this).data('id'); 4888 var name = $(this).data('name'); 4889 $('.inspect-sensor').removeClass('selected'); 4890 $(this).addClass('selected'); 4891 $('#arrival-content').animate({left:0}, 500); 4892 $('#arrival-info').animate({right:'-55%'}, 500); 4893 $('.arrival-fact-box').removeClass('is-on').animate({opacity:0, zIndex:-1}, 500, function(){ 4894 $('#arrival-fact-' + id).css({opacity:1, zIndex:100}).addClass('is-on'); 4895 }); 4896 4897 ga('send', 'event', 'button', 'click', 'Mission Sensor Inspected', name); 4898 }); 4899 4900 $(document).unbind('mouseenter.inspectsensorme').on('mouseenter.inspectsensorme', '.inspect-sensor', function(){ 4901 var id = $(this).data('id'); 4902 $('.inspect-sensor-name').removeClass('selected'); 4903 $('#inspect-sensor-name-' + id).addClass('selected'); 4904 }); 4905 $(document).unbind('mouseleave.inspectsensorml').on('mouseleave.inspectsensorml', '.inspect-sensor', function(){ 4906 $('.inspect-sensor-name').removeClass('selected'); 4907 }); 4908 4909 $(document).unbind('click.arrivalfactbox').on('click.arrivalfactbox', '.arrival-fact-box a', function(e){ 4910 e.preventDefault(); 4911 var id = $(this).data('id'); 4912 $('#arrival-info-1, #arrival-info-2, #arrival-info-3, #arrival-info-specs div').hide(); 4913 $('#arrival-info-specs, #spec-' + id + ', #spec-' + id + ' p').show(); 4914 $('#arrival-grad').css({width:'15%'}).animate({width:0}, 700); 4915 $('#arrival-content').animate({left:'-20%'}, 500); 4916 $('#arrival-info').css({width:'50%', right:'-55%'}).animate({right:0}, 500, function(){ 4917 $('#spec-close-box').fadeIn(); 4918 });
4919 $('#timeline').fadeOut(); 4920 $('#sensor-note').fadeOut(500); 4921 $('.arrival-fact-box.is-on, #arrival-spec-next').animate({opacity:0}, 500); 4922 }); 4923 4924 $(document).unbind('click.specclose').on('click.specclose', '#spec-close-box', function(){ 4925 $('#arrival-content').animate({left:0}, 500); 4926 $('#arrival-info').animate({right:'-55%'}, 500); 4927 $(this).fadeOut(); 4928 $('#timeline').fadeIn(); 4929 $('.arrival-fact-box.is-on, #arrival-spec-next').animate({opacity:1}, 500); 4930 $('#sensor-note').fadeIn(500); 4931 }) 4932 4933 /************* end button listeners ***********/ 4934 4935 $(document).on('scroll', function(){ 4936 if(atlas.state == 'line') 4937 { 4938 blastoff(); 4939 } 4940 }); 4941 4942 $(document).unbind('click.factoid').on('click.factoid', '.factoid', function(){ 4943 if($(this).hasClass('on')) 4944 { 4945 $('.fact').removeClass('is-on').css('opacity', 0).removeClass('on').addClass('hidden'); 4946 $('.plus').removeClass('on'); 4947 var id = $(this).data('id'); 4948 $('#fact' + id).css('opacity', 0).addClass('hidden'); 4949 $('.factoid').removeClass('on'); 4950 } 4951 else 4952 { 4953 $('.fact').removeClass('is-on'); 4954 $('.plus').removeClass('on'); 4955 var id = $(this).data('id'); 4956 $('#fact' + id).css('opacity', 1).removeClass('hidden'); 4957 $(this).addClass('on').find('.plus').addClass('on'); 4958 setTimeout(function(){ 4959 $('.fact').not('#fact' + id).addClass('hidden'); 4960 $('#fact' + id).addClass('is-on'); 4961 }, 100); 4962 4963 ga('send', 'event', 'button', 'click', 'Mission Factoid', id); 4964 } 4965 4966 }); 4967 4968 $(document).unbind('click.missionnav').on('click.missionnav', '.mission-nav-button', function(e){ 4969 e.preventDefault(); 4970 4971 if(!$(this).find('.dot').hasClass('current')) 4972 { 4973 var nw = parseInt($(this).data('w')); 4974 var nindex = parseInt($(this).data('index')); 4975 4976 $('.mission-nav-button .dot').removeClass('current'); 4977 $(this).find('.dot').addClass('current'); 4978 4979 $('.mission-nav-button .dot').each(function(i, v){ 4980 if(i > nindex) 4981 { 4982 $(this).removeClass('active'); 4983 } 4984 else 4985 { 4986 $(this).addClass('active'); 4987 } 4988 }); 4989 4990 animate($(this).find('.burst'), 1, 80, 12, 'forward', resetBurst); 4991 4992 if(nindex == 0) 4993 { 4994 ga('send', 'event', 'button', 'click', 'Mission Button', 'Launch'); 4995 //reset mission 4996 $('#menu-item-58 a').click(); 4997 //showAtlas(); 4998 } 4999 else if(nindex == 1) 5000 { 5001 ga('send', 'event', 'button', 'click', 'Mission Button', 'Cruise'); 5002 showCruise(); 5003 } 5004 else if(nindex == 2) 5005 { 5006 ga('send', 'event', 'button', 'click', 'Mission Button', 'Arrival'); 5007 showArrival(); 5008 } 5009 else if(nindex == 3) 5010 { 5011 ga('send', 'event', 'button', 'click', 'Mission Button', 'Sample'); 5012 showSample(); 5013 } 5014 else if(nindex == 4) 5015 { 5016 ga('send', 'event', 'button', 'click', 'Mission Button', 'Return'); 5017 showReturn(); 5018 } 5019 else if(nindex == 5) 5020 { 5021 ga('send', 'event', 'button', 'click', 'Mission Button', 'Finale'); 5022 callToAction(); 5023 } 5024 5025 $('#mnav-inner-progress').stop().animate({width: nw + '%'}, 500); 5026 } 5027 }); 5028 5029 $(document).unbind('mouseenter.missionsubnav').on('mouseenter.missionsubnav', '.mission-subnav-button', function(){ 5030 var title = $(this).text(); 5031 var w = parseFloat($(this).data('w')) - 2; 5032 5033 $('#mn-title').css({left: w + '%'}).text(title).addClass('active'); 5034 }); 5035 5036 $(document).unbind('mouseleave.missionsubnav').on('mouseleave.missionsubnav', '.mission-subnav-button', function(){ 5037 $('#mn-title').removeClass('active'); 5038 }); 5039 5040 $(document).unbind('click.missionsubnav').on('click.missionsubnav', '.mission-subnav-button', function(e){ 5041 e.preventDefault(); 5042 5043 if(!$(this).hasClass('current')) 5044 { 5045 var nw = parseFloat($(this).data('w')); 5046 var nindex = parseFloat($(this).data('index')); 5047 5048 $('.mission-subnav-button').removeClass('active').removeClass('current'); 5049 $(this).addClass('active').addClass('current'); 5050 5051 $('.mission-nav-button .dot').removeClass('current'); 5052 5053 $('.mission-subnav-button').each(function(){ 5054 var tindex = parseFloat($(this).data('index')); 5055 if(tindex > nindex) 5056 { 5057 $(this).removeClass('active'); 5058 } 5059 else 5060 { 5061 $(this).addClass('active'); 5062 } 5063 }); 5064 5065 5066 $('.mission-nav-button .dot').each(function(i, v){ 5067 if(i > nindex) 5068 { 5069 $(this).removeClass('active'); 5070 } 5071 else 5072 { 5073 $(this).addClass('active'); 5074 } 5075 }); 5076 5077 $('#mnav-inner-progress').stop().animate({width: nw + '%'}, 500); 5078 5079 5080 if(nindex == 1.1) 5081 { 5082 ga('send', 'event', 'button', 'click', 'Mission Button', 'Entering Solar Orbit'); 5083 $('section, #launch-notes').fadeOut(500, function(){ 5084 $('#atlas-cruise').fadeIn(500, function(){ 5085 forceTimeline("September", "8", "2016"); 5086 5087 cruise.init(); 5088 5089 atlas.state = 'cruise'; 5090 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5091 5092 closeM1(); 5093 }); 5094 }); 5095 } 5096 else if(nindex == 1.2) 5097 { 5098 ga('send', 'event', 'button', 'click', 'Mission Button', 'Gravity Assist'); 5099 $('section, #launch-notes').fadeOut(500, function(){ 5100 $('#atlas-cruise').fadeIn(500, function(){ 5101 forceTimeline("September", "22", "2017"); 5102 5103 atlas.state = 'cruise'; 5104 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5105 5106 moveToM3(); 5107 }); 5108 }); 5109 } 5110 else if(nindex == 2.1) 5111 { 5112 ga('send', 'event', 'button', 'click', 'Mission Button', 'Surveying Bennu'); 5113 $('#black').fadeIn(500, function(){ 5114 $('section, #launch-notes').hide(); 5115 forceTimeline("December", "3", "2018"); 5116 //arrival.init(); 5117 atlas.state = 'arrival'; 5118 5119 fullReset(); 5120 $('#arrival-osiris').css({backgroundPosition:'0 0', opacity:1}); 5121 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5122 $('#arrival').show(); 5123 $('#black').delay(500).fadeOut(500, function(){ 5124 moveToA2(); 5125 }); 5126 }); 5127 } 5128 else if(nindex == 2.2) 5129 { 5130 ga('send', 'event', 'button', 'click', 'Mission Button', 'Explore Instruments'); 5131 5132 $('#black').fadeIn(500, function(){ 5133 $('section, #launch-notes').hide(); 5134 forceTimeline("September", "10", "2019"); 5135 //arrival.init(); 5136 atlas.state = 'arrival'; 5137 5138 fullReset(); 5139 5140 var bleft; 5141 if(mode == 'full') 5142 { 5143 bleft = .2 5144 } 5145 else if(mode == 'medium') 5146 { 5147 bleft = .1; 5148 } 5149 else 5150 { 5151 bleft = .1; 5152 } 5153 5154 $('#arrival-space').css({opacity:1}); 5155 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5156 $('#arrival-bennu').css({width:1200, height:1081, top:-800, left:w * bleft, opacity:1}); 5157 $('#arrival-osiris').css({width:281, height:700, top:'50%', left:'50%', opacity:1}); 5158 $('.spec').css({maxHeight:h * .8}); 5159 5160 $('#arrival').show(); 5161 $('#black').delay(500).fadeOut(500, function(){ 5162 moveToSensors(); 5163 }); 5164 }); 5165 } 5166 else if(nindex == 3.1) 5167 { 5168 ga('send', 'event', 'button', 'click', 'Mission Button', 'Deploying TAGSAM'); 5169 5170 $('#black').fadeIn(500, function(){ 5171 $('section, #launch-notes').hide(); 5172 forceTimeline("July", "4", "2020"); 5173 //arrival.init(); 5174 atlas.state = 'sample'; 5175 5176 fullReset(); 5177 5178 var bleft, btop; 5179 if(mode == 'full') 5180 { 5181 bleft = .3; 5182 btop = .5; 5183 } 5184 else if(mode == 'medium') 5185 { 5186 bleft = .2; 5187 btop = .8; 5188 } 5189 else 5190 { 5191 bleft = .2; 5192 btop = .8; 5193 } 5194 $('#sample-surface').hide(); 5195 $('#sample-info, #sample-grad').removeClass('right'); 5196 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5197 $('#sample-info').css({left:'-105%', padding:'0', opacity:1}); 5198 $('#sample-grad').css({width:'25%'}); 5199 $('#sample-content').css({left:0}); 5200 $('#sample-bennu').css({width:915, height:824, top:-h * btop, left: w * bleft}); 5201 $('#sample-osiris').css({backgroundPosition: '0 0', width:100, height:249, top:h * .7, left
5201:w * .55}).removeClass('arm').removeClass('return'); 5202 $('.video-text .hide').hide(); 5203 5204 $('#sample').show(); 5205 $('#black').delay(500).fadeOut(500, function(){ 5206 moveToS2(); 5207 }); 5208 }); 5209 } 5210 else if(nindex == 3.2) 5211 { 5212 ga('send', 'event', 'button', 'click', 'Mission Button', 'Contacting the Surface'); 5213 5214 $('#black').fadeIn(500, function(){ 5215 $('section, #launch-notes').hide(); 5216 forceTimeline("July", "4", "2020"); 5217 //arrival.init(); 5218 atlas.state = 'sample'; 5219 5220 fullReset(); 5221 5222 $('#sample').show(); 5223 $('#black').delay(500).fadeOut(500, function(){ 5224 moveToS3(); 5225 }); 5226 }); 5227 } 5228 else if(nindex == 3.3) 5229 { 5230 ga('send', 'event', 'button', 'click', 'Mission Button', 'Sample Acquisition'); 5231 5232 $('#black').fadeIn(500, function(){ 5233 $('section, #launch-notes').hide(); 5234 forceTimeline("July", "4", "2020"); 5235 //arrival.init(); 5236 atlas.state = 'sample'; 5237 5238 fullReset(); 5239 5240 $('#sample-surface').hide(); 5241 $('#sample-info, #sample-grad').removeClass('right'); 5242 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5243 $('#sample-content').css({left:0}); 5244 $('#sample-bennu').css({opacity:0}); 5245 $('#sample-osiris').css({opacity:0}); 5246 $('.video-text .hide').hide(); 5247 5248 $('#sample').show(); 5249 $('#black').delay(500).fadeOut(500, function(){ 5250 showAcquisition(); 5251 }); 5252 }); 5253 } 5254 else if(nindex == 3.4) 5255 { 5256 ga('send', 'event', 'button', 'click', 'Mission Button', 'Stowing the Sample'); 5257 5258 $('#black').fadeIn(500, function(){ 5259 $('section, #launch-notes').hide(); 5260 forceTimeline("July", "4", "2020"); 5261 //arrival.init(); 5262 atlas.state = 'sample'; 5263 5264 fullReset(); 5265 5266 var bleft, btop; 5267 if(mode == 'full') 5268 { 5269 bleft = .3; 5270 btop = .5; 5271 } 5272 else if(mode == 'medium') 5273 { 5274 bleft = .2; 5275 btop = .8; 5276 } 5277 else 5278 { 5279 bleft = .2; 5280 btop = .8; 5281 } 5282 5283 $('#sample-surface').hide(); 5284 $('#sample-info, #sample-grad').removeClass('right'); 5285 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5286 $('#sample-info').css({left:'-105%', width:'100%', padding:'0', opacity:1}); 5287 $('#sample-grad').css({width:'25%'}); 5288 $('#sample-content').css({left:0}); 5289 $('#sample-bennu').css({width:915, height:824, top:-h * btop, left: w * bleft}); 5290 $('#sample-osiris').css({backgroundPosition: '0 0', width:66, height:91, top:140, left:w * .55, opacity:1, 'transform': 'rotate(-90deg)'}).removeClass('return'); 5291 $('.video-text .hide').hide(); 5292 5293 $('#sample').show(); 5294 $('#black').delay(500).fadeOut(500, function(){ 5295 moveToS4(); 5296 }); 5297 }); 5298 } 5299 else if(nindex == 4.1) 5300 { 5301 ga('send', 'event', 'button', 'click', 'Mission Button', 'Separation at Earth'); 5302 5303 $('#black').fadeIn(500, function(){ 5304 $('section, #launch-notes').hide(); 5305 forceTimeline("September", "24", "2023"); 5306 //arrival.init(); 5307 atlas.state = 'return'; 5308 5309 fullReset(); 5310 5311 $('#return-info').css({width:'100%', left:'-105%'}); 5312 $('#return-osiris').css({width:480, height:270, top:h * .4, left: w * .6, opacity:1, backgroundPosition: '0 0'}); 5313 $('#return-bennu').css({width:100, height:90, top: 140, left: 120, display:'block'}); 5314 $('#return-earth').css({width:100, height:100, top:400, left:800, opacity:1, zIndex:98}); 5315 5316 5317 $('#return-grad').stop().css({width:'25%'}); 5318 $('#return-content').css({left:0}); 5319 $('#return-space').css({opacity:1, backgroundPositionX: '0 0'}); 5320 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5321 5322 $('#cloud4').stop().css({top:1000}); 5323 $('#cloud5').stop().css({top:1000}); 5324 $('#cloud6').stop().css({top:1000}); 5325 $('#return-capsule').stop().css({width:294, height:229, top:140, left:700, zIndex:-1, opacity:0}
5325); 5326 $('#return-ground').stop().css({top:'100%', zIndex:-1}).show(); 5327 $('#capsule-parachute').stop().css({zIndex:-1, opacity:0}); 5328 5329 $('#return-info-1').show(); 5330 $('#return-info-2, #return-info-3').hide(); 5331 5332 $('#return').show(); 5333 $('#black').delay(500).fadeOut(500, function(){ 5334 moveToR1(); 5335 }); 5336 }); 5337 } 5338 else if(nindex == 4.2) 5339 { 5340 ga('send', 'event', 'button', 'click', 'Mission Button', 'Re-entry'); 5341 5342 $('#black').fadeIn(500, function(){ 5343 $('section, #launch-notes').hide(); 5344 forceTimeline("September", "24", "2023"); 5345 //arrival.init(); 5346 atlas.state = 'return'; 5347 5348 fullReset(); 5349 5350 $('#return-info').css({width:'50%', left:'-55%'}); 5351 $('#return-osiris').css({opacity:0}); 5352 $('#return-bennu').css({display:'none'}); 5353 $('#return-earth').css({opacity:0}
5353); 5354 5355 5356 $('#return-grad').stop().css({width:'25%'}); 5357 $('#return-content').css({left:0}); 5358 $('#return-space').css({opacity:0}); 5359 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5360 5361 $('#cloud4').stop().css({top:1000}); 5362 $('#cloud5').stop().css({top:1000}); 5363 $('#cloud6').stop().css({top:1000}); 5364 $('#return-capsule').stop().css({width:294, height:229, left:w * .8, top:h * .1, zIndex:200, opacity:1, 'transform': 'rotate(0deg)'}); 5365 $('#return-ground').stop().css({top:'100%', zIndex:-1}).show(); 5366 $('#capsule-parachute').stop().css({zIndex:-1, opacity:0}); 5367 5368 $('#return-info-3').show(); 5369 $('#return-info-1, #return-info-2').hide(); 5370 5371 $('#return').show(); 5372 $('#black').delay(500).fadeOut(500, function(){ 5373 moveToR2(); 5374 }); 5375 }); 5376 } 5377 else if(nindex == 4.3) 5378 { 5379 ga('send', 'event', 'button', 'click', 'Mission Button', 'Freefall'); 5380 5381 $('#black').fadeIn(500, function(){ 5382 $('section, #launch-notes').hide(); 5383 forceTimeline("September", "24", "2023"); 5384 //arrival.init(); 5385 atlas.state = 'return'; 5386 5387 fullReset(); 5388 5389 var capsuleleft; 5390 if(mode == 'full') 5391 { 5392 capsuleleft = w * .45; 5393 } 5394 else if(mode == 'medium') 5395 { 5396 capsuleleft = w * .65; 5397 } 5398 else 5399 { 5400 capsuleleft = w * .65; 5401 } 5402 $('#return-info').css({width:'50%', left:'-55%'}); 5403 $('#return-osiris').css({opacity:0}); 5404 $('#return-bennu').css({display:'none'}); 5405 $('#return-earth').css({opacity:0}); 5406 5407 5408 $('#return-grad').stop().css({width:'25%'}); 5409 $('#return-content').css({left:0}); 5410 $('#return-space').css({opacity:0}); 5411 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5412 5413 $('#cloud4').css({top:1000, opacity:1}); 5414 $('#cloud5').css({top:1000, opacity:1}); 5415 $('#cloud6').css({top:1000, opacity:1}); 5416 5417 $('#return-capsule').css({top:h * .1, zIndex:200, width:100, height:78, left:capsuleleft, top: h * .2, opacity:1, 'transform': 'rotate(60deg)'}); 5418 5419 5420 $('#return-ground').css({top:'100%', zIndex:-1}).show(); 5421 $('#capsule-parachute').css({zIndex:-1, opacity:0}); 5422 5423 $('#return-info-3').show(); 5424 $('#return-info-1, #return-info-2').hide(); 5425 5426 $('#return').show(); 5427 $('#black').delay(500).fadeOut(500, function(){ 5428 moveToR3(); 5429 }); 5430 }); 5431 } 5432 else if(nindex == 4.4) 5433 { 5434 ga('send', 'event', 'button', 'click', 'Mission Button', 'Opening the Capsule'); 5435 5436 $('#black').fadeIn(500, function(){ 5437 $('section, #launch-notes').hide(); 5438 forceTimeline("September", "24", "2023"); 5439 //arrival.init(); 5440 atlas.state = 'return'; 5441 5442 fullReset(); 5443 5444 $('#return-info').css({width:'50%', left:'-55%'}); 5445 $('#return-osiris').css({opacity:0}); 5446 $('#return-bennu').css({display:'none'}); 5447 $('#return-earth').css({opacity:0}); 5448 5449 5450 $('#return-grad').stop().css({width:'25%'}); 5451 $('#return-content').css({left:0}); 5452 $('#return-space').css({opacity:0}); 5453 $('.btn').css({opacity:0, zIndex:-1}).removeClass('is-on'); 5454 5455 $('#cloud4').css({top:1000, opacity:1}); 5456 $('#cloud5').css({top:1000, opacity:1}); 5457 $('#cloud6').css({top:1000, opacity:1}); 5458 5459 $('#return-capsule').css({opacity:0}); 5460 5461 $('#return-ground').css({top:'100%', zIndex:-1}).hide(); 5462 $('#capsule-parachute').css({zIndex:-1, opacity:0}
5462); 5463 5464 $('#return-info-3').show(); 5465 $('#return-info-1, #return-info-2').hide(); 5466 5467 $('#return').show(); 5468 $('#black').delay(500).fadeOut(500, function(){ 5469 showCollection(); 5470 }); 5471 }); 5472 5473 } 5474 } 5475 5476 }); 5477 5478 $(document).unbind('click.video').on('click.video', 'video', function(){ 5479 $(this).get(0).play(); 5480 }); 5481 5482 $(document).unbind('click.cruisenext').on('click.cruisenext', '#cruise-1-next, #cruise-1-next2', function(e){ 5483 e.preventDefault(); 5484 moveToM3(); 5485 }); 5486 $(document).unbind('click.cruisenext2').on('click.cruisenext2', '#cruise-2-next, #cruise-2-next2', function(e){ 5487 e.preventDefault(); 5488 moveToM4(); 5489 }); 5490 $(document).unbind('click.arrivalnext').on('click.arrivalnext', '#arrival-1-next, #arrival-1-next2', function(e){ 5491 e.preventDefault(); 5492 moveToA2(); 5493 }); 5494 $(document).unbind('click.arrivalnext2').on('click.arrivalnext2', '#arrival-2-next, #arrival-2-next2', function(e){ 5495 e.preventDefault(); 5496 moveToSensors(); 5497 }); 5498 $(document).unbind('click.arrivalspec').on('click.arrivalspec', '#arrival-spec-next', function(e){ 5499 e.preventDefault(); 5500 moveOffSensors(); 5501 }); 5502 $(document).unbind('click.sample1').on('click.sample1', '#sample-1-next', function(e){ 5503 e.preventDefault(); 5504 moveToS2(); 5505 }); 5506 $(document).unbind('click.sample2').on('click.sample2', '#sample-2-next, #sample-2-next2', function(e){ 5507 e.preventDefault(); 5508 moveToS3(); 5509 }); 5510 $(document).unbind('click.sample3').on('click.sample3', '#sample-3-next, #sample-3-next2', function(e){ 5511 e.preventDefault(); 5512 moveToS4(); 5513 }); 5514 $(document).unbind('click.sample4').on('click.sample4', '#sample-4-next, #sample-4-next2', function(e){ 5515 e.preventDefault(); 5516 moveToS5(); 5517 }); 5518 $(document).unbind('click.acquisitionnext').on('click.acquisitionnext', '#acquisition-next', function(e){ 5519 e.preventDefault(); 5520 showAcquisition(); 5521 }); 5522 $(document).unbind('click.returnnext').on('click.returnnext', '#return-1-next, #return-1-next2', function(e){ 5523 e.preventDefault(); 5524 moveToR1(); 5525 }); 5526 $(document).unbind('click.returnnext2').on('click.returnnext2', '#return-2-next, #return-2-next2', function(e){ 5527 e.preventDefault(); 5528 moveToR2(); 5529 }); 5530 $(document).unbind('click.returnnext3').on('click.returnnext3', '#return-3-next, #return-3-next2', function(e){ 5531 e.preventDefault(); 5532 moveToR3(); 5533 }); 5534 $(document).unbind('click.freefall').on('click.freefall', '#freefall-next', function(e){ 5535 e.preventDefault(); 5536 returnOutro(); 5537 }); 5538 $(document).unbind('click.collectionnext').on('click.collectionnext', '#collection-next2', function(e){ 5539 e.preventDefault(); 5540 $('#mission-nav-finale').click(); 5541 }); 5542 $(document).unbind('click.blastoff').on('click.blastoff', '#blastoff', function(e){ 5543 e.preventDefault(); 5544 $('html,body').animate({scrollTop: window.kf5}, 5000); 5545 $(this).fadeOut(500); 5546 }); 5547 5548 setTimeline("September", "8", "2016"); 5549 5550 $('.btn').each(function() { 5551 prepAnimatedBtn($(this)); 5552 }); 5553 } 5554 else 5555 { 5556 /*** Mission mobile js ****/ 5557 5558 //console.log('mobile mission'); 5559 var base_url = "/videos/"; 5560 var mmqueue = null; 5561 5562 var m = { 5563 panel: 1, 5564 pane: 1, 5565 total_panes: 1, 5566 sections: { 5567 launch: { 5568 panel: 1, 5569 panes:1 5570 }, 5571 cruise: { 5572 panel: 2, 5573 panes:1 5574 }, 5575 arrival: { 5576 panel: 3, 5577 panes: 1 5578 }, 5579 sample: { 5580 panel: 4, 5581 panes:1 5582 }, 5583 ret:{ 5584 panel: 5, 5585 panes: 1 5586 }, 5587 collection:{ 5588 panel: 6, 5589 panes: 1 5590 } 5591 } 5592 }; 5593 5594 resizeMobileMission(); 5595 $(window).on('resize.mobileMission', resizeMobileMission); 5596 5597 function resizeMobileMission() 5598 { 5599 $('html,body').css({overflow:'hidden'}); 5600 w = $(window).width(); 5601 5602 $('.slider').each(function(){ 5603 $(this).css({width:w * $(this).find('.container-div').length}); 5604 }); 5605 5606 $('.container-div').css({width:w}); 5607 $('html').css({overflow:'auto'}); 5608 clearTimeout(mmqueue); 5609 mmqueue = setTimeout(function(){ 5610 5611 if($.trim($('#video-container').html()).length) 5612 $('#video-container').animate({height:0, opacity:0}
5612, 500); 5613 5614 m.pane = 1; 5615 5616 $('.active .container-div').animate({marginLeft: 0}, 500, checkVideo); 5617 }, 500); 5618 } 5619 5620 5621 function checkVideo() 5622 { 5623 var src1 = false; 5624 var src2 = false; 5625 var video_url = "//" + document.location.hostname + "/videos/"; 5626 if(m.panel == 1) 5627 { 5628 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Launch'); 5629 } 5630 if(m.panel == 2) 5631 { 5632 if(m.pane == 1) 5633 { 5634 forceTimeline("September", "8", "2016"); 5635 src1 = 'm1-unfold.webm'; 5636 src2 = 'm1-unfold.mp4'; 5637 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Cruise - Unfold'); 5638 } 5639 else if(m.pane == 2) 5640 { 5641 src1 = 'outbound_cruise.webm'; 5642 src2 = 'outbound_cruise.mp4'; 5643 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Cruise - Outbound Cruise'); 5644 } 5645 else if(m.pane == 3) 5646 { 5647 forceTimeline("September", "22", "2017"); 5648 src1 = 'gravity-assist.webm'; 5649 src2 = 'gravity-assist.mp4'; 5650 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Cruise - Gravity Assist'); 5651 } 5652 } 5653 else if(m.panel == 3) 5654 { 5655 if(m.pane == 1) 5656 { 5657 forceTimeline("December", "3", "2018"); 5658 src1 = 'approaching_bennu.webm'; 5659 src2 = 'approaching_bennu.mp4'; 5660 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Approach - Approaching Bennu'); 5661 } 5662 else if(m.pane == 2) 5663 { 5664 forceTimeline("September", "10", "2019"); 5665 src1 = 'sensors.webm'; 5666 src2 = 'sensors.mp4'; 5667 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Approach - Surveying Bennu'); 5668 } 5669 else if(m.pane == 3) 5670 { 5671 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Approach - Sensors'); 5672 } 5673 } 5674 else if(m.panel == 4) 5675 { 5676 if(m.pane == 1) 5677 { 5678 forceTimeline("July", "4", "2020"); 5679 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Sample - TAGSAM'); 5680 } 5681 else if(m.pane == 2) 5682 { 5683 forceTimeline("July", "4", "2020"); 5684 src1 = 'arm-deploy.webm'; 5685 src2 = 'arm-deploy.mp4'; 5686 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Sample - Deploying TAGSAM'); 5687 } 5688 else if(m.pane == 3) 5689 { 5690 forceTimeline("July", "4", "2020"); 5691 src1 = 'acquisition.webm'; 5692 src2 = 'acquisition.mp4'; 5693 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Sample - Sample acquisition'); 5694 } 5695 else if(m.pane == 4) 5696 { 5697 forceTimeline("July", "4", "2020"); 5698 src1 = 'stowing.webm'; 5699 src2 = 'stowing.mp4'; 5700 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Sample - Stowing the sample'); 5701 } 5702 } 5703 else if(m.panel == 5) 5704 { 5705 if(m.pane == 1) 5706 { 5707 forceTimeline("March", "3", "2021"); 5708 src1 = 'return-orbit.webm'; 5709 src2 = 'return-orbit.mp4'; 5710 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Return - Return orbit'); 5711 } 5712 else if(m.pane == 2) 5713 { 5714 forceTimeline("September", "24", "2023"); 5715 src1 = 'return.webm'; 5716 src2 = 'return.mp4'; 5717 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Return - Separation at Bennu'); 5718 } 5719 else if(m.pane == 3) 5720 { 5721 forceTimeline("September", "24", "2023"); 5722 src1 = 'reentry.webm'; 5723 src2 = 'reentry.mp4'; 5724 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Return - Re-entry'); 5725 } 5726 else if(m.pane == 4) 5727 { 5728 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Return - Freefall'); 5729 } 5730 } 5731 else if(m.panel == 6) 5732 { 5733 if(m.pane == 1) 5734 { 5735 src1 = 'capsule_open.webm'; 5736 src2 = 'capsule_open.mp4'; 5737 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Collection - Sample analysis'); 5738 } 5739 else if(m.pane == 2) 5740 { 5741 ga('send', 'event', 'button', 'click', 'Mobile Mission Navigation', 'Collection - Get updates'); 5742 } 5743 } 5744 5745 var source_html = ''; 5746 5747 if(src1) 5748 { 5749 source_html += '<source src="' + video_url + src1 + '" type=\'video/webm;codecs="vp8, vorbis"\'/>'; 5750 } 5751 5752 if(src2) 5753 { 5754 source_html += '<source src="' + video_url + src2 + '" type=\'video/mp4;codecs="avc1.42E01E, mp4a.40.2"\' />'; 5755 } 5756 5757 if(source_html != '') 5758 { 5759 //$('#video-container').delay(700).html('<canvas width="600" height="300"></canvas><video controls autoplay>' + source_html + '</video>').animate({height:w * .55, opacity:1}, 500); 5760 5761 } 5762 5763 } 5764 5765 $(document).unbind('click.accordion').on('click.accordion', 'ul.accordion li .expand', function(e){ 5766 if($(this).parent().hasClass('active')) 5767 { 5768 $(this).parent().removeClass('active').find('.details').slide
5768Up(500); 5769 } 5770 else 5771 { 5772 $('ul.accordion li .expand').parent().removeClass('active').find('.details').slideUp(500); 5773 $(this).parent().addClass('active').find('.details').slideDown(500); 5774 5775 var newtop = $(this).parent().prev().offset().top; 5776 var name = $(this).data('name'); 5777 5778 ga('send', 'event', 'button', 'click', 'Mobile Mission Accordion', name); 5779 5780 setTimeout(function(){ 5781 $('html,body').animate({scrollTop: newtop }, 500); 5782 }, 500); 5783 } 5784 }); 5785 5786 $(document).unbind('click.prevlink').on('click.prevlink', '.prev-link', function(e){ 5787 e.preventDefault(); 5788 missionMobilePrev(); 5789 }); 5790 5791 $(document).unbind('click.nextlink').on('click.nextlink', '.next-link', function(e){ 5792 e.preventDefault(); 5793 missionMobileNext(); 5794 }); 5795 5796 $(document).unbind('click.mjump').on('click.mjump', '.mobile-jump a', function(e){ 5797 e.preventDefault(); 5798 var panel = $(this).data('panel'); 5799 $('.mobile-jump li').removeClass('first'); 5800 $(this).parent().addClass('first'); 5801 missionJumpPoint(panel); 5802 }); 5803 5804 function missionJumpPoint(panel){ 5805 m.pane = 1; 5806 m.panel = panel; 5807 5808 $('.mission-mobile section').removeClass('active'); 5809 $('.prev-link, .next-link, .mission-mobile section').fadeOut(500); 5810 5811 var $panel = $('section[data-panel="' + m.panel + '"]'); 5812 5813 $panel.delay(700).fadeIn(500).addClass('active'); 5814 $('.prev-link, .next-link').delay(1000).fadeIn(500); 5815 m.total_panes = $panel.find('.container-div').length; 5816 m.pane = m.total_panes; 5817 5818 } 5819 5820 function missionMobilePrev() 5821 { 5822 $('#video-container').animate({height:0, opacity:0},500); 5823 m.pane -= 1; 5824 5825 if(m.pane < 1) 5826 { 5827 if(m.panel == 1) 5828 return; 5829 5830 m.panel -= 1; 5831 $('.mobile-jump li').removeClass('first'); 5832 $('.mobile-jump li a[data-panel="' + m.panel + '"]').parent().addClass('first'); 5833 5834 $('.mission-mobile section').removeClass('active'); 5835 $('.prev-link, .next-link, .mission-mobile section').fadeOut(500); 5836 5837 var $panel = $('section[data-panel="' + m.panel + '"]'); 5838 5839 $panel.delay(700).fadeIn(500).addClass('active'); 5840 $('.prev-link, .next-link').delay(1000).fadeIn(500); 5841 m.total_panes = $panel.find('.container-div').length; 5842 m.pane = m.total_panes; 5843 5844 setTimeout(function(){ 5845 $panel.find('.slider').css('margin-left', -w * (m.pane - 1)); 5846 }, 700); 5847 5848 checkVideo(); 5849 5850 } 5851 else 5852 { 5853 $('html,body').animate({scrollTop: 0}, 500, function(){ 5854 $('.active .slider').animate({marginLeft: -w * (m.pane - 1)}, 500, checkVideo); 5855 }); 5856 5857 } 5858 } 5859 5860 function missionMobileNext() 5861 { 5862 $('#video-container').animate({height:0, opacity:0},500); 5863 m.pane += 1; 5864 5865 if(m.pane > m.total_panes) 5866 { 5867 if(m.panel == 6) 5868 return; 5869 5870 m.panel += 1; 5871 $('.mobile-jump li').removeClass('first'); 5872 $('.mobile-jump li a[data-panel="' + m.panel + '"]').parent().addClass('first'); 5873 5874 $('.mission-mobile section').removeClass('active'); 5875 $('.prev-link, .next-link, .mission-mobile section').fadeOut(500); 5876 setTimeout(function(){ 5877 $('.container-div').css('margin-left', 0); 5878 }, 700); 5879 5880 5881 var $panel = $('section[data-panel="' + m.panel + '"]'); 5882 5883 $panel.delay(700).fadeIn(500).addClass('active'); 5884 var fade = $panel.find('.fade-in'); 5885 fade.find('h1').css({marginTop: (h / 2) + 10, opacity:0}).animate({marginTop:(h / 2) - 10, opacity:1}, 3000, function(){ 5886 fade.fadeOut(1000); 5887 $('.prev-link, .next-link').delay(1000).fadeIn(500); 5888 m.pane = 1; 5889 m.total_panes = $panel.find('.container-div').length; 5890 5891 checkVideo(); 5892 }); 5893 fade.show(); 5894 5895 $panel.delay(700).fadeIn(500).addClass('active'); 5896 } 5897 else 5898 { 5899 $('html,body').animate({scrollTop: 0}, 500, function(){ 5900 $('.active .slider').animate({marginLeft: -w * (m.pane - 1)}, 500, checkVideo); 5901 }); 5902 } 5903 } 5904 } 5905} 5906
5907 if(window.location.pathname == '/mission/mission-mobile/') 5908 { 5909 //window.isMobile = function(){return true;}; 5910 $('main').addClass('mission-mobile'); 5911 launchSite(); 5912 } 5913 5914 if(window.location.pathname == '/mission/') 5915 { 5916 if(window.isMobile()) 5917 { 5918 window.location = '/mission/mission-mobile/'; 5919 } 5920 5921 missionInit(); 5922 } 5923 5924 $(document).unbind('click.launchmobile').on('click.launchmobile', '#launch-mobile-mission-button', function(e){ 5925 e.preventDefault(); 5926 $('html,body').animate({scrollTop:0}, 500, function(){ 5927 $('#m1').fadeOut(); 5928 $('.mobile-jump').fadeIn(); 5929 }); 5930 }); 5931 5932 /****** end mission page *******************/ 5933 5934 return api; 5935})(); 5936},{}],12:[function(require,module,exports){ 5937module.exports = (function() { 5938 var api = {}; 5939 5940 var isAvailable = false, 5941 isOpen = false, 5942 savedScrollPos = 0, 5943 fixedClass = 'is-fixed', 5944 activeClass = 'is-active', 5945 showingClass = 'is-showing-nav', 5946 xClass = 'is-x', 5947 $navbar = $('#navbar'), 5948 $navInner = $('#nav-inner'), 5949 $footer = $('#site-footer'), 5950 $subscribe = $('#subscribe-c'), 5951 $page = $('#page'), 5952 // overlay for fade site body 5953 $overlay = $('<div />').addClass('site-overlay fill') 5954 .prependTo($page), 5955 // insert nav button for mobile (CSS hides it on non-mobile) 5956 $navicon = $('<div class="navicon gradient-gray">\ 5957 <div class="inv inv-line inv-line-1"></div>\ 5958 <div class="inv inv-line inv-line-2"></div>\ 5959 <div class="inv inv-tri inv-tri-1"></div>\ 5960 <div class="inv inv-tri inv-tri-2"></div>\ 5961 <div class="inv inv-tri inv-tri-3"></div>\ 5962 <div class="inv inv-tri inv-tri-4"></div>\ 5963 </div>'), 5964 $navBtn = $('<button />').addClass('mbl-nav-btn') 5965 .append($navicon) 5966 .insertAfter('#site-title'), 5967 // insert nav closer button
5968 $closer = $('<div />').addClass('navbar-closer') 5969 .text('close') 5970 .hide() 5971 .insertAfter($navBtn); 5972 5973 // initial check 5974 checkWidth(); 5975 5976 // EVENTS 5977 $navBtn.on('click.nav', function() { 5978 if (isOpen) { 5979 close(); 5980 } else { 5981 open(); 5982 } 5983 }); 5984 // TODO: debounce this 5985 $(window).on('resize.nav', checkWidth); 5986 5987 function setup() { 5988 // stick header to top 5989 $navbar.addClass(fixedClass); 5990 5991 // copy contents of footer into flyout 5992 $navInner.append($footer); 5993 $subscribe.appendTo($footer); 5994 5995 // set state 5996 isAvailable = true; 5997 } 5998 5999 function destroy() { 6000 // unstick header from top 6001 $navbar.removeClass(fixedClass); 6002 6003 // show the nav 6004 $navInner.add($page).attr('style', ''); 6005 $overlay.add($closer).hide(); 6006 6007 // put contents of footer back where they belong 6008 $page.append($subscribe, $footer); 6009 6010 // set state 6011 isOpen = false; 6012 isAvailable = false; 6013 } 6014 6015 function checkWidth() { 6016 var isFlyoutSize = window.isMobile(); 6017 6018 if (!isAvailable && isFlyoutSize) { 6019 setup(); 6020 } else if (isAvailable && !isFlyoutSize) { 6021 destroy(); 6022 } 6023 } 6024 6025 function open() { 6026 // save the current scroll position so we can return 6027 // to it when nav closes 6028 savedScrollPos = window.$win.scrollTop(); 6029 6030 // make sure the nav will open at the top of the 6031 // current viewport 6032 $navInner.css({top: savedScrollPos}); 6033 6034 // set display, delay, then add animation class 6035 $navInner.show(); 6036 $overlay.show(); 6037 setTimeout(function() { 6038 // $navInner.addClass(activeClass); 6039 $page.addClass(showingClass); 6040 }, 40); 6041 6042 // after the animation (crudely just timed), do things 6043 setTimeout(function() { 6044 // fixed height of page to nav 6045 $page.css({ 6046 height: $navInner.height() + $navbar.height(), 6047 overflow: 'hidden' 6048 }); 6049 6050 // and put us at the top 6051 $navInner.css({top: 0}); 6052 window.$win.scrollTop(0); 6053 6054 // then show the nav 6055 $navInner.addClass(activeClass); 6056 $closer.show(); 6057 }, 300); 6058 6059 // change navicon 6060 $navicon.addClass(xClass); 6061 6062 // make closer work 6063 $closer.on('click.nav', close); 6064 6065 // set state 6066 isOpen = true; 6067 } 6068 6069 function close() { 6070 // basically just invert the open() actions 6071 6072 // hide the nav 6073 $navInner.removeClass(activeClass); 6074 6075 setTimeout(function() { 6076 $navInner.hide(); 6077 6078 // revert scroll position and height 6079 $page.attr('style', ''); 6080 window.$win.scrollTop(savedScrollPos); 6081 }, 300); 6082 6083 // show the body 6084 setTimeout(function() { 6085 $page.removeClass(showingClass); 6086 }, 340); 6087 6088 // display: none the overlay 6089 setTimeout(function() { 6090 $overlay.hide(); 6091 $closer.hide(); 6092 }, 640); 6093 6094 $navicon.removeClass(xClass); 6095 $closer.off('.nav'); 6096 6097 // set state 6098 isOpen = false; 6099 } 6100 6101 api.setup = setup; 6102 api.destroy = destroy 6103 6104 return api; 6105})(); 6106 6107 6108},{}],13:[function(require,module,exports){ 6109var analytics = require('./analytics'); 6110 6111module.exports = (function() { 6112 var api = {}; 6113 6114 api.init = function () { 6115 //register form 6116 $('#message-bennu').each(function () { 6117 var $form = $(this); 6118 6119 $form.submit(function (e) { 6120 e.preventDefault(); 6121 6122 analytics.event('form', 'submitting', $form.attr('id')); 6123 6124 $form.find('.form-submit').prop('disabled', true); 6125 6126 var data = { 6127 ajax: true 6128 } 6129 6130 var fData = $form.find( ":input" ).serializeArray(); 6131 6132 for(var i in fData){ 6133 data[fData[i].name] = fData[i].value 6134 } 6135 6136 $.post('/', data).success(function (response) { 6137 if (response.success) 6138 { 6139 if (response.data.cert_id === '00000000') 6140 { 6141 $form.find('.error-message ul').html('<li>Duplicate entry.</li>'); 6142 $form.addClass('m-error'); 6143 $form.find('.form-submit').prop('disabled', false); 6144 analytics.event('form', 'duplicate-entry', $form.attr('id')); 6145 } 6146 else 6147 { 6148 $form.addClass('m-success'); 6149 $form.removeClass('m-error'); 6150 $form.find('.success-message').append('<h3 class="f-center heading-3"><a target="_blank" href="' + response.data.cert_url + '">Click here to download your certificate</a></h3>'); 6151 analytics.event('form', 'submited', $form.attr('id')); 6152 } 6153 } 6154 else 6155 { 6156 alert('An error occured, Please try again later.'); 6157 $form.find('.form-submit').prop('disabled', false); 6158 analytics.event('form', 'error', $form.attr('id')); 6159 } 6160 }).fail(function () { 6161 alert('An error occured, Please try again later.'); 6162 $form.find('.form-submit').prop('disabled', false); 6163 analytics.event('form', 'error', $form.attr('id')); 6164 }); 6165 6166 return false;
6167 }); 6168 }); 6169 }; 6170 6171 api.init(); 6172 6173 return api; 6174})(); 6175 6176},{"./analytics":1}],14:[function(require,module,exports){ 6177var analytics = require('./analytics'); 6178 6179module.exports = (function() { 6180 var api = {}; 6181 6182 api.init = function() { 6183 var $form = $('#subscribe-form'); 6184 6185 $form.find('.form-fields').css({ 6186 'max-height': $form.height() 6187 }); 6188 6189 if ($form.length === 0) 6190 return; 6191 6192 $form.submit(function (e) { 6193 e.preventDefault(); 6194 6195 analytics.event('form', 'submitting', 'newsletter-form'); 6196 6197 $form.find('#subscribe-input').prop('disabled', true); 6198 6199 var data = { 6200 wp_form_id: 'WP_FORM_NEWSLETTER', 6201 contact_email: $form.find('#subscribe-input').val(), 6202 ajax: true 6203 } 6204 6205 $.post('/', data).success(function (response) { 6206 if (response.success) 6207 { 6208 $form.slideUp(500); 6209 $('#subscribe-notice').addClass('m-success').text('Thank y
6209ou for subscribing. You will receive mission updates as they become available.'); 6210 analytics.event('form', 'submited', 'newsletter-form'); 6211 } 6212 else 6213 { 6214 alert('An error occured, Please try again later.'); 6215 $form.find('#subscribe-input').prop('disabled', false); 6216 analytics.event('form', 'error', 'newsletter-form'); 6217 } 6218 6219 }).fail(function () { 6220 alert('An error occured, Please try again later.'); 6221 $form.find('#subscribe-input').prop('disabled', false); 6222 analytics.event('form', 'error', 'newsletter-form'); 6223 }); 6224 6225 return false; 6226 }); 6227 } 6228 6229 api.init(); 6230 6231 return api; 6232})(); 6233 6234},{"./analytics":1}],15:[function(require,module,exports){ 6235var fancyTitle = require('./fancy-title'), 6236 fancyBorder = require('./fancy-border'), 6237 team = require('./team'), 6238 qaSubmission = require('./qa-submission'), 6239 qaAccordion = require('./qa-accordion'), 6240 contact = require('./contact'), 6241 targetAsteroids = require('./target-asteroids'), 6242 buttonAnimations = require('./button-animation'), 6243 msgBennu = require('./msg-bennu'), 6244 newsletter = require('./newsletter'), 6245 socialMedia = require('./social-media'), 6246 downloads = require('./downloads'); 6247 6248module.exports = (function() { 6249 var api = {}; 6250 6251 function runPageScript() { 6252 $('.js-preload-image').hide(); 6253 6254 // make location.pathname match above naming convention 6255 6256 var page = window.location.pathname 6257 .replace(/^[\/]|[\/]$/g, '') 6258 .replace(/[\/-]/g, '_'); 6259 6260 //Check 404 6261 if ($('#fourohfour').length) { 6262 page = 'four_oh_four'; 6263 pages.four_oh_four(); 6264 } else { 6265 6266 if (page.substr(0, 7) === 'mission') 6267 { 6268 6269 if(window.isMobile() || window.iOS) 6270 { 6271 $('main').addClass('mission-mobile'); 6272 launchSite(); 6273 } 6274 else 6275 { 6276 $('#m1').css('height', $(window).height()); 6277 missionInit(); 6278 } 6279 6280 6281 // if using cf7 for the subscription... 6282 //jQuery.get('/wp-content/plugins/contact-form-7/includes/js/scripts.js', function(data) { eval(data); }); 6283 6284 } 6285 else 6286 { 6287 $('body').removeClass('page-id-30'); 6288 $('main').removeClass('mission-mobile').removeClass('mission').css({height:'auto'}); 6289 $('#site-footer, #subscribe-c').slideDown(500); 6290 $('#site-body').css({height: 'auto'}); 6291 $('.footer-section').slideDown(500); 6292 } 6293 6294 //Team page 6295 team.init(); 6296 6297 // Q&A Page 6298 if (page.substr(page.length - 2) === 'qa') 6299 { 6300 qaSubmission.init(); 6301 qaAccordion.init(); 6302 } 6303 6304 //target asteroids FAQs 6305 if (page.substr(page.length - 4) === 'faqs') 6306 { 6307 qaAccordion.init(); 6308 } 6309 console.log('page'); 6310 if (page === '') { 6311 $('body').addClass('home'); 6312 } else { 6313 $('body').removeClass('home'); 6314 6315 if(window.location.pathname.indexOf('where-is-osiris-rex') > -1) 6316 { 6317 $('body').addClass('page-id-480'); 6318 } 6319 else 6320 { 6321 $('body').removeClass('page-id-480'); 6322 } 6323 } 6324 6325 if($('#timer').length) 6326 { 6327 clearInterval(window.timeinterval); 6328 6329 var deadline = '9/22/2017 10:26:00 UTC-0700'; 6330 6331 if($('#timer').data('date').length) 6332 { 6333 deadline = $('#timer').data('date'); 6334 } 6335 6336 $.getScript('/wp-content/themes/osiris/public_assets/js/countdown.js', function() { 6337 6338 window.timeinterval = setInterval(function(){ 6339 var cd = countdown(null, Date.parse(deadline), countdown.DAYS); 6340 var t = cd.value; 6341 6342 var seconds = Math.floor( (t/1000) % 60 ); 6343 var minutes = Math.floor( (t/1000/60) % 60 ); 6344 var days = Math.floor( t/(1000*60*60*24) ); 6345 var hours = Math.floor( (t/(1000*60*60)) % 24 ); // factor daylight savings 6346 6347 if(seconds < 0) 6348 seconds = 0; 6349 6350 if(minutes < 0) 6351 minutes = 0; 6352 6353 if(hours < 0) 6354 hours = 0; 6355 6356 if(days < 0) 6357 days = 0; 6358
6359 $('#timer .t-days').text(days < 100 ? ('0' + days).slice(-2) : days); 6360 $('#timer .t-hours').text(('0' + hours).slice(-2)); 6361 $('#timer .t-minutes').text(('0' + minutes).slice(-2)); 6362 $('#timer .t-seconds').text(('0' + seconds).slice(-2)); 6363 6364 if(t.total<=0){ 6365 clearInterval(window.timeinterval); 6366 } 6367 },1000); 6368 }); 6369 } 6370 6371 if($('#home-craft').length) 6372 { 6373 homescroll.init(); 6374 } 6375 6376 //contact form 6377 contact.init(); 6378 6379 //newsletter form 6380 newsletter.init(); 6381 6382 //target ast. pages 6383 targetAsteroids.init(); 6384 6385 //messages to bennu 6386 msgBennu.init(); 6387 6388 fancyTitle.sizeTitle(); 6389 fancyBorder.init(); 6390 buttonAnimations.init(); 6391 socialMedia.init(); 6392 downloads.init(); 6393 } 6394 6395 $('select').selectize({}); 6396 } 6397 6398 $(document).on('runPageScriptsPlease', function() { 6399 runPageScript(); 6400 }); 6401 6402 api.runPageScript = runPageScript; 6403 6404 return api; 6405})(); 6406 6407},{"./button-animation":2,"./contact":3,"./downloads":4,"./fancy-border":6,"./fancy-title":7,"./msg-bennu":13,"./newsletter":14,"./qa-accordion":17,"./qa-submission":18,"./social-media":20,"./target-asteroids":21,"./team":22}],16:[function(require,module,exports){ 6408module.exports = (function() { 6409 var api = {}; 6410 6411 api.iframe = function(url, width, height, name, callback) { 6412 width = width || 575; 6413 height = height || 500; 6414 6415 var $wrapper = $('<div class="popup-wrapper"></div>'), 6416 $iframe = $('<iframe>').attr('src', url).css({ 6417 width: width + 'px', 6418 height: height + 'px', 6419 'margin-left': -(width/2) + 'px', 6420 'margin-top': -(height/2) + 'px' 6421 }).appendTo($wrapper) 6422 6423 $('body').append($wrapper); 6424 6425 return $iframe; 6426 }; 6427 6428 api.window = function(url, name, width, height, callback) { 6429 width = width || 575; 6430 height = height || 500; 6431 6432 var left = ($(window).width() - width) / 2, 6433 top = ($(window).height() - height) / 2, 6434 opts = 'status=1,width=' + width + ',height=' + height + ',top=' + top + ',left=' + left; 6435 6436 return window.open(url, name, opts); 6437 }; 6438 6439 return api; 6440})(); 6441},{}],17:[function(require,module,exports){ 6442var buttonAnimations = require('./button-animation'); 6443 6444module.exports = (function() { 6445 var api = {}; 6446 6447 function openAnswer(e) { 6448 e.preventDefault(); 6449 6450 var activeClass = 'is-active', 6451 $more = $(this), 6452 $answer = $more.closest('.qa-a'), 6453 $section = $answer.closest('.qa-section'), 6454 $summary = $answer.find('.qa-summary').first(), 6455 $full = $answer.find('.qa-full').first(), 6456 $head = $answer.parent().parent(); 6457 6458 $('html,body').animate({scrollTop: $head.offset().top - 140}); 6459 6460 function toggleAnswer(opening) { 6461 6462 function toggleMore(cb) { 6463 cb = cb || function() { 6464 }; 6465 $more.fadeToggle(300, cb); 6466 } 6467 6468 function toggleFull(cb, slideSecond) { 6469 cb = cb || function() { 6470 }; 6471 if (!$full.data('is-ready')) { 6472 var $close = $('<p class="qa-close-c f-center"><button class="btn btn-close qa-close"><span class="btn-helper"></span></button></p>') 6473 .on('click', function() { 6474 toggleAnswer(false); 6475 }) 6476 .appendTo($full); 6477 var totalTime = 0, 6478 offset = 150; 6479 buttonAnimations.prepAnimatedBtn($close.find('.btn').first()); 6480 $full.find('p').each(function(i) { 6481 $(this).css({transition: 'all 350ms ease-out ' + (i * offset) + 'ms'}); 6482 totalTime += offset; 6483 }); 6484 $full.data('totalTime', totalTime); 6485 $full.data('is-ready', true); 6486 } 6487 if (!slideSecond) { 6488 $full.slideToggle(300, 'linear', function() { 6489 $full.toggleClass(activeClass); 6490 cb(); 6491 }); 6492 } else { 6493 $full.toggleClass(activeClass); 6494 setTimeout(function() { 6495 $full.slideToggle(300, 'linear', cb); 6496 }, $full.data('totalTime')); 6497 } 6498 } 6499 6500 if (opening) { 6501 toggleMore(toggleFull); 6502 } else { 6503 toggleFull(toggleMore, true); 6504 } 6505 } 6506 6507 toggleAnswer(true); 6508 6509 return false;
6510 } 6511 6512 api.init = function() { 6513 var $moreLinks = $('.qa-more'); 6514 if (!$moreLinks.length) 6515 return; 6516 6517 $moreLinks.on('click', openAnswer); 6518 } 6519 6520 api.init(); 6521 6522 return api; 6523})(); 6524},{"./button-animation":2}],18:[function(require,module,exports){ 6525var facebook = require('./facebook'), 6526 google = require('./google'), 6527 twitter = require('./twitter'), 6528 analytics = require('./analytics'); 6529 6530module.exports = (function() { 6531 var api = {}; 6532 6533 var source = { 6534 facebook: 'Facebook', 6535 twitter: 'Twitter', 6536 google: 'Google+', 6537 email: 'Email' 6538 } 6539 6540 api.init = function() { 6541 var $form = $('#ask-form'), 6542 $askEmailBtn = $('#ask-email-btn'), 6543 $askEmailName = $('#ask-email-name'), 6544 $askEmailEmail = $('#ask-email-email'), 6545 $askEmailForm = $('#ask-email-form'), 6546 activeClass = 'is-active'; 6547 6548 api.fillForm = function(email, name, pic, source, button) { 6549 $form.find('#qa-email').val(email); 6550 $form.find('#qa-source').val(source); 6551 $form.find('#qa-pic').val(pic); 6552 $form.find('#qa-name').val(name); 6553 6554 $form.find('#ask-submit').prop('disabled', false); 6555 6556 $form.find('.footer-social-link').removeClass(activeClass); 6557 button.addClass(activeClass); 6558 6559 //show hide form based on the selection 6560 if (button.attr('id') === 'ask-email-btn') 6561 { 6562 $askEmailForm.removeClass('m-hidden'); 6563 } 6564 else 6565 { 6566 $askEmailForm.addClass('m-hidden'); 6567 } 6568 } 6569 6570 if(typeof grecaptcha == "object" && $('#qa-recaptcha').length) 6571 { 6572 grecaptcha.render('qa-recaptcha', { 6573 'sitekey' : '6LdytwUTAAAAAPW3vjNF0Ny1xHw19lhRWdv9QV0m' 6574 }); 6575 } 6576 6577 $askEmailBtn.on('click', function(e) { 6578 6579 var $this = $(this), 6580 mbl = window.isMobile(); 6581 6582 analytics.event('qa-ask-via', 'click', 'email'); 6583 6584 emailFormFieldChanged(); 6585 6586 if ($askEmailBtn.hasClass(activeClass)) { 6587 if (mbl) { 6588 $('html,body').animate({scrollTop: $(this).offset().top - 48}, 'fast'); 6589 $askEmailName.focus(); 6590 } else { 6591 setTimeout(function() { 6592 $askEmailName.focus(); 6593 }, 300); 6594 } 6595 } else { 6596 $askEmailBtn.blur(); 6597 } 6598 }); 6599 6600 var emailFormFieldChanged = function() { 6601 api.fillForm($askEmailEmail.val(), $askEmailName.val(), 'http://www.gravatar.com/avatar/' + md5($askEmailEmail.val()), 'Email', $askEmailBtn); 6602 } 6603 $askEmailName.change(emailFormFieldChanged); 6604 $askEmailEmail.change(emailFormFieldChanged); 6605 6606 6607 //Post with FB 6608 $('#ask-fb-btn').click(function(e) { 6609 e.preventDefault(); 6610 6611 analytics.event('qa-ask-via', 'click', 'facebook'); 6612 6613 var $this = $(this); 6614 6615 //get user details 6616 facebook.call(function() { 6617 FB.api('/me', function(response) { 6618 var name = response.name, 6619 email = response.email || '[email protected]'; 6620 6621 //get user pic 6622 FB.api('/me/picture', {type: 'normal'}, function(response) { 6623 var pic = response.data.url; 6624 6625 api.fillForm(email, name, pic, source.facebook, $this); 6626 }); 6627 }) 6628 }); 6629 6630 return false; 6631 }); 6632 6633 6634 //Post with Google 6635 $('#ask-google-btn').click(function(e) { 6636 e.preventDefault(); 6637 6638 analytics.event('qa-ask-via', 'click', 'google+'); 6639 6640 var $this = $(this); 6641 6642 //get user details 6643 google.call(function() { 6644 gapi.client.load('plus', 'v1', function() { 6645 var request = gapi.client.plus.people.get({ 6646 'userId': 'me' 6647 }); 6648 6649 request.execute(function(resp) { 6650 api.fillForm(resp.emails[0].value, resp.displayName, resp.image.url, source.google, $this); 6651 }); 6652 }); 6653 }, function() { 6654 $this.blur(); 6655 }); 6656 6657 return false;
6658 }); 6659 6660 //Post with Twitter 6661 $('#ask-tw-btn').click(function(e) { 6662 e.preventDefault(); 6663 6664 analytics.event('qa-ask-via', 'click', 'twitter'); 6665 6666 var $this = $(this); 6667 6668 //get user details 6669 twitter.call('twitter_api_get_user', function(resp) { 6670 api.fillForm('@' + resp.screen_name, resp.name, resp.profile_image_url_https, source.twitter, $this); 6671 }); 6672 6673 return false; 6674 }); 6675 6676 //Handle form submission 6677 $form.submit(function(e) { 6678 e.preventDefault(); 6679 6680 var data = { 6681 wp_form_id: $form.find('#qa-form-id').val(), 6682 name: $form.find('#qa-name').val(), 6683 pic: $form.find('#qa-pic').val(), 6684 source: $form.find('#qa-source').val(), 6685 question: $form.find('#ask-message').val(), 6686 email: $form.find('#qa-email').val(), 6687 'g-recaptcha-response': $form.find('#g-recaptcha-response').val(), 6688 ajax: true 6689 } 6690 6691 //validations 6692 if (data.question === '') { 6693 alert('Please enter your question'); 6694 return; 6695 } 6696 6697 analytics.event('form', 'submitting', 'qa-ask-question'); 6698 6699 $.post('/', data).success(function(response) { 6700 if (response.success) 6701 { 6702 $form.find('#qa-name').val(''); 6703 $form.find('#qa-pic').val(''); 6704 $form.find('#qa-source').val(''); 6705 $form.find('#ask-message').val(''); 6706 $form.find('.footer-social-link').removeClass(activeClass); 6707 $askEmailForm.addClass('m-hidden'); 6708 $form.find('#ask-submit').prop('disabled', true); 6709 $form.addClass('m-success'); 6710 6711 //share it on SM if possible 6712 if (data.source === source.facebook) 6713 { 6714 facebook.wallPost({ 6715 caption: data.question, 6716 link: window.location.href 6717 }); 6718 } 6719 else if (data.source === source.google) 6720 { 6721 google.wallPost({ 6722 url: window.location.href 6723 }); 6724 } 6725 else if (data.source === source.twitter) 6726 { 6727 twitter.wallPost({ 6728 message: data.question, 6729 url: window.location.href 6730 }); 6731 } 6732 6733 analytics.event('form', 'submited', 'qa-ask-question'); 6734 } else { 6735 analytics.event('form', 'error', 'qa-ask-question'); 6736 } 6737 }).fail(function() { 6738 alert('An error occured, Please try again later.'); 6739 analytics.event('form', 'error', 'qa-ask-question'); 6740 }); 6741 6742 return false; 6743 }); 6744 } 6745 6746 api.init(); 6747 6748 return api; 6749})(); 6750 6751},{"./analytics":1,"./facebook":5,"./google":8,"./twitter":23}],19:[function(require,module,exports){ 6752/** 6753 * FURTHER READING SOURCE ORDER SHUFFLING 6754 * further reading goes above article footer, 6755 * and search goes after further reading 6756 */ 6757module.exports = (function() { 6758 var api = {}; 6759 6760 var $further = $('#article-further'); 6761 if (!$further.length) 6762 return; 6763 6764 var isMoved = false, 6765 $articleFooter = $('#article-footer'), 6766 $search = $('#side-search'), 6767 $archive = $('#side-archive'); 6768 6769 function moveFurther() { 6770 $further.insertBefore($articleFooter); 6771 $search.css({'margin-top': 0}) 6772 .appendTo($further); 6773 isMoved = true; 6774 } 6775 6776 function returnFurther() { 6777 $further.insertAfter($articleFooter); 6778 $search.attr('style', '') 6779 .insertBefore($archive); 6780 isMoved = false; 6781 } 6782 6783 function checkWidth() { 6784 var mbl = window.isMobile(); 6785 if (!isMoved && mbl) { 6786 moveFurther(); 6787 } else if (isMoved && !mbl) { 6788 returnFurther(); 6789 } 6790 } 6791 6792 checkWidth(); 6793 // TODO: debounce this 6794 window.$win.on('resize.further', checkWidth); 6795 6796 return api; 6797})(); 6798 6799},{}],20:[function(require,module,exports){ 6800var facebook = require('./facebook'),
6801 google = require('./google'), 6802 twitter = require('./twitter'), 6803 analytics = require('./analytics'); 6804 6805module.exports = (function() { 6806 var api = { 6807 init: function () { 6808 $('.share-url-twitter').click(function (e) { 6809 e.preventDefault(); 6810 6811 twitter.wallPost({ 6812 message: document.URL 6813 }); 6814 6815 analytics.social('twitter', 'share', document.URL); 6816 6817 return false; 6818 }); 6819 6820 $('.share-url-facebook').click(function (e) { 6821 e.preventDefault(); 6822 6823 facebook.wallPost({ 6824 link: document.URL 6825 }); 6826 6827 analytics.social('facebook', 'share', document.URL); 6828 6829 return false; 6830 }); 6831 } 6832 }; 6833 6834 api.init(); 6835 6836 return api; 6837})(); 6838},{"./analytics":1,"./facebook":5,"./google":8,"./twitter":23}],21:[function(require,module,exports){ 6839var analytics = require('./analytics'); 6840 6841module.exports = (function() { 6842 var api = {}; 6843 6844 api.init = function () { 6845 6846 if(typeof grecaptcha == "object" && $('#target-recaptcha').length) 6847 { 6848 grecaptcha.render('target-recaptcha', { 6849 'sitekey' : '6LdytwUTAAAAAPW3vjNF0Ny1xHw19lhRWdv9QV0m' 6850 }); 6851 } 6852 6853 if(typeof grecaptcha == "object" && $('#feedback-recaptcha').length) 6854 { 6855 grecaptcha.render('feedback-recaptcha', { 6856 'sitekey' : '6LdytwUTAAAAAPW3vjNF0Ny1xHw19lhRWdv9QV0m' 6857 }); 6858 } 6859 6860 //register form 6861 $('#ta-register-form, #ta-feedback-form').each(function () { 6862 var $form = $(this); 6863 6864 $form.submit(function (e) { 6865 e.preventDefault(); 6866 6867 analytics.event('form', 'submitting', $form.attr('id')); 6868 6869 $form.find('.form-submit').prop('disabled', true); 6870 6871 var data = { 6872 'g-recaptcha-response': $form.find('#g-recaptcha-response').val(), 6873 ajax: true 6874 } 6875 6876 var fData = $form.find( ":input" ).serializeArray(); 6877 6878 for(var i in fData){ 6879 data[fData[i].name] = fData[i].value 6880 } 6881 6882 $.post('/', data).success(function (response) { 6883 if (response.success) 6884 { 6885 $form.addClass('m-success'); 6886 analytics.event('form', 'submited', $form.attr('id')); 6887 } 6888 else 6889 { 6890 alert('Anti-Spam is saying you\'re a robot! Try again.'); 6891 $form.find('.form-submit').prop('disabled', false); 6892 analytics.event('form', 'error', $form.attr('id')); 6893 } 6894 }).fail(function () { 6895 alert('Uh oh! Something went wrong. Please try again.'); 6896 $form.find('.form-submit').prop('disabled', false); 6897 analytics.event('form', 'error', $form.attr('id')); 6898 }); 6899 6900 return false; 6901 }); 6902 }); 6903 }; 6904 6905 api.init(); 6906 6907 return api; 6908})(); 6909},{"./analytics":1}],22:[function(require,module,exports){ 6910var hijackJummpLinks = require('./hijack-jump-links'); 6911 6912module.exports = (function() { 6913 var api = { 6914 mapLoaded: false 6915 }; 6916 6917 6918 6919 window.initialize = function() { 6920 api.renderMap(); 6921 } 6922 6923 api.renderMap = function() { 6924 6925 if (!api.mapLoaded) { 6926 api.loadMap(); 6927 return false; 6928 } 6929 6930 //address list 6931 var address = $.parseJSON($('#team-map-dataset').text()); 6932 6933 //map style 6934 var styles = [ 6935 ]; 6936 6937 var styledMap = new google.maps.StyledMapType(styles, {name: "Default Style"}); 6938 var geocoder = new google.maps.Geocoder(); 6939 var mapOptions = { 6940 zoom: 10, 6941 center: new google.maps.LatLng(45.50, -98.35), 6942 mapTypeControlOptions: { 6943 mapTypeIds: [google.maps.MapTypeId.ROADMAP, 'map_style'] 6944 } 6945 }; 6946 6947 var map = new google.maps.Map(document.getElementById('team-map'), mapOptions); 6948 6949 map.mapTypes.set('map_style', styledMap); 6950 map.setMapTypeId('map_style'); 6951 6952 //add markers 6953 var latlngbounds = new google.maps.LatLngBounds(); 6954 6955 var opendInfoWindow = false;
6956 6957 for (var i in address) { 6958 var addressGeoLocation = new google.maps.LatLng(address[i].latitude, address[i].longitude); 6959 latlngbounds.extend(addressGeoLocation); 6960 6961 var infowindow = new google.maps.InfoWindow({ 6962 content: '<h1>' + address[i].name + '</h1>' 6963 }); 6964 6965 var marker = new google.maps.Marker({ 6966 map: map, 6967 position: addressGeoLocation, 6968 title: address[i].name, 6969 animation: google.maps.Animation.DROP, 6970 infowindow: infowindow, 6971 organization: address[i].id * 1 6972 }); 6973 6974 google.maps.event.addListener(marker, 'click', function(e) { 6975 if (opendInfoWindow !== false) { 6976 opendInfoWindow.close(); 6977 } 6978 6979 var infoWin = this.infowindow, 6980 title = this.title; 6981 6982 $.post('/', { 6983 wp_form_id: 'WP_FORM_ORG_MEMBERS', 6984 organization: this.organization, 6985 ajax: true 6986 }).success(function(response) { 6987 var c = '<h1>' + title + '</h1><ul style="max-height: 10em; overflow: auto">' 6988 for (i in response.data) { 6989 c += '<li>' + response.data[i].first + ' ' + response.data[i].last + '</li>'; 6990 } 6991 6992 c += "</ul>"; 6993 6994 infoWin.setContent(c); 6995 }) 6996 6997 opendInfoWindow = infoWin; 6998 opendInfoWindow.open(map, this); 6999 }); 7000 } 7001 7002 map.fitBounds(latlngbounds); 7003 } 7004 7005 api.loadMap = function() { 7006 7007 function loadScript() { 7008 api.mapLoaded = true; 7009 7010 var script = document.createElement('script'); 7011 script.type = 'text/javascript'; 7012 script.src = 'https://maps.googleapis.com/maps/api/js?v=3&key=AIzaSyDCN48_k4V99susiCYy12bm53c5FGTLlL8&sensor=false&' + 'callback=initialize'; 7013 document.body.appendChild(script); 7014 } 7015 7016 loadScript(); 7017 }; 7018 7019 api.init = function() { 7020 if ($('#page-team-page').length === 0) 7021 return; 7022 7023 //team list show hide details 7024 $('.js-member-details-toggle, .js-member-details-hide').click(function(e) { 7025 e.preventDefault(); 7026 7027 $(this).parent().toggleClass('m-active'); 7028 7029 return false; 7030 }); 7031 7032 //render google team map if available 7033 if ($('#team-map').length > 0) 7034 { 7035 api.renderMap(); 7036 } 7037 7038 $(document).unbind('click.teamhierarchy').on('click.teamhierarchy', '.team-hierarchy-open', function(e){ 7039 e.preventDefault(); 7040 $('.team-hierarchy-open, .team-hierarchy-list-wrapper').toggleClass('open'); 7041 }); 7042 7043 //form handling 7044 $('#team-search').submit(function(e) { 7045 e.preventDefault(); 7046 7047 if ($(this).find('#thoughts-search').val() == '') { 7048 return false; 7049 } 7050 7051 var url; 7052 if($('#team-search').attr('action') == '/team-list') 7053 url = '/team-list?search=' + $(this).find('#thoughts-search').val(); 7054 else 7055 url = window.location.pathname + '?search=' + $(this).find('#thoughts-search').val(); 7056 7057 hijackJummpLinks.changePage(url); 7058 7059 return false; 7060 }); 7061 7062 $('#team-search-organization').each(function(i, frm) { 7063 var $frm = $(frm); 7064 7065 $frm.find('select').change(function() { 7066 7067 var url; 7068 if($('#team-search-organization').attr('action') == '/team-list') 7069 url = '/team-list?organization=' + $(this).val(); 7070 else 7071 url = window.location.pathname + '?organization=' + $(this).val(); 7072 7073 hijackJummpLinks.changePage(url); 7074 }); 7075 }); 7076 7077 $('#team-hierarchy-list').each(function () { 7078 var $container = $(this), 7079 $blocks = $container.find('.block'); 7080 7081 $container.find('a').click(function (e){ 7082 7083 7084 $(this).parent().toggleClass('m-active'); 7085 7086 $('#team-hierarchy').find('.' + $(this).attr('class').split(' ')[0]).trigger('sync'); 7087 }); 7088 7089 $container.find('a').on('sync', function (e){ 7090 e.preventDefault(); 7091 7092 $(this).parent().toggleClass('m-active'); 7093 $(this).parent().trigger('click'); 7094 7095 return false;
7096 }); 7097 7098 $blocks.click(function(e) { 7099 e.preventDefault(); 7100 7101 var $this = $(this), 7102 id = $this.data('id'); 7103 7104 if(!$this.hasClass('m-main')) { 7105 $this.addClass('m-main'); 7106 } else { 7107 return false; 7108 } 7109 7110 $blocks.not($this) 7111 .removeClass('m-main') 7112 .find('.m-active') 7113 .removeClass('m-active'); 7114 7115 return false; 7116 }); 7117 7118 $container.on('sync', function(e) { 7119 $blocks.removeClass('m-main m-faded m-connected') 7120 .find('.m-active') 7121 .removeClass('m-active'); 7122 }); 7123 7124 //$(".nano").nanoScroller(); 7125 }); 7126 7127 7128 $('#team-hierarchy').each(function () { 7129 function _rand (min, max) { 7130 return Math.floor(Math.random() * (max - min) + min); 7131 } 7132 7133 7134 var $container = $(this), 7135 $blocks = $container.find('.block'), 7136 cW = $container.width(), 7137 cH = $(window).height(), 7138 rad = 0; 7139 7140 $container.height(cH) 7141 7142 var usedBlocks = []; 7143 7144 $container.find('a').click(function (e){ 7145 $(this).parent().toggleClass('m-active'); 7146 $('#team-hierarchy-list').find('.' + $(this).attr('class').split(' ')[0]).trigger('sync'); 7147 }); 7148 7149 $container.find('a').on('sync', function (e){ 7150 $(this).parent().toggleClass('m-active'); 7151 $(this).parent().trigger('click'); 7152 }); 7153 7154 $blocks.click(function(e) { 7155 var $this = $(this), 7156 id = $this.data('id'); 7157 7158 //$('.nano').nanoScroller(); 7159 7160 if(!$this.hasClass('m-main')) { 7161 $this.addClass('m-main') 7162 .css({ 7163 top: (cH - 400)/2 + 'px', 7164 left: rad + 'px' 7165 }); 7166 } else { 7167 return false; 7168 } 7169 7170 $blocks.not($this) 7171 .removeClass('m-main m-faded m-connected') 7172 .addClass('m-faded') 7173 .each(function () { 7174 var $t = $(this); 7175 7176 $t.css({ 7177 top: $t.data('y'), 7178 left: $t.data('x') 7179 }) 7180 }) 7181 .find('.m-active') 7182 .removeClass('m-active'); 7183 7184 var connections = $this.data('connected').toString().split(','); 7185 7186 for(var i in connections){ 7187 var cls = '.block-' + connections[i]; 7188 $container.find(cls).addClass('m-connected'); 7189 } 7190 7191 $container.find('.line').addClass('m-faded').each(function (){ 7192 var $line = $(this), 7193 cls = $line.attr('class'); 7194 7195 if (cls.indexOf('-' + id + '-') >= 0) { 7196 $line.removeClass('m-faded') 7197 } 7198 }); 7199 7200 //fadein connected items 7201 $blocks.not($this); 7202 7203 var lineAdjustInterval = setInterval(function () { 7204 _updateConnections(); 7205 }, 10); 7206 7207 setTimeout(function () { 7208 clearInterval(lineAdjustInterval); 7209 }, 1500); 7210 }); 7211 7212 $container.click(function(e) { 7213 e.preventDefault(); 7214 7215 if($(e.target).attr('id') == 'team-hierarchy' && $container.find('.block.m-main').length > 0){ 7216 $blocks.removeClass('m-main m-faded m-connected') 7217 .each(function () { 7218 var $t = $(this); 7219 7220 $t.css({ 7221 top: $t.data('y'), 7222 left: $t.data('x') 7223 }) 7224 }).find('.m-active') 7225 .removeClass('m-active'); 7226 7227 $container.find('.line').removeClass('m-main m-faded m-connected'); 7228 7229 var lineAdjustInterval = setInterval(function () { 7230 _updateConnections(); 7231 }, 10); 7232 7233 setTimeout(function () { 7234 clearInterval(lineAdjustInterval); 7235 }, 1500); 7236 7237 $('#team-hierarchy-list').trigger('sync'); 7238 } 7239 7240 return false;
7241 }); 7242 7243 7244 7245 function _connect(x1, y1, x2, y2, lineClass) { 7246 var length = Math.sqrt((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)); 7247 var angle = Math.atan2(y2 - y1, x2 - x1) * 180 / Math.PI; 7248 var transform = 'rotate('+angle+'deg)'; 7249 7250 var line = $('.' + lineClass).length > 0 ? $('.' + lineClass) : $('<div>'); 7251 7252 line.appendTo($container) 7253 .addClass('line ' + lineClass) 7254 .css({ 7255 'position': 'absolute', 7256 'transform': transform, 7257 'left': x1 + 'px', 7258 'top': y1 + 'px', 7259 'opacity': 1 7260 }) 7261 .width(length) 7262 .addClass('m-active'); 7263 7264 return line; 7265 } 7266 7267 7268 function _arrange() { 7269 cW = $container.width(); 7270 cH = $(window).height(); 7271 7272 if(cW >= 1500) 7273 { 7274 $('.team-hierarchy-list-wrapper, .team-hierarchy-open').addClass('open'); 7275 } 7276 7277 $container.height(cH); 7278 7279 $container.find('.scrollable').css({ 7280 'height': cH * 0.5 + 'px' 7281 }); 7282 7283 $('.team-hierarchy-list .nano').css({ 7284 'height': cH * 0.95 + 'px' 7285 }); 7286 7287 //$('.nano').nanoScroller(); 7288 7289 7290 7291 $('.line').css('opacity', 0); 7292 7293 //position initial mapitems 7294 //fill with a poligon points 7295 var polSize = $blocks.length, 7296 size = { 7297 width: (cW - 350) / 2, 7298 height: (cH - 100) / 2 7299 }, 7300 angle = 180 - ((180 * (polSize - 2)) / polSize); 7301 7302 rad = Math.min(size.width, size.height); 7303 7304 for(var i = 0; i < polSize; i++) 7305 { 7306 var $block = $blocks.eq(i); 7307 7308 //get angle 7309 var polAngle = (angle * i) + 20; 7310 7311 //convert to radians 7312 polAngle = polAngle * (Math.PI / 180); 7313 7314 var x = ((Math.cos(polAngle)) * rad) + rad + 10, 7315 y = ((Math.sin(polAngle)) * rad) + rad + 10; 7316 7317 $block.css({ 7318 top: y, 7319 left: x 7320 }).data('x', x) 7321 .data('y', y); 7322 } 7323 7324 setTimeout(function () { 7325 _updateConnections(); 7326 }, 2000); 7327 } 7328 7329 function _updateConnections() { 7330 $blocks.each(function () { 7331 var $block = $(this); 7332 var id = $block.data('id'); 7333 var x1 = $block.css('left').replace('px', '') * 1; 7334 var y1 = $block.css('top').replace('px', '') * 1; 7335 7336 //set connections 7337 var connections = $block.data('connected').toString().split(','); 7338 for(var i in connections) { 7339 var $target = $container.find('.block-' + connections[i]); 7340 7341 if($target.length > 0) { 7342 //_connect 7343 7344 7345 var x2 = $target.css('left').replace('px', '') * 1; 7346 var y2 = $target.css('top').replace('px', '') * 1; 7347 7348 var from = Math.min(id, connections[i]), 7349 to = Math.max(id, connections[i]); 7350 7351 _connect(x1 + 20, y1 + 20, x2 + 20, y2 + 20, 'line-' + from + '-' + to + '-e'); 7352 } 7353 } 7354 }); 7355 } 7356 7357 _arrange(); 7358 7359 $(window).resize(_arrange) 7360 }); 7361 } 7362 7363 api.init(); 7364 7365 return api; 7366})(); 7367},{"./hijack-jump-links":9}],23:[function(require,module,exports){ 7368var popup = require('./popup'); 7369 7370module.exports = (function() { 7371 var api = { 7372 isLoggedIn: false 7373 }; 7374 7375 api.call = function(method, success, fail) { 7376 success = success || function() { 7377 console.log('User logged in.'); 7378 }; 7379 fail = fail || function() { 7380 console.log('User cancelled login or did not fully authorize.'); 7381 }; 7382 7383 $(document).on('twitter-auth-failed', function(e, arg) { 7384 fail(); 7385 }); 7386 7387 $(document).on('twitter-result-success', function(e, arg) { 7388 success(arg); 7389 }); 7390 7391 var p = popup.window('/?' + method + '=true'); 7392 }; 7393 7394 api.wallPost = function(data, callback) { 7395 callback = callback || function(r) { 7396 }; 7397 var def = { 7398 message: '', 7399 url: '', 7400 append: '', 7401 prepend: '' 7402 } 7403 7404 data = $.extend({}, def, data); 7405 7406 var totalLen = data.message.length + data.append.length + data.prepend.length, 7407 twitterLimit = 112; 7408 7409 if (totalLen > twitterLimit) 7410 data.message = data.message.substr(0, (twitterLimit - (data.append.length + data.prepend.length))) + '...'; 7411 7412 if (data.append.length > 0) 7413 data.message = data.message + ' ' + data.append; 7414 7415 if (data.prepend.length > 0) 7416 data.message = data.prepend + ' ' + data.message; 7417 7418 popup.window('https://twitter.com/intent/tweet?text=' + encodeURIComponent(data.message) + '&url=' + encodeURIComponent(data.url), 'twitter-popup') 7419 } 7420 7421 return api; 7422})(); 7423 7424},{"./popup":16}]},{},[10])
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.