// Chris Pyper 2006

// i18n support added Feb 2007 [jwm]

function buildHighlightBox(doc)
{
	debug("buildBox()", 'info');

	table = document.createElement("table");

	// Table Rows must be wrapped in tbody tags or dynamically generated tables will not work
    // in Internet Explorer
    tbody = document.createElement("tbody");
    table.border = '0';
    table.cellpadding = '0';
    table.cellspacing = '0';

	tr = document.createElement("tr");
	td = document.createElement("td");
	td.className = 'editBorder';
	td.appendChild(doc);
	tr.appendChild(td);
	tbody.appendChild(tr);

	// Small tab button row
    tr = document.createElement("tr");
    tr.valign = 'top';
    tr.align  = 'left';

    td = document.createElement("td");

    del = document.createElement("div");
    del.className = 'deleteHighlight';
    del.onclick = deleteSelectedElement;
    del.title = translate("DeleteElement");

	dup = document.createElement("div");
	dup.className = 'duplicateHighlight';
	dup.onclick = duplicateSelectedElement;
	dup.title = translate("DuplicateElement");

	xedit = document.createElement("div");
    xedit.className = 'xeditHighlight';
    xedit.onclick = externalEditSelectedElement;
    xedit.title = translate("Edit");

    td.appendChild(del);

	// Can't duplicate plugins
	if ( doc.className.search(/editorPlugin/gi) < 0 )
		td.appendChild(dup);

	if ( EXTERNAL_EDITORS[doc.tagName] )
		td.appendChild(xedit);


    tr.appendChild(td);
    tbody.appendChild(tr);
    table.appendChild(tbody);

	return table;
}

// Build resize box with tabs around element
function buildResizeBox(doc)
{
	debug("buildResizeBox()", 'info');

	// Table
	table = document.createElement("table");
	// Table Rows must be wrapped in tbody tags or dynamically generated tables will not work
	// in Internet Explorer
	tbody = document.createElement("tbody");
	table.border = '0';
	table.cellpadding = '0';
	table.cellspacing = '0';

	// Row 1
	tr = document.createElement("tr");
	tr.valign = 'middle';
	tr.align  = 'center';
	
	// North West
	td = document.createElement("td");
	addClass(td, "outerTableSize");
	div = document.createElement("div");
	div.className = 'northWest';
	div.id = 'resize-northWest';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	// North
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'north';
	div.id = 'resize-north';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	// North East
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'northEast';
	div.id = 'resize-northEast';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	tbody.appendChild(tr);

	// Row 2
	tr = document.createElement("tr");
	tr.valign = 'middle';
	tr.align  = 'center';

	// West
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'west';
	div.id = 'resize-west';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	// Content
	td = document.createElement("td");
	// Reference to resize table content
	resizeTableContentRef = td;
	td.align = 'left';
	td.appendChild(doc);
    tr.appendChild(td);

	// East
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'east';
	div.id = 'resize-east';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	tbody.appendChild(tr);

	// Row 3 
	tr = document.createElement("tr");
	tr.valign = 'top';
	tr.align  = 'center';

	// South West
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'southWest';
	div.id = 'resize-southWest';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);

	// South
	td = document.createElement("td");
	div = document.createElement("div");
	div.className = 'south';
	div.id = 'resize-south';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
    tr.appendChild(td);

	// South East
	td = document.createElement("td");
	addClass(td, "outerTableSize");
	div = document.createElement("div");
	div.className = 'southEast';
	div.id = 'resize-southEast';
	div.onmousedown = resizeElementDown;
	td.appendChild(div);
	tr.appendChild(td);
		
	tbody.appendChild(tr);

	// Small tab button row
    tr = document.createElement("tr");
    tr.valign = 'top';
    tr.align  = 'left';

    tdl = document.createElement("td");
    tdc = document.createElement("td");
    tdr = document.createElement("td");

    del = document.createElement("div");
    del.className = 'deleteResize';
    del.onclick = deleteSelectedElement;
    del.title = translate("DeleteElement");

	dup = document.createElement("div");
    dup.className = 'duplicateResize';
    dup.onclick = duplicateSelectedElement;
    dup.title = translate("DuplicateElement");

	xedit = document.createElement("div");
    xedit.className = 'xeditResize';
    xedit.onclick = externalEditSelectedElement;
    xedit.title = translate("Edit");

    tdc.appendChild(del);
	tdc.appendChild(dup);
	if ( EXTERNAL_EDITORS[doc.tagName] )
		tdc.appendChild(xedit);

    tr.appendChild(tdl);
    tr.appendChild(tdc);
    tr.appendChild(tdr);

    tbody.appendChild(tr);

	table.appendChild(tbody);

	return table;
}

