blob: 99a24eefe4f681701a7b3792321e3d1c14114db6 [file] [log] [blame]
<%
/*******************************************************************************
* Copyright (c) 2001, 2004 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
%>
<%@ page contentType="text/html; charset=UTF-8" import="org.eclipse.wst.ws.internal.explorer.platform.util.*" %>
<jsp:useBean id="controller" class="org.eclipse.wst.ws.internal.explorer.platform.perspective.Controller" scope="session"/>
<script language="javascript">
var numberOfHeaderRows = 1;
function getTable(tableContainerId)
{
var container = document.getElementById(tableContainerId);
return container.getElementsByTagName("table").item(0);
}
function setSelect(select,value)
{
for (var i=0;i<select.options.length;i++)
{
if (select.options[i].value == value)
{
select.selectedIndex = i;
return select.options[i].text;
}
}
}
function removeSelectedRows(tableContainerId)
{
var table = getTable(tableContainerId);
for (var i=numberOfHeaderRows;i<table.rows.length;i++)
{
var rowCheckbox = table.rows[i].getElementsByTagName("input").item(0);
if (rowCheckbox.checked)
{
table.deleteRow(i);
i--;
}
}
var checkAllCheckboxRow = table.rows[0];
var checkAllCheckbox = checkAllCheckboxRow.getElementsByTagName("input").item(0);
if (checkAllCheckbox.checked)
checkAllCheckbox.checked = false;
}
function handleRowCheckboxClick(e)
{
var checkbox;
if (isMicrosoftInternetExplorer())
checkbox = event.srcElement;
else
checkbox = e.target;
var cell = checkbox.parentNode;
var row = cell.parentNode;
if (checkbox.checked)
highlightRow(row,"rowcolor");
else
highlightRow(row,"tablecells");
var tbody = row.parentNode;
var table = tbody.parentNode;
var checkAllCheckbox = table.rows[0].getElementsByTagName("input").item(0);
if (checkAllCheckbox.checked)
checkAllCheckbox.checked = false;
}
function createRowCheckbox()
{
var rowCheckbox = document.createElement("input");
rowCheckbox.setAttribute("name",rowCheckboxName);
rowCheckbox.type = "checkbox";
rowCheckbox.title = "<%=HTMLUtils.JSMangle(controller.getMessage("FORM_CONTROL_TITLE_SELECT_ROW_CHECK_BOX"))%>";
rowCheckbox.onclick = handleRowCheckboxClick;
return rowCheckbox;
}
function handleCheckAllClick(tableContainerId,checkAllCheckbox)
{
var table = getTable(tableContainerId);
for (var i=numberOfHeaderRows;i<table.rows.length;i++)
{
var rowCheckboxCell = table.rows[i].getElementsByTagName("td").item(0);
var rowCheckbox = rowCheckboxCell.childNodes[0];
rowCheckbox.checked = checkAllCheckbox.checked;
if (rowCheckbox.checked)
highlightRow(table.rows[i],"rowcolor");
else
highlightRow(table.rows[i],"tablecells");
}
}
function highlightRow(row,className)
{
var rowColumns = row.getElementsByTagName("td");
for (var i=1;i<rowColumns.length;i++)
rowColumns.item(i).className = className;
}
function highlightErrantRow(row,className)
{
var rowColumns = row.getElementsByTagName("td");
var column0 = rowColumns.item(0);
var column0Control = column0.childNodes[0];
var start;
if (column0Control.type == "checkbox")
{
column0Control.checked = true;
rowColumns.item(1).className = "firstcolumnerrantrowcolor";
start = 2;
}
else
{
column0.className = "firstcolumnerrantrowcolor";
start = 1;
}
rowColumns.item(rowColumns.length-1).className = "lastcolumnerrantrowcolor";
for (var i=start;i<rowColumns.length-1;i++)
rowColumns.item(i).className = "middleerrantrowcolor";
}
function twist(tableContainerId,twistImageName)
{
var tableContainer = document.getElementById(tableContainerId);
var twistImage = document.images[twistImageName];
if (tableContainer.style.display == "none")
{
tableContainer.style.display = "";
twistImage.src = "<%=response.encodeURL(controller.getPathWithContext("images/twistopened.gif"))%>";
twistImage.alt = "<%=HTMLUtils.JSMangle(controller.getMessage("ALT_TWIST_OPENED"))%>";
}
else
{
tableContainer.style.display = "none";
twistImage.src = "<%=response.encodeURL(controller.getPathWithContext("images/twistclosed.gif"))%>";
twistImage.alt = "<%=HTMLUtils.JSMangle(controller.getMessage("ALT_TWIST_CLOSED"))%>";
}
}
function twistOpen(tableContainerId)
{
if (document.getElementById(tableContainerId).style.display == "none")
twist(tableContainerId,"x"+tableContainerId);
}
function getDefaultDisplayString(inputValue)
{
if (inputValue == null || inputValue.length < 1)
return "<%=HTMLUtils.JSMangle(controller.getMessage("TABLE_BLANK_PLACEHOLDER"))%>";
return inputValue;
}
</script>