﻿// JScript File
function getPreview(id) {
    // Place a hidden input with id 'fileId' in every opener page that requires preview
    // functionality.
    document.getElementById('fileId').value = id;
    
    if(id.indexOf("AudioClip") >= 0)
    {
        window.open('preview.aspx', 'Preview', 'left=800px,top=100px,width=100px,height=100px,');
    }
    else if(id.indexOf("Video") >= 0)
    {
        window.open('preview.aspx', 'Preview', 'left=800px,top=100px,width=320px,height=240px');
    }
    else
    {
        window.open('preview.aspx', 'Preview', 'left=800px,top=100px,width=200px,height=200px');
    }
}

function selectPreview(serverLocationId, localLocationId) {
    var local = document.getElementById(localLocationId);
    var server = document.getElementById(serverLocationId);
    if (local.value != null && local.value != "")
    {
        getPreview(localLocationId);
    }
    else if (server.value != null && server.value != "")
    {
        getPreview(serverLocationId);
    }
    else {
        alert("No preview is available.");
    }
}

function getCalendar(dateId, top, left) {
    if(top != null && top != "" && left != null && left != "")
    {
        window.open('calendar.aspx?ctl=' + dateId, 'Calendar', 'top=' + top + ',left=' + left + ',width=190,height=180'); 
    }
    else
    {
        window.open('calendar.aspx?ctl=' + dateId, 'Calendar', 'top=50,left=800,width=190,height=180'); 
    }
}

var defaultFontSize = 0;
var maxFontSize = 6;
var minFontSize = -1;
function ChangeFontSize(delta, firstElementId)
{
    if ((defaultFontSize >= maxFontSize && delta > 0) || 
        (defaultFontSize <= minFontSize && delta < 0))
        return;
    defaultFontSize += delta;

    //var spans = document.body.getElementsByTagName("*");
    var twoContent = document.getElementById(firstElementId);
    var children = twoContent.childNodes;
    
    for (var i = 0; i < children.length; i++)
    {
        var childElement = children[i];
        ChangeChildFontSize(delta, childElement);
    }   
}

function ChangeChildFontSize(delta, element)
{
    // enumerate all deepest child nodes first, font-size is relative to the parent element
    var children = element.childNodes;
    for (var i = 0; i < children.length; i++)
    {
        var childElement = children[i];
        ChangeChildFontSize(delta, childElement);
    }    

    // search for the first <p> or <td> tag, and enlarge the font size
    if (element.tagName && (element.tagName.toLowerCase() == 'p' || 
        element.tagName.toLowerCase() == 'span' || element.tagName.toLowerCase() == 'strong'|| 
        element.tagName.toLowerCase() == 'a' || element.tagName.toLowerCase() == 'div' ||
        element.tagName.toLowerCase() == 'li' || element.tagName.toLowerCase() == 'th' || 
        element.tagName.toLowerCase() == 'td'))
    {    
        var currentFontSize = "";
        var fontUnit = "";
        if (element.currentStyle)
        {
            currentFontSize = parseInt(element.currentStyle.fontSize);
            fontUnit = "pt";
        }
        else if (window.getComputedStyle)
        {
            currentFontSize = parseInt(document.defaultView.getComputedStyle(element,null).getPropertyValue("font-size"));
            fontUnit = "px";
        }

        if (!isNaN(currentFontSize))
        {
            element.style.fontSize = currentFontSize + delta + fontUnit;
        }
    }   
    else if (element.tagName && element.tagName.toLowerCase() == 'font')
    {
        // size increment/decrement for the font tags
        element.size = parseInt(element.size) + delta;
    }
}

function loadMedia(serverMediaFilePath, width, height)
{   
    // calculate the height of the media player                 
    var controlHeight = 46;     // default height for the controller
    var playerHeight = height + controlHeight;

    var mediaPlayer = '<object id="medObj" classid="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6"'+
        ' width="304" height="292">';
    mediaPlayer = mediaPlayer + '<param name="URL" value="' + serverMediaFilePath+ '">';

    mediaPlayer = mediaPlayer + '<embed pluginspage="'+'http://www.microsoft.com/windows/windowsmedia/download/default.asp'+
        '" src="'+serverMediaFilePath+
        '" type="'+'application/x-mplayer2'+'" width="304" height="292"></embed>';
    mediaPlayer = mediaPlayer + '</object>';

    var mediaPlayerDiv = document.getElementById("mediaPlayerLocation");                        
    mediaPlayerDiv.innerHTML = mediaPlayer;

//    // calculate the size of the pop-up window
//    var windowWidth = width + 120;
//    var windowHeight = playerHeight + 200;

//    window.resizeTo(windowWidth, windowHeight);      
}