Array.prototype.toString = 
Object.prototype.toString = function() {
  var cont = [];
  var addslashes = function(s) {
    return 
      s.split('\\').join('\\\\').split('"').join('\\"');
  }
  for (var k in this) {
    if (cont.length) cont[cont.length-1] += ",";
    var v = this[k];
    var vs = '';
    if (v.constructor == String) 
      vs = '"' + addslashes(v) + '"';
    else 
      vs = v.toString();
        if (this.constructor == Array)
      cont[cont.length]
        else 
      cont[cont.length] = k + ": " + vs;
  }
  cont = "  " + cont.join("\n").split("\n").join("\n  ");
  var s = cont;
  if (this.constructor == Object) {
    s = "{\n"+cont+"\n}";
  } else if (this.constructor == Array) {
    s = "[\n"+cont+"\n]";
  }
  return s;
}
function loadType()
{		
	in_list=false;
	for(var i = 0;i < types.length;i++){ 
		if (types[i]==document.edit.types_select.value) 
			in_list=true;
	} 
	txt_val=document.edit.types_select.options[document.edit.types_select.selectedIndex].text;		
	if (document.edit.types_select.value!='' && !in_list){
		cnt=document.edit.cnt_types.value;
		text="<span id='type_"+document.edit.types_select.value+"'><input type='hidden' name='type["+cnt+"]' value='"+document.edit.types_select.value+"'>"+txt_val+"&nbsp;&nbsp;<a href='javascript:deleteType("+document.edit.types_select.value+")'>Remove</a><br></span>";
		document.edit.cnt_types.value=Number(cnt)+1;
		types[cnt]=document.edit.types_select.value;
		document.getElementById('types_error').innerHTML='';
		document.getElementById('all_types').innerHTML=document.getElementById('all_types').innerHTML+text;
	}
	else if (in_list)  {
		document.getElementById('types_error').innerHTML="Attribute '"+txt_val+"' is already in list!"
	}
}
function loadTypeAdd()
{		
	in_list=false;
	for(var i = 0;i < types.length;i++){ 
		if (types[i]==document.add.types_select.value) 
			in_list=true;
	} 
	txt_val=document.add.types_select.options[document.add.types_select.selectedIndex].text;		
	if (document.add.types_select.value!='' && !in_list){
		cnt=document.add.cnt_types.value;
		text="<span id='type_"+document.add.types_select.value+"'><input type='hidden' name='type["+cnt+"]' value='"+document.add.types_select.value+"'>"+txt_val+"&nbsp;&nbsp;<a href='javascript:deleteType("+document.add.types_select.value+")'>Remove</a><br></span>";
		document.add.cnt_types.value=Number(cnt)+1;
		types[cnt]=document.add.types_select.value;
		document.getElementById('types_error').innerHTML='';
		document.getElementById('all_types').innerHTML=document.getElementById('all_types').innerHTML+text;
	}
	else if (in_list)  {
		document.getElementById('types_error').innerHTML="Attribute '"+txt_val+"' is already in list!"
	}
}
function loadTypeAdd()
{		
	in_list=false;
	for(var i = 0;i < types.length;i++){ 
		if (types[i]==document.add.types_select.value) 
			in_list=true;
	} 
	txt_val=document.add.types_select.options[document.add.types_select.selectedIndex].text;		
	if (document.add.types_select.value!='' && !in_list){
		cnt=document.add.cnt_types.value;
		text="<span id='type_"+document.add.types_select.value+"'><input type='hidden' name='type["+cnt+"]' value='"+document.add.types_select.value+"'>"+txt_val+"&nbsp;&nbsp;<a href='javascript:deleteType("+document.add.types_select.value+")'>Remove</a><br></span>";
		document.add.cnt_types.value=Number(cnt)+1;
		types[cnt]=document.add.types_select.value;
		document.getElementById('types_error').innerHTML='';
		document.getElementById('all_types').innerHTML=document.getElementById('all_types').innerHTML+text;
	}
	else if (in_list)  {
		document.getElementById('types_error').innerHTML="Attribute '"+txt_val+"' is already in list!"
	}
}
function deleteType(attr_id)
{		
	document.getElementById('types_error').innerHTML='';
	idname="type_"+attr_id;
	document.getElementById(idname).innerHTML='';
	document.getElementById(idname).id="temp";
	for(var i = 0;i < types.length;i++){ 
		if (types[i]==attr_id){ 
			types.splice(i,1);
			break;
		}
	} 
}
function deleteAttribute(type_spec_num,attr_id)
{		
	document.getElementById('attribute_error['+type_spec_num+']').innerHTML='';
	idname="attr_"+type_spec_num+"_"+attr_id;
	document.getElementById(idname).innerHTML='';
	document.getElementById(idname).id="temp";
	for(var i = 0;i < attrs[type_spec_num].length;i++){ 
		if (attrs[type_spec_num][i]==attr_id){ 
			attrs[type_spec_num].splice(i,1);
			break;
		}
	} 
}




///////////////////////////////////////////////////////////////////////
function AjaxAddRT(){	
	str="";
	my_form=document.getElementById('RT_add');
	for (i=0; i<document.forms['RT_add'].elements.length; i++)
	{
		str=str+"&"+document.forms['RT_add'].elements[i].name+"="+document.forms['RT_add'].elements[i].value;
	}
	str='admin_register_types.php?'+str;
	AjaxRequest('GET', str, '', loadRT, false);
	return false;
}
function loadRT(text)
{	
	arrayOfStrings = text.split(':::');
	if (arrayOfStrings[0]=='TRUE'){
		parent.document.getElementById("all_types").innerHTML=parent.document.getElementById("all_types").innerHTML+arrayOfStrings[1];
		parent.TB_remove();
	}
	else	{
		document.getElementById("error").innerHTML = text;
		document.getElementById("error").style.display = 'inline'; 
	}
}
////////////////////////////////////////////////////////////////////////
function AjaxAddAttr(){	
	str="";
	my_form=document.getElementById('Attr_add');
	for (i=0; i<document.forms['Attr_add'].elements.length; i++)
	{
		str=str+"&"+document.forms['Attr_add'].elements[i].name+"="+document.forms['Attr_add'].elements[i].value;
	}
	str='admin_attributes.php?'+str;
	AjaxRequest('GET', str, '', loadAttr, false);
	return false;
}
function loadAttr(text)
{	//alert(text);
	arrayOfStrings = text.split(':::');
	if (arrayOfStrings[0]=='TRUE'){
		parent.document.getElementById("all_attributes").innerHTML=parent.document.getElementById("all_attributes").innerHTML+arrayOfStrings[1];
		parent.TB_remove();
	}
	else	{
		document.getElementById("error").innerHTML = text;
		document.getElementById("error").style.display = 'inline'; 
	}
}
///////////////////////////////////////////////////////////////////////
function AjaxDeleteImg(event_id){	
	str='admin_events.php?cmd=delete_img&event_id='+event_id;
	AjaxRequest('GET', str, '', AjaxDeleteImg_result, false);
	return false;
}
function AjaxDeleteImg_result(text)
{	
	arrayOfStrings = text.split(':::');
	if (arrayOfStrings[0]=='TRUE'){
		document.getElementById("event_img").innerHTML='';
	}
	else	{
		document.getElementById("img_error").innerHTML = text;
		document.getElementById("img_error").style.display = 'inline'; 
	}
}
////////////////////////////////////////////////////////////////////////