/* iPool JavaScript code */

document.cookie = "hasJavaScript=true";





function deleteLabel(labelId)
{
	document.labels.cmd.value = "deleteLabel";
	document.labels.labelid.value = labelId;
	document.labels.submit();
}





function dispRecordcompanyLabelsUpdate(labelId)
{
	document.labels.cmd.value = "dispRecordcompanyLabelsUpdate";
	document.labels.labelid.value = labelId;
	document.labels.submit();
}





function promotionFormUpdate()
{
	document.getElementById('dj').style.visibility = 'visible'
}





function showConfirmationAlert(text)
{
	confirmation = confirm(text);
	return confirmation;
}





/**
 * @param String elementId Id of a tbody element
 * @return void
 */
function toggleCollapse(elementId)
{
	element = document.getElementById(elementId);
	if (element.style.display == '') {
		element.style.display = 'none';
	}
	else if (element.style.display == 'none') {
		element.style.display = '';
	}
}





/**
 * @param String elementName
 * @return void
 */
function toggle(elementName)
{
	element = document.getElementById(elementName);
	element.style.display = element.style.display == '' ? 'none' : '';
}





function toggleEnable(elementName)
{
	element = document.getElementById(elementName);
	element.disabled = !element.disabled;
}





function updateAccessListForm()
{
	//alert("hello!");

	var ids = new Array(
		'mageditor',
		'radiostation',
		'dj',
		'licensee',
		'Playground',
		'International',
		'Compilation',
		'Digital',
		'Retail',
		'ConcertPromoter'
	);

	// Find out which tbody elements to show
	for (var i = 0; i < ids.length; i++) {
		checkboxId = 'checkbox' + ids[i];
		tbodyId = 'tbody' + ids[i];
		if (document.getElementById(checkboxId).checked) {
			document.getElementById(tbodyId).style.display = '';
		}
		else {
			document.getElementById(tbodyId).style.display = 'none';
		}
	}
}





function actionAccessListChanged(element, releaseId)
{
	var accessListId = element.value;

	// Assign new URL to edit button
	var urlEditButton = "iPool.jsp?cmd=display&page=RecordcompanyReleaseAccess&"
					+ "id=" + releaseId + "&accessListId=" + accessListId;
	var editButton = document.getElementById("EditButton" + releaseId);
	editButton.href = urlEditButton;

	// Assign new URL to delete button
	var urlDeleteButton = "iPool.jsp?cmd=deleteAccessList&accessListId=" + accessListId;
	var deleteButton = document.getElementById("DeleteButton" + releaseId);
	deleteButton.href = urlDeleteButton;

	// Assign new URL to e-mail button
	var urlEMailButton = "iPool.jsp?cmd=display&page=RecordcompanyEmails&"
					+ "releaseId=" + releaseId + "&accessListId=" + accessListId;
	var eMailButton = document.getElementById("EMailButton" + releaseId);
	eMailButton.href = urlEMailButton;

	// Assign new URL to schedule e-mail button
	var urlScheduleEMailButton = "iPool.jsp?cmd=display&page=RecordcompanyEmails&"
					+ "releaseId=" + releaseId + "&accessListId=" + accessListId + "&schedule=1";
	var scheduleEMailButton = document.getElementById("ScheduleEMailButton" + releaseId);
	scheduleEMailButton.href = urlScheduleEMailButton;

}




/**
 * @param String checkboxPrefix
 * @param boolean state
 */
function setStateOfAllCheckboxes(checkboxPrefix, state)
{
	inputElements = document.getElementsByTagName('input');

	for (i = 0; i < inputElements.length; ++i) {
		inputElement = inputElements[i];
		if (inputElement.name.search(checkboxPrefix) != -1) {
			inputElement.checked = state;
		}
	}
}





function setEnabledOfAllCheckboxes(checkboxPrefix, enabled)
{
	inputElements = document.getElementsByTagName('input');

	for (i = 0; i < inputElements.length; ++i) {
		inputElement = inputElements[i];
		if (inputElement.name.search(checkboxPrefix) != -1) {
			inputElement.disabled = !enabled;
		}
	}
}









function toggleShowHideColumns()
{
	//alert("hallo");
	var showHideColumnsBox = document.getElementById('showHideColumnsBox');
	if (showHideColumnsBox.style.visibility != 'visible') {
		showHideColumnsBox.style.visibility = 'visible';
	}
	else {
		showHideColumnsBox.style.visibility = 'hidden';
	}
}






function deleteSelection(elementName)
{
	element = document.getElementsByName(elementName)[0];
	for (i = 0; i < element.options.length; i++) {
		element.options[i].selected = false;
	}
}





function allowOnlyNumbers(evt, decimal)
{
	var key;
	var keychar;

	if (window.event) {
	   key = window.event.keyCode;
	}
	else if (evt) {
	   key = evt.which;
	}
	else {
	   return true;
	}
	keychar = String.fromCharCode(key);

	if ((key==null) || (key==0) || (key==8) ||  (key==9) || (key==13) || (key==27)) {
		return true;
	}
	else if ((("0123456789").indexOf(keychar) > -1)) {
		return true;
	}
	else if (decimal && (keychar == ".")) {
		return true;
	}
	else {
		return false;
	}
}





function onDownload(element)
{
	var ghostLink = document.createElement('span');
	ghostLink.className = 'normalGhost';

	var ghostLinkImage = document.createElement('img');
	ghostLinkImage.className = 'link';
	ghostLinkImage.src = element.firstChild.src.replace(/normal/, "normal_ghost");

	var ghostLinkText = document.createTextNode(element.lastChild.nodeValue);

	ghostLink.appendChild(ghostLinkImage);
	ghostLink.appendChild(ghostLinkText);

	element.parentNode.replaceChild(ghostLink, element);
}

