﻿var caseStudyToLoad,
	caseStudyUrl,
	mediaPath = 'assets/media',
	swfPath = 'js';

function initCases() {
	// set clients image mouse events
	$('.brand-category img').each(function () {
		$(this).hover(
		// mouseover
					function () {
						this.src = this.src.replace('_up', '_over');
					},
		// mouseout
					function () {
						this.src = this.src.replace('_over', '_up');
					}
				);
	});
}

function resetCaseStudy() {
	// console.markTimeline('resetCaseStudy');
	UpdatePosition('#case-studies', 1000, resetCaseStudyAfterPosition);
}

function resetCaseStudyAfterPosition() {

	var $caseStudies = $('#case-studies'),
		dur = $caseStudies.height() ? 1000 : 0;
	
	// console.log('resetCaseStudyAfterPosition', dur || 'immediately');
	
	$('#case-studies').animate({ height: 0 }, {
		duration: dur,
		easing: 'easeInOutExpo',
		complete: function () {
			$(this).removeClass('active');
			$(this).empty();
			setupStickyHeaders();
			curRoute.runRouteHandler(curRoute.view, curRoute.position, curRoute.command);
		}
	});
}

function closeCaseStudy() {
	// console.markTimeline('closeCaseStudy');
	UpdatePosition('#case-studies', 1000, closeCaseStudyAfterPosition);
}

function closeCaseStudyAfterPosition() {
	// skip animation if there is no difference
	var $caseStudies = $('#case-studies'),
		dur = $caseStudies.height() ? 1000 : 0;
	
	// console.log('closeCaseStudyAfterPosition', dur || 'immediately');
	
	$caseStudies.animate({ height: 0 },
		{
			duration: dur,
			easing: 'easeInOutExpo',
			complete: function () {
				$(this).removeClass('active');
				$(this).empty();

				if (caseStudyToLoad == 'categories') {
					UpdatePosition('#case-studies-by-category', 1000);
					$(this).addClass('active');
					caseStudyToLoad = '';
				} else if (caseStudyToLoad != '') {
					loadCaseStudy();
				}
			}
		});
}

function openCaseStudy() {
	// console.markTimeline('openCaseStudy');
	var contentHeight = $('#case-studies > div:first-child').height();

	$('#case-studies').animate({ 'height': contentHeight },
		{
			duration: 1000,
			easing: 'easeInOutExpo',
			complete: function () {
				$(this).addClass('active');
				caseStudyToLoad = '';
				caseStudyUrl = '';
			}
		});
}

function loadCaseStudy() {
	// console.markTimeline('loadCaseStudy');

	$('#case-studies').load(caseStudyUrl, function (response, status, xhr) {
		if (status == "success") {
			// console.markTimeline('loadCaseStudy: loaded (success)');
			setupStickyHeaders();
			applyCaseStudySettings();
			UpdatePosition('#case-studies', 1000, openCaseStudy);
		}
	});
}

function applyCaseStudySettings() {
	switch (caseStudyToLoad) {
		case "patelco-case-study":
			$('.gallery', '#patelco-gallery').slides({
				play: 5000,
				pause: 2500,
				slideSpeed: 600,
				hoverPause: true
			});

			$("#patelco-audio-player-1").jPlayer({
				ready: function () {
					$(this).jPlayer("setMedia", {
						mp3: mediaPath + "/Patelco_PaymentsFirst_Audio.mp3"
					});
				},
				play: function () { // To avoid both jPlayers playing together.
					$(this).jPlayer("pauseOthers");
				},
				swfPath: swfPath,
				solution: "flash, html",
				supplied: "mP3",
				cssSelectorAncestor: "#patelco-audio-panel-1",
				cssSelector: {
					play: ".audio-play",
					pause: ".audio-pause",
					currentTime: ".audio-time",
					gui: ".audio-panel",
					mute: ".audio-mute",
					unmute: ".audio-unmute",
					seekBar: ".audio-seek-bar",
					playBar: ".audio-play-bar"
				}
			});

			$("#patelco-audio-player-2").jPlayer({
				ready: function () {
					$(this).jPlayer("setMedia", {
						mp3: mediaPath + "/Patelco_Disclaimer_Audio.mp3"
					});
				},
				play: function () { // To avoid both jPlayers playing together.
					$(this).jPlayer("pauseOthers");
				},
				swfPath: swfPath,
				solution: "flash, html",
				supplied: "mP3",
				cssSelectorAncestor: "#patelco-audio-panel-2",
				cssSelector: {
					play: ".audio-play",
					pause: ".audio-pause",
					currentTime: ".audio-time",
					gui: ".audio-panel",
					mute: ".audio-mute",
					unmute: ".audio-unmute",
					seekBar: ".audio-seek-bar",
					playBar: ".audio-play-bar"
				}
			});
			break;
		case "purcell-murray-case-study":
			$('.gallery', '#purcell-murray-gallery').slides({
				play: 5000,
				pause: 2500,
				slideSpeed: 600,
				hoverPause: true
			});
			break;
		case "dockers-case-study":
			break;
		case "levis-case-study":
			$("#levis-audio-player-1").jPlayer({
				ready: function () {
					$(this).jPlayer("setMedia", {
						mp3: mediaPath + "/Levis_JCPenney_Audio.mp3"
					});
				},
				play: function () { // To avoid both jPlayers playing together.
					$(this).jPlayer("pauseOthers");
				},
				swfPath: swfPath,
				solution: "flash, html",
				supplied: "mP3",
				cssSelectorAncestor: "#levis-audio-container-1",
				cssSelector: {
					play: ".audio-play",
					pause: ".audio-pause",
					currentTime: ".audio-time",
					gui: ".audio-panel",
					mute: ".audio-mute",
					unmute: ".audio-unmute",
					seekBar: ".audio-seek-bar",
					playBar: ".audio-play-bar"
				}
			});

			$("#levis-audio-player-2").jPlayer({
				ready: function () {
					$(this).jPlayer("setMedia", {
						mp3: mediaPath + "/Levis_Kohls_Audio.mp3"
					});
				},
				play: function () { // To avoid both jPlayers playing together.
					$(this).jPlayer("pauseOthers");
				},
				swfPath: swfPath,
				solution: "flash, html",
				supplied: "mP3",
				cssSelectorAncestor: "#levis-audio-container-2",
				cssSelector: {
					play: ".audio-play",
					pause: ".audio-pause",
					currentTime: ".audio-time",
					gui: ".audio-panel",
					mute: ".audio-mute",
					unmute: ".audio-unmute",
					seekBar: ".audio-seek-bar",
					playBar: ".audio-play-bar"
				}
			});
			break;
		case "deyoung-case-study":
			$('.gallery', '#deyoung-gallery').slides({
				play: 5000,
				pause: 2500,
				slideSpeed: 600,
				hoverPause: true
			});
			break;
		case "springboard-forward-case-study":
			$('.gallery', '#springboard-forward-gallery').slides({
				play: 5000,
				pause: 2500,
				slideSpeed: 600,
				hoverPause: true
			});
			break;
		default:
			break;
	}
}

