/* ########################################################################################
									IMAGE MANIPULATION
######################################################################################## */

// Init Vars
var originalImg;


function returnEvent(evt) {
	var evt = (evt) ? evt : ((event) ? event : null);	
	return evt;
}
// Dynamically get the images' ID
function getTargetId(evt) {
	var evt = returnEvent(evt); 
	var objId = (evt.target) ? evt.target.id : ((evt.srcElement) ? evt.srcElement.id : null);
	return objId;
}
// Return a swapped image to its original
function swapImageReturn(evt) {
	document.getElementById(getTargetId(evt)).src = originalImg;	
}
// Swap an Image
function swapImage(evt, newImg) {
	originalImg = document.getElementById(getTargetId(evt)).src;
	document.getElementById(getTargetId(evt)).src = newImg;
}


/* ########################################################################################
									DIV MANIPULATION
######################################################################################## */

// Init Vars
var userType = new Array("user_login", "user_register");

function hideShow_userType(name) {
	var objId = name;
	for (var i=0; i<userType.length; i++) {
		if (objId == userType[i]) {
			document.getElementById(userType[i]).style.display = "block";	
		} else {
			document.getElementById(userType[i]).style.display = "none";
		}
	}
}


/* ########################################################################################
									FILE UPLOAD STYLE
######################################################################################## */

// Init Vars
var W3CDOM = (document.createElement && document.getElementsByTagName);

function initFileUploadButton() {
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
	fakeFileUpload.className = 'fakefile';
	fakeFileUpload.appendChild(document.createElement('input'));
	var image = document.createElement('img');
	image.src='/resource/images/button_browse.jpg';
	fakeFileUpload.appendChild(image);
	var x = document.getElementsByTagName('input');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'fileinputs') continue;
		x[i].className = 'file hidden';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsByTagName('input')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.value = this.value;
		}
	}
}

function popUpWindow(strURL, intWidth, intHeight)
{
	intLeft = (window.screen.width - (intWidth))/2;
	intTop = (window.screen.height - (intHeight))/2;
	objWindow = window.open(strURL,'_blank', 'width=' + intWidth + ', height=' + intHeight + ', left=' + intLeft +  ', top=' + intTop + ', fullscreen=no, scrollbars=no, resizable=yes, menubar=no, status=no');
}

/* Undo the effects of replaceSpecialChars() function...	*/
function restoreWhiteSpaceCharsForHTML(specialChars)
{
	specialChars = specialChars.replace(/    /g, "&nbsp;&nbsp;&nbsp;&nbsp;"); 
	specialChars = specialChars.replace(/\n/g, "<br>"); 
	return specialChars;
}

function restoreWhiteSpaceChars(specialChars)
{
	specialChars = specialChars.replace(/__Tab__/g, "&nbsp;&nbsp;&nbsp;&nbsp;"); 
	specialChars = specialChars.replace(/__NewLine__/g, "\n"); 
	specialChars = specialChars.replace(/__CarriageReturn__/g, "\n"); 
	return specialChars;
}	
// Window will be centered..
function popUpWindow(strURL, intWidth, intHeight)
{
	intLeft = (window.screen.width - (intWidth))/2;
	intTop = (window.screen.height - (intHeight))/2;
	objWindow = window.open(strURL,'_blank', 'width=' + intWidth + ', height=' + intHeight + ', left=' + intLeft +  ', top=' + intTop + ', fullscreen=no, scrollbars=no, resizable=yes, menubar=no, status=no');
}

/*  Victor */

function swapQuickSearchTabImages(objTab)
{
	objImage1 = $('idTabBanking');
	objImage2 = $('idTabAccounting');
	objSelectBanking = $('idCaregorySelectBanking');
	objSelectAccounting = $('idCaregorySelectAccounting');
	
	myRegExp = /.*_inactive.jpg/g;
	myRegExp2 = /.*_active.jpg/g;
	
	/* Only perform this if the tab is currently inactive...*/
	if(myRegExp.test(objTab.src))
	{
		if(myRegExp.test(objImage1.src) || myRegExp2.test(objImage2.src))
		{
			objImage1.src = "/resource/images/TAB_banking_active.jpg";
			objImage2.src = "/resource/images/TAB_accounting_inactive.jpg";	
			objSelectBanking.style.display = 'block';
			objSelectAccounting.style.display = 'none';
			gblCurrentlySelectedTabId = objImage1.id;
		}
		else
		{
			objImage1.src = "/resource/images/TAB_banking_inactive.jpg";
			objImage2.src = "/resource/images/TAB_accounting_active.jpg";	
			objSelectBanking.style.display = 'none';
			objSelectAccounting.style.display = 'block';
			gblCurrentlySelectedTabId = objImage2.id;
		}
	}
}

// function returns the keyCode of the pressed key...
function handleKeyPress(e)
{
	var keynum;
	var keychar;
	var numcheck;
	if(window.event) // IE
	{
		keynum = window.event.keyCode;
	}
	else if(e && e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
	}
	return keynum;
}

function validateForm(objForm)
{
	/* Return true or false depending on success of the validation results... */
	return true;
}

// function used to make all fields disabled
function makeAllFormReadOnly()
{
	for(k = 0; k < document.forms.length; k++)
	{
		for(m = 0; m < document.forms[k].elements.length; m++)
		{				
			if(document.forms[k].elements[m].type != 'button')
			{	
				document.forms[k].elements[m].disabled = true;				
			}
		}
	}
}

/* ########################################################################################
									FILE MANAGER
######################################################################################## */
function openFileManager(win, subDir, useWith, returnFieldId) 
{
	if(subDir == null){
		subDir = '';
	}
	if(useWith == null){
		useWith = '';
	}
	if(returnFieldId == null){
		returnFieldId = '';
	}
	// Do custom browser logic
	url = '/admin/resource/file-manager/?subDir=' + subDir + '&useWith=' + useWith + '&returnFieldId=' + returnFieldId;
	x = 800; // width of window
	y = window.screen.height; // height of window.
	win2 = win;
	fileManagerWindow = window.open(url,"","width="+x+",height="+y+",left=0,top=0,bgcolor=white,resizable,scrollbars,menubar=0");
	if ( fileManagerWindow != null )
	{
		// bring the window to the front
		fileManagerWindow.focus();
	}	
}
