
 

/**

* Window popup

*/

function popup(url, width, height, name)

{

	if (!name){	name = '_popup';}

	window.open(url.replace(/&amp;/g, '&'), name, 'height=' + height + ',resizable=yes,scrollbars=yes, width=' + width);

	return false;

}



/**

* Jump to page

*/

// www.AskApache.com SEO TOOLKIT BEGIN

function jumpto() {

	var page = prompt(jump_page, on_page);

	if (page !== null && !isNaN(page) && page > 0) {

		var seo_page = (page - 1) * per_page;

		if ( base_url.indexOf('?') >= 0 ) {

			document.location.href = base_url.replace(/&amp;/g, '&') + '&start=' + seo_page;

		} else if ( seo_page > 0 ) {

			var seo_type1 = base_url.match(/\.[a-z0-9]+$/i);

			if (seo_type1 !== null) {

				document.location.href = base_url.replace(/\.[a-z0-9]+$/i, '') + seo_delim_start + seo_page + seo_type1;

			}

			var seo_type2 = base_url.match(/\/$/);

			if (seo_type2 !== null) {

				document.location.href = base_url + seo_static_pagination + seo_page + seo_ext_pagination;

			}

		} else {

			document.location.href = base_url;

		}

	}

}

// www.AskApache.com SEO TOOLKIT END



/**

* Mark/unmark checklist

* id = ID of parent container, name = name prefix, state = state [true/false]

*/

function marklist(id, name, state)

{

	var parent = document.getElementById(id);

	if (!parent)

	{

		eval('parent = document.' + id);

	}



	if (!parent)

	{

		return;

	}



	var rb = parent.getElementsByTagName('input');

	

	for (var r = 0; r < rb.length; r++)

	{	

		if (rb[r].name.substr(0, name.length) == name)

		{

			rb[r].checked = state;

		}

	}

}



/**

* Resize viewable area for attached image or topic review panel (possibly others to come)

* e = element

*/

function viewableArea(e, itself)

{

	if (!e) return;

	if (!itself)

	{

		e = e.parentNode;

	}

	

	if (!e.vaHeight)

	{

		// Store viewable area height before changing style to auto

		e.vaHeight = e.offsetHeight;

		e.vaMaxHeight = e.style.maxHeight;

		e.style.height = 'auto';

		e.style.maxHeight = 'none';

		e.style.overflow = 'visible';

	}

	else

	{

		// Restore viewable area height to the default

		e.style.height = e.vaHeight + 'px';

		e.style.overflow = 'auto';

		e.style.maxHeight = e.vaMaxHeight;

		e.vaHeight = false;

	}

}



/**

* Set display of page element

* s[-1,0,1] = hide,toggle display,show

*/

function dE(n, s)

{

	var e = document.getElementById(n);



	if (!s)

	{

		s = (e.style.display == '' || e.style.display == 'block') ? -1 : 1;

	}

	e.style.display = (s == 1) ? 'block' : 'none';

}



/**

* Alternate display of subPanels

*/

function subPanels(p)

{

	var i, e, t;



	if (typeof(p) == 'string')

	{

		show_panel = p;

	}



	for (i = 0; i < panels.length; i++)

	{

		e = document.getElementById(panels[i]);

		t = document.getElementById(panels[i] + '-tab');



		if (e)

		{

			if (panels[i] == show_panel)

			{

				e.style.display = 'block';

				if (t)

				{

					t.className = 'activetab';

				}

			}

			else

			{

				e.style.display = 'none';

				if (t)

				{

					t.className = '';

				}

			}

		}

	}

}



/**

* Call print preview

*/

function printPage()

{

	if (is_ie)

	{

		printPreview();

	}

	else

	{

		window.print();

	}

}



/**

* Show/hide groups of blocks

* c = CSS style name

* e = checkbox element

* t = toggle dispay state (used to show 'grip-show' image in the profile block when hiding the profiles) 

*/

function displayBlocks(c, e, t)

{

	var s = (e.checked == true) ?  1 : -1;



	if (t)

	{

		s *= -1;

	}



	var divs = document.getElementsByTagName("DIV");



	for (var d = 0; d < divs.length; d++)

	{

		if (divs[d].className.indexOf(c) == 0)

		{

			divs[d].style.display = (s == 1) ? 'none' : 'block';

		}

	}

}



function selectCode(a)

{

	// Get ID of code block

	var e = a.parentNode.parentNode.getElementsByTagName('CODE')[0];



	// Not IE

	if (window.getSelection)

	{

		var s = window.getSelection();

		// Safari

		if (s.setBaseAndExtent)

		{

			s.setBaseAndExtent(e, 0, e, e.innerText.length - 1);

		}

		// Firefox and Opera

		else

		{

			var r = document.createRange();

			r.selectNodeContents(e);

			s.removeAllRanges();

			s.addRange(r);

		}

	}

	// Some older browsers

	else if (document.getSelection)

	{

		var s = document.getSelection();

		var r = document.createRange();

		r.selectNodeContents(e);

		s.removeAllRanges();

		s.addRange(r);

	}

	// IE

	else if (document.selection)

	{

		var r = document.body.createTextRange();

		r.moveToElementText(e);

		r.select();

	}

}



/**

* Play quicktime file by determining it's width/height

* from the displayed rectangle area

*/

function play_qt_file(obj)

{

	var rectangle = obj.GetRectangle();



	if (rectangle)

	{

		rectangle = rectangle.split(',');

		var x1 = parseInt(rectangle[0]);

		var x2 = parseInt(rectangle[2]);

		var y1 = parseInt(rectangle[1]);

		var y2 = parseInt(rectangle[3]);



		var width = (x1 < 0) ? (x1 * -1) + x2 : x2 - x1;

		var height = (y1 < 0) ? (y1 * -1) + y2 : y2 - y1;

	}

	else

	{

		var width = 200;

		var height = 0;

	}



	obj.width = width;

	obj.height = height + 16;



	obj.SetControllerVisible(true);

	obj.Play();

}


