﻿// JScript File
function toggleDivDisplay(divID){

    if (divID == ''){
    }
    else{
        var ElementStyle=document.getElementById(divID).style;
        if (ElementStyle.display=='block'){
            ElementStyle.display='none';
        }
        else {
            ElementStyle.display='block';
        }
    }
}

function ShowPhoto(filename, imgID){
    var Element=document.getElementById(imgID);
    Element.src=filename;
}

function ShowPhotoLabel(InsertThisText, textID){
    var Element=document.getElementById(textID);
    if(Element.firstChild){
        Element.firstChild.nodeValue=InsertThisText;
    }
    else{
        Element.appendChild(document.createTextNode(InsertThisText));
    }
}

function inputLimiter(e,allow) { 
    var AllowableCharacters = '';

    if (allow == 'Letters'){AllowableCharacters=' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';}
    if (allow == 'Numbers'){AllowableCharacters='1234567890';} 
    if (allow == 'LettersAndNumbers'){AllowableCharacters='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';} 
    if (allow == 'NameCharacters'){AllowableCharacters=' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-.\'';}
    if (allow == 'onoma'){AllowableCharacters='1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-.\'';}

    var k; 
    k=document.all?parseInt(e.keyCode): parseInt(e.which); 
      if (k!=13 && k!=8 && k!=0){ 
            if ((e.ctrlKey==false) && (e.altKey==false)) { 
                  return (AllowableCharacters.indexOf(String.fromCharCode(k))!=-1); 
            } else { 
                  return true; 
            } 
      } else { 
            return true; 
      } 
} 

function Left(str, n){ 
    if (n <= 0) 
        return ""; 
    else if (n > String(str).length) 
        return str; 
    else 
        return String(str).substring(0,n); 
} 
function Right(str, n){ 
    if (n <= 0) 
       return ""; 
    else if (n > String(str).length) 
       return str; 
    else { 
       var iLen = String(str).length; 
       return String(str).substring(iLen, iLen - n); 
    } 
}

function format(oObj,masking){
    try{
	    // trapping shift or tab keys
	    if((window.event.keyCode==9) || (window.event.keyCode==16)){
		    return;
	    }

        switch(masking){
            case 'phonenumber':{
	            var sValue = oObj.value;
	            sValue = sValue.replace(/[^0-9]/ig,"")	//remove non numeric values
                var sLength = sValue.length;
                
                switch (sLength){
	                case 1:{
	                    oObj.value = sValue;
	                    break;}
	                case 2:{
	                    oObj.value = Left(sValue,1) + Right(sValue,1);
	                    break;}
	                case 3:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,2),1) + Right(sValue,1) + '-';
	                    break;}
	                case 4:{
	                    oObj.value =  Left(sValue,1) + Left(Right(sValue,3),1) + Left(Right(sValue,2),1) + '-' + Right(sValue,1);
	                    break;}
	                case 5:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,4),1) + Left(Right(sValue,3),1) + '-' + Left(Right(sValue,2),1) + Right(sValue,1);
	                    break;}
	                case 6:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,5),1) + Left(Right(sValue,4),1) + '-' + Left(Right(sValue,3),1) + Left(Right(sValue,2),1) + Right(sValue,1) + '-';
	                    break;}
	                case 7:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,6),1) + Left(Right(sValue,5),1) + '-' + Left(Right(sValue,4),1) + Left(Right(sValue,3),1) + Left(Right(sValue,2),1) + '-' + Right(sValue,1);
	                    break;}
	                case 8:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,7),1) + Left(Right(sValue,6),1) + '-' + Left(Right(sValue,5),1) + Left(Right(sValue,4),1) + Left(Right(sValue,3),1) + '-' + Left(Right(sValue,2),1) + Right(sValue,1);
	                    break;}
	                case 9:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,8),1) + Left(Right(sValue,7),1) + '-' + Left(Right(sValue,6),1) + Left(Right(sValue,5),1) + Left(Right(sValue,4),1) + '-' + Left(Right(sValue,3),1) + Left(Right(sValue,2),1) + Right(sValue,1);
	                    break;}
	                case 10:{
	                    oObj.value = Left(sValue,1) + Left(Right(sValue,9),1) + Left(Right(sValue,8),1) + '-' + Left(Right(sValue,7),1) + Left(Right(sValue,6),1) + Left(Right(sValue,5),1) + '-' + Left(Right(sValue,4),1) + Left(Right(sValue,3),1) + Left(Right(sValue,2),1) + Right(sValue,1);
	                    break;}
	                default:{
                        oObj.value = Left(oObj.value,12);
		                break;}
                }
            }
        }
    }catch(exception){
        //do nothing
    }
}

function photoalbum_navigation(command){
    //uses global Vars loaded at page level: photoIndex and photoArray
    //accepts commands "first", "previous", "next", "last"
    var divContents = 'DisplayPhoto';
    try{
        switch (command){
            case 'first':{
                photoIndex = 0;
                break;}
            case 'previous':{
                if (photoArray.length > 0 && photoIndex > 0){
                    photoIndex = photoIndex - 1;
                }else{
                    photoIndex = 0;
                }
                break;}
            case 'next':{
                if (photoArray.length > 0 && photoIndex < photoArray.length - 1){
                    photoIndex = photoIndex + 1;
                }else{
                    photoIndex = photoArray.length - 1;
                }
                break;}
            case 'last':{
                photoIndex = photoArray.length - 1;
                break;}
        }
        ShowPhoto(photoArray[photoIndex], divContents);
    }catch(expception){}
}

