var supportsKeys = false;
function show_hide(area)
{
	if(document.getElementById(area).style.display == '')
	{
		document.getElementById(area).style.display = 'none';
	}
	else
	{
		document.getElementById(area).style.display = '';
	}
}

function delete_from_select(input_name, index)
{
	if(index == -1)
	{
		return false;
	}

	var element = document.getElementById(input_name);

	element.options[index] = null;

	if(index == element.options.length)
	{
		element.selectedIndex = index-1;
	}
	else
	{
		element.selectedIndex = index;
	}

	if(element.options.length+1 <= element.size && element.size > 3)
	{
		element.size--;
	}
	
	if(element.length == 0)
	{
		element.length++;
		element.options[0].value = '';
		element.options[0].text  = "Select Member(s) -->";
	}
}

function setCookie(name, value, expiredays, path, domain, secure) {
   if (expiredays) {
      var exdate=new Date();
      exdate.setDate(exdate.getDate()+expiredays);
      var expires = exdate.toGMTString();
   }
   document.cookie = name + "=" + escape(value) +
   ((expiredays) ? "; expires=" + expires : "") +
   ((path) ? "; path=" + path : "") +
   ((domain) ? "; domain=" + domain : "") +
   ((secure) ? "; secure" : "");
}

function getCookie(name) {
   var cookie = " " + document.cookie;
   var search = " " + name + "=";
   var setStr = null;
   var offset = 0;
   var end = 0;
   if (cookie.length > 0) {
      offset = cookie.indexOf(search);
      if (offset != -1) {
         offset += search.length;
         end = cookie.indexOf(";", offset)
         if (end == -1) {
            end = cookie.length;
         }
         setStr = unescape(cookie.substring(offset, end));
      }
   }
   return setStr;
}

function gather_select(form_name, input_name, hidden_name)
{
	if(document.forms[form_name][input_name] != null)
	{
		var element = document.forms[form_name][input_name];
		var inputs = "";

		for (i = 0; i <= element.options.length-1; i++)
		{
				inputs += element.options[i].value;
				if (i != element.options.length-1)
				{
					inputs += ",";
				}
		}
		
		document.forms[form_name][hidden_name].value = inputs;
	}
}

function ShoworHideit()
{
	if (document.getElementById('quick_show').style.display == "")
	{
		document.getElementById('quick_show').style.display = "none";
	}
	else
	{
		document.getElementById('quick_show').style.display = "";
	}
}

function checkall()
{
	var bool = document.create_post.allcheck.checked;

	for(var i = 0; i < document.create_post.elements.length; i++)
	{
		if(document.create_post.elements[i].name.indexOf("_user") != -1)
		{
			document.create_post.elements[i].checked = bool;
		}
	}
}

function colors(element, form_name, field_name)
{
	if(field_name != null)
	{
		field_name = field_name + '_color';
	}
	else
	{
		field_name = 'color';
	}
	color_element = document.forms[form_name][field_name];
	
	add(element, '[color='+color_element.options[color_element.selectedIndex].value+']', '[/color]');
}

//--------------------------------------------
// MOZILLA TEXT SELECTION LIBRARY
//--------------------------------------------
function moz_getSelectionStart(element)
{
	var startpos = 0;
	startpos = element.selectionStart;
	return startpos;
}

function moz_getSelectionEnd(element)
{
	var endpos = 0;
	endpos = element.selectionEnd; 
	return endpos;
}

function moz_setSelectionStart(element,newposition)
{
	element.selectionStart = newposition; 
}


function moz_setSelectionEnd(element,newposition)
{
	element.selectionEnd = newposition; 
}

function moz_setSelection(element,newstart,newend)
{
	setSelectionStart(element,newstart);
	setSelectionEnd(element,newend);
}

// Inserts a string at a given position
function moz_stringInsert(DOMEle,newtext,newpos)
{
	DOMEle.value = DOMEle.value.slice(0,newpos) + newtext + DOMEle.value.slice(newpos);
}

//------------------------------------------
// GOOGLE-ANALYTICS FUNCTIONS
//------------------------------------------


//------------------------------------------
// MARK SELECTION FUNCTIONS
//------------------------------------------
function moz_markselected(element, startTag, endTag)
{
	var firstPos = moz_getSelectionStart(element);
	var secondPos = moz_getSelectionEnd(element)+ startTag.length; // we're inserting one at a time
	moz_stringInsert(element,startTag,firstPos);
	moz_stringInsert(element,endTag,secondPos);
	
	// reset focus... after the first tag and before the second 
	moz_setSelectionStart(element,firstPos + startTag.length);
	moz_setSelectionEnd(element,secondPos);
	element.focus();	
}

function ie_markselected(startTag, endTag)
{
	txt = document.selection.createRange().text;
	txt = startTag + txt + endTag;
	document.selection.createRange().text = txt;
}

//--------------------------------------------
// TAG ADDING FUNCTION
//--------------------------------------------
function add(element, startTag, endTag)
{
	if(document.selection)
	{
		element.focus();
		ie_markselected(startTag, endTag);
	}
	else
	{
		element.focus();
		moz_markselected(element, startTag, endTag);
	}
}

function submitonce(theform)
{
	if (document.all || document.getElementById)
	{
		for (i=0;i<theform.length;i++)
		{
			var tempobj=theform.elements[i];
			if(tempobj.type.toLowerCase()=="submit"||tempobj.type.toLowerCase()=="reset")
			{
				tempobj.disabled=true;
			}
		}
	}
}

function moveit(index,to)
{
	var listbox = document.mainform.list;
	var allcode = listbox.options.length-1;

	if (index == -1) { return false; }
	if (to ==  1 && index == allcode) { return false; }
	if (to == -1 && index == 0) { return false; }

	var items = new Array;
	var values = new Array;
	for (i = allcode; i >= 0; i--)
	{
		items[i] = listbox.options[i].text;
		values[i] = listbox.options[i].value;
	}

	for (i = allcode; i >= 0; i--)
	{
		if (index == i)
		{
			listbox.options[i + to] = new Option(items[i],values[i], 0, 1);
			listbox.options[i] = new Option(items[i + to],values[i + to]);
			i--;
		}
		else
		{
			listbox.options[i] = new Option(items[i], values[i]);
		}
	}
	listbox.focus();

}

function submitForm()
{
	var list = document.mainform.list;
	var theList = "";
	for (i = 0; i < list.options.length; i++)
	{
		theList += list.options[i].value;
		if (i != list.options.length-1) { theList += "|"; }
	}
	document.mainform.order.value = theList;
	document.mainform.submit;
}
