var nav_ids = ["pg_nav_summary", "pg_nav_content"];

window.$ = function(el)
{
	return document.getElementById(el);
};

window.change_page = function(el)
{
	//window.location = (ix == window.ap_arr.length-1 && window.ap_arr[ix][1].indexOf("Comments") != -1) ? "comments" : "p" + String(window.ap_arr[ix][0]);
	window.location = el.options[el.selectedIndex]["url"];
};

window.crel = function(el, p)
{
	var n = document.createElement(el);
	
	if (0 == p.length)
	{
		return n;
	}
	
	for (i in p)
	{
		if ("function" == typeof(p[i][1]))
		{
			eval("n." + p[i][0] + " = " + p[i][1]);
		}
		else if ("txt" == p[i][0])
		{
			n.appendChild(window.crel_tn(p[i][1]));
		}
		else
		{
			eval("n." + p[i][0] + " = \"" + p[i][1] + "\"");
		}
	}
	
	return n;
};

window.crel_tn = function(txt)
{
	return document.createTextNode(txt);
};

window.gen_ap_nav = function()
{
	// make sure we have this stuff
	if (!window.ap_arr || window.ap_arr.length == 0 < 2)
	{
		return false;
	}
	
	for (el in window.nav_ids)
	{	
		var select = window.crel("select", []);
		var optg = window.crel("optgroup", [["label", "Pages"]])

		select.onchange = function()
		{
			window.change_page(this);
		};

		// do normal pages
		for (ap in window.ap_arr[0])
		{
			var c_opt = window.crel("option", [["value", String(window.ap_arr[0][ap][0])], ["url", "p" + String(window.ap_arr[0][ap][0])], ["txt", "Page " + String(window.ap_arr[0][ap][0]) + " : " + window.ap_arr[0][ap][1]]]);
			if (window.ap_arr[0][ap].length == 3)
			{
				c_opt.selected = true;
			}
			optg.appendChild(c_opt);
		}

		select.appendChild(optg);

		if (window.ap_arr[1].length != 0)
		{
			var optg2 = window.crel("optgroup", [["label", "____________"]])
			for (ape in window.ap_arr[1])
			{				
				var c_opt = window.crel("option", [["value", ""], ["url", window.ap_arr[1][ape][1]], ["txt", window.ap_arr[1][ape][0]]]);
				if (window.ap_arr[1][ape].length == 3)
				{
					c_opt.selected = true;
				}				
				optg2.appendChild(c_opt);			
			}
			select.appendChild(optg2);			
		}

		var append_to = document.getElementById(window.nav_ids[el]);

		if (append_to)
		{
			append_to.appendChild(select);
		}
	}	
};

window.show_inline_image = function(id)
{
	window.open('/inline_image/'+id, "TrustedReviews Article Image", "width=640,height=480,location=no,scrollbars=no,status=no,resizable=no,menubar=no");
};

window.is_content_page = function()
{
	return document.getElementById(window.nav_ids[0]) || document.getElementById(window.nav_ids[1]);
};

window.onload = function()
{	
	if (window.is_content_page())
	{
		window.gen_ap_nav();
	}
};

window.show_comment_box = function()
{
	document.getElementById("comment_box_container").style.display = "block";
	document.getElementById("add_comment").style.display = "none";
};

window.show_comment = function(id)
{
	var cs = document.getElementById("comment_"+id+"_short");
	var c = document.getElementById("comment_"+id);
	if (cs && c)
	{
		cs.style.display = "none";
		c.style.display = "block";				
	}
};

// function adjust_textarea(ta)
// {
// 	if (navigator.userAgent.toLowerCase().indexOf('webkit') != -1) {return;} //webkit based stuff appears to be unpredictable on line counts? weird.
// 	var value_ = ta.value;
// 	value_ = value_.replace(new RegExp("\n\r", "gi"), "\n");
// 	var split_ = value_.split("\n");
// 	var len = 0;
// 	ta.rows = split_.length > 4 ? split_.length+2 : 4;
// 	return;
// }

function adjustTextarea(ta)
{
	var value_ = ta.value;
	value_ = value_.replace(new RegExp("\n\r", "gi"), "\n");
	var split_ = value_.split("\n");
	var len = 0;
	ta.rows = split_.length > 4 ? split_.length+2 : 4;
	return;
}