$(function () { function a() { this.index = 0; this.immersive = false; this.vignettes = {}; this.experience = ""; this.debug = false; this.urlState = { experience: ""} } a.prototype.Index = function (b) { if (b != null) { this.index = b } return this.index }; a.prototype.Immersive = function (b) { if (b != null) { this.immersive = b } return this.immersive }; a.prototype.Experience = function (b) { if (b != null) { this.experience = b; this.urlState.experience = b; $.bbq.pushState(this.urlState, 2) } return this.experience }; a.prototype.DeserializeState = function (b) { if (b) { $.extend(this.urlState, b); this.experience = this.urlState.experience; if (this.urlState.debug) { this.debug = this.urlState.debug } } }; a.prototype.Debug = function () { if (this.debug) { return this.debug } else { return false } }; window.expState = new a(); $(window).bind("hashchange", function (c) { window.expState.DeserializeState($.bbq.getState()); if (window.expState.Experience() != "") { var b = $("#" + window.expState.Experience()); if (!$(".accordion-header", b).hasClass("active")) { switchBlocks(b, window.expState) } } }); $(window).trigger("hashchange") }); $(document).ready(function () { var a = window.expState; $.ajax({ url: "/VignetteData.pxml", success: function (c) { a.vignettes = c.vignettes.vignette; jwplayer("mediaplayer").setup({ flashplayer: "/jwplayer/player.swf", bufferlength: 4, playlist: c.vignettes.vignette, height: 537, width: 954, skin: "/jwplayer/bekle.zip", plugins: { "gapro-2": {}, "sharing-3": {} }, logo: { file: "/images/logo.png", position: "top-right", timeout: 5 }, events: { onPlay: playEventHandler, onBuffer: bufferEventHandler, onPause: pauseEventHandler, onError: errorEventHandler, onComplete: completeEventHandler} }); var d = "http://www.facebook.com/sharer/sharer.php?u="; var b = "http://twitter.com/intent/tweet?url="; $("#experiential_nav .accordion-block .share-overlay").each(function (f, e) { var g = escape(a.vignettes[f]["sharing.link"]); $(".facebook", e).attr("href", d + g); $(".twitter", e).attr("href", b + g) }) } }); $("#experiential_teaser").click(function () { $("#experiential_nav").slideDown("fast", function () { }); $("#experiential_teaser").slideUp("fast", function () { $("#alt_hero").fadeIn(1500, function () { $("#plasmaClient ul").remove() }) }) }); $("#experiential_header .close").click(function () { jwplayer("mediaplayer").stop(); $("#experiential_nav .imgOverlay").toggleClass("play", true).toggleClass("pause", false); $("#page_upper_trans").fadeIn(200, function () { $("#page_upper_exp").hide(); a.Immersive(false) }) }); $("#experiential_nav .play, #experiential_nav .thumbnail").click(function () { var b = $(this).closest("li").index(); playVideo(b) }); $("#experiential_nav .accordion-block .share").click(function () { $(this).siblings(".share-overlay").toggleClass("active", true) }); $("#experiential_nav .accordion-block .share-overlay").click(function () { $(this).toggleClass("active", false) }); $("#experiential_nav .accordion-header").click(function () { if (!$(this).hasClass("active")) { var b = $(this).parent(); switchBlocks(b) } }); $("#experiential_nav").swipe({ threshold: { x: 150, y: 75 }, swipeRight: function () { var c = $("#experiential_nav .accordion-header.active").parent(); if (c.prev().length != 0) { switchBlocks(c.prev()); try { _gaq.push(["_trackEvent", "Touch Event", "swipeRight"]) } catch (b) { } } }, swipeLeft: function () { var c = $("#experiential_nav .accordion-header.active").parent(); if (c.next().length != 0) { switchBlocks(c.next()); try { _gaq.push(["_trackEvent", "Touch Event", "swipeLeft"]) } catch (b) { } } } }) }); function playVideo(a) { var b = window.expState; if (!b.immersive) { $("#page_upper_exp").fadeIn(500, function () { $("#page_upper_trans").hide(); window.expState.Immersive(true); jwplayer("mediaplayer").playlistItem(a); jwplayer("mediaplayer").play(true) }) } else { jwplayer("mediaplayer").playlistItem(a); jwplayer("mediaplayer").play(true) } $("#page_upper_exp .title").text("Discover Sun Valley | " + b.vignettes[a].title); b.index = a } function switchBlocks(c) { $("#experiential_nav .accordion-block .share-overlay").toggleClass("active", false); var b = window.expState; var a = $("#experiential_nav .accordion li.active"); var f = c.attr("id"); $("#experiential_nav .accordion li").stop(true, true); $("#experiential_nav .accordion-header").removeClass("active"); $(".accordion-header", c).addClass("active"); c.animate({ "padding-right": 526 }, 600, "easeOutExpo", function () { }); c.addClass("active"); a.animate({ "padding-right": 6 }, 600, "easeOutExpo", function () { }); a.removeClass("active"); b.Experience(f); try { _gaq.push(["_trackEvent", "Accordion Nav", f]) } catch (d) { } } function playEventHandler(a) { var b = jwplayer("mediaplayer").getPlaylistItem(); var f = b.file; var j = false; var g = f.substr(f.length - 40, 40); for (var c = 0; c < b.levels.length; c++) { if (b.levels[c].url == f) { if (window.expState.Debug()) { $("#page_upper_exp .title").text("playing bitrate-tier: " + b.levels[c].bitrate + " file: " + g + " prevState: " + a.oldstate) } j = true } } if (!j) { f = $("#page_upper_exp video").get(0).currentSrc; g = f.substr(f.length - 40, 40); if (window.expState.Debug()) { $("#page_upper_exp .title").text("iOS/HTML5 playing file: " + g + " prevState: " + a.oldstate) } try { var k = window.location.toString(); _gaq.push(["_trackEvent", "Video Plays HTML5", f, k]) } catch (d) { } } $("#experiential_nav .imgOverlay").toggleClass("play", true).toggleClass("pause", false); var h = $("#experiential_nav li").eq(window.expState.index); $(".imgOverlay", h).toggleClass("play").toggleClass("pause") } function bufferEventHandler(b) { var a = jwplayer("mediaplayer").getBuffer(); if ((b.oldstate == "PLAYING") && (a > 0)) { if (window.expState.Debug()) { $("#page_upper_exp .title").text("buffering/autopause buffer: " + a + " prevState: " + b.oldstate) } jwplayer("mediaplayer").pause(true); _gaq.push(["_trackEvent", "Buffer Event (pausing)", "Buffer Percentage", a]) } else { if (window.expState.Debug()) { $("#page_upper_exp .title").text("nonpausing buffer: " + b.oldstate) } } } function pauseEventHandler(a) { if (a.oldstate != "BUFFERING") { if (window.expState.Debug()) { $("#page_upper_exp .title").text("manual pause prevState: " + a.oldstate) } } var b = $("#experiential_nav li").eq(window.expState.index); $(".imgOverlay", b).toggleClass("pause").toggleClass("play") } function completeEventHandler(a) { var b = $("#experiential_nav li").eq(window.expState.index); $(".imgOverlay", b).toggleClass("pause").toggleClass("play") } function errorEventHandler(a) { try { _gaq.push(["_trackEvent", "Error", a.message]) } catch (b) { if (window.expState.Debug()) { alert(b) } } };
