﻿// JScript File

function AddUserLinkBlock(linkDivId)
{
    var linkDiv = document.getElementById(linkDivId);
    if (linkDiv)
    {
        var inner = linkDiv.innerHTML;
        var newLink = '<table style="padding:0;margin:0;float:left;clear:both;border:solid 3px #000080"><tr><td>Label: </td><td><input name="urlLabels[]" type="text" size="60" value="Link label"/></td></tr><tr><td>Link: </td><td><input name="urlLinks[]" type="text" size="60" value="http://"/></td></tr></table>';
        inner =  inner + newLink;
        linkDiv.innerHTML = inner;        
    }
}


function setSelectedIndex(listbox, value)
{
    for(var i=0; i < listbox.options.length; i++)
    {
        if (listbox.options[i].value == value)
        {
            listbox.selectedIndex = i;
            return;
        }
    }
}

//var spryPanels = new Array();
//var spryGroups = new Array();
//var spryAccordians = new Array();
//var spryTabbedPanels = new Array();

//    function InitSpryDivs()
//    {
//        var divs = document.body.getElementsByTagName("div");
//        
//        for (var i=0; i < divs.length; i++)
//        {
//            switch(divs[i].className)
//            {
//                case "Accordion":
//                    spryAccordians[divs[i].id] = new Spry.Widget.Accordion(divs[i].id, {useFixedPanelHeights: false });
//                break;
//                
//                case "TabbedPanels":
//                break;
//
//                case "CollapsiblePanel":
//                break;
//
//                case "CollapsiblePanelGroup":
//                break;
//            }
//        }
//    }
    
//    function InitAccordians()
//    {
//        var divs = document.body.getElementsByTagName("div");
//        
//        for (var i=0; i < divs.length; i++)
//        {
//            if (divs[i].className == "Accordion")
//            {
//                spryAccordians[divs[i].id] = new Spry.Widget.Accordion(divs[i].id, {useFixedPanelHeights: false });
//            }
//        }
//    }
    
//    function InitTabbedPanels()
//    {
//        var divs = document.body.getElementsByTagName("div");
//        
//        for (var i=0; i < divs.length; i++)
//        {
//            if ((divs[i].className == "TabbedPanels") || (divs[i].className == "VTabbedPanels"))
//            {
//alert("site.js:init tabbed panel: " + divs[i].id);
//                spryTabbedPanels[divs[i].id] = new Spry.Widget.TabbedPanels(divs[i].id);
//            }
//        }
//    }
    
//    var ignorePanelList = new Array();
//    function InitCollapsiblePanels()
//    {
//        var divs = document.body.getElementsByTagName("div");
//        
//        for (var i=0; i < divs.length; i++)
//        {
//            if (divs[i].className == "CollapsiblePanel")
//            {
//                if (ignorePanelList[divs[i].id] != divs[i].id)
//                {
//                    var oContentDiv = Spry.Widget.CollapsiblePanel.prototype.getElementChildren(divs[i])[1];
//                    var bStartOpen = (oContentDiv.style.display != "none");
//                    spryPanels[divs[i].id] = new Spry.Widget.CollapsiblePanel(divs[i].id, { contentIsOpen: bStartOpen});
//                }
//            }
//        }
//    }
//    
//    function InitCollapsiblePanelGroups()
//    {
//        var divs = document.body.getElementsByTagName("div");
//        
//        for (var i=0; i < divs.length; i++)
//        {
//            if (divs[i].className == "CollapsiblePanelGroup")
//            {
//                childrenDivs = divs[i].getElementsByTagName("div");
//                for (var j=0; j < childrenDivs.length; j++) 
//                {
//                    if (childrenDivs[j].className == "CollapsiblePanel")
//                    {
//                        ignorePanelList[childrenDivs[j].id] = childrenDivs[j].id;
//                    }
//                }
//                spryGroups[divs[i].id] = new Spry.Widget.CollapsiblePanelGroup(divs[i].id, { contentIsOpen: false });
//            }
//        }
//    }
    
//    function CreateCollapsibleBySelector(selector)
//    {
//        Spry.$$(selector).forEach
//        (function(n)
//            {
//                var oContentDiv = Spry.Widget.CollapsiblePanel.prototype.getElementChildren(n)[1];
//                var contentDisplay = (oContentDiv.style.display != "none") && (oContentDiv.style.visibility != "hidden");
//                window[n.id] = new Spry.Widget.CollapsiblePanel(n.id, { contentIsOpen: contentDisplay } );
//            }
//        );
//    }

//    function CreateTabbedBySelector(selector)
//    {
//        Spry.$$(selector).forEach
//        (function(n)
//            {
//                window[n.id] = new Spry.Widget.TabbedPanels(n.id);
//            }
//        );
//    }

//    function CreateTextValidationBySelector(selector, validationType, validationOptions)
//    {
//        Spry.$$(selector).forEach
//        (function(n)
//            {
//          //  alert("text validation: " + n.id);
//                window["tv" + n.id] = new Spry.Widget.ValidationTextField(n.id, validationType, validationOptions );
//            }
//        );
//    }


    function InitSpry()
    {
//		alert("site.js: init spry --- this call deprecated");
		return;
        InitAccordians();
        InitCollapsiblePanelGroups();
        InitCollapsiblePanels();
        InitTabbedPanels();

        return true;
    }



function buildObjectDump(obj, level, indent) {
	var out = "";
	
	if (indent.length > 10) return indent + "     too deep\n";
	
	for( field in obj) {
		var theType = typeof(obj[field]);
		if (theType == "object") {
			if (obj[field]) {
				if (obj[field].innerHTML) {
					out += indent + field + " = (object):\n" + indent + "    [HTML]:" + escape(obj[field].innerHTML) + "\n";
				}
				else {
					out += indent + field + " = (object):\n" + indent + buildObjectDump(obj[field], level + 1, indent + "    ");
				}
			}
			else {
				out += indent + field + " = (object): null\n";
			}
		}
		else if (theType == "function") {
				out += indent + field + " = [function] \n";			
		}
		else {
			try {
				out += indent + field + " = (" + theType + ") " + obj[field] + "\n";
			}
			catch(e) {
				out += indent + field + " = (" + theType + ") [error accessing] \n";
				
			}
		}
	}
	
	return out;
}

function dumpObject(leader, obj) {
	output = leader + ":\n" + buildObjectDump(obj,0, "");
	var newWindow = window.open();
	newWindow.document.write("<html><head><title>dump results</title></head><body><pre style=\"font-family:Courier New\">" + output + "</pre></body></html>");
}
function dumpResults(results) {
					output = typeof(results) + ":\n" 
							+ buildObjectDump(results,0, "");
	var newWindow = window.open();
	newWindow.document.write("<html><head><title>dump results</title></head><body><pre style=\"font-family:Courier New\">" + output + "</pre></body></html>");
}



