﻿var _serviceUrl = "ScriptServices/SlideShowServices.asmx";
var storedSlideshowVolume = { defaultvolume: "70", defaultmuting: "N" };

function GetSlideShowOptions(picIndex, autoStart, menuExtensionHtml, onClickFuntion, onChangeFunction, onCloseFunction, onPlayFunction, onPauseFunction)
{   
    var slideshowOptions = {
            dataType: 'json',
            frameWidth: 0,
	        preload: 1,
	        fx: '',
	        columns: 1,
	        menuPosition: 'bottom',
	        menuOffset: '-50px',
	        menuCompact: true,
	        imageHeight: 400,
	        shuffle: false,
	        loadFullImages: true,
	        thumbnails: false,
	        sliderBar: false,
	        borderWidth: 0,
	        xPadding: 0,
	        imagePadding: 0,
	        imageClickBehavior: null,
	        picIndexToSelect: picIndex,
	        slideShowStart: autoStart,			
	        slideShowSpeeds: [{ text: 'Slow', speed: 7000 }, { text: 'Medium', speed: 5000 }, { text: 'Fast', speed: 3000}],
            slideShowDelay: 5000,
            slideShowContinuous: false,
            menuActivateFromAnywhere: true,
            menuExtension: menuExtensionHtml,
            menuFadeEnabled: false,            
            hideMenusDelay: null,
            onClick: onClickFuntion,
	        onChange: onChangeFunction,
	        onClose: onCloseFunction,
            onPlay: onPlayFunction,
            onPause: onPauseFunction            
        };
    return slideshowOptions;
}

function GetFullScreenSlideShowOptions(picIndex, autoStart, showCloseButton, menuExtensionHtml, onCloseFunction, onPlayFunction, onPauseFunction)
{
    var enableMenuFade = false;
    if(menuExtensionHtml == null || menuExtensionHtml == "")
    {
        menuExtensionHtml = null;
        enableMenuFade = true;
    }

    var slideshowOptions = {
            dataType : "json",
            frameWidth: 0,
	        preload: 1,
	        fx: '',
	        menuPosition: 'bottom',
	        shuffle: false,
	        loadFullImages: true,
	        thumbnails: false,
	        sliderBar: false,
	        picIndexToSelect: picIndex,
	        slideShowStart: autoStart,			
	        slideShowSpeeds: [{ text: 'Slow', speed: 7000 }, { text: 'Medium', speed: 5000 }, { text: 'Fast', speed: 3000}],
            slideShowDelay: 5000,
            showClose: showCloseButton,
            menuFadeEnabled: enableMenuFade,
            menuExtension: menuExtensionHtml,
            menuExtensionPosition: 'bottomright',
            menuActivateFromAnywhere: true,
            onClose: onCloseFunction,
            onPlay: onPlayFunction,
            onPause: onPauseFunction
        };
    return slideshowOptions;
}

function SaveSlideShowMusic(musicFileId, setType, setId, successHandler, errorHandler)
{
	var args = {};
	args.musicFileId = musicFileId;
	args.setType = setType;
	args.setId = setId;

	var callUrl = _serviceUrl + "/SaveMusicFile";

	//  Format the JSON request
	var jsonData = JSON.stringify(args);
	
	$.ajax({
		type: "POST",
		url: callUrl,
		contentType: "application/json; charset=utf-8",
		data: jsonData,
		dataType: "json",
		success: successHandler,
		error: errorHandler
	});	
}

function HandleVolumeChange(level, muting)
{
	if ($.cookie)
	{
		//	Write to cookie
		$.cookie("OPF.SS.Music.Level", level + "|" + muting);
    }

    //  Write to the in-memory object:
    storedSlideshowVolume.defaultvolume = level;
    storedSlideshowVolume.defaultmuting = muting;        
    
    //	Set focus to the body element because
    //	IE grabs focus from page when user interacts with Flash player
    $("body")[0].focus();
}

function InitDefaultVolume()
{    
	//	Retrieve from cookie		
	var stored = $.cookie("OPF.SS.Music.Level");
	if (stored && stored != "")
	{
		var storedData = stored.split("|");
		storedSlideshowVolume.defaultvolume = storedData[0];
		storedSlideshowVolume.defaultmuting = storedData[1];
	}

    //  Return the default (if you really want it)
	return storedSlideshowVolume;
}
